www-client/mullvad-browser-bin: new package, add 13.5

Signed-off-by: Justin Donofrio <justin026@protonmail.com>
This commit is contained in:
Justin Donofrio
2024-07-02 23:17:56 -04:00
parent 5c1a2550bf
commit 71be5adbed
3 changed files with 105 additions and 0 deletions

View File

@@ -0,0 +1,3 @@
DIST mullvad-browser-linux-x86_64-13.5.tar.xz 103263340 BLAKE2B a66e20e75152e6d03b4eff8b5580418fb11587700bb5e16036f9bcb2c094cb0fe531653ef1daf64b1bf5841b25c3bf2378b85aae9b4ccb88287896cd054842ee SHA512 8dfd65460852f1be2906d8e87e3b45589534e79213477ae5ae51b16e170fa24b1ea0ba1866771b625fbd3fc80311310b56abd493e5e3799bbaa9031654574401
EBUILD mullvad-browser-bin-13.5.ebuild 3007 BLAKE2B 59b9467557691a4b2a2a82a14c3a00d8f3fe9f703d51739eedb3e8e8c6751b962e135d6bde32b7dfbf063f336e429dc37e313cb6c739f71bf3a8ee8566a6b114 SHA512 5871ab4071f476ea06edb95c9c5b4b6ae58feb6b42eddcbac0b6bd98ad4649ea0b3903c0bd608a19b5a0199a778caf01b1376e4c188d3b6b08d0bcdd22483162
MISC metadata.xml 475 BLAKE2B ad3e7ef5ae310f30924606b3ced24745a990825251ae23a9d029b571f5318caab04f89cea91c2e4253daaa0efd37237b808b321b0d78bb19b22037ef32ead6bd SHA512 cb416d14e5e8af4a9f6a274ec183fcbb46ef194d7f861a6f174345b7b909eeeb2a8f260408f65be28b6ebe1071443339e65e0fb873e6d238c832f165524dede5

View File

@@ -0,0 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person" proxied="yes">
<email>justin026@protonmail.com</email>
<name>Justin</name>
</maintainer>
<use>
<flag name="X">Add support for X11</flag>
<flag name="wayland">Add support for screensharing on wayland</flag>
</use>
</pkgmetadata>

View File

@@ -0,0 +1,90 @@
# Copyright 2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit desktop xdg
DESCRIPTION="The Mullvad Browser is developed in collaboration between Mullvad VPN and the Tor Project to minimize tracking and fingerprinting."
HOMEPAGE="https://github.com/mullvad/mullvadvpn-browser https://mullvad.net/"
SRC_URI="amd64? ( https://github.com/mullvad/mullvad-browser/releases/download/${PV}/mullvad-browser-linux-x86_64-${PV}.tar.xz )"
S="${WORKDIR}"
LICENSE="MPL-2.0"
SLOT="0"
KEYWORDS="-* amd64"
IUSE="wayland 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
dev-libs/nss
gui-libs/gtk
media-libs/alsa-lib
media-libs/fontconfig
media-libs/freetype
media-video/ffmpeg
sys-apps/dbus
wayland? (
sys-apps/xdg-desktop-portal
)
X? (
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 "${S}"/mullvad-browser/Browser/is-packaged-app
# 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
# Install shim for X11, 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(); }" > "${S}"/X11shim.c
cc -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
insinto /opt/
doins -r "${S}"/mullvad-browser
dosym "/opt/mullvad-browser/Browser/start-mullvad-browser" /usr/bin/${PN}
domenu "${S}"/mullvad-browser/start-mullvad-browser.desktop
local x
for x in 16 32 48 64 128; do
newicon -s ${x} "${S}"/mullvad-browser/Browser/browser/chrome/icons/default/default${x}.png mullvad-browser.png
done
fperms +x "/opt/mullvad-browser/Browser/start-mullvad-browser"
fperms +x "/opt/mullvad-browser/Browser/mullvadbrowser"
fperms +x "/opt/mullvad-browser/Browser/mullvadbrowser.real"
}