app-office/obsidian: add 1.12.7

Signed-off-by: Sam Anthony <sam@samanthony.xyz>
Part-of: https://github.com/gentoo/guru/pull/453
Closes: https://github.com/gentoo/guru/pull/453
Signed-off-by: David Roman <stkw0@disroot.org>
This commit is contained in:
Sam Anthony
2026-03-24 09:20:38 -04:00
committed by David Roman
parent 34cb5dc72c
commit 22b6b324b7
2 changed files with 183 additions and 0 deletions

View File

@@ -1,6 +1,9 @@
DIST obsidian-1.10.3-amd64.tar.gz 118419919 BLAKE2B fbbc48ba51812233c3beff74bdceff4bb7827317b86d014398d436be6f32c922bba246b4e5039c4c9cc02f84bea010d03706e2999076b4c1c83fa7f1bdd9a47a SHA512 46f30e0571be23db5c51f6cfa978029706bd02f92fe1d16b5e11d843eba68a6381d700aeb648471601b6ec33416ab0c10e2a5ea73718bdc3c10f51514c0b441b
DIST obsidian-1.10.3-arm64.tar.gz 118408898 BLAKE2B 5ad8c1e399caf54128e86ef5e9d663bdd812dfa4cba045453c3393806aee12b07e186e32dd46dcf77515eef36756f392b7c5081ef59b349d253ab5e14fd47d48 SHA512 ccff5458f5150670d96d8fd6b23c47c68eca7b75c486152973a974573477aad41d8bed4724b3092b5ec4e0d3b1d67481911bf9a7a43f85c1a9fc29ad6805fe41
DIST obsidian-1.10.3.gh.deb 86311760 BLAKE2B 3eb7c71f843bb8b512ff47604acc8ef185962c365ee3f9f710a640cd9c2ba525277c8641af55f8d216076884ee6d850b937c92032f4708e8a9e63d3cb75c7d92 SHA512 0263fb48d1972454cb716e039cc21a19bf0f80b34c541a8dd1eedf7b87df668a1e0c52cdc87eead4f05353c2677cc157e3026c16f8a6317308a09ace53b7ef61
DIST obsidian-1.12.7-amd64.tar.gz 117247533 BLAKE2B e17d5d5f3af91f8a969a5ba0dfd357e6a2ab7623b187e6936029dad7f55c693f56d4f7582f9d7e23b60cb05a82553d77290c15efe374369f65fd669ee017f777 SHA512 9fc6c152780caef8179738600d6ae23520eea1f0ec32457317a08c3c4871c50b0212716942a420e052413398580ba65db9f2f56fd622c3270aefc0b0ca6750f5
DIST obsidian-1.12.7-arm64.tar.gz 117539982 BLAKE2B 1cb583683580c9655b7ee7b711d16bfdc02e5c2619976486573d8dab68e27a98b45aa05b41706d448d2b67bed1abf063b0a78aa1f6e8cfa9d6079de24ae59a67 SHA512 c6450cbe4aff65c5decc913eb6340b2cb375aabf89f347374c6b68298ef31a6238b2c300904e337b42539c8c9c0f55c4e2d4cd6e4d4b8d494f2c9dac074c9cf4
DIST obsidian-1.12.7.gh.deb 85762386 BLAKE2B 8515dc8139982fce832152c01e8592f52a082ad7e789ef55c74dbe73c2028c65ba40aef801a9fda2d16fb85b2eb21544e6cb21bd813ffe03d73855aa100d7c27 SHA512 4df508468e3b7690fb78c74809ae39d1fd3690f37f3c87e12d4cad87b9e76d67b528682dc19e0f2bd5f9674c17a3e89330b242bdfd7871467ae05e8321cc128c
DIST obsidian-1.9.14-amd64.tar.gz 118705183 BLAKE2B c405f96fa98be0f295e6e9965e0abe231a619f7e433614fb7ca868a398bc98fcbb4ce86b3145c14f59b50d1b63a5b958badc8753ea0c15d3d4dd39621394e0a4 SHA512 9d85778798e0c0c7f3bbe037d2e32c15fbb719a5c1893463cb84e661919ec041266aa8d3a4b095fec2c38dba33a45ebdb4cdddef2fe71440db5807bb88db0de6
DIST obsidian-1.9.14-arm64.tar.gz 118698722 BLAKE2B 64196e30c71ad4c88ed622750d4e3792984d82de893f845d188ecbc7d6778a4f60c361ff04f7601e7c364712b7dd8ee55c08b44a13917b6352cfe89abf9cfde8 SHA512 fc74f339a47ceefab78242489a12bafed2fa8b293fd674f65e986f700e80be38a39476fa27af5dc5b58c5dc998abaa4a818c43fbe5572c895683042ec8d0a0cd
DIST obsidian-1.9.14.gh.deb 86502322 BLAKE2B c3ef10b37a4682f8f6eac0f17f1756f4be5a1ed8797a3a7f1a2a1c232e8ef2774755a0eb1d29bfb9d0e2695f0e974c09489db888f7fffeae12d11313194b3a2d SHA512 9144918b8451f284cf3ee84a55e1eb5b84290a775d22f32ae1e23a7f520f8d268c65fe5491d83be03d464d68b2118c2c8b89f7bd32e413752ea3506d5bcfcb7b

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"
}