foxgirl-settings/librewolf.cfg

678 lines
32 KiB
INI
Raw Normal View History

2021-05-10 10:55:27 +02:00
//---------------|
// LibreWolf |
//---------------|
// Glossary: |
// ================================================================================================================================|
// |
// "Section" : Description of the settings section separated by "----" |
// "Pref" : Preference/Settings name and or description followed by links or documentations |
// and some time explanation why the setting is commented and ignored. |
// "lockPref" : Locked preference can not be changed on firefox, nor by extensions, can only be changed here |
// lockPref is used to lock preferences so they cannot be changed through the GUI or about:config. |
// In many cases the GUI will change to reflect this, graying out or removing options. Appears |
// in about:config as "locked". Some config items require lockPref to be set, such as app.update.enabled. |
// It will not work if it set with just pref. |
// "pref" : Sets the preference as if a user had set it, every time you start the browser. So users can make changes, |
// but they will be erased on restart. If you set a particular preference this way, |
// it shows up in about:config as "user set". |
// "defaultPref" : Defaulting : Is used to alter the default value, though users can set it normally and their changes will |
// be saved between sessions. If preferences are reset to default through the GUI or some other method, |
// this is what they will go back to. Appears in about:config as "default". |
// "clearPref" : Can be used to "blank" certain preferences. This can be useful e.g. to disable functions |
// that rely on comparing version numbers. |
// |
// ================================================================================================================================|
2019-08-17 02:49:17 +02:00
// -----------------------------------
2021-05-10 10:55:27 +02:00
// # TRACKING PROTECTION
2019-08-17 02:49:17 +02:00
// -----------------------------------
2021-05-10 10:55:27 +02:00
defaultPref("browser.contentblocking.category", "custom"); // do not lock as it breaks UI even more
2019-08-17 02:49:17 +02:00
lockPref("privacy.trackingprotection.enabled", false);
lockPref("privacy.trackingprotection.pbmode.enabled", false);
2021-05-21 23:37:51 +02:00
defaultPref("privacy.trackingprotection.cryptomining.enabled", false);
defaultPref("privacy.trackingprotection.fingerprinting.enabled", false);
2021-05-10 10:55:27 +02:00
lockPref("privacy.trackingprotection.annotate_channels", false);
// remove urls
2021-05-21 23:37:51 +02:00
defaultPref("browser.safebrowsing.provider.mozilla.updateURL", "");
defaultPref("browser.safebrowsing.provider.mozilla.gethashURL", "");
2021-05-10 10:55:27 +02:00
// hide ui elements
2021-05-21 23:37:51 +02:00
defaultPref("browser.contentblocking.cryptomining.preferences.ui.enabled", false);
defaultPref("browser.contentblocking.fingerprinting.preferences.ui.enabled", false);
2021-05-10 10:55:27 +02:00
lockPref("browser.contentblocking.report.hide_vpn_banner", true);
lockPref("browser.contentblocking.report.show_mobile_app", false);
lockPref("browser.contentblocking.report.lockwise.enabled", false);
lockPref("browser.contentblocking.report.monitor.enabled", false);
lockPref("browser.contentblocking.report.proxy.enabled", false);
2021-05-10 10:55:27 +02:00
lockPref("browser.contentblocking.report.vpn.enabled", false);
2019-08-17 02:49:17 +02:00
// ----------------------------------
2021-05-10 10:55:27 +02:00
// # AUTOPLAY
2019-08-17 02:49:17 +02:00
// ----------------------------------
2021-01-04 23:26:48 +01:00
defaultPref("media.autoplay.default", 5);
2021-05-10 10:55:27 +02:00
defaultPref("media.autoplay.blocking_policy", 2);
2019-08-17 02:49:17 +02:00
// -----------------------------------------
2021-05-10 10:55:27 +02:00
// # PASSWORD MANAGER
2019-08-17 02:49:17 +02:00
// -----------------------------------------
lockPref("signon.rememberSignons", false);
lockPref("signon.storeWhenAutocompleteOff", false);
2021-05-21 23:37:51 +02:00
lockPref("signon.formlessCapture.enabled", false);
lockPref("signon.autofillForms", false);
2021-05-10 10:55:27 +02:00
defaultPref("signon.management.page.breach-alerts.enabled", false);
defaultPref("signon.management.page.breachAlertUrl", "");
// --------------------------------
// # SEARCH AND URLBAR
// --------------------------------
2019-08-17 02:49:17 +02:00
2021-05-10 10:55:27 +02:00
defaultPref("browser.urlbar.dnsResolveSingleWordsAfterSearch", 0);
lockPref("browser.urlbar.speculativeConnect.enabled", false);
defaultPref("browser.urlbar.trimURLs", false);
defaultPref("browser.search.suggest.enabled", false);
defaultPref("browser.search.region", "US");
2021-05-10 10:55:27 +02:00
lockPref("browser.fixup.alternate.enabled", false);
defaultPref("browser.urlbar.suggest.searches", false);
defaultPref("browser.search.update", false);
2019-08-17 02:49:17 +02:00
// --------------------------------
2021-05-10 10:55:27 +02:00
// # SANITIZING, COOKIES AND HISTORY
2019-08-17 02:49:17 +02:00
// --------------------------------
2021-05-10 10:55:27 +02:00
defaultPref("network.cookie.cookieBehavior", 5); // dFPI, previously set to 1
defaultPref("network.cookie.lifetimePolicy", 2);
defaultPref("network.cookie.thirdparty.sessionOnly", true);
defaultPref("network.cookie.thirdparty.nonsecureSessionOnly", true);
2021-05-10 10:55:27 +02:00
// includes new cookie behavior that allows to stay logged with exceptions
defaultPref("privacy.clearOnShutdown.cookies", false);
defaultPref("privacy.clearOnShutdown.offlineApps", false);
defaultPref("privacy.cpd.cookies", false); // just for consistency to avoid accidental logout
defaultPref("privacy.cpd.offlineApps", false); // just for consistency to avoid accidental logout
2019-08-17 02:49:17 +02:00
defaultPref("privacy.sanitize.timeSpan", 0);
defaultPref("browser.formfill.enable", false);
defaultPref("privacy.sanitize.sanitizeOnShutdown", true);
defaultPref("places.history.enabled", false);
defaultPref("privacy.history.custom", true);
2019-08-17 02:49:17 +02:00
// --------------------------------------------------------------------
2021-05-10 10:55:27 +02:00
// # SESSIONS
2019-08-17 02:49:17 +02:00
// --------------------------------------------------------------------
defaultPref("browser.sessionstore.privacy_level", 2);
defaultPref("browser.sessionstore.interval", 60000);
2019-08-17 02:49:17 +02:00
// ---------------------------------
2021-05-10 10:55:27 +02:00
// # AUTOFILL
2019-08-17 02:49:17 +02:00
// ---------------------------------
Relax/unlock some preferences This is basically backporting some changes that have been already implemented with my earlier Arch builds. Mostly it's about keeping some of the settings most often causing "issues" unlocked, to make it easier to change them once needed. Cookie handling, for example, can be handled via [Cookie AutoDelete](https://addons.mozilla.org/de/firefox/addon/cookie-autodelete/) more comfortably, allowing exceptions for websites and a more granular retention / rejection. Having the option to actually keep a history or autofill forms can also be desired, when the tradeoff with regards to privacy implications is understood and accepted, so while keeping those options off by default, it might be helpful to have them easily modifiable. `resistFingerprinting` can cause issues (rarely), so it might be desired to at least temporarily disable it in some cases. The predefined useragent and other overrides sometimes cause issues with certain websites, so being able to modify can be required as well. The webextensions-CSP needs to be slightly modified to allow some addons (especially μBlock Origin) to function. Furthermore, options to allow re-enabling installing (and, optionally, updating) extensions from the official extension store might be a good thing, albeit somewhat of a tradeoff between privacy and security: Basically keeping extensions up to date is crucial from a security point of view, and the official extension store is at least a somewhat trusted source of extensions. This also indirectly can be a good thing for privacy, as in keeping relevant addons current with regards to privacy enhancing techniques. Of course, extensions can be kept up to date separately as well, but from my experience this is often not taken care of properly and quite a lot of extra work. In a comparable vein, the `xpinstall.signatures.required` option might be a good thing, but also undesired – so it's just kept unlocked.
2020-03-07 16:20:10 +01:00
defaultPref("extensions.formautofill.available", "off");
2021-05-10 10:55:27 +02:00
defaultPref("extensions.formautofill.addresses.enabled", false);
Relax/unlock some preferences This is basically backporting some changes that have been already implemented with my earlier Arch builds. Mostly it's about keeping some of the settings most often causing "issues" unlocked, to make it easier to change them once needed. Cookie handling, for example, can be handled via [Cookie AutoDelete](https://addons.mozilla.org/de/firefox/addon/cookie-autodelete/) more comfortably, allowing exceptions for websites and a more granular retention / rejection. Having the option to actually keep a history or autofill forms can also be desired, when the tradeoff with regards to privacy implications is understood and accepted, so while keeping those options off by default, it might be helpful to have them easily modifiable. `resistFingerprinting` can cause issues (rarely), so it might be desired to at least temporarily disable it in some cases. The predefined useragent and other overrides sometimes cause issues with certain websites, so being able to modify can be required as well. The webextensions-CSP needs to be slightly modified to allow some addons (especially μBlock Origin) to function. Furthermore, options to allow re-enabling installing (and, optionally, updating) extensions from the official extension store might be a good thing, albeit somewhat of a tradeoff between privacy and security: Basically keeping extensions up to date is crucial from a security point of view, and the official extension store is at least a somewhat trusted source of extensions. This also indirectly can be a good thing for privacy, as in keeping relevant addons current with regards to privacy enhancing techniques. Of course, extensions can be kept up to date separately as well, but from my experience this is often not taken care of properly and quite a lot of extra work. In a comparable vein, the `xpinstall.signatures.required` option might be a good thing, but also undesired – so it's just kept unlocked.
2020-03-07 16:20:10 +01:00
defaultPref("extensions.formautofill.creditCards.enabled", false);
2021-05-10 10:55:27 +02:00
defaultPref("extensions.formautofill.creditCards.available", false);
Relax/unlock some preferences This is basically backporting some changes that have been already implemented with my earlier Arch builds. Mostly it's about keeping some of the settings most often causing "issues" unlocked, to make it easier to change them once needed. Cookie handling, for example, can be handled via [Cookie AutoDelete](https://addons.mozilla.org/de/firefox/addon/cookie-autodelete/) more comfortably, allowing exceptions for websites and a more granular retention / rejection. Having the option to actually keep a history or autofill forms can also be desired, when the tradeoff with regards to privacy implications is understood and accepted, so while keeping those options off by default, it might be helpful to have them easily modifiable. `resistFingerprinting` can cause issues (rarely), so it might be desired to at least temporarily disable it in some cases. The predefined useragent and other overrides sometimes cause issues with certain websites, so being able to modify can be required as well. The webextensions-CSP needs to be slightly modified to allow some addons (especially μBlock Origin) to function. Furthermore, options to allow re-enabling installing (and, optionally, updating) extensions from the official extension store might be a good thing, albeit somewhat of a tradeoff between privacy and security: Basically keeping extensions up to date is crucial from a security point of view, and the official extension store is at least a somewhat trusted source of extensions. This also indirectly can be a good thing for privacy, as in keeping relevant addons current with regards to privacy enhancing techniques. Of course, extensions can be kept up to date separately as well, but from my experience this is often not taken care of properly and quite a lot of extra work. In a comparable vein, the `xpinstall.signatures.required` option might be a good thing, but also undesired – so it's just kept unlocked.
2020-03-07 16:20:10 +01:00
defaultPref("extensions.formautofill.heuristics.enabled", false);
2019-08-17 02:49:17 +02:00
// -----------------------
2021-05-10 10:55:27 +02:00
// # DRM
2019-08-17 02:49:17 +02:00
// -----------------------
defaultPref("media.eme.enabled", false);
defaultPref("media.gmp-widevinecdm.visible", false);
defaultPref("media.gmp-widevinecdm.enabled", false);
2021-05-10 10:55:27 +02:00
defaultPref("media.gmp-provider.enabled", false);
defaultPref("media.gmp-manager.url", "data:text/plain,"); // had to re-add to prevent connections
2019-08-17 02:49:17 +02:00
defaultPref("media.gmp-gmpopenh264.enabled", false);
2019-08-17 02:49:17 +02:00
// ----------------------
2021-05-10 10:55:27 +02:00
// # WEBRTC
// ----------------------
2019-08-17 02:49:17 +02:00
defaultPref("media.navigator.enabled", false);
2021-05-10 10:55:27 +02:00
defaultPref("media.peerconnection.enabled", false);
defaultPref("media.peerconnection.ice.default_address_only", true);
defaultPref("media.peerconnection.ice.no_host", true);
2021-05-10 10:55:27 +02:00
defaultPref("media.peerconnection.ice.proxy_only_if_behind_proxy", true);
2021-05-10 10:55:27 +02:00
// all covered by previous prefs
// defaultPref("media.navigator.video.enabled", false);
// defaultPref("media.peerconnection.use_document_iceservers", false);
// defaultPref("media.peerconnection.identity.enabled", false);
// defaultPref("media.peerconnection.identity.timeout", 1);
// defaultPref("media.peerconnection.turn.disable", true);
// defaultPref("media.peerconnection.ice.tcp", false);
// ----------------------
// # SHARING
// ----------------------
2019-08-17 02:49:17 +02:00
2021-05-10 10:55:27 +02:00
defaultPref("media.getusermedia.browser.enabled", false);
defaultPref("media.getusermedia.screensharing.enabled", false);
defaultPref("media.getusermedia.audiocapture.enabled", false);
2019-08-17 02:49:17 +02:00
// ----------------------------
2021-05-10 10:55:27 +02:00
// # DNS
// ----------------------------
2021-05-15 02:47:30 +02:00
defaultPref("network.trr.mode", 5);
defaultPref("network.trr.bootstrapAddress", "");
defaultPref("network.trr.uri", "");
2021-02-24 15:12:36 +01:00
defaultPref("network.dns.disableIPv6", true);
2019-08-17 02:49:17 +02:00
lockPref("network.dns.disablePrefetch", true);
// ------------------------------------
2021-05-10 10:55:27 +02:00
// # NEW TAB PAGE
// ------------------------------------
2019-08-17 02:49:17 +02:00
2021-05-10 10:55:27 +02:00
lockPref("browser.newtab.preload", false);
2019-08-17 02:49:17 +02:00
lockPref("browser.newtabpage.activity-stream.feeds.section.highlights", false);
2021-05-10 10:55:27 +02:00
lockPref("browser.newtabpage.activity-stream.feeds.asrouterfeed", false);
lockPref("browser.newtabpage.activity-stream.feeds.discoverystreamfeed", false);
lockPref("browser.newtabpage.activity-stream.feeds.newtabinit", false);
lockPref("browser.newtabpage.activity-stream.feeds.places", false);
lockPref("browser.newtabpage.activity-stream.feeds.systemtick", false);
lockPref("browser.newtabpage.activity-stream.feeds.section.topstories", false);
lockPref("browser.newtabpage.activity-stream.feeds.topsites", false);
lockPref("browser.newtabpage.activity-stream.feeds.system.topsites", false);
lockPref("browser.newtabpage.activity-stream.feeds.system.topstories", false);
lockPref("browser.newtabpage.activity-stream.feeds.telemetry", false);
lockPref("browser.newtabpage.activity-stream.feeds.snippets", false);
lockPref("browser.newtabpage.activity-stream.feeds.section.topstories.options", "");
2019-08-17 02:49:17 +02:00
lockPref("browser.newtabpage.activity-stream.section.highlights.includeBookmarks", false);
lockPref("browser.newtabpage.activity-stream.section.highlights.includeDownloads", false);
lockPref("browser.newtabpage.activity-stream.section.highlights.includeVisited", false);
2021-05-10 10:55:27 +02:00
lockPref("browser.newtabpage.activity-stream.section.highlights.includePocket", false);
lockPref("browser.newtabpage.activity-stream.showSponsored", false);
lockPref("browser.newtabpage.activity-stream.showSponsoredTopSites", false);
lockPref("browser.newtabpage.activity-stream.asrouter.userprefs.cfr.features", false);
lockPref("browser.newtabpage.activity-stream.asrouter.userprefs.cfr.addons", false);
lockPref("browser.newtabpage.activity-stream.asrouter.providers.messaging-experiments", "");
lockPref("browser.newtabpage.activity-stream.asrouter.providers.message-groups", "");
lockPref("browser.newtabpage.activity-stream.asrouter.providers.cfr-fxa", "");
lockPref("browser.newtabpage.activity-stream.asrouter.providers.cfr", "");
lockPref("browser.newtabpage.activity-stream.asrouter.providers.whats-new-panel", "{\"id\":\"whats-new-panel\",\"enabled\":false}");
lockPref("browser.newtabpage.activity-stream.asrouter.devtoolsEnableds", true);
lockPref("browser.newtabpage.activity-stream.telemetry", false);
lockPref("browser.newtabpage.activity-stream.telemetry.ping.endpoint", "");
lockPref("browser.newtabpage.activity-stream.telemetry.structuredIngestion.endpoint", "");
lockPref("browser.newtabpage.activity-stream.default.sites", "");
lockPref("browser.newtabpage.activity-stream.discoverystream.enabled", false);
lockPref("browser.newtabpage.activity-stream.discoverystream.config", "{\"collapsible\":true,\"enabled\":false,\"personalized\":false,\"layout_endpoint\":\"\"}");
lockPref("browser.newtabpage.activity-stream.discoverystream.endpoints", "");
lockPref("browser.newtabpage.activity-stream.discoverystream.engagementLabelEnabled", false);
lockPref("browser.newtabpage.activity-stream.improvesearch.topSiteSearchShortcuts", false);
lockPref("browser.newtabpage.activity-stream.improvesearch.handoffToAwesomebar", false);
lockPref("browser.newtabpage.activity-stream.improvesearch.topSiteSearchShortcuts.searchEngines", "");
lockPref("browser.newtabpage.activity-stream.improvesearch.topSiteSearchShortcuts.havePinned", "");
lockPref("browser.newtabpage.activity-stream.fxaccounts.endpoint", "");
2019-08-17 02:49:17 +02:00
// -------------------------------------------
2021-05-10 10:55:27 +02:00
// # DO NOT TRACK
// -------------------------------------------
2019-08-17 02:49:17 +02:00
2021-05-10 10:55:27 +02:00
// Unlocked as some think it increases fingerprint, they can now disable it
defaultPref("privacy.donottrackheader.enabled", true);
2019-08-17 02:49:17 +02:00
2021-05-10 10:55:27 +02:00
// --------------------------------
// # DOM
// --------------------------------
2019-08-17 02:49:17 +02:00
defaultPref("dom.disable_beforeunload", true);
2019-08-17 02:49:17 +02:00
defaultPref("dom.disable_open_during_load", true);
defaultPref("dom.push.enabled", false);
defaultPref("dom.push.connection.enabled", false);
defaultPref("dom.push.serverURL", ""); //default "wss://push.services.mozilla.com/"
defaultPref("dom.push.userAgentID", "");
defaultPref("dom.targetBlankNoOpener.enabled", true);
defaultPref("dom.disable_window_move_resize", true);
2021-05-10 10:55:27 +02:00
defaultPref("dom.serviceWorkers.enabled", false);
defaultPref("dom.battery.enabled", false);
defaultPref("dom.popup_maximum", 4);
2021-05-10 10:55:27 +02:00
defaultPref("dom.popup_allowed_events", "click dblclick mousedown pointerdown");
defaultPref("dom.webaudio.enabled", false);
defaultPref("dom.vr.enabled", false);
defaultPref("dom.vibrator.enabled", false);
2021-05-10 10:55:27 +02:00
defaultPref("dom.storage.next_gen", true);
// --------------------------------
// # PERMISSIONS
// --------------------------------
lockPref("permissions.delegation.enabled", false);
defaultPref("permissions.default.geo", 2); // unlocked as some think it increases fingerprint, they can now disable it
2019-08-17 02:49:17 +02:00
lockPref("permissions.manager.defaultsUrl", "");
2021-05-10 10:55:27 +02:00
// --------------------------------
// # REFERERS
// --------------------------------
2019-08-17 02:49:17 +02:00
defaultPref("network.http.referer.XOriginTrimmingPolicy", 2);
defaultPref("network.http.referer.XOriginPolicy", 0);
2019-08-17 02:49:17 +02:00
2021-05-10 10:55:27 +02:00
// --------------------------------
// # PROXY
// --------------------------------
2019-08-17 02:49:17 +02:00
2021-05-10 10:55:27 +02:00
defaultPref("network.proxy.socks_remote_dns", true);
2019-08-17 02:49:17 +02:00
2021-05-10 10:55:27 +02:00
// --------------------------------------
// # HTTP(S)
// --------------------------------------
2019-08-17 02:49:17 +02:00
2021-05-10 10:55:27 +02:00
lockPref("network.http.altsvc.enabled", false);
lockPref("network.http.altsvc.oe", false);
defaultPref("dom.security.https_only_mode", true);
defaultPref("dom.security.https_only_mode_pbm", true);
defaultPref("network.auth.subresource-http-auth-allow", 1);
2019-08-17 02:49:17 +02:00
2021-05-10 10:55:27 +02:00
// --------------------------------------
// # TLS
// --------------------------------------
2019-08-17 02:49:17 +02:00
2021-05-10 10:55:27 +02:00
defaultPref("security.ssl.require_safe_negotiation", true);
lockPref("security.ssl.treat_unsafe_negotiation_as_broken", true);
defaultPref("browser.ssl_override_behavior", 1);
2021-05-10 10:55:27 +02:00
lockPref("security.tls.enable_0rtt_data", false);
lockPref("security.tls.version.enable-deprecated", false);
defaultPref("security.tls.version.fallback-limit", 3);
defaultPref("browser.xul.error_pages.expert_bad_cert", true); // advanced ui infos
2019-08-17 02:49:17 +02:00
2021-05-10 10:55:27 +02:00
// --------------------------------------
// # RFP
// --------------------------------------
2019-08-17 02:49:17 +02:00
2021-05-10 10:55:27 +02:00
defaultPref("privacy.resistFingerprinting", true);
defaultPref("privacy.resistFingerprinting.block_mozAddonManager", true);
lockPref("browser.startup.blankWindow", false); // breaks RFP windows resizing
2019-08-17 02:49:17 +02:00
2021-05-21 23:37:51 +02:00
// --------------------------------------
// # FISSION
// --------------------------------------
defaultPref("fission.autostart", true);
2021-05-10 10:55:27 +02:00
// --------------------------------------
// # LANGUAGE AND REGION
// --------------------------------------
2019-08-17 02:49:17 +02:00
2021-05-10 10:55:27 +02:00
defaultPref("javascript.use_us_english_locale", true);
defaultPref("intl.locale.requested", "en-US");
defaultPref("privacy.spoof_english", 2);
2019-08-17 02:49:17 +02:00
2021-05-10 10:55:27 +02:00
// -------------------------------------------------------
// # EXTENSIONS - check readme section "Extensions Firewall"
// -------------------------------------------------------
2019-08-17 02:49:17 +02:00
2021-05-10 10:55:27 +02:00
// handle default restricted domains
defaultPref("extensions.webextensions.restrictedDomains", ""); // This will allow extensions to work everywhere, default "debug-notes.log"
lockPref("extensions.webextensions.identity.redirectDomain", ""); // Redirect basedomain used by identity api, default "extensions.allizom.org"
2019-08-17 02:49:17 +02:00
2021-05-10 10:55:27 +02:00
// disable network for the extensions
// Enable-Firewall-Feature-In-The-Next-Line extensions-firewall >>>>>>
defaultPref("extensions.webextensions.base-content-security-policy", "script-src 'self' https://* moz-extension: blob: filesystem: 'unsafe-eval' 'unsafe-inline'; object-src 'self' https://* moz-extension: blob: filesystem:;");
2019-08-17 02:49:17 +02:00
2021-05-10 10:55:27 +02:00
// set extensions scopes
defaultPref("extensions.enabledScopes", 5);
defaultPref("extensions.autoDisableScopes", 11);
2019-08-17 02:49:17 +02:00
2021-05-10 10:55:27 +02:00
// Relevant for addons and lang packs search
defaultPref("extensions.getAddons.search.browseURL", ""); // https://addons.mozilla.org/%LOCALE%/firefox/search?q=%TERMS%&platform=%OS%&appver=%VERSION%
defaultPref("extensions.getAddons.langpacks.url", ""); // https://services.addons.mozilla.org/api/v3/addons/language-tools/?app=firefox&type=language&appversion=%VERSION%
2019-08-17 02:49:17 +02:00
2021-05-10 10:55:27 +02:00
// other urls
defaultPref("extensions.getAddons.get.url", ""); // https://services.addons.mozilla.org/api/v3/addons/search/?guid=%IDS%&lang=%LOCALE%
defaultPref("extensions.getAddons.link.url", ""); // https://addons.mozilla.org/%LOCALE%/firefox/
2021-05-21 23:37:51 +02:00
defaultPref("extensions.update.url", ""); // https://versioncheck.addons.mozilla.org/update/VersionCheck.php?reqVersion=%REQ_VERSION%&id=%ITEM_ID%&version=%ITEM_VERSION%&maxAppVersion=%ITEM_MAXAPPVERSION%&status=%ITEM_STATUS%&appID=%APP_ID%&appVersion=%APP_VERSION%&appOS=%APP_OS%&appABI=%APP_ABI%&locale=%APP_LOCALE%&currentAppVersion=%CURRENT_APP_VERSION%&updateType=%UPDATE_TYPE%&compatMode=%COMPATIBILITY_MODE%
2021-05-10 10:55:27 +02:00
// ui
defaultPref("extensions.getAddons.showPane", false);
lockPref("extensions.getAddons.discovery.api_url", "");
lockPref("extensions.htmlaboutaddons.recommendations.enabled", false);
2021-05-10 10:55:27 +02:00
lockPref("extensions.webcompat-reporter.enabled", false);
2021-05-21 23:37:51 +02:00
lockPref("extensions.webcompat-reporter.newIssueEndpoint", "");// https://webcompat.com/issues/new
2021-05-10 10:55:27 +02:00
// background checking and updating
defaultPref("extensions.update.enabled", false);
defaultPref("extensions.update.autoUpdateDefault", false);
defaultPref("extensions.update.background.url", "");
defaultPref("extensions.getAddons.cache.enabled", false);
2021-05-21 23:37:51 +02:00
// blocklist is a security feature, best left at default
// defaultPref("extensions.blocklist.enabled", false);
// defaultPref("extensions.blocklist.detailsURL", "");
// defaultPref("extensions.blocklist.itemURL", "");
2021-05-10 10:55:27 +02:00
// system addons
lockPref("extensions.systemAddon.update.url", "");
lockPref("extensions.systemAddon.update.enabled", false);
2019-08-17 02:49:17 +02:00
defaultPref("xpinstall.signatures.devInfoURL", "");
2021-05-10 10:55:27 +02:00
lockPref("extensions.webservice.discoverURL", "");
lockPref("webextensions.storage.sync.serverURL", "");
2019-08-17 02:49:17 +02:00
lockPref("lightweightThemes.getMoreURL", "");
2021-05-10 10:55:27 +02:00
defaultPref("extensions.postDownloadThirdPartyPrompt", false);
2019-08-17 02:49:17 +02:00
2021-05-10 10:55:27 +02:00
// -------------------------------------------------------
// # NORMANDY
// -------------------------------------------------------
2019-08-17 02:49:17 +02:00
2021-05-10 10:55:27 +02:00
lockPref("app.normandy.enabled", false);
lockPref("app.normandy.api_url", "");
lockPref("app.normandy.user_id", "");
lockPref("app.normandy.shieldLearnMoreUrl", "");
2019-08-17 02:49:17 +02:00
2021-05-10 10:55:27 +02:00
// --------------------------------
// # SECURITY
// --------------------------------
2019-08-17 02:49:17 +02:00
2021-05-10 10:55:27 +02:00
// certificates
defaultPref("security.cert_pinning.enforcement_level", 2);
2021-05-10 10:55:27 +02:00
defaultPref("security.OCSP.enabled", 0);
defaultPref("security.OCSP.require", false);
defaultPref("security.ssl.enable_ocsp_stapling", true);
defaultPref("security.pki.sha1_enforcement_level", 1);
2019-08-17 02:49:17 +02:00
2021-05-10 10:55:27 +02:00
// mixed content
lockPref("security.mixed_content.block_object_subrequest", true);
lockPref("security.mixed_content.block_display_content", true);
lockPref("security.mixed_content.block_active_content", true);
2019-08-17 02:49:17 +02:00
2021-05-10 10:55:27 +02:00
// ui
lockPref("security.insecure_connection_text.enabled", true);
lockPref("security.insecure_connection_text.pbmode.enabled", true);
2019-08-17 02:49:17 +02:00
2021-05-10 10:55:27 +02:00
lockPref("security.dialog_enable_delay", 700);
lockPref("security.csp.enable", true);
2019-08-17 02:49:17 +02:00
2021-05-10 10:55:27 +02:00
// -------------------------------------------------------
// # SAFE BROWSING
// -------------------------------------------------------
2019-08-17 02:49:17 +02:00
defaultPref("browser.safebrowsing.malware.enabled", false);
defaultPref("browser.safebrowsing.passwords.enabled", false);
defaultPref("browser.safebrowsing.phishing.enabled", false);
2019-08-17 02:49:17 +02:00
2021-05-10 10:55:27 +02:00
// downloads and unwanted software
lockPref("browser.safebrowsing.downloads.enabled", false);
lockPref("browser.safebrowsing.downloads.remote.enabled", false);
lockPref("browser.safebrowsing.downloads.remote.block_dangerous", false);
lockPref("browser.safebrowsing.downloads.remote.block_dangerous_host", false);
lockPref("browser.safebrowsing.downloads.remote.block_potentially_unwanted", false);
lockPref("browser.safebrowsing.downloads.remote.block_uncommon", false);
lockPref("browser.safebrowsing.downloads.remote.url", "");
2019-08-17 02:49:17 +02:00
defaultPref("browser.safebrowsing.blockedURIs.enabled", false);
defaultPref("browser.safebrowsing.provider.google4.dataSharing.enabled", false);
defaultPref("browser.safebrowsing.provider.google4.dataSharingURL", "");
defaultPref("browser.safebrowsing.provider.google4.gethashURL", "");
defaultPref("browser.safebrowsing.provider.google4.updateURL", "");
defaultPref("browser.safebrowsing.provider.google.gethashURL", "");
defaultPref("browser.safebrowsing.provider.google.updateURL", "");
2021-05-21 23:37:51 +02:00
// commented all below as they do no harm and make enabling SB painful
// could potentially at some point
// defaultPref("browser.safebrowsing.id", "");
// defaultPref("browser.safebrowsing.provider.google4.pver", "");
// defaultPref("browser.safebrowsing.provider.google4.advisoryName", "");
// defaultPref("browser.safebrowsing.provider.google4.advisoryURL", "");
// defaultPref("browser.safebrowsing.provider.google4.lists", "");
// defaultPref("browser.safebrowsing.provider.google4.reportMalwareMistakeURL", "");
// defaultPref("browser.safebrowsing.provider.google4.reportPhishMistakeURL", "");
// defaultPref("browser.safebrowsing.provider.google4.reportURL", "");
// defaultPref("browser.safebrowsing.provider.google4.lastupdatetime", "");
// defaultPref("browser.safebrowsing.provider.google4.nextupdatetime", "");
// defaultPref("browser.safebrowsing.provider.google.advisoryName", "");
// defaultPref("browser.safebrowsing.provider.google.advisoryURL", "");
// defaultPref("browser.safebrowsing.provider.google.lastupdatetime", "");
// defaultPref("browser.safebrowsing.provider.google.lists", "");
// defaultPref("browser.safebrowsing.provider.google.nextupdatetime", "");
// defaultPref("browser.safebrowsing.provider.google.pver", "");
// defaultPref("browser.safebrowsing.provider.google.reportMalwareMistakeURL", "");
// defaultPref("browser.safebrowsing.provider.google.reportPhishMistakeURL", "");
// defaultPref("browser.safebrowsing.provider.google.reportURL", "");
// defaultPref("browser.safebrowsing.reportPhishURL", "");
2019-08-17 02:49:17 +02:00
2021-05-10 10:55:27 +02:00
// --------------------------------
// # FONTS
// --------------------------------
2019-08-17 02:49:17 +02:00
2021-05-10 10:55:27 +02:00
lockPref("gfx.font_rendering.graphite.enabled", false);
lockPref("gfx.font_rendering.opentype_svg.enabled", false);
2019-08-17 02:49:17 +02:00
2021-05-10 10:55:27 +02:00
// --------------------------------
// # MISC
// --------------------------------
2019-08-17 02:49:17 +02:00
2021-05-10 10:55:27 +02:00
// more important stuff
lockPref("browser.shell.shortcutFavicons", false);
defaultPref("browser.link.open_newwindow", 3);
defaultPref("browser.link.open_newwindow.restriction", 0);
defaultPref("network.file.disable_unc_paths", true); // (hidden pref)
2021-05-10 10:55:27 +02:00
lockPref("network.gio.supported-protocols", ""); // (hidden pref)
lockPref("network.IDN_show_punycode", true);
defaultPref("browser.display.use_system_colors", false); // default but enforced due to RFP
2019-08-17 02:49:17 +02:00
2021-05-10 10:55:27 +02:00
// pdf reader
defaultPref("pdfjs.disabled", false);
defaultPref("pdfjs.enableScripting", false);
defaultPref("pdfjs.previousHandler.alwaysAskBeforeHandling", true);
defaultPref("pdfjs.enabledCache.state", false);
2019-08-17 02:49:17 +02:00
2021-05-10 10:55:27 +02:00
// remote agent
lockPref("remote.enabled", false);
2019-08-17 02:49:17 +02:00
2021-05-10 10:55:27 +02:00
// settings and behavior
lockPref("browser.shell.checkDefaultBrowser", false);
lockPref("browser.shell.didSkipDefaultBrowserCheckOnFirstRun", true);
defaultPref("startup.homepage_override_url", "about:blank");
defaultPref("startup.homepage_welcome_url", "about:blank");
defaultPref("startup.homepage_welcome_url.additional", "");
lockPref("browser.startup.homepage_override.mstone", "ignore");
defaultPref("privacy.userContext.enabled", true);
defaultPref("general.autoScroll", false);
defaultPref("clipboard.autocopy", false);
defaultPref("browser.tabs.loadBookmarksInTabs", true);
defaultPref("browser.download.manager.addToRecentDocs", false);
defaultPref("accessibility.force_disabled", 1);
2021-05-10 10:55:27 +02:00
lockPref("browser.uitour.enabled", false);
lockPref("middlemouse.contentLoadURL", false);
defaultPref("network.manage-offline-status", false);
defaultPref("browser.helperApps.deleteTempFileOnExit", true);
2021-05-10 10:55:27 +02:00
lockPref("browser.pagethumbnails.capturing_disabled", true);
lockPref("browser.bookmarks.max_backups", 2);
2019-08-17 02:49:17 +02:00
2021-05-10 10:55:27 +02:00
// devtools
defaultPref("devtools.debugger.remote-enabled", false);
defaultPref("devtools.chrome.enabled", false);
defaultPref("devtools.performance.recording.ui-base-url", "http://localhost:55555"); // Default Value : https://profiler.firefox.com
defaultPref("devtools.devices.url", "");
defaultPref("devtools.remote.adb.extensionURL", ""); // [FF64+]
defaultPref("devtools.remote.adb.extensionID", ""); // default adb@mozilla.org [FF64+]
2021-05-10 10:55:27 +02:00
defaultPref("devtools.selfxss.count", 0); // see https://gitlab.com/librewolf-community/browser/linux/-/issues/80
2019-08-17 02:49:17 +02:00
2021-05-10 10:55:27 +02:00
// ui
defaultPref("browser.tabs.drawInTitlebar", true);
defaultPref("browser.aboutConfig.showWarning", false);
defaultPref("general.warnOnAboutConfig", false);
defaultPref("browser.download.autohideButton", false);
defaultPref("privacy.userContext.ui.enabled", true);
lockPref("browser.messaging-system.whatsNewPanel.enabled", false);
2019-08-17 02:49:17 +02:00
2021-05-10 10:55:27 +02:00
// urls and handlers
lockPref("media.decoder-doctor.new-issue-endpoint", "");
lockPref("identity.sync.tokenserver.uri", "");
lockPref("network.trr.confirmationNS", "");
lockPref("browser.translation.engine", ""); // default Google
2019-08-17 02:49:17 +02:00
lockPref("gecko.handlerService.schemes.mailto.0.uriTemplate", "");
2021-05-10 10:55:27 +02:00
lockPref("gecko.handlerService.schemes.mailto.0.name", ""); // default Yahoo! Mail
2019-08-17 02:49:17 +02:00
lockPref("gecko.handlerService.schemes.mailto.1.uriTemplate", "");
2021-05-10 10:55:27 +02:00
lockPref("gecko.handlerService.schemes.mailto.1.name", ""); // default Gmail
lockPref("gecko.handlerService.schemes.irc.0.uriTemplate", "");
lockPref("gecko.handlerService.schemes.irc.0.name", "");
lockPref("gecko.handlerService.schemes.ircs.0.uriTemplate", "");
lockPref("gecko.handlerService.schemes.ircs.0.name", "");
lockPref("services.settings.server", "");
lockPref("accessibility.support.url", "");
lockPref("app.support.baseURL", "");
lockPref("browser.uitour.url", "");
lockPref("webchannel.allowObject.urlWhitelist", "");
lockPref("browser.dictionaries.download.url", "");
lockPref("browser.geolocation.warning.infoURL", "");
lockPref("browser.search.searchEnginesURL", "");
lockPref("browser.uitour.themeOrigin", "");
lockPref("toolkit.datacollection.infoURL", "");
lockPref("identity.mobilepromo.android", "");
lockPref("identity.mobilepromo.ios", "");
defaultPref("identity.sendtabpromo.url", "");
lockPref("datareporting.healthreport.infoURL", "");
lockPref("app.feedback.baseURL", "");
lockPref("app.releaseNotesURL", "");
lockPref("app.releaseNotesURL.aboutDialog", "");
lockPref("browser.chrome.errorReporter.infoURL", "");
lockPref("datareporting.policy.firstRunURL", "");
2019-08-17 02:49:17 +02:00
2021-05-10 10:55:27 +02:00
// --------------------------------
// # CACHE
// --------------------------------
lockPref("browser.cache.offline.storage.enable", false);
lockPref("browser.privatebrowsing.forceMediaMemoryCache", true); // [FF75+]
defaultPref("media.memory_cache_max_size", 65536);
2021-05-21 23:37:51 +02:00
defaultPref("browser.cache.disk.enable", false);
2021-05-10 10:55:27 +02:00
// --------------------------------
// # WEBGL AND PERFORMANCE
// --------------------------------
defaultPref("webgl.disabled", true);
defaultPref("webgl.enable-webgl2", false);
2021-05-10 10:55:27 +02:00
// --------------------------------
// # JS
// --------------------------------
2021-05-21 23:37:51 +02:00
// currently in hardened setup
2021-05-10 10:55:27 +02:00
// lockPref("javascript.options.wasm", false);
2019-08-17 02:49:17 +02:00
2021-05-21 23:37:51 +02:00
// currently in hardened setup
2021-05-10 10:55:27 +02:00
// lockPref("javascript.options.asmjs", false);
lockPref("javascript.options.shared_memory", false);
// --------------------------------
// # GEO
// --------------------------------
defaultPref("geo.enabled", false);
2020-05-08 15:24:35 +02:00
lockPref("geo.provider.ms-windows-location", false); // [WINDOWS]
lockPref("geo.provider.use_corelocation", false); // [MAC]
lockPref("geo.provider.use_gpsd", false); // [LINUX]
2021-05-21 23:37:51 +02:00
defaultPref("geo.provider.network.url", ""); // testing
defaultPref("geo.provider.network.logging.enabled", false);
2021-05-10 10:55:27 +02:00
lockPref("browser.region.network.url", "");
lockPref("browser.region.update.enabled", false);
2021-05-10 10:55:27 +02:00
// --------------------------------
// # PREFETCHING
// --------------------------------
2019-08-17 02:49:17 +02:00
2021-05-10 10:55:27 +02:00
lockPref("network.predictor.enabled", false);
lockPref("network.prefetch-next", false);
lockPref("network.http.speculative-parallel-limit", 0);
2019-08-17 02:49:17 +02:00
2021-05-10 10:55:27 +02:00
// --------------------------------
// # OUTGOING CONNECTIONS
// --------------------------------
2019-08-17 02:49:17 +02:00
2021-05-10 10:55:27 +02:00
// updates
lockPref("app.update.auto", false);
lockPref("app.update.staging.enabled", false);
lockPref("app.update.lastUpdateTime.telemetry_modules_ping", 0);
lockPref("app.update.url.details", "https://gitlab.com/librewolf-community/browser");
lockPref("app.update.url.manual", "https://gitlab.com/librewolf-community/browser");
2019-08-17 02:49:17 +02:00
2021-05-10 10:55:27 +02:00
// connectivity service
lockPref("network.connectivity-service.enabled", false);
lockPref("network.connectivity-service.IPv6.url", "http://0.0.0.0");
lockPref("network.connectivity-service.IPv4.url", "http://0.0.0.0");
lockPref("network.connectivity-service.DNSv6.domain", "");
lockPref("network.connectivity-service.DNSv4.domain", "");
2021-05-10 10:55:27 +02:00
// telemetry
2019-08-17 02:49:17 +02:00
lockPref("toolkit.crashreporter.infoURL", "");
lockPref("toolkit.telemetry.archive.enabled", false);
lockPref("toolkit.telemetry.updatePing.enabled", false);
lockPref("toolkit.telemetry.bhrPing.enabled", false);
lockPref("toolkit.telemetry.cachedClientID", "");
lockPref("toolkit.telemetry.enabled", false);
lockPref("toolkit.telemetry.firstShutdownPing.enabled", false);
lockPref("toolkit.telemetry.newProfilePing.enabled", false);
lockPref("toolkit.telemetry.previousBuildID", "");
lockPref("toolkit.telemetry.reportingpolicy.firstRun", false);
lockPref("toolkit.telemetry.server", "data:,");
lockPref("toolkit.telemetry.server_owner", "");
lockPref("toolkit.telemetry.shutdownPingSender.enabled", false);
2021-05-10 10:55:27 +02:00
lockPref("toolkit.telemetry.shutdownPingSender.enabledFirstSession", false);
2019-08-17 02:49:17 +02:00
lockPref("toolkit.telemetry.unified", false);
lockPref("toolkit.telemetry.ecosystemtelemetry.enabled", false);
2021-05-10 10:55:27 +02:00
lockPref("security.protectionspopup.recordEventTelemetry", false);
2019-08-17 02:49:17 +02:00
lockPref("datareporting.healthreport.uploadEnabled", false);
lockPref("datareporting.policy.dataSubmissionEnabled", false);
2021-05-10 10:55:27 +02:00
lockPref("toolkit.coverage.endpoint.base", "");
lockPref("toolkit.telemetry.coverage.opt-out", true); // [HIDDEN PREF]
lockPref("toolkit.coverage.opt-out", true);
lockPref("toolkit.coverage.enabled", false);
lockPref("app.shield.optoutstudies.enabled", false);
2019-08-17 02:49:17 +02:00
lockPref("beacon.enabled", false);
2021-05-10 10:55:27 +02:00
lockPref("browser.ping-centre.telemetry", false);
2019-08-17 02:49:17 +02:00
2021-05-10 10:55:27 +02:00
// discovery
lockPref("browser.discovery.enabled", false);
lockPref("browser.discovery.containers.enabled", false);
lockPref("browser.discovery.sites", "");
2019-08-17 02:49:17 +02:00
2021-05-10 10:55:27 +02:00
// crash report
lockPref("breakpad.reportURL", "");
2019-08-17 02:49:17 +02:00
lockPref("browser.tabs.crashReporting.sendReport", false);
lockPref("browser.crashReports.unsubmittedCheck.enabled", false);
lockPref("browser.crashReports.unsubmittedCheck.autoSubmit2", false);
2021-05-10 10:55:27 +02:00
// captive portal
2019-08-17 02:49:17 +02:00
lockPref("network.captive-portal-service.enabled", false);
2021-05-10 10:55:27 +02:00
lockPref("captivedetect.canonicalURL", "");
2019-08-17 02:49:17 +02:00
2021-05-10 10:55:27 +02:00
// --------------------------------
// # WINDOWS
// --------------------------------
2019-08-17 02:49:17 +02:00
2021-05-10 10:55:27 +02:00
// disable links launching Windows Store [WINDOWS]
lockPref("network.protocol-handler.external.ms-windows-store", false);
2019-08-17 02:49:17 +02:00
2021-05-10 10:55:27 +02:00
// disable background update service [WINDOWS]
lockPref("app.update.service.enabled", false);
2019-08-17 02:49:17 +02:00
2021-05-10 10:55:27 +02:00
// disable automatic Firefox start and session restore after reboot [WINDOWS]
lockPref("toolkit.winRegisterApplicationRestart", false);
2019-08-17 02:49:17 +02:00
2021-05-10 10:55:27 +02:00
// disable Windows 8.1 Family Safety cert [WINDOWS]
lockPref("security.family_safety.mode", 0);
2019-08-17 02:49:17 +02:00
2021-05-10 10:55:27 +02:00
// Windows only?
lockPref("default-browser-agent.enabled", false);
2019-08-17 02:49:17 +02:00
2021-05-10 10:55:27 +02:00
// -----------------------------------
// # OVERRIDES
// -----------------------------------
// allow settings to be overriden with a file at `~/.librewolf/librewolf.overrides.cfg`
// or `~/.var/app/io.gitlab.librewolf-community/.librewolf/librewolf.overrides.cfg` (Flatpak).
2021-05-10 10:55:27 +02:00
let profile_directory;
if (profile_directory = getenv('USERPROFILE') || getenv('HOME')) {
pref('autoadmin.global_config_url', `file://${profile_directory}/.librewolf/librewolf.overrides.cfg`);
}