chore(firefox): extensions are now configurable

This commit is contained in:
Yorick Barbanneau 2024-12-26 18:27:54 +01:00
parent 6f0c1e447a
commit cac5b8a130

View file

@ -8,6 +8,26 @@ in
options.modules.web.firefox = {
enable = mkEnableOption "enable Firefox web browser";
baseExtensions = mkOption {
type = types.listOf types.package;
default = with pkgs.nur.repos.rycee.firefox-addons; [
browserpass
consent-o-matic
cookie-autodelete
darkreader
decentraleyes
tridactyl
ublock-origin
];
description = "Base Firefox Plugins to install";
};
optionalExtensions = mkOption {
type = types.listOf types.package;
default = [];
description = "Optional Firefox Plugins to install";
};
enableNixGL = mkOption {
type = types.bool;
default = false;
@ -44,7 +64,9 @@ in
};
};
};
programs.firefox = {
programs.firefox = let
allExtensions = cfg.baseExtensions ++ cfg.optionalExtensions;
in {
enable = true;
package = pkgs.wrapFirefox pkgs.firefox-unwrapped {
nativeMessagingHosts = [
@ -57,15 +79,7 @@ in
id = 0;
name = "ephase";
isDefault = true;
extensions = with pkgs.nur.repos.rycee.firefox-addons; [
browserpass
consent-o-matic
cookie-autodelete
darkreader
decentraleyes
tridactyl
ublock-origin
];
extensions = allExtensions;
search = {
force = true;
default = "DuckDuckGo";