JMM’s

about:config Notes and Settings

for Firefox

browser.tabs.closeWindowWithLastTab
I set this to “false” so closing a tab doesn’t force the browser window to close.
browser.urlbar.filter.javascript
I’ve set this to “false”, but I’m not sure if it still does anything. It’s supposed to allow you to type “javascript:” URLs, which are normally disabled for security reasons (i.e. naïve users being tricked into entering it).
browser.urlbar.showSearchSuggestionsFirst
I’ve set this to “false”.
browser.urlbar.suggest.calculator
true
browser.urlbar.suggest.quicksuggest.sponsored
false
browser.urlbar.suggest.searches
false
browser.urlbar.suggest.topsites
false
devtools.editor.keymap
emacs
extensions.pocket.enabled
false
identity.fxaccounts.enabled
Set to “false” to disable Firefox sync/accounts. Might be useful if you want to prevent accidentally sending your browsing history, passwords, and other data elsewhere.
layout.css.grid-template-masonry-value.enabled
true”. Just to test out this CSS grid value.
browser.eme.ui.enabled
media.eme.enabled
false”. Disable DRM. See https://support.mozilla.org/en-US/questions/1388341.
I’ve also set “media.gmp-widevinecdm.enabled = false” and “media.gmp-widevinecdm.visible = false”.
toolkit.legacyUserProfileCustomizations.stylesheets
true
Allows you to style your Firefox chrome layout with CSS.
ui.prefersReducedMotion
Set it to “1” to set your CSS “prefers-reduced-motion”. Can also set it to “0”.
browser.startup.homepage
about:blank
browser.privatebrowsing.promoEnabled
Set to “false”. I think this blocked a promo for Mozilla VPN (which, guess what, I already use).
browser.newtabpage.activity-stream.showSponsoredTopSites
false
browser.compactmode.show
Set to “true”. I forget why.
dom.no_unknown_protocol_error.enabled
Set to “false” to show an error when Firefox doesn’t know what to do with a URI scheme. Like this magnet link for GPL-v3
This unknown protocol page isn’t enabled by default anymore unless you switch this config. Screenshot taken on .

This didn’t seem to work on Firefox Nightly on Android 121.0a1 on 2023-11-13.

browser.urlbar.suggest.addons
Set to “false” to remove extension addons like the one below.
Suggestions for extensions in the URL bar. Screenshot taken 2023-12-12.
Same as above, but with suggestion removed.
image.jxl.enabled
In recent versions (possibly only Firefox Nightly) this enables JPEG-XL support. I have not yet (as of 2024-02-05) tried it.
network.disable-localhost-when-offline
File > Work Offline isn’t actually offline unless you set this to true.
print.print_headerleft
print.print_headercenter
print.print_headerright
print.print_footerleft
print.print_footercenter
print.print_footerright
Changes the headers/footers in printing. See this comment by jscher2000.
&T
Title
&U
URL
&PT
Page number of total
&P
Page number
&D
Date/Time
dom.private-attribution.submission.enabled
Set to “false” to disable Privacy-Preserving Attribution. Documented by kivikakk in lobste.rs.
javascript.enabled
You can toggle this to “false” to turn off JavaScript.
general.useragent.override
Set this to a string to override your User-Agent HTTP field.
The preference will not exist if you haven’t edited it yet, but it’ll still have an effect once you add it.
You can set it to something like “Mozilla/5.0 (X11; Linux x86_64; rv:132.0) Gecko/20100101 Firefox/132.0” or “Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/130.0.0.0 Safari/537.36
browser.display.document_color_use
If you set this to “2” you get a high contrast theme. (I was trying to figure out how to set the forced system colors theme.) Works in Firefox Android.
browser.display.use_document_fonts
Set this to “0” to turn off web fonts.

Saving preferences

prefs.js inside the user profile suggests adding preferences to user.js (e.g. ~/.mozilla/firefox/xxxxxxxx.xxxxxxx/user.js). Haven’t tried it yet.

Enabling about:config in Firefox Android

Typically, if you’re going to mess with about:config on Android, you should be using Firefox Nightly, not stable. This way, when you inevitably break something, you don’t complain about stable breaking when you were the one responsible. about:config is disabled by default on stable, but enabled in Nightly.

However, you can enable about:config on stable anyway by setting an about:config setting. How do you do that if you don’t have access in the first place, you ask? Go to: “chrome://geckoview/content/config.xhtml” and enable it from there. The setting is general.aboutConfig.enable, which you’ll want to set to “true”.

Finding modified preferences

An easy way to find “important modified preferences” is to go to about:support#modified-key-prefs.