Subject: [bug#74790] [PATCH] gnu: librewolf: Support Guix icecat browser extensions.

From: Clément Lassieur <[email-masked]>
Date: Fri, 13 Dec 2024 19:15:11 +0100

Hi Ian,

On Fri, Dec 13, 2024, at 6:38 PM, Ian Eure wrote:
> The patches look good to me, thank you for taking this on!  How to 
> handle browser extensions is a subject that’s been on my mind 
> intermittently, so it’s great to see effort in that direction.
> 
> I think it might be non-obvious that IceCat packages affect 
> non-IceCat browsers.  I’d really like to have a solid facility for 
> managing extensions across the different Firefox forks, either 
> with generic "browser-extension-ublock-origin" packages; or 
> something similar to the Common Lisp setup, where 
> implementation-specific package variants can be derived from a 
> canonical one.

I've looked into having variant-specific extensions already
(https://issues.guix.gnu.org/68298), and I came to the conclusion that it
added a lot of complexity for little benefits.  Maybe I was wrong and you
thought of a better implementation?  Still, I think most of the time users
would want their "system add-ons" to be available on all browsers.  When this
is not the case, they can already use 'guix shell' to run a Firefox variant
with a different set of extensions, or use the built-in add-on system.

We can however add clarity where things are unclear.

Cheers,
Clément

> I lean somewhat towards the latter approach, since 
> I think it provides a cleaner way of handling differences across 
> browsers.  Given the different release cadences, I think it makes 
> sense to abstract over the differences in the build tooling rather 
> than patching the browsers to get consistent behavior.
> 
> To be clear here, these patches don’t have to wait for that; I’m 
> +1 on pushing as-is.  But I think we should have a more explicit 
> system for handling browser extension packages.