/*
0100: STARTUP
0200: GEOLOCATION / LANGUAGE / LOCALE
0300: QUIETER FOX
0400: SAFE BROWSING
0600: BLOCK IMPLICIT OUTBOUND
0700: DNS / DoH / PROXY / SOCKS / IPv6
0800: LOCATION BAR / SEARCH BAR / SUGGESTIONS / HISTORY / FORMS
0900: PASSWORDS
1000: DISK AVOIDANCE
1200: HTTPS (SSL/TLS / OCSP / CERTS / HPKP)
1400: FONTS
1600: HEADERS / REFERERS
1700: CONTAINERS
2000: PLUGINS / MEDIA / WEBRTC
2400: DOM (DOCUMENT OBJECT MODEL)
2600: MISCELLANEOUS
2700: ETP (ENHANCED TRACKING PROTECTION)
2800: SHUTDOWN & SANITIZING
4500: RFP (RESIST FINGERPRINTING)
5000: OPTIONAL OPSEC
5500: OPTIONAL HARDENING
6000: DON'T TOUCH
7000: DON'T BOTHER
8000: DON'T BOTHER: FINGERPRINTING
9000: NON-PROJECT RELATED
9999: DEPRECATED / REMOVED / LEGACY / RENAMED
*/
// restore session
user_pref("browser.startup.page", 3); // 0102
user_pref("browser.newtabpage.enabled", true); // 0104
// disable the geoservice, TODO: don't know if I want this
//user_pref("geo.provider.use_geoclue", false); // 0202
// TODO: is this something useful?
user_pref("datareporting.policy.dataSubmissionEnabled", true); // 0330
// enable health reports
user_pref("datareporting.healthreport.uploadEnabled", true); // 0331
// Do I want to opt-out?
user_pref("toolkit.telemetry.coverage.opt-out", false); // 0333
// enables studies
user_pref("app.shield.optoutstudies.enabled", true); // 0340
// I guess that browsing protection is useful
user_pref("browser.safebrowsing.downloads.remote.enabled", true); // 0403
// TODO: does this (-> set to false) make things slower?
user_pref("network.prefetch-next", true); // 0601
// enable ipv6 because the rest of the system uses it
user_pref("network.dns.disableIPv6", false); // 0701
// TRR only
user_pref("network.trr.mode", 3); // 0710
// I trust my search engine
user_pref("keyword.enabled", true); // 801
user_pref("browser.search.suggest.enabled", true); // 0804
user_pref("browser.urlbar.suggest.searches", true); // 0804
// TODO: no idea what this does, enabling it
user_pref("browser.urlbar.showSearchTerms.enabled", true); // 9004
// prefetch urls, if the get auto completed
user_pref("browser.urlbar.speculativeConnect.enabled", true); // 0805
// Disable autoScrolling (clicking with the mouse wheel)
user_pref("general.autoScroll", false);
// add new tabs after the current one
user_pref("browser.tabs.insertAfterCurrent", true);
// TODO: I might want to enable this
//user_pref("browser.urlbar.suggest.quicksuggest.nonsponsored", false); // 0807
// TODO: enable form and search history?
//user_pref("browser.formfill.enable", false); // 0810
// disk cache should help performance
user_pref("browser.cache.disk.enable", true); // 1001
// store extra session data (form content, cookies and POST data) 0: everywhere
user_pref("browser.sessionstore.privacy_level", 0); // 1003
// Disable unsafe passive content (images) on https sites
user_pref("security.mixed_content.block_display_content", true); // 1241
// Disable the eme banner
user_pref("browser.eme.ui.enabled", false); // 2022
// Don't delete my precious temp files
user_pref("browser.helperApps.deleteTempFileOnExit", false); // 2603
// Download to the download dir
user_pref("browser.download.useDownloadDir", true); // 2651
// Open the download panel
user_pref("browser.download.alwaysOpenPanel", true); // 2652
// Block after custom ruleset
user_pref("browser.contentblocking.category", "custom"); // 2701
// set the custom settings // 7016
user_pref("network.cookie.cookieBehavior", 1);
user_pref("network.http.referer.disallowCrossSiteRelaxingDefault", true);
user_pref("network.http.referer.disallowCrossSiteRelaxingDefault.top_navigation", true);
user_pref("privacy.partition.network_state.ocsp_cache", true);
user_pref("privacy.query_stripping.enabled", true);
user_pref("privacy.trackingprotection.enabled", true);
user_pref("privacy.trackingprotection.socialtracking.enabled", true);
user_pref("privacy.trackingprotection.cryptomining.enabled", true);
user_pref("privacy.trackingprotection.fingerprinting.enabled", true);
// I might want to change that, when it hinders session restore
//user_pref("privacy.partition.always_partition_third_party_non_cookie_storage.exempt_sessionstorage", false); // 2720
// I like my history very much!
user_pref("privacy.sanitize.sanitizeOnShutdown", false); // 2810
// The downsides (light theme + potential breakages):
//user_pref("privacy.resistFingerprinting", true); // 4501
user_pref("privacy.resistFingerprinting.letterboxing", false); // 4504
// I would like to keep my gl, even in the web
user_pref("webgl.disabled", false); // 4520
// I like my service workers and am using a service using them.
user_pref("dom.serviceWorkers.enabled", true); // 7017
// I've got a password manager already
user_pref("signon.rememberSignons", false); // 5003
// Do not track header
user_pref("privacy.donottrackheader.enabled", true); // 7015
// Allow my custom css
user_pref("toolkit.legacyUserProfileCustomizations.stylesheets", true);
// might improve performance TODO:
user_pref("gfx.webrender.all", true);
// disable updates (pretty pointless with nix)
user_pref("extensions.update.autoUpdateDefault", false);
user_pref("extensions.update.enabled", false);
user_pref("app.update.channel", "default");
user_pref("browser.ctrlTab.recentlyUsedOrder", false);
user_pref("browser.download.useDownloadDir", true);
user_pref("browser.download.folderList", 2); // TODO:
user_pref("browser.download.viewableInternally.typeWasRegistered.svg", true);
user_pref("browser.download.viewableInternally.typeWasRegistered.webp", true);
user_pref("browser.download.viewableInternally.typeWasRegistered.xml", true);
// TODO: what does this do?
user_pref("browser.search.widget.inNavBar", true);
user_pref("browser.shell.checkDefaultBrowser", false);
user_pref("browser.tabs.loadInBackground", true);
user_pref("browser.urlbar.placeholderName", "Brave");
// Set the tabs and bookmarks
user_pref("browser.tabs.inTitlebar", 1);
user_pref("browser.toolbars.bookmarks.visibility", "always");
user_pref("browser.places.importBookmarksHTML", true);
// Theme
user_pref("extensions.activeThemeID", "firefox-alpenglow@mozilla.org");
user_pref("extensions.extensions.activeThemeID", "firefox-alpenglow@mozilla.org");
// highlight all entries when searching
user_pref("findbar.highlightAll", true);
// Set the default position for the developer toolbox
user_pref("devtools,toolbox.host", "right");
user_pref("devtools,toolsidebar-width.inspector", 700);
// Don't bother me with translations
user_pref("browser.translations.automaticallyPopup", true);
user_pref("browser.translations.neverTranslateLanguages", "de");
// Put all downloads into the downloads directory
user_pref("browser.download.start_downloads_in_tmp_dir", false);
// TODO:
//user_pref("extensions.webcompat.enable_picture_in_picture_overrides", true);
//user_pref("extensions.webcompat.enable_shims", true);
//user_pref("extensions.webcompat.perform_injections", true);
//user_pref("extensions.webcompat.perform_ua_overrides", true);
// onlykey / copied from a yubikey config
//user_pref("security.webauth.u2f", true);
//user_pref("security.webauth.webauthn", true);
//user_pref("security.webauth.webauthn_enable_softtoken", true);
//user_pref("security.webauth.webauthn_enable_usbtoken", true);