diff options
Diffstat (limited to 'modules/web')
-rw-r--r-- | modules/web/default.nix | 3 | ||||
-rw-r--r-- | modules/web/firefox/default.nix | 52 |
2 files changed, 55 insertions, 0 deletions
diff --git a/modules/web/default.nix b/modules/web/default.nix new file mode 100644 index 0000000..04b267a --- /dev/null +++ b/modules/web/default.nix @@ -0,0 +1,3 @@ +[ + ./firefox +] diff --git a/modules/web/firefox/default.nix b/modules/web/firefox/default.nix new file mode 100644 index 0000000..0a01090 --- /dev/null +++ b/modules/web/firefox/default.nix @@ -0,0 +1,52 @@ +{ config, lib, pkgs, user, ... }: +with lib; +let + arkenfox = { + owner = "arkenfox"; + repo = "user.js"; + version = "117.0"; + }; +in +{ + config.home-manager.users.${user} = mkIf (config.xserver.enable) { + programs.firefox = { + enable = true; + + profiles."default" = { + extensions = with pkgs.nur.repos.rycee.firefox-addons; [ + ublock-origin + multi-account-containers + ]; + extraConfig = builtins.readFile + ( builtins.fetchTarball { + url = "https://github.com/${arkenfox.owner}/${arkenfox.repo}/archive/refs/tags/${arkenfox.version}.tar.gz"; + sha256="1pll4fbdn2390n05902l3pkg4rizxghkakpzi1r9z1b7blmk1x4s"; + } + "/user.js"); + search = { + force = true; + default = "DuckDuckGo"; + engines = { + "Nix Packages" = { + urls = [{ + template = "https://search.nixos.org/packages"; + params = [ + { name = "type"; value = "packages"; } + { name = "query"; value = "{searchTerms}"; } + ]; + }]; + definedAliases = [ "@np" ]; + }; + "NixOS Wiki" = { + urls = [{ template = "https://nixos.wiki/index.php?search={searchTerms}"; }]; + iconUpdateURL = "https://nixos.wiki/favicon.png"; + updateInterval = 24 * 60 * 60 * 1000; + definedAliases = [ "@nw" ]; + }; + }; + }; + settings = { +"browser.download.dir" = "/home/${user}/dwn"; + }; + }; + };}; +} |