www-client/mullvad-browser-bin: Use toolchain-funcs, add die, move dep to optfeature

Signed-off-by: Justin Donofrio <justin026@protonmail.com>
This commit is contained in:
Justin Donofrio
2024-08-13 00:23:08 -04:00
parent 8931a466c1
commit 928d9d9bd9
2 changed files with 16 additions and 12 deletions

View File

@@ -10,6 +10,5 @@
</upstream>
<use>
<flag name="X">Add support for X11</flag>
<flag name="wayland">Add support for screensharing on wayland</flag>
</use>
</pkgmetadata>

View File

@@ -3,7 +3,7 @@
EAPI=8
inherit desktop xdg
inherit desktop optfeature toolchain-funcs xdg
DESCRIPTION="The Mullvad Browser is developed to minimize tracking and fingerprinting."
HOMEPAGE="https://github.com/mullvad/mullvad-browser https://mullvad.net/"
@@ -14,14 +14,13 @@ LICENSE="MPL-2.0"
SLOT="0"
KEYWORDS="-* ~amd64"
IUSE="wayland +X"
IUSE="X"
RESTRICT="bindist mirror test strip"
RDEPEND="
app-accessibility/at-spi2-core
app-misc/mime-types
app-shells/bash
dev-libs/dbus-glib
dev-libs/glib
dev-libs/nspr
@@ -45,20 +44,20 @@ RDEPEND="
x11-libs/libXrender
x11-libs/libXt
x11-libs/libXtst
wayland? (
sys-apps/xdg-desktop-portal
)"
"
QA_PREBUILT="*"
src_install() {
# Install profiles to home dir
touch "${S}"/mullvad-browser/Browser/is-packaged-app
touch "${S}"/mullvad-browser/Browser/is-packaged-app || die
# Fix desktop file vars
sed -i "s|Name=.*|Name=Mullvad Browser|g" "${S}"/mullvad-browser/start-mullvad-browser.desktop
sed -i "s|Exec=.*|Exec=/opt/mullvad-browser/Browser/start-mullvad-browser --detach|g" "${S}"/mullvad-browser/start-mullvad-browser.desktop
sed -i "s|Icon=.*|Icon=mullvad-browser|g" "${S}"/mullvad-browser/start-mullvad-browser.desktop
sed -i \
-e "s|Name=.*|Name=Mullvad Browser|g" \
-e "s|Exec=.*|Exec=/opt/mullvad-browser/Browser/start-mullvad-browser --detach|g" \
-e "s|Icon=.*|Icon=mullvad-browser|g" \
"${S}"/mullvad-browser/start-mullvad-browser.desktop || die
# Install shim for X11. Browser doesn't seem to launch without it, see upstream issue:
# https://gitlab.torproject.org/tpo/applications/tor-browser-build/-/issues/40565
@@ -70,7 +69,7 @@ src_install() {
void gdk_wayland_device_get_wl_pointer() { abort(); }
void gdk_wayland_window_get_wl_surface() { abort(); }
void gdk_wayland_display_get_wl_display() { abort(); }" > "${S}"/X11shim.c
cc -shared -o "${S}"/mullvad-browser/X11shim.so "${S}"/X11shim.c
$(tc-getCC) -shared -o "${S}"/mullvad-browser/X11shim.so "${S}"/X11shim.c
sed -i '1iexport LD_PRELOAD=/opt/mullvad-browser/X11shim.so' "${S}"/mullvad-browser/Browser/start-mullvad-browser
fi
@@ -89,3 +88,9 @@ src_install() {
fperms +x "/opt/mullvad-browser/Browser/mullvadbrowser"
fperms +x "/opt/mullvad-browser/Browser/mullvadbrowser.real"
}
pkg_postinst() {
xdg_pkg_postinst
optfeature "wayland screensharing support" sys-apps/xdg-desktop-portal
}