mirror of
https://github.com/Jokiller230/puzzlevision.git
synced 2025-09-09 12:20:04 +00:00
✨ Add Firefox home module and recursively generate extension list
This commit is contained in:
parent
459a0427c3
commit
92eb3abcdf
2 changed files with 52 additions and 1 deletions
|
@ -12,6 +12,19 @@
|
||||||
puzzlevision = {
|
puzzlevision = {
|
||||||
themes.catppuccin.enable = true;
|
themes.catppuccin.enable = true;
|
||||||
apps.zed.enable = true;
|
apps.zed.enable = true;
|
||||||
|
apps.firefox = {
|
||||||
|
enable = true;
|
||||||
|
extensions = [
|
||||||
|
"uBlock0@raymondhill.net"
|
||||||
|
"ATBC@EasonWong"
|
||||||
|
"languagetool-webextension@languagetool.org"
|
||||||
|
"firefox-enpass@enpass.io"
|
||||||
|
"firefox@tampermonkey.net"
|
||||||
|
"wappalyzer@crunchlabz.com"
|
||||||
|
"{7a7a4a92-a2a0-41d1-9fd7-1e92480d612d}"
|
||||||
|
"{d49033ac-8969-488c-afb0-5cdb73957f41}"
|
||||||
|
];
|
||||||
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
sops.secrets.wakatime-cfg = {
|
sops.secrets.wakatime-cfg = {
|
||||||
|
@ -27,7 +40,6 @@
|
||||||
enpass
|
enpass
|
||||||
|
|
||||||
## WEB
|
## WEB
|
||||||
firefox
|
|
||||||
ungoogled-chromium
|
ungoogled-chromium
|
||||||
|
|
||||||
## EDITORS
|
## EDITORS
|
||||||
|
|
39
modules/home/apps/firefox/default.nix
Normal file
39
modules/home/apps/firefox/default.nix
Normal file
|
@ -0,0 +1,39 @@
|
||||||
|
{
|
||||||
|
lib,
|
||||||
|
self,
|
||||||
|
config,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
let
|
||||||
|
inherit (self) namespace;
|
||||||
|
inherit (self.lib) mkOpt;
|
||||||
|
inherit (lib) mkEnableOption types mkIf;
|
||||||
|
|
||||||
|
cfg = config.${namespace}.apps.firefox;
|
||||||
|
in
|
||||||
|
{
|
||||||
|
options.${namespace}.apps.firefox = {
|
||||||
|
enable = mkEnableOption "the Firefox browser.";
|
||||||
|
extensions = mkOpt (types.listOf types.str) [
|
||||||
|
"uBlock0@raymondhill.net"
|
||||||
|
] "List of extension slugs to install";
|
||||||
|
};
|
||||||
|
|
||||||
|
config = mkIf cfg.enable {
|
||||||
|
programs.firefox = {
|
||||||
|
enable = true;
|
||||||
|
policies = {
|
||||||
|
ExtensionSettings = builtins.foldl' (
|
||||||
|
acc: id:
|
||||||
|
acc
|
||||||
|
// {
|
||||||
|
${id} = {
|
||||||
|
install_url = "https://addons.mozilla.org/firefox/downloads/latest/${id}/latest.xpi";
|
||||||
|
installation_mode = "force_installed";
|
||||||
|
};
|
||||||
|
}
|
||||||
|
) { } cfg.extensions;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
Loading…
Add table
Add a link
Reference in a new issue