1
0
Fork 0

firefox: less home-manager stuff
All checks were successful
Build / build-amd64-linux (push) Successful in 30s
Build / build-arm64-linux (push) Successful in 1m2s

This commit is contained in:
Daniel Kempkens 2024-07-31 20:34:48 +02:00
parent 37fd176a0a
commit b94ce0aa40
Signed by: daniel
SSH key fingerprint: SHA256:Ks/MyhQYcPRQiwMKLAKquWCdCPe3JXlb1WttgnAoSeM
3 changed files with 177 additions and 287 deletions

View file

@ -372,16 +372,17 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1722321190, "lastModified": 1722202622,
"narHash": "sha256-WeVWVRqkgrbLzmk6FfJoloJ7Xe7HWD27Pv950IUG2kI=", "narHash": "sha256-AOe1F9EbQpcluAP+mq+i8T3/OfMu7ALiQtSdF+oAJRE=",
"owner": "nix-community", "owner": "nix-community",
"repo": "home-manager", "repo": "home-manager",
"rev": "4fcd54df7cbb1d79cbe81209909ee8514d6b17a4", "rev": "587fcca66e9d11c8e2357053c096a8a727c120ab",
"type": "github" "type": "github"
}, },
"original": { "original": {
"owner": "nix-community", "owner": "nix-community",
"repo": "home-manager", "repo": "home-manager",
"rev": "587fcca66e9d11c8e2357053c096a8a727c120ab",
"type": "github" "type": "github"
} }
}, },

View file

@ -44,7 +44,7 @@
}; };
home-manager = { home-manager = {
url = "github:nix-community/home-manager"; url = "github:nix-community/home-manager?rev=587fcca66e9d11c8e2357053c096a8a727c120ab";
inputs.nixpkgs.follows = "nixpkgs"; inputs.nixpkgs.follows = "nixpkgs";
}; };

View file

