Skip to content

Modify Firefox installation to ease Firefox's Gnome extension and FIrefox's GSconnect extension installation #10

@Thatoo

Description

@Thatoo

Hello,

In order to install https://addons.mozilla.org/fr/firefox/addon/gnome-shell-integration and https://addons.mozilla.org/fr/firefox/addon/gsconnect/ and make them working, we need to install firefox this way :

programs.firefox = {
   enable = true;
   package = pkgs.firefox;
   nativeMessagingHosts.packages = with pkgs; [
     browserpass
     gnomeExtensions.gsconnect
   ];
 };

instead of, as coded here, https://github.com/snowfallorg/icicle/blob/8e3776886fa391473d9c5421a7334d04638cb75f/src/utils/install.rs#L557-L560C7 :

    # List packages installed in system profile.
  environment.systemPackages = with pkgs; [
    firefox
  ];

Of course, gnomeExtensions.gsconnect should not be added at installation time thanks to icicle but should be added by the gsconnect module as I explain in my researches here : snowfallorg/snowflakeos-modules#4

However, to make it easy for the gsconnect module to do so, it would be better if icicle was installing Firefox like that

programs.firefox = {
   enable = true;
   package = pkgs.firefox;
   nativeMessagingHosts.packages = with pkgs; [
     browserpass
   ];
 };

instead of how it is coded in https://github.com/snowfallorg/icicle/blob/8e3776886fa391473d9c5421a7334d04638cb75f/src/utils/install.rs#L557-L560C7

I'm pretty sure it is a good thing to enable nativeMessagingHosts.packages.browserpass at installation time because Gnome user would expect to be able to use https://addons.mozilla.org/fr/firefox/addon/gnome-shell-integration right after installation time.

I even wonder if this firefox extension should not be installed by default during installation time thanks to icicle. If I understand what is written here, https://support.mozilla.org/en-US/kb/deploying-firefox-with-extensions , it would require to download the last version from https://addons.mozilla.org/firefox/downloads/latest/gnome-shell-integration/latest.xpi, rename it to chrome-gnome-shell@gnome.org.xpi (the add-on ID found in here https://gitlab.gnome.org/GNOME/gnome-browser-extension/-/blob/master/extension/manifest.firefox.json) and place it into the <firefox installation folder>/distribution/extensions/ folder.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions