1
0
mirror of https://github.com/yokoffing/Betterfox.git synced 2026-06-29 16:11:23 +05:30

Compare commits

..

9 Commits

Author SHA1 Message Date
yokoffing a8a187a203 Update Fastfox.js 2025-08-31 00:21:18 -04:00
yokoffing daa69a7b17 Update Fastfox.js 2025-08-30 14:40:12 -04:00
yokoffing 06e65e9648 potential changes 2025-08-29 17:50:26 -04:00
yokoffing a488923660 pocket now disabled 2025-08-25 09:27:44 -04:00
yokoffing 5cca24777a pocket now disabled 2025-08-25 09:26:57 -04:00
yokoffing d4fff2b3fa crlite mode now default 2025-08-25 09:20:30 -04:00
yokoffing 7dc47f55ed crlite mode now default 2025-08-25 09:20:22 -04:00
yokoffing f149a8234f delete files downloaded in Private Browsing when all private windows are closed 2025-08-25 09:16:52 -04:00
yokoffing cd03a114cb disable convenience features 2025-08-25 08:54:36 -04:00
7 changed files with 79 additions and 124 deletions
+23 -32
View File
@@ -22,12 +22,6 @@
//user_pref("nglayout.initialpaint.delay", 5); // DEFAULT; formerly 250 //user_pref("nglayout.initialpaint.delay", 5); // DEFAULT; formerly 250
//user_pref("nglayout.initialpaint.delay_in_oopif", 5); // DEFAULT //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 // PREF: page reflow timer
// Rather than wait until a page has completely downloaded to display it to the user, // 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. // web browsers will periodically render what has been received to that point.
@@ -39,7 +33,7 @@ user_pref("gfx.content.skia-font-cache-size", 32); // 32 MB; default=5; Chrome=2
// false = reflow pages whenever new data is received // false = reflow pages whenever new data is received
//user_pref("content.notify.ontimer", true); // DEFAULT //user_pref("content.notify.ontimer", true); // DEFAULT
// PREF: content notification delay - notification interval (in microseconds) to avoid layout thrashing // PREF: notification interval (in microseconds) to avoid layout thrashing
// When Firefox is loading a page, it periodically reformats // When Firefox is loading a page, it periodically reformats
// or "reflows" the page as it loads. The page displays new elements // or "reflows" the page as it loads. The page displays new elements
// every 0.12 seconds by default. These redraws increase the total page load time. // every 0.12 seconds by default. These redraws increase the total page load time.
@@ -53,17 +47,12 @@ user_pref("gfx.content.skia-font-cache-size", 32); // 32 MB; default=5; Chrome=2
// [1] https://searchfox.org/mozilla-central/rev/c1180ea13e73eb985a49b15c0d90e977a1aa919c/modules/libpref/init/StaticPrefList.yaml#1824-1834 // [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 // [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 // [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.max.tokenizing.time", 1000000);
//user_pref("content.interrupt.parsing", true); // HIDDEN //user_pref("content.switch.threshold", 500000); // default= 750000
//user_pref("content.notify.ontimer", true); // DEFAULT //user_pref("content.interrupt.parsing", true);
//user_pref("content.notify.ontimer", true);
// PREF: UI responsiveness threshold //user_pref("content.maxtextrun", 8191); // DEFAULT
//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 // 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.
@@ -79,7 +68,7 @@ user_pref("gfx.content.skia-font-cache-size", 32); // 32 MB; default=5; Chrome=2
// [2] https://bugzilla.mozilla.org/show_bug.cgi?id=1796525 // [2] https://bugzilla.mozilla.org/show_bug.cgi?id=1796525
// [3] https://bugzilla.mozilla.org/show_bug.cgi?id=1800412 // [3] https://bugzilla.mozilla.org/show_bug.cgi?id=1800412
// [4] https://reddit.com/r/firefox/comments/107fj69/how_can_i_disable_the_efficiency_mode_on_firefox/ // [4] https://reddit.com/r/firefox/comments/107fj69/how_can_i_disable_the_efficiency_mode_on_firefox/
//user_pref("dom.ipc.processPriorityManager.backgroundUsesEcoQoS", false); user_pref("dom.ipc.processPriorityManager.backgroundUsesEcoQoS", false);
// 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)
@@ -134,12 +123,14 @@ user_pref("gfx.content.skia-font-cache-size", 32); // 32 MB; default=5; Chrome=2
// [2] https://github.com/yokoffing/Betterfox/issues/153 // [2] https://github.com/yokoffing/Betterfox/issues/153
// [3] https://github.com/yokoffing/Betterfox/issues/198 // [3] https://github.com/yokoffing/Betterfox/issues/198
//user_pref("gfx.canvas.accelerated", true); // [DEFAULT FF133+] //user_pref("gfx.canvas.accelerated", true); // [DEFAULT FF133+]
user_pref("gfx.canvas.accelerated.cache-items", 32768); // [default=8192 FF135+]; Chrome=4096 //user_pref("gfx.canvas.accelerated.cache-items", 16384); // [DEFAULT=8192 FF135+]; Chrome=4096; alt=32768
user_pref("gfx.canvas.accelerated.cache-size", 4096); // default=256; Chrome=512 user_pref("gfx.canvas.accelerated.cache-size", 2048); // default=256; Chrome=512; alt=4096
user_pref("gfx.content.skia-font-cache-size", 32); // default=5; Chrome=20
//user_pref("gfx.canvas.max-size", 32767); // DEFAULT=32767 //user_pref("gfx.canvas.max-size", 32767); // DEFAULT=32767
// [1] https://bugzilla.mozilla.org/show_bug.cgi?id=1239151#c2
// PREF: WebGL // PREF: WebGL
user_pref("webgl.max-size", 16384); // default=1024 user_pref("webgl.max-size", 8192); // default=1024
//user_pref("webgl.force-enabled", true); //user_pref("webgl.force-enabled", true);
// PREF: prefer GPU over CPU // PREF: prefer GPU over CPU
@@ -288,8 +279,8 @@ user_pref("browser.cache.disk.enable", false);
// [1] https://kb.mozillazine.org/Browser.cache.memory.capacity#-1 // [1] https://kb.mozillazine.org/Browser.cache.memory.capacity#-1
// [2] https://searchfox.org/mozilla-central/source/netwerk/cache2/CacheObserver.cpp#94-125 // [2] https://searchfox.org/mozilla-central/source/netwerk/cache2/CacheObserver.cpp#94-125
// [3] https://github.com/WaterfoxCo/Waterfox/commit/3fed16932c80a2f6b37d126fe10aed66c7f1c214 // [3] https://github.com/WaterfoxCo/Waterfox/commit/3fed16932c80a2f6b37d126fe10aed66c7f1c214
user_pref("browser.cache.memory.capacity", 131072); // 128 MB RAM cache; alt=65536 (65 MB RAM cache); default=32768 user_pref("browser.cache.memory.capacity", 65536); // 64MB RAM cahce; alt=131072 (128 MB RAM cache)
user_pref("browser.cache.memory.max_entry_size", 20480); // 20 MB max entry; default=5120 (5 MB) user_pref("browser.cache.memory.max_entry_size", 16384); // 16MB max entry; alt=32768; 32 MB max entry; default=5120 (5 MB)
// PREF: amount of Back/Forward cached pages stored in memory for each tab // PREF: amount of Back/Forward cached pages stored in memory for each tab
// Pages that were recently visited are stored in memory in such a way // Pages that were recently visited are stored in memory in such a way
@@ -303,12 +294,12 @@ user_pref("browser.cache.memory.max_entry_size", 20480); // 20 MB max entry; def
user_pref("browser.sessionhistory.max_total_viewers", 4); // default=8 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_tabs_undo", 10); // default=25
//user_pref("browser.sessionstore.max_entries", 10); // [HIDDEN OR REMOVED] //user_pref("browser.sessionstore.max_entries", 10); // [HIDDEN OR REMOVED]
//user_pref("dom.storage.default_quota", 20480); // 20MB; default=5120 user_pref("dom.storage.default_quota", 20480); // 20MB; default=5120
//user_pref("dom.storage.shadow_writes", true); user_pref("dom.storage.shadow_writes", true);
// PREF: tell garbage collector to start running when javascript is using xx MB of memory // PREF: tell garbage collector to start running when javascript is using xx MB of memory
// Garbage collection releases memory back to the system. // Garbage collection releases memory back to the system.
//user_pref("javascript.options.mem.high_water_mark", 128); // DEFAULT [HIDDEN OR REMOVED] //user_pref("javascript.options.mem.high_water_mark", 128); [HIDDEN OR REMOVED]
/**************************************************************************** /****************************************************************************
* SECTION: MEDIA CACHE * * SECTION: MEDIA CACHE *
@@ -319,11 +310,11 @@ user_pref("browser.sessionstore.max_tabs_undo", 10); // default=25
// PREF: media memory cache // PREF: media memory cache
// [1] https://hg.mozilla.org/mozilla-central/file/tip/modules/libpref/init/StaticPrefList.yaml#l9652 // [1] https://hg.mozilla.org/mozilla-central/file/tip/modules/libpref/init/StaticPrefList.yaml#l9652
// [2] https://github.com/arkenfox/user.js/pull/941#issuecomment-668278121 // [2] https://github.com/arkenfox/user.js/pull/941
user_pref("media.memory_cache_max_size", 262144); // 256 MB; default=8192; AF=65536 user_pref("media.memory_cache_max_size", 524288); // 512MB; default=8192; AF=65536; alt=131072
// PREF: media cache combine sizes // PREF: media cache combine sizes
user_pref("media.memory_caches_combined_limit_kb", 1048576); // 1GB; default=524288 user_pref("media.memory_caches_combined_limit_kb", 2097152); // 2GB; 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 //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 // PREF: Media Source Extensions (MSE) web standard
@@ -396,7 +387,7 @@ user_pref("network.http.pacing.requests.enabled", false);
// PREF: increase DNS cache // PREF: increase DNS cache
// [1] https://developer.mozilla.org/en-US/docs/Web/Performance/Understanding_latency // [1] https://developer.mozilla.org/en-US/docs/Web/Performance/Understanding_latency
user_pref("network.dnsCacheEntries", 10000); // default=800 user_pref("network.dnsCacheEntries", 10000); // default=400
// PREF: adjust DNS expiration time // PREF: adjust DNS expiration time
// [ABOUT] about:networking#dns // [ABOUT] about:networking#dns
@@ -579,7 +570,7 @@ user_pref("network.predictor.enabled", false);
// PREF: CSS Masonry Layout [NIGHTLY] // PREF: CSS Masonry Layout [NIGHTLY]
// [1] https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_Grid_Layout/Masonry_Layout // [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/ // [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 * * SECTION: TAB UNLOAD *
+3 -9
View File
@@ -64,9 +64,6 @@ user_pref("browser.profiles.enabled", true);
// [1] https://github.com/yokoffing/Betterfox/issues/320 // [1] https://github.com/yokoffing/Betterfox/issues/320
//user_pref("widget.gtk.non-native-titlebar-buttons.enabled", true); //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 * * SECTION: THEME ADJUSTMENTS *
****************************************************************************/ ****************************************************************************/
@@ -109,15 +106,12 @@ user_pref("browser.ml.enable", false);
// PREF: AI chat // PREF: AI chat
user_pref("browser.ml.chat.enabled", false); user_pref("browser.ml.chat.enabled", false);
// PREF: AI chatbot option in right click menu // PREF: link previews
user_pref("browser.ml.chat.menu", false); //user_pref("browser.ml.linkPreview.enabled", false);
// PREF: AI-enhanced tab groups // PREF: AI-enhanced tab groups
// [1] https://support.mozilla.org/kb/how-use-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 * * SECTION: COOKIE BANNER HANDLING *
-1
View File
@@ -46,7 +46,6 @@ 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. > 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) * [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?) * [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) * [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) * [Waterfox](https://www.waterfox.net/docs/releases/G6.0/) | [files](https://github.com/WaterfoxCo/Waterfox/tree/current/waterfox/browser/app/profile) (Sep 2023)
+37 -51
View File
@@ -24,7 +24,7 @@
user_pref("browser.contentblocking.category", "strict"); // [HIDDEN] user_pref("browser.contentblocking.category", "strict"); // [HIDDEN]
// [1] https://bugzilla.mozilla.org/show_bug.cgi?id=1970647 // [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.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.enabled", true); // enabled with "Strict"
//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
@@ -501,9 +501,9 @@ user_pref("browser.privatebrowsing.resetPBM.enabled", true);
// When downloading a file in private browsing mode, the user will be prompted // 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 // to chose whether they want to keep or delete files that are downloaded
// while in private browsing. // while in private browsing.
//user_pref("browser.download.enableDeletePrivate", true); user_pref("browser.download.enableDeletePrivate", true);
//user_pref("browser.download.deletePrivateChosen", true); user_pref("browser.download.deletePrivateChosen", true);
//user_pref("browser.download.deletePrivate", true); user_pref("browser.download.deletePrivate", true);
/****************************************************************************** /******************************************************************************
* SECTION: SHUTDOWN & SANITIZING * * SECTION: SHUTDOWN & SANITIZING *
@@ -1138,53 +1138,6 @@ user_pref("privacy.userContext.ui.enabled", true);
// Optionally, hide the setting which also disables the DRM prompt: // Optionally, hide the setting which also disables the DRM prompt:
//user_pref("browser.eme.ui.enabled", false); //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 * * SECTION: VARIOUS *
******************************************************************************/ ******************************************************************************/
@@ -1198,6 +1151,39 @@ user_pref("privacy.userContext.ui.enabled", true);
// If this is less than 5, then pasting code into the web console is disabled. // If this is less than 5, then pasting code into the web console is disabled.
//user_pref("devtools.selfxss.count", 5); //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) * * SECTION: SAFE BROWSING (SB) *
******************************************************************************/ ******************************************************************************/
-4
View File
@@ -51,10 +51,6 @@ INSTALLATIONS_TO_CHECK = [
"command": [str(Path("C:/Program Files/Mozilla Firefox/firefox"))], "command": [str(Path("C:/Program Files/Mozilla Firefox/firefox"))],
"root": Path(getenv("APPDATA") or "").joinpath("Mozilla/Firefox").resolve(), "root": Path(getenv("APPDATA") or "").joinpath("Mozilla/Firefox").resolve(),
}, },
{
"command": [str(Path(getenv("LOCALAPPDATA") or "").joinpath("Mozilla Firefox/firefox").resolve())],
"root": Path(getenv("APPDATA") or "").joinpath("Mozilla/Firefox").resolve(),
},
# linux # linux
{ {
"command": ["firefox"], "command": ["firefox"],
-4
View File
@@ -57,9 +57,6 @@ user_pref("security.cert_pinning.enforcement_level", 2); // strict public key pi
user_pref("captivedetect.canonicalURL", ""); // disable captive portal detection user_pref("captivedetect.canonicalURL", ""); // disable captive portal detection
user_pref("network.captive-portal-service.enabled", false); // 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("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 ***/ /** PESKYFOX ***/
user_pref("devtools.accessibility.enabled", false); // removes un-needed "Inspect Accessibility Properties" on right-click user_pref("devtools.accessibility.enabled", false); // removes un-needed "Inspect Accessibility Properties" on right-click
@@ -154,4 +151,3 @@ user_pref("network.trr.max-fails", 5); // lower max attempts to use DoH
user_pref("geo.provider.use_geoclue", false); // [LINUX] user_pref("geo.provider.use_geoclue", false); // [LINUX]
user_pref("pdfjs.defaultZoomValue", "page-width"); // PDF zoom level user_pref("pdfjs.defaultZoomValue", "page-width"); // PDF zoom level
+12 -19
View File
@@ -18,39 +18,31 @@
* SECTION: FASTFOX * * SECTION: FASTFOX *
****************************************************************************/ ****************************************************************************/
/** GENERAL ***/ /** GENERAL ***/
user_pref("gfx.content.skia-font-cache-size", 32); user_pref("content.notify.interval", 100000);
/** GFX ***/ /** GFX ***/
user_pref("gfx.canvas.accelerated.cache-items", 32768); user_pref("gfx.canvas.accelerated.cache-size", 512);
user_pref("gfx.canvas.accelerated.cache-size", 4096); user_pref("gfx.content.skia-font-cache-size", 20);
user_pref("webgl.max-size", 16384);
/** DISK CACHE ***/ /** DISK CACHE ***/
user_pref("browser.cache.disk.enable", false); user_pref("browser.cache.disk.enable", false);
/** MEMORY CACHE ***/ /** 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.sessionhistory.max_total_viewers", 4);
user_pref("browser.sessionstore.max_tabs_undo", 10);
/** MEDIA CACHE ***/ /** MEDIA CACHE ***/
user_pref("media.memory_cache_max_size", 262144); user_pref("media.memory_cache_max_size", 65536);
user_pref("media.memory_caches_combined_limit_kb", 1048576); user_pref("media.cache_readahead_limit", 7200);
user_pref("media.cache_readahead_limit", 600); user_pref("media.cache_resume_threshold", 3600);
user_pref("media.cache_resume_threshold", 300);
/** IMAGE CACHE ***/ /** IMAGE CACHE ***/
user_pref("image.cache.size", 10485760); user_pref("image.mem.decode_bytes_at_a_time", 32768);
user_pref("image.mem.decode_bytes_at_a_time", 65536);
/** NETWORK ***/ /** NETWORK ***/
user_pref("network.http.max-connections", 1800); user_pref("network.http.max-connections", 1800);
user_pref("network.http.max-persistent-connections-per-server", 10); user_pref("network.http.max-persistent-connections-per-server", 10);
user_pref("network.http.max-urgent-start-excessive-connections-per-host", 5); user_pref("network.http.max-urgent-start-excessive-connections-per-host", 5);
user_pref("network.http.request.max-start-delay", 5);
user_pref("network.http.pacing.requests.enabled", false); user_pref("network.http.pacing.requests.enabled", false);
user_pref("network.dnsCacheEntries", 10000);
user_pref("network.dnsCacheExpiration", 3600); user_pref("network.dnsCacheExpiration", 3600);
user_pref("network.ssl_tokens_cache_capacity", 10240); user_pref("network.ssl_tokens_cache_capacity", 10240);
@@ -63,12 +55,16 @@ user_pref("browser.places.speculativeConnect.enabled", false);
user_pref("network.prefetch-next", false); user_pref("network.prefetch-next", false);
user_pref("network.predictor.enabled", false); user_pref("network.predictor.enabled", false);
/** EXPERIMENTAL ***/
user_pref("layout.css.grid-template-masonry-value.enabled", true);
/**************************************************************************** /****************************************************************************
* SECTION: SECUREFOX * * SECTION: SECUREFOX *
****************************************************************************/ ****************************************************************************/
/** TRACKING PROTECTION ***/ /** TRACKING PROTECTION ***/
user_pref("browser.contentblocking.category", "strict"); user_pref("browser.contentblocking.category", "strict");
user_pref("privacy.trackingprotection.allow_list.baseline.enabled", true); 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.download.start_downloads_in_tmp_dir", true);
user_pref("browser.helperApps.deleteTempFileOnExit", true); user_pref("browser.helperApps.deleteTempFileOnExit", true);
user_pref("browser.uitour.enabled", false); user_pref("browser.uitour.enabled", false);
@@ -88,8 +84,8 @@ user_pref("browser.privatebrowsing.forceMediaMemoryCache", true);
user_pref("browser.sessionstore.interval", 60000); user_pref("browser.sessionstore.interval", 60000);
/** SHUTDOWN & SANITIZING ***/ /** SHUTDOWN & SANITIZING ***/
user_pref("privacy.history.custom", true);
user_pref("browser.privatebrowsing.resetPBM.enabled", true); user_pref("browser.privatebrowsing.resetPBM.enabled", true);
user_pref("privacy.history.custom", true);
/** SEARCH / URL BAR ***/ /** SEARCH / URL BAR ***/
user_pref("browser.urlbar.trimHttps", true); user_pref("browser.urlbar.trimHttps", true);
@@ -183,9 +179,6 @@ user_pref("browser.privateWindowSeparation.enabled", false); // WINDOWS
/** AI ***/ /** AI ***/
user_pref("browser.ml.enable", false); user_pref("browser.ml.enable", false);
user_pref("browser.ml.chat.enabled", 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 ***/ /** FULLSCREEN NOTICE ***/
user_pref("full-screen-api.transition-duration.enter", "0 0"); user_pref("full-screen-api.transition-duration.enter", "0 0");