app-office/obsidian: add 1.5.3

Signed-off-by: Artemis Everfree <artemis@artemis.sh>
This commit is contained in:
Artemis Everfree
2024-01-02 22:31:25 -08:00
parent 47d6aa9a9b
commit 7cfe1b350b
2 changed files with 181 additions and 0 deletions

View File

@@ -2,3 +2,6 @@ DIST obsidian-1.3.5.gh.deb 72916766 BLAKE2B d44e9f8db6fc55e6dc7096b2a9bbcb2d68fb
DIST obsidian-1.4.16-amd64.tar.gz 99705807 BLAKE2B dd3297f3e81d096f0f480dbbda6b57f3a286643c3724232c65b64ff1cf2b26aa7df9290837da5e056095bf121b87a0d6cd6195de78ff4894a5f0d1b3c7c652da SHA512 ee51369c2067cc99b8c3351fc91f05e9b9edbc35f84d5c1bdcdab6c144fe95e8b4443d0223562fae595c53c23fc30abb4bf65f2f36e5b85d190009c49452ce0c
DIST obsidian-1.4.16-arm64.tar.gz 100139135 BLAKE2B 2f49e5e6d3424c8c6bd617279da75c808744742ce5c27785b3856150023d0e514d09d9a315284b851d904886cac6499d00c8df98ab0a9eb72acc52bf5aa9b38a SHA512 140b3c26df79c95ed23d82b3b6859114f0ff74f9b92715e915b8b6b2733cb18d0233053ce4497ca0703a6cdb3df2d2f22110ca873720fb66e4e7e248efcd89dc
DIST obsidian-1.4.16.gh.deb 73362498 BLAKE2B 15a2631dc22f8833fe79166ed09f5da9013a89ba9f28acd8bb819a75b3ed2393162fab070ea810257224b6d0ef30e439b831c63d198c1a941587f8254a461b33 SHA512 3b691188a05e20e0d1792a6b135076d3dabe33106e541ae4614703fdea44bcb64fc52bbd62808325c381f28348e37cbde0e3d072e4e1b077fb2b9728c43edb05
DIST obsidian-1.5.3-amd64.tar.gz 99822395 BLAKE2B 03743ac61135f8139ce6e0e0a30335415e0af1f6402a62679ec69c832a7c2305ee998c64f584125eab99a82295e8cd16cef237f9f97370ec180069dafd3bc58e SHA512 8da9329175d7cc7947186ab839621d6043cc4a9eac11335c7f234267c1e5804c21d2241121868664ca70435d124a7c242bc46ed40585b9bdd1c55009672f3390
DIST obsidian-1.5.3-arm64.tar.gz 100258718 BLAKE2B c99c78e48db61bf89e0c6a27cc454ab1a1ceca95b71a82ab3b8933c5413dd87ec7dd5bd847ab95353978d80f4da39a955c4114ed94aa18d621a5a6083321857f SHA512 d429904af6bd46a06250cf3ace5fb9ff2ddf0d8b4765eb94a3a4ae4183fe6af79d0b76edf5fa496441d266df842a3c332a7e975b1ef6761cf4b98ad0b63942de
DIST obsidian-1.5.3.gh.deb 73415050 BLAKE2B 10a0ea6eabfd4d00bb33e2cc9a6b5f28df3ca7cea2a33cf27895b74805dd25e0eb3ac342b7d80dcb741e18a9f263ca5fc200433006c8bc4253f12ce78d235e7c SHA512 1d60cd8c1c0f1eff3f8937a4a3117b13fadbc0311a4c490510262e4335927bd4826e895cbefdaf2e1172f45a39608cf102dc1c950c384a3015c387ebe2fb26cf

View File

@@ -0,0 +1,178 @@
# Copyright 1999-2023 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 )
"
RESTRICT="mirror strip bindist"
LICENSE="Obsidian-EULA"
SLOT="0"
KEYWORDS="~amd64 ~arm64"
IUSE="appindicator"
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 )
"
DIR="/opt/${PN^}"
# deb gets extracted to WORKDIR. actual program gets extracted to its own dir
# which depends on CPU arch.
S="${WORKDIR}"
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
domenu usr/share/applications/obsidian-wayland.desktop
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() {
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"
}