mirror of
https://github.com/aviallon/nixos-lib.git
synced 2026-04-05 17:27:50 +00:00
Convert all Gnome and Plasma specific configuration to use the new programs.firefox.*
149 lines
5.5 KiB
Nix
149 lines
5.5 KiB
Nix
{config, pkgs, lib, ...}:
|
|
with lib;
|
|
let
|
|
genPrefList = {locked ? false}: prefs:
|
|
let
|
|
prefFuncName = if locked then "lockPref" else "defaultPref";
|
|
in
|
|
concatStringsSep "\n" (
|
|
mapAttrsToList
|
|
(key: value: ''${prefFuncName}(${builtins.toJSON key}, ${builtins.toJSON value});'' )
|
|
prefs
|
|
);
|
|
cfg = config.programs.firefox;
|
|
in {
|
|
config = mkIf cfg.enable {
|
|
programs.firefox.wrapperConfig = {
|
|
smartcardSupport = true;
|
|
pipewireSupport = true;
|
|
ffmpegSupport = true;
|
|
privacySupport = true;
|
|
};
|
|
|
|
programs.firefox.policies = {
|
|
CaptivePortal = true;
|
|
DisableFirefoxStudies = true;
|
|
DisablePocket = true;
|
|
DisableTelemetry = true;
|
|
DisableFirefoxAccounts = false;
|
|
FirefoxHome = {
|
|
Pocket = false;
|
|
Snippets = false;
|
|
};
|
|
HardwareAcceleration = true;
|
|
UserMessaging = {
|
|
ExtensionRecommendations = false;
|
|
SkipOnboarding = true;
|
|
WhatsNew = false;
|
|
MoreFromMozilla = false;
|
|
};
|
|
SSLVersionMin = "tls1.2";
|
|
SearchSuggestEnabled = true;
|
|
SearchEngines = {
|
|
Add = [
|
|
{
|
|
Name = "DuckDuckGo";
|
|
URLTemplate = "https://duckduckgo.com/?kp=1&k1=-1&kak=-1&kax=-1&kau=-1&kae=d&kaj=m&kam=osm&kav=1&kf=fw&q={searchTerms}";
|
|
Method = "GET";
|
|
IconURL = "https://duckduckgo.com/favicon.png";
|
|
Description = "Your privacy, simplified";
|
|
}
|
|
];
|
|
Default = "DuckDuckGo";
|
|
};
|
|
SupportMenu = {
|
|
Title = "Support";
|
|
URL = "mailto:antoine@lesviallon.fr";
|
|
AccessKey = "S";
|
|
};
|
|
Extensions = {
|
|
Install = [
|
|
"uBlock0@raymondhill.net"
|
|
];
|
|
};
|
|
ExtensionSettings = {
|
|
"uBlock0@raymondhill.net" = {
|
|
installation_mode = "force_installed";
|
|
install_url = "https://addons.mozilla.org/firefox/downloads/latest/ublock-origin/latest.xpi";
|
|
};
|
|
};
|
|
ExtensionUpdate = true;
|
|
};
|
|
|
|
programs.firefox.preferences = {
|
|
"widget.use-xdg-desktop-portal" = true;
|
|
"dom.event.contextmenu.enabled" = true;
|
|
"network.IDN_show_punycode" = true;
|
|
"plugins.enumerable_names" = true;
|
|
"security.identityblock.show_extended_validation" = true;
|
|
|
|
"toolkit.telemetry.server" = "";
|
|
"toolkit.telemetry.unified" = false;
|
|
"toolkit.telemetry.shutdownPingSender.enabled" = false;
|
|
"toolkit.telemetry.newProfilePing.enabled" = false;
|
|
"toolkit.telemetry.firstShutdownPing.enabled" = false;
|
|
"toolkit.telemetry.bhrPing.enabled" = false;
|
|
"network.trr.confirmation_telemetry_enabled" = false;
|
|
"toolkit.telemetry.pioneer-new-studies-available" = false;
|
|
"toolkit.telemetry.updatePing.enabled" = false;
|
|
"security.protectionspopup.recordEventTelemetry" = false;
|
|
"security.identitypopup.recordEventTelemetry" = false;
|
|
"security.certerrors.recordEventTelemetry" = false;
|
|
"security.app_menu.recordEventTelemetry" = false;
|
|
"browser.ping-centre.telemetry" = false;
|
|
"browser.urlbar.eventTelemetry.enabled" = false;
|
|
"browser.newtabpage.activity-stream.telemetry" = false;
|
|
"browser.newtabpage.activity-stream.feeds.telemetry" = false;
|
|
"browser.newtabpage.activity-stream.telemetry.structuredIngestion.endpoint" = "";
|
|
|
|
"browser.safebrowsing.provider.google.advisoryURL" = "";
|
|
"browser.safebrowsing.provider.google.gethashURL" = "";
|
|
"browser.safebrowsing.provider.google.reportURL" = "";
|
|
"browser.safebrowsing.provider.google.updateURL" = "";
|
|
"browser.safebrowsing.provider.google.lists" = "";
|
|
"browser.safebrowsing.provider.google.reportMalwareMistakeURL" = "";
|
|
"browser.safebrowsing.provider.google.reportPhishMistakeURL" = "";
|
|
|
|
"browser.safebrowsing.provider.google4.lists" = "";
|
|
"browser.safebrowsing.provider.google4.dataSharingURL" = "";
|
|
"browser.safebrowsing.provider.google4.gethashURL" = "";
|
|
"browser.safebrowsing.provider.google4.reportURL" = "";
|
|
"browser.safebrowsing.provider.google4.updateURL" = "";
|
|
"browser.safebrowsing.provider.google4.advisoryURL" = "";
|
|
"browser.safebrowsing.provider.google4.dataSharing.enabled" = false;
|
|
"browser.safebrowsing.provider.google4.reportMalwareMistakeURL" = "";
|
|
"browser.safebrowsing.provider.google4.reportPhishMistakeURL" = "";
|
|
|
|
"browser.safebrowsing.downloads.enabled" = false;
|
|
"browser.safebrowsing.malware.enabled" = false;
|
|
"browser.safebrowsing.passwords.enabled" = false;
|
|
"browser.safebrowsing.phishing.enabled" = false;
|
|
|
|
#"privacy.trackingprotection.origin_telemetry.enabled" = false;
|
|
|
|
} // {
|
|
"intl.accept_languages" = "fr-fr,en-us,en";
|
|
"intl.locale.requested" = "fr,en-US";
|
|
"media.eme.enabled" = true; # DRM
|
|
"general.autoScroll" = true; # Middleclick scrolling
|
|
|
|
"privacy.trackingprotection.enabled" = true;
|
|
"privacy.trackingprotection.fingerprinting.enabled" = true;
|
|
"privacy.trackingprotection.cryptomining.enabled" = true;
|
|
|
|
"browser.shell.didSkipDefaultBrowserCheckOnFirstRun" = true;
|
|
|
|
"media.ffmpeg.vaapi.enabled" = true;
|
|
"media.ffvpx.enabled" = true;
|
|
"media.navigator.mediadatadecoder_vpx_enabled" = true;
|
|
"media.rdd-ffmpeg.enabled" = true;
|
|
"media.rdd-ffvpx.enabled" = true;
|
|
"media.rdd-opus.enabled" = true;
|
|
|
|
"widget.use-xdg-desktop-portal.file-picker" = 1;
|
|
"widget.use-xdg-desktop-portal.location" = 1;
|
|
"widget.use-xdg-desktop-portal.mime-handler" = 1;
|
|
"widget.use-xdg-desktop-portal.settings" = 1;
|
|
};
|
|
};
|
|
}
|