mirror of
https://github.com/arkenfox/user.js.git
synced 2026-06-16 01:12:52 +05:30
Compare commits
14 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| efcceaf2c3 | |||
| 9018577a3e | |||
| 6968b9a369 | |||
| ada31d4f50 | |||
| d973e11714 | |||
| b6d7b2bff5 | |||
| 74f804a056 | |||
| f0b5e3649d | |||
| 9cc132e69d | |||
| 9419e2faab | |||
| 0566ded651 | |||
| ba9b3c217b | |||
| 79c5539edb | |||
| cfd7cd01d1 |
+32
-17
@@ -2,7 +2,7 @@
|
|||||||
|
|
||||||
## prefs.js cleaner for Linux/Mac
|
## prefs.js cleaner for Linux/Mac
|
||||||
## author: @claustromaniac
|
## author: @claustromaniac
|
||||||
## version: 1.3
|
## version: 1.4
|
||||||
|
|
||||||
## special thanks to @overdodactyl and @earthlng for a few snippets that I stol..*cough* borrowed from the updater.sh
|
## special thanks to @overdodactyl and @earthlng for a few snippets that I stol..*cough* borrowed from the updater.sh
|
||||||
|
|
||||||
@@ -20,15 +20,22 @@ cd "$(dirname "${sfp}")"
|
|||||||
fQuit() {
|
fQuit() {
|
||||||
## change directory back to the original working directory
|
## change directory back to the original working directory
|
||||||
cd "${currdir}"
|
cd "${currdir}"
|
||||||
echo -e "\n$2"
|
[ $1 -eq 0 ] && echo -e "\n$2" || echo -e "\n$2" >&2
|
||||||
exit $1
|
exit $1
|
||||||
}
|
}
|
||||||
|
|
||||||
|
fUsage() {
|
||||||
|
echo -e "\nUsage: $0 [-s]"
|
||||||
|
echo -e "
|
||||||
|
Optional Arguments:
|
||||||
|
-s Start immediately"
|
||||||
|
}
|
||||||
|
|
||||||
fFF_check() {
|
fFF_check() {
|
||||||
# there are many ways to see if firefox is running or not, some more reliable than others
|
# there are many ways to see if firefox is running or not, some more reliable than others
|
||||||
# this isn't elegant and might not be future-proof but should at least be compatible with any environment
|
# this isn't elegant and might not be future-proof but should at least be compatible with any environment
|
||||||
while [ -e lock ]; do
|
while [ -e lock ]; do
|
||||||
echo -e "\nThis Firefox profile seems to be in use. Close Firefox and try again.\n"
|
echo -e "\nThis Firefox profile seems to be in use. Close Firefox and try again.\n" >&2
|
||||||
read -p "Press any key to continue."
|
read -p "Press any key to continue."
|
||||||
done
|
done
|
||||||
}
|
}
|
||||||
@@ -54,34 +61,42 @@ fClean() {
|
|||||||
done < "$1" > prefs.js
|
done < "$1" > prefs.js
|
||||||
}
|
}
|
||||||
|
|
||||||
|
fStart() {
|
||||||
|
if [ ! -e user.js ]; then
|
||||||
|
fQuit 1 "user.js not found in the current directory."
|
||||||
|
elif [ ! -e prefs.js ]; then
|
||||||
|
fQuit 1 "prefs.js not found in the current directory."
|
||||||
|
fi
|
||||||
|
|
||||||
|
fFF_check
|
||||||
|
bakfile="prefs.js.backup.$(date +"%Y-%m-%d_%H%M")"
|
||||||
|
mv prefs.js "${bakfile}" || fQuit 1 "Operation aborted.\nReason: Could not create backup file $bakfile"
|
||||||
|
echo -e "\nprefs.js backed up: $bakfile"
|
||||||
|
echo "Cleaning prefs.js..."
|
||||||
|
fClean "$bakfile"
|
||||||
|
fQuit 0 "All done!"
|
||||||
|
}
|
||||||
|
|
||||||
echo -e "\n\n"
|
echo -e "\n\n"
|
||||||
echo " ╔══════════════════════════╗"
|
echo " ╔══════════════════════════╗"
|
||||||
echo " ║ prefs.js cleaner ║"
|
echo " ║ prefs.js cleaner ║"
|
||||||
echo " ║ by claustromaniac ║"
|
echo " ║ by claustromaniac ║"
|
||||||
echo " ║ v1.3 ║"
|
echo " ║ v1.4 ║"
|
||||||
echo " ╚══════════════════════════╝"
|
echo " ╚══════════════════════════╝"
|
||||||
echo -e "\nThis script should be run from your Firefox profile directory.\n"
|
echo -e "\nThis script should be run from your Firefox profile directory.\n"
|
||||||
echo "It will remove any entries from prefs.js that also exist in user.js."
|
echo "It will remove any entries from prefs.js that also exist in user.js."
|
||||||
echo "This will allow inactive preferences to be reset to their default values."
|
echo "This will allow inactive preferences to be reset to their default values."
|
||||||
echo -e "\nThis Firefox profile shouldn't be in use during the process.\n"
|
echo -e "\nThis Firefox profile shouldn't be in use during the process.\n"
|
||||||
|
|
||||||
|
[ "$1" == '-s' ] && fStart
|
||||||
|
|
||||||
select option in Start Help Exit; do
|
select option in Start Help Exit; do
|
||||||
case $option in
|
case $option in
|
||||||
Start)
|
Start)
|
||||||
if [ ! -e user.js ]; then
|
fStart
|
||||||
fQuit 1 "user.js not found in the current directory."
|
|
||||||
elif [ ! -e prefs.js ]; then
|
|
||||||
fQuit 1 "prefs.js not found in the current directory."
|
|
||||||
fi
|
|
||||||
|
|
||||||
fFF_check
|
|
||||||
bakfile="prefs.js.backup.$(date +"%Y-%m-%d_%H%M")"
|
|
||||||
mv prefs.js "${bakfile}" || fQuit 1 "Operation aborted.\nReason: Could not create backup file $bakfile"
|
|
||||||
echo -e "\nprefs.js backed up: $bakfile"
|
|
||||||
echo "Cleaning prefs.js..."
|
|
||||||
fClean "$bakfile"
|
|
||||||
fQuit 0 "All done!"
|
|
||||||
;;
|
;;
|
||||||
Help)
|
Help)
|
||||||
|
fUsage
|
||||||
echo -e "\nThis script creates a backup of your prefs.js file before doing anything."
|
echo -e "\nThis script creates a backup of your prefs.js file before doing anything."
|
||||||
echo -e "It should be safe, but you can follow these steps if something goes wrong:\n"
|
echo -e "It should be safe, but you can follow these steps if something goes wrong:\n"
|
||||||
echo "1. Make sure Firefox is closed."
|
echo "1. Make sure Firefox is closed."
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
/***
|
/***
|
||||||
This will reset the preferences that have been removed completely from the arkenfox user.js.
|
This will reset the preferences that have been removed completely from the arkenfox user.js.
|
||||||
|
|
||||||
Last updated: 07-Apr-2021
|
Last updated: 25-May-2021
|
||||||
|
|
||||||
For instructions see:
|
For instructions see:
|
||||||
https://github.com/arkenfox/user.js/wiki/3.1-Resetting-Inactive-Prefs-[Scripts]
|
https://github.com/arkenfox/user.js/wiki/3.1-Resetting-Inactive-Prefs-[Scripts]
|
||||||
@@ -127,7 +127,6 @@
|
|||||||
'browser.cache.disk.smart_size.enabled',
|
'browser.cache.disk.smart_size.enabled',
|
||||||
'browser.cache.disk.smart_size.first_run',
|
'browser.cache.disk.smart_size.first_run',
|
||||||
'browser.cache.offline.insecure.enable',
|
'browser.cache.offline.insecure.enable',
|
||||||
'browser.safebrowsing.downloads.remote.url',
|
|
||||||
'browser.safebrowsing.provider.google.reportMalwareMistakeURL',
|
'browser.safebrowsing.provider.google.reportMalwareMistakeURL',
|
||||||
'browser.safebrowsing.provider.google.reportPhishMistakeURL',
|
'browser.safebrowsing.provider.google.reportPhishMistakeURL',
|
||||||
'browser.safebrowsing.provider.google.reportURL',
|
'browser.safebrowsing.provider.google.reportURL',
|
||||||
@@ -178,7 +177,6 @@
|
|||||||
'browser.safebrowsing.provider.mozilla.updateURL',
|
'browser.safebrowsing.provider.mozilla.updateURL',
|
||||||
'browser.urlbar.userMadeSearchSuggestionsChoice',
|
'browser.urlbar.userMadeSearchSuggestionsChoice',
|
||||||
'privacy.trackingprotection.annotate_channels',
|
'privacy.trackingprotection.annotate_channels',
|
||||||
'privacy.trackingprotection.enabled',
|
|
||||||
'privacy.trackingprotection.lower_network_priority',
|
'privacy.trackingprotection.lower_network_priority',
|
||||||
'privacy.trackingprotection.pbmode.enabled',
|
'privacy.trackingprotection.pbmode.enabled',
|
||||||
'services.blocklist.addons.collection',
|
'services.blocklist.addons.collection',
|
||||||
@@ -238,6 +236,8 @@
|
|||||||
'browser.send_pings.require_same_host',
|
'browser.send_pings.require_same_host',
|
||||||
/* 88-beta */
|
/* 88-beta */
|
||||||
'webgl.min_capability_mode',
|
'webgl.min_capability_mode',
|
||||||
|
/* 89-beta */
|
||||||
|
'security.ssl.enable_ocsp_stapling',
|
||||||
/* reset parrot: check your open about:config after running the script */
|
/* reset parrot: check your open about:config after running the script */
|
||||||
'_user.js.parrot'
|
'_user.js.parrot'
|
||||||
]
|
]
|
||||||
|
|||||||
+2
-2
@@ -2,7 +2,7 @@
|
|||||||
|
|
||||||
## arkenfox user.js updater for macOS and Linux
|
## arkenfox user.js updater for macOS and Linux
|
||||||
|
|
||||||
## version: 3.0
|
## version: 3.2
|
||||||
## Author: Pat Johnson (@overdodactyl)
|
## Author: Pat Johnson (@overdodactyl)
|
||||||
## Additional contributors: @earthlng, @ema-pe, @claustromaniac
|
## Additional contributors: @earthlng, @ema-pe, @claustromaniac
|
||||||
|
|
||||||
@@ -236,7 +236,7 @@ add_override () {
|
|||||||
}
|
}
|
||||||
|
|
||||||
remove_comments () { # expects 2 arguments: from-file and to-file
|
remove_comments () { # expects 2 arguments: from-file and to-file
|
||||||
sed -e 's/^[[:space:]]*\/\/.*$//' -e '/^\/\*/,/\*\//d' -e '/^[[:space:]]*$/d' -e 's/);[[:space:]]*\/\/.*/);/' "$1" > "$2"
|
sed -e '/^\/\*.*\*\/[[:space:]]*$/d' -e '/^\/\*/,/\*\//d' -e 's|^[[:space:]]*//.*$||' -e '/^[[:space:]]*$/d' -e 's|);[[:space:]]*//.*|);|' "$1" > "$2"
|
||||||
}
|
}
|
||||||
|
|
||||||
# Applies latest version of user.js and any custom overrides
|
# Applies latest version of user.js and any custom overrides
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
/******
|
/******
|
||||||
* name: arkenfox user.js
|
* name: arkenfox user.js
|
||||||
* date: 23 April 2021
|
* date: 15 June 2021
|
||||||
* version 88
|
* version 89
|
||||||
* url: https://github.com/arkenfox/user.js
|
* url: https://github.com/arkenfox/user.js
|
||||||
* license: MIT: https://github.com/arkenfox/user.js/blob/master/LICENSE.txt
|
* license: MIT: https://github.com/arkenfox/user.js/blob/master/LICENSE.txt
|
||||||
|
|
||||||
@@ -38,6 +38,7 @@
|
|||||||
- If you are not using arkenfox v78... (not a definitive list)
|
- If you are not using arkenfox v78... (not a definitive list)
|
||||||
- 1244: HTTPS-Only mode is enabled
|
- 1244: HTTPS-Only mode is enabled
|
||||||
- 1401: document fonts is inactive as it is now covered by RFP in FF80+
|
- 1401: document fonts is inactive as it is now covered by RFP in FF80+
|
||||||
|
- 2626: non-native widget theme is enforced
|
||||||
- 4600: some prefs may apply even if you use RFP
|
- 4600: some prefs may apply even if you use RFP
|
||||||
- 9999: switch the appropriate deprecated section(s) back on
|
- 9999: switch the appropriate deprecated section(s) back on
|
||||||
|
|
||||||
@@ -116,7 +117,7 @@ user_pref("browser.newtabpage.activity-stream.telemetry", false);
|
|||||||
/* 0105b: disable Activity Stream 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.newtabpage.activity-stream.feeds.snippets", false);
|
user_pref("browser.newtabpage.activity-stream.feeds.snippets", false); // [DEFAULT: false FF89+]
|
||||||
/* 0105c: disable Activity Stream Top Stories, Pocket-based and/or sponsored content ***/
|
/* 0105c: disable Activity Stream 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);
|
||||||
@@ -200,10 +201,6 @@ user_pref("app.update.auto", false);
|
|||||||
/* 0308: disable search engine updates (e.g. OpenSearch)
|
/* 0308: disable search engine updates (e.g. OpenSearch)
|
||||||
* [NOTE] This does not affect Mozilla's built-in or Web Extension search engines ***/
|
* [NOTE] This does not affect Mozilla's built-in or Web Extension search engines ***/
|
||||||
user_pref("browser.search.update", false);
|
user_pref("browser.search.update", false);
|
||||||
/* 0309: disable sending Flash crash reports ***/
|
|
||||||
user_pref("dom.ipc.plugins.flash.subprocess.crashreporter.enabled", false);
|
|
||||||
/* 0310: disable sending the URL of the website where a plugin crashed ***/
|
|
||||||
user_pref("dom.ipc.plugins.reportCrashURL", false);
|
|
||||||
/* 0320: disable about:addons' Recommendations pane (uses Google Analytics) ***/
|
/* 0320: disable about:addons' Recommendations pane (uses Google Analytics) ***/
|
||||||
user_pref("extensions.getAddons.showPane", false); // [HIDDEN PREF]
|
user_pref("extensions.getAddons.showPane", false); // [HIDDEN PREF]
|
||||||
/* 0321: disable recommendations in about:addons' Extensions and Themes panes [FF68+] ***/
|
/* 0321: disable recommendations in about:addons' Extensions and Themes panes [FF68+] ***/
|
||||||
@@ -277,9 +274,9 @@ user_pref("extensions.blocklist.enabled", true); // [DEFAULT: true]
|
|||||||
Firefox also takes measures such as striping out identifying parameters and since SBv4 (FF57+)
|
Firefox also takes measures such as striping out identifying parameters and since SBv4 (FF57+)
|
||||||
doesn't even use cookies. (#Turn on browser.safebrowsing.debug to monitor this activity)
|
doesn't even use cookies. (#Turn on browser.safebrowsing.debug to monitor this activity)
|
||||||
|
|
||||||
#Required reading [#] https://feeding.cloud.geek.nz/posts/how-safe-browsing-works-in-firefox/
|
[1] https://feeding.cloud.geek.nz/posts/how-safe-browsing-works-in-firefox/
|
||||||
[1] https://wiki.mozilla.org/Security/Safe_Browsing
|
[2] https://wiki.mozilla.org/Security/Safe_Browsing
|
||||||
[2] https://support.mozilla.org/en-US/kb/how-does-phishing-and-malware-protection-work
|
[3] https://support.mozilla.org/en-US/kb/how-does-phishing-and-malware-protection-work
|
||||||
***/
|
***/
|
||||||
/* 0410: disable SB (Safe Browsing)
|
/* 0410: disable SB (Safe Browsing)
|
||||||
* [WARNING] Do this at your own risk! These are the master switches.
|
* [WARNING] Do this at your own risk! These are the master switches.
|
||||||
@@ -312,8 +309,6 @@ user_pref("browser.safebrowsing.downloads.remote.url", "");
|
|||||||
built-in features to Firefox, that are hidden from the about:addons UI.
|
built-in features to Firefox, that are hidden from the about:addons UI.
|
||||||
To view your System Add-ons go to about:support, they are listed under "Firefox Features"
|
To view your System Add-ons go to about:support, they are listed under "Firefox Features"
|
||||||
|
|
||||||
Some System Add-ons have no on-off prefs. Instead you can manually remove them. Note that app
|
|
||||||
updates will restore them. They may also be updated and possibly restored automatically (see 0505)
|
|
||||||
* Portable: "...\App\Firefox64\browser\features\" (or "App\Firefox\etc" for 32bit)
|
* Portable: "...\App\Firefox64\browser\features\" (or "App\Firefox\etc" for 32bit)
|
||||||
* Windows: "...\Program Files\Mozilla\browser\features" (or "Program Files (X86)\etc" for 32bit)
|
* Windows: "...\Program Files\Mozilla\browser\features" (or "Program Files (X86)\etc" for 32bit)
|
||||||
* Mac: "...\Applications\Firefox\Contents\Resources\browser\features\"
|
* Mac: "...\Applications\Firefox\Contents\Resources\browser\features\"
|
||||||
@@ -321,7 +316,7 @@ user_pref("browser.safebrowsing.downloads.remote.url", "");
|
|||||||
* Linux: "/usr/lib/firefox/browser/features" (or similar)
|
* Linux: "/usr/lib/firefox/browser/features" (or similar)
|
||||||
|
|
||||||
[1] https://firefox-source-docs.mozilla.org/toolkit/mozapps/extensions/addon-manager/SystemAddons.html
|
[1] https://firefox-source-docs.mozilla.org/toolkit/mozapps/extensions/addon-manager/SystemAddons.html
|
||||||
[2] https://dxr.mozilla.org/mozilla-central/source/browser/extensions
|
[2] https://searchfox.org/mozilla-central/source/browser/extensions
|
||||||
***/
|
***/
|
||||||
user_pref("_user.js.parrot", "0500 syntax error: the parrot's cashed in 'is chips!");
|
user_pref("_user.js.parrot", "0500 syntax error: the parrot's cashed in 'is chips!");
|
||||||
/* 0503: disable Normandy/Shield [FF60+]
|
/* 0503: disable Normandy/Shield [FF60+]
|
||||||
@@ -431,8 +426,7 @@ user_pref("network.gio.supported-protocols", ""); // [HIDDEN PREF]
|
|||||||
your environment (no unwanted eyeballs), your device (restricted access), your device's
|
your environment (no unwanted eyeballs), your device (restricted access), your device's
|
||||||
unattended state (locked, encrypted, forensic hardened). Likewise, you may want to check
|
unattended state (locked, encrypted, forensic hardened). Likewise, you may want to check
|
||||||
the items cleared on shutdown in section 2800.
|
the items cleared on shutdown in section 2800.
|
||||||
[NOTE] The urlbar is also commonly referred to as the location bar and address bar
|
[1] https://xkcd.com/538/
|
||||||
#Required reading [#] https://xkcd.com/538/
|
|
||||||
***/
|
***/
|
||||||
user_pref("_user.js.parrot", "0800 syntax error: the parrot's ceased to be!");
|
user_pref("_user.js.parrot", "0800 syntax error: the parrot's ceased to be!");
|
||||||
/* 0801: disable location bar using search
|
/* 0801: disable location bar using search
|
||||||
@@ -663,10 +657,9 @@ user_pref("security.tls.version.enable-deprecated", false);
|
|||||||
user_pref("security.tls.enable_0rtt_data", false);
|
user_pref("security.tls.enable_0rtt_data", false);
|
||||||
|
|
||||||
/** OCSP (Online Certificate Status Protocol)
|
/** OCSP (Online Certificate Status Protocol)
|
||||||
#Required reading [#] https://scotthelme.co.uk/revocation-is-broken/ ***/
|
[1] https://scotthelme.co.uk/revocation-is-broken/
|
||||||
/* 1210: enable OCSP Stapling
|
[2] https://blog.mozilla.org/security/2013/07/29/ocsp-stapling-in-firefox/
|
||||||
* [1] https://blog.mozilla.org/security/2013/07/29/ocsp-stapling-in-firefox/ ***/
|
***/
|
||||||
user_pref("security.ssl.enable_ocsp_stapling", true);
|
|
||||||
/* 1211: control when to use OCSP fetching (to confirm current validity of certificates)
|
/* 1211: control when to use OCSP fetching (to confirm current validity of certificates)
|
||||||
* 0=disabled, 1=enabled (default), 2=enabled for EV certificates only
|
* 0=disabled, 1=enabled (default), 2=enabled for EV certificates only
|
||||||
* OCSP (non-stapled) leaks information about the sites you visit to the CA (cert authority)
|
* OCSP (non-stapled) leaks information about the sites you visit to the CA (cert authority)
|
||||||
@@ -724,9 +717,6 @@ user_pref("security.pki.crlite_mode", 2);
|
|||||||
user_pref("security.mixed_content.block_active_content", true); // [DEFAULT: true]
|
user_pref("security.mixed_content.block_active_content", true); // [DEFAULT: true]
|
||||||
/* 1241: disable insecure passive content (such as images) on https pages [SETUP-WEB] ***/
|
/* 1241: disable insecure passive content (such as images) on https pages [SETUP-WEB] ***/
|
||||||
user_pref("security.mixed_content.block_display_content", true);
|
user_pref("security.mixed_content.block_display_content", true);
|
||||||
/* 1243: block unencrypted requests from Flash on encrypted pages to mitigate MitM attacks [FF59+]
|
|
||||||
* [1] https://bugzilla.mozilla.org/1190623 ***/
|
|
||||||
user_pref("security.mixed_content.block_object_subrequest", true);
|
|
||||||
/* 1244: enable HTTPS-Only mode [FF76+]
|
/* 1244: enable HTTPS-Only mode [FF76+]
|
||||||
* When "https_only_mode" (all windows) is true, "https_only_mode_pbm" (private windows only) is ignored
|
* When "https_only_mode" (all windows) is true, "https_only_mode_pbm" (private windows only) is ignored
|
||||||
* [SETTING] to add site exceptions: Padlock>HTTPS-Only mode>On/Off/Off temporarily
|
* [SETTING] to add site exceptions: Padlock>HTTPS-Only mode>On/Off/Off temporarily
|
||||||
@@ -824,7 +814,7 @@ user_pref("gfx.font_rendering.graphite.enabled", false);
|
|||||||
scheme+host+port+path: https://example.com:8888/foo/bar.html
|
scheme+host+port+path: https://example.com:8888/foo/bar.html
|
||||||
scheme+host+port: https://example.com:8888
|
scheme+host+port: https://example.com:8888
|
||||||
---
|
---
|
||||||
#Required reading [#] https://feeding.cloud.geek.nz/posts/tweaking-referrer-for-privacy-in-firefox/
|
[1] https://feeding.cloud.geek.nz/posts/tweaking-referrer-for-privacy-in-firefox/
|
||||||
***/
|
***/
|
||||||
user_pref("_user.js.parrot", "1600 syntax error: the parrot rests in peace!");
|
user_pref("_user.js.parrot", "1600 syntax error: the parrot rests in peace!");
|
||||||
/* 1601: ALL: control when images/links send a referer
|
/* 1601: ALL: control when images/links send a referer
|
||||||
@@ -835,7 +825,7 @@ user_pref("_user.js.parrot", "1600 syntax error: the parrot rests in peace!");
|
|||||||
// user_pref("network.http.referer.trimmingPolicy", 0);
|
// user_pref("network.http.referer.trimmingPolicy", 0);
|
||||||
/* 1603: CROSS ORIGIN: control when to send a referer
|
/* 1603: CROSS ORIGIN: control when to send a referer
|
||||||
* 0=always (default), 1=only if base domains match, 2=only if hosts match
|
* 0=always (default), 1=only if base domains match, 2=only if hosts match
|
||||||
* [SETUP-WEB] Known to cause issues with older modems/routers and some sites e.g vimeo, icloud ***/
|
* [SETUP-WEB] Known to cause issues with older modems/routers and some sites e.g vimeo, icloud, instagram ***/
|
||||||
user_pref("network.http.referer.XOriginPolicy", 2);
|
user_pref("network.http.referer.XOriginPolicy", 2);
|
||||||
/* 1604: CROSS ORIGIN: control the amount of information to send [FF52+]
|
/* 1604: CROSS ORIGIN: control the amount of information to send [FF52+]
|
||||||
* 0=send full URI (default), 1=scheme+host+port+path, 2=scheme+host+port ***/
|
* 0=send full URI (default), 1=scheme+host+port+path, 2=scheme+host+port ***/
|
||||||
@@ -884,11 +874,6 @@ user_pref("privacy.userContext.enabled", true);
|
|||||||
|
|
||||||
/*** [SECTION 1800]: PLUGINS ***/
|
/*** [SECTION 1800]: PLUGINS ***/
|
||||||
user_pref("_user.js.parrot", "1800 syntax error: the parrot's pushing up daisies!");
|
user_pref("_user.js.parrot", "1800 syntax error: the parrot's pushing up daisies!");
|
||||||
/* 1803: disable Flash plugin
|
|
||||||
* 0=deactivated, 1=ask, 2=enabled
|
|
||||||
* ESR52.x is the last branch to *fully* support NPAPI, FF52+ stable only supports Flash
|
|
||||||
* [NOTE] You can still override individual sites via site permissions ***/
|
|
||||||
user_pref("plugin.state.flash", 0);
|
|
||||||
/* 1820: disable GMP (Gecko Media Plugins)
|
/* 1820: disable GMP (Gecko Media Plugins)
|
||||||
* [1] https://wiki.mozilla.org/GeckoMediaPlugins ***/
|
* [1] https://wiki.mozilla.org/GeckoMediaPlugins ***/
|
||||||
// user_pref("media.gmp-provider.enabled", false);
|
// user_pref("media.gmp-provider.enabled", false);
|
||||||
@@ -1194,6 +1179,12 @@ user_pref("privacy.window.name.update.enabled", true); // [DEFAULT: true FF86+]
|
|||||||
/* 2625: disable bypassing 3rd party extension install prompts [FF82+]
|
/* 2625: disable bypassing 3rd party extension install prompts [FF82+]
|
||||||
* [1] https://bugzilla.mozilla.org/buglist.cgi?bug_id=1659530,1681331 ***/
|
* [1] https://bugzilla.mozilla.org/buglist.cgi?bug_id=1659530,1681331 ***/
|
||||||
user_pref("extensions.postDownloadThirdPartyPrompt", false);
|
user_pref("extensions.postDownloadThirdPartyPrompt", false);
|
||||||
|
/* 2626: enforce non-native widget theme
|
||||||
|
* Security: removes/reduces system API calls, e.g. win32k API [1]
|
||||||
|
* Fingerprinting: provides a uniform look and feel across platforms [2]
|
||||||
|
* [1] https://bugzilla.mozilla.org/1381938
|
||||||
|
* [2] https://bugzilla.mozilla.org/1411425 ***/
|
||||||
|
user_pref("widget.non-native-theme.enabled", true); // [DEFAULT: true FF89+]
|
||||||
|
|
||||||
/** DOWNLOADS ***/
|
/** DOWNLOADS ***/
|
||||||
/* 2650: discourage downloading to desktop
|
/* 2650: discourage downloading to desktop
|
||||||
@@ -1264,8 +1255,8 @@ user_pref("_user.js.parrot", "2700 syntax error: the parrot's joined the bleedin
|
|||||||
user_pref("network.cookie.cookieBehavior", 1);
|
user_pref("network.cookie.cookieBehavior", 1);
|
||||||
user_pref("browser.contentblocking.category", "custom");
|
user_pref("browser.contentblocking.category", "custom");
|
||||||
/* 2702: set third-party cookies (if enabled, see 2701) to session-only
|
/* 2702: set third-party cookies (if enabled, see 2701) to session-only
|
||||||
[NOTE] .sessionOnly overrides .nonsecureSessionOnly except when .sessionOnly=false and
|
* [NOTE] .sessionOnly overrides .nonsecureSessionOnly except when .sessionOnly=false and
|
||||||
.nonsecureSessionOnly=true. This allows you to keep HTTPS cookies, but session-only HTTP ones
|
* .nonsecureSessionOnly=true. This allows you to keep HTTPS cookies, but session-only HTTP ones
|
||||||
* [1] https://feeding.cloud.geek.nz/posts/tweaking-cookies-for-privacy-in-firefox/ ***/
|
* [1] https://feeding.cloud.geek.nz/posts/tweaking-cookies-for-privacy-in-firefox/ ***/
|
||||||
user_pref("network.cookie.thirdparty.sessionOnly", true);
|
user_pref("network.cookie.thirdparty.sessionOnly", true);
|
||||||
user_pref("network.cookie.thirdparty.nonsecureSessionOnly", true); // [FF58+]
|
user_pref("network.cookie.thirdparty.nonsecureSessionOnly", true); // [FF58+]
|
||||||
@@ -1422,7 +1413,7 @@ user_pref("privacy.firstparty.isolate", true);
|
|||||||
FF56+
|
FF56+
|
||||||
1369303 - spoof/disable performance API (see 4602, 4603)
|
1369303 - spoof/disable performance API (see 4602, 4603)
|
||||||
1333651 - spoof User Agent & Navigator API (see section 4700)
|
1333651 - spoof User Agent & Navigator API (see section 4700)
|
||||||
JS: FF78+ the version is spoofed as 78, and the OS as Windows 10, OS 10.15, Android 9, or Linux
|
JS: FF78+ the version is spoofed as ESR, and the OS as Windows 10, OS 10.15, Android 9 (FF91+ as 10), or Linux
|
||||||
HTTP Headers: spoofed as Windows or Android
|
HTTP Headers: spoofed as Windows or Android
|
||||||
1369319 - disable device sensor API (see 4604)
|
1369319 - disable device sensor API (see 4604)
|
||||||
1369357 - disable site specific zoom (see 4605)
|
1369357 - disable site specific zoom (see 4605)
|
||||||
@@ -1463,7 +1454,7 @@ user_pref("privacy.firstparty.isolate", true);
|
|||||||
1607316 - spoof pointer as coarse and hover as none (ANDROID) (FF74+)
|
1607316 - spoof pointer as coarse and hover as none (ANDROID) (FF74+)
|
||||||
FF78+
|
FF78+
|
||||||
1621433 - randomize canvas (previously FF58+ returned an all-white canvas) (FF78+)
|
1621433 - randomize canvas (previously FF58+ returned an all-white canvas) (FF78+)
|
||||||
1653987 - limit font visibility to bundled and "Base Fonts" (see 4618) (non-ANDROID) (FF80+)
|
1653987 - limit font visibility to bundled and "Base Fonts" (see 4618) (Windows, Mac, some Linux) (FF80+)
|
||||||
1461454 - spoof smooth=true and powerEfficient=false for supported media in MediaCapabilities (FF82+)
|
1461454 - spoof smooth=true and powerEfficient=false for supported media in MediaCapabilities (FF82+)
|
||||||
***/
|
***/
|
||||||
user_pref("_user.js.parrot", "4500 syntax error: the parrot's popped 'is clogs");
|
user_pref("_user.js.parrot", "4500 syntax error: the parrot's popped 'is clogs");
|
||||||
@@ -1508,20 +1499,18 @@ user_pref("ui.prefersReducedMotion", 1); // [HIDDEN PREF]
|
|||||||
user_pref("_user.js.parrot", "4600 syntax error: the parrot's crossed the Jordan");
|
user_pref("_user.js.parrot", "4600 syntax error: the parrot's crossed the Jordan");
|
||||||
/* [SETUP-non-RFP] Non-RFP users replace the * with a slash on this line to enable these
|
/* [SETUP-non-RFP] Non-RFP users replace the * with a slash on this line to enable these
|
||||||
// FF55+
|
// FF55+
|
||||||
// 4601: [2514] spoof (or limit?) number of CPU cores [FF48+]
|
// 4601: [2514] spoof number of CPU cores [FF48+]
|
||||||
// [NOTE] *may* affect core chrome/Firefox performance, will affect content.
|
|
||||||
// [1] https://bugzilla.mozilla.org/1008453
|
// [1] https://bugzilla.mozilla.org/1008453
|
||||||
// [2] https://gitlab.torproject.org/tpo/applications/tor-browser/-/issues/21675
|
// [2] https://gitlab.torproject.org/tpo/applications/tor-browser/-/issues/21675
|
||||||
// [3] https://gitlab.torproject.org/tpo/applications/tor-browser/-/issues/22127
|
// [3] https://gitlab.torproject.org/tpo/applications/tor-browser/-/issues/22127
|
||||||
// [4] https://html.spec.whatwg.org/multipage/workers.html#navigator.hardwareconcurrency
|
// [4] https://html.spec.whatwg.org/multipage/workers.html#navigator.hardwareconcurrency
|
||||||
// user_pref("dom.maxHardwareConcurrency", 2);
|
user_pref("dom.maxHardwareConcurrency", 2);
|
||||||
// * * * /
|
|
||||||
// FF56+
|
// FF56+
|
||||||
// 4602: [2411] disable resource/navigation timing
|
// 4602: [2411] disable resource/navigation timing
|
||||||
user_pref("dom.enable_resource_timing", false);
|
user_pref("dom.enable_resource_timing", false);
|
||||||
// 4603: [2412] disable timing attacks
|
// 4603: [2412] disable timing attacks
|
||||||
// [1] https://wiki.mozilla.org/Security/Reviews/Firefox/NavigationTimingAPI
|
// [1] https://wiki.mozilla.org/Security/Reviews/Firefox/NavigationTimingAPI
|
||||||
user_pref("dom.enable_performance", false);
|
// user_pref("dom.enable_performance", false);
|
||||||
// 4604: [2512] disable device sensor API
|
// 4604: [2512] disable device sensor API
|
||||||
// Optional protection depending on your device
|
// Optional protection depending on your device
|
||||||
// [1] https://gitlab.torproject.org/tpo/applications/tor-browser/-/issues/15758
|
// [1] https://gitlab.torproject.org/tpo/applications/tor-browser/-/issues/15758
|
||||||
@@ -1548,7 +1537,6 @@ user_pref("dom.netinfo.enabled", false); // [DEFAULT: true on Android]
|
|||||||
// [2] https://developer.mozilla.org/docs/Web/API/SpeechSynthesis
|
// [2] https://developer.mozilla.org/docs/Web/API/SpeechSynthesis
|
||||||
// [3] https://wiki.mozilla.org/HTML5_Speech_API
|
// [3] https://wiki.mozilla.org/HTML5_Speech_API
|
||||||
user_pref("media.webspeech.synth.enabled", false);
|
user_pref("media.webspeech.synth.enabled", false);
|
||||||
// * * * /
|
|
||||||
// FF57+
|
// FF57+
|
||||||
// 4610: [2506] disable video statistics - JS performance fingerprinting [FF25+]
|
// 4610: [2506] disable video statistics - JS performance fingerprinting [FF25+]
|
||||||
// [1] https://gitlab.torproject.org/tpo/applications/tor-browser/-/issues/15757
|
// [1] https://gitlab.torproject.org/tpo/applications/tor-browser/-/issues/15757
|
||||||
@@ -1561,19 +1549,16 @@ user_pref("media.video_stats.enabled", false);
|
|||||||
// [1] https://developer.mozilla.org/docs/Web/API/Touch_events
|
// [1] https://developer.mozilla.org/docs/Web/API/Touch_events
|
||||||
// [2] https://gitlab.torproject.org/tpo/applications/tor-browser/-/issues/10286
|
// [2] https://gitlab.torproject.org/tpo/applications/tor-browser/-/issues/10286
|
||||||
// user_pref("dom.w3c_touch_events.enabled", 0);
|
// user_pref("dom.w3c_touch_events.enabled", 0);
|
||||||
// * * * /
|
|
||||||
// FF59+
|
// FF59+
|
||||||
// 4612: [2511] disable MediaDevices change detection [FF51+]
|
// 4612: [2511] disable MediaDevices change detection [FF51+]
|
||||||
// [1] https://developer.mozilla.org/docs/Web/Events/devicechange
|
// [1] https://developer.mozilla.org/docs/Web/Events/devicechange
|
||||||
// [2] https://developer.mozilla.org/docs/Web/API/MediaDevices/ondevicechange
|
// [2] https://developer.mozilla.org/docs/Web/API/MediaDevices/ondevicechange
|
||||||
user_pref("media.ondevicechange.enabled", false);
|
user_pref("media.ondevicechange.enabled", false);
|
||||||
// * * * /
|
|
||||||
// FF60+
|
// FF60+
|
||||||
// 4613: [2011] disable WebGL debug info being available to websites
|
// 4613: [2011] disable WebGL debug info being available to websites
|
||||||
// [1] https://bugzilla.mozilla.org/1171228
|
// [1] https://bugzilla.mozilla.org/1171228
|
||||||
// [2] https://developer.mozilla.org/docs/Web/API/WEBGL_debug_renderer_info
|
// [2] https://developer.mozilla.org/docs/Web/API/WEBGL_debug_renderer_info
|
||||||
user_pref("webgl.enable-debug-renderer-info", false);
|
user_pref("webgl.enable-debug-renderer-info", false);
|
||||||
// * * * /
|
|
||||||
// FF63+
|
// FF63+
|
||||||
// 4614: enforce prefers-reduced-motion as no-preference [FF63+] [RESTART]
|
// 4614: enforce prefers-reduced-motion as no-preference [FF63+] [RESTART]
|
||||||
// 0=no-preference, 1=reduce
|
// 0=no-preference, 1=reduce
|
||||||
@@ -1583,7 +1568,6 @@ user_pref("ui.prefersReducedMotion", 0); // [HIDDEN PREF]
|
|||||||
// [1] https://developer.mozilla.org/en-US/docs/Web/API/PointerEvent
|
// [1] https://developer.mozilla.org/en-US/docs/Web/API/PointerEvent
|
||||||
// [-] https://bugzilla.mozilla.org/1688105
|
// [-] https://bugzilla.mozilla.org/1688105
|
||||||
user_pref("dom.w3c_pointer_events.enabled", false);
|
user_pref("dom.w3c_pointer_events.enabled", false);
|
||||||
// * * * /
|
|
||||||
// FF67+
|
// FF67+
|
||||||
// 4616: [2618] disable exposure of system colors to CSS or canvas [FF44+]
|
// 4616: [2618] disable exposure of system colors to CSS or canvas [FF44+]
|
||||||
// [NOTE] See second listed bug: may cause black on black for elements with undefined colors
|
// [NOTE] See second listed bug: may cause black on black for elements with undefined colors
|
||||||
@@ -1600,7 +1584,6 @@ user_pref("ui.systemUsesDarkTheme", 0); // [HIDDEN PREF]
|
|||||||
// [NOTE] Bundled fonts are auto-allowed
|
// [NOTE] Bundled fonts are auto-allowed
|
||||||
// [1] https://searchfox.org/mozilla-central/search?path=StandardFonts*.inc
|
// [1] https://searchfox.org/mozilla-central/search?path=StandardFonts*.inc
|
||||||
user_pref("layout.css.font-visibility.level", 1);
|
user_pref("layout.css.font-visibility.level", 1);
|
||||||
// * * * /
|
|
||||||
// ***/
|
// ***/
|
||||||
|
|
||||||
/*** [SECTION 4700]: RFP ALTERNATIVES (USER AGENT SPOOFING)
|
/*** [SECTION 4700]: RFP ALTERNATIVES (USER AGENT SPOOFING)
|
||||||
@@ -1701,6 +1684,23 @@ user_pref("browser.download.hide_plugins_without_extensions", false);
|
|||||||
// 0105d: disable Activity Stream recent Highlights in the Library [FF57+]
|
// 0105d: disable Activity Stream recent Highlights in the Library [FF57+]
|
||||||
// [-] https://bugzilla.mozilla.org/1689405
|
// [-] https://bugzilla.mozilla.org/1689405
|
||||||
// user_pref("browser.library.activity-stream.enabled", false);
|
// user_pref("browser.library.activity-stream.enabled", false);
|
||||||
|
// FF89
|
||||||
|
// 0309: disable sending Flash crash reports
|
||||||
|
// [-] https://bugzilla.mozilla.org/1682030 [underlying NPAPI code removed]
|
||||||
|
user_pref("dom.ipc.plugins.flash.subprocess.crashreporter.enabled", false);
|
||||||
|
// 0310: disable sending the URL of the website where a plugin crashed
|
||||||
|
// [-] https://bugzilla.mozilla.org/1682030 [underlying NPAPI code removed]
|
||||||
|
user_pref("dom.ipc.plugins.reportCrashURL", false);
|
||||||
|
// 1243: block unencrypted requests from Flash on encrypted pages to mitigate MitM attacks [FF59+]
|
||||||
|
// [1] https://bugzilla.mozilla.org/1190623
|
||||||
|
// [-] https://bugzilla.mozilla.org/1682030 [underlying NPAPI code removed]
|
||||||
|
user_pref("security.mixed_content.block_object_subrequest", true);
|
||||||
|
// 1803: disable Flash plugin
|
||||||
|
// 0=deactivated, 1=ask, 2=enabled
|
||||||
|
// ESR52.x is the last branch to *fully* support NPAPI, FF52+ stable only supports Flash
|
||||||
|
// [NOTE] You can still override individual sites via site permissions
|
||||||
|
// [-] https://bugzilla.mozilla.org/1682030 [underlying NPAPI code removed]
|
||||||
|
user_pref("plugin.state.flash", 0); // [DEFAULT: 1]
|
||||||
// ***/
|
// ***/
|
||||||
|
|
||||||
/* END: internal custom pref to test for syntax errors ***/
|
/* END: internal custom pref to test for syntax errors ***/
|
||||||
|
|||||||
Reference in New Issue
Block a user