Package Details: mullvad-browser 13.0.6-1

Git Clone URL: https://aur.archlinux.org/mullvad-browser.git (read-only, click to copy)
Package Base: mullvad-browser
Description: Privacy-focused web browser developed by Mullvad VPN and the Tor Project
Upstream URL: None
Keywords: browser firefox mullvad privacy private
Licenses: GPL, MPL, LGPL
Submitter: tarball
Maintainer: None
Last Packager: eclairevoyant
Votes: 8
Popularity: 0.53
First Submitted: 2023-04-23 11:25 (UTC)
Last Updated: 2023-12-07 04:44 (UTC)

Dependencies (36)

Required by (0)

Sources (3)

Latest Comments

<deleted-account> commented on 2023-09-28 10:02 (UTC)

According to upstream developers, the current build procedure generates a different fingerprint for each user, which is problematic from a privacy perspective. Tor Browser and its fork, Mullvad Browser, appear to need to be built using tor-browser-build. https://gitlab.torproject.org/tpo/applications/mullvad-browser/-/issues/239

<deleted-account> commented on 2023-09-22 19:29 (UTC)

@eclairevoyant Could you please add the upstream URL? https://gitlab.torproject.org/tpo/applications/mullvad-browser/

Neko-san commented on 2023-08-04 22:59 (UTC) (edited on 2023-08-05 00:27 (UTC) by Neko-san)

Compiling with -stdlib=libc++ throws two specific errors (in several places), namely: '__throw_length_error' and '__throw_out_of_range' 'is ambiguous'.

To reproduce, set clang as the compiler and add the flag to CXXFLAGS:

