summaryrefslogtreecommitdiff
path: root/users/seth/mixins/firefox
diff options
context:
space:
mode:
Diffstat (limited to 'users/seth/mixins/firefox')
-rw-r--r--users/seth/mixins/firefox/arkenfox.nix69
-rw-r--r--users/seth/mixins/firefox/default.nix56
2 files changed, 125 insertions, 0 deletions
diff --git a/users/seth/mixins/firefox/arkenfox.nix b/users/seth/mixins/firefox/arkenfox.nix
new file mode 100644
index 0000000..cfb2a0d
--- /dev/null
+++ b/users/seth/mixins/firefox/arkenfox.nix
@@ -0,0 +1,69 @@
+{
+ lib,
+ inputs,
+ ...
+}:
+
+{
+ imports = [ inputs.arkenfox.hmModules.arkenfox ];
+
+ programs.firefox = {
+ arkenfox = {
+ enable = true;
+ version = "128.0";
+ };
+
+ profiles.arkenfox.arkenfox =
+ let
+ enableSections =
+ sections:
+ lib.genAttrs sections (_: {
+ enable = true;
+ });
+ in
+ lib.recursiveUpdate
+ {
+ enable = true;
+
+ # enable safe browsing
+ "0400"."0403"."browser.safebrowsing.downloads.remote.enabled".value = true;
+
+ # fix hulu
+ "1200"."1201"."security.ssl.require_safe_negotiation".value = false;
+
+ "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;
+ # enable search autocomplete
+ "5021"."keyword.enabled".value = true;
+ };
+ }
+ (enableSections [
+ "0100"
+ "0200"
+ "0300"
+ "0400"
+ "0600"
+ "0700"
+ "0800"
+ "0900"
+ "1000"
+ "1200"
+ "1600"
+ "1700"
+ "2000"
+ "2400"
+ "2600"
+ "2700"
+ "2800"
+ "4500"
+ ]);
+ };
+}
diff --git a/users/seth/mixins/firefox/default.nix b/users/seth/mixins/firefox/default.nix
new file mode 100644
index 0000000..7d5fb7e
--- /dev/null
+++ b/users/seth/mixins/firefox/default.nix
@@ -0,0 +1,56 @@
+{
+ config,
+ lib,
+ pkgs,
+ inputs,
+ ...
+}:
+
+let
+ inherit (pkgs.stdenv.hostPlatform) isLinux;
+in
+
+{
+ imports = [
+ inputs.getchpkgs.nixosModules.firefox-addons
+ # Requires `github:dwarfmaster/arkenfox-nixos`
+ # ./arkenfox.nix
+ ];
+
+ config = lib.mkMerge [
+ {
+ programs.firefox = {
+ addons = [
+ # uBlock Origin
+ # Bitwarden
+ "{446900e4-71c2-419f-a6a7-df9c091e268b}"
+ # Floccus
+ ];
+
+ profiles.arkenfox = {
+ isDefault = true;
+
+ settings = {
+ # disable firefox accounts & pocket
+ "extensions.pocket.enabled" = false;
+ "identity.fxaccounts.enabled" = false;
+
+ # hw accel
+ "media.ffmpeg.vaapi.enabled" = true;
+
+ # widevine drm
+ "media.gmp-widevinecdm.enabled" = true;
+ };
+ };
+ };
+ }
+
+ (lib.mkIf (config.programs.firefox.enable && isLinux) {
+ home.sessionVariables = {
+ MOZ_ENABLE_WAYLAND = "1";
+ };
+ })
+ ];
+}