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

Compare commits

...

115 Commits

Author SHA1 Message Date
yokoffing 229d6697ba Merge pull request #118 from yokoffing/yokoffing-patch-2
v.108
2023-01-02 22:02:11 -05:00
yokoffing d12492db46 Merge pull request #117 from yokoffing/yokoffing-patch-1
Fast 108
2023-01-02 21:54:18 -05:00
yokoffing 9b7b0e68bc Merge pull request #120 from yokoffing/yokoffing-patch-3
Secure 108
2023-01-02 21:53:37 -05:00
yokoffing 876d0fdabb Merge pull request #122 from yokoffing/yokoffing-patch-4
Pesky 108
2023-01-02 21:45:04 -05:00
yokoffing 40b30c550a Merge pull request #123 from yokoffing/yokoffing-patch-5
overrides 108
2023-01-02 21:14:06 -05:00
yokoffing f9b73ef2fb remove anglicized spelling 2022-12-27 22:46:35 -05:00
yokoffing a1258c93a7 add reference for accessibility services 2022-12-27 22:45:30 -05:00
yokoffing 02b814cdc5 deleteTempFileOnExit now default 2022-12-27 22:39:57 -05:00
yokoffing 9f4f3ac94f browser.helperApps.deleteTempFileOnExit now default 2022-12-27 22:39:04 -05:00
yokoffing 5526f98e36 reverse 2022-12-26 14:45:05 -05:00
yokoffing 47296c3db7 default: "browser.cache.memory.capacity", -1 2022-12-26 14:39:05 -05:00
yokoffing c6d825c2e0 Merge pull request #128 from bestplayerbotphone/patch-2
Spacing and comment markers
2022-12-26 13:19:30 -05:00
yokoffing b38e21923a Comment out array 2022-12-26 13:16:42 -05:00
bestplayerbotphone ccc5c19347 Remove spaces 2022-12-26 23:12:39 +09:00
bestplayerbotphone ec00fcc8b5 Remove space 2022-12-26 23:10:27 +09:00
bestplayerbotphone df898d612c Remove space 2022-12-26 23:09:19 +09:00
bestplayerbotphone 64e25ca5a6 Remove a "/" 2022-12-26 23:07:09 +09:00
bestplayerbotphone d1922b36b3 Add a missing comment 2022-12-26 23:04:01 +09:00
yokoffing a581701b4c Merge pull request #127 from bestplayerbotphone/patch-1
Add a missing comment
2022-12-26 03:40:54 -05:00
bestplayerbotphone 16d5acbc00 Add a missing comment 2022-12-26 10:44:25 +08:00
yokoffing 1f0591765c Update Peskyfox.js 2022-12-24 12:26:07 -05:00
yokoffing cfab690e59 Update user-overrides.js 2022-12-24 12:25:03 -05:00
yokoffing ac700e6059 "clipboard.plainTextOnly" removed 2022-12-24 12:16:06 -05:00
yokoffing e377ae10ee toolkit.telemetry.dap_enabled 2022-12-24 12:10:11 -05:00
yokoffing 3404a2149b browser.urlbar.suggest.weather
browser.urlbar.showSearchTerms.enabled
2022-12-24 12:07:28 -05:00
yokoffing e968e81b9d editor.word_select.delete_space_after_doubleclick_selection 2022-12-24 11:57:21 -05:00
yokoffing d822d3f15e mark upgrade_display-content as DEFAULT FF110 2022-12-24 10:39:45 -05:00
yokoffing 7a2884f474 upgrade_display_content is default true [Nightly] [Stable?] 2022-12-24 10:32:52 -05:00
yokoffing ad624c0dba javascript.options.experimental.array_grouping 2022-12-22 17:21:28 -05:00
yokoffing 2d7db5a003 Array.fromAsync 2022-12-22 17:18:15 -05:00
yokoffing 739e44c4dd Merge pull request #126 from iam-py-test/master
Fix a missing comment
2022-12-22 16:45:17 -05:00
yokoffing 0bd34c0e38 fix missing //
#126
2022-12-22 16:43:14 -05:00
yokoffing 6275cc4b89 Update Peskyfox.js 2022-12-22 16:02:30 -05:00
yokoffing ab193f3d8d cookie banner descrip. 2022-12-22 15:58:20 -05:00
yokoffing ded2f4e39c cookie handling description 2022-12-22 15:54:40 -05:00
yokoffing b142f7ee3c HTTPS-First instead of HTTPS-only 2022-12-22 15:45:19 -05:00
iam-py-test b9fbb68e01 Fix a missing comment 2022-12-19 17:45:35 -05:00
yokoffing 15164e057f Update user-overrides.js 2022-12-13 16:38:21 -05:00
yokoffing 406e15fe45 Update Securefox.js 2022-12-09 00:09:44 -05:00
yokoffing da5d381581 remove network.predictor.enable-hover-on-ssl 2022-12-09 00:09:22 -05:00
yokoffing f4c4f2c92e Update user-overrides.js 2022-12-07 16:26:31 -05:00
yokoffing adcc0b9495 Update user-overrides.js 2022-12-06 16:18:57 -05:00
yokoffing 2ee90c6aea add note on fingerprinting 2022-12-06 15:22:29 -05:00
yokoffing 1f430a55e0 Update README.md 2022-12-06 15:07:10 -05:00
yokoffing 7652235ba5 comment out layout.css.font-visibility
Higher threat model issue
2022-12-06 15:01:11 -05:00
yokoffing 820ef8630d comment out layout.css.font-visibility
Higher threat-model issue
2022-12-06 14:59:32 -05:00
yokoffing d59b4c6ca4 remove region.update.enabled 2022-12-06 13:44:42 -05:00
yokoffing 2e70eae32e comment out region.update.enabled 2022-12-06 13:44:14 -05:00
yokoffing 9c80d3aa4d Update user.js 2022-12-04 12:07:17 -05:00
yokoffing 65447bc01c Update Fastfox.js 2022-12-04 12:06:34 -05:00
yokoffing 855727791b Update user-overrides.js 2022-12-02 12:21:26 -05:00
yokoffing 3ecee6db5b Update user-overrides.js 2022-12-02 12:10:06 -05:00
yokoffing f07fcf289e Update Securefox.js 2022-12-02 12:01:58 -05:00
yokoffing 9d68a4a0be Update user-overrides.js 2022-12-02 12:00:16 -05:00
yokoffing 89850bb04d note 2022-12-02 11:39:03 -05:00
yokoffing 6b81e65bc7 Update user-overrides.js 2022-12-02 11:34:47 -05:00
yokoffing 9603397a98 enforce default for network.predictor.enable-hover-on-ssl 2022-12-02 11:29:24 -05:00
yokoffing 96bd585870 Update Securefox.js 2022-12-02 11:28:43 -05:00
yokoffing 463de7b7b4 content.notify.interval added to user.js 2022-12-02 10:37:49 -05:00
yokoffing bd19921244 Merge pull request #125 from botthebestplayerintheworld/patch-1
Minor Spelling Mistake 👍
2022-12-02 10:25:45 -05:00
Seojoon You 6a879397f5 Minor Spelling Mistake 👍 2022-12-02 12:55:14 +08:00
yokoffing 353540bf7c remove spec. connections 2022-12-01 18:58:45 -05:00
yokoffing f41d06c2a4 remove another link 2022-12-01 18:33:02 -05:00
yokoffing bc3c8f84de remove link 2022-12-01 18:22:15 -05:00
yokoffing 32705478d2 add content.notify.interval 2022-12-01 09:04:31 -05:00
yokoffing 3ff20e8efc remove warning 2022-12-01 09:04:08 -05:00
yokoffing f85d2d09a9 remove warning 2022-12-01 09:03:54 -05:00
yokoffing 11fb448317 remove warning 2022-12-01 09:03:37 -05:00
yokoffing d38de11c8e add content.notify.interval 2022-12-01 09:03:08 -05:00
yokoffing 078a8fa5ca move dns entries to NETWORK 2022-12-01 08:59:12 -05:00
yokoffing fa159e12e4 move dns entries to CACHE 2022-12-01 08:59:01 -05:00
yokoffing ef04b0bd37 enforce network.dns.disablePrefetchFromHTTPS 2022-11-30 21:00:10 -05:00
yokoffing b2cc5f3ca8 add network.dns.disablePrefetchFromHTTPS
enforce default
2022-11-30 20:59:19 -05:00
yokoffing 3577f4d70c add meta bug for HTTPS-First 2022-11-30 14:14:46 -05:00
yokoffing 62d43d24fc browser.crashReports.unsubmittedCheck.enabled 2022-11-30 14:10:08 -05:00
yokoffing 08ba8fb771 add spec. conn.
add content.notify.interval
2022-11-30 13:20:31 -05:00
yokoffing 683e3c805c remove HTTPS first 2022-11-30 13:11:17 -05:00
yokoffing 349ed50ebd update content.notify.interval description 2022-11-30 13:01:49 -05:00
yokoffing f2408dd157 add content.notify.interval 2022-11-30 12:43:36 -05:00
yokoffing 6a732503bb enforce default for browser.cache.memory.capacity 2022-11-30 12:07:57 -05:00
yokoffing cd3a4c162b remove browser.cache.memory.capacity 2022-11-30 11:24:41 -05:00
yokoffing 2003c8d989 add browser.cache.memory.capacity 2022-11-30 11:24:18 -05:00
yokoffing 00c018e4ae reorder Fastfox 2022-11-30 10:12:23 -05:00
yokoffing 1bdf238075 move some Fastfox prefs to Windows-machine only 2022-11-30 09:57:12 -05:00
yokoffing ec601dcbdc HTTPS first 2022-11-30 09:43:23 -05:00
yokoffing 2bc1dd8fb2 disable QUIC and AV1 2022-11-30 09:28:41 -05:00
yokoffing b7e389eec4 remove media cache pref 2022-11-30 09:26:41 -05:00
yokoffing 48dd1dfbb3 add AV1 pref
comment out media.cache_size
2022-11-30 09:20:19 -05:00
yokoffing bb9e5c1ea3 Update Securefox.js 2022-11-30 08:57:19 -05:00
yokoffing 14f27cd5f8 restore initialpaint.delay 2022-11-30 08:20:33 -05:00
Brenex 3f533f236f Mention Accessibility Service on the front page (#121)
Added information on the connection between the dependency of accessibility services and external application's autofill ability, including from password managers (specifically 1Password).
2022-11-29 18:24:10 -05:00
yokoffing 01fab3ca34 Update Securefox.js 2022-11-29 13:35:03 -05:00
yokoffing 351b685659 restore Beacon API 2022-11-29 12:20:39 -05:00
yokoffing 645de9a604 restore Beacon API 2022-11-29 12:19:33 -05:00
yokoffing 41850d9cfd accessibility services description 2022-11-29 11:31:48 -05:00
yokoffing dbf6515187 comment out spec. conn. 2022-11-29 00:48:51 -05:00
yokoffing ca15a55a49 reorder subheadings 2022-11-29 00:45:52 -05:00
yokoffing 2f0999939e combine prefs for "these are probably unhelpful" 2022-11-29 00:39:36 -05:00
yokoffing 2b2e375228 re-incorporate speculative connections 2022-11-29 00:35:51 -05:00
yokoffing 4b049633ab Update Securefox.js 2022-11-28 23:48:35 -05:00
yokoffing 30bc1e69de restore spec. con. section 2022-11-28 23:47:10 -05:00
yokoffing 54d453dec5 add user comment (Fastfox) 2022-11-28 23:26:39 -05:00
yokoffing c29fe2b939 WebGPU references 2022-11-28 20:37:29 -05:00
yokoffing a8e9aaa5f0 fix spacing 2022-11-28 01:46:43 -05:00
yokoffing c3eb95ae41 links for initial paint delay 2022-11-28 01:46:33 -05:00
yokoffing 405cbc7a86 comment out nglayout.initialpaint.delay 2022-11-28 01:33:07 -05:00
yokoffing 733dfe2dfd remove initialpaint.delay 2022-11-28 01:30:11 -05:00
yokoffing f9fae4f3c2 add GSB links 2022-11-27 20:28:33 -05:00
yokoffing da0e4c2e2e add link to Webrender tweaks 2022-11-27 17:36:06 -05:00
yokoffing 85b84dd669 added user comment 2022-11-27 17:29:29 -05:00
yokoffing c7dc352e60 add dates to integrations 2022-11-27 17:05:57 -05:00
yokoffing 00acc684f6 add links for speculative connection 2022-11-27 13:23:30 -05:00
yokoffing 9aa77019ff reorder pref 2022-11-26 12:59:30 -05:00
yokoffing 103e2866fa reoder some prefs 2022-11-26 12:56:42 -05:00
yokoffing 2f576bc100 link 2022-11-26 12:40:17 -05:00
6 changed files with 284 additions and 224 deletions
+137 -76
View File
@@ -1,25 +1,39 @@
//
/* Do not COPY+PASTE this file. If you do, only COPY+PASTE the user_pref itself.
*
* If you make changes to your about:config while the program is running, the
* changes will be overwritten when the application restarts.
*
* To make a change to preferences, you will have to edit the user.js file.
*/
/**************************************************************************************** /****************************************************************************************
* Fastfox * * Fastfox *
* "Non ducor duco" * * "Non ducor duco" *
* priority: speedy browsing * * priority: speedy browsing *
* version: 107a * * version: 108 *
* url: https://github.com/yokoffing/Betterfox * * url: https://github.com/yokoffing/Betterfox *
***************************************************************************************/ ***************************************************************************************/
// PREF: initial paint delay // PREF: initial paint delay
// How long FF will wait before rendering the page // How long FF will wait before rendering the page, in milliseconds
// [1] https://kb.mozillazine.org/Nglayout.initialpaint.delay // Reduce the 5ms Firefox waits to render the page
// [1] https://bugzilla.mozilla.org/show_bug.cgi?id=1283302
// [2] https://docs.google.com/document/d/1BvCoZzk2_rNZx3u9ESPoFjSADRI0zIPeJRXFLwWXx_4/edit#heading=h.28ki6m8dg30z
user_pref("nglayout.initialpaint.delay", 0); // default=5; used to be 250 user_pref("nglayout.initialpaint.delay", 0); // default=5; used to be 250
user_pref("nglayout.initialpaint.delay_in_oopif", 0); // default=5; used to be 250 user_pref("nglayout.initialpaint.delay_in_oopif", 0); // default=5
// PREF: notification interval (in microseconds)
// When Firefox is loading a page, it periodically reformats
// 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.
// Lowering the interval will decrease the perceived page load time
// but increase the total loading time.
// The notification interval has a dramatic effect on how long it takes to
// initially display content for slow connections. The default value
// provides good incremental display of content without causing an increase
// in page load time. If this value is set below 1/10 of a second it starts
// to impact page load performance.
// [1] https://searchfox.org/mozilla-central/rev/c1180ea13e73eb985a49b15c0d90e977a1aa919c/modules/libpref/init/StaticPrefList.yaml#1824-1834
user_pref("content.notify.interval", 360000); // (.36s), default=120000 (.12s)
//user_pref("content.notify.ontimer", true); // DEFAULT
// PREF: set the minimum interval between session save operations
// Increasing this can help on older machines and some websites, as well as reducing writes
// [1] https://bugzilla.mozilla.org/1304389
//user_pref("browser.sessionstore.interval", 30000); // [DEFAULT: 15000]
// PREF: control how tabs are loaded when a session is restored // PREF: control how tabs are loaded when a session is restored
// true=Tabs are not loaded until they are selected (default) // true=Tabs are not loaded until they are selected (default)
@@ -35,11 +49,6 @@ user_pref("nglayout.initialpaint.delay_in_oopif", 0); // default=5; used to be 2
// PREF: disable preSkeletonUI on startup // PREF: disable preSkeletonUI on startup
user_pref("browser.startup.preXulSkeletonUI", false); user_pref("browser.startup.preXulSkeletonUI", false);
// PREF: set the minimum interval between session save operations
// Increasing this can help on older machines and some websites, as well as reducing writes
// [1] https://bugzilla.mozilla.org/1304389
//user_pref("browser.sessionstore.interval", 30000); // [DEFAULT: 15000]
// PREF: OffscreenCanvas // PREF: OffscreenCanvas
// [1] https://yashints.dev/blog/2019/05/11/offscreen-canvas // [1] https://yashints.dev/blog/2019/05/11/offscreen-canvas
// [2] https://www.youtube.com/watch?v=CWvRA9E0DqU // [2] https://www.youtube.com/watch?v=CWvRA9E0DqU
@@ -62,6 +71,14 @@ user_pref("browser.startup.preXulSkeletonUI", false);
* SECTION: EXPERIMENTAL * * SECTION: EXPERIMENTAL *
****************************************************************************/ ****************************************************************************/
// PREF: WebGPU [HIGHLY EXPERIMENTAL!] [NIGHTLY]
// [1] https://bugzilla.mozilla.org/show_bug.cgi?id=1746245
// [2] https://github.com/gpuweb/gpuweb/wiki/Implementation-Status
// [3] https://hacks.mozilla.org/2020/04/experimental-webgpu-in-firefox/
// [4] https://developer.chrome.com/docs/web-platform/webgpu/
//user_pref("dom.webgpu.enabled", true);
//user_pref("gfx.webgpu.force-enabled", true);
// PREF: about:home startup cache [NIGHTLY] // PREF: about:home startup cache [NIGHTLY]
// A cache for the initial about:home document that is loaded by default at startup // A cache for the initial about:home document that is loaded by default at startup
// The purpose of the cache is to improve startup performance // The purpose of the cache is to improve startup performance
@@ -75,7 +92,7 @@ user_pref("layout.css.grid-template-masonry-value.enabled", true);
// [2] https://medium.com/airbnb-engineering/building-a-faster-web-experience-with-the-posttask-scheduler-276b83454e91 // [2] https://medium.com/airbnb-engineering/building-a-faster-web-experience-with-the-posttask-scheduler-276b83454e91
user_pref("dom.enable_web_task_scheduling", true); user_pref("dom.enable_web_task_scheduling", true);
// PREF: enable animation-composition [NIGHTLY] // PREF: enable CSS Animation Composition [NIGHTLY]
// [1] https://bugzilla.mozilla.org/show_bug.cgi?id=1785329 // [1] https://bugzilla.mozilla.org/show_bug.cgi?id=1785329
// [2] https://bugzilla.mozilla.org/show_bug.cgi?id=1293490 // [2] https://bugzilla.mozilla.org/show_bug.cgi?id=1293490
// [3] https://developer.mozilla.org/en-US/docs/Web/CSS/animation-composition // [3] https://developer.mozilla.org/en-US/docs/Web/CSS/animation-composition
@@ -85,54 +102,25 @@ user_pref("layout.css.animation-composition.enabled", true);
// [1] https://github.com/tc39/proposal-shadowrealm/blob/main/explainer.md#introduction // [1] https://github.com/tc39/proposal-shadowrealm/blob/main/explainer.md#introduction
//user_pref("javascript.options.experimental.shadow_realms", true); //user_pref("javascript.options.experimental.shadow_realms", true);
// PREF: Wasm GC [NIGHTLY] // PREF: Wasm GC + References [NIGHTLY]
// [1] https://github.com/WebAssembly/gc/blob/main/proposals/gc/Overview.md // [1] https://github.com/WebAssembly/gc/blob/main/proposals/gc/Overview.md
// [2] https://github.com/WebAssembly/function-references/blob/master/proposals/function-references/Overview.md
//user_pref("javascript.options.wasm_gc", true); //user_pref("javascript.options.wasm_gc", true);
// PREF: Wasm Function References [NIGHTLY]
// [1] https://github.com/WebAssembly/function-references/blob/master/proposals/function-references/Overview.md
//user_pref("javascript.options.wasm_function_references", true); //user_pref("javascript.options.wasm_function_references", true);
/**************************************************************************** // PREF: Array.fromAsync [NIGHTLY]
* SECTION: NETWORK * // [1] https://bugzilla.mozilla.org/show_bug.cgi?id=1795452
****************************************************************************/ //user_pref("javascript.options.experimental.array_grouping", true);
//user_pref("javascript.options.experimental.enable_change_array_by_copy", true);
// PREF: faster SSL // PREF: not yet categorized / need documentation [NIGHTLY]
user_pref("network.ssl_tokens_cache_capacity", 32768); // more TLS token caching (fast reconnects) //user_pref("javascript.options.experimental.iterator_helpers", true);
//user_pref("javascript.options.experimental.weakrefs.expose_cleanupSome", true);
// PREF: increase DNS cache
user_pref("network.dnsCacheEntries", 20000);
user_pref("network.dnsCacheExpiration", 3600);
user_pref("network.dnsCacheExpirationGracePeriod", 240);
// PREF: use bigger packets
// [1] https://www.mail-archive.com/support-seamonkey@lists.mozilla.org/msg74561.html
// [2] https://www.mail-archive.com/support-seamonkey@lists.mozilla.org/msg74570.html
user_pref("network.buffer.cache.size", 262144); // preferred=327680; default=32768
user_pref("network.buffer.cache.count", 128); // preferred=240; default=24
// PREF: DoH requests
//user_pref("network.trr.request_timeout_ms", 1500); // DEFAULT
//user_pref("network.trr.retry-timeout-ms", 125); // DEFAULT
// These do not affect anything, probably:
// PREF: close a connection if tls handshake does not finish in given number of seconds
//user_pref("network.http.tls-handshake-timeout", 3); // default=30
// PREF: timeout connections if an initial response is not received in number of seconds
//user_pref("network.http.response.timeout", 5); // default=300
// PREF: increase the absolute number of http connections
// [1] https://kb.mozillazine.org/Network.http.max-connections
// [2] https://kb.mozillazine.org/Network.http.max-persistent-connections-per-server
//user_pref("network.http.max-connections", 1800); // default=900
//user_pref("network.http.max-persistent-connections-per-server", 8); // default=6; download connections; anything above 10 is excessive
/**************************************************************************** /****************************************************************************
* SECTION: MAKE FIREFOX FAST * * SECTION: MAKE FIREFOX FAST *
* [NOTE] The following is not recommended for low-end machines * * [NOTE] The following is not recommended for low-end machines *
* Credit for most of these: * * Credit for many of these: *
* https://gist.github.com/RubenKelevra/fd66c2f856d703260ecdf0379c4f59db * * https://gist.github.com/RubenKelevra/fd66c2f856d703260ecdf0379c4f59db *
* [NOTE] For best performance on older hardware, you will need to test * * [NOTE] For best performance on older hardware, you will need to test *
* these settings individually. * * these settings individually. *
@@ -143,20 +131,25 @@ user_pref("network.buffer.cache.count", 128); // preferred=240; default=24
****************************************************************************/ ****************************************************************************/
// PREF: Webrender tweaks // PREF: Webrender tweaks
// [1] https://hacks.mozilla.org/2017/10/the-whole-web-at-maximum-fps-how-webrender-gets-rid-of-jank/ // [1] https://searchfox.org/mozilla-central/rev/6e6332bbd3dd6926acce3ce6d32664eab4f837e5/modules/libpref/init/StaticPrefList.yaml#6202-6219
// [2] https://wiki.mozilla.org/Platform/GFX/WebRender_Where // [2] https://hacks.mozilla.org/2017/10/the-whole-web-at-maximum-fps-how-webrender-gets-rid-of-jank/
// [3] https://www.reddit.com/r/firefox/comments/fo1jwz/make_firefox_faster/flhh5l2/ // [3] https://www.troddit.com/r/firefox/comments/tbphok/is_setting_gfxwebrenderprecacheshaders_to_true/i0bxs2r/
// [4] https://www.troddit.com/r/firefox/comments/tbphok/is_setting_gfxwebrenderprecacheshaders_to_true/i0bxs2r/ // [4] https://www.troddit.com/r/firefox/comments/z5auzi/comment/ixw65gb?context=3
user_pref("gfx.webrender.all", true); // enables WR (GPU) + additional features user_pref("gfx.webrender.all", true); // enables WR (GPU) + additional features
user_pref("gfx.webrender.precache-shaders", true); user_pref("gfx.webrender.precache-shaders", true);
user_pref("gfx.webrender.compositor", true); user_pref("gfx.webrender.compositor", true);
//user_pref("gfx.webrender.compositor.force-enabled", true); // reinforce //user_pref("gfx.webrender.compositor.force-enabled", true); // reinforce
user_pref("layers.gpu-process.enabled", true);
//user_pref("layers.gpu-process.force-enabled", true); // reinforce
user_pref("media.hardware-video-decoding.enabled", true);
//user_pref("media.hardware-video-decoding.force-enabled", true); // reinforce
// PREF: if your hardware doesn't support Webrender, you can fallback to Webrender's software renderer // PREF: if your hardware doesn't support Webrender, you can fallback to Webrender's software renderer
// [1] https://www.ghacks.net/2020/12/14/how-to-find-out-if-webrender-is-enabled-in-firefox-and-how-to-enable-it-if-it-is-not/ // [1] https://www.ghacks.net/2020/12/14/how-to-find-out-if-webrender-is-enabled-in-firefox-and-how-to-enable-it-if-it-is-not/
//user_pref("gfx.webrender.enabled", true); //user_pref("gfx.webrender.enabled", true);
//user_pref("gfx.webrender.software", true); // Webrender uses the CPU and not the GPU //user_pref("gfx.webrender.software", true); // Webrender uses the CPU and not the GPU
//user_pref("gfx.webrender.software.opengl", true); [LINUX] //user_pref("gfx.webrender.software.opengl", true); // [LINUX]
//user_pref("media.ffmpeg.vaapi.enabled", true); // [LINUX]
// PREF: GPU-accelerated Canvas2D tweaks // PREF: GPU-accelerated Canvas2D tweaks
// [1] https://bugzilla.mozilla.org/show_bug.cgi?id=1739448 // [1] https://bugzilla.mozilla.org/show_bug.cgi?id=1739448
@@ -169,48 +162,116 @@ user_pref("gfx.content.skia-font-cache-size", 80);
user_pref("image.cache.size", 10485760); user_pref("image.cache.size", 10485760);
user_pref("image.mem.decode_bytes_at_a_time", 131072); // alt=65536; preferred=262144; chunk size for calls to the image decoders user_pref("image.mem.decode_bytes_at_a_time", 131072); // alt=65536; preferred=262144; chunk size for calls to the image decoders
user_pref("image.mem.shared.unmap.min_expiration_ms", 120000); // default=60000; minimum timeout to unmap shared surfaces since they have been last used user_pref("image.mem.shared.unmap.min_expiration_ms", 120000); // default=60000; minimum timeout to unmap shared surfaces since they have been last used
user_pref("layers.gpu-process.enabled", true);
//user_pref("layers.gpu-process.force-enabled", true); // reinforce
// PREF: increase media cache // PREF: increase media cache
user_pref("media.memory_cache_max_size", 1048576); // alt=512000; also in Securefox (inactive there) user_pref("media.memory_cache_max_size", 1048576); // alt=512000; also in Securefox (inactive there)
user_pref("media.memory_caches_combined_limit_kb", 2560000); // preferred=3145728; // default=524288 user_pref("media.memory_caches_combined_limit_kb", 2560000); // preferred=3145728; // default=524288
//user_pref("media.memory_caches_combined_limit_pc_sysmem", 20); // default=5 //user_pref("media.memory_caches_combined_limit_pc_sysmem", 20); // default=5
//user_pref("media.ffmpeg.vaapi.enabled", true); // [LINUX]
//user_pref("media.hardware-video-decoding.enabled", true);
//user_pref("media.hardware-video-decoding.force-enabled", true); // reinforce
// PREF: decrease video buffering // PREF: decrease video buffering
// [NOTE] Does not affect YouTube since it uses DASH playback [1] // [NOTE] Does not affect YouTube since it uses DASH playback [1]
// [1] https://lifehacker.com/preload-entire-youtube-videos-by-disabling-dash-playbac-1186454034 // [1] https://lifehacker.com/preload-entire-youtube-videos-by-disabling-dash-playbac-1186454034
user_pref("media.cache_size", 2048000); // default=512000 //user_pref("media.cache_size", 2048000); // default=512000
user_pref("media.cache_readahead_limit", 9000); // default=60; stop reading ahead when our buffered data is this many seconds ahead of the current playback user_pref("media.cache_readahead_limit", 9000); // default=60; stop reading ahead when our buffered data is this many seconds ahead of the current playback
user_pref("media.cache_resume_threshold", 6000); // default=30; when a network connection is suspended, don't resume it until the amount of buffered data falls below this threshold (in seconds) user_pref("media.cache_resume_threshold", 6000); // default=30; when a network connection is suspended, don't resume it until the amount of buffered data falls below this threshold (in seconds)
// PREF: faster upload speed // PREF: disable QUIC for faster upload speeds
// Firefox currently has a bug with impacting upload speeds with HTTP3/QUIC // Firefox currently has a bug with impacting upload speeds with HTTP3
// [TEST] https://speedof.me/ // [TEST] https://speedof.me/
// [1] https://bugzilla.mozilla.org/show_bug.cgi?id=1753486 // [1] https://bugzilla.mozilla.org/show_bug.cgi?id=1753486
// [2] https://bugzilla.mozilla.org/show_bug.cgi?id=1596576 // [2] https://bugzilla.mozilla.org/show_bug.cgi?id=1596576
//user_pref("network.http.http3.enable", false); // disables HTTP3/QUIC //user_pref("network.http.http3.enable", false); // disables HTTP3/QUIC
//user_pref("network.http.http2.chunk-size", 32000); // preferred=48000; default=16000 [needed?] //user_pref("network.http.http2.chunk-size", 32000); // preferred=48000; default=16000 [needed?]
// PREF: disable AV1 for hardware decodeable videos
// AV1 uses software (CPU-based) decoding
// Firefox sometimes uses AV1 video decoding even to GPUs which do not support it
// [1] https://www.troddit.com/r/AV1/comments/s5xyph/youtube_av1_codec_have_worse_quality_than_old_vp9
//user_pref("media.av1.enabled", false);
/**************************************************************************** /****************************************************************************
* SECTION: BROWSER CACHE * * SECTION: BROWSER CACHE *
****************************************************************************/ ****************************************************************************/
// PREF: re-enable disk cache (optional) // PREF: disk cache
// [EXTENSION] https://addons.mozilla.org/en-US/firefox/addon/cache-longer/ // [EXTENSION] https://addons.mozilla.org/en-US/firefox/addon/cache-longer/
//user_pref("browser.cache.disk.enable", true); // SecureFox override //user_pref("browser.cache.disk.enable", true); // overrides Securefox
//user_pref("browser.cache.disk.max_entry_size", 51200); // DEFAULT //user_pref("browser.cache.disk.max_entry_size", 51200); // DEFAULT
//user_pref("browser.cache.disk.smart_size.enabled", false); // disable adaptive cache size on disk //user_pref("browser.cache.disk.smart_size.enabled", false); // disable adaptive cache size on disk
//user_pref("browser.cache.disk.capacity", 8192000); // 8 GB cache on disk //user_pref("browser.cache.disk.capacity", 8192000); // 8 GB cache on disk
//user_pref("browser.cache.max_shutdown_io_lag", 16); // 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", 16); // number of seconds the cache spends writing pending data and closing files after shutdown has been signalled
//user_pref("browser.cache.frecency_half_life_hours", 128); // lower cache sweep intervals, the half life used to re-compute cache entries frecency (in hours) //user_pref("browser.cache.frecency_half_life_hours", 128); // lower cache sweep intervals, the half life used to re-compute cache entries frecency (in hours)
// disable clearing cache on shutdown:
//user_pref("privacy.clearOnShutdown.cache", false);
// PREF: increase memory cache size (recommended) // PREF: increase memory cache size
// [1] https://www.makeuseof.com/tag/how-much-data-does-youtube-use/ // [1] https://www.makeuseof.com/tag/how-much-data-does-youtube-use/
//user_pref("browser.cache.memory.capacity", 5242880); // default=-1; 256000=256MB, 512000=512MB, 1024000=1GB, 2097152=2GB, 5242880=5GB, 8388608=8GB //user_pref("browser.cache.memory.capacity", -1); // enforce DEFAULT; 256000=256MB, 512000=512MB, 1024000=1GB, 2097152=2GB, 5242880=5GB, 8388608=8GB
user_pref("browser.cache.memory.max_entry_size", 153600); // alt=51200; preferred=327680 ; -1 -> entries bigger than than 90% of the mem-cache are never cached user_pref("browser.cache.memory.max_entry_size", 153600); // alt=51200; preferred=327680 ; -1 -> entries bigger than than 90% of the mem-cache are never cached
/****************************************************************************
* SECTION: NETWORK *
****************************************************************************/
// PREF: use bigger packets
// [1] https://www.mail-archive.com/support-seamonkey@lists.mozilla.org/msg74561.html
// [2] https://www.mail-archive.com/support-seamonkey@lists.mozilla.org/msg74570.html
user_pref("network.buffer.cache.size", 262144); // preferred=327680; default=32768
user_pref("network.buffer.cache.count", 128); // preferred=240; default=24
// PREF: increase the absolute number of HTTP connections
// [1] https://kb.mozillazine.org/Network.http.max-connections
// [2] https://kb.mozillazine.org/Network.http.max-persistent-connections-per-server
//user_pref("network.http.max-connections", 1800); // default=900
//user_pref("network.http.max-persistent-connections-per-server", 9); // default=6; download connections; anything above 10 is excessive
//user_pref("network.http.max-persistent-connections-per-proxy", 48); // default=32
//user_pref("network.http.max-urgent-start-excessive-connections-per-host", 6); // default=3
//user_pref("network.http.pacing.requests.min-parallelism", 18); // default=6
// PREF: increase DNS cache
user_pref("network.dnsCacheEntries", 20000);
user_pref("network.dnsCacheExpiration", 3600); // keep entries for 1 hour
user_pref("network.dnsCacheExpirationGracePeriod", 240);
// PREF: increase TLS token caching
user_pref("network.ssl_tokens_cache_capacity", 32768); // default=2048; faster SSL (fast reconnects)
// These do not help speed:
// PREF: DoH requests
//user_pref("network.trr.request_timeout_ms", 800); // default=1500
//user_pref("network.trr.retry-timeout-ms", 125); // DEFAULT
//user_pref("network.trr.request_timeout_mode_trronly_ms", 15000); // default=30000
// PREF: close a connection if tls handshake does not finish in given number of seconds
//user_pref("network.http.tls-handshake-timeout", 20); // default=30
// PREF: timeout connections if an initial response is not received in number of seconds
//user_pref("network.http.response.timeout", 200); // default=300
/****************************************************************************
* SECTION: SPECULATIVE CONNECTIONS *
****************************************************************************/
// [NOTE] FF85+ partitions (isolates) pooled connections, prefetch connections,
// pre-connect connections, speculative connections, TLS session identifiers,
// and other connections. We can take advantage of the speed of pre-connections
// while preserving privacy. Users may relax hardening to maximize their preference.
// For more information, see SecureFox: "PREF: State Paritioning" and "PREF: Network Partitioning" [1]
// [1] https://github.com/yokoffing/Betterfox/blob/e9621b0062914da5fdb5f83b8da64041965b7a50/Securefox.js#L74-L108
// [NOTE] To activate and increase network predictions, go to settings in uBlock Origin, and make this setting is DISABLED:
// - "Disable pre-fetching (to prevent any connection for blocked network requests)"
// [NOTE] Add prefs to "MY OVERRIDES" section and uncomment to enable them in your user.js.
// PREF: increase network predictions
//user_pref("network.http.speculative-parallel-limit", 18); // default=6; overrides SecureFox
//user_pref("network.dns.disablePrefetch", false); // overrides SecureFox
//user_pref("network.dns.disablePrefetchFromHTTPS", false);
//user_pref("browser.urlbar.speculativeConnect.enabled", true); // overrides SecureFox
//user_pref("browser.places.speculativeConnect.enabled", true); // overrides SecureFox
//user_pref("network.prefetch-next", true); // overrides SecureFox
//user_pref("network.predictor.enabled", true); // overrides SecureFox
//user_pref("network.predictor.enable-prefetch", true); // overrides SecureFox
//user_pref("network.predictor.enable-hover-on-ssl", true);
//user_pref("network.predictor.preresolve-min-confidence", 10); // default=60; alt=40
//user_pref("network.predictor.preconnect-min-confidence", 20); // default=90; alt=70
//user_pref("network.predictor.prefetch-min-confidence", 30); // default=100; alt=80
//user_pref("network.predictor.prefetch-force-valid-for", 3600); // default=10
//user_pref("network.predictor.prefetch-rolling-load-count", 120); // default=10
//user_pref("network.predictor.max-resources-per-entry", 250); // default=100
//user_pref("network.predictor.max-uri-length", 1000); // default=500
+32 -27
View File
@@ -1,17 +1,9 @@
//
/* Do not COPY+PASTE this file. If you do, only COPY+PASTE the user_pref itself.
*
* If you make changes to your about:config while the program is running, the
* changes will be overwritten when the application restarts.
*
* To make a change to preferences, you will have to edit the user.js file.
*/
/**************************************************************************** /****************************************************************************
* Peskyfox * * Peskyfox *
* "Aquila non capit muscas" * * "Aquila non capit muscas" *
* priority: remove annoyances * * priority: remove annoyances *
* version: 107a * * version: 108 *
* url: https://github.com/yokoffing/Betterfox * * url: https://github.com/yokoffing/Betterfox *
***************************************************************************/ ***************************************************************************/
@@ -47,8 +39,14 @@ user_pref("toolkit.legacyUserProfileCustomizations.stylesheets", true);
// Will still show green arrow in menu bar // Will still show green arrow in menu bar
user_pref("app.update.suppressPrompts", true); user_pref("app.update.suppressPrompts", true);
// PREF: disable Accessibility services // PREF: prevent accessibility services from accessing your browser [RESTART]
// Performance improvement // Accessibility Service may negatively impact Firefox browsing performance
// Disable it if youre not using any type of physical impairment assistive software
// [1] https://support.mozilla.org/kb/accessibility-services
// [2] https://www.ghacks.net/2021/08/25/firefox-tip-turn-off-accessibility-services-to-improve-performance/
// [3] https://www.troddit.com/r/firefox/comments/p8g5zd/why_does_disabling_accessibility_services_improve
// [4] https://winaero.com/firefox-has-accessibility-service-memory-leak-you-should-disable-it/
// [5] https://www.ghacks.net/2022/12/26/firefoxs-accessibility-performance-is-getting-a-huge-boost/
user_pref("accessibility.force_disabled", 1); user_pref("accessibility.force_disabled", 1);
// PREF: disable the Accessibility panel // PREF: disable the Accessibility panel
@@ -136,22 +134,24 @@ user_pref("browser.privatebrowsing.enable-new-indicator", false);
//user_pref("browser.theme.dark-private-windows", false); //user_pref("browser.theme.dark-private-windows", false);
// PREF: Cookie Banner handling [NIGHTLY] // PREF: Cookie Banner handling [NIGHTLY]
// [NOTE] Feature still enforces Total Cookie Protection to limit 3rd-party cookie tracking // [NOTE] Feature still enforces Total Cookie Protection to limit 3rd-party cookie tracking [1]
// [1] https://github.com/mozilla/cookie-banner-rules-list/issues/33#issuecomment-1318460084 // [1] https://github.com/mozilla/cookie-banner-rules-list/issues/33#issuecomment-1318460084
// [2] https://phabricator.services.mozilla.com/D153642 // [2] https://phabricator.services.mozilla.com/D153642
// 0: Disables all cookie banner handling (default) // [3] https://winaero.com/make-firefox-automatically-click-on-reject-all-in-cookie-banner-consent/
// 1: reject banners if it is a one-click option; otherwise, keep banners on screen // [4] https://docs.google.com/spreadsheets/d/1Nb4gVlGadyxix4i4FBDnOeT_eJp2Zcv69o-KfHtK-aA/edit#gid=0
// 2: reject banners if it is a one-click option; otherwise, fall back to the accept button to remove banner // 2: reject banners if it is a one-click option; otherwise, fall back to the accept button to remove banner
// 1: reject banners if it is a one-click option; otherwise, keep banners on screen
// 0: disable all cookie banner handling
//user_pref("cookiebanners.service.mode", 2); //user_pref("cookiebanners.service.mode", 2);
//user_pref("cookiebanners.service.mode.privateBrowsing", 1); //user_pref("cookiebanners.service.mode.privateBrowsing", 2);
//user_pref("cookiebanners.bannerClicking.enabled", true); //user_pref("cookiebanners.bannerClicking.enabled", true); // DEFAULT [FF108]
//user_pref("cookiebanners.cookieInjector.enabled", true); // DEFAULT //user_pref("cookiebanners.cookieInjector.enabled", true); // DEFAULT
// PREF: enable global CookieBannerRules // PREF: enable global CookieBannerRules
// This is used for click rules that can handle common Consent Management Providers (CMP). // This is used for click rules that can handle common Consent Management Providers (CMP)
// [NOTE] Enabling this (when the cookie handling feature is enabled) may // [NOTE] Enabling this (when the cookie handling feature is enabled) may
// negatively impact site performance since it requires us to run rule-defined // negatively impact site performance since it requires us to run rule-defined
// query selectors for every page. // query selectors for every page
//user_pref("cookiebanners.service.enableGlobalRules", true); //user_pref("cookiebanners.service.enableGlobalRules", true);
/**************************************************************************** /****************************************************************************
@@ -188,6 +188,7 @@ user_pref("browser.urlbar.suggest.engines", false);
//user_pref("browser.urlbar.suggest.openpage", true); //user_pref("browser.urlbar.suggest.openpage", true);
//user_pref("browser.urlbar.suggest.quickactions", false); // [NIGHTLY] //user_pref("browser.urlbar.suggest.quickactions", false); // [NIGHTLY]
//user_pref("browser.urlbar.suggest.searches", false); //user_pref("browser.urlbar.suggest.searches", false);
//user_pref("browser.urlbar.suggest.weather", true); // DEFAULT [FF108]
// Disable dropdown suggestions with empty query: // Disable dropdown suggestions with empty query:
user_pref("browser.urlbar.suggest.topsites", false); user_pref("browser.urlbar.suggest.topsites", false);
// enable helpful features: // enable helpful features:
@@ -196,7 +197,7 @@ user_pref("browser.urlbar.unitConversion.enabled", true);
// PREF: Adaptive History Autofill // PREF: Adaptive History Autofill
// [1] https://docs.google.com/document/u/1/d/e/2PACX-1vRBLr_2dxus-aYhZRUkW9Q3B1K0uC-a0qQyE3kQDTU3pcNpDHb36-Pfo9fbETk89e7Jz4nkrqwRhi4j/pub // [1] https://docs.google.com/document/u/1/d/e/2PACX-1vRBLr_2dxus-aYhZRUkW9Q3B1K0uC-a0qQyE3kQDTU3pcNpDHb36-Pfo9fbETk89e7Jz4nkrqwRhi4j/pub
//user_pref("browser.urlbar.autoFill", true); [DEFAULT] //user_pref("browser.urlbar.autoFill", true); // [DEFAULT]
//user_pref("browser.urlbar.autoFill.adaptiveHistory.enabled", false); //user_pref("browser.urlbar.autoFill.adaptiveHistory.enabled", false);
// PREF: Quick Actions in the URL Bar // PREF: Quick Actions in the URL Bar
@@ -212,6 +213,9 @@ user_pref("browser.urlbar.unitConversion.enabled", true);
// default=10, disable=0 // default=10, disable=0
//user_pref("browser.urlbar.maxRichResults", 1); //user_pref("browser.urlbar.maxRichResults", 1);
// PREF: show search query in URL bar instead of URL upon navigation
//user_pref("browser.urlbar.showSearchTerms.enabled", true); // DEFAULT
/**************************************************************************** /****************************************************************************
* SECTION: AUTOPLAY * * SECTION: AUTOPLAY *
****************************************************************************/ ****************************************************************************/
@@ -255,7 +259,7 @@ user_pref("browser.urlbar.unitConversion.enabled", true);
// PREF: Home / New Tab page items // PREF: Home / New Tab page items
// [SETTINGS] Home>Firefox Home Content // [SETTINGS] Home>Firefox Home Content
// [1] https://github.com/arkenfox/user.js/issues/1556 // [1] https://github.com/arkenfox/user.js/issues/1556
//user_pref("browser.newtabpage.activity-stream.discoverystream.enabled", false); /// unnecessary? //user_pref("browser.newtabpage.activity-stream.discoverystream.enabled", false); // unnecessary?
//user_pref("browser.newtabpage.activity-stream.showSearch", true); // NTP Web Search [DEFAULT] //user_pref("browser.newtabpage.activity-stream.showSearch", true); // NTP Web Search [DEFAULT]
user_pref("browser.newtabpage.activity-stream.feeds.topsites", false); // Shortcuts user_pref("browser.newtabpage.activity-stream.feeds.topsites", false); // Shortcuts
//user_pref("browser.newtabpage.activity-stream.showSponsoredTopSites", false); // Sponsored shortcuts [FF83+] //user_pref("browser.newtabpage.activity-stream.showSponsoredTopSites", false); // Sponsored shortcuts [FF83+]
@@ -285,9 +289,9 @@ user_pref("browser.newtabpage.activity-stream.feeds.section.topstories", false);
// PREF: Disable built-in Pocket extension // PREF: Disable built-in Pocket extension
user_pref("extensions.pocket.enabled", false); user_pref("extensions.pocket.enabled", false);
// user_pref("extensions.pocket.api"," "); //user_pref("extensions.pocket.api"," ");
// user_pref("extensions.pocket.oAuthConsumerKey", " "); //user_pref("extensions.pocket.oAuthConsumerKey", " ");
// user_pref("extensions.pocket.site", " "); //user_pref("extensions.pocket.site", " ");
/****************************************************************************** /******************************************************************************
* SECTION: DOWNLOADS * * SECTION: DOWNLOADS *
@@ -336,11 +340,11 @@ user_pref("browser.download.always_ask_before_handling_new_types", true);
// PREF: open PDFs inline (FF103+) // PREF: open PDFs inline (FF103+)
user_pref("browser.download.open_pdf_attachments_inline", true); user_pref("browser.download.open_pdf_attachments_inline", true);
// PREF: PDF sidebar on load // PREF: PDF sidebar on load [HIDDEN]
// 2=table of contents (if not available, will default to 1) // 2=table of contents (if not available, will default to 1)
// 1=view pages // 1=view pages
// -1=disabled (default) // -1=disabled (default)
//user_pref("pdfjs.sidebarViewOnLoad", 1); //user_pref("pdfjs.sidebarViewOnLoad", 2);
// PREF: default zoom for PDFs [HIDDEN] // PREF: default zoom for PDFs [HIDDEN]
// [NOTE] "page-width" not needed if using sidebar on load // [NOTE] "page-width" not needed if using sidebar on load
@@ -433,8 +437,9 @@ user_pref("dom.disable_window_move_resize", true);
//user_pref("accessibility.blockautorefresh", true); //user_pref("accessibility.blockautorefresh", true);
//user_pref("browser.meta_refresh_when_inactive.disabled", true); //user_pref("browser.meta_refresh_when_inactive.disabled", true);
// PREF: Plain Text only when copying text // PREF: Controls if a double click word selection also deletes one adjacent whitespace
user_pref("clipboard.plainTextOnly", true); // (if feasible). This mimics native behavior on macOS.
//user_pref("editor.word_select.delete_space_after_doubleclick_selection", true);
// PREF: limit events that can cause a pop-up // PREF: limit events that can cause a pop-up
// Firefox provides an option to provide exceptions for sites, remembered in your Site Settings. // Firefox provides an option to provide exceptions for sites, remembered in your Site Settings.
+12 -10
View File
@@ -30,7 +30,7 @@ about:config tweaks to enhance [Mozilla Firefox](https://www.mozilla.org/en-US/f
| [Peskyfox](https://github.com/yokoffing/Betterfox/blob/master/Peskyfox.js) | Unclutter the new tab page. Remove Pocket and form autofill. Prevent Firefox from serving annoying webpage notifications. | | [Peskyfox](https://github.com/yokoffing/Betterfox/blob/master/Peskyfox.js) | Unclutter the new tab page. Remove Pocket and form autofill. Prevent Firefox from serving annoying webpage notifications. |
| [Fastfox](https://github.com/yokoffing/Betterfox/blob/master/Fastfox.js) | Immensely increase Firefox's browsing speed. Give Chrome a run for its money!| | [Fastfox](https://github.com/yokoffing/Betterfox/blob/master/Fastfox.js) | Immensely increase Firefox's browsing speed. Give Chrome a run for its money!|
| [Smoothfox](https://github.com/yokoffing/Betterfox/blob/master/Smoothfox.js) | Get Microsoft Edge-like smooth scrolling on your favorite browser. | | [Smoothfox](https://github.com/yokoffing/Betterfox/blob/master/Smoothfox.js) | Get Microsoft Edge-like smooth scrolling on your favorite browser. |
| [user.js](https://github.com/yokoffing/Betterfox/blob/master/user.js) | All the essentails. None of the breakage. Users may download this list as their own user.js. | | [user.js](https://github.com/yokoffing/Betterfox/blob/master/user.js) | All the essentials. None of the breakage. Users may download this list as their own user.js. |
:bulb: `Securefox`, `Peskyfox`, `Fastfox`, and `Smoothfox` are guides to relevant prefs in Firefox. The `user.js` is curated from the prefs located in these documents, so just because a pref is in one of the guides doesn't mean it is included in the final document, the `user.js`. Please use the descriptions and references as a guide for the prefs in Firefox, and open a [feature request](https://github.com/yokoffing/Betterfox/issues/new/choose) if you think one can be improved upon. :bulb: `Securefox`, `Peskyfox`, `Fastfox`, and `Smoothfox` are guides to relevant prefs in Firefox. The `user.js` is curated from the prefs located in these documents, so just because a pref is in one of the guides doesn't mean it is included in the final document, the `user.js`. Please use the descriptions and references as a guide for the prefs in Firefox, and open a [feature request](https://github.com/yokoffing/Betterfox/issues/new/choose) if you think one can be improved upon.
@@ -41,15 +41,15 @@ Betterfox was created with a [less is more](https://medium.com/the-mission/less-
## Assumptions ## Assumptions
If you use any of the features below, please view the [common overrides](https://github.com/yokoffing/Betterfox/issues/87) sticky to restore functionality. If you use any of the features below, please view the [common overrides](https://github.com/yokoffing/Betterfox/issues/87) sticky to restore functionality.
* **Google Safe Browsing** (GSB) is disabled. We recommend use DNS-level protection like [NextDNS](https://nextdns.io/?from=xujj63g5), so check out our configuration guide [here](https://github.com/yokoffing/NextDNS-Config). If you have no other form of protection, then please re-enable GSB. * **Google Safe Browsing** (GSB) is disabled. We recommend use DNS-level protection like [NextDNS](https://nextdns.io/?from=xujj63g5), so check out our configuration guide [here](https://github.com/yokoffing/NextDNS-Config). :warning: If you have no other form of protection, then please enable GSB!
* The native **password manager** is also disabled. If you don't use something like [KeePass](https://addons.mozilla.org/en-US/firefox/addon/keepassxc-browser/), [Bitwarden](https://addons.mozilla.org/en-US/firefox/addon/bitwarden-password-manager/), or [1Password](https://addons.mozilla.org/en-US/firefox/addon/1password-x-password-manager), then re-enable Firefox's password management. * Firefox **Accessibility Service** is disabled to improve resource utilization and security. This will impact external application autofill capability (the ability to use a keyboard shortcut to fill in forms including logins) and screen readers. If you use assistive software, override this.
* The native **password manager** is also disabled. If you don't use something like [KeePass](https://addons.mozilla.org/en-US/firefox/addon/keepassxc-browser/), [Bitwarden](https://addons.mozilla.org/en-US/firefox/addon/bitwarden-password-manager/), or [1Password](https://addons.mozilla.org/en-US/firefox/addon/1password-x-password-manager), then enable Firefox's password management.
* **Embedded tweets, instagram, reddit posts, and tiktoks** load on webpages, even though these requests are usually blocked when using Firefox's [Strict Enhanced Tracking Protection](https://support.mozilla.org/en-US/kb/enhanced-tracking-protection-firefox-desktop#w_strict-enhanced-tracking-protection).
* **Firefox Sync** and **Firefox View** are disabled. * **Firefox Sync** and **Firefox View** are disabled.
* **Site notifications** are disabled. * **Site notifications** are disabled.
* **Location requests** are rejected. * **Location requests** are rejected.
* **Embedded tweets, instagram, and reddit posts** load on webpages, even though these requests are usually blocked when using Firefox's [Strict Enhanced Tracking Protection](https://support.mozilla.org/en-US/kb/enhanced-tracking-protection-firefox-desktop#w_strict-enhanced-tracking-protection). * Since Firefox implemented [state](https://github.com/yokoffing/Betterfox/blob/537eb902106f5cacebfd7a77555193ba4573dc6e/SecureFox.js#L73-L88) and [network](https://github.com/yokoffing/Betterfox/blob/537eb902106f5cacebfd7a77555193ba4573dc6e/SecureFox.js#L93-L100) **partitioning**, it is recommended but no longer necessary to clear browsing data after every session.
* Advanced users: We suggest that you [selectively allow](https://github.com/gorhill/uBlock/wiki/Dynamic-filtering:-quick-guide) these requests in [uBlock Origin](https://addons.mozilla.org/blog/ublock-origin-everything-you-need-to-know-about-the-ad-blocker/) with [medium mode](https://github.com/gorhill/uBlock/wiki/Blocking-mode:-medium-mode) enabled + add the [Privacy Essentials](https://github.com/yokoffing/filterlists/blob/main/privacy_essentials.txt) filter to your [custom lists](https://github.com/gorhill/uBlock/wiki/Dashboard:-Filter-lists#3rd-party-filter-lists). * [Fingerprinting](https://smartframe.io/blog/browser-fingerprinting-everything-you-need-to-know/) is a high [threat model](https://thenewoil.org/threatmodel.html) issue and is only addressed reasonably by TOR.<sup>[1](https://youtu.be/5NrbdO4yWek?t=4334)</sup> If your threat level calls for _anonymity_ and not just reasonable _privacy_, then please use the [TOR browser](https://www.torproject.org).
* Since Firefox implemented [state](https://github.com/yokoffing/Betterfox/blob/537eb902106f5cacebfd7a77555193ba4573dc6e/SecureFox.js#L73-L88) and [network](https://github.com/yokoffing/Betterfox/blob/537eb902106f5cacebfd7a77555193ba4573dc6e/SecureFox.js#L93-L100) partitioning, it is recommended but no longer necessary to **clear browsing data** after every session.
* If your threat level calls for _anonymity_ and not just reasonable _privacy_,<sup>[1](https://thenewoil.org/secprivanon.html)</sup> please use the [TOR browser](https://www.torproject.org).
## Mentions ## Mentions
@@ -58,11 +58,13 @@ If you use any of the features below, please view the [common overrides](https:/
[2](https://old.reddit.com/r/technology/comments/m4qdvt/google_accused_of_tracking_users_in_incognito/gqwzzgr/?context=2) [2](https://old.reddit.com/r/technology/comments/m4qdvt/google_accused_of_tracking_users_in_incognito/gqwzzgr/?context=2)
[3](https://old.reddit.com/r/Ubuntu/comments/pke4wz/suspicious_file_found_after_using_brave/hc568jg/?context=2) [3](https://old.reddit.com/r/Ubuntu/comments/pke4wz/suspicious_file_found_after_using_brave/hc568jg/?context=2)
[4](https://old.reddit.com/r/browsers/comments/y7w57n/which_browser_do_you_use_on_your_devices/it30hqi/?context=3) [4](https://old.reddit.com/r/browsers/comments/y7w57n/which_browser_do_you_use_on_your_devices/it30hqi/?context=3)
[5](https://www.troddit.com/r/firefox/comments/z5auzi/firefox_not_properly_usingrecognizing_gpu_poor/iy0kru3)
[6](https://www.troddit.com/r/firefox/comments/z5auzi/firefox_not_properly_usingrecognizing_gpu_poor/iy36hyz)
#### Browser Integration #### Browser Integration
* [Pulse Browser](https://github.com/pulse-browser/browser#%EF%B8%8F-credits) | [files](https://github.com/pulse-browser/browser/tree/alpha/src/browser/app/profile) * [Pulse Browser](https://github.com/pulse-browser/browser#%EF%B8%8F-credits) (Dec 2021) | [files](https://github.com/pulse-browser/browser/tree/alpha/src/browser/app/profile)
* [Ghostery Dawn](https://github.com/ghostery/user-agent-desktop#community) | [files](https://github.com/ghostery/user-agent-desktop/tree/main/brands/ghostery/branding/pref) * [Ghostery Dawn](https://github.com/ghostery/user-agent-desktop#community) (Feb 2021) | [files](https://github.com/ghostery/user-agent-desktop/tree/main/brands/ghostery/branding/pref)
* [Betterfox adopted into Ghostery Dawn](https://web.archive.org/web/20210509171835/https://www.ghostery.com/ghostery-dawn-update-more/) (Feb 2021)<sup>[1](https://web.archive.org/web/20210921114333/https://www.ghostery.com/ghostery-dawn-product-update/)</sup> * [Betterfox adopted into Ghostery Dawn](https://web.archive.org/web/20210509171835/https://www.ghostery.com/ghostery-dawn-update-more/)<sup>[1](https://web.archive.org/web/20210921114333/https://www.ghostery.com/ghostery-dawn-product-update/)</sup>
#### Guides #### Guides
* [FMHY Browser Tools: Privacy Hardened Firefox](https://www.reddit.com/r/FREEMEDIAHECKYEAH/wiki/storage/#wiki_privacy_hardened_firefox) * [FMHY Browser Tools: Privacy Hardened Firefox](https://www.reddit.com/r/FREEMEDIAHECKYEAH/wiki/storage/#wiki_privacy_hardened_firefox)
+49 -71
View File
@@ -1,17 +1,9 @@
//
/* Do not COPY+PASTE this file. If you do, only COPY+PASTE the user_pref itself.
*
* If you make changes to your about:config while the program is running, the
* changes will be overwritten when the application restarts.
*
* To make a change to preferences, you will have to edit the user.js file.
*/
/**************************************************************************** /****************************************************************************
* Securefox * * Securefox *
* "Natura non constristatur" * * "Natura non constristatur" *
* priority: provide sensible security and privacy * * priority: provide sensible security and privacy *
* version: 107a * * version: 108 *
* url: https://github.com/yokoffing/Betterfox * * url: https://github.com/yokoffing/Betterfox *
****************************************************************************/ ****************************************************************************/
@@ -24,10 +16,8 @@
// Firefox deletes all stored site data (incl. cookies, browser storage) if the site is a known tracker and hasnt // Firefox deletes all stored site data (incl. cookies, browser storage) if the site is a known tracker and hasnt
// been interacted with in the last 30 days. // been interacted with in the last 30 days.
// [NOTE] FF86: "Strict" tracking protection enables dFPI. // [NOTE] FF86: "Strict" tracking protection enables dFPI.
// [1] https://blog.mozilla.org/firefox/control-trackers-with-firefox/ // [1] https://support.mozilla.org/en-US/kb/enhanced-tracking-protection-firefox-desktop
// [2] https://support.mozilla.org/en-US/kb/enhanced-tracking-protection-firefox-desktop // [2] https://www.reddit.com/r/firefox/comments/l7xetb/network_priority_for_firefoxs_enhanced_tracking/gle2mqn/?web2x&context=3
// [3] https://blog.mozilla.org/security/2020/01/07/firefox-72-fingerprinting/
// [4] https://www.reddit.com/r/firefox/comments/l7xetb/network_priority_for_firefoxs_enhanced_tracking/gle2mqn/?web2x&context=3
//user_pref("privacy.trackingprotection.enabled", true); // DEFAULT //user_pref("privacy.trackingprotection.enabled", true); // DEFAULT
//user_pref("privacy.trackingprotection.pbmode.enabled", true); // DEFAULT //user_pref("privacy.trackingprotection.pbmode.enabled", true); // DEFAULT
//user_pref("browser.contentblocking.customBlockList.preferences.ui.enabled", false); // DEFAULT //user_pref("browser.contentblocking.customBlockList.preferences.ui.enabled", false); // DEFAULT
@@ -106,7 +96,7 @@ user_pref("urlclassifier.features.socialtracking.skipURLs", "*.instagram.com, *.
//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", true); [REGRESSIONS] //user_pref("privacy.partition.bloburl_per_agent_cluster", true); [REGRESSIONS]
// 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+]
// PREF: Smartblock // PREF: Smartblock
@@ -148,10 +138,9 @@ user_pref("privacy.partition.always_partition_third_party_non_cookie_storage.exe
// PREF: Beacon API // PREF: Beacon API
// Disabling this API sometimes causes breakage: // Disabling this API sometimes causes breakage:
// [TEST] https://vercel.com/ // [TEST] https://vercel.com/
// Instead of disable, block in uBlock Origin with rule `$ping` // [1] https://developer.mozilla.org/docs/Web/API/Navigator/sendBeacon
// [1] https://github.com/arkenfox/user.js/issues/1586#issuecomment-1320372943 // [2] https://github.com/arkenfox/user.js/issues/1586
// [2] https://developer.mozilla.org/docs/Web/API/Navigator/sendBeacon //user_pref("beacon.enabled", false);
user_pref("beacon.enabled", false);
// PREF: battery status tracking // PREF: battery status tracking
// [NOTE] Pref remains, but API is depreciated // [NOTE] Pref remains, but API is depreciated
@@ -294,10 +283,10 @@ user_pref("security.tls.enable_0rtt_data", false); // disable 0 RTT to improve t
// In Private Browsing windows: uses the most restrictive between normal and private // In Private Browsing windows: uses the most restrictive between normal and private
// 1=only base system fonts, 2=also fonts from optional language packs, 3=also user-installed fonts // 1=only base system fonts, 2=also fonts from optional language packs, 3=also user-installed fonts
// [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.standard", 1); // Normal Browsing windows with tracking protection disabled(?)
user_pref("layout.css.font-visibility.trackingprotection", 1); // Normal Browsing windows with tracking protection enabled
user_pref("layout.css.font-visibility.private", 1); // Private Browsing windows
//user_pref("layout.css.font-visibility.resistFingerprinting", 1); // DEFAULT //user_pref("layout.css.font-visibility.resistFingerprinting", 1); // DEFAULT
//user_pref("layout.css.font-visibility.trackingprotection", 1); // Normal Browsing windows with tracking protection enabled
//user_pref("layout.css.font-visibility.private", 1); // Private Browsing windows
//user_pref("layout.css.font-visibility.standard", 1); // Normal Browsing windows with tracking protection disabled(?)
/**************************************************************************** /****************************************************************************
* SECTION: RESIST FINGERPRINTING (RFP) * * SECTION: RESIST FINGERPRINTING (RFP) *
@@ -363,7 +352,7 @@ user_pref("browser.sessionstore.privacy_level", 2);
// PREF: remove temp files opened with an external application // PREF: remove temp files opened with an external application
// [1] https://bugzilla.mozilla.org/302433 // [1] https://bugzilla.mozilla.org/302433
user_pref("browser.helperApps.deleteTempFileOnExit", true); //user_pref("browser.helperApps.deleteTempFileOnExit", true); // DEFAULT [FF108]
// PREF: disable page thumbnails capturing // PREF: disable page thumbnails capturing
user_pref("browser.pagethumbnails.capturing_disabled", true); // [HIDDEN PREF] user_pref("browser.pagethumbnails.capturing_disabled", true); // [HIDDEN PREF]
@@ -432,13 +421,13 @@ user_pref("privacy.history.custom", true);
//user_pref("privacy.clearOnShutdown.history", true); // [DEFAULT] //user_pref("privacy.clearOnShutdown.history", true); // [DEFAULT]
//user_pref("privacy.clearOnShutdown.formdata", true); // [DEFAULT] //user_pref("privacy.clearOnShutdown.formdata", true); // [DEFAULT]
//user_pref("privacy.clearOnShutdown.sessions", true); // [DEFAULT] //user_pref("privacy.clearOnShutdown.sessions", true); // [DEFAULT]
//user_pref("privacy.clearOnShutdown.offlineApps", false); // [DEFAULT] //user_pref("privacy.clearOnShutdown.offlineApps", true);
//user_pref("privacy.clearOnShutdown.siteSettings", false); // [DEFAULT] //user_pref("privacy.clearOnShutdown.siteSettings", false); // [DEFAULT]
// PREF: configure site exceptions // PREF: configure site exceptions
// [NOTE] Currently, there is no way to add sites via about:config // [NOTE] Currently, there is no way to add sites via about:config
// [SETTING] to manage site exceptions: Options>Privacy & Security>Cookies & Site Data>Manage Exceptions // [SETTING] to manage site exceptions: Options>Privacy & Security>Cookies & Site Data>Manage Exceptions
// [SETTING] to add site exceptions: Ctrl+I>Permissions>Cookies>Allow (when on the website in question) // or when on the website in question: Ctrl+I>Permissions>Cookies>Allow
// For cross-domain logins, add exceptions for both sites: // For cross-domain logins, add exceptions for both sites:
// e.g. https://www.youtube.com (site) + https://accounts.google.com (single sign on) // e.g. https://www.youtube.com (site) + https://accounts.google.com (single sign on)
// [WARNING] Be selective with what cookies you keep, as they also disable partitioning [1] // [WARNING] Be selective with what cookies you keep, as they also disable partitioning [1]
@@ -447,15 +436,6 @@ user_pref("privacy.history.custom", true);
/****************************************************************************** /******************************************************************************
* SECTION: SPECULATIVE CONNECTIONS * * SECTION: SPECULATIVE CONNECTIONS *
******************************************************************************/ ******************************************************************************/
// [NOTE] FF85+ partitions (isolates) pooled connections, prefetch connections,
// pre-connect connections, speculative connections, TLS session identifiers,
// and other connections. We can take advantage of the speed of pre-connections
// while preserving privacy. Users may relax hardening to maximize their preference.
// For more information, see SecureFox: "PREF: State Paritioning" and "PREF: Network Partitioning" [1]
// [1] https://github.com/yokoffing/Betterfox/blob/e9621b0062914da5fdb5f83b8da64041965b7a50/Securefox.js#L74-L108
// [NOTE] To activate and increase network predictions, go to settings in uBlock Origin, and make this setting is DISABLED:
// - "Disable pre-fetching (to prevent any connection for blocked network requests)"
// [NOTE] Add prefs to "MY OVERRIDES" section to enable.
// 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
@@ -463,18 +443,32 @@ user_pref("privacy.history.custom", true);
// [2] https://github.com/arkenfox/user.js/issues/1556 // [2] https://github.com/arkenfox/user.js/issues/1556
//user_pref("browser.newtab.preload", true); // DEFAULT //user_pref("browser.newtab.preload", true); // DEFAULT
// PREF: Speculative connections on New Tab page // PREF: Speculative Connections
// Firefox will open predictive connections to sites when the user hovers their mouse over thumbnails // Firefox will open predictive connections to sites when the user hovers their mouse over thumbnails
// on the New Tab Page or the user starts to search in the Search Bar, or in the search field on the // on the New Tab Page or the user starts to search in the Search Bar, or in the search field on the
// New Tab Page. In case the user follows through with the action, the page can begin loading faster // New Tab Page [1]. This pref may control speculative connects for normal links, too [2].
// The maximum number of current global half open sockets allowable when starting a new speculative connection [3].
// In case the user follows through with the action, the page can begin loading faster
// since some of the work was already started in advance. // since some of the work was already started in advance.
// [NOTE] TCP and SSL handshakes are set up in advance but page contents are not downloaded until a click on the link is registered // [NOTE] TCP and SSL handshakes are set up in advance but page contents are not downloaded until a click on the link is registered
// [1] https://support.mozilla.org/en-US/kb/how-stop-firefox-making-automatic-connections?redirectslug=how-stop-firefox-automatically-making-connections&redirectlocale=en-US#:~:text=Speculative%20pre%2Dconnections // [1] https://support.mozilla.org/en-US/kb/how-stop-firefox-making-automatic-connections?redirectslug=how-stop-firefox-automatically-making-connections&redirectlocale=en-US#:~:text=Speculative%20pre%2Dconnections
// [2] https://news.slashdot.org/story/15/08/14/2321202/how-to-quash-firefoxs-silent-requests // [2] https://news.slashdot.org/story/15/08/14/2321202/how-to-quash-firefoxs-silent-requests
// [3] https://www.keycdn.com/blog/resource-hints#prefetch // [3] https://searchfox.org/mozilla-central/rev/028c68d5f32df54bca4cf96376f79e48dfafdf08/modules/libpref/init/all.js#1280-1282
// [4] https://3perf.com/blog/link-rels/#prefetch // [4] https://www.keycdn.com/blog/resource-hints#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);
// PREF: Preconnect to the autocomplete URL in the address bar
// Firefox preloads URLs that autocomplete when a user types into the address bar.
// Connects to destination server ahead of time, to avoid TCP handshake latency.
// [NOTE] Firefox will perform DNS lookup (if enabled) and TCP and TLS handshake,
// but will not start sending or receiving HTTP data.
// [1] https://www.ghacks.net/2017/07/24/disable-preloading-firefox-autocomplete-urls/
user_pref("browser.urlbar.speculativeConnect.enabled", false);
// PREF: disable mousedown speculative connections on bookmarks and history
user_pref("browser.places.speculativeConnect.enabled", false);
// PREF: DNS pre-resolve <link rel="dns-prefetch"> // PREF: DNS pre-resolve <link rel="dns-prefetch">
// Resolve hostnames ahead of time, to avoid DNS latency. // Resolve hostnames ahead of time, to avoid DNS latency.
// In order to reduce latency, Firefox will proactively perform domain name resolution on links that // In order to reduce latency, Firefox will proactively perform domain name resolution on links that
@@ -484,10 +478,7 @@ user_pref("network.http.speculative-parallel-limit", 0);
// [3] https://www.keycdn.com/blog/resource-hints#2-dns-prefetching // [3] https://www.keycdn.com/blog/resource-hints#2-dns-prefetching
// [4] http://www.mecs-press.org/ijieeb/ijieeb-v7-n5/IJIEEB-V7-N5-2.pdf // [4] http://www.mecs-press.org/ijieeb/ijieeb-v7-n5/IJIEEB-V7-N5-2.pdf
user_pref("network.dns.disablePrefetch", true); user_pref("network.dns.disablePrefetch", true);
//user_pref("network.dns.disablePrefetchFromHTTPS", true); // DEFAULT user_pref("network.dns.disablePrefetchFromHTTPS", true); // enforce DEFAULT
//user_pref("network.dnsCacheEntries", 20000);
//user_pref("network.dnsCacheExpiration", 3600);
//user_pref("network.dnsCacheExpirationGracePeriod", 240);
// PREF: Preload <link rel=preload> // PREF: Preload <link rel=preload>
// This tells the browser that the resource should be loaded as part of the current navigation // This tells the browser that the resource should be loaded as part of the current navigation
@@ -508,17 +499,6 @@ user_pref("network.dns.disablePrefetch", true);
// [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: Preconnect to the autocomplete URL in the address bar
// Firefox preloads URLs that autocomplete when a user types into the address bar.
// Connects to destination server ahead of time, to avoid TCP handshake latency.
// [NOTE] Firefox will perform DNS lookup (if enabled) and TCP and TLS handshake,
// but will not start sending or receiving HTTP data.
// [1] https://www.ghacks.net/2017/07/24/disable-preloading-firefox-autocomplete-urls/
user_pref("browser.urlbar.speculativeConnect.enabled", false);
// PREF: disable mousedown speculative connections on bookmarks and history
user_pref("browser.places.speculativeConnect.enabled", false);
// 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.
@@ -538,11 +518,11 @@ user_pref("network.prefetch-next", false);
// needed when the user visits a webpage (such as image.jpg and script.js), so that the next time the // needed when the user visits a webpage (such as image.jpg and script.js), so that the next time the
// user prepares to go to that webpage (upon navigation? URL bar? mouseover?), this history can be used // user prepares to go to that webpage (upon navigation? URL bar? mouseover?), this history can be used
// to predict what resources will be needed rather than wait for the document to link those resources. // to predict what resources will be needed rather than wait for the document to link those resources.
/// NP only performs pre-connect, not prefetch, by default, including DNS pre-resolve and TCP preconnect // NP only performs pre-connect, not prefetch, by default, including DNS pre-resolve and TCP preconnect
// (which includes SSL handshake). No data is actually sent to the site until a user actively clicks // (which includes SSL handshake). No data is actually sent to the site until a user actively clicks
// a link. However, NP is still opening TCP connections and doing SSL handshakes, so there is still // a link. However, NP is still opening TCP connections and doing SSL handshakes, so there is still
// information leakage about your browsing patterns. This isn't desirable from a privacy perspective. // information leakage about your browsing patterns. This isn't desirable from a privacy perspective.
// [NOTE] Disabling DNS prefetching disables the DNS prefetching behavior of NP // [NOTE] Disabling DNS prefetching disables the DNS prefetching behavior of NP.
// [1] https://wiki.mozilla.org/Privacy/Reviews/Necko // [1] https://wiki.mozilla.org/Privacy/Reviews/Necko
// [2] https://www.ghacks.net/2014/05/11/seer-disable-firefox/ // [2] https://www.ghacks.net/2014/05/11/seer-disable-firefox/
// [3] https://github.com/dillbyrne/random-agent-spoofer/issues/238#issuecomment-110214518 // [3] https://github.com/dillbyrne/random-agent-spoofer/issues/238#issuecomment-110214518
@@ -563,11 +543,6 @@ user_pref("network.predictor.enable-prefetch", false);
// faster since some of the work was already started in advance. Focuses on fetching a resource // faster since some of the work was already started in advance. Focuses on fetching a resource
// for the NEXT navigation. // for the NEXT navigation.
//user_pref("network.predictor.enable-hover-on-ssl", false); // DEFAULT //user_pref("network.predictor.enable-hover-on-ssl", false); // DEFAULT
//user_pref("network.predictor.preresolve-min-confidence", 10); // default=60; alt=20
//user_pref("network.predictor.preconnect-min-confidence", 20); // default=90; alt=40
//user_pref("network.predictor.prefetch-min-confidence", 20); // default 100; alt=60
//user_pref("network.predictor.prefetch-force-valid-for", 3600); // default=10
//user_pref("network.predictor.prefetch-rolling-load-count", 120); // default=10
/****************************************************************************** /******************************************************************************
* SECTION: SEARCH / URL BAR * * SECTION: SEARCH / URL BAR *
@@ -648,11 +623,11 @@ user_pref("network.IDN_show_punycode", true);
// [NOTE] HTTPS-Only Mode needs to be disabled for HTTPS First to work. // [NOTE] HTTPS-Only Mode needs to be disabled for HTTPS First to work.
// [TEST] http://example.com [upgrade] // [TEST] http://example.com [upgrade]
// [TEST] http://httpforever.com/ [no upgrade] // [TEST] http://httpforever.com/ [no upgrade]
// [1] https://bugzilla.mozilla.org/show_bug.cgi?id=1706552 // [1] https://bugzilla.mozilla.org/show_bug.cgi?id=1704453
// [2] https://web.dev/why-https-matters/ // [2] https://web.dev/why-https-matters/
// [3] https://www.cloudflare.com/learning/ssl/why-use-https/ // [3] https://www.cloudflare.com/learning/ssl/why-use-https/
//user_pref("dom.security.https_first", true); //user_pref("dom.security.https_first", true);
//user_pref("dom.security.https_first_pbm", true); // default //user_pref("dom.security.https_first_pbm", true); // DEFAULT
/****************************************************************************** /******************************************************************************
* SECTION: HTTPS-ONLY MODE * * SECTION: HTTPS-ONLY MODE *
@@ -687,7 +662,7 @@ user_pref("dom.security.https_only_mode_error_page_user_suggestions", true);
// [1] https://bugzilla.mozilla.org/buglist.cgi?bug_id=1642387,1660945 // [1] https://bugzilla.mozilla.org/buglist.cgi?bug_id=1642387,1660945
// [2] https://blog.mozilla.org/attack-and-defense/2021/03/10/insights-into-https-only-mode/ // [2] https://blog.mozilla.org/attack-and-defense/2021/03/10/insights-into-https-only-mode/
//user_pref("dom.security.https_only_mode_send_http_background_request", true); // DEFAULT //user_pref("dom.security.https_only_mode_send_http_background_request", true); // DEFAULT
//user_pref("dom.security.https_only_fire_http_request_background_timer_ms", 1250); // default=3000 //user_pref("dom.security.https_only_fire_http_request_background_timer_ms", 2000); // default=3000
// PREF: Enable HTTPS-Only mode for local resources // PREF: Enable HTTPS-Only mode for local resources
//user_pref("dom.security.https_only_mode.upgrade_local", true); //user_pref("dom.security.https_only_mode.upgrade_local", true);
@@ -888,7 +863,7 @@ user_pref("network.auth.subresource-http-auth-allow", 1);
//user_pref("security.mixed_content.block_display_content", true); //user_pref("security.mixed_content.block_display_content", true);
// PREF: upgrade passive content to use HTTPS on secure pages // PREF: upgrade passive content to use HTTPS on secure pages
//user_pref("security.mixed_content.upgrade_display_content", true); //user_pref("security.mixed_content.upgrade_display_content", true); // DEFAULT [FF 110]
// PREF: block insecure downloads from secure sites // PREF: block insecure downloads from secure sites
// [1] https://bugzilla.mozilla.org/show_bug.cgi?id=1660952 // [1] https://bugzilla.mozilla.org/show_bug.cgi?id=1660952
@@ -1046,14 +1021,16 @@ user_pref("media.peerconnection.ice.default_address_only", true);
******************************************************************************/ ******************************************************************************/
// PREF: disable GSB (master switch) // PREF: disable GSB (master switch)
// Increased privacy away from Google, but less protection against threats. // Increased privacy away from Google, but less protection against threats
// [WARNING] Be sure to have alternate security measures if you disable Safe Browsing. // [WARNING] Be sure to have alternate security measures if you disable GSB!
// [SETTING] Privacy & Security>Security>... Block dangerous and deceptive content // [SETTING] Privacy & Security>Security>... Block dangerous and deceptive content
// [1] https://www.wikiwand.com/en/Google_Safe_Browsing#/Privacy // [ALTERNATIVE] Enable local checks only: https://github.com/yokoffing/Betterfox/issues/87
// [2] https://ashkansoltani.org/2012/02/25/cookies-from-nowhere // [1] https://github.com/privacyguides/privacyguides.org/discussions/423#discussioncomment-1752006
// [3] https://blog.cryptographyengineering.com/2019/10/13/dear-apple-safe-browsing-might-not-be-that-safe/ // [2] https://github.com/privacyguides/privacyguides.org/discussions/423#discussioncomment-1767546
// [4] https://github.com/privacyguides/privacyguides.org/discussions/423#discussioncomment-1752006 // [3] https://ashkansoltani.org/2012/02/25/cookies-from-nowhere
// [5] https://github.com/privacyguides/privacyguides.org/discussions/423#discussioncomment-1767546 // [4] https://blog.cryptographyengineering.com/2019/10/13/dear-apple-safe-browsing-might-not-be-that-safe/
// [5] https://the8-bit.com/apple-proxies-google-safe-browsing-privacy/
// [6] https://github.com/brave/brave-browser/wiki/Deviations-from-Chromium-(features-we-disable-or-remove)#services-we-proxy-through-brave-servers
user_pref("browser.safebrowsing.malware.enabled", false); user_pref("browser.safebrowsing.malware.enabled", false);
user_pref("browser.safebrowsing.phishing.enabled", false); user_pref("browser.safebrowsing.phishing.enabled", false);
//user_pref("browser.safebrowsing.provider.google4.gethashURL", ""); //user_pref("browser.safebrowsing.provider.google4.gethashURL", "");
@@ -1127,7 +1104,7 @@ user_pref("geo.provider.use_geoclue", false); // [FF102+] [LINUX]
// PREF: disable region updates // PREF: disable region updates
// [1] https://firefox-source-docs.mozilla.org/toolkit/modules/toolkit_modules/Region.html // [1] https://firefox-source-docs.mozilla.org/toolkit/modules/toolkit_modules/Region.html
user_pref("browser.region.update.enabled", false); //user_pref("browser.region.update.enabled", false);
//user_pref("browser.region.network.url", ""); //user_pref("browser.region.network.url", "");
// PREF: Enforce Firefox blocklist for extensions + No hiding tabs // PREF: Enforce Firefox blocklist for extensions + No hiding tabs
@@ -1170,6 +1147,7 @@ user_pref("toolkit.telemetry.shutdownPingSender.enabled", false);
user_pref("toolkit.telemetry.updatePing.enabled", false); user_pref("toolkit.telemetry.updatePing.enabled", false);
user_pref("toolkit.telemetry.bhrPing.enabled", false); user_pref("toolkit.telemetry.bhrPing.enabled", false);
user_pref("toolkit.telemetry.firstShutdownPing.enabled", false); user_pref("toolkit.telemetry.firstShutdownPing.enabled", false);
user_pref("toolkit.telemetry.dap_enabled", false); // DEFAULT [FF108]
// PREF: Corroborator // PREF: Corroborator
//user_pref("corroborator.enabled", false); //user_pref("corroborator.enabled", false);
+34 -16
View File
@@ -34,6 +34,9 @@ user_pref("browser.search.update", false); // do not update opensearch engines
user_pref("network.trr.mode", 3); // enable TRR (without System fallback) user_pref("network.trr.mode", 3); // enable TRR (without System fallback)
user_pref("network.trr.confirmationNS", "skip"); // skip TRR confirmation request user_pref("network.trr.confirmationNS", "skip"); // skip TRR confirmation request
user_pref("network.notify.checkForProxies", false); // skip proxy request check user_pref("network.notify.checkForProxies", false); // skip proxy request check
// HTTPS-First instead of HTTPS-only
user_pref("dom.security.https_only_mode", false); // disable in user.js
user_pref("dom.security.https_first", true); // HTTPS-First instead of HTTPS-only
/** PESKYFOX ***/ /** PESKYFOX ***/
user_pref("devtools.accessibility.enabled", false); // removes annoying "Inspect Accessibility Properties" on right-click user_pref("devtools.accessibility.enabled", false); // removes annoying "Inspect Accessibility Properties" on right-click
@@ -55,7 +58,7 @@ user_pref("browser.bookmarks.max_backups", 0); // minimize disk use; manually ba
user_pref("view_source.wrap_long_lines", true); // wrap source lines user_pref("view_source.wrap_long_lines", true); // wrap source lines
user_pref("devtools.debugger.ui.editor-wrapping", true); // wrap lines in devtools user_pref("devtools.debugger.ui.editor-wrapping", true); // wrap lines in devtools
user_pref("browser.zoom.full", false); // text-only zoom, not all elements on page user_pref("browser.zoom.full", false); // text-only zoom, not all elements on page
user_pref("pdfjs.sidebarViewOnLoad", 2); // show Table of Contents in sidebar for PDFs (if available) user_pref("pdfjs.sidebarViewOnLoad", 2); // [HIDDEN] force showing of Table of Contents in sidebar for PDFs (if available)
user_pref("ui.key.menuAccessKey", 0); // remove underlined characters from various settings user_pref("ui.key.menuAccessKey", 0); // remove underlined characters from various settings
user_pref("general.autoScroll", false); // disable unintentional behavior for middle click user_pref("general.autoScroll", false); // disable unintentional behavior for middle click
user_pref("ui.SpellCheckerUnderlineStyle", 1); // dots for spell check errors user_pref("ui.SpellCheckerUnderlineStyle", 1); // dots for spell check errors
@@ -63,6 +66,7 @@ user_pref("browser.tabs.loadInBackground", false); // CTRL+SHIFT+CLICK for backg
user_pref("media.videocontrols.picture-in-picture.improved-video-controls.enabled", true); user_pref("media.videocontrols.picture-in-picture.improved-video-controls.enabled", true);
user_pref("media.videocontrols.picture-in-picture.display-text-tracks.size", "small"); user_pref("media.videocontrols.picture-in-picture.display-text-tracks.size", "small");
user_pref("image.jxl.enabled", true); user_pref("image.jxl.enabled", true);
user_pref("extensions.unifiedExtensions.enabled", false); // disable MV3 unified extensions button [FF 109+]
user_pref("reader.parse-on-load.enabled", false); // disable reader mode user_pref("reader.parse-on-load.enabled", false); // disable reader mode
//user_pref("reader.color_scheme", "auto"); // match system theme for when reader is enabled //user_pref("reader.color_scheme", "auto"); // match system theme for when reader is enabled
//user_pref("browser.urlbar.openintab", true); // stay on current site and open new tab when typing in URL bar //user_pref("browser.urlbar.openintab", true); // stay on current site and open new tab when typing in URL bar
@@ -70,46 +74,60 @@ user_pref("reader.parse-on-load.enabled", false); // disable reader mode
/** FASTFOX ***/ /** FASTFOX ***/
user_pref("browser.sessionstore.restore_pinned_tabs_on_demand", true); user_pref("browser.sessionstore.restore_pinned_tabs_on_demand", true);
user_pref("browser.sessionstore.interval", 30000); // set minimum interval between session save operations user_pref("browser.sessionstore.interval", 30000); // set minimum interval between session save operations
// high-end machine:
user_pref("gfx.webrender.compositor.force-enabled", true); // reinforce user_pref("gfx.webrender.compositor.force-enabled", true); // reinforce
user_pref("image.mem.decode_bytes_at_a_time", 262144);
user_pref("layers.gpu-process.force-enabled", true); // reinforce user_pref("layers.gpu-process.force-enabled", true); // reinforce
user_pref("media.memory_cache_max_size", 1048576);
user_pref("media.memory_caches_combined_limit_kb", 3145728);
user_pref("media.memory_caches_combined_limit_pc_sysmem", 40);
user_pref("media.hardware-video-decoding.force-enabled", true); // reinforce user_pref("media.hardware-video-decoding.force-enabled", true); // reinforce
user_pref("network.http.http3.enable", false); // disables QUIC user_pref("network.http.http3.enable", false); // disable QUIC for faster upload speeds
user_pref("browser.cache.memory.capacity", 5242880); user_pref("media.av1.enabled", false); // disable AV1 to force video hardware decoding
user_pref("browser.cache.memory.max_entry_size", 327680); user_pref("network.http.speculative-parallel-limit", 18);
//user_pref("network.dns.disablePrefetch", false);
//user_pref("network.dns.disablePrefetchFromHTTPS", false);
//user_pref("network.prefetch-next", true);
user_pref("network.predictor.enabled", true);
user_pref("network.predictor.enable-prefetch", true);
user_pref("network.predictor.enable-hover-on-ssl", true);
user_pref("network.predictor.preresolve-min-confidence", 10);
user_pref("network.predictor.preconnect-min-confidence", 20);
user_pref("network.predictor.prefetch-min-confidence", 30);
user_pref("network.predictor.prefetch-force-valid-for", 3600);
user_pref("network.predictor.prefetch-rolling-load-count", 120);
user_pref("network.predictor.max-resources-per-entry", 250);
user_pref("network.predictor.max-uri-length", 1000);
/** DELETE IF NOT NIGHTLY ***/ /** DELETE IF NOT NIGHTLY ***/
user_pref("javascript.options.experimental.import_assertions", true); user_pref("javascript.options.experimental.import_assertions", true);
user_pref("javascript.options.experimental.shadow_realms", true); user_pref("javascript.options.experimental.shadow_realms", true);
user_pref("javascript.options.wasm_gc", true); user_pref("javascript.options.wasm_gc", true);
user_pref("javascript.options.wasm_function_references", true); user_pref("javascript.options.wasm_function_references", true);
//user_pref("javascript.options.experimental.array_grouping", true);
//user_pref("javascript.options.experimental.enable_change_array_by_copy", true);
user_pref("cookiebanners.service.mode", 2); user_pref("cookiebanners.service.mode", 2);
user_pref("cookiebanners.service.mode.privateBrowsing", 1); user_pref("cookiebanners.service.mode.privateBrowsing", 1);
user_pref("privacy.globalprivacycontrol.enabled", true); user_pref("privacy.globalprivacycontrol.enabled", true);
user_pref("privacy.globalprivacycontrol.functionality.enabled", true); user_pref("privacy.globalprivacycontrol.functionality.enabled", true);
user_pref("privacy.userContext.enabled", false); user_pref("privacy.userContext.enabled", false);
user_pref("browser.crashReports.unsubmittedCheck.enabled", false); // true by default on NIGHTLY
user_pref("browser.urlbar.suggest.quickactions", false); user_pref("browser.urlbar.suggest.quickactions", false);
user_pref("extensions.unifiedExtensions.enabled", false);
//user_pref("xpinstall.signatures.required", false); // [ESR/DEV/NIGHTLY] //user_pref("xpinstall.signatures.required", false); // [ESR/DEV/NIGHTLY]
user_pref("extensions.webextensions.restrictedDomains", ""); // remove Mozilla restricted domains [DEV/NIGHTLY] user_pref("extensions.webextensions.restrictedDomains", ""); // remove Mozilla restricted domains [DEV/NIGHTLY]
/** DELETE IF NOT WINDOWS ***/ /** DELETE IF NOT WINDOWS ***/
user_pref("pdfjs.defaultZoomValue", "page-fit"); // DESKTOP; alt=125; PDF zoom level //user_pref("pdfjs.defaultZoomValue", "page-fit"); // DESKTOP; alt=125; PDF zoom level
user_pref("gfx.webrender.quality.force-subpixel-aa-where-possible", true); // font improvement user_pref("gfx.webrender.quality.force-subpixel-aa-where-possible", true); // font improvement
user_pref("gfx.font_rendering.cleartype_params.rendering_mode", 5); user_pref("gfx.font_rendering.cleartype_params.rendering_mode", 5);
user_pref("gfx.font_rendering.cleartype_params.cleartype_level", 100); user_pref("gfx.font_rendering.cleartype_params.cleartype_level", 100);
user_pref("gfx.font_rendering.cleartype_params.force_gdi_classic_for_families", ""); user_pref("gfx.font_rendering.cleartype_params.force_gdi_classic_for_families", "");
user_pref("gfx.font_rendering.cleartype_params.force_gdi_classic_max_size", 6); user_pref("gfx.font_rendering.cleartype_params.force_gdi_classic_max_size", 6);
user_pref("gfx.font_rendering.directwrite.use_gdi_table_loading", false); user_pref("gfx.font_rendering.directwrite.use_gdi_table_loading", false);
//user_pref("font.name.monospace.x-western", "Cascadia Code"); // preferred font [WINDOWS] user_pref("image.mem.decode_bytes_at_a_time", 262144); // alt=512000
//user_pref("font.name.monospace.x-western", "Fira Code"); // preferred font [WINDOWS] user_pref("browser.cache.memory.capacity", 5242880);
//user_pref("layout.css.font-visibility.trackingprotection", 3); // unbreaks using custom font on pages in normal windows user_pref("browser.cache.memory.max_entry_size", 327680);
user_pref("media.memory_caches_combined_limit_pc_sysmem", 40);
user_pref("media.memory_caches_combined_limit_kb", 3145728);
//user_pref("font.name.serif.x-western", "Roboto Slab"); // serif font
//user_pref("font.name.sans-serif.x-western", "Roboto"); // sans-serif font
//user_pref("font.name.monospace.x-western", "Fira Code"); // monospace font
/** DELETE IF NOT macOS ***/ /** DELETE IF NOT macOS ***/
user_pref("pdfjs.defaultZoomValue", "page-width"); // LAPTOP; PDF zoom level user_pref("pdfjs.defaultZoomValue", "page-width"); // LAPTOP; PDF zoom level
//user_pref("font.name.monospace.x-western", "SF Mono"); // preferred font [macOS] //user_pref("font.name.monospace.x-western", "SF Mono"); // monospace font
//user_pref("layout.css.font-visibility.trackingprotection", 3); // breaks using custom font on pages
+15 -19
View File
@@ -10,7 +10,7 @@
/**************************************************************************** /****************************************************************************
* Betterfox * * Betterfox *
* "Ad meliora" * * "Ad meliora" *
* version: 107a1 * * version: 108 *
* url: https://github.com/yokoffing/Betterfox * * url: https://github.com/yokoffing/Betterfox *
****************************************************************************/ ****************************************************************************/
@@ -24,7 +24,6 @@ user_pref("urlclassifier.trackingSkipURLs", "*.reddit.com, *.twitter.com, *.twim
user_pref("urlclassifier.features.socialtracking.skipURLs", "*.instagram.com, *.twitter.com, *.twimg.com"); user_pref("urlclassifier.features.socialtracking.skipURLs", "*.instagram.com, *.twitter.com, *.twimg.com");
user_pref("privacy.partition.always_partition_third_party_non_cookie_storage", true); user_pref("privacy.partition.always_partition_third_party_non_cookie_storage", true);
user_pref("privacy.partition.always_partition_third_party_non_cookie_storage.exempt_sessionstorage", false); user_pref("privacy.partition.always_partition_third_party_non_cookie_storage.exempt_sessionstorage", false);
user_pref("beacon.enabled", false);
user_pref("browser.uitour.enabled", false); user_pref("browser.uitour.enabled", false);
/** OCSP & CERTS / HPKP ***/ /** OCSP & CERTS / HPKP ***/
@@ -38,10 +37,6 @@ user_pref("security.ssl.treat_unsafe_negotiation_as_broken", true);
user_pref("browser.xul.error_pages.expert_bad_cert", true); user_pref("browser.xul.error_pages.expert_bad_cert", true);
user_pref("security.tls.enable_0rtt_data", false); user_pref("security.tls.enable_0rtt_data", false);
/** FONTS ***/
user_pref("layout.css.font-visibility.private", 1);
user_pref("layout.css.font-visibility.trackingprotection", 1);
/** RFP ***/ /** RFP ***/
user_pref("browser.startup.blankWindow", false); user_pref("browser.startup.blankWindow", false);
user_pref("browser.display.use_system_colors", false); user_pref("browser.display.use_system_colors", false);
@@ -50,7 +45,6 @@ user_pref("browser.display.use_system_colors", false);
user_pref("browser.cache.disk.enable", false); user_pref("browser.cache.disk.enable", false);
user_pref("browser.privatebrowsing.forceMediaMemoryCache", true); user_pref("browser.privatebrowsing.forceMediaMemoryCache", true);
user_pref("browser.sessionstore.privacy_level", 2); user_pref("browser.sessionstore.privacy_level", 2);
user_pref("browser.helperApps.deleteTempFileOnExit", true);
user_pref("browser.pagethumbnails.capturing_disabled", true); user_pref("browser.pagethumbnails.capturing_disabled", true);
/** SHUTDOWN & SANITIZING ***/ /** SHUTDOWN & SANITIZING ***/
@@ -59,6 +53,7 @@ user_pref("privacy.history.custom", true);
/** SPECULATIVE CONNECTIONS ***/ /** SPECULATIVE CONNECTIONS ***/
user_pref("network.http.speculative-parallel-limit", 0); user_pref("network.http.speculative-parallel-limit", 0);
user_pref("network.dns.disablePrefetch", true); user_pref("network.dns.disablePrefetch", true);
user_pref("network.dns.disablePrefetchFromHTTPS", true);
user_pref("browser.urlbar.speculativeConnect.enabled", false); user_pref("browser.urlbar.speculativeConnect.enabled", false);
user_pref("browser.places.speculativeConnect.enabled", false); user_pref("browser.places.speculativeConnect.enabled", false);
user_pref("network.prefetch-next", false); user_pref("network.prefetch-next", false);
@@ -133,7 +128,6 @@ user_pref("geo.provider.ms-windows-location", false); // WINDOWS
user_pref("geo.provider.use_corelocation", false); // MAC user_pref("geo.provider.use_corelocation", false); // MAC
user_pref("geo.provider.use_gpsd", false); // LINUX user_pref("geo.provider.use_gpsd", false); // LINUX
user_pref("geo.provider.use_geoclue", false); // LINUX user_pref("geo.provider.use_geoclue", false); // LINUX
user_pref("browser.region.update.enabled", false);
user_pref("permissions.manager.defaultsUrl", ""); user_pref("permissions.manager.defaultsUrl", "");
user_pref("webchannel.allowObject.urlWhitelist", ""); user_pref("webchannel.allowObject.urlWhitelist", "");
@@ -230,6 +224,7 @@ user_pref("layout.css.has-selector.enabled", true);
****************************************************************************/ ****************************************************************************/
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", 360000);
user_pref("browser.startup.preXulSkeletonUI", false); user_pref("browser.startup.preXulSkeletonUI", false);
/** EXPERIMENTAL ***/ /** EXPERIMENTAL ***/
@@ -237,18 +232,12 @@ 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.animation-composition.enabled", true); user_pref("layout.css.animation-composition.enabled", true);
/** NETWORK ***/
user_pref("network.ssl_tokens_cache_capacity", 32768);
user_pref("network.dnsCacheEntries", 20000);
user_pref("network.dnsCacheExpiration", 3600);
user_pref("network.dnsCacheExpirationGracePeriod", 240);
user_pref("network.buffer.cache.size", 262144);
user_pref("network.buffer.cache.count", 128);
/** GFX ***/ /** GFX ***/
user_pref("gfx.webrender.all", true); user_pref("gfx.webrender.all", true);
user_pref("gfx.webrender.precache-shaders", true); user_pref("gfx.webrender.precache-shaders", true);
user_pref("gfx.webrender.compositor", true); user_pref("gfx.webrender.compositor", true);
user_pref("layers.gpu-process.enabled", true);
user_pref("media.hardware-video-decoding.enabled", true);
user_pref("gfx.canvas.accelerated", true); user_pref("gfx.canvas.accelerated", true);
user_pref("gfx.canvas.accelerated.cache-items", 32768); user_pref("gfx.canvas.accelerated.cache-items", 32768);
user_pref("gfx.canvas.accelerated.cache-size", 4096); user_pref("gfx.canvas.accelerated.cache-size", 4096);
@@ -256,16 +245,23 @@ user_pref("gfx.content.skia-font-cache-size", 80);
user_pref("image.cache.size", 10485760); user_pref("image.cache.size", 10485760);
user_pref("image.mem.decode_bytes_at_a_time", 131072); user_pref("image.mem.decode_bytes_at_a_time", 131072);
user_pref("image.mem.shared.unmap.min_expiration_ms", 120000); user_pref("image.mem.shared.unmap.min_expiration_ms", 120000);
user_pref("layers.gpu-process.enabled", true);
user_pref("media.memory_cache_max_size", 1048576); user_pref("media.memory_cache_max_size", 1048576);
user_pref("media.memory_caches_combined_limit_kb", 2560000); user_pref("media.memory_caches_combined_limit_kb", 2560000);
user_pref("media.cache_size", 2048000);
user_pref("media.cache_readahead_limit", 9000); user_pref("media.cache_readahead_limit", 9000);
user_pref("media.cache_resume_threshold", 6000); user_pref("media.cache_resume_threshold", 6000);
/** CACHE ***/ /** BROWSER CACHE ***/
user_pref("browser.cache.memory.capacity", -1);
user_pref("browser.cache.memory.max_entry_size", 153600); user_pref("browser.cache.memory.max_entry_size", 153600);
/** NETWORK ***/
user_pref("network.buffer.cache.size", 262144);
user_pref("network.buffer.cache.count", 128);
user_pref("network.dnsCacheEntries", 20000);
user_pref("network.dnsCacheExpiration", 3600);
user_pref("network.dnsCacheExpirationGracePeriod", 240);
user_pref("network.ssl_tokens_cache_capacity", 32768);
/**************************************************************************** /****************************************************************************
* SECTION: SMOOTHFOX * * SECTION: SMOOTHFOX *
****************************************************************************/ ****************************************************************************/