app-office/obsidian: add 1.8.7

Signed-off-by: Joe Kappus <joe@wt.gd>
This commit is contained in:
Joe Kappus
2025-02-24 23:59:40 -05:00
parent 3320c095fa
commit c16337a705
2 changed files with 183 additions and 0 deletions

View File

@@ -7,3 +7,6 @@ DIST obsidian-1.7.4.gh.deb 79977146 BLAKE2B fef2803d620dc1c1219e8186c1f8b977c6e1
DIST obsidian-1.7.7-amd64.tar.gz 111265129 BLAKE2B 30144107eac3f4c9af04dd384b1db4dae50a130e7794259d85fd2bf62de60f1edb9bae4dd58ef9cf4969650fef25ebd9ef5e5ab2b20cfa7670600168b21ece88 SHA512 4b66fff65277f11cdba14599e7260fcbf2eb8de616b5a9da4f52d23698f5d657150277709756f95815c1e535ff0df38677eb5b3c8069915df3aa6218471867dc
DIST obsidian-1.7.7-arm64.tar.gz 111284715 BLAKE2B e0d1e6800b79f8f15b046e1bb5319807d62d56e5e7de00d629b40f2a54142502fa2fe5d0150b147079487bd7cbbde4b9fd1e53b433b1f1ca86db7fbe80b723da SHA512 ba66d45030107135b4af837b9fd527c1630af33b402269e5d057ff6f692092504f3adc8cf3210bdabab463a1c93384fd03a69b6d7108edb9590cb4c26e869696
DIST obsidian-1.7.7.gh.deb 81043738 BLAKE2B f1a940a1e887ff5a2c86fd5b2e21ecac02a867fd7c1bc96403bb932b2b63be86acbca1bb3cdc0cc3f308b6e04a28be39c7fe1730735a28840cf11723086b9354 SHA512 cd8f95840b8ee2a804cffd516c57502f2af37dc8a3b18578f0b1fee296f686a95d08e81e339ae0b3ca73f00fc8a3631e4ff1057729ed0032ff99380310ad17e8
DIST obsidian-1.8.7-amd64.tar.gz 110353378 BLAKE2B 6d6158e3d32cf2c247496e5a0e93a36614c7240b9d3add404230339b44287ec71893994820e7a4e7d8429d89da06cf7f48f06b1ecd3c11f6384f2f3fc5ab2252 SHA512 5c4af232e715bde4639860a3a0ff62d767bcef046d3d938a03eb9276c7a38248ca7e9e05dd3c48c98480684aaf0c4f5df91cb63de049e5bc8094e5089c40bd69
DIST obsidian-1.8.7-arm64.tar.gz 114844467 BLAKE2B 8643917644a67faeb1f46f3fb07a7005e5925a4ca2085e03a41724877e03a6c5ea14008dfb90620f862780b8cc2ef0662f3f504b658346fff84f0b50dad82a03 SHA512 9b0f88ab1d636cfc8c26fd2fdf7cf4ddf0461afa5c2efdff3423afb512b45ee497f01c77fc8f1dce8b82af20023b9045bed85b08d936e4a90678ff23d4904c2a
DIST obsidian-1.8.7.gh.deb 80565332 BLAKE2B 4496db7b9e74614d3225298cd48a94794b891b880dfd43dd520f5d3d353296494ae595bf9b0433d1b4ce34db8c5dc17b3a13b9a0867e0f97ba28339f5388abd0 SHA512 9eff5bbfa0c370df91286707569f9c7b0559519ee8f3f1fff7cc58c865629cd76584c0012295c5afc75858d77a852af4b1ef3f9493d8ffbd5b46e78311102447

View File

@@ -0,0 +1,180 @@
# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
CHROMIUM_VERSION="102"
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"
}