3
3
* Fastfox *
4
4
* "Non ducor duco" *
5
5
* priority: speedy browsing *
6
- * version: 116 *
6
+ * version: 117 *
7
7
* url: https://github.com/yokoffing/Betterfox *
8
8
***************************************************************************************/
9
9
@@ -71,7 +71,7 @@ user_pref("nglayout.initialpaint.delay_in_oopif", 0); // default=5
71
71
// false = reflow pages whenever new data is received
72
72
//user_pref("content.notify.ontimer", true); // DEFAULT
73
73
74
- // PREF: notification interval (in microseconds) ( to avoid layout thrashing)
74
+ // PREF: notification interval (in microseconds) to avoid layout thrashing
75
75
// When Firefox is loading a page, it periodically reformats
76
76
// or "reflows" the page as it loads. The page displays new elements
77
77
// every 0.12 seconds by default. These redraws increase the total page load time.
@@ -87,13 +87,6 @@ user_pref("nglayout.initialpaint.delay_in_oopif", 0); // default=5
87
87
// [3] https://dev.opera.com/articles/efficient-javascript/?page=3#smoothspeed
88
88
user_pref ( "content.notify.interval" , 100000 ) ; // (.10s); default=120000 (.12s)
89
89
90
- // PREF: frequency switch threshold [HIDDEN]
91
- // Raising the value will make the application more responsive at the expense of page load time.
92
- // [1] http://kb.mozillazine.org/Content.switch.threshold
93
- // [2] https://www.reddit.com/r/firefox/comments/11m2yuh/comment/jbjxp8s/?context=3
94
- //user_pref("content.interrupt.parsing", true); // DEFAULT [HIDDEN]
95
- //user_pref("content.switch.threshold", 750000); // DEFAULT [HIDDEN]
96
-
97
90
// PREF: new tab preload
98
91
// [WARNING] Disabling this may cause a delay when opening a new tab in Firefox.
99
92
// [1] https://wiki.mozilla.org/Tiles/Technical_Documentation#Ping
@@ -118,16 +111,18 @@ user_pref("content.notify.interval", 100000); // (.10s); default=120000 (.12s)
118
111
//user_pref("browser.sessionstore.restore_tabs_lazily", true); // DEFAULT
119
112
120
113
// PREF: disable preSkeletonUI on startup [WINDOWS]
121
- user_pref ( "browser.startup.preXulSkeletonUI" , false ) ; // WINDOWS
114
+ // user_pref("browser.startup.preXulSkeletonUI", false); // WINDOWS
122
115
123
116
/****************************************************************************
124
117
* SECTION: TAB UNLOAD *
125
118
****************************************************************************/
126
119
127
120
// PREF: unload tabs on low memory
121
+ // [ABOUT] about:unloads
128
122
// Firefox will detect if your computer’s memory is running low (less than 200MB)
129
123
// and suspend tabs that you have not used in awhile.
130
- // [1] https://hacks.mozilla.org/2021/10/tab-unloading-in-firefox-93/
124
+ // [1] https://support.mozilla.org/en-US/kb/unload-inactive-tabs-save-system-memory-firefox
125
+ // [2] https://hacks.mozilla.org/2021/10/tab-unloading-in-firefox-93/
131
126
//user_pref("browser.tabs.unloadOnLowMemory", true); // DEFAULT
132
127
133
128
// PREF: determine when tabs unload [WINDOWS] [LINUX]
@@ -172,7 +167,7 @@ user_pref("layout.css.has-selector.enabled", true);
172
167
// PREF: HTML Sanitizer API [NIGHTLY]
173
168
// [1] https://developer.mozilla.org/en-US/docs/Web/API/Sanitizer
174
169
// [2] https://caniuse.com/mdn-api_sanitizer
175
- // user_pref("dom.security.sanitizer.enabled", true);
170
+ user_pref ( "dom.security.sanitizer.enabled" , true ) ;
176
171
177
172
// PREF: Shadowrealms [NIGHTLY]
178
173
// [1] https://github.com/tc39/proposal-shadowrealm/blob/main/explainer.md#introduction
@@ -296,11 +291,11 @@ user_pref("layout.css.has-selector.enabled", true);
296
291
// More efficient to keep the browser cache instead of having to
297
292
// re-download objects for the websites you visit frequently.
298
293
// [1] https://www.janbambas.cz/new-firefox-http-cache-enabled/
299
- // user_pref("browser.cache.disk.enable", true); // DEFAULT
294
+ user_pref ( "browser.cache.disk.enable" , false ) ;
300
295
//user_pref("browser.cache.disk.smart_size.enabled", false); // force a fixed max cache size on disk
301
- //user_pref("browser.cache.disk.capacity", 8192000 ); // size of disk cache; default=256000; 1024000 = 1 GB, 2048000=2GB, 5120000=5GB, 8192000=8GB
302
- //user_pref("browser.cache.disk.max_entry_size", 51200); // 51 MB; DEFAULT; maximum size of an object in disk cache
303
- //user_pref("browser.cache.disk.metadata_memory_limit", 10000 ); // default=250; alt=15360 ; increase size (in KB) of intermediate memory caching of frequently used metadata (disk cache memory pool)
296
+ //user_pref("browser.cache.disk.capacity", 5120000 ); // size of disk cache; default=256000; 1024000 = 1 GB, 2048000=2GB, 5120000=5GB, 8192000=8GB
297
+ //user_pref("browser.cache.disk.max_entry_size", 51200); // 51.2 MB; DEFAULT; maximum size of an object in disk cache
298
+ //user_pref("browser.cache.disk.metadata_memory_limit", 750 ); // default=250; increase size (in KB) of intermediate memory caching of frequently used metadata (disk cache memory pool)
304
299
//user_pref("browser.cache.max_shutdown_io_lag", 4); // default=2; number of seconds the cache spends writing pending data and closing files after shutdown has been signalled
305
300
306
301
// PREF: specify how long pages are kept before being removed from cache (in hours)
@@ -310,7 +305,7 @@ user_pref("layout.css.has-selector.enabled", true);
310
305
// [1] https://bugzilla.mozilla.org/show_bug.cgi?id=913808
311
306
// [2] https://bugzilla.mozilla.org/show_bug.cgi?id=968101
312
307
// [3] https://rockridge.hatenablog.com/entry/2014/09/15/165501
313
- //user_pref("browser.cache.frecency_half_life_hours", 24 ); // default=6
308
+ //user_pref("browser.cache.frecency_half_life_hours", 18 ); // default=6
314
309
315
310
// PREF: memory cache
316
311
// The "automatic" size selection (default) is based on a decade-old table
@@ -323,9 +318,9 @@ user_pref("layout.css.has-selector.enabled", true);
323
318
// [2] https://searchfox.org/mozilla-central/source/netwerk/cache2/CacheObserver.cpp#94-125
324
319
// [3] https://github.com/WaterfoxCo/Waterfox/commit/3fed16932c80a2f6b37d126fe10aed66c7f1c214
325
320
//user_pref("browser.cache.memory.capacity", -1); // DEFAULT; 1048576=1GB, 2097152=2GB
326
- //user_pref("browser.cache.memory.max_entry_size", 5120); // DEFAULT; alt=25600; -1=entries bigger than than 90% of the mem-cache are never cached
321
+ //user_pref("browser.cache.memory.max_entry_size", 5120); // 5 MB DEFAULT; alt=25600; -1=entries bigger than than 90% of the mem-cache are never cached
327
322
328
- // PREF: amount of pages stored in memory for Back/Forward
323
+ // PREF: amount of Back/Forward cached pages stored in memory for each tab
329
324
// Pages that were recently visited are stored in memory in such a way
330
325
// that they don't have to be re-parsed. This improves performance
331
326
// when pressing Back and Forward. This pref limits the maximum
@@ -334,7 +329,7 @@ user_pref("layout.css.has-selector.enabled", true);
334
329
// is no reason for Firefox to keep memory for this.
335
330
// -1=determine automatically (8 pages)
336
331
// [1] https://kb.mozillazine.org/Browser.sessionhistory.max_total_viewers#Possible_values_and_their_effects
337
- //user_pref("browser.sessionhistory.max_total_viewers", 1 );
332
+ //user_pref("browser.sessionhistory.max_total_viewers", 3 );
338
333
339
334
/****************************************************************************
340
335
* SECTION: MEDIA CACHE *
@@ -398,7 +393,7 @@ user_pref("network.http.max-connections", 1800); // default=900
398
393
user_pref ( "network.http.max-persistent-connections-per-server" , 10 ) ; // default=6; download connections; anything above 10 is excessive
399
394
user_pref ( "network.http.max-urgent-start-excessive-connections-per-host" , 5 ) ; // default=3
400
395
//user_pref("network.http.max-persistent-connections-per-proxy", 48); // default=32
401
- user_pref ( "network.websocket.max-connections" , 400 ) ; // default=200
396
+ // user_pref("network.websocket.max-connections", 200 ); // DEFAULT
402
397
403
398
// PREF: pacing requests [FF23+]
404
399
// Controls how many HTTP requests are sent at a time.
@@ -413,47 +408,20 @@ user_pref("network.http.pacing.requests.enabled", false);
413
408
//user_pref("network.http.pacing.requests.min-parallelism", 10); // default=6
414
409
//user_pref("network.http.pacing.requests.burst", 14); // default=10
415
410
416
- // Connection Timeouts
417
- // [1] https://searchfox.org/mozilla-esr115/source/modules/libpref/init/all.js#1178
418
- // [2] https://www.catchpoint.com/blog/http-transaction-steps
419
-
420
- // PREF: timeout connections if an initial response is not received after
421
- // a given number of seconds.
422
- //user_pref("network.http.response.timeout", 60); // default=300 (5min)
423
-
424
- // PREF: close a connection if TLS handshake does not finish in a
425
- // given number of seconds
426
- //user_pref("network.http.tls-handshake-timeout", 6); // default=30
427
-
428
- // PREF: the number of seconds after sending initial SYN for an HTTP connection
429
- // to give up if the OS does not give up first.
430
- //user_pref("network.http.connection-timeout", 18); // default=90
431
-
432
411
// PREF: how long to wait before trying a different connection when the initial one fails
433
412
// The number (in ms) after sending a SYN for an HTTP connection,
434
413
// to wait before trying again with a different connection.
435
414
// 0=disable the second connection
436
- //user_pref("network.http.connection-retry-timeout", 0); // default=250ms
437
-
438
- // PREF: keep-alive request timeout
439
- // Default timeout on IIS7 is 120 seconds. FF needs to reuse or drop the
440
- // connection within this time. By default, FF sets the timeout a little shorter to
441
- // keep a reserve for cases when the packet is lost or delayed on the route.
442
- // [1] http://kb.mozillazine.org/Network.http.keep-alive.timeout
443
- // [2] https://searchfox.org/mozilla-esr115/source/modules/libpref/init/all.js#1173-1178
444
- //user_pref("network.http.keep-alive.timeout", 31); // default=115
445
-
446
- // PREF: the amount of time (in seconds) to suspend pending requests, before spawning a
447
- // new connection, once the limit on the number of persistent connections per
448
- // host has been reached. However, a new connection will not be created if
449
- // max-connections or max-connections-per-server has also been reached.
450
- //user_pref("network.http.request.max-start-delay", 10); // DEFAULT
415
+ // [1] https://searchfox.org/mozilla-esr115/source/modules/libpref/init/all.js#1178
416
+ // [2] https://www.catchpoint.com/blog/http-transaction-steps
417
+ //user_pref("network.http.connection-retry-timeout", 0); // default=250
451
418
452
419
// PREF: increase DNS cache
453
420
// [1] https://developer.mozilla.org/en-US/docs/Web/Performance/Understanding_latency
454
- user_pref ( "network.dnsCacheEntries" , 10000 ) ; // default=400
421
+ user_pref ( "network.dnsCacheEntries" , 1000 ) ; // default=400
455
422
456
423
// PREF: adjust DNS expiration time
424
+ // [ABOUT] about:networking#dns
457
425
// [NOTE] These prefs will be ignored by DNS resolver if using DoH/TRR.
458
426
user_pref ( "network.dnsCacheExpiration" , 86400 ) ; // keep entries for 1 day; alt=3600 (1 hour)
459
427
//user_pref("network.dnsCacheExpirationGracePeriod", 240); // default=60; cache DNS entries for 4 minutes after they expire
@@ -463,7 +431,7 @@ user_pref("network.dns.max_high_priority_threads", 8); // default=5
463
431
//user_pref("network.dns.max_any_priority_threads", 5); // default=3
464
432
465
433
// PREF: increase TLS token caching
466
- user_pref ( "network.ssl_tokens_cache_capacity" , 20480 ) ; // default=2048; more TLS token caching (fast reconnects)
434
+ user_pref ( "network.ssl_tokens_cache_capacity" , 10240 ) ; // default=2048; more TLS token caching (fast reconnects)
467
435
468
436
/****************************************************************************
469
437
* SECTION: SPECULATIVE CONNECTIONS *
@@ -494,7 +462,7 @@ user_pref("network.ssl_tokens_cache_capacity", 20480); // default=2048; more TLS
494
462
// [5] https://3perf.com/blog/link-rels/#prefetch
495
463
user_pref ( "network.http.speculative-parallel-limit" , 0 ) ;
496
464
// or
497
- //user_pref("network.http.speculative-parallel-limit", 10 ); // default=6
465
+ //user_pref("network.http.speculative-parallel-limit", 6 ); // DEFAULT
498
466
499
467
// PREF: DNS pre-resolve <link rel="dns-prefetch">
500
468
// Resolve hostnames ahead of time. In order to reduce latency,
@@ -545,23 +513,6 @@ user_pref("browser.places.speculativeConnect.enabled", false);
545
513
// [9] https://web.dev/preload-critical-assets/
546
514
//user_pref("network.preload", true); // DEFAULT
547
515
548
- // PREF: enable early hints [NIGHTLY]
549
- // [1] https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/103
550
- //user_pref("network.early-hints.enabled", false); // DEFAULT
551
- // or
552
- //user_pref("network.early-hints.enabled", true);
553
-
554
- // PREF: `Link: rel=preconnect` in 103 Early Hint response
555
- //user_pref("network.early-hints.preconnect.enabled", false); // DEFAULT
556
- // or
557
- //user_pref("network.early-hints.preconnect.enabled", true);
558
-
559
- // PREF: the number of speculative connections allowed for early hints `Link: rel=preconnect`
560
- // When 0, this is limited by "network.http.speculative-parallel-limit".
561
- //user_pref("network.early-hints.preconnect.max_connections", 0);
562
- // or
563
- //user_pref("network.early-hints.preconnect.max_connections", 15); // default=10
564
-
565
516
// PREF: Link prefetching <link rel="prefetch">
566
517
// Firefox will prefetch certain links if any of the websites you are viewing uses the special prefetch-link tag.
567
518
// A directive that tells a browser to fetch a resource that will likely be needed for the next navigation.
@@ -580,6 +531,24 @@ user_pref("network.prefetch-next", false);
580
531
// or
581
532
//user_pref("network.prefetch-next", true); // DEFAULT
582
533
534
+ // PREF: enable early hints [NIGHTLY]
535
+ // [1] https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/103
536
+ // [2] https://developer.chrome.com/blog/early-hints/
537
+ //user_pref("network.early-hints.enabled", false); // DEFAULT
538
+ // or
539
+ //user_pref("network.early-hints.enabled", true);
540
+
541
+ // PREF: `Link: rel=preconnect` in 103 Early Hint response
542
+ //user_pref("network.early-hints.preconnect.enabled", false); // DEFAULT
543
+ // or
544
+ //user_pref("network.early-hints.preconnect.enabled", true);
545
+
546
+ // PREF: the number of speculative connections allowed for early hints `Link: rel=preconnect`
547
+ // When 0, this is limited by "network.http.speculative-parallel-limit".
548
+ //user_pref("network.early-hints.preconnect.max_connections", 0);
549
+ // or
550
+ //user_pref("network.early-hints.preconnect.max_connections", 10); // DEFAULT
551
+
583
552
// PREF: Network Predictor (NP)
584
553
// Keeps track of components that were loaded during page visits so that the browser knows next time
585
554
// which resources to request from the server: It uses a local file to remember which resources were
0 commit comments