{ config, lib, pkgs, ... }: let inherit (pkgs.stdenv.hostPlatform) isLinux; inherit (pkgs.stdenv.hostPlatform) isDarwin; in { programs.firefox = { enable = true; # since I'm using firefox from brew on darwin, I need to build a dummy package # to still manage it via home-manager package = if isLinux then pkgs.firefox else (pkgs.writeScriptBin "__dummy-firefox" ""); profiles.default = { search.default = "DuckDuckGo"; search.force = true; extensions = with config.nur.repos.rycee.firefox-addons; [ clearurls darkreader decentraleyes i-dont-care-about-cookies multi-account-containers onepassword-password-manager temporary-containers ublock-origin vimium ]; settings = { "app.normandy.api_url" = ""; "app.normandy.enabled" = false; "app.shield.optoutstudies.enabled" = false; "app.update.auto" = false; "beacon.enabled" = false; "breakpad.reportURL" = ""; "browser.aboutConfig.showWarning" = false; "browser.cache.offline.enable" = false; "browser.crashReports.unsubmittedCheck.autoSubmit" = false; "browser.crashReports.unsubmittedCheck.autoSubmit2" = false; "browser.crashReports.unsubmittedCheck.enabled" = false; "browser.disableResetPrompt" = true; "browser.formfill.enable" = false; "browser.newtab.preload" = false; "browser.newtabpage.activity-stream.section.highlights.includePocket" = false; "browser.newtabpage.enabled" = false; "browser.newtabpage.enhanced" = false; "browser.newtabpage.introShown" = true; "browser.safebrowsing.appRepURL" = ""; "browser.safebrowsing.blockedURIs.enabled" = false; "browser.safebrowsing.downloads.enabled" = false; "browser.safebrowsing.downloads.remote.enabled" = false; "browser.safebrowsing.downloads.remote.url" = ""; "browser.safebrowsing.enabled" = false; "browser.safebrowsing.malware.enabled" = false; "browser.safebrowsing.phishing.enabled" = false; "browser.selfsupport.url" = ""; "browser.send_pings" = false; "browser.sessionstore.privacy_level" = 0; "browser.shell.checkDefaultBrowser" = false; "browser.startup.homepage_override.mstone" = "ignore"; "browser.tabs.crashReporting.sendReport" = false; "browser.tabs.firefox-view" = false; "browser.urlbar.groupLabels.enabled" = false; "browser.urlbar.quicksuggest.enabled" = false; "browser.urlbar.speculativeConnect.enabled" = false; "browser.urlbar.trimURLs" = false; "browser.warnOnQuitShortcut" = false; "datareporting.healthreport.service.enabled" = false; "datareporting.healthreport.uploadEnabled" = false; "datareporting.policy.dataSubmissionEnabled" = false; "device.sensors.ambientLight.enabled" = false; "device.sensors.enabled" = false; "device.sensors.motion.enabled" = false; "device.sensors.orientation.enabled" = false; "device.sensors.proximity.enabled" = false; "dom.battery.enabled" = false; "dom.event.clipboardevents.enabled" = false; "dom.security.https_only_mode" = true; "dom.security.https_only_mode_ever_enabled" = true; "dom.webaudio.enabled" = false; "experiments.activeExperiment" = false; "experiments.enabled" = false; "experiments.manifest.uri" = ""; "experiments.supported" = false; "extensions.CanvasBlocker@kkapsner.de.whiteList" = ""; "extensions.ClearURLs@kevinr.whiteList" = ""; "extensions.Decentraleyes@ThomasRientjes.whiteList" = ""; "extensions.FirefoxMulti-AccountContainers@mozilla.whiteList" = ""; "extensions.TemporaryContainers@stoically.whiteList" = ""; "extensions.autoDisableScopes" = 14; "extensions.getAddons.cache.enabled" = false; "extensions.getAddons.showPane" = false; "extensions.pocket.enabled" = false; "extensions.shield-recipe-client.api_url" = ""; "extensions.shield-recipe-client.enabled" = false; "extensions.webservice.discoverURL" = ""; "media.autoplay.default" = 1; "media.autoplay.enabled" = false; "media.eme.enabled" = false; "media.gmp-widevinecdm.enabled" = false; "media.navigator.enabled" = false; "media.peerconnection.enabled" = false; "media.video_stats.enabled" = false; "network.IDN_show_punycode" = true; "network.allow-experiments" = false; "network.captive-portal-service.enabled" = false; "network.cookie.cookieBehavior" = 1; "network.dns.disablePrefetch" = true; "network.dns.disablePrefetchFromHTTPS" = true; "network.http.referer.spoofSource" = true; "network.http.speculative-parallel-limit" = 0; "network.predictor.enable-prefetch" = false; "network.predictor.enabled" = false; "network.prefetch-next" = false; "network.trr.mode" = 5; "pdfjs.enableScripting" = false; "privacy.donottrackheader.enabled" = true; "privacy.donottrackheader.value" = 1; "privacy.query_stripping" = true; "privacy.trackingprotection.cryptomining.enabled" = true; "privacy.trackingprotection.enabled" = true; "privacy.trackingprotection.fingerprinting.enabled" = true; "privacy.trackingprotection.pbmode.enabled" = true; "privacy.usercontext.about_newtab_segregation.enabled" = true; "security.ssl.disable_session_identifiers" = true; "services.sync.prefs.sync.browser.newtabpage.activity-stream.showSponsoredTopSite" = false; "signon.autofillForms" = false; "toolkit.telemetry.archive.enabled" = false; "toolkit.telemetry.bhrPing.enabled" = false; "toolkit.telemetry.cachedClientID" = ""; "toolkit.telemetry.enabled" = false; "toolkit.telemetry.firstShutdownPing.enabled" = false; "toolkit.telemetry.hybridContent.enabled" = false; "toolkit.telemetry.newProfilePing.enabled" = false; "toolkit.telemetry.prompted" = 2; "toolkit.telemetry.rejected" = true; "toolkit.telemetry.reportingpolicy.firstRun" = false; "toolkit.telemetry.server" = ""; "toolkit.telemetry.shutdownPingSender.enabled" = false; "toolkit.telemetry.unified" = false; "toolkit.telemetry.unifiedIsOptIn" = false; "toolkit.telemetry.updatePing.enabled" = false; "webgl.disabled" = true; "webgl.renderer-string-override" = " "; "webgl.vendor-string-override" = " "; }; }; }; }