Subject: [bug#68577] [PATCH 2/2] gnu: Add mullvad-browser.

From: Clément Lassieur <[email-masked]>
Date: Mon, 22 Jan 2024 11:33:34 +0100

On Mon, Jan 22 2024, Mark H Weaver wrote:

> Hi Clément,
>
> Clément Lassieur <[email-masked]> writes:
>
>> +(define-public mullvadbrowser-assets
>> +  ;; This is a prebuilt Mullvad Browser from which we take the assets we need.
>> +  (package
>> +    (name "mullvadbrowser-assets")
>> +    (version %mullvadbrowser-version)
>> +    (source
>> +     (origin
>> +       (method url-fetch)
>> +       (uri
>> +        (string-append
>> +         "https://archive.torproject.org/tor-package-archive/mullvadbrowser/"
>> +         version "/mullvad-browser-linux-x86_64-" version ".tar.xz"))
>> +       (sha256
>> +        (base32
>> +         "1i7vf7cn6s5iajsp4999jpxxn8qblljrrmfs4nswmc2swdmi07gk"))))
>> +    (arguments
>> +     (list
>> +      #:install-plan
>> +      ''(("Browser" "." #:include-regexp
>> +          ("^\\./fonts/"
>> +           "^\\./fontconfig/fonts.conf"
>> +           ;; Mullvad Browser Extension
>> +           "^\\./distribution/extensions/\\{d19a89b9-76c1-4a61-bcd4-49e8de916403\\}.xpi"
>> +           )))))
>> +    (build-system copy-build-system)
>> +    (home-page "https://www.torproject.org")
>> +    (synopsis "Mullvad Browser assets")
>> +    (description "This package contains fonts and configuration files for
>> +Mullvad Browser.")
>> +    (license license:silofl1.1)))
>
> Guix packages should, wherever feasible, avoid using components from
> pre-built binary distributions.  Each required font family should be
> added as a separate Guix package following our conventions for font
> packages.

Not feasible in this case, because fonts are used for fingerprinting.
We need to make sure they are identical to upstream fonts.

We should do the same to Icecat by the way.

> As for the configuration files: how about distributing them
> separately, or as part of the Mullvad source distribution?

What's the issue?