firefox.nix (1550B)
1 { config, pkgs, ... }: 2 3 let 4 nur = import (builtins.fetchTarball "https://github.com/nix-community/NUR/archive/master.tar.gz") { inherit pkgs; }; 5 in 6 { 7 # Enable Firefox via Home Manager 8 programs.firefox = { 9 enable = true; 10 languagePacks = [ "en-GB" ]; 11 12 profiles.default = { 13 name = "default"; 14 isDefault = true; 15 16 extensions.packages = with nur.repos.rycee.firefox-addons; [ 17 ublock-origin 18 cookie-autodelete 19 new-tab-override 20 ]; 21 22 settings = { 23 "browser.aboutConfig.showWarning" = false; 24 "browser.gesture.swipe.left" = "cmd_scrollLeft"; 25 "browser.gesture.swipe.right" = "cmd_scrollRight"; 26 "browser.startup.homepage" = "https://breadcat.github.io/startpage/"; 27 "browser.theme.content-theme" = "0"; # Dark theme 28 "browser.theme.toolbar-theme" = "0"; # Dark theme 29 "browser.toolbars.bookmarks.visibility" = "never"; 30 "extensions.pocket.enabled" = false; 31 "general:autoScroll" = true; 32 "layout.css.prefers-color-scheme.content-override" = "0"; # Dark CSS themes 33 "network.cookie.cookieBehavior" = 1; # Block third-party cookies 34 "privacy.donottrackheader.enabled" = true; 35 }; 36 }; 37 38 policies = { 39 DisableTelemetry = true; 40 DisablePocket = true; 41 EnableTrackingProtection = { 42 Value = true; 43 Locked = true; 44 Cryptomining = true; 45 Fingerprinting = true; 46 }; 47 }; 48 }; 49 50 home.sessionVariables = { 51 BROWSER = "firefox"; 52 MOZ_ENABLE_WAYLAND = 1; 53 }; 54 }