diff options
Diffstat (limited to 'www-client/mullvad-browser-bin/mullvad-browser-bin-14.0.3.ebuild')
-rw-r--r-- | www-client/mullvad-browser-bin/mullvad-browser-bin-14.0.3.ebuild | 94 |
1 files changed, 94 insertions, 0 deletions
diff --git a/www-client/mullvad-browser-bin/mullvad-browser-bin-14.0.3.ebuild b/www-client/mullvad-browser-bin/mullvad-browser-bin-14.0.3.ebuild new file mode 100644 index 000000000..80e547f80 --- /dev/null +++ b/www-client/mullvad-browser-bin/mullvad-browser-bin-14.0.3.ebuild @@ -0,0 +1,94 @@ +# Copyright 2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +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/" +SRC_URI="https://github.com/mullvad/mullvad-browser/releases/download/${PV}/mullvad-browser-linux-x86_64-${PV}.tar.xz -> ${P}.tar.xz" + +S="${WORKDIR}" +LICENSE="MPL-2.0" +SLOT="0" +KEYWORDS="-* ~amd64" + +IUSE="X" + +RDEPEND=" + app-accessibility/at-spi2-core + app-misc/mime-types + dev-libs/dbus-glib + dev-libs/glib + dev-libs/nspr + dev-libs/nss + gui-libs/gtk + media-libs/alsa-lib + media-libs/fontconfig + media-libs/freetype + media-video/ffmpeg + sys-apps/dbus + x11-libs/cairo + x11-themes/hicolor-icon-theme + x11-libs/libX11 + x11-libs/libxcb + x11-libs/libXcomposite + x11-libs/libXcursor + x11-libs/libXdamage + x11-libs/libXfixes + x11-libs/libXi + x11-libs/libXrandr + x11-libs/libXrender + x11-libs/libXt + x11-libs/libXtst +" + +QA_PREBUILT="*" + +src_install() { + # Install profiles to home dir + touch mullvad-browser/Browser/is-packaged-app || die + + # Fix desktop file vars + 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' \ + 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 + # + # The X11 shim below does not affect the browser's fingerprint or functionality. + if use X ; then + echo "#include <stdlib.h> + void gdk_wayland_display_get_wl_compositor() { abort(); } + void gdk_wayland_device_get_wl_pointer() { abort(); } + void gdk_wayland_window_get_wl_surface() { abort(); } + void gdk_wayland_display_get_wl_display() { abort(); }" > X11shim.c || die + $(tc-getCC) -shared -o mullvad-browser/X11shim.so X11shim.c || die + sed -i '1a export LD_PRELOAD=/opt/mullvad-browser/X11shim.so' mullvad-browser/Browser/start-mullvad-browser || die + fi + + insinto /opt/ + doins -r mullvad-browser + + dosym ../../opt/mullvad-browser/Browser/start-mullvad-browser /usr/bin/${PN} + domenu mullvad-browser/start-mullvad-browser.desktop + local x + for x in 16 32 48 64 128; do + newicon -s ${x} mullvad-browser/Browser/browser/chrome/icons/default/default${x}.png mullvad-browser.png + done + + fperms 755 /opt/mullvad-browser/Browser/abicheck + fperms +x /opt/mullvad-browser/Browser/start-mullvad-browser + 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 +} |