app-office/obsidian: add 1.8.10

Signed-off-by: Joe Kappus <joe@wt.gd>
This commit is contained in:
Joe Kappus
2025-04-22 16:41:43 -04:00
parent b73aa01ec7
commit 4462203df8
2 changed files with 183 additions and 0 deletions

View File

@@ -1,3 +1,6 @@
DIST obsidian-1.8.10-amd64.tar.gz 110592123 BLAKE2B 5af6d28c8ad4bf2ca49ec5788572c07e6ac61190f40d90f5b54b5840f5510f4327598dda128c10a3fec9f9cbd8926a0e7e6e4e40936dddba8bfd5aab61d8cb75 SHA512 49cb37955b66b9187a186e1cf3beb410b13f32041264a364155675cead1f3c4d9fbd6a0af69e5fb4e9990047b8b8b62796e32cb2a1d8bb5562bcb07b0cee0408
DIST obsidian-1.8.10-arm64.tar.gz 114587146 BLAKE2B aa49c44ee26eaff5dae049f4efc7960dc505d567faf141ddce19a25d3c762b332bb45ade918fdfea87de3f308e6862340533ef2046f33a19e4af375b2f4f17da SHA512 5d2bc9d5eff8852193dadf21a65b6e2568a3ce31e7a4a4158bb38250cd7cda8ecde836a2ef4a2f006532685bcc98eb0bb474173c4327b34eb5e4baddc78598a3
DIST obsidian-1.8.10.gh.deb 80536530 BLAKE2B 915cd78bd0d4f359f9e6739c3a691ef7fc12766ee86c50690444d4411fa143de819f8445ec4b48ef46bf5a91f0807f95dd76e6e71d045140111afd376ad05fa9 SHA512 dadf9bf9f44a2bee63224ba150c4d2370079507f676371f8babe9401c9257f0bea29b05219616df40b88c26f83bd65d64c19aa9f4f3d0c4561272c7e9ab19a5d
DIST obsidian-1.8.9-amd64.tar.gz 110032080 BLAKE2B 133f616cf6efa890b621648f72be36008b60b81330426b77c4bd5b58e08c0ebc9f5eae945c70f43015b80408f768d99f28ff1f297aa21d15ce47dab189d9d1d7 SHA512 76e1ee573232740576a4876e91741fba9b23b663323ab518889348c76be0205401985ea639fb814ffc7fd3f354e6574a13f63408db83ade1fa6b559cbb91279a
DIST obsidian-1.8.9-arm64.tar.gz 114564362 BLAKE2B 8ff74836912ad5806c2d6193167c9228830aae37286a48b4cc3966de739680754ada8e9313b4c813669a920e9e75780a81dffb4e75bd7fe87b1c3553bc11261b SHA512 7f53c7fd10a8520ce1b4abca00d96042f325429b279d6ea2df9115238a8f9c294b8a274057cd4a244ed586a79e33a40fcd95197bb40cb023e52e334139b02cf4
DIST obsidian-1.8.9.gh.deb 80266718 BLAKE2B 5cd0f62b6a1382fc0bf709cc76759fe31145a8b5ffbf4ea7a5937968f9fb61832bec6dd30cc4afebfaf2001c3dbf9b2fcbce70e2cd512b25ce7b05b135871673 SHA512 81ba8fb5939a5decd05fd3cd19b5ab73a890080b578507ee9cb1cba750038d634453d3c6587571e165149d74e62d05f6b759fb524210bc51b2445b487e15195b

View File

