86 lines
3.3 KiB
Nix
86 lines
3.3 KiB
Nix
{ config, lib, pkgs, osConfig, inputs, ... }:
|
|
|
|
let
|
|
inherit (lib) mkIf;
|
|
isGraphical = osConfig.services.xserver.enable;
|
|
in
|
|
{
|
|
programs.firefox = lib.mkIf isGraphical {
|
|
enable = true;
|
|
languagePacks = [ "en-GB" ];
|
|
|
|
policies = {
|
|
ExtensionSettings = {
|
|
# uBlock Origin
|
|
"uBlock0@raymondhill.net" = {
|
|
install_url = "https://addons.mozilla.org/firefox/downloads/latest/ublock-origin/latest.xpi";
|
|
installation_mode = "force_installed";
|
|
private_browsing = true;
|
|
};
|
|
# 1Password
|
|
"{d634138d-c276-4fc8-924b-40a0ea21d284}" = {
|
|
install_url = "https://addons.mozilla.org/firefox/downloads/latest/1password-x-password-manager/latest.xpi";
|
|
installation_mode = "force_installed";
|
|
default_area = "navbar";
|
|
};
|
|
# Disqus Auto-Expander
|
|
"disqus-auto-expander@john30013.com" = {
|
|
install_url = "https://addons.mozilla.org/firefox/downloads/latest/disqus-auto-expander/latest.xpi";
|
|
installation_mode = "force_installed";
|
|
};
|
|
# Indie Wiki Buddy
|
|
"{cb31ec5d-c49a-4e5a-b240-16c767444f62}" = {
|
|
install_url = "https://addons.mozilla.org/firefox/downloads/latest/indie-wiki-buddy/latest.xpi";
|
|
installation_mode = "force_installed";
|
|
};
|
|
# SteamDB
|
|
"firefox-extension@steamdb.info" = {
|
|
install_url = "https://addons.mozilla.org/firefox/downloads/latest/steam-database/latest.xpi";
|
|
installation_mode = "force_installed";
|
|
};
|
|
};
|
|
};
|
|
|
|
profiles.default = {
|
|
settings = {
|
|
"browser.startup.page" = 3; # resume previous session
|
|
"browser.newtabpage.activity-stream.showSponsored" = false;
|
|
"browser.newtabpage.activity-stream.showSponsoredTopSites" = false;
|
|
|
|
# disable telemetry
|
|
"datareporting.healthreport.uploadEnabled" = false;
|
|
"app.shield.optoutstudies.enabled" = false;
|
|
"browser.crashReports.unsubmittedCheck.autoSubmit2" = false;
|
|
|
|
# disable prefetch?
|
|
|
|
# DNS over HTTPS
|
|
"network.trr.custom_uri" = "https://base.dns.mullvad.net/dns-query";
|
|
"network.trr.excluded-domains" = "detectportal.firefox.com";
|
|
"network.trr.mode" = 3;
|
|
"network.trr.uri" = "https://base.dns.mullvad.net/dns-query";
|
|
|
|
"browser.search.suggest.enabled" = false;
|
|
"browser.urlbar.suggest.searches" = false;
|
|
|
|
"dom.security.https_only_mode" = true;
|
|
"browser.contentblocking.category" = "strict"; # Enhanced Tracking Protection
|
|
# I think these are implied by the above
|
|
# "privacy.donottrackheader.enabled" = true;
|
|
# "privacy.trackingprotection.enabled" = true;
|
|
# "privacy.trackingprotection.emailtracking.enabled" = true;
|
|
# "privacy.trackingprotection.socialtracking.enabled" = true;
|
|
|
|
"privacy.sanitize.sanitizeOnShutdown" = true;
|
|
"privacy.clearOnShutdown_v2.historyFormDataAndDownloads" = false;
|
|
|
|
"dom.private-attribution.submission.enabled" = false; # disable "Privacy-Preserving Attribution for Advertising"
|
|
"extensions.autoDisableScopes" = 0; # automatically enable extensions installed through nix
|
|
|
|
# external password manager
|
|
"signon.rememberSignons" = false;
|
|
"extensions.formautofill.creditCards.enabled" = false;
|
|
};
|
|
};
|
|
};
|
|
}
|