Compare commits

...

21 Commits

Author SHA1 Message Date
3b90e6e592 end of v64 2019-01-17 05:11:29 +00:00
45bd5ccc02 PB Mode: ref added 2019-01-16 02:07:06 +00:00
7bf5790f2b RFP: FF66 changes to UA HTTP Headers 2019-01-11 05:14:59 +00:00
075d6fe6e4 2615: s/cut keys: bug fix in 66+ 2019-01-11 05:09:14 +00:00
4604cf0d4e references to other prefs s/be explicit 2018-12-21 11:02:40 +00:00
b845f8fe3a Update README.md
OK, I give up. I would've removed those commits by force-pushing, but the branch is protected. #NotMyFault
2018-12-20 19:53:48 +00:00
96063027ba Update README.md
second attempt at fixing the weird title...
2018-12-20 19:44:27 +00:00
186fb1c9be Update README.md
fix for the weird page title ![][b]
https://ghacksuserjs.github.io/ghacks-user.js/
2018-12-20 19:42:28 +00:00
ac4e764c37 http2, altsvc, ssl session ids vs FPI vs TB #571 2018-12-18 15:54:57 +00:00
5b0952f60a network.auth.subresource-http-auth-allow 2018-12-17 13:00:27 +00:00
5bd5f6b28e 0912: HTTP Auth sub-resources #585 (#602) 2018-12-18 01:41:37 +13:00
55c2cacbce 0335: toolkit.telemetry.coverage.opt-out (#600) 2018-12-17 22:43:45 +13:00
4badc42879 0105b: kill snippets endpoint #528
it's too hard to follow AS changes, and work out if disabling showing items (basic toggling of show/hide sections etc) actually stops downloading a localized local copy etc. For items we actually want to block, let the endpoint slaughter begin.
2018-12-17 09:36:26 +00:00
6946a01232 Update troubleshooter.js 2018-12-17 08:19:14 +00:00
da80e39064 0105s: description s/be self explanatory #578
when filtered and 0105a is not shown, AS doesn't mean anything
2018-12-16 17:37:42 +00:00
c1d6d81528 add PERF tags to wasm, asm.js, closes #599 2018-12-16 14:10:32 +00:00
d5ece0f6f4 1700s: revamp Containers header #585 (#596) 2018-12-14 07:05:43 +00:00
f6ea20a8b0 0335: Telemetry Coverage endpoint
let's just coverage-our-ass on this one

While I don't mind telemetry (development needs meaningful feedback to better the product), and I trust the data is not PII, and/or anonymized into buckets etc (you can check this you know), and I understand this one needs to be outside the Telemetry pref in order to gather the one-time ping ... and I trust Mozilla's motives ... I'm starting to get a little annoyed at the non-stop incessant increasing telemetry bullshittery and ass-fuckery around sending data home, and the lengths some Mozilla devs will go to, to hide this info (hidden prefs, access denied tickets to hide discussion of what should be public, and even **not even adhering to their own documentation**).

I will also be killing as many Activity Stream endpoints as well - as long as they are in line with our js - pocket, snippets, onboarding etc. And I will add those from personal as inactive for end-users - eg cfr
2018-12-13 17:28:16 +00:00
645492e82f grammar, case, etc, closes #594
thanks @Just-me-ghacks
2018-12-14 04:49:50 +13:00
15c68dc344 disable System Add-on updates (#595)
remember the new Coverage Telemetry shit? with a **hidden** opt-out pref? guess what, they are already collecting for 3 months ...

https://bugzilla.mozilla.org/show_bug.cgi?id=1487578 - **3 months ago**: "I see data coming in that looks reasonable"

guess what else ...

"It has also replaced the previous version that was there (from bug 1480194)" and oh, surprise surprise, 1480194 is ACCESS DENIED!

they're not just using private tickets to hide security critical information from potential hackers and blackhats, no they also use it to hide shady AF things. Things that they fully know are shady as fuck and that they absolutely know a lot of people would not like. There's simply no other reason why they'd do that

but wait, that's not all. If you think an opt-out pref that 99% of people wouldn't know about even if it showed up in about:config BUT ALSO HAPPENS TO BE HIDDEN is kind of questionable, well ... the system addon that they use for this shit apparently looked or still looks for `toolkit.telemetry.coverage.opt-out` [1] instead of `toolkit.coverage.opt-out` as their documentation [2] claims

[1] https://github.com/mozilla/one-off-system-add-ons/pull/131/files#diff-6e0cbf76986d04383ccb32a29ef27a7aR25
[2] https://hg.mozilla.org/mozilla-central/file/tip/toolkit/components/telemetry/docs/data/coverage-ping.rst#l32

It's time to opt out of all that shit for good. Disable system addon updates and kill it at the root

> In FF61 and lower, you will not get any System Add-on updates except when you update Firefox

on its own that's not true. You will get SA updates unless you disable app update checks + auto install. Let's just remove that as well.
2018-12-14 03:21:57 +13:00
04b797f1aa 0209: remove trailing space
@Just-me-ghacks 💋
2018-12-13 11:14:44 +00:00
2 changed files with 56 additions and 35 deletions

View File

@ -1,5 +1,5 @@
/*** ghacks-user.js troubleshooter.js v1.5 ***/ /*** ghacks-user.js troubleshooter.js v1.5.2 ***/
(function() { (function() {
@ -82,7 +82,6 @@
'dom.push.enabled', 'dom.push.enabled',
'dom.push.serverURL', 'dom.push.serverURL',
'dom.serviceWorkers.enabled', 'dom.serviceWorkers.enabled',
'dom.workers.enabled',
'dom.webnotifications.enabled', 'dom.webnotifications.enabled',
'dom.webnotifications.serviceworker.enabled', 'dom.webnotifications.serviceworker.enabled',
@ -116,6 +115,7 @@
/* Audio + Video */ /* Audio + Video */
'dom.webaudio.enabled', 'dom.webaudio.enabled',
'media.autoplay.enabled', 'media.autoplay.enabled',
'media.autoplay.default', // FF63+
/* Forms */ /* Forms */
'browser.formfill.enable', 'browser.formfill.enable',
@ -125,7 +125,6 @@
/* HTTPS */ /* HTTPS */
'security.cert_pinning.enforcement_level', 'security.cert_pinning.enforcement_level',
'security.family_safety.mode', 'security.family_safety.mode',
'security.mixed_content.use_hsts',
'security.OCSP.require', 'security.OCSP.require',
'security.pki.sha1_enforcement_level', 'security.pki.sha1_enforcement_level',
'security.ssl.require_safe_negotiation', 'security.ssl.require_safe_negotiation',
@ -152,7 +151,7 @@
'dom.popup_maximum', 'dom.popup_maximum',
'layout.css.visited_links_enabled', 'layout.css.visited_links_enabled',
'mathml.disabled', 'mathml.disabled',
'network.auth.subresource-img-cross-origin-http-auth-allow', 'network.auth.subresource-http-auth-allow',
'network.http.redirection-limit', 'network.http.redirection-limit',
'network.protocol-handler.external.ms-windows-store', 'network.protocol-handler.external.ms-windows-store',
'privacy.trackingprotection.enabled', 'privacy.trackingprotection.enabled',

84
user.js
View File

@ -1,7 +1,7 @@
/****** /******
* name: ghacks user.js * name: ghacks user.js
* date: 12 December 2018 * date: 17 January 2019
* version 64-beta: Crocodile Pants * version 64: Crocodile Pants
* "I remember when Pants was young, me and Suzie had so much fun" * "I remember when Pants was young, me and Suzie had so much fun"
* authors: v52+ github | v51- www.ghacks.net * authors: v52+ github | v51- www.ghacks.net
* url: https://github.com/ghacksuserjs/ghacks-user.js * url: https://github.com/ghacksuserjs/ghacks-user.js
@ -106,17 +106,18 @@ user_pref("browser.newtab.preload", false);
user_pref("browser.newtabpage.activity-stream.feeds.telemetry", false); user_pref("browser.newtabpage.activity-stream.feeds.telemetry", false);
user_pref("browser.newtabpage.activity-stream.telemetry", false); user_pref("browser.newtabpage.activity-stream.telemetry", false);
user_pref("browser.newtabpage.activity-stream.telemetry.ping.endpoint", ""); user_pref("browser.newtabpage.activity-stream.telemetry.ping.endpoint", "");
/* 0105b: disable AS Snippets /* 0105b: disable Activity Stream Snippets
* Runs code received from a server (aka Remote Code Execution) and sends information back to a metrics server * Runs code received from a server (aka Remote Code Execution) and sends information back to a metrics server
* [1] https://abouthome-snippets-service.readthedocs.io/ ***/ * [1] https://abouthome-snippets-service.readthedocs.io/ ***/
user_pref("browser.aboutHomeSnippets.updateUrl", "");
user_pref("browser.newtabpage.activity-stream.asrouter.providers.snippets", "");
user_pref("browser.newtabpage.activity-stream.disableSnippets", true); user_pref("browser.newtabpage.activity-stream.disableSnippets", true);
user_pref("browser.newtabpage.activity-stream.feeds.snippets", false); user_pref("browser.newtabpage.activity-stream.feeds.snippets", false);
user_pref("browser.aboutHomeSnippets.updateUrl", ""); /* 0105c: disable Activity Stream Top Stories, Pocket-based and/or sponsored content ***/
/* 0105c: disable AS Top Stories, Pocket-based and/or sponsored content ***/
user_pref("browser.newtabpage.activity-stream.feeds.section.topstories", false); user_pref("browser.newtabpage.activity-stream.feeds.section.topstories", false);
user_pref("browser.newtabpage.activity-stream.section.highlights.includePocket", false); user_pref("browser.newtabpage.activity-stream.section.highlights.includePocket", false);
user_pref("browser.newtabpage.activity-stream.showSponsored", false); user_pref("browser.newtabpage.activity-stream.showSponsored", false);
/* 0105d: disable AS recent Highlights in the Library [FF57+] ***/ /* 0105d: disable Activity Stream recent Highlights in the Library [FF57+] ***/
// user_pref("browser.library.activity-stream.enabled", false); // user_pref("browser.library.activity-stream.enabled", false);
/* 0110: start Firefox in PB (Private Browsing) mode /* 0110: start Firefox in PB (Private Browsing) mode
* [NOTE] In this mode *all* windows are "private windows" and the PB mode icon is not displayed * [NOTE] In this mode *all* windows are "private windows" and the PB mode icon is not displayed
@ -127,7 +128,8 @@ user_pref("browser.newtabpage.activity-stream.showSponsored", false);
* new instance. Closing all Private Windows clears all traces. Repeat as required. PB also does * new instance. Closing all Private Windows clears all traces. Repeat as required. PB also does
* not allow indexedDB which breaks many Extensions that use it including uBlock Origin and uMatrix * not allow indexedDB which breaks many Extensions that use it including uBlock Origin and uMatrix
* [SETTING] Privacy & Security>History>Custom Settings>Always use private browsing mode * [SETTING] Privacy & Security>History>Custom Settings>Always use private browsing mode
* [1] https://wiki.mozilla.org/Private_Browsing ***/ * [1] https://wiki.mozilla.org/Private_Browsing
* [2] https://spreadprivacy.com/is-private-browsing-really-private/ ***/
// user_pref("browser.privatebrowsing.autostart", true); // user_pref("browser.privatebrowsing.autostart", true);
/*** [SECTION 0200]: GEOLOCATION ***/ /*** [SECTION 0200]: GEOLOCATION ***/
@ -159,7 +161,7 @@ user_pref("intl.accept_languages", "en-US, en");
/* 0208: enforce US English locale regardless of the system locale /* 0208: enforce US English locale regardless of the system locale
* [1] https://bugzilla.mozilla.org/867501 ***/ * [1] https://bugzilla.mozilla.org/867501 ***/
user_pref("javascript.use_us_english_locale", true); // [HIDDEN PREF] user_pref("javascript.use_us_english_locale", true); // [HIDDEN PREF]
/* 0209: use APP locale over OS locale in regional preferences [FF56+] /* 0209: use APP locale over OS locale in regional preferences [FF56+]
* [1] https://bugzilla.mozilla.org/buglist.cgi?bug_id=1379420,1364789 ***/ * [1] https://bugzilla.mozilla.org/buglist.cgi?bug_id=1379420,1364789 ***/
user_pref("intl.regional_prefs.use_os_locales", false); user_pref("intl.regional_prefs.use_os_locales", false);
/* 0210: use Mozilla geolocation service instead of Google when geolocation is enabled /* 0210: use Mozilla geolocation service instead of Google when geolocation is enabled
@ -202,7 +204,7 @@ user_pref("browser.search.update", false);
user_pref("dom.ipc.plugins.flash.subprocess.crashreporter.enabled", false); user_pref("dom.ipc.plugins.flash.subprocess.crashreporter.enabled", false);
/* 0310: disable sending the URL of the website where a plugin crashed ***/ /* 0310: disable sending the URL of the website where a plugin crashed ***/
user_pref("dom.ipc.plugins.reportCrashURL", false); user_pref("dom.ipc.plugins.reportCrashURL", false);
/* 0320: disable about:addons' Get Add-ons panel (uses Google-Analytics) ***/ /* 0320: disable about:addons' Get Add-ons panel (uses Google Analytics) ***/
user_pref("extensions.getAddons.showPane", false); // [HIDDEN PREF] user_pref("extensions.getAddons.showPane", false); // [HIDDEN PREF]
user_pref("extensions.webservice.discoverURL", ""); user_pref("extensions.webservice.discoverURL", "");
/* 0330: disable telemetry /* 0330: disable telemetry
@ -232,9 +234,11 @@ user_pref("datareporting.healthreport.uploadEnabled", false);
* If disabled, no policy is shown or upload takes place, ever * If disabled, no policy is shown or upload takes place, ever
* [1] https://bugzilla.mozilla.org/1195552 ***/ * [1] https://bugzilla.mozilla.org/1195552 ***/
user_pref("datareporting.policy.dataSubmissionEnabled", false); user_pref("datareporting.policy.dataSubmissionEnabled", false);
/* 0335: disable Telemetry Coverage [FF64+] /* 0335: disable Telemetry Coverage
* [1] https://blog.mozilla.org/data/2018/08/20/effectively-measuring-search-in-firefox/ ***/ * [1] https://blog.mozilla.org/data/2018/08/20/effectively-measuring-search-in-firefox/ ***/
user_pref("toolkit.coverage.opt-out", true); // [HIDDEN PREF] 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", "");
/* 0350: disable crash reports ***/ /* 0350: disable crash reports ***/
user_pref("breakpad.reportURL", ""); user_pref("breakpad.reportURL", "");
/* 0351: disable sending of crash reports ***/ /* 0351: disable sending of crash reports ***/
@ -385,10 +389,9 @@ user_pref("network.allow-experiments", false);
user_pref("app.normandy.enabled", false); user_pref("app.normandy.enabled", false);
user_pref("app.normandy.api_url", ""); user_pref("app.normandy.api_url", "");
user_pref("app.shield.optoutstudies.enabled", false); user_pref("app.shield.optoutstudies.enabled", false);
/* 0505: disable System Add-on updates /* 0505: disable System Add-on updates ***/
* [NOTE] In FF61 and lower, you will not get any System Add-on updates except when you update Firefox ***/ user_pref("extensions.systemAddon.update.enabled", false); // [FF62+]
// user_pref("extensions.systemAddon.update.enabled", false); // [FF62+] user_pref("extensions.systemAddon.update.url", ""); // [FF44+]
// user_pref("extensions.systemAddon.update.url", "");
/* 0506: disable PingCentre telemetry (used in several System Add-ons) [FF57+] /* 0506: disable PingCentre telemetry (used in several System Add-ons) [FF57+]
* Currently blocked by 'datareporting.healthreport.uploadEnabled' (see 0333) ***/ * Currently blocked by 'datareporting.healthreport.uploadEnabled' (see 0333) ***/
user_pref("browser.ping-centre.telemetry", false); user_pref("browser.ping-centre.telemetry", false);
@ -460,6 +463,9 @@ user_pref("network.dns.disableIPv6", true);
/* 0702: disable HTTP2 (which was based on SPDY which is now deprecated) /* 0702: disable HTTP2 (which was based on SPDY which is now deprecated)
* HTTP2 raises concerns with "multiplexing" and "server push", does nothing to enhance * HTTP2 raises concerns with "multiplexing" and "server push", does nothing to enhance
* privacy, and in fact opens up a number of server-side fingerprinting opportunities * privacy, and in fact opens up a number of server-side fingerprinting opportunities
* [SETUP-PERF] Relax this if you have FPI enabled (see 4000) *AND* you understand the
* consequences. FPI isolates these, but it was designed with the Tor protocol in mind,
* and the Tor Browser has extra protection, including enhanced sanitizing per Identity.
* [1] https://http2.github.io/faq/ * [1] https://http2.github.io/faq/
* [2] https://blog.scottlogic.com/2014/11/07/http-2-a-quick-look.html * [2] https://blog.scottlogic.com/2014/11/07/http-2-a-quick-look.html
* [3] https://queue.acm.org/detail.cfm?id=2716278 * [3] https://queue.acm.org/detail.cfm?id=2716278
@ -468,6 +474,9 @@ user_pref("network.http.spdy.enabled", false);
user_pref("network.http.spdy.enabled.deps", false); user_pref("network.http.spdy.enabled.deps", false);
user_pref("network.http.spdy.enabled.http2", false); user_pref("network.http.spdy.enabled.http2", false);
/* 0703: disable HTTP Alternative Services [FF37+] /* 0703: disable HTTP Alternative Services [FF37+]
* [SETUP-PERF] Relax this if you have FPI enabled (see 4000) *AND* you understand the
* consequences. FPI isolates these, but it was designed with the Tor protocol in mind,
* and the Tor Browser has extra protection, including enhanced sanitizing per Identity.
* [1] https://tools.ietf.org/html/rfc7838#section-9 * [1] https://tools.ietf.org/html/rfc7838#section-9
* [2] https://www.mnot.net/blog/2016/03/09/alt-svc ***/ * [2] https://www.mnot.net/blog/2016/03/09/alt-svc ***/
user_pref("network.http.altsvc.enabled", false); user_pref("network.http.altsvc.enabled", false);
@ -643,6 +652,13 @@ user_pref("signon.formlessCapture.enabled", false);
* [2] https://bugzilla.mozilla.org/buglist.cgi?bug_id=1217152,1319119 ***/ * [2] https://bugzilla.mozilla.org/buglist.cgi?bug_id=1217152,1319119 ***/
user_pref("signon.autofillForms.http", false); user_pref("signon.autofillForms.http", false);
user_pref("security.insecure_field_warning.contextual.enabled", true); user_pref("security.insecure_field_warning.contextual.enabled", true);
/* 0912: limit (or disable) HTTP authentication credentials dialogs triggered by sub-resources [FF41+]
* hardens against potential credentials phishing
* 0=don't allow sub-resources to open HTTP authentication credentials dialogs
* 1=don't allow cross-origin sub-resources to open HTTP authentication credentials dialogs
* 2=allow sub-resources to open HTTP authentication credentials dialogs (default)
* [1] https://www.fxsitecompat.com/en-CA/docs/2015/http-auth-dialog-can-no-longer-be-triggered-by-cross-origin-resources/ ***/
user_pref("network.auth.subresource-http-auth-allow", 1);
/*** [SECTION 1000]: CACHE / SESSION (RE)STORE / FAVICONS [SETUP-CHROME] /*** [SECTION 1000]: CACHE / SESSION (RE)STORE / FAVICONS [SETUP-CHROME]
ETAG [1] and other [2][3] cache tracking/fingerprinting techniques can be averted by ETAG [1] and other [2][3] cache tracking/fingerprinting techniques can be averted by
@ -697,7 +713,7 @@ user_pref("browser.sessionstore.privacy_level", 2);
// user_pref("browser.sessionstore.resume_from_crash", false); // user_pref("browser.sessionstore.resume_from_crash", false);
/* 1023: set the minimum interval between session save operations /* 1023: set the minimum interval between session save operations
* Increasing this can help on older machines and some websites, as well as reducing writes, see [1] * Increasing this can help on older machines and some websites, as well as reducing writes, see [1]
* Default is 15000 (15 secs). Try 30000 (30sec), 60000 (1min) etc * Default is 15000 (15 secs). Try 30000 (30 secs), 60000 (1 min) etc
* [SETUP-CHROME] This can also affect entries in the "Recently Closed Tabs" feature: * [SETUP-CHROME] This can also affect entries in the "Recently Closed Tabs" feature:
* i.e. the longer the interval the more chance a quick tab open/close won't be captured. * i.e. the longer the interval the more chance a quick tab open/close won't be captured.
* This longer interval *may* affect history but we cannot replicate any history not recorded * This longer interval *may* affect history but we cannot replicate any history not recorded
@ -747,11 +763,13 @@ user_pref("security.ssl.require_safe_negotiation", true);
// user_pref("security.tls.version.min", 3); // user_pref("security.tls.version.min", 3);
user_pref("security.tls.version.max", 4); user_pref("security.tls.version.max", 4);
/* 1203: disable SSL session tracking [FF36+] /* 1203: disable SSL session tracking [FF36+]
* SSL Session IDs speed up HTTPS connections (no need to renegotiate) and last for 24hrs. * SSL Session IDs are unique, last up to 24hrs in Firefox, and can be used for tracking
* Since the ID is unique, web servers can (and do) use it for tracking. If set to true, * [SETUP-PERF] Relax this if you have FPI enabled (see 4000) *AND* you understand the
* this disables sending SSL Session IDs and TLS Session Tickets to prevent session tracking * consequences. FPI isolates these, but it was designed with the Tor protocol in mind,
* and the Tor Browser has extra protection, including enhanced sanitizing per Identity.
* [1] https://tools.ietf.org/html/rfc5077 * [1] https://tools.ietf.org/html/rfc5077
* [2] https://bugzilla.mozilla.org/967977 ***/ * [2] https://bugzilla.mozilla.org/967977
* [3] https://arxiv.org/abs/1810.07304 ***/
user_pref("security.ssl.disable_session_identifiers", true); // [HIDDEN PREF] user_pref("security.ssl.disable_session_identifiers", true); // [HIDDEN PREF]
/* 1204: disable SSL Error Reporting /* 1204: disable SSL Error Reporting
* [1] https://firefox-source-docs.mozilla.org/browser/base/sslerrorreport/preferences.html ***/ * [1] https://firefox-source-docs.mozilla.org/browser/base/sslerrorreport/preferences.html ***/
@ -913,7 +931,7 @@ user_pref("gfx.font_rendering.graphite.enabled", false);
Our default settings provide the best balance between protection and amount of breakage. Our default settings provide the best balance between protection and amount of breakage.
To harden it a bit more you can set XOriginPolicy (1603) to 2 (+ optionally 1604 to 1 or 2). To harden it a bit more you can set XOriginPolicy (1603) to 2 (+ optionally 1604 to 1 or 2).
To fix broken sites (including your modem/router), temporarily set XOriginPolicy=0 and XOriginTrimmingPolicy=2 in about:config, To fix broken sites (including your modem/router), temporarily set XOriginPolicy=0 and XOriginTrimmingPolicy=2 in about:config,
use the site and then change the values back. If you visit those sites regularly (e.g. Vimeo), use an extension. use the site and then change the values back. If you visit those sites regularly (e.g. vimeo), use an extension.
full URI: https://example.com:8888/foo/bar.html?id=1234 full URI: https://example.com:8888/foo/bar.html?id=1234
scheme+host+port+path: https://example.com:8888/foo/bar.html scheme+host+port+path: https://example.com:8888/foo/bar.html
@ -957,9 +975,12 @@ user_pref("network.http.referer.hideOnionSource", true);
user_pref("privacy.donottrackheader.enabled", true); user_pref("privacy.donottrackheader.enabled", true);
/*** [SECTION 1700]: CONTAINERS /*** [SECTION 1700]: CONTAINERS
[1] https://support.mozilla.org/kb/containers-experiment If you want to *really* leverage containers, we highly recommend Temporary Containers [2].
[2] https://wiki.mozilla.org/Security/Contextual_Identity_Project/Containers Read the article by the extension author [3], and check out the github wiki/repo [4].
[3] https://github.com/mozilla/testpilot-containers [1] https://wiki.mozilla.org/Security/Contextual_Identity_Project/Containers
[2] https://addons.mozilla.org/firefox/addon/temporary-containers/
[3] https://medium.com/@stoically/enhance-your-privacy-in-firefox-with-temporary-containers-33925cd6cd21
[4] https://github.com/stoically/temporary-containers/wiki
***/ ***/
user_pref("_user.js.parrot", "1700 syntax error: the parrot's bit the dust!"); user_pref("_user.js.parrot", "1700 syntax error: the parrot's bit the dust!");
/* 1701: enable Container Tabs setting in preferences (see 1702) [FF50+] /* 1701: enable Container Tabs setting in preferences (see 1702) [FF50+]
@ -1168,7 +1189,7 @@ user_pref("dom.allow_cut_copy", false); // [HIDDEN PREF]
user_pref("dom.disable_beforeunload", true); user_pref("dom.disable_beforeunload", true);
/* 2414: disable shaking the screen ***/ /* 2414: disable shaking the screen ***/
user_pref("dom.vibrator.enabled", false); user_pref("dom.vibrator.enabled", false);
/* 2420: disable asm.js [FF22+] /* 2420: disable asm.js [FF22+] [SETUP-PERF]
* [1] http://asmjs.org/ * [1] http://asmjs.org/
* [2] https://www.mozilla.org/security/advisories/mfsa2015-29/ * [2] https://www.mozilla.org/security/advisories/mfsa2015-29/
* [3] https://www.mozilla.org/security/advisories/mfsa2015-50/ * [3] https://www.mozilla.org/security/advisories/mfsa2015-50/
@ -1181,7 +1202,7 @@ user_pref("javascript.options.asmjs", false);
* [1] https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2015-0817 ***/ * [1] https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2015-0817 ***/
// user_pref("javascript.options.ion", false); // user_pref("javascript.options.ion", false);
// user_pref("javascript.options.baselinejit", false); // user_pref("javascript.options.baselinejit", false);
/* 2422: disable WebAssembly [FF52+] /* 2422: disable WebAssembly [FF52+] [SETUP-PERF]
* [1] https://developer.mozilla.org/docs/WebAssembly ***/ * [1] https://developer.mozilla.org/docs/WebAssembly ***/
user_pref("javascript.options.wasm", false); user_pref("javascript.options.wasm", false);
/* 2426: disable Intersection Observer API [FF53+] /* 2426: disable Intersection Observer API [FF53+]
@ -1286,7 +1307,7 @@ user_pref("middlemouse.contentLoadURL", false);
user_pref("network.http.redirection-limit", 10); user_pref("network.http.redirection-limit", 10);
/* 2615: disable websites overriding Firefox's keyboard shortcuts [FF58+] /* 2615: disable websites overriding Firefox's keyboard shortcuts [FF58+]
* 0 (default) or 1=allow, 2=block * 0 (default) or 1=allow, 2=block
* [NOTE] At the time of writing, causes issues with delete and backspace keys * [NOTE] In FF65 and under, causes issues with delete and backspace keys (see 1445942)
* [SETTING] to add site exceptions: Page Info>Permissions>Override Keyboard Shortcuts ***/ * [SETTING] to add site exceptions: Page Info>Permissions>Override Keyboard Shortcuts ***/
// user_pref("permissions.default.shortcuts", 2); // user_pref("permissions.default.shortcuts", 2);
/* 2616: remove special permissions for certain mozilla domains [FF35+] /* 2616: remove special permissions for certain mozilla domains [FF35+]
@ -1417,7 +1438,7 @@ user_pref("network.cookie.leave-secure-alone", true); // [DEFAULT: true]
* To control *website* IDB data, control allowing cookies and service workers, or use * To control *website* IDB data, control allowing cookies and service workers, or use
* Temporary Containers. To mitigate *website* IDB, FPI helps (4001), and/or sanitize * Temporary Containers. To mitigate *website* IDB, FPI helps (4001), and/or sanitize
* on close (Offline Website Data, see 2800) or on-demand (Ctrl-Shift-Del), or automatically * on close (Offline Website Data, see 2800) or on-demand (Ctrl-Shift-Del), or automatically
* via an extenion. Note that IDB currently cannot be sanitized by host. * via an extension. Note that IDB currently cannot be sanitized by host.
* [1] https://blog.mozilla.org/addons/2018/08/03/new-backend-for-storage-local-api/ ***/ * [1] https://blog.mozilla.org/addons/2018/08/03/new-backend-for-storage-local-api/ ***/
user_pref("dom.indexedDB.enabled", true); // [DEFAULT: true] user_pref("dom.indexedDB.enabled", true); // [DEFAULT: true]
/* 2730: disable offline cache ***/ /* 2730: disable offline cache ***/
@ -1466,7 +1487,7 @@ user_pref("privacy.clearOnShutdown.history", true); // Browsing & Download Histo
user_pref("privacy.clearOnShutdown.offlineApps", true); // Offline Website Data user_pref("privacy.clearOnShutdown.offlineApps", true); // Offline Website Data
user_pref("privacy.clearOnShutdown.sessions", true); // Active Logins user_pref("privacy.clearOnShutdown.sessions", true); // Active Logins
user_pref("privacy.clearOnShutdown.siteSettings", false); // Site Preferences user_pref("privacy.clearOnShutdown.siteSettings", false); // Site Preferences
/* 2804: reset default history items to clear with Ctrl-Shift-Del (to match above) /* 2804: reset default history items to clear with Ctrl-Shift-Del (to match 2803)
* This dialog can also be accessed from the menu History>Clear Recent History * This dialog can also be accessed from the menu History>Clear Recent History
* Firefox remembers your last choices. This will reset them when you start Firefox. * Firefox remembers your last choices. This will reset them when you start Firefox.
* [NOTE] Regardless of what you set privacy.cpd.downloads to, as soon as the dialog * [NOTE] Regardless of what you set privacy.cpd.downloads to, as soon as the dialog
@ -1555,6 +1576,7 @@ user_pref("privacy.firstparty.isolate.restrict_opener_access", true); // [DEFAUL
FF56: The version number will be rounded down to the nearest multiple of 10 FF56: The version number will be rounded down to the nearest multiple of 10
FF57: The version number will match current ESR (1393283, 1418672, 1418162) FF57: The version number will match current ESR (1393283, 1418672, 1418162)
FF59: The OS will be reported as Windows, OSX, Android, or Linux (to reduce breakage) (1404608) FF59: The OS will be reported as Windows, OSX, Android, or Linux (to reduce breakage) (1404608)
FF66: The OS in HTTP Headers will be reduced to Windows or Android (1509829)
** 1369319 - disable device sensor API (see 4604) (FF56+) ** 1369319 - disable device sensor API (see 4604) (FF56+)
** 1369357 - disable site specific zoom (see 4605) (FF56+) ** 1369357 - disable site specific zoom (see 4605) (FF56+)
** 1337161 - hide gamepads from content (see 4606) (FF56+) ** 1337161 - hide gamepads from content (see 4606) (FF56+)
@ -1733,7 +1755,7 @@ user_pref("_user.js.parrot", "5000 syntax error: this is an ex-parrot!");
// user_pref("browser.backspace_action", 2); // 0=previous page, 1=scroll up, 2=do nothing // user_pref("browser.backspace_action", 2); // 0=previous page, 1=scroll up, 2=do nothing
// user_pref("browser.tabs.closeWindowWithLastTab", false); // user_pref("browser.tabs.closeWindowWithLastTab", false);
// user_pref("browser.tabs.loadBookmarksInTabs", true); // open bookmarks in a new tab [FF57+] // user_pref("browser.tabs.loadBookmarksInTabs", true); // open bookmarks in a new tab [FF57+]
// user_pref("browser.urlbar.decodeURLsOnCopy", true); // see Bugzilla 1320061 [FF53+] // user_pref("browser.urlbar.decodeURLsOnCopy", true); // see bugzilla 1320061 [FF53+]
// user_pref("general.autoScroll", false); // middle-click enabling auto-scrolling [WINDOWS] [MAC] // user_pref("general.autoScroll", false); // middle-click enabling auto-scrolling [WINDOWS] [MAC]
// user_pref("ui.key.menuAccessKey", 0); // disable alt key toggling the menu bar [RESTART] // user_pref("ui.key.menuAccessKey", 0); // disable alt key toggling the menu bar [RESTART]
/* OTHER ***/ /* OTHER ***/
@ -1742,7 +1764,7 @@ user_pref("_user.js.parrot", "5000 syntax error: this is an ex-parrot!");
// [SETTING] General>Browsing>Recommend extensions as you browse // [SETTING] General>Browsing>Recommend extensions as you browse
// [1] https://support.mozilla.org/en-US/kb/extension-recommendations // [1] https://support.mozilla.org/en-US/kb/extension-recommendations
// user_pref("identity.fxaccounts.enabled", false); // disable and hide Firefox Accounts and Sync [FF60+] [RESTART] // user_pref("identity.fxaccounts.enabled", false); // disable and hide Firefox Accounts and Sync [FF60+] [RESTART]
// user_pref("network.manage-offline-status", false); // see Bugzilla 620472 // user_pref("network.manage-offline-status", false); // see bugzilla 620472
// user_pref("reader.parse-on-load.enabled", false); // "Reader View" // user_pref("reader.parse-on-load.enabled", false); // "Reader View"
// user_pref("xpinstall.signatures.required", false); // enforced extension signing (Nightly/ESR) // user_pref("xpinstall.signatures.required", false); // enforced extension signing (Nightly/ESR)