blob: 46ac266eef549a9b56c0e94c28bf2823d256316f (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
|
# Maintainer: tarball <bootctl@gmail.com>
# Contributor: Mark Wagie <mark.wagie@proton.me>
#
# Please don't report bugs upstream! Use AUR comments.
#
# Fetching the signing key:
# https://mullvad.net/en/help/verifying-mullvad-browser-signature
# If you can't open the page, here's the important line:
# gpg --auto-key-locate nodefault,wkd --locate-keys torbrowser@torproject.org
pkgname=mullvad-browser-bin
pkgver=14.0.9
pkgrel=1
pkgdesc='Privacy-focused web browser developed by Mullvad VPN and the Tor Project'
arch=(x86_64)
url=https://mullvad.net/en/browser
license=(GPL-3.0-or-later MPL-2.0)
depends=(
alsa-lib
at-spi2-core
bash
cairo
dbus
dbus-glib
fontconfig
freetype2
gcc-libs
gdk-pixbuf2
glib2
glibc
gtk3
hicolor-icon-theme
libpulse
libx11
libxcb
libxcomposite
libxcursor
libxdamage
libxext
libxfixes
libxi
libxrandr
libxrender
libxss
libxt
libxtst
mime-types
nspr
nss
pango
ttf-font
)
optdepends=(
'hunspell-en_US: Spell checking, American English'
'libnotify: Notification integration'
'networkmanager: Location detection via available WiFi networks'
'pulse-native-provider: Sound support when using PipeWire or PulseAudio' # thanks to @cyberpunkrocker for the suggestion
'speech-dispatcher: Text-to-Speech'
'xdg-desktop-portal: Screensharing with Wayland'
)
provides=(mullvad-browser=$pkgver mullvad-browser)
conflicts=(mullvad-browser)
# mullvad.net is blocked or slow in many countries around the world.
# If you don't want to download from Microsoft, use any of the alternative links.
source=(
https://github.com/mullvad/mullvad-browser/releases/download/$pkgver/mullvad-browser-linux-x86_64-$pkgver.tar.xz{,.asc}
#https://cdn.mullvad.net/browser/$pkgver/mullvad-browser-linux-x86_64-$pkgver.tar.xz{,.asc}
#https://dist.torproject.org/mullvadbrowser/$pkgver/mullvad-browser-linux-x86_64-$pkgver.tar.xz{,.asc}
#https://tor.eff.org/dist/mullvadbrowser/$pkgver/mullvad-browser-linux-x86_64-$pkgver.tar.xz{,.asc}
mullvad-browser.sh
mullvad-browser.desktop
)
validpgpkeys=(
'EF6E286DDA85EA2A4BA7DE684E2C6E8793298290' # Tor Browser Developers (signing key) <torbrowser@torproject.org>
)
changelog='mullvad-browser.changelog'
sha256sums=('e665699524ea5d54cbf9048983486d84a50bfc98b05f70370c2f3af4747343b3'
'SKIP'
'64d7bbc770898be67e8b8c228f7f4b9a925db03e2e2ec2570ae513b1578c72da'
'9bb24b8e210112b1222d028285c6d68ab599f8382b2b108ab69284948bb4ac70')
package() {
local pkg=${pkgname%%-bin}
# cli wrapper
install -Dvm755 "$pkg.sh" "$pkgdir/usr/bin/$pkg"
# desktop file
install -Dvm644 "$pkg.desktop" -t "$pkgdir/usr/share/applications/"
cd mullvad-browser
# only owner has access to all files
chmod --recursive --verbose a+r .
find . -executable -execdir chmod --verbose a+x '{}' +
# copy files from archive
install -dvm755 "$pkgdir/opt/$pkg/"
cp --archive --verbose Browser/. "$pkgdir/opt/$pkg/"
# fix "open file" dialog crash
sed -i 's|<dir prefix="cwd">fonts</dir>|<dir>/opt/mullvad-browser/fonts</dir>|' \
"$pkgdir/opt/$pkg/fontconfig/fonts.conf"
# create profiles in ~
install -Dvm644 /dev/null "$pkgdir/opt/$pkg/system-install"
# disable built-in updates
install -Dvm644 /dev/null "$pkgdir/opt/$pkg/is-packaged-app"
# icons
local size
for size in 16 32 48 64 128; do
install -Dvm644 "$pkgdir/opt/$pkg/browser/chrome/icons/default/default$size.png" \
"$pkgdir/usr/share/icons/hicolor/${size}x${size}/apps/$pkg.png"
done
# license files
install -dvm755 "$pkgdir/usr/share/licenses/"
ln -sfv "/opt/$pkg/MullvadBrowser/Docs/Licenses" "$pkgdir/usr/share/licenses/$pkg"
# distribution channel
install -Dvm644 /dev/stdin "$pkgdir/opt/$pkg/distribution/distribution.ini" <<END
[Global]
id=archlinux-aur
version=1.0
about=Mullvad Browser for Arch Linux (AUR)
[Preferences]
app.distributor=archlinux-aur
app.distributor.channel=$pkgname
app.partner.archlinux=archlinux-aur
END
# GNOME search provider (while the browser is running)
install -Dvm644 /dev/stdin "$pkgdir/opt/$pkg/browser/defaults/preferences/vendor.js" <<END
// Enable GNOME Shell search provider
pref("browser.gnome-search-provider.enabled", true);
END
install -Dvm644 /dev/stdin "$pkgdir/usr/share/gnome-shell/search-providers/$pkg.search-provider.ini" <<END
[Shell Search Provider]
DesktopId=mullvad-browser.desktop
BusName=org.mozilla.mullvadbrowser.SearchProvider
ObjectPath=/org/mozilla/mullvadbrowser/SearchProvider
Version=2
END
}
|