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> </upstream>
<use> <use>
<flag name="X">Add support for X11</flag> <flag name="X">Add support for X11</flag>
<flag name="wayland">Add support for screensharing on wayland</flag>
</use> </use>
</pkgmetadata> </pkgmetadata>

View File

@@ -3,7 +3,7 @@
EAPI=8 EAPI=8
inherit desktop xdg inherit desktop optfeature toolchain-funcs xdg
DESCRIPTION="The Mullvad Browser is developed to minimize tracking and fingerprinting." DESCRIPTION="The Mullvad Browser is developed to minimize tracking and fingerprinting."
HOMEPAGE="https://github.com/mullvad/mullvad-browser https://mullvad.net/" HOMEPAGE="https://github.com/mullvad/mullvad-browser https://mullvad.net/"
@@ -14,14 +14,13 @@ LICENSE="MPL-2.0"
SLOT="0" SLOT="0"
KEYWORDS="-* ~amd64" KEYWORDS="-* ~amd64"
IUSE="wayland +X" IUSE="X"
RESTRICT="bindist mirror test strip" RESTRICT="bindist mirror test strip"
RDEPEND=" RDEPEND="
app-accessibility/at-spi2-core app-accessibility/at-spi2-core
app-misc/mime-types app-misc/mime-types
app-shells/bash
dev-libs/dbus-glib dev-libs/dbus-glib
dev-libs/glib dev-libs/glib
dev-libs/nspr dev-libs/nspr
@@ -45,20 +44,20 @@ RDEPEND="
x11-libs/libXrender x11-libs/libXrender
x11-libs/libXt x11-libs/libXt
x11-libs/libXtst x11-libs/libXtst
wayland? ( "
sys-apps/xdg-desktop-portal
)"
QA_PREBUILT="*" QA_PREBUILT="*"
src_install() { src_install() {
# Install profiles to home dir # 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 # Fix desktop file vars
sed -i "s|Name=.*|Name=Mullvad Browser|g" "${S}"/mullvad-browser/start-mullvad-browser.desktop sed -i \
sed -i "s|Exec=.*|Exec=/opt/mullvad-browser/Browser/start-mullvad-browser --detach|g" "${S}"/mullvad-browser/start-mullvad-browser.desktop -e "s|Name=.*|Name=Mullvad Browser|g" \
sed -i "s|Icon=.*|Icon=mullvad-browser|g" "${S}"/mullvad-browser/start-mullvad-browser.desktop -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: # 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 # 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_device_get_wl_pointer() { abort(); }
void gdk_wayland_window_get_wl_surface() { abort(); } void gdk_wayland_window_get_wl_surface() { abort(); }
void gdk_wayland_display_get_wl_display() { abort(); }" > "${S}"/X11shim.c 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 sed -i '1iexport LD_PRELOAD=/opt/mullvad-browser/X11shim.so' "${S}"/mullvad-browser/Browser/start-mullvad-browser
fi fi
@@ -89,3 +88,9 @@ src_install() {
fperms +x "/opt/mullvad-browser/Browser/mullvadbrowser" fperms +x "/opt/mullvad-browser/Browser/mullvadbrowser"
fperms +x "/opt/mullvad-browser/Browser/mullvadbrowser.real" fperms +x "/opt/mullvad-browser/Browser/mullvadbrowser.real"
} }
pkg_postinst() {
xdg_pkg_postinst
optfeature "wayland screensharing support" sys-apps/xdg-desktop-portal
}