@@ -0,0 +1,180 @@
# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
CHROMIUM_VERSION="132"
CHROMIUM_LANGS="
af am ar bg bn ca cs da de el en-GB en-US es es-419 et fa fi fil fr gu he hi
hr hu id it ja kn ko lt lv ml mr ms nb nl pl pt-BR pt-PT ro ru sk sl sr sv
sw ta te th tr uk ur vi zh-CN zh-TW
"
inherit chromium-2 desktop linux-info unpacker xdg
DESCRIPTION="A second brain, for you, forever."
HOMEPAGE="https://obsidian.md/"
# For some reason, the main binary tarballs don't include the .desktop file or
# icon. The .deb does. One would hope then, that we could just download the .deb
# for each arch, but they only generate a .deb for amd64. Maybe we can get them
# to fix this, but in the meantime, we download the .deb purely to get the
# .desktop file and app icon out of it.
SRC_URI="
https://github.com/obsidianmd/obsidian-releases/releases/download/v${PV}/${P/-/_}_amd64.deb -> ${P}.gh.deb
amd64? ( https://github.com/obsidianmd/obsidian-releases/releases/download/v${PV}/${P}.tar.gz -> ${P}-amd64.tar.gz )
arm64? ( https://github.com/obsidianmd/obsidian-releases/releases/download/v${PV}/${P}-arm64.tar.gz )
"
DIR="/opt/${PN^}"
# deb gets extracted to WORKDIR. actual program gets extracted to its own dir
# which depends on CPU arch.
S="${WORKDIR}"
LICENSE="Obsidian-EULA"
SLOT="0"
KEYWORDS="~amd64 ~arm64"
IUSE="appindicator wayland"
RESTRICT="mirror strip bindist"
RDEPEND="
>=app-accessibility/at-spi2-core-2.46.0:2
app-crypt/libsecret[crypt]
dev-libs/expat
dev-libs/glib:2
dev-libs/nspr
dev-libs/nss
media-libs/alsa-lib
media-libs/fontconfig
media-libs/mesa[gbm(+)]
net-print/cups
sys-apps/dbus
sys-apps/util-linux
sys-libs/glibc
x11-libs/cairo
x11-libs/libdrm
x11-libs/gdk-pixbuf:2
x11-libs/gtk+:3
x11-libs/libX11
x11-libs/libXScrnSaver
x11-libs/libXcomposite
x11-libs/libXdamage
x11-libs/libXext
x11-libs/libXfixes
x11-libs/libXrandr
x11-libs/libxcb
x11-libs/libxkbcommon
x11-libs/libxshmfence
x11-libs/pango
appindicator? ( dev-libs/libayatana-appindicator )
"
QA_PREBUILT="*"
CONFIG_CHECK="~USER_NS"
set_obsidian_src_dir() {
if use amd64; then
S_OBSIDIAN="${WORKDIR}/${P}"
elif use arm64; then
S_OBSIDIAN="${WORKDIR}/${P}-arm64"
else
die "Obsidian only supports amd64 and arm64"
fi
}
src_configure() {
default
chromium_suid_sandbox_check_kernel_config
}
src_prepare() {
default
# cleanup languages
set_obsidian_src_dir
pushd "${S_OBSIDIAN}/locales/" >/dev/null || die "location change for language cleanup failed"
chromium_remove_language_paks
popd >/dev/null || die "location reset for language cleanup failed"
# Create separate .desktop file for launching Obsidian with native wayland
# support.
#
# Obsidian is an Electron app, and Electron can be instructed to run in
# native-wayland mode by turning on the Ozone platform. However, doing this
# causes Obsidian to crash on some users' systems, while it works fine for
# others. (see https://bugs.gentoo.org/915899)
#
# It appears VSCode may have encountered a similar issue, because VSCode
# installs two separate .desktop files, one for launching with wayland
# support and one for launching without. We will do the same here.
# Create a copy of upstream's .desktop
cp usr/share/applications/obsidian.desktop \
usr/share/applications/obsidian-wayland.desktop \
|| die "failed to create obsidian-wayland.desktop file"
# Edit the Exec & Name
sed -i \
'
# Add Electron ozone enable flags to obsidian execution
/Exec/s/obsidian /obsidian --ozone-platform-hint=auto --enable-features=UseOzonePlatform,WaylandWindowDecorations /
# Give this .desktop file a new name/desc of "Obsidian Wayland"
/^Name/s/$/ Wayland/
# comment field
/^Comment/s/$/ with Wayland support enabled/
' \
'usr/share/applications/obsidian-wayland.desktop' ||
die "sed failed for obsidian-wayland.desktop file"
}
src_install() {
insinto "${DIR}"
exeinto "${DIR}"
set_obsidian_src_dir
pushd "${S_OBSIDIAN}" >/dev/null || die "location change for main install failed"
doexe obsidian chrome-sandbox libEGL.so libffmpeg.so libGLESv2.so libvk_swiftshader.so libvulkan.so.1
doins chrome_100_percent.pak chrome_200_percent.pak icudtl.dat resources.pak snapshot_blob.bin \
v8_context_snapshot.bin vk_swiftshader_icd.json
insopts -m0755
doins -r locales resources
# Chrome-sandbox requires the setuid bit to be specifically set.
# see https://github.com/electron/electron/issues/17972
fowners root "${DIR}/chrome-sandbox"
fperms 4711 "${DIR}/chrome-sandbox"
[[ -x chrome_crashpad_handler ]] && doins chrome_crashpad_handler
popd >/dev/null || die "location reset for main install failed"
dosym "${DIR}/obsidian" "/usr/bin/obsidian"
if use appindicator; then
dosym ../../usr/lib64/libayatana-appindicator3.so "${DIR}/libappindicator3.so"
fi
domenu usr/share/applications/obsidian.desktop
if use wayland; then
domenu usr/share/applications/obsidian-wayland.desktop
fi
for size in 16 32 48 64 128 256 512; do
doicon --size ${size} usr/share/icons/hicolor/${size}x${size}/apps/${PN}.png
done
}
pkg_postinst() {
xdg_pkg_postinst
ewarn "Some users have reported that running Obsidian with native Wayland"
ewarn "support causes the software to crash. Others have it working"
ewarn "without issue. See https://bugs.gentoo.org/915899"
ewarn ""
ewarn "This package now provides application entries for both Obsidian and"
ewarn "Obsidian Wayland. If Obsidian Wayland breaks for you under Wayland,"
ewarn "try the other Obsidian entry to launch with XWayland"
}