172 lines
10 KiB
JavaScript
172 lines
10 KiB
JavaScript
/**
|
|
* ______ _ _
|
|
* | ____| | | | Author: Foster Hangdaan
|
|
* | |__ | |__| | Website: https://www.fosterhangdaan.com
|
|
* | __| | __ | Email: foster@hangdaan.email
|
|
* | | | | | | GPG Fingerprint: DBD3 8E38 4B9E 1F4F 19F9 5BAE E48D 7F49 A852 F112
|
|
* |_| |_| |_| GPG Public Key: https://static.fosterhangdaan.com/foster-pubkey.asc
|
|
*
|
|
* Foster Hangdaan's user.js for Firefox.
|
|
* Based on Arkenfox's user.js.
|
|
*
|
|
* Repository: https://code.fosterhangdaan.com/foster/firefox-userjs
|
|
* License: MIT
|
|
*
|
|
**/
|
|
|
|
/* 0000: disable about:config warning ***/
|
|
user_pref("browser.aboutConfig.showWarning", false);
|
|
|
|
/*** [SECTION 0100]: STARTUP ***/
|
|
/* 0102: set startup page [SETUP-CHROME]
|
|
* 0=blank, 1=home, 2=last visited page, 3=resume previous session
|
|
* [NOTE] Session Restore is cleared with history (2811), and not used in Private Browsing mode
|
|
* [SETTING] General>Startup>Restore previous session ***/
|
|
user_pref("browser.startup.page", 3);
|
|
/* 0103: set HOME+NEWWINDOW page
|
|
* about:home=Firefox Home (default, see 0105), custom URL, about:blank
|
|
* [SETTING] Home>New Windows and Tabs>Homepage and new windows ***/
|
|
user_pref("browser.startup.homepage", "about:blank");
|
|
/* 0104: set NEWTAB page
|
|
* true=Firefox Home (default, see 0105), false=blank page
|
|
* [SETTING] Home>New Windows and Tabs>New tabs ***/
|
|
user_pref("browser.newtabpage.enabled", false);
|
|
/* 0105: disable sponsored content on Firefox Home (Activity Stream)
|
|
* [SETTING] Home>Firefox Home Content ***/
|
|
user_pref("browser.newtabpage.activity-stream.showSponsored", false); // [FF58+] Pocket > Sponsored Stories
|
|
user_pref("browser.newtabpage.activity-stream.showSponsoredTopSites", false); // [FF83+] Sponsored shortcuts
|
|
/* 0106: clear default topsites
|
|
* [NOTE] This does not block you from adding your own ***/
|
|
user_pref("browser.newtabpage.activity-stream.default.sites", "");
|
|
|
|
/*** [SECTION 0200]: GEOLOCATION / LANGUAGE / LOCALE ***/
|
|
/* 0201: use Mozilla geolocation service instead of Google if permission is granted [FF74+]
|
|
* Optionally enable logging to the console (defaults to false) ***/
|
|
user_pref("geo.provider.network.url", "https://location.services.mozilla.com/v1/geolocate?key=%MOZILLA_API_KEY%");
|
|
// user_pref("geo.provider.network.logging.enabled", true); // [HIDDEN PREF]
|
|
/* 0202: disable using the OS's geolocation service ***/
|
|
user_pref("geo.provider.ms-windows-location", false); // [WINDOWS]
|
|
user_pref("geo.provider.use_corelocation", false); // [MAC]
|
|
user_pref("geo.provider.use_gpsd", false); // [LINUX]
|
|
user_pref("geo.provider.use_geoclue", false); // [FF102+] [LINUX]
|
|
/* 0210: set preferred language for displaying pages
|
|
* [SETTING] General>Language and Appearance>Language>Choose your preferred language...
|
|
* [TEST] https://addons.mozilla.org/about ***/
|
|
user_pref("intl.accept_languages", "en-US, en");
|
|
/* 0211: use en-US locale regardless of the system or region locale
|
|
* [SETUP-WEB] May break some input methods e.g xim/ibus for CJK languages [1]
|
|
* [1] https://bugzilla.mozilla.org/buglist.cgi?bug_id=867501,1629630 ***/
|
|
user_pref("javascript.use_us_english_locale", true); // [HIDDEN PREF]
|
|
|
|
/*** [SECTION 0300]: QUIETER FOX ***/
|
|
/** RECOMMENDATIONS ***/
|
|
/* 0320: disable recommendation pane in about:addons (uses Google Analytics) ***/
|
|
user_pref("extensions.getAddons.showPane", false); // [HIDDEN PREF]
|
|
/* 0321: disable recommendations in about:addons' Extensions and Themes panes [FF68+] ***/
|
|
user_pref("extensions.htmlaboutaddons.recommendations.enabled", false);
|
|
/* 0322: disable personalized Extension Recommendations in about:addons and AMO [FF65+]
|
|
* [NOTE] This pref has no effect when Health Reports (0331) are disabled
|
|
* [SETTING] Privacy & Security>Firefox Data Collection & Use>Allow Firefox to make personalized extension recommendations
|
|
* [1] https://support.mozilla.org/kb/personalized-extension-recommendations ***/
|
|
user_pref("browser.discovery.enabled", false);
|
|
|
|
/** TELEMETRY ***/
|
|
/* 0330: disable new data submission [FF41+]
|
|
* If disabled, no policy is shown or upload takes place, ever
|
|
* [1] https://bugzilla.mozilla.org/1195552 ***/
|
|
user_pref("datareporting.policy.dataSubmissionEnabled", false);
|
|
/* 0331: disable Health Reports
|
|
* [SETTING] Privacy & Security>Firefox Data Collection & Use>Allow Firefox to send technical... data ***/
|
|
user_pref("datareporting.healthreport.uploadEnabled", false);
|
|
/* 0332: disable telemetry
|
|
* The "unified" pref affects the behavior of the "enabled" pref
|
|
* - If "unified" is false then "enabled" controls the telemetry module
|
|
* - If "unified" is true then "enabled" only controls whether to record extended data
|
|
* [NOTE] "toolkit.telemetry.enabled" is now LOCKED to reflect prerelease (true) or release builds (false) [2]
|
|
* [1] https://firefox-source-docs.mozilla.org/toolkit/components/telemetry/telemetry/internals/preferences.html
|
|
* [2] https://medium.com/georg-fritzsche/data-preference-changes-in-firefox-58-2d5df9c428b5 ***/
|
|
user_pref("toolkit.telemetry.unified", false);
|
|
user_pref("toolkit.telemetry.enabled", false); // see [NOTE]
|
|
user_pref("toolkit.telemetry.server", "data:,");
|
|
user_pref("toolkit.telemetry.archive.enabled", false);
|
|
user_pref("toolkit.telemetry.newProfilePing.enabled", false); // [FF55+]
|
|
user_pref("toolkit.telemetry.shutdownPingSender.enabled", false); // [FF55+]
|
|
user_pref("toolkit.telemetry.updatePing.enabled", false); // [FF56+]
|
|
user_pref("toolkit.telemetry.bhrPing.enabled", false); // [FF57+] Background Hang Reporter
|
|
user_pref("toolkit.telemetry.firstShutdownPing.enabled", false); // [FF57+]
|
|
/* 0333: disable Telemetry Coverage
|
|
* [1] https://blog.mozilla.org/data/2018/08/20/effectively-measuring-search-in-firefox/ ***/
|
|
user_pref("toolkit.telemetry.coverage.opt-out", true); // [HIDDEN PREF]
|
|
user_pref("toolkit.coverage.opt-out", true); // [FF64+] [HIDDEN PREF]
|
|
user_pref("toolkit.coverage.endpoint.base", "");
|
|
/* 0334: disable PingCentre telemetry (used in several System Add-ons) [FF57+]
|
|
* Defense-in-depth: currently covered by 0331 ***/
|
|
user_pref("browser.ping-centre.telemetry", false);
|
|
/* 0335: disable Firefox Home (Activity Stream) telemetry ***/
|
|
user_pref("browser.newtabpage.activity-stream.feeds.telemetry", false);
|
|
user_pref("browser.newtabpage.activity-stream.telemetry", false);
|
|
|
|
/** STUDIES ***/
|
|
/* 0340: disable Studies
|
|
* [SETTING] Privacy & Security>Firefox Data Collection & Use>Allow Firefox to install and run studies ***/
|
|
user_pref("app.shield.optoutstudies.enabled", false);
|
|
/* 0341: disable Normandy/Shield [FF60+]
|
|
* Shield is a telemetry system that can push and test "recipes"
|
|
* [1] https://mozilla.github.io/normandy/ ***/
|
|
user_pref("app.normandy.enabled", false);
|
|
user_pref("app.normandy.api_url", "");
|
|
|
|
/** CRASH REPORTS ***/
|
|
/* 0350: disable Crash Reports ***/
|
|
user_pref("breakpad.reportURL", "");
|
|
user_pref("browser.tabs.crashReporting.sendReport", false); // [FF44+]
|
|
// user_pref("browser.crashReports.unsubmittedCheck.enabled", false); // [FF51+] [DEFAULT: false]
|
|
/* 0351: enforce no submission of backlogged Crash Reports [FF58+]
|
|
* [SETTING] Privacy & Security>Firefox Data Collection & Use>Allow Firefox to send backlogged crash reports ***/
|
|
user_pref("browser.crashReports.unsubmittedCheck.autoSubmit2", false); // [DEFAULT: false]
|
|
|
|
/** OTHER ***/
|
|
/* 0360: disable Captive Portal detection
|
|
* [1] https://www.eff.org/deeplinks/2017/08/how-captive-portals-interfere-wireless-security-and-privacy ***/
|
|
user_pref("captivedetect.canonicalURL", "");
|
|
user_pref("network.captive-portal-service.enabled", false); // [FF52+]
|
|
/* 0361: disable Network Connectivity checks [FF65+]
|
|
* [1] https://bugzilla.mozilla.org/1460537 ***/
|
|
user_pref("network.connectivity-service.enabled", false);
|
|
|
|
/*** [SECTION 0400]: SAFE BROWSING (SB)
|
|
SB has taken many steps to preserve privacy. If required, a full url is never sent
|
|
to Google, only a part-hash of the prefix, hidden with noise of other real part-hashes.
|
|
Firefox takes measures such as stripping out identifying parameters and since SBv4 (FF57+)
|
|
doesn't even use cookies. (#Turn on browser.safebrowsing.debug to monitor this activity)
|
|
|
|
[1] https://feeding.cloud.geek.nz/posts/how-safe-browsing-works-in-firefox/
|
|
[2] https://wiki.mozilla.org/Security/Safe_Browsing
|
|
[3] https://support.mozilla.org/kb/how-does-phishing-and-malware-protection-work
|
|
[4] https://educatedguesswork.org/posts/safe-browsing-privacy/
|
|
***/
|
|
/* 0401: disable SB (Safe Browsing)
|
|
* [WARNING] Do this at your own risk! These are the master switches
|
|
* [SETTING] Privacy & Security>Security>... Block dangerous and deceptive content ***/
|
|
// user_pref("browser.safebrowsing.malware.enabled", false);
|
|
// user_pref("browser.safebrowsing.phishing.enabled", false);
|
|
/* 0402: disable SB checks for downloads (both local lookups + remote)
|
|
* This is the master switch for the safebrowsing.downloads* prefs (0403, 0404)
|
|
* [SETTING] Privacy & Security>Security>... "Block dangerous downloads" ***/
|
|
// user_pref("browser.safebrowsing.downloads.enabled", false);
|
|
/* 0403: disable SB checks for downloads (remote)
|
|
* To verify the safety of certain executable files, Firefox may submit some information about the
|
|
* file, including the name, origin, size and a cryptographic hash of the contents, to the Google
|
|
* Safe Browsing service which helps Firefox determine whether or not the file should be blocked
|
|
* [SETUP-SECURITY] If you do not understand this, or you want this protection, then override this ***/
|
|
user_pref("browser.safebrowsing.downloads.remote.enabled", false);
|
|
// user_pref("browser.safebrowsing.downloads.remote.url", ""); // Defense-in-depth
|
|
/* 0404: disable SB checks for unwanted software
|
|
* [SETTING] Privacy & Security>Security>... "Warn you about unwanted and uncommon software" ***/
|
|
// user_pref("browser.safebrowsing.downloads.remote.block_potentially_unwanted", false);
|
|
// user_pref("browser.safebrowsing.downloads.remote.block_uncommon", false);
|
|
/* 0405: disable "ignore this warning" on SB warnings [FF45+]
|
|
* If clicked, it bypasses the block for that session. This is a means for admins to enforce SB
|
|
* [TEST] see https://github.com/arkenfox/user.js/wiki/Appendix-A-Test-Sites#-mozilla
|
|
* [1] https://bugzilla.mozilla.org/1226490 ***/
|
|
// user_pref("browser.safebrowsing.allowOverride", false);
|