@ -1,7 +1,157 @@
{ pkgs, config, secret, ... }: { pkgs, config, lib, secret, ... }:
let let
profileName = "daniel"; profileName = "daniel";
settings = {
# Arkenfox
"browser.newtabpage.activity-stream.showSponsored" = false;
"browser.newtabpage.activity-stream.showSponsoredTopSites" = false;
"geo.provider.network.url" = "https://location.services.mozilla.com/v1/geolocate?key=%MOZILLA_API_KEY%";
"extensions.getAddons.showPane" = false;
"extensions.htmlaboutaddons.recommendations.enabled" = false;
"browser.discovery.enabled" = false;
"browser.shopping.experience2023.enabled" = false;
"datareporting.policy.dataSubmissionEnabled" = false;
"datareporting.healthreport.uploadEnabled" = false;
"toolkit.telemetry.unified" = false;
"toolkit.telemetry.enabled" = false;
"toolkit.telemetry.server" = "data:,";
"toolkit.telemetry.archive.enabled" = false;
"toolkit.telemetry.newProfilePing.enabled" = false;
"toolkit.telemetry.shutdownPingSender.enabled" = false;
"toolkit.telemetry.updatePing.enabled" = false;
"toolkit.telemetry.bhrPing.enabled" = false;
"toolkit.telemetry.firstShutdownPing.enabled" = false;
"toolkit.telemetry.coverage.opt-out" = true;
"toolkit.coverage.opt-out" = true;
"toolkit.coverage.endpoint.base" = "";
"browser.ping-centre.telemetry" = false;
"browser.newtabpage.activity-stream.feeds.telemetry" = false;
"browser.newtabpage.activity-stream.telemetry" = false;
"dom.private-attribution.submission.enabled" = false;
"app.shield.optoutstudies.enabled" = false;
"app.normandy.enabled" = false;
"app.normandy.api_url" = "";
"breakpad.reportURL" = "";
"browser.tabs.crashReporting.sendReport" = false;
"browser.crashReports.unsubmittedCheck.autoSubmit2" = false;
"extensions.blocklist.url" = "https://blocklist.addons.mozilla.org/blocklist/3/%APP_ID%/%APP_VERSION%/";
"network.prefetch-next" = false;
"network.dns.disablePrefetch" = true;
"network.predictor.enabled" = false;
"network.predictor.enable-prefetch" = false;
"network.http.speculative-parallel-limit" = 0;
"browser.places.speculativeConnect.enabled" = false;
"network.gio.supported-protocols" = "";
"browser.fixup.alternate.enabled" = false;
"browser.search.suggest.enabled" = false;
"browser.urlbar.suggest.searches" = false;
"browser.urlbar.speculativeConnect.enabled" = false;
"browser.urlbar.dnsResolveSingleWordsAfterSearch" = 0;
"browser.urlbar.suggest.quicksuggest.nonsponsored" = false;
"browser.urlbar.suggest.quicksuggest.sponsored" = false;
"browser.urlbar.trending.featureGate" = false;
"browser.urlbar.addons.featureGate" = false;
"browser.urlbar.mdn.featureGate" = false;
"browser.urlbar.pocket.featureGate" = false;
"browser.urlbar.weather.featureGate" = false;
"browser.urlbar.yelp.featureGate" = false;
"browser.formfill.enable" = false;
"browser.search.separatePrivateDefault" = true;
"browser.search.separatePrivateDefault.ui.enabled" = true;
"browser.privatebrowsing.forceMediaMemoryCache" = true;
"media.memory_cache_max_size" = 65536;
"security.ssl.require_safe_negotiation" = true;
"security.OCSP.enabled" = 1;
"security.OCSP.require" = true;
"security.cert_pinning.enforcement_level" = 2;
"security.remote_settings.crlite_filters.enabled" = true;
"security.pki.crlite_mode" = 2;
"dom.security.https_only_mode" = true;
"dom.security.https_only_mode_send_http_background_request" = false;
"security.ssl.treat_unsafe_negotiation_as_broken" = true;
"browser.xul.error_pages.expert_bad_cert" = true;
"network.http.referer.XOriginTrimmingPolicy" = 2;
"media.peerconnection.ice.proxy_only_if_behind_proxy" = true;
"media.peerconnection.ice.default_address_only" = true;
"browser.uitour.enabled" = false;
"devtools.debugger.remote-enabled" = false;
"network.IDN_show_punycode" = true;
"browser.contentblocking.category" = "strict";
"privacy.partition.serviceWorkers" = true;
"privacy.partition.always_partition_third_party_non_cookie_storage" = true;
"privacy.partition.always_partition_third_party_non_cookie_storage.exempt_sessionstorage" = false;
"privacy.sanitize.sanitizeOnShutdown" = true;
"privacy.clearOnShutdown.cache" = true;
"privacy.clearOnShutdown_v2.cache" = true;
"privacy.clearOnShutdown.downloads" = true;
"privacy.clearOnShutdown.formdata" = true;
"privacy.clearOnShutdown.history" = true;
"privacy.clearOnShutdown_v2.historyFormDataAndDownloads" = true;
"privacy.clearOnShutdown.sessions" = true;
"privacy.clearOnShutdown.cookies" = false;
"privacy.clearOnShutdown.offlineApps" = false;
"privacy.clearSiteData.cache" = true;
"privacy.clearSiteData.historyFormDataAndDownloads" = true;
"privacy.clearHistory.historyFormDataAndDownloads" = true;
"browser.messaging-system.whatsNewPanel.enabled" = false;
"browser.urlbar.showSearchTerms.enabled" = false;
# Custom
"extensions.pocket.enabled" = false;
"privacy.globalprivacycontrol.functionality.enabled" = true;
"privacy.globalprivacycontrol.enabled" = true;
"network.proxy.type" = 2;
"network.proxy.autoconfig_url" = "file:///Users/daniel/Documents/Firefox/default.pac";
"network.trr.mode" = 2;
"network.trr.uri" = secret.firefox.settings.doh_uri;
"network.trr.custom_uri" = secret.firefox.settings.doh_uri;
"network.dns.echconfig.enabled" = true;
"browser.tabs.loadDivertedInBackground" = true;
"browser.tabs.loadBookmarksInBackground" = true;
"findbar.highlightAll" = true;
"cookiebanners.service.mode" = 1;
"cookiebanners.service.mode.privateBrowsing" = 1;
"browser.translations.select.enable" = true;
"network.dns.preferIPv6" = true;
# Themes
"browser.uidensity" = 1;
"browser.compactmode.show" = true;
"layout.css.prefers-color-scheme.content-override" = 2;
};
in in
{ {
programs.firefox = { programs.firefox = {
@ -12,290 +162,29 @@ in
nativeMessagingHosts = with pkgs; [ nativeMessagingHosts = with pkgs; [
tridactyl-native tridactyl-native
]; ];
profiles = {
"${profileName}" = {
id = 0;
settings = {
# Arkenfox
"browser.newtabpage.activity-stream.showSponsored" = false;
"browser.newtabpage.activity-stream.showSponsoredTopSites" = false;
"geo.provider.network.url" = "https://location.services.mozilla.com/v1/geolocate?key=%MOZILLA_API_KEY%";
"extensions.getAddons.showPane" = false;
"extensions.htmlaboutaddons.recommendations.enabled" = false;
"browser.discovery.enabled" = false;
"browser.shopping.experience2023.enabled" = false;
"datareporting.policy.dataSubmissionEnabled" = false;
"datareporting.healthreport.uploadEnabled" = false;
"toolkit.telemetry.unified" = false;
"toolkit.telemetry.enabled" = false;
"toolkit.telemetry.server" = "data:,";
"toolkit.telemetry.archive.enabled" = false;
"toolkit.telemetry.newProfilePing.enabled" = false;
"toolkit.telemetry.shutdownPingSender.enabled" = false;
"toolkit.telemetry.updatePing.enabled" = false;
"toolkit.telemetry.bhrPing.enabled" = false;
"toolkit.telemetry.firstShutdownPing.enabled" = false;
"toolkit.telemetry.coverage.opt-out" = true;
"toolkit.coverage.opt-out" = true;
"toolkit.coverage.endpoint.base" = "";
"browser.ping-centre.telemetry" = false;
"browser.newtabpage.activity-stream.feeds.telemetry" = false;
"browser.newtabpage.activity-stream.telemetry" = false;
"dom.private-attribution.submission.enabled" = false;
"app.shield.optoutstudies.enabled" = false;
"app.normandy.enabled" = false;
"app.normandy.api_url" = "";
"breakpad.reportURL" = "";
"browser.tabs.crashReporting.sendReport" = false;
"browser.crashReports.unsubmittedCheck.autoSubmit2" = false;
"extensions.blocklist.url" = "https://blocklist.addons.mozilla.org/blocklist/3/%APP_ID%/%APP_VERSION%/";
"network.prefetch-next" = false;
"network.dns.disablePrefetch" = true;
"network.predictor.enabled" = false;
"network.predictor.enable-prefetch" = false;
"network.http.speculative-parallel-limit" = 0;
"browser.places.speculativeConnect.enabled" = false;
"network.gio.supported-protocols" = "";
"browser.fixup.alternate.enabled" = false;
"browser.search.suggest.enabled" = false;
"browser.urlbar.suggest.searches" = false;
"browser.urlbar.speculativeConnect.enabled" = false;
"browser.urlbar.dnsResolveSingleWordsAfterSearch" = 0;
"browser.urlbar.suggest.quicksuggest.nonsponsored" = false;
"browser.urlbar.suggest.quicksuggest.sponsored" = false;
"browser.urlbar.trending.featureGate" = false;
"browser.urlbar.addons.featureGate" = false;
"browser.urlbar.mdn.featureGate" = false;
"browser.urlbar.pocket.featureGate" = false;
"browser.urlbar.weather.featureGate" = false;
"browser.formfill.enable" = false;
"browser.search.separatePrivateDefault" = true;
"browser.search.separatePrivateDefault.ui.enabled" = true;
"browser.privatebrowsing.forceMediaMemoryCache" = true;
"media.memory_cache_max_size" = 65536;
"security.ssl.require_safe_negotiation" = true;
"security.OCSP.enabled" = 1;
"security.OCSP.require" = true;
"security.cert_pinning.enforcement_level" = 2;
"security.remote_settings.crlite_filters.enabled" = true;
"security.pki.crlite_mode" = 2;
"dom.security.https_only_mode" = true;
"dom.security.https_only_mode_send_http_background_request" = false;
"security.ssl.treat_unsafe_negotiation_as_broken" = true;
"browser.xul.error_pages.expert_bad_cert" = true;
"network.http.referer.XOriginTrimmingPolicy" = 2;
"media.peerconnection.ice.proxy_only_if_behind_proxy" = true;
"media.peerconnection.ice.default_address_only" = true;
"browser.uitour.enabled" = false;
"devtools.debugger.remote-enabled" = false;
"network.IDN_show_punycode" = true;
"browser.contentblocking.category" = "strict";
"privacy.partition.serviceWorkers" = true;
"privacy.partition.always_partition_third_party_non_cookie_storage" = true;
"privacy.partition.always_partition_third_party_non_cookie_storage.exempt_sessionstorage" = false;
"privacy.sanitize.sanitizeOnShutdown" = true;
"privacy.clearOnShutdown.cache" = true;
"privacy.clearOnShutdown.downloads" = true;
"privacy.clearOnShutdown.formdata" = true;
"privacy.clearOnShutdown.history" = true;
"privacy.clearOnShutdown.sessions" = true;
"privacy.clearOnShutdown.cookies" = false;
"privacy.clearOnShutdown.offlineApps" = false;
"browser.messaging-system.whatsNewPanel.enabled" = false;
"browser.urlbar.showSearchTerms.enabled" = false;
# Custom
"extensions.pocket.enabled" = false;
"privacy.globalprivacycontrol.functionality.enabled" = true;
"privacy.globalprivacycontrol.enabled" = true;
"network.proxy.type" = 2;
"network.proxy.autoconfig_url" = "file:///Users/daniel/Documents/Firefox/default.pac";
"network.trr.mode" = 2;
"network.trr.uri" = secret.firefox.settings.doh_uri;
"network.trr.custom_uri" = secret.firefox.settings.doh_uri;
"network.dns.echconfig.enabled" = true;
"browser.tabs.loadDivertedInBackground" = true;
"browser.tabs.loadBookmarksInBackground" = true;
"findbar.highlightAll" = true;
"cookiebanners.service.mode" = 1;
"cookiebanners.service.mode.privateBrowsing" = 1;
"browser.translations.select.enable" = true;
"network.dns.preferIPv6" = true;
# Themes
"browser.uidensity" = 1;
"browser.compactmode.show" = true;
"layout.css.prefers-color-scheme.content-override" = 2;
};
search = {
force = true;
default = "Kagi";
privateDefault = "DuckDuckGo";
order = [
"Kagi"
"DuckDuckGo"
"Nix Packages"
"NixOS Options"
"GitHub"
"Hex"
"Google"
"Brave"
];
engines = {
"DuckDuckGo".metaData.alias = "!d";
"Google".metaData.alias = "!g";
"Bing".metaData.hidden = true;
"eBay".metaData.hidden = true;
"Ecosia".metaData.hidden = true;
"LEO Eng-Deu".metaData.hidden = true;
"Kagi" = {
urls = [{
template = "https://kagi.com/search";
params = [
{ name = "q"; value = "{searchTerms}"; }
];
}];
iconUpdateURL = "https://assets.kagi.com/v1/favicon-32x32.png";
updateInterval = 24 * 60 * 60 * 1000;
definedAliases = [ "!k" ];
};
"Brave" = {
urls = [{
template = "https://search.brave.com/search";
params = [
{ name = "q"; value = "{searchTerms}"; }
];
}];
iconUpdateURL = "https://cdn.search.brave.com/serp/v1/static/brand/eebf5f2ce06b0b0ee6bbd72d7e18621d4618b9663471d42463c692d019068072-brave-lion-favicon.png";
updateInterval = 24 * 60 * 60 * 1000;
definedAliases = [ "!b" ];
};
"GitHub" = {
urls = [{
template = "https://github.com/search";
params = [
{ name = "type"; value = "repositories"; }
{ name = "q"; value = "{searchTerms}"; }
];
}];
iconUpdateURL = "https://github.githubassets.com/favicons/favicon.svg";
updateInterval = 24 * 60 * 60 * 1000;
definedAliases = [ "!gh" ];
};
"Nix Packages" = {
urls = [{
template = "https://search.nixos.org/packages";
params = [
{ name = "type"; value = "packages"; }
{ name = "channel"; value = "unstable"; }
{ name = "query"; value = "{searchTerms}"; }
];
}];
icon = "''${pkgs.nixos-icons}/share/icons/hicolor/scalable/apps/nix-snowflake.svg";
definedAliases = [ "!nix" ];
};
"NixOS Options" = {
urls = [{
template = "https://search.nixos.org/options";
params = [
{ name = "type"; value = "packages"; }
{ name = "channel"; value = "unstable"; }
{ name = "query"; value = "{searchTerms}"; }
];
}];
icon = "''${pkgs.nixos-icons}/share/icons/hicolor/scalable/apps/nix-snowflake.svg";
definedAliases = [ "!nixopt" ];
};
"Noogle" = {
urls = [{
template = "https://noogle.dev/q";
params = [
{ name = "term"; value = "{searchTerms}"; }
];
}];
icon = "''${pkgs.nixos-icons}/share/icons/hicolor/scalable/apps/nix-snowflake.svg";
definedAliases = [ "!nfn" ];
};
"Hex" = {
urls = [{
template = "https://hex.pm/packages";
params = [
{ name = "search"; value = "{searchTerms}"; }
];
}];
iconUpdateURL = "https://hex.pm/favicon.ico";
updateInterval = 24 * 60 * 60 * 1000;
definedAliases = [ "!hex" ];
};
"Emojipedia" = {
urls = [{
template = "https://emojipedia.org/search";
params = [
{ name = "q"; value = "{searchTerms}"; }
];
}];
iconUpdateURL = "https://emojipedia.org/images/favicon-32x32.png";
updateInterval = 24 * 60 * 60 * 1000;
definedAliases = [ "!emoji" ];
};
};
};
};
};
}; };
home.file =
let
fullProfilePath = "Library/Application Support/Firefox/Profiles/${profileName}";
userPrefValue = pref:
builtins.toJSON (if lib.isBool pref || lib.isInt pref || lib.isString pref then
pref
else
builtins.toJSON pref);
mkUserJs = prefs:
''
${lib.concatStrings (lib.mapAttrsToList (name: value: ''
user_pref("${name}", ${userPrefValue value});
'') prefs)}
'';
in
{
"${fullProfilePath}/user.js".text = mkUserJs settings;
};
xdg.configFile."tridactyl/tridactylrc".text = xdg.configFile."tridactyl/tridactylrc".text =
let let
wezterm = "${pkgs.wezterm}/bin/wezterm"; wezterm = "${pkgs.wezterm}/bin/wezterm";