prepare() {
  export RUSTUP_TOOLCHAIN=$_rustver
  rustup default $_rustver
  mkdir -p mozbuild

  rm -rf $pkgname-$pkgver
  mv firefox-mullvad-browser-* $pkgname-$pkgver
  cd $pkgname-$pkgver

  cat >../mozconfig <<END
export MOZ_APP_REMOTINGNAME=${pkgname//-/}

export CC=clang
export CXX=clang++
export LD=""
export NM="llvm-nm"

export CXXFLAGS="${CFLAGS} -stdlib=libc++ --rtlib=compiler-rt -Wp,-D_GLIBCXX_ASSERTIONS"
export LDFLAGS="-lc++abi -lunwind -unwind=libunwind -Wl,-O3,--sort-common,--as-needed,-z,relro,-z,now"
. . . (rest of file)

(I had more flags but they shouldn't be relevant to the issue)

Neko-san commented on 2023-08-04 21:03 (UTC) (edited on 2023-08-04 21:05 (UTC) by Neko-san)

Where am I supposed to get the gpg key from?

There's no key file included and my attempts at finding the required key via keyservers isn't producing any results.

EDIT: Nevermind, found it: hkps://keys.openpgp.org

<deleted-account> commented on 2023-07-22 20:47 (UTC)

Build fails even if I build with chroot. Is this a bug?

50:47.92 #21 0x00007fc8aed35af0 llvm::lto::thinBackend(llvm::lto::Config const&, unsigned int, std::function<llvm::Expected<std::unique_ptr<llvm::CachedFileStream, std::default_delete<llvm::CachedFileStream>>> (unsigned int)>, llvm::Module&, llvm::ModuleSummaryIndex const&, llvm::StringMap<std::unordered_set<unsigned long, std::hash<unsigned long>, std::equal_to<unsigned long>, std::allocator<unsigned long>>, llvm::MallocAllocator> const&, llvm::DenseMap<unsigned long, llvm::GlobalValueSummary*, llvm::DenseMapInfo<unsigned long, void>, llvm::detail::DenseMapPair<unsigned long, llvm::GlobalValueSummary*>> const&, llvm::MapVector<llvm::StringRef, llvm::BitcodeModule, llvm::DenseMap<llvm::StringRef, unsigned int, llvm::DenseMapInfo<llvm::StringRef, void>, llvm::detail::DenseMapPair<llvm::StringRef, unsigned int>>, std::vector<std::pair<llvm::StringRef, llvm::BitcodeModule>, std::allocator<std::pair<llvm::StringRef, llvm::BitcodeModule>>>>*, std::vector<unsigned char, std::allocator<unsigned char>> const&) (/usr/lib/libLLVM-15.so+0x2935af0)
50:47.92 #22 0x00007fc8aed114e8 (/usr/lib/libLLVM-15.so+0x29114e8)
50:47.92 #23 0x00007fc8aed267d1 (/usr/lib/libLLVM-15.so+0x29267d1)
50:47.92 #24 0x00007fc8ad7085a2 (/usr/lib/libLLVM-15.so+0x13085a2)
50:47.92 #25 0x00007fc8ad0f54e8 llvm::ThreadPool::processTasks(llvm::ThreadPoolTaskGroup*) (/usr/lib/libLLVM-15.so+0xcf54e8)
50:47.92 #26 0x00007fc8ad0f5e65 (/usr/lib/libLLVM-15.so+0xcf5e65)
50:47.92 #27 0x00007fc8abe9d44b (/usr/lib/libc.so.6+0x8744b)
50:47.92 #28 0x00007fc8abf20e40 (/usr/lib/libc.so.6+0x10ae40)
50:48.32 clang-15: error: unable to execute command: Aborted (core dumped)
50:48.32 clang-15: error: linker command failed due to signal (use -v to see invocation)
50:48.32 make[4]: *** [/build/mullvad-browser/src/mullvad-browser-12.5.1/config/rules.mk:540: libxul.so] Error 1
50:48.32 make[3]: *** [/build/mullvad-browser/src/mullvad-browser-12.5.1/config/recurse.mk:72: toolkit/library/build/target] Error 2
50:48.32 make[2]: *** [/build/mullvad-browser/src/mullvad-browser-12.5.1/config/recurse.mk:34: compile] Error 2
50:48.32 make[1]: *** [/build/mullvad-browser/src/mullvad-browser-12.5.1/config/rules.mk:361: default] Error 2
50:48.32 make: *** [client.mk:63: build] Error 2
50:48.34 432 compiler warnings present.
 Config object not found by mach.
Configure complete!
Be sure to run |mach build| to pick up any changes
  Parallelism determined by memory: using 4 jobs for 4 cores based on 30.7 GiB RAM and estimated job size of 1.0 GiB

eclairevoyant commented on 2023-06-27 17:41 (UTC) (edited on 2023-06-27 17:41 (UTC) by eclairevoyant)

@SashexSRB Something using a lot of memory is not a "memory leak". LTO just takes a lot of memory. I don't know your system specs, but it's normal to take over 16 GB of RAM and max out a decent CPU. You also shouldn't be doing other things on your computer (e.g. using a web browser) when compiling browsers.

SashexSRB commented on 2023-06-27 17:23 (UTC)

Package has a memory leak on my end when compiling. It maxes out my RAM and PC becomes unresponsive.

eclairevoyant commented on 2023-06-08 09:47 (UTC)

pending https://github.com/mullvad/mullvad-browser/issues/94 to move further, as the sources can't be patched directly

eclairevoyant commented on 2023-06-06 22:27 (UTC) (edited on 2023-06-06 22:31 (UTC) by eclairevoyant)

@tarball I've been working on the build locally, but I wasn't able to figure out how you found the tarball url. I tried updating to the current release (12.0.6) and updating the URL based on the branch name here but it seems like https://cdn.mullvad.net/browser/12.0.6/src-firefox-mullvad-browser-102.11.0esr-12.5-1-build1.tar.xz doesn't exist. Where did you get the link?

EDIT: I missed the note in the readme, got the right branch now.

tarball commented on 2023-04-23 11:36 (UTC) (edited on 2023-04-23 16:34 (UTC) by tarball)

To potential users: this needs further work, which I don't have time for right now. It's missing some customizations, and has a unique fingerprint — you will be easier to track compared to the official build (which is provided by mullvad-browser-bin).

For more information, see this comment: https://aur.archlinux.org/packages/mullvad-browser-bin#comment-911414

If anyone is willing to properly maintain this, I will hand over the package. I'd rather focus on the official build.