guix-patches
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[bug#67512] [PATCH 0/5] Add LibreWolf


From: Ian Eure
Subject: [bug#67512] [PATCH 0/5] Add LibreWolf
Date: Sun, 10 Dec 2023 14:28:35 -0800
User-agent: mu4e 1.8.13; emacs 28.2

Hi, thank you very much for your comments.

Ludovic Courtès <ludo@gnu.org> writes:

Hi!

Ian Eure <ian@retrospec.tv> skribis:

I mentioned in #guix that I was working on a package for LibreWolf, and it was requested that I send in patches, so I am. These changes are based on the firefox-esr package in nonguix; I've retained the
copyright / authorship notices from there.

LibreWolf (https://librewolf.net/) is a fork of Firefox which
removes the telemetry and advertising, and bundles uBlock Origin. It doesn't have the redistribution issues that Firefox does, its
name/logo are under MPL 2.0 and aren't trademarked.

I'm new to Guix, and not remotely a browser development expert, so I
don't expect these are ready to be accepted yet, but I believe
they're in good enough shape to have a discussion about. They're
working acceptably well for me, though I'm not currently daily
driving Guix, so there may be issues I haven't encountered yet.

This is much appreciated! People often complain that IceCat is based on too old a version of Firefox, so if we can have LibreWolf (or even
Firefox without its problematic bits), that’s great.


IMO, LibreWolf pretty much is Firefox without the problematic bits. It’s been my default browser for several years, and I’m very satisfied
with it.

The librewolf package has some functions duplicated from (gnu
packages gnuzilla), which probably ought to get factored out and put
somewhere, but I'm not sure if they should be in (gnu packages
mozilla) or a different module. Guidance would be appreciated here.

To me that’s the main issue here: these packages are complex, and I wouldn’t want us to end up with two (or more!) copies of these beasts.

As the person who made the changes, it would be great if you could pinpoint things that had to be changed compared to ‘icecat’. What
phases or flags differ?  What phases can be factorized?

This work isn’t based on the icecat package, but on the firefox-esr package from nonguix. The duplication I refer to is two small helper functions, `runpath-of' and `runpaths-of-input', totaling nine lines of code; they’re flagged with a comment in the patch. As mentioned in the cover letter, I’m happy to extract these, I just don’t know where they ought to be placed. They’re defined inside a lambda in a gexp, which sounds like it may be challenging to put somewhere accessible to
both packages.

Skimming the icecat package, not many of the build steps are shared with librewolf, and factoring the commonalities out would IMO result in overly complex, brittle, hard to maintain code that’s worse than the slight duplication between the two packages. If there’s a strong
feeling that they must be accounted for, I’ll give it a try, but I
don’t believe that it’s the best option.

Thanks,

 — Ian





reply via email to

[Prev in Thread] Current Thread [Next in Thread]