{ config, pkgs, ... }: let lock-false = { Value = false; Status = "locked"; }; lock-true = { Value = true; Status = "locked"; }; in { home-manager.sharedModules = [ ./firefox-home.nix ]; programs = { firefox = { enable = true; languagePacks = ["de" "en-US"]; /* ---- POLICIES ---- */ # Check about:policies#documentation for options. policies = { PasswordManagerEnabled = false; DisableTelemetry = true; DisableFirefoxStudies = true; EnableTrackingProtection = { Value = true; Locked = true; Cryptomining = true; Fingerprinting = true; }; DisablePocket = true; #DisableFirefoxAccounts = true; #DisableAccounts = true; #DisableFirefoxScreenshots = true; OverrideFirstRunPage = ""; OverridePostUpdatePage = ""; DontCheckDefaultBrowser = true; DisplayBookmarksToolbar = "always"; # alternatives: "always" or "newtab" DisplayMenuBar = "default-off"; # alternatives: "always", "never" or "default-on" SearchBar = "unified"; # alternative: "separate" /* ---- EXTENSIONS ---- */ # Check about:support for extension/add-on ID strings. # Valid strings for installation_mode are "allowed", "blocked", # "force_installed" and "normal_installed". # How to: https://discourse.nixos.org/t/declare-firefox-extensions-and-settings/36265 ExtensionSettings = with builtins; let extension = shortId: uuid: { name = uuid; value = { install_url = "https://addons.mozilla.org/en-US/firefox/downloads/latest/${shortId}/latest.xpi"; installation_mode = "normal_installed"; }; }; in listToAttrs [ (extension "ublock-origin" "uBlock0@raymondhill.net") (extension "bitwarden-password-manager" "{446900e4-71c2-419f-a6a7-df9c091e268b}") #(extension "2fas-two-factor-authentication" "admin@2fas.com") (extension "sponsorblock" "sponsorBlocker@ajay.app") #(extension "dearrow" "deArrow@ajay.app") #(extension "enhancer-for-youtube" "enhancerforyoutube@maximerf.addons.mozilla.org") #(extension "tabliss" "extension@tabliss.io") #(extension "don-t-fuck-with-paste" "DontFuckWithPaste@raim.ist") #(extension "clearurls" "{74145f27-f039-47ce-a470-a662b129930a}") #(extension "react-devtools" "@react-devtools") (extension "keepa" "amptra@keepa.com") (extension "redditUntranslate" "reddit-url-redirector@kichkoupi.com") (extension "darkreader" "addon@darkreader.org") ]; /* ---- PREFERENCES ---- */ # Check about:config for options. Preferences = { "browser.contentblocking.category" = { Value = "strict"; Status = "locked"; }; "extensions.pocket.enabled" = lock-false; "extensions.screenshots.disabled" = lock-true; "browser.topsites.contile.enabled" = lock-false; #"browser.formfill.enable" = lock-false; #"browser.search.suggest.enabled" = lock-false; #"browser.search.suggest.enabled.private" = lock-false; #"browser.urlbar.suggest.searches" = lock-false; "browser.urlbar.showSearchSuggestionsFirst" = lock-false; "browser.newtabpage.activity-stream.feeds.section.topstories" = lock-false; "browser.newtabpage.activity-stream.feeds.snippets" = lock-false; "browser.newtabpage.activity-stream.section.highlights.includePocket" = lock-false; "browser.newtabpage.activity-stream.section.highlights.includeBookmarks" = lock-false; "browser.newtabpage.activity-stream.section.highlights.includeDownloads" = lock-false; "browser.newtabpage.activity-stream.section.highlights.includeVisited" = lock-false; "browser.newtabpage.activity-stream.showSponsored" = lock-false; "browser.newtabpage.activity-stream.system.showSponsored" = lock-false; "browser.newtabpage.activity-stream.showSponsoredTopSites" = lock-false; }; }; }; }; }