diff --git a/Fastfox.js b/Fastfox.js index c920c8d..a924a54 100644 --- a/Fastfox.js +++ b/Fastfox.js @@ -3,7 +3,7 @@ * Fastfox * * "Non ducor duco" * * priority: speedy browsing * - * version: 137 * + * version: 144 * * url: https://github.com/yokoffing/Betterfox * ***************************************************************************************/ @@ -22,6 +22,12 @@ //user_pref("nglayout.initialpaint.delay", 5); // DEFAULT; formerly 250 //user_pref("nglayout.initialpaint.delay_in_oopif", 5); // DEFAULT +// PREF: Font rendering cache in Skia (32MB) +// Increases font cache size to improve performance on text-heavy websites. +// Especially beneficial for sites with many font faces or complex typography. +// [1] https://bugzilla.mozilla.org/show_bug.cgi?id=1239151#c2 +user_pref("gfx.content.skia-font-cache-size", 32); // 32 MB; default=5; Chrome=20 + // PREF: page reflow timer // Rather than wait until a page has completely downloaded to display it to the user, // web browsers will periodically render what has been received to that point. @@ -33,7 +39,7 @@ // false = reflow pages whenever new data is received //user_pref("content.notify.ontimer", true); // DEFAULT -// PREF: notification interval (in microseconds) to avoid layout thrashing +// PREF: content notification delay - notification interval (in microseconds) to avoid layout thrashing // 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. @@ -47,7 +53,17 @@ // [1] https://searchfox.org/mozilla-central/rev/c1180ea13e73eb985a49b15c0d90e977a1aa919c/modules/libpref/init/StaticPrefList.yaml#1824-1834 // [2] https://web.archive.org/web/20240115073722/https://dev.opera.com/articles/efficient-javascript/?page=3#reflow // [3] https://web.archive.org/web/20240115073722/https://dev.opera.com/articles/efficient-javascript/?page=3#smoothspeed -user_pref("content.notify.interval", 100000); // (.10s); default=120000 (.12s) +//user_pref("content.notify.interval", 100000); // (.10s); default=120000 (.12s) +//user_pref("content.max.tokenizing.time", 1000000); // (1.00s); alt=2000000; HIDDEN +//user_pref("content.interrupt.parsing", true); // HIDDEN +//user_pref("content.notify.ontimer", true); // DEFAULT + +// PREF: UI responsiveness threshold +//user_pref("content.switch.threshold", 300000); // HIDDEN; default= 750000; alt=500000 + +// PREF: split text nodes to a length +// The number of bytes in a text node. +//user_pref("content.maxtextrun", 8191); // DEFAULT; HIDDEN // PREF: new tab preload // [WARNING] Disabling this may cause a delay when opening a new tab in Firefox. @@ -118,10 +134,13 @@ user_pref("content.notify.interval", 100000); // (.10s); default=120000 (.12s) // [2] https://github.com/yokoffing/Betterfox/issues/153 // [3] https://github.com/yokoffing/Betterfox/issues/198 //user_pref("gfx.canvas.accelerated", true); // [DEFAULT FF133+] - //user_pref("gfx.canvas.accelerated.cache-items", 8192); // DEFAULT FF135+; Chrome=4096 - user_pref("gfx.canvas.accelerated.cache-size", 512); // default=256; Chrome=512 - user_pref("gfx.content.skia-font-cache-size", 20); // default=5; Chrome=20 - // [1] https://bugzilla.mozilla.org/show_bug.cgi?id=1239151#c2 +user_pref("gfx.canvas.accelerated.cache-items", 32768); // [default=8192 FF135+]; Chrome=4096 +user_pref("gfx.canvas.accelerated.cache-size", 4096); // default=256; Chrome=512 +//user_pref("gfx.canvas.max-size", 32767); // DEFAULT=32767 + +// PREF: WebGL +user_pref("webgl.max-size", 16384); // default=1024 +//user_pref("webgl.force-enabled", true); // PREF: prefer GPU over CPU // At best, the prefs do nothing on Linux/macOS. @@ -188,7 +207,7 @@ user_pref("browser.cache.disk.enable", false); // for recently read cache entries [1]. It is managed by a cache thread, and caches with // metadata in the pool appear to be reused immediately. // [1] https://bugzilla.mozilla.org/buglist.cgi?bug_id=986179 -//user_pref("browser.cache.disk.metadata_memory_limit", 500); // default=250 (0.25 MB); limit of recent metadata we keep in memory for faster access +//user_pref("browser.cache.disk.metadata_memory_limit", 16384); // default=250 (0.25 MB); limit of recent metadata we keep in memory for faster access // PREF: number of chunks we preload ahead of read // Large content such as images will load faster. @@ -269,8 +288,8 @@ user_pref("browser.cache.disk.enable", false); // [1] https://kb.mozillazine.org/Browser.cache.memory.capacity#-1 // [2] https://searchfox.org/mozilla-central/source/netwerk/cache2/CacheObserver.cpp#94-125 // [3] https://github.com/WaterfoxCo/Waterfox/commit/3fed16932c80a2f6b37d126fe10aed66c7f1c214 -//user_pref("browser.cache.memory.capacity", 131072); // (128 MB) -//user_pref("browser.cache.memory.max_entry_size", 20480); // (20 MB); default=5120 (5 MB) +user_pref("browser.cache.memory.capacity", 131072); // 128 MB RAM cache; alt=65536 (65 MB RAM cache); default=32768 +user_pref("browser.cache.memory.max_entry_size", 20480); // 20 MB max entry; default=5120 (5 MB) // PREF: amount of Back/Forward cached pages stored in memory for each tab // Pages that were recently visited are stored in memory in such a way @@ -281,7 +300,15 @@ user_pref("browser.cache.disk.enable", false); // is no reason for Firefox to keep memory for this. // -1=determine automatically (8 pages) // [1] https://kb.mozillazine.org/Browser.sessionhistory.max_total_viewers#Possible_values_and_their_effects -user_pref("browser.sessionhistory.max_total_viewers", 4); +user_pref("browser.sessionhistory.max_total_viewers", 4); // default=8 +user_pref("browser.sessionstore.max_tabs_undo", 10); // default=25 +//user_pref("browser.sessionstore.max_entries", 10); // [HIDDEN OR REMOVED] +//user_pref("dom.storage.default_quota", 20480); // 20MB; default=5120 +//user_pref("dom.storage.shadow_writes", true); + +// PREF: tell garbage collector to start running when javascript is using xx MB of memory +// Garbage collection releases memory back to the system. +//user_pref("javascript.options.mem.high_water_mark", 128); // DEFAULT [HIDDEN OR REMOVED] /**************************************************************************** * SECTION: MEDIA CACHE * @@ -292,11 +319,11 @@ user_pref("browser.sessionhistory.max_total_viewers", 4); // PREF: media memory cache // [1] https://hg.mozilla.org/mozilla-central/file/tip/modules/libpref/init/StaticPrefList.yaml#l9652 -// [2] https://github.com/arkenfox/user.js/pull/941 -user_pref("media.memory_cache_max_size", 65536); // default=8192; AF=65536; alt=131072 +// [2] https://github.com/arkenfox/user.js/pull/941#issuecomment-668278121 +user_pref("media.memory_cache_max_size", 262144); // 256 MB; default=8192; AF=65536 // PREF: media cache combine sizes -//user_pref("media.memory_caches_combined_limit_kb", 524288); // DEFAULT; alt=1048576 +user_pref("media.memory_caches_combined_limit_kb", 1048576); // 1GB; default=524288 //user_pref("media.memory_caches_combined_limit_pc_sysmem", 5); // DEFAULT; alt=10; the percentage of system memory that Firefox can use for media caches // PREF: Media Source Extensions (MSE) web standard @@ -310,19 +337,20 @@ user_pref("media.memory_cache_max_size", 65536); // default=8192; AF=65536; alt= // PREF: adjust video buffering periods when not using MSE (in seconds) // [NOTE] Does not affect videos over 720p since they use DASH playback [1] // [1] https://lifehacker.com/preload-entire-youtube-videos-by-disabling-dash-playbac-1186454034 -user_pref("media.cache_readahead_limit", 7200); // 120 min; default=60; stop reading ahead when our buffered data is this many seconds ahead of the current playback -user_pref("media.cache_resume_threshold", 3600); // 60 min; default=30; when a network connection is suspended, don't resume it until the amount of buffered data falls below this threshold +user_pref("media.cache_readahead_limit", 600); // 10 min; default=60; stop reading ahead when our buffered data is this many seconds ahead of the current playback +user_pref("media.cache_resume_threshold", 300); // 5 min; default=30; when a network connection is suspended, don't resume it until the amount of buffered data falls below this threshold /**************************************************************************** * SECTION: IMAGE CACHE * ****************************************************************************/ // PREF: image cache -//user_pref("image.cache.size", 5242880); // DEFAULT; in MiB; alt=10485760 (cache images up to 10MiB in size) -user_pref("image.mem.decode_bytes_at_a_time", 32768); // default=16384; alt=65536; chunk size for calls to the image decoders +user_pref("image.cache.size", 10485760); // (cache images up to 10MiB in size) [DEFAULT 5242880] +user_pref("image.mem.decode_bytes_at_a_time", 65536); // default=16384; alt=32768; chunk size for calls to the image decoders +//user_pref("image.mem.max_decoded_image_kb", 512000); // 500MB [HIDDEN OR REMOVED?] // PREF: set minimum timeout to unmap shared surfaces since they have been last used -// This is only used on 32-bit builds of Firefox where there is meaningful +// [NOTE] This is only used on 32-bit builds of Firefox where there is meaningful // virtual address space pressure. // [1] https://phabricator.services.mozilla.com/D109440 // [2] https://bugzilla.mozilla.org/show_bug.cgi?id=1699224 @@ -350,6 +378,7 @@ user_pref("network.http.max-connections", 1800); // default=900 user_pref("network.http.max-persistent-connections-per-server", 10); // default=6; download connections; anything above 10 is excessive user_pref("network.http.max-urgent-start-excessive-connections-per-host", 5); // default=3 //user_pref("network.http.max-persistent-connections-per-proxy", 48); // default=32 +user_pref("network.http.request.max-start-delay", 5); // default=10 //user_pref("network.websocket.max-connections", 200); // DEFAULT // PREF: pacing requests [FF23+] @@ -359,21 +388,21 @@ user_pref("network.http.max-persistent-connections-per-server", 10); // default= // Pacing requests adds a slight delay between requests to throttle them. // If you have a fast machine and internet connection, disabling pacing // may provide a small speed boost when loading pages with lots of requests. -// false=Firefox will send as many requests as possible without pacing -// true=Firefox will pace requests (default) +// false = Firefox will send as many requests as possible without pacing +// true = Firefox will pace requests (default) user_pref("network.http.pacing.requests.enabled", false); //user_pref("network.http.pacing.requests.min-parallelism", 10); // default=6 - //user_pref("network.http.pacing.requests.burst", 14); // default=10 + //user_pref("network.http.pacing.requests.burst", 32); // default=10 // PREF: increase DNS cache // [1] https://developer.mozilla.org/en-US/docs/Web/Performance/Understanding_latency -//user_pref("network.dnsCacheEntries", 1000); // default=400 +user_pref("network.dnsCacheEntries", 10000); // default=800 // PREF: adjust DNS expiration time // [ABOUT] about:networking#dns // [NOTE] These prefs will be ignored by DNS resolver if using DoH/TRR. -user_pref("network.dnsCacheExpiration", 3600); // keep entries for 1 hour - //user_pref("network.dnsCacheExpirationGracePeriod", 240); // default=60; cache DNS entries for 4 minutes after they expire +user_pref("network.dnsCacheExpiration", 3600); // keep entries for 1 hour; default=60 + //user_pref("network.dnsCacheExpirationGracePeriod", 120); // default=60; cache DNS entries for 2 minutes after they expire // PREF: the number of threads for DNS //user_pref("network.dns.max_high_priority_threads", 40); // DEFAULT [FF 123?] @@ -550,7 +579,7 @@ user_pref("network.predictor.enabled", false); // PREF: CSS Masonry Layout [NIGHTLY] // [1] https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_Grid_Layout/Masonry_Layout // [2] https://www.smashingmagazine.com/native-css-masonry-layout-css-grid/ -user_pref("layout.css.grid-template-masonry-value.enabled", true); +//user_pref("layout.css.grid-template-masonry-value.enabled", true); /**************************************************************************** * SECTION: TAB UNLOAD * @@ -598,6 +627,7 @@ user_pref("layout.css.grid-template-masonry-value.enabled", true); // [2] https://firefox-source-docs.mozilla.org/dom/ipc/process_model.html#web-content-processes //user_pref("dom.ipc.processCount", 8); // DEFAULT; Shared Web Content //user_pref("dom.ipc.processCount.webIsolated", 1); // default=4; Isolated Web Content +//user_pref("dom.ipc.keepProcessesAlive.web", 4); // default=1 [HIDDEN OR REMOVED] // PREF: use one process for process preallocation cache //user_pref("dom.ipc.processPrelaunch.fission.number", 1); // default=3; Process Preallocation Cache diff --git a/Peskyfox.js b/Peskyfox.js index 44e5045..8d1c6df 100644 --- a/Peskyfox.js +++ b/Peskyfox.js @@ -3,7 +3,7 @@ * Peskyfox * * "Aquila non capit muscas" * * priority: remove annoyances * - * version: 142 * + * version: 144 * * url: https://github.com/yokoffing/Betterfox * * credit: Some prefs are reproduced and adapted from the arkenfox project * * credit urL: https://github.com/arkenfox/user.js * @@ -64,6 +64,9 @@ user_pref("browser.profiles.enabled", true); // [1] https://github.com/yokoffing/Betterfox/issues/320 //user_pref("widget.gtk.non-native-titlebar-buttons.enabled", true); +// PREF: disable search engine switcher in the URL bar [FF136+] +//user_pref("browser.urlbar.scotchBonnet.enableOverride", false); + /**************************************************************************** * SECTION: THEME ADJUSTMENTS * ****************************************************************************/ @@ -106,12 +109,15 @@ user_pref("browser.ml.enable", false); // PREF: AI chat user_pref("browser.ml.chat.enabled", false); -// PREF: link previews -//user_pref("browser.ml.linkPreview.enabled", false); +// PREF: AI chatbot option in right click menu +user_pref("browser.ml.chat.menu", false); // PREF: AI-enhanced tab groups // [1] https://support.mozilla.org/kb/how-use-ai-enhanced-tab-groups -//user_pref("browser.tabs.groups.smart.enabled", false); +user_pref("browser.tabs.groups.smart.enabled", false); + +// PREF: link previews +user_pref("browser.ml.linkPreview.enabled", false); /**************************************************************************** * SECTION: COOKIE BANNER HANDLING * @@ -337,8 +343,9 @@ user_pref("browser.newtabpage.activity-stream.default.sites", ""); * SECTION: POCKET * ******************************************************************************/ -// PREF: Disable built-in Pocket extension -user_pref("extensions.pocket.enabled", false); +// PREF: disable built-in Pocket extension +// [1] https://support.mozilla.org/kb/future-of-pocket +//user_pref("extensions.pocket.enabled", false); // DEFAULT //user_pref("extensions.pocket.api"," "); //user_pref("extensions.pocket.oAuthConsumerKey", " "); //user_pref("extensions.pocket.site", " "); diff --git a/README.md b/README.md index 97d91e1..3386281 100644 --- a/README.md +++ b/README.md @@ -46,6 +46,7 @@ The `user.js` — a configuration file that controls Firefox settings — is cur > While the browsers listed below incorporate Betterfox to some extent, they often modify it in ways that reduce its effectiveness. For optimal results, apply the `user.js` file even when using Firefox forks. * [Zen](https://github.com/zen-browser/desktop?tab=readme-ov-file) | [files](https://github.com/zen-browser/desktop/blob/stable/src/browser/app/profile/zen-browser.js) (July 2024) +* [FireDragon](https://github.com/dr460nf1r3/firedragon-browser/blob/master/README.md) | [files](https://github.com/dr460nf1r3/firedragon-browser/blob/55fc6e5029542cd90fabe23cb44c89568d74d006/firedragon.cfg#L822-L824) (Jan 2024?) * [Midori](https://github.com/goastian/midori-desktop/blob/ESR115/README.md) | [files](https://github.com/goastian/midori-desktop/blob/f3d8d96eb8e08f35a64e3c957bea4e839d7c7730/floorp/browser/components/userjsUtils.sys.mjs#L28-L33) (Dec 2023?) * [Mercury](https://github.com/Alex313031/Mercury/releases/tag/v.115.3.0) | [files](https://github.com/Alex313031/Mercury/commit/eb9600f9fb8f48c8f5b5c6f3264fbcdb5caff7f5) (Sep 2023) * [Waterfox](https://www.waterfox.net/docs/releases/G6.0/) | [files](https://github.com/WaterfoxCo/Waterfox/tree/current/waterfox/browser/app/profile) (Sep 2023) diff --git a/Securefox.js b/Securefox.js index a48f410..b976787 100644 --- a/Securefox.js +++ b/Securefox.js @@ -3,7 +3,7 @@ * Securefox * * "Natura non contristatur" * * priority: provide sensible security and privacy * - * version: 142 * + * version: 144 * * url: https://github.com/yokoffing/Betterfox * * credit: Most prefs are reproduced and adapted from the arkenfox project * * credit urL: https://github.com/arkenfox/user.js * @@ -24,7 +24,7 @@ user_pref("browser.contentblocking.category", "strict"); // [HIDDEN] // [1] https://bugzilla.mozilla.org/show_bug.cgi?id=1970647 user_pref("privacy.trackingprotection.allow_list.baseline.enabled", true); // [FF142+] -user_pref("privacy.trackingprotection.allow_list.convenience.enabled", true); // [FF142+] +//user_pref("privacy.trackingprotection.allow_list.convenience.enabled", true); // [FF142+] //user_pref("privacy.trackingprotection.enabled", true); // enabled with "Strict" //user_pref("privacy.trackingprotection.pbmode.enabled", true); // DEFAULT //user_pref("browser.contentblocking.customBlockList.preferences.ui.enabled", false); // DEFAULT @@ -281,7 +281,7 @@ user_pref("security.OCSP.enabled", 0); // [1] https://bugzilla.mozilla.org/buglist.cgi?bug_id=1429800,1670985,1753071 // [2] https://blog.mozilla.org/security/tag/crlite/ //user_pref("security.remote_settings.crlite_filters.enabled", true); // [DEFAULT: true FF137+] -user_pref("security.pki.crlite_mode", 2); +//user_pref("security.pki.crlite_mode", 2); // [DEFAULT: 2 FF142+] // PREF: HTTP Public Key Pinning (HPKP) // HPKP enhances the security of SSL certificates by associating @@ -497,6 +497,14 @@ user_pref("browser.sessionstore.interval", 60000); // 1 minute; default=15000 (1 // PREF: purge session icon in Private Browsing windows user_pref("browser.privatebrowsing.resetPBM.enabled", true); +// PREF: delete files downloaded in Private Browsing when all private windows are closed +// When downloading a file in private browsing mode, the user will be prompted +// to chose whether they want to keep or delete files that are downloaded +// while in private browsing. +//user_pref("browser.download.enableDeletePrivate", true); +//user_pref("browser.download.deletePrivateChosen", true); +//user_pref("browser.download.deletePrivate", true); + /****************************************************************************** * SECTION: SHUTDOWN & SANITIZING * ******************************************************************************/ @@ -1130,6 +1138,53 @@ user_pref("privacy.userContext.ui.enabled", true); // Optionally, hide the setting which also disables the DRM prompt: //user_pref("browser.eme.ui.enabled", false); +/****************************************************************************** + * SECTION: JIT * +******************************************************************************/ +// PREF: Just-In-Time Compilation +// Around half of zero-day exploits are directly related to "just in time" +// (JIT) compilers, and disabling that can greatly improve your protection against +// these potential exploits. +// [1] https://microsoftedge.github.io/edgevr/posts/Super-Duper-Secure-Mode/ +// [2] https://www.youtube.com/watch?v=i7qlZeDt9o4 + +// PREF: JavaScript JIT +// PREF: disable Ion and baseline JIT to harden against JS exploits +// [NOTE] When both Ion and JIT are disabled, and trustedprincipals +// is enabled, then Ion can still be used by extensions [4]. +// Tor Browser doesn't even ship with these disabled by default. +// [1] https://cve.mitre.org/cgi-bin/cvekey.cgi?keyword=firefox+jit +// [2] https://microsoftedge.github.io/edgevr/posts/Super-Duper-Secure-Mode/ +// [3] https://support.microsoft.com/en-us/microsoft-edge/enhance-your-security-on-the-web-with-microsoft-edge-b8199f13-b21b-4a08-a806-daed31a1929d +// [4] https://bugzilla.mozilla.org/show_bug.cgi?id=1599226 +// [5] https://wiki.mozilla.org/IonMonkey +// [6] https://github.com/arkenfox/user.js/issues/1791#issuecomment-1891273681 +//user_pref("javascript.options.baselinejit", false); +//user_pref("javascript.options.ion", false); +//user_pref("javascript.options.jit_trustedprincipals", false); + +// PREF: WebAssembly JIT [FF52+] +// Vulnerabilities [1] have increasingly been found, including those known and fixed +// in native programs years ago [2]. WASM has powerful low-level access, making +// certain attacks (brute-force) and vulnerabilities more possible. +// [STATS] ~0.2% of websites, about half of which are for cryptomining / malvertising [2][3] +// [1] https://cve.mitre.org/cgi-bin/cvekey.cgi?keyword=wasm +// [2] https://spectrum.ieee.org/tech-talk/telecom/security/more-worries-over-the-security-of-web-assembly +// [3] https://www.zdnet.com/article/half-of-the-websites-using-webassembly-use-it-for-malicious-purposes +//user_pref("javascript.options.wasm", false); + //user_pref("javascript.options.wasm_trustedprincipals", false); + //user_pref("javascript.options.wasm_baselinejit", false); + //user_pref("javascript.options.wasm_optimizingjit", false); + +// PREF: Asm.js JIT [FF22+] +// [1] http://asmjs.org/ +// [2] https://cve.mitre.org/cgi-bin/cvekey.cgi?keyword=asm.js +// [3] https://rh0dev.github.io/blog/2017/the-return-of-the-jit/ +//user_pref("javascript.options.asmjs", false); + +// PREF: Blinterp (JIT-like) +//user_pref("javascript.options.blinterp", false); + /****************************************************************************** * SECTION: VARIOUS * ******************************************************************************/ @@ -1143,40 +1198,7 @@ user_pref("privacy.userContext.ui.enabled", true); // If this is less than 5, then pasting code into the web console is disabled. //user_pref("devtools.selfxss.count", 5); -// PREF: disable asm.js [FF22+] -// [WARNING] Disabling this pref may disrupt your browsing experience. -// [1] http://asmjs.org/ -// [2] https://cve.mitre.org/cgi-bin/cvekey.cgi?keyword=asm.js -// [3] https://rh0dev.github.io/blog/2017/the-return-of-the-jit/ -//user_pref("javascript.options.asmjs", false); - -// PREF: disable Ion and baseline JIT to harden against JS exploits -// [NOTE] When both Ion and JIT are disabled, and trustedprincipals -// is enabled, then Ion can still be used by extensions [4]. -// [WARNING] Disabling these prefs will disrupt your browsing experience [6]. -// Tor Browser doesn't even ship with these disabled by default. -// [1] https://cve.mitre.org/cgi-bin/cvekey.cgi?keyword=firefox+jit -// [2] https://microsoftedge.github.io/edgevr/posts/Super-Duper-Secure-Mode/ -// [3] https://support.microsoft.com/en-us/microsoft-edge/enhance-your-security-on-the-web-with-microsoft-edge-b8199f13-b21b-4a08-a806-daed31a1929d -// [4] https://bugzilla.mozilla.org/show_bug.cgi?id=1599226 -// [5] https://wiki.mozilla.org/IonMonkey -// [6] https://github.com/arkenfox/user.js/issues/1791#issuecomment-1891273681 -//user_pref("javascript.options.ion", false); -//user_pref("javascript.options.baselinejit", false); -//user_pref("javascript.options.jit_trustedprincipals", true); // [FF75+] [HIDDEN PREF] - -// PREF: disable WebAssembly [FF52+] -// [WARNING] Disabling this pref may disrupt your browsing experience. -// Vulnerabilities [1] have increasingly been found, including those known and fixed -// in native programs years ago [2]. WASM has powerful low-level access, making -// certain attacks (brute-force) and vulnerabilities more possible. -// [STATS] ~0.2% of websites, about half of which are for cryptomining / malvertising [2][3] -// [1] https://cve.mitre.org/cgi-bin/cvekey.cgi?keyword=wasm -// [2] https://spectrum.ieee.org/tech-talk/telecom/security/more-worries-over-the-security-of-web-assembly -// [3] https://www.zdnet.com/article/half-of-the-websites-using-webassembly-use-it-for-malicious-purposes -//user_pref("javascript.options.wasm", false); - -/****************************************************************************** + /****************************************************************************** * SECTION: SAFE BROWSING (SB) * ******************************************************************************/ diff --git a/personal/user-overrides.js b/personal/user-overrides.js index 8d64b51..c8876c8 100644 --- a/personal/user-overrides.js +++ b/personal/user-overrides.js @@ -28,10 +28,10 @@ user_pref("network.http.speculative-parallel-limit", 20); user_pref("browser.urlbar.speculativeConnect.enabled", true); user_pref("browser.places.speculativeConnect.enabled", true); user_pref("network.prefetch-next", true); - user_pref("network.http.max-persistent-connections-per-server", 20); // increase download connections /** SECUREFOX ***/ +user_pref("privacy.trackingprotection.allow_list.convenience.enabled", false); // disable Strict allowlist of convenience features user_pref("signon.rememberSignons", false); // disable password manager user_pref("extensions.formautofill.addresses.enabled", false); // disable address manager user_pref("extensions.formautofill.creditCards.enabled", false); // disable credit card manager @@ -57,6 +57,9 @@ user_pref("security.cert_pinning.enforcement_level", 2); // strict public key pi user_pref("captivedetect.canonicalURL", ""); // disable captive portal detection user_pref("network.captive-portal-service.enabled", false); // disable captive portal detection user_pref("network.connectivity-service.enabled", false); // disable captive portal detection +user_pref("browser.download.enableDeletePrivate", true); // Delete files downloaded in private browsing when all private windows are closed +user_pref("browser.download.deletePrivateChosen", true); // Delete files downloaded in private browsing when all private windows are closed +user_pref("browser.download.deletePrivate", true); // Delete files downloaded in private browsing when all private windows are closed /** PESKYFOX ***/ user_pref("devtools.accessibility.enabled", false); // removes un-needed "Inspect Accessibility Properties" on right-click @@ -150,3 +153,5 @@ user_pref("network.trr.mode", 2); // enable TRR (with System fallback) user_pref("network.trr.max-fails", 5); // lower max attempts to use DoH user_pref("geo.provider.use_geoclue", false); // [LINUX] user_pref("pdfjs.defaultZoomValue", "page-width"); // PDF zoom level + + diff --git a/user.js b/user.js index 62f430a..d41d3ac 100644 --- a/user.js +++ b/user.js @@ -10,7 +10,7 @@ /**************************************************************************** * Betterfox * * "Ad meliora" * - * version: 142 * + * version: 144 * * url: https://github.com/yokoffing/Betterfox * ****************************************************************************/ @@ -18,31 +18,39 @@ * SECTION: FASTFOX * ****************************************************************************/ /** GENERAL ***/ -user_pref("content.notify.interval", 100000); +user_pref("gfx.content.skia-font-cache-size", 32); /** GFX ***/ -user_pref("gfx.canvas.accelerated.cache-size", 512); -user_pref("gfx.content.skia-font-cache-size", 20); +user_pref("gfx.canvas.accelerated.cache-items", 32768); +user_pref("gfx.canvas.accelerated.cache-size", 4096); +user_pref("webgl.max-size", 16384); /** DISK CACHE ***/ user_pref("browser.cache.disk.enable", false); /** MEMORY CACHE ***/ +user_pref("browser.cache.memory.capacity", 131072); +user_pref("browser.cache.memory.max_entry_size", 20480); user_pref("browser.sessionhistory.max_total_viewers", 4); +user_pref("browser.sessionstore.max_tabs_undo", 10); /** MEDIA CACHE ***/ -user_pref("media.memory_cache_max_size", 65536); -user_pref("media.cache_readahead_limit", 7200); -user_pref("media.cache_resume_threshold", 3600); +user_pref("media.memory_cache_max_size", 262144); +user_pref("media.memory_caches_combined_limit_kb", 1048576); +user_pref("media.cache_readahead_limit", 600); +user_pref("media.cache_resume_threshold", 300); /** IMAGE CACHE ***/ -user_pref("image.mem.decode_bytes_at_a_time", 32768); +user_pref("image.cache.size", 10485760); +user_pref("image.mem.decode_bytes_at_a_time", 65536); /** NETWORK ***/ user_pref("network.http.max-connections", 1800); user_pref("network.http.max-persistent-connections-per-server", 10); user_pref("network.http.max-urgent-start-excessive-connections-per-host", 5); +user_pref("network.http.request.max-start-delay", 5); user_pref("network.http.pacing.requests.enabled", false); +user_pref("network.dnsCacheEntries", 10000); user_pref("network.dnsCacheExpiration", 3600); user_pref("network.ssl_tokens_cache_capacity", 10240); @@ -55,16 +63,12 @@ user_pref("browser.places.speculativeConnect.enabled", false); user_pref("network.prefetch-next", false); user_pref("network.predictor.enabled", false); -/** EXPERIMENTAL ***/ -user_pref("layout.css.grid-template-masonry-value.enabled", true); - /**************************************************************************** * SECTION: SECUREFOX * ****************************************************************************/ /** TRACKING PROTECTION ***/ user_pref("browser.contentblocking.category", "strict"); user_pref("privacy.trackingprotection.allow_list.baseline.enabled", true); -user_pref("privacy.trackingprotection.allow_list.convenience.enabled", true); user_pref("browser.download.start_downloads_in_tmp_dir", true); user_pref("browser.helperApps.deleteTempFileOnExit", true); user_pref("browser.uitour.enabled", false); @@ -72,7 +76,6 @@ user_pref("privacy.globalprivacycontrol.enabled", true); /** OCSP & CERTS / HPKP ***/ user_pref("security.OCSP.enabled", 0); -user_pref("security.pki.crlite_mode", 2); user_pref("security.csp.reporting.enabled", false); /** SSL / TLS ***/ @@ -85,8 +88,8 @@ user_pref("browser.privatebrowsing.forceMediaMemoryCache", true); user_pref("browser.sessionstore.interval", 60000); /** SHUTDOWN & SANITIZING ***/ -user_pref("browser.privatebrowsing.resetPBM.enabled", true); user_pref("privacy.history.custom", true); +user_pref("browser.privatebrowsing.resetPBM.enabled", true); /** SEARCH / URL BAR ***/ user_pref("browser.urlbar.trimHttps", true); @@ -180,6 +183,9 @@ user_pref("browser.privateWindowSeparation.enabled", false); // WINDOWS /** AI ***/ user_pref("browser.ml.enable", false); user_pref("browser.ml.chat.enabled", false); +user_pref("browser.ml.chat.menu", false); +user_pref("browser.tabs.groups.smart.enabled", false); +user_pref("browser.ml.linkPreview.enabled", false); /** FULLSCREEN NOTICE ***/ user_pref("full-screen-api.transition-duration.enter", "0 0"); @@ -196,9 +202,6 @@ user_pref("browser.newtabpage.activity-stream.feeds.section.topstories", false); user_pref("browser.newtabpage.activity-stream.showSponsored", false); user_pref("browser.newtabpage.activity-stream.showSponsoredCheckboxes", false); -/** POCKET ***/ -user_pref("extensions.pocket.enabled", false); - /** DOWNLOADS ***/ user_pref("browser.download.manager.addToRecentDocs", false); @@ -231,8 +234,3 @@ user_pref("layout.word_select.eat_space_to_next_word", false); /**************************************************************************** * END: BETTERFOX * ****************************************************************************/ - - - - -