1
0
mirror of https://github.com/yokoffing/Betterfox.git synced 2026-06-12 15:40:48 +05:30

Compare commits

..

2 Commits

Author SHA1 Message Date
HJ 0334bea972 v.117 (#225) 2023-09-18 12:16:13 -04:00
HJ 726f4d4a6b add backup to Getting Started 2023-09-08 14:38:29 -04:00
6 changed files with 74 additions and 96 deletions
+41 -72
View File
@@ -3,7 +3,7 @@
* Fastfox * * Fastfox *
* "Non ducor duco" * * "Non ducor duco" *
* priority: speedy browsing * * priority: speedy browsing *
* version: 116 * * version: 117 *
* url: https://github.com/yokoffing/Betterfox * * url: https://github.com/yokoffing/Betterfox *
***************************************************************************************/ ***************************************************************************************/
@@ -71,7 +71,7 @@ user_pref("nglayout.initialpaint.delay_in_oopif", 0); // default=5
// false = reflow pages whenever new data is received // false = reflow pages whenever new data is received
//user_pref("content.notify.ontimer", true); // DEFAULT //user_pref("content.notify.ontimer", true); // DEFAULT
// PREF: notification interval (in microseconds) (to avoid layout thrashing) // PREF: notification interval (in microseconds) to avoid layout thrashing
// When Firefox is loading a page, it periodically reformats // When Firefox is loading a page, it periodically reformats
// or "reflows" the page as it loads. The page displays new elements // or "reflows" the page as it loads. The page displays new elements
// every 0.12 seconds by default. These redraws increase the total page load time. // every 0.12 seconds by default. These redraws increase the total page load time.
@@ -87,13 +87,6 @@ user_pref("nglayout.initialpaint.delay_in_oopif", 0); // default=5
// [3] https://dev.opera.com/articles/efficient-javascript/?page=3#smoothspeed // [3] https://dev.opera.com/articles/efficient-javascript/?page=3#smoothspeed
user_pref("content.notify.interval", 100000); // (.10s); default=120000 (.12s) user_pref("content.notify.interval", 100000); // (.10s); default=120000 (.12s)
// PREF: frequency switch threshold [HIDDEN]
// Raising the value will make the application more responsive at the expense of page load time.
// [1] http://kb.mozillazine.org/Content.switch.threshold
// [2] https://www.reddit.com/r/firefox/comments/11m2yuh/comment/jbjxp8s/?context=3
//user_pref("content.interrupt.parsing", true); // DEFAULT [HIDDEN]
//user_pref("content.switch.threshold", 750000); // DEFAULT [HIDDEN]
// PREF: new tab preload // PREF: new tab preload
// [WARNING] Disabling this may cause a delay when opening a new tab in Firefox. // [WARNING] Disabling this may cause a delay when opening a new tab in Firefox.
// [1] https://wiki.mozilla.org/Tiles/Technical_Documentation#Ping // [1] https://wiki.mozilla.org/Tiles/Technical_Documentation#Ping
@@ -118,16 +111,18 @@ user_pref("content.notify.interval", 100000); // (.10s); default=120000 (.12s)
//user_pref("browser.sessionstore.restore_tabs_lazily", true); // DEFAULT //user_pref("browser.sessionstore.restore_tabs_lazily", true); // DEFAULT
// PREF: disable preSkeletonUI on startup [WINDOWS] // PREF: disable preSkeletonUI on startup [WINDOWS]
user_pref("browser.startup.preXulSkeletonUI", false); // WINDOWS //user_pref("browser.startup.preXulSkeletonUI", false); // WINDOWS
/**************************************************************************** /****************************************************************************
* SECTION: TAB UNLOAD * * SECTION: TAB UNLOAD *
****************************************************************************/ ****************************************************************************/
// PREF: unload tabs on low memory // PREF: unload tabs on low memory
// [ABOUT] about:unloads
// Firefox will detect if your computers memory is running low (less than 200MB) // Firefox will detect if your computers memory is running low (less than 200MB)
// and suspend tabs that you have not used in awhile. // and suspend tabs that you have not used in awhile.
// [1] https://hacks.mozilla.org/2021/10/tab-unloading-in-firefox-93/ // [1] https://support.mozilla.org/en-US/kb/unload-inactive-tabs-save-system-memory-firefox
// [2] https://hacks.mozilla.org/2021/10/tab-unloading-in-firefox-93/
//user_pref("browser.tabs.unloadOnLowMemory", true); // DEFAULT //user_pref("browser.tabs.unloadOnLowMemory", true); // DEFAULT
// PREF: determine when tabs unload [WINDOWS] [LINUX] // PREF: determine when tabs unload [WINDOWS] [LINUX]
@@ -172,7 +167,7 @@ user_pref("layout.css.has-selector.enabled", true);
// PREF: HTML Sanitizer API [NIGHTLY] // PREF: HTML Sanitizer API [NIGHTLY]
// [1] https://developer.mozilla.org/en-US/docs/Web/API/Sanitizer // [1] https://developer.mozilla.org/en-US/docs/Web/API/Sanitizer
// [2] https://caniuse.com/mdn-api_sanitizer // [2] https://caniuse.com/mdn-api_sanitizer
//user_pref("dom.security.sanitizer.enabled", true); user_pref("dom.security.sanitizer.enabled", true);
// PREF: Shadowrealms [NIGHTLY] // PREF: Shadowrealms [NIGHTLY]
// [1] https://github.com/tc39/proposal-shadowrealm/blob/main/explainer.md#introduction // [1] https://github.com/tc39/proposal-shadowrealm/blob/main/explainer.md#introduction
@@ -296,11 +291,11 @@ user_pref("layout.css.has-selector.enabled", true);
// More efficient to keep the browser cache instead of having to // More efficient to keep the browser cache instead of having to
// re-download objects for the websites you visit frequently. // re-download objects for the websites you visit frequently.
// [1] https://www.janbambas.cz/new-firefox-http-cache-enabled/ // [1] https://www.janbambas.cz/new-firefox-http-cache-enabled/
//user_pref("browser.cache.disk.enable", true); // DEFAULT user_pref("browser.cache.disk.enable", false);
//user_pref("browser.cache.disk.smart_size.enabled", false); // force a fixed max cache size on disk //user_pref("browser.cache.disk.smart_size.enabled", false); // force a fixed max cache size on disk
//user_pref("browser.cache.disk.capacity", 8192000); // size of disk cache; default=256000; 1024000 = 1 GB, 2048000=2GB, 5120000=5GB, 8192000=8GB //user_pref("browser.cache.disk.capacity", 5120000); // size of disk cache; default=256000; 1024000 = 1 GB, 2048000=2GB, 5120000=5GB, 8192000=8GB
//user_pref("browser.cache.disk.max_entry_size", 51200); // 51 MB; DEFAULT; maximum size of an object in disk cache //user_pref("browser.cache.disk.max_entry_size", 51200); // 51.2 MB; DEFAULT; maximum size of an object in disk cache
//user_pref("browser.cache.disk.metadata_memory_limit", 10000); // default=250; alt=15360; increase size (in KB) of intermediate memory caching of frequently used metadata (disk cache memory pool) //user_pref("browser.cache.disk.metadata_memory_limit", 750); // default=250; increase size (in KB) of intermediate memory caching of frequently used metadata (disk cache memory pool)
//user_pref("browser.cache.max_shutdown_io_lag", 4); // default=2; number of seconds the cache spends writing pending data and closing files after shutdown has been signalled //user_pref("browser.cache.max_shutdown_io_lag", 4); // default=2; number of seconds the cache spends writing pending data and closing files after shutdown has been signalled
// PREF: specify how long pages are kept before being removed from cache (in hours) // PREF: specify how long pages are kept before being removed from cache (in hours)
@@ -310,7 +305,7 @@ user_pref("layout.css.has-selector.enabled", true);
// [1] https://bugzilla.mozilla.org/show_bug.cgi?id=913808 // [1] https://bugzilla.mozilla.org/show_bug.cgi?id=913808
// [2] https://bugzilla.mozilla.org/show_bug.cgi?id=968101 // [2] https://bugzilla.mozilla.org/show_bug.cgi?id=968101
// [3] https://rockridge.hatenablog.com/entry/2014/09/15/165501 // [3] https://rockridge.hatenablog.com/entry/2014/09/15/165501
//user_pref("browser.cache.frecency_half_life_hours", 24); // default=6 //user_pref("browser.cache.frecency_half_life_hours", 18); // default=6
// PREF: memory cache // PREF: memory cache
// The "automatic" size selection (default) is based on a decade-old table // The "automatic" size selection (default) is based on a decade-old table
@@ -323,9 +318,9 @@ user_pref("layout.css.has-selector.enabled", true);
// [2] https://searchfox.org/mozilla-central/source/netwerk/cache2/CacheObserver.cpp#94-125 // [2] https://searchfox.org/mozilla-central/source/netwerk/cache2/CacheObserver.cpp#94-125
// [3] https://github.com/WaterfoxCo/Waterfox/commit/3fed16932c80a2f6b37d126fe10aed66c7f1c214 // [3] https://github.com/WaterfoxCo/Waterfox/commit/3fed16932c80a2f6b37d126fe10aed66c7f1c214
//user_pref("browser.cache.memory.capacity", -1); // DEFAULT; 1048576=1GB, 2097152=2GB //user_pref("browser.cache.memory.capacity", -1); // DEFAULT; 1048576=1GB, 2097152=2GB
//user_pref("browser.cache.memory.max_entry_size", 5120); // DEFAULT; alt=25600; -1=entries bigger than than 90% of the mem-cache are never cached //user_pref("browser.cache.memory.max_entry_size", 5120); // 5 MB DEFAULT; alt=25600; -1=entries bigger than than 90% of the mem-cache are never cached
// PREF: amount of pages stored in memory for Back/Forward // PREF: amount of Back/Forward cached pages stored in memory for each tab
// Pages that were recently visited are stored in memory in such a way // Pages that were recently visited are stored in memory in such a way
// that they don't have to be re-parsed. This improves performance // that they don't have to be re-parsed. This improves performance
// when pressing Back and Forward. This pref limits the maximum // when pressing Back and Forward. This pref limits the maximum
@@ -334,7 +329,7 @@ user_pref("layout.css.has-selector.enabled", true);
// is no reason for Firefox to keep memory for this. // is no reason for Firefox to keep memory for this.
// -1=determine automatically (8 pages) // -1=determine automatically (8 pages)
// [1] https://kb.mozillazine.org/Browser.sessionhistory.max_total_viewers#Possible_values_and_their_effects // [1] https://kb.mozillazine.org/Browser.sessionhistory.max_total_viewers#Possible_values_and_their_effects
//user_pref("browser.sessionhistory.max_total_viewers", 1); //user_pref("browser.sessionhistory.max_total_viewers", 3);
/**************************************************************************** /****************************************************************************
* SECTION: MEDIA CACHE * * SECTION: MEDIA CACHE *
@@ -398,7 +393,7 @@ user_pref("network.http.max-connections", 1800); // default=900
user_pref("network.http.max-persistent-connections-per-server", 10); // default=6; download connections; anything above 10 is excessive user_pref("network.http.max-persistent-connections-per-server", 10); // default=6; download connections; anything above 10 is excessive
user_pref("network.http.max-urgent-start-excessive-connections-per-host", 5); // default=3 user_pref("network.http.max-urgent-start-excessive-connections-per-host", 5); // default=3
//user_pref("network.http.max-persistent-connections-per-proxy", 48); // default=32 //user_pref("network.http.max-persistent-connections-per-proxy", 48); // default=32
user_pref("network.websocket.max-connections", 400); // default=200 //user_pref("network.websocket.max-connections", 200); // DEFAULT
// PREF: pacing requests [FF23+] // PREF: pacing requests [FF23+]
// Controls how many HTTP requests are sent at a time. // Controls how many HTTP requests are sent at a time.
@@ -413,47 +408,20 @@ user_pref("network.http.pacing.requests.enabled", false);
//user_pref("network.http.pacing.requests.min-parallelism", 10); // default=6 //user_pref("network.http.pacing.requests.min-parallelism", 10); // default=6
//user_pref("network.http.pacing.requests.burst", 14); // default=10 //user_pref("network.http.pacing.requests.burst", 14); // default=10
// Connection Timeouts
// [1] https://searchfox.org/mozilla-esr115/source/modules/libpref/init/all.js#1178
// [2] https://www.catchpoint.com/blog/http-transaction-steps
// PREF: timeout connections if an initial response is not received after
// a given number of seconds.
//user_pref("network.http.response.timeout", 60); // default=300 (5min)
// PREF: close a connection if TLS handshake does not finish in a
// given number of seconds
//user_pref("network.http.tls-handshake-timeout", 6); // default=30
// PREF: the number of seconds after sending initial SYN for an HTTP connection
// to give up if the OS does not give up first.
//user_pref("network.http.connection-timeout", 18); // default=90
// PREF: how long to wait before trying a different connection when the initial one fails // PREF: how long to wait before trying a different connection when the initial one fails
// The number (in ms) after sending a SYN for an HTTP connection, // The number (in ms) after sending a SYN for an HTTP connection,
// to wait before trying again with a different connection. // to wait before trying again with a different connection.
// 0=disable the second connection // 0=disable the second connection
//user_pref("network.http.connection-retry-timeout", 0); // default=250ms // [1] https://searchfox.org/mozilla-esr115/source/modules/libpref/init/all.js#1178
// [2] https://www.catchpoint.com/blog/http-transaction-steps
// PREF: keep-alive request timeout //user_pref("network.http.connection-retry-timeout", 0); // default=250
// Default timeout on IIS7 is 120 seconds. FF needs to reuse or drop the
// connection within this time. By default, FF sets the timeout a little shorter to
// keep a reserve for cases when the packet is lost or delayed on the route.
// [1] http://kb.mozillazine.org/Network.http.keep-alive.timeout
// [2] https://searchfox.org/mozilla-esr115/source/modules/libpref/init/all.js#1173-1178
//user_pref("network.http.keep-alive.timeout", 31); // default=115
// PREF: the amount of time (in seconds) to suspend pending requests, before spawning a
// new connection, once the limit on the number of persistent connections per
// host has been reached. However, a new connection will not be created if
// max-connections or max-connections-per-server has also been reached.
//user_pref("network.http.request.max-start-delay", 10); // DEFAULT
// PREF: increase DNS cache // PREF: increase DNS cache
// [1] https://developer.mozilla.org/en-US/docs/Web/Performance/Understanding_latency // [1] https://developer.mozilla.org/en-US/docs/Web/Performance/Understanding_latency
user_pref("network.dnsCacheEntries", 10000); // default=400 user_pref("network.dnsCacheEntries", 1000); // default=400
// PREF: adjust DNS expiration time // PREF: adjust DNS expiration time
// [ABOUT] about:networking#dns
// [NOTE] These prefs will be ignored by DNS resolver if using DoH/TRR. // [NOTE] These prefs will be ignored by DNS resolver if using DoH/TRR.
user_pref("network.dnsCacheExpiration", 86400); // keep entries for 1 day; alt=3600 (1 hour) user_pref("network.dnsCacheExpiration", 86400); // keep entries for 1 day; alt=3600 (1 hour)
//user_pref("network.dnsCacheExpirationGracePeriod", 240); // default=60; cache DNS entries for 4 minutes after they expire //user_pref("network.dnsCacheExpirationGracePeriod", 240); // default=60; cache DNS entries for 4 minutes after they expire
@@ -463,7 +431,7 @@ user_pref("network.dns.max_high_priority_threads", 8); // default=5
//user_pref("network.dns.max_any_priority_threads", 5); // default=3 //user_pref("network.dns.max_any_priority_threads", 5); // default=3
// PREF: increase TLS token caching // PREF: increase TLS token caching
user_pref("network.ssl_tokens_cache_capacity", 20480); // default=2048; more TLS token caching (fast reconnects) user_pref("network.ssl_tokens_cache_capacity", 10240); // default=2048; more TLS token caching (fast reconnects)
/**************************************************************************** /****************************************************************************
* SECTION: SPECULATIVE CONNECTIONS * * SECTION: SPECULATIVE CONNECTIONS *
@@ -494,7 +462,7 @@ user_pref("network.ssl_tokens_cache_capacity", 20480); // default=2048; more TLS
// [5] https://3perf.com/blog/link-rels/#prefetch // [5] https://3perf.com/blog/link-rels/#prefetch
user_pref("network.http.speculative-parallel-limit", 0); user_pref("network.http.speculative-parallel-limit", 0);
// or // or
//user_pref("network.http.speculative-parallel-limit", 10); // default=6 //user_pref("network.http.speculative-parallel-limit", 6); // DEFAULT
// PREF: DNS pre-resolve <link rel="dns-prefetch"> // PREF: DNS pre-resolve <link rel="dns-prefetch">
// Resolve hostnames ahead of time. In order to reduce latency, // Resolve hostnames ahead of time. In order to reduce latency,
@@ -545,23 +513,6 @@ user_pref("browser.places.speculativeConnect.enabled", false);
// [9] https://web.dev/preload-critical-assets/ // [9] https://web.dev/preload-critical-assets/
//user_pref("network.preload", true); // DEFAULT //user_pref("network.preload", true); // DEFAULT
// PREF: enable early hints [NIGHTLY]
// [1] https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/103
//user_pref("network.early-hints.enabled", false); // DEFAULT
// or
//user_pref("network.early-hints.enabled", true);
// PREF: `Link: rel=preconnect` in 103 Early Hint response
//user_pref("network.early-hints.preconnect.enabled", false); // DEFAULT
// or
//user_pref("network.early-hints.preconnect.enabled", true);
// PREF: the number of speculative connections allowed for early hints `Link: rel=preconnect`
// When 0, this is limited by "network.http.speculative-parallel-limit".
//user_pref("network.early-hints.preconnect.max_connections", 0);
// or
//user_pref("network.early-hints.preconnect.max_connections", 15); // default=10
// PREF: Link prefetching <link rel="prefetch"> // PREF: Link prefetching <link rel="prefetch">
// Firefox will prefetch certain links if any of the websites you are viewing uses the special prefetch-link tag. // Firefox will prefetch certain links if any of the websites you are viewing uses the special prefetch-link tag.
// A directive that tells a browser to fetch a resource that will likely be needed for the next navigation. // A directive that tells a browser to fetch a resource that will likely be needed for the next navigation.
@@ -580,6 +531,24 @@ user_pref("network.prefetch-next", false);
// or // or
//user_pref("network.prefetch-next", true); // DEFAULT //user_pref("network.prefetch-next", true); // DEFAULT
// PREF: enable early hints [NIGHTLY]
// [1] https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/103
// [2] https://developer.chrome.com/blog/early-hints/
//user_pref("network.early-hints.enabled", false); // DEFAULT
// or
//user_pref("network.early-hints.enabled", true);
// PREF: `Link: rel=preconnect` in 103 Early Hint response
//user_pref("network.early-hints.preconnect.enabled", false); // DEFAULT
// or
//user_pref("network.early-hints.preconnect.enabled", true);
// PREF: the number of speculative connections allowed for early hints `Link: rel=preconnect`
// When 0, this is limited by "network.http.speculative-parallel-limit".
//user_pref("network.early-hints.preconnect.max_connections", 0);
// or
//user_pref("network.early-hints.preconnect.max_connections", 10); // DEFAULT
// PREF: Network Predictor (NP) // PREF: Network Predictor (NP)
// Keeps track of components that were loaded during page visits so that the browser knows next time // Keeps track of components that were loaded during page visits so that the browser knows next time
// which resources to request from the server: It uses a local file to remember which resources were // which resources to request from the server: It uses a local file to remember which resources were
+5 -6
View File
@@ -3,7 +3,7 @@
* Peskyfox * * Peskyfox *
* "Aquila non capit muscas" * * "Aquila non capit muscas" *
* priority: remove annoyances * * priority: remove annoyances *
* version: 116 * * version: 117 *
* url: https://github.com/yokoffing/Betterfox * * url: https://github.com/yokoffing/Betterfox *
***************************************************************************/ ***************************************************************************/
@@ -87,7 +87,7 @@ user_pref("browser.display.focus_ring_width", 0);
user_pref("browser.privateWindowSeparation.enabled", false); // WINDOWS user_pref("browser.privateWindowSeparation.enabled", false); // WINDOWS
// PREF: reduce the size of the "private window" indicator in tab bar [FF106+] // PREF: reduce the size of the "private window" indicator in tab bar [FF106+]
user_pref("browser.privatebrowsing.enable-new-indicator", false); //user_pref("browser.privatebrowsing.enable-new-indicator", false); // REMOVED [FF119+]
// PREF: Cookie Banner handling [NIGHTLY] // PREF: Cookie Banner handling [NIGHTLY]
// [NOTE] Feature still enforces Total Cookie Protection to limit 3rd-party cookie tracking [1] // [NOTE] Feature still enforces Total Cookie Protection to limit 3rd-party cookie tracking [1]
@@ -387,11 +387,9 @@ user_pref("pdfjs.sidebarViewOnLoad", 2);
// [1] https://kb.mozillazine.org/About:config_entries // [1] https://kb.mozillazine.org/About:config_entries
//user_pref("browser.tabs.loadDivertedInBackground", false); // DEFAULT //user_pref("browser.tabs.loadDivertedInBackground", false); // DEFAULT
// PREF: load bookmarks in the background when left-clicking in Bookmarks Menu
//user_pref("browser.tabs.loadBookmarksInBackground", true);
// PREF: force bookmarks to open in a new tab, not the current tab // PREF: force bookmarks to open in a new tab, not the current tab
user_pref("browser.tabs.loadBookmarksInTabs", true); user_pref("browser.tabs.loadBookmarksInTabs", true);
//user_pref("browser.tabs.loadBookmarksInBackground", true); // load bookmarks in background
// PREF: leave Bookmarks Menu open when selecting a site // PREF: leave Bookmarks Menu open when selecting a site
user_pref("browser.bookmarks.openInTabClosesMenu", false); user_pref("browser.bookmarks.openInTabClosesMenu", false);
@@ -523,8 +521,9 @@ user_pref("findbar.highlightAll", true);
// PREF: JPEG XL image format [NIGHTLY] // PREF: JPEG XL image format [NIGHTLY]
// May not affect anything on ESR/Stable channel [2]. // May not affect anything on ESR/Stable channel [2].
// [TEST] https://jpegxl.io/tutorials/firefox/#firefoxjpegxltutorial
// [1] https://cloudinary.com/blog/the-case-for-jpeg-xl // [1] https://cloudinary.com/blog/the-case-for-jpeg-xl
// [2] https://bugzilla.mozilla.org/show_bug.cgi?id=1539075 // [2] https://bugzilla.mozilla.org/show_bug.cgi?id=1539075#c51
//user_pref("image.jxl.enabled", true); //user_pref("image.jxl.enabled", true);
// PREF: enable CSS moz document rules // PREF: enable CSS moz document rules
+7 -6
View File
@@ -34,15 +34,16 @@ The `user.js` — a configuration file that controls Firefox settings — is cur
## Getting started ## Getting started
*If you don't have it already: [Get Firefox](https://www.mozilla.org/en-US/firefox/all/#product-desktop-release)* *If you don't have it already: [Get Firefox](https://www.mozilla.org/en-US/firefox/all/#product-desktop-release)*
1) Download the user.js file [here](https://raw.githubusercontent.com/yokoffing/Betterfox/main/user.js) (Right click > `Save Link As…`). 1) Create a [backup profile](https://github.com/yokoffing/Betterfox/wiki/Backup).
2) Review [Common Overrides](https://github.com/yokoffing/Betterfox/wiki/Common-Overrides) and make any necessary changes. 2) Download the user.js file [here](https://raw.githubusercontent.com/yokoffing/Betterfox/main/user.js) (Right click > `Save Link As…`).
3) Open Firefox. In the URL bar, type `about:profiles` and press `Enter`. 3) Review [Common Overrides](https://github.com/yokoffing/Betterfox/wiki/Common-Overrides) and make any necessary changes.
4) For the profile you want to use (or use default), click `Open Folder` in the **Root Directory** section. 4) Open Firefox. In the URL bar, type `about:profiles` and press `Enter`.
5) Move the `user.js` file into the folder. 5) For the profile you want to use (or use default), click `Open Folder` in the **Root Directory** section.
6) Move the `user.js` file into the folder.
*After restarting Firefox:* *After restarting Firefox:*
1) Get an **ad blocker** like [uBlock Origin](https://addons.mozilla.org/blog/ublock-origin-everything-you-need-to-know-about-the-ad-blocker/) with our [recommended filters](https://github.com/yokoffing/filterlists#guidelines). For a simple solution, use [Ghostery](https://addons.mozilla.org/en-US/firefox/addon/ghostery/). 1) Get an **ad blocker** like [uBlock Origin](https://addons.mozilla.org/blog/ublock-origin-everything-you-need-to-know-about-the-ad-blocker/) with our [recommended filters](https://github.com/yokoffing/filterlists#guidelines). For a simple solution, use [Ghostery](https://addons.mozilla.org/en-US/firefox/addon/ghostery/).
3) Enable **DNS-level protection** with [NextDNS](https://nextdns.io/?from=xujj63g5), and check out our configuration [guide](https://github.com/yokoffing/NextDNS-Config). 2) Enable **DNS-level protection** with [NextDNS](https://nextdns.io/?from=xujj63g5), and check out our configuration [guide](https://github.com/yokoffing/NextDNS-Config).
* See how to [quickly enable](https://support.mozilla.org/en-US/kb/dns-over-https) **secure DNS** in Firefox. * See how to [quickly enable](https://support.mozilla.org/en-US/kb/dns-over-https) **secure DNS** in Firefox.
## about:Privacy ## about:Privacy
+12 -4
View File
@@ -3,7 +3,7 @@
* Securefox * * Securefox *
* "Natura non contristatur" * * "Natura non contristatur" *
* priority: provide sensible security and privacy * * priority: provide sensible security and privacy *
* version: 116.1 * * version: 117 *
* url: https://github.com/yokoffing/Betterfox * * url: https://github.com/yokoffing/Betterfox *
****************************************************************************/ ****************************************************************************/
@@ -47,6 +47,7 @@ user_pref("browser.contentblocking.category", "strict");
// [5] https://firefox.settings.services.mozilla.com/v1/buckets/main/collections/query-stripping/records // [5] https://firefox.settings.services.mozilla.com/v1/buckets/main/collections/query-stripping/records
//user_pref("privacy.query_stripping.enabled", true); // enabled with "Strict" //user_pref("privacy.query_stripping.enabled", true); // enabled with "Strict"
//user_pref("privacy.query_stripping.enabled.pbmode", true); // enabled with "Strict" //user_pref("privacy.query_stripping.enabled.pbmode", true); // enabled with "Strict"
//user_pref("privacy.query_stripping.strip_list", ""); // DEFAULT
//user_pref("privacy.query_stripping.strip_on_share.enabled", true); //user_pref("privacy.query_stripping.strip_on_share.enabled", true);
// PREF: allow embedded tweets, Instagram and Reddit posts, and TikTok embeds // PREF: allow embedded tweets, Instagram and Reddit posts, and TikTok embeds
@@ -98,9 +99,10 @@ user_pref("urlclassifier.features.socialtracking.skipURLs", "*.instagram.com, *.
// [1] https://bugzilla.mozilla.org/show_bug.cgi?id=1549587 // [1] https://bugzilla.mozilla.org/show_bug.cgi?id=1549587
// [2] https://developer.mozilla.org/en-US/docs/Mozilla/Firefox/Privacy/State_Partitioning // [2] https://developer.mozilla.org/en-US/docs/Mozilla/Firefox/Privacy/State_Partitioning
// [3] https://blog.mozilla.org/security/2021/02/23/total-cookie-protection/ // [3] https://blog.mozilla.org/security/2021/02/23/total-cookie-protection/
// [4] https://hacks.mozilla.org/2021/02/introducing-state-partitioning/ // [4] https://blog.mozilla.org/en/mozilla/firefox-rolls-out-total-cookie-protection-by-default-to-all-users-worldwide/
// [5] https://github.com/arkenfox/user.js/issues/1281 // [5] https://hacks.mozilla.org/2021/02/introducing-state-partitioning/
// [6] https://hacks.mozilla.org/2022/02/improving-the-storage-access-api-in-firefox/ // [6] https://github.com/arkenfox/user.js/issues/1281
// [7] https://hacks.mozilla.org/2022/02/improving-the-storage-access-api-in-firefox/
//user_pref("network.cookie.cookieBehavior", 5); // DEFAULT FF103+ //user_pref("network.cookie.cookieBehavior", 5); // DEFAULT FF103+
//user_pref("browser.contentblocking.reject-and-isolate-cookies.preferences.ui.enabled", true); // DEFAULT //user_pref("browser.contentblocking.reject-and-isolate-cookies.preferences.ui.enabled", true); // DEFAULT
@@ -116,6 +118,7 @@ user_pref("urlclassifier.features.socialtracking.skipURLs", "*.instagram.com, *.
//user_pref("privacy.partition.serviceWorkers", true); // [DEFAULT: true FF105+] //user_pref("privacy.partition.serviceWorkers", true); // [DEFAULT: true FF105+]
//user_pref("privacy.partition.network_state.ocsp_cache", true); // enabled with "Strict" //user_pref("privacy.partition.network_state.ocsp_cache", true); // enabled with "Strict"
//user_pref("privacy.partition.bloburl_per_agent_cluster", false); // DEFAULT [REGRESSIONS - DO NOT TOUCH] //user_pref("privacy.partition.bloburl_per_agent_cluster", false); // DEFAULT [REGRESSIONS - DO NOT TOUCH]
//user_pref("privacy.partition.bloburl_per_partition_key", true); // enabled with "Strict"? [FF118+]
// enable APS (Always Partitioning Storage) [FF104+] // enable APS (Always Partitioning Storage) [FF104+]
//user_pref("privacy.partition.always_partition_third_party_non_cookie_storage", true); // [DEFAULT: true FF109+] //user_pref("privacy.partition.always_partition_third_party_non_cookie_storage", true); // [DEFAULT: true FF109+]
//user_pref("privacy.partition.always_partition_third_party_non_cookie_storage.exempt_sessionstorage", false); // [DEFAULT: false FF109+] //user_pref("privacy.partition.always_partition_third_party_non_cookie_storage.exempt_sessionstorage", false); // [DEFAULT: false FF109+]
@@ -506,6 +509,9 @@ user_pref("browser.urlbar.update2.engineAliasRefresh", true); // HIDDEN
user_pref("browser.search.suggest.enabled", false); user_pref("browser.search.suggest.enabled", false);
//user_pref("browser.search.suggest.enabled.private", false); // DEFAULT //user_pref("browser.search.suggest.enabled.private", false); // DEFAULT
// disable showing trending searches
//user_pref("browser.urlbar.suggest.trending", false); // FF119+
// PREF: disable location bar leaking single words to a DNS provider after searching // PREF: disable location bar leaking single words to a DNS provider after searching
// 0=never resolve single words, 1=heuristic (default), 2=always resolve // 0=never resolve single words, 1=heuristic (default), 2=always resolve
// [1] https://bugzilla.mozilla.org/1642623 // [1] https://bugzilla.mozilla.org/1642623
@@ -1123,6 +1129,7 @@ user_pref("identity.fxaccounts.enabled", false);
// PREF: disable Firefox View [FF106+] // PREF: disable Firefox View [FF106+]
// [1] https://support.mozilla.org/en-US/kb/how-set-tab-pickup-firefox-view#w_what-is-firefox-view // [1] https://support.mozilla.org/en-US/kb/how-set-tab-pickup-firefox-view#w_what-is-firefox-view
user_pref("browser.tabs.firefox-view", false); user_pref("browser.tabs.firefox-view", false);
//user_pref("browser.tabs.firefox-view-next", false); // [FF119+]
// PREF: disable Push Notifications API [FF44+] // PREF: disable Push Notifications API [FF44+]
// Push is an API that allows websites to send you (subscribed) messages even when the site // Push is an API that allows websites to send you (subscribed) messages even when the site
@@ -1311,3 +1318,4 @@ user_pref("browser.newtabpage.activity-stream.feeds.telemetry", false);
//user_pref("signon.recipes.remoteRecipes.enabled", false); //user_pref("signon.recipes.remoteRecipes.enabled", false);
//user_pref("security.identitypopup.recordEventTelemetry", false); // ESR only; removed FF116+ [1] //user_pref("security.identitypopup.recordEventTelemetry", false); // ESR only; removed FF116+ [1]
// [1] https://bugzilla.mozilla.org/show_bug.cgi?id=1837979 // [1] https://bugzilla.mozilla.org/show_bug.cgi?id=1837979
//user_pref("privacy.trackingprotection.emailtracking.data_collection.enabled", false);
+5 -2
View File
@@ -21,9 +21,10 @@
//user_pref("dom.ipc.processCount.webIsolated", 2); // process per site //user_pref("dom.ipc.processCount.webIsolated", 2); // process per site
//user_pref("dom.ipc.processPrelaunch.fission.number", 1); // number of Preallocated processes //user_pref("dom.ipc.processPrelaunch.fission.number", 1); // number of Preallocated processes
user_pref("browser.sessionstore.restore_pinned_tabs_on_demand", true); user_pref("browser.sessionstore.restore_pinned_tabs_on_demand", true);
user_pref("browser.sessionhistory.max_total_viewers", 2); // only remember two pages in Back-Forward cache
user_pref("network.http.speculative-parallel-limit", 6); // DEFAULT user_pref("network.http.speculative-parallel-limit", 6); // DEFAULT
user_pref("network.dns.disablePrefetch", false); // DEFAULT; using DoH / ODNS user_pref("network.dns.disablePrefetch", false); // DEFAULT
user_pref("network.dns.disablePrefetchFromHTTPS", false); // using DoH / ODNS user_pref("network.dns.disablePrefetchFromHTTPS", false);
user_pref("browser.urlbar.speculativeConnect.enabled", true); // DEFAULT user_pref("browser.urlbar.speculativeConnect.enabled", true); // DEFAULT
user_pref("browser.places.speculativeConnect.enabled", true); // DEFAULT user_pref("browser.places.speculativeConnect.enabled", true); // DEFAULT
user_pref("network.early-hints.enabled", true); // DEFAULT NIGHTLY user_pref("network.early-hints.enabled", true); // DEFAULT NIGHTLY
@@ -36,6 +37,7 @@ user_pref("network.predictor.enable-prefetch", false);
/** SECUREFOX ***/ /** SECUREFOX ***/
//user_pref("urlclassifier.features.socialtracking.skipURLs", "*.twitter.com, *.twimg.com"); // removed *.instagram.com //user_pref("urlclassifier.features.socialtracking.skipURLs", "*.twitter.com, *.twimg.com"); // removed *.instagram.com
user_pref("browser.urlbar.showSearchSuggestionsFirst", false); // unselect "Show search suggestions ahead of browsing history in address bar results" for clean UI user_pref("browser.urlbar.showSearchSuggestionsFirst", false); // unselect "Show search suggestions ahead of browsing history in address bar results" for clean UI
//user_pref("browser.urlbar.suggest.trending", false); // FF119+ disable showing trending searches; unselect for clean UI
user_pref("browser.urlbar.groupLabels.enabled", false); // hide Firefox Suggest label in URL dropdown box user_pref("browser.urlbar.groupLabels.enabled", false); // hide Firefox Suggest label in URL dropdown box
user_pref("signon.management.page.breach-alerts.enabled", false); // extra hardening user_pref("signon.management.page.breach-alerts.enabled", false); // extra hardening
user_pref("signon.autofillForms", false); // unselect "Autofill logins and passwords" for clean UI user_pref("signon.autofillForms", false); // unselect "Autofill logins and passwords" for clean UI
@@ -95,6 +97,7 @@ user_pref("browser.crashReports.unsubmittedCheck.enabled", false); // true by de
/** DELETE IF NOT WINDOWS DESKTOP ***/ /** DELETE IF NOT WINDOWS DESKTOP ***/
user_pref("network.trr.mode", 3); // enable TRR (without System fallback) user_pref("network.trr.mode", 3); // enable TRR (without System fallback)
user_pref("gfx.canvas.accelerated", true); // DEFAULT except on WINDOWS; enable if not using an integrated GPU user_pref("gfx.canvas.accelerated", true); // DEFAULT except on WINDOWS; enable if not using an integrated GPU
user_pref("browser.startup.preXulSkeletonUI", false); // WINDOWS
user_pref("default-browser-agent.enabled", false); // deny Mozilla monitoring default browser (breaks "Make Default" button) user_pref("default-browser-agent.enabled", false); // deny Mozilla monitoring default browser (breaks "Make Default" button)
user_pref("pdfjs.defaultZoomValue", "125"); // alt=page-width; PDF zoom level user_pref("pdfjs.defaultZoomValue", "125"); // alt=page-width; PDF zoom level
user_pref("gfx.font_rendering.cleartype_params.rendering_mode", 5); user_pref("gfx.font_rendering.cleartype_params.rendering_mode", 5);
+4 -6
View File
@@ -10,7 +10,7 @@
/**************************************************************************** /****************************************************************************
* Betterfox * * Betterfox *
* "Ad meliora" * * "Ad meliora" *
* version: 116.1 * * version: 117 *
* url: https://github.com/yokoffing/Betterfox * * url: https://github.com/yokoffing/Betterfox *
****************************************************************************/ ****************************************************************************/
@@ -20,12 +20,12 @@
user_pref("nglayout.initialpaint.delay", 0); user_pref("nglayout.initialpaint.delay", 0);
user_pref("nglayout.initialpaint.delay_in_oopif", 0); user_pref("nglayout.initialpaint.delay_in_oopif", 0);
user_pref("content.notify.interval", 100000); user_pref("content.notify.interval", 100000);
user_pref("browser.startup.preXulSkeletonUI", false); // WINDOWS
/** EXPERIMENTAL ***/ /** EXPERIMENTAL ***/
user_pref("layout.css.grid-template-masonry-value.enabled", true); user_pref("layout.css.grid-template-masonry-value.enabled", true);
user_pref("dom.enable_web_task_scheduling", true); user_pref("dom.enable_web_task_scheduling", true);
user_pref("layout.css.has-selector.enabled", true); user_pref("layout.css.has-selector.enabled", true);
user_pref("dom.security.sanitizer.enabled", true);
/** GFX ***/ /** GFX ***/
//user_pref("gfx.canvas.accelerated", true); // enable if using a dedicated GPU on WINDOWS //user_pref("gfx.canvas.accelerated", true); // enable if using a dedicated GPU on WINDOWS
@@ -50,12 +50,11 @@ user_pref("network.buffer.cache.count", 128);
user_pref("network.http.max-connections", 1800); user_pref("network.http.max-connections", 1800);
user_pref("network.http.max-persistent-connections-per-server", 10); user_pref("network.http.max-persistent-connections-per-server", 10);
user_pref("network.http.max-urgent-start-excessive-connections-per-host", 5); user_pref("network.http.max-urgent-start-excessive-connections-per-host", 5);
user_pref("network.websocket.max-connections", 400);
user_pref("network.http.pacing.requests.enabled", false); user_pref("network.http.pacing.requests.enabled", false);
user_pref("network.dnsCacheEntries", 10000); user_pref("network.dnsCacheEntries", 1000);
user_pref("network.dnsCacheExpiration", 86400); user_pref("network.dnsCacheExpiration", 86400);
user_pref("network.dns.max_high_priority_threads", 8); user_pref("network.dns.max_high_priority_threads", 8);
user_pref("network.ssl_tokens_cache_capacity", 20480); user_pref("network.ssl_tokens_cache_capacity", 10240);
/** SPECULATIVE CONNECTIONS ***/ /** SPECULATIVE CONNECTIONS ***/
user_pref("network.http.speculative-parallel-limit", 0); user_pref("network.http.speculative-parallel-limit", 0);
@@ -197,7 +196,6 @@ user_pref("browser.display.focus_ring_on_anything", true);
user_pref("browser.display.focus_ring_style", 0); user_pref("browser.display.focus_ring_style", 0);
user_pref("browser.display.focus_ring_width", 0); user_pref("browser.display.focus_ring_width", 0);
user_pref("browser.privateWindowSeparation.enabled", false); // WINDOWS user_pref("browser.privateWindowSeparation.enabled", false); // WINDOWS
user_pref("browser.privatebrowsing.enable-new-indicator", false);
user_pref("cookiebanners.service.mode", 2); user_pref("cookiebanners.service.mode", 2);
user_pref("cookiebanners.service.mode.privateBrowsing", 2); user_pref("cookiebanners.service.mode.privateBrowsing", 2);
user_pref("browser.translations.enable", true); user_pref("browser.translations.enable", true);