From 49e23d6aa5ebf99122a54b547a97960be41e308f Mon Sep 17 00:00:00 2001 From: seth Date: Sat, 26 Aug 2023 15:19:39 -0400 Subject: seth/firefox: use arkenfox-nixos --- users/seth/default.nix | 2 + users/seth/programs/default.nix | 2 +- users/seth/programs/firefox.nix | 26 ------------ users/seth/programs/firefox/arkenfox.nix | 72 ++++++++++++++++++++++++++++++++ users/seth/programs/firefox/default.nix | 41 ++++++++++++++++++ 5 files changed, 116 insertions(+), 27 deletions(-) delete mode 100644 users/seth/programs/firefox.nix create mode 100644 users/seth/programs/firefox/arkenfox.nix create mode 100644 users/seth/programs/firefox/default.nix (limited to 'users/seth') diff --git a/users/seth/default.nix b/users/seth/default.nix index 535f88e..80ee1bc 100644 --- a/users/seth/default.nix +++ b/users/seth/default.nix @@ -2,6 +2,7 @@ config, lib, pkgs, + arkenfox, nix-index-database, ... }: { @@ -30,6 +31,7 @@ imports = [ ./home.nix ./module.nix + arkenfox.hmModules.arkenfox nix-index-database.hmModules.nix-index ]; diff --git a/users/seth/programs/default.nix b/users/seth/programs/default.nix index cacda8f..93ba8f5 100644 --- a/users/seth/programs/default.nix +++ b/users/seth/programs/default.nix @@ -11,7 +11,7 @@ in { imports = [ ./chromium.nix - ./firefox.nix + ./firefox ./git.nix ./gpg.nix ./mangohud.nix diff --git a/users/seth/programs/firefox.nix b/users/seth/programs/firefox.nix deleted file mode 100644 index ed66a27..0000000 --- a/users/seth/programs/firefox.nix +++ /dev/null @@ -1,26 +0,0 @@ -{ - config, - lib, - pkgs, - ... -}: let - cfg = config.getchoo.programs.firefox; - inherit (lib) mkEnableOption mkIf; -in { - options.getchoo.programs.firefox.enable = mkEnableOption "firefox" // {default = config.getchoo.desktop.enable;}; - - config = mkIf cfg.enable { - programs.firefox = { - enable = true; - profiles.arkenfox = { - extensions = with pkgs.nur.repos.rycee.firefox-addons; [ - bitwarden - floccus - private-relay - ublock-origin - ]; - isDefault = true; - }; - }; - }; -} diff --git a/users/seth/programs/firefox/arkenfox.nix b/users/seth/programs/firefox/arkenfox.nix new file mode 100644 index 0000000..f9aba5a --- /dev/null +++ b/users/seth/programs/firefox/arkenfox.nix @@ -0,0 +1,72 @@ +{ + config, + lib, + ... +}: let + cfg = config.getchoo.programs.firefox; + inherit (lib) genAttrs mkEnableOption mkIf recursiveUpdate; + + enableSections = sections: genAttrs sections (_: {enable = true;}); +in { + options.getchoo.programs.firefox.arkenfoxConfig.enable = + mkEnableOption "default arkenfox config" // {default = true;}; + + config.programs.firefox = mkIf cfg.enable { + arkenfox = { + enable = true; + version = "115.0"; + }; + + profiles.arkenfox.arkenfox = + recursiveUpdate { + enable = true; + + # enable safe browsing + "0400"."0403"."browser.safebrowsing.downloads.remote.enabled".value = true; + + "0800"."0801"."keyword.enabled".value = true; + + # fix hulu + "1200"."1201"."security.ssl.require_safe_negotiation".value = false; + + # enable drm + "2000" = { + "2021"."media.gmp-widevinecdm.enabled" = { + enable = true; + value = true; + }; + "2022"."media.eme.enabled".value = true; + }; + + "2600"."2651"."browser.download.useDownloadDir" = { + enable = true; + value = true; + }; + + # disable rfp letterboxing + "4500"."4504"."privacy.resistFingerprinting.letterboxing".value = false; + + "5000"."5003"."signon.rememberSignons".enable = true; + } (enableSections [ + "0100" + "0200" + "0300" + "0400" + "0600" + "0700" + "0800" + "0900" + "1000" + "1200" + "1400" + "1600" + "1700" + "2000" + "2400" + "2600" + "2700" + "2800" + "4500" + ]); + }; +} diff --git a/users/seth/programs/firefox/default.nix b/users/seth/programs/firefox/default.nix new file mode 100644 index 0000000..46d500e --- /dev/null +++ b/users/seth/programs/firefox/default.nix @@ -0,0 +1,41 @@ +{ + config, + lib, + pkgs, + ... +}: let + cfg = config.getchoo.programs.firefox; + inherit (lib) mkEnableOption mkIf; +in { + options.getchoo.programs.firefox.enable = mkEnableOption "firefox" // {default = config.getchoo.desktop.enable;}; + + imports = [ + ./arkenfox.nix + ]; + + config = mkIf cfg.enable { + programs.firefox = { + enable = true; + profiles.arkenfox = { + extensions = with pkgs.nur.repos.rycee.firefox-addons; [ + bitwarden + floccus + private-relay + ublock-origin + ]; + + isDefault = true; + + settings = { + "extensions.pocket.enabled" = false; + "identity.fxaccounts.enabled" = false; + + "gfx.webrender.all" = true; + "fission.autostart" = true; + + "media.ffmpeg.vaapi.enabled" = true; + }; + }; + }; + }; +} -- cgit v1.2.3