Firefox Developer Edition is pretty nice for getting features early
jc's Nightly install script includes The Ultimate .desktop
application files.
Firefox does not do TLS Mutual auth for CORS Preflight requests as mandated by Fetch standard.
Chrome ignores that and some websites rely on this behavior (https://api.lhv.eu/psd2/ui/auth/login).
https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS#preflight_requests_and_credentials
You can turn on Chrome like behavior in about:config
network.cors_preflight.allow_client_cert=true
about:config
browser.tabs.allowTabDetach -> false # tabs can't move to new windows without right click -> move to -> new window
browser.tabs.insertAfterCurrent -> true # ctrl-t always inserts right to the left
extensions.pocket.enabled -> false
browser.download.open_pdf_attachments_inline -> true # always open pdfs (from web) in browser, don't download
svg.context-properties.content.enabled -> true # some extensions depend on this, esp for dark mode
ui.systemUsesDarkTheme -> 1 # make some misc white flashes go away
xpinstall.signatures.required -> false # allows local non-temporary installations of add-ons, useful for stuff you've made PRs to, but want the functionality now.
layout.css.devPixelsPerPx # regulate this for low-/hi-res displays (x230: 0.85-0.9 is fine)
privacy.resistFingerprinting -> true # override ui.systemUsesDarkTheme with light theme for websites (prefers-color-scheme). This is preferred (browser UI is dark, pages light)
privacy.resistFingerprinting.autoDeclineNoUserInputCanvasPrompts -> false
browser.sessionhistory.max_total_viewers -> 32 # store more pages in memory http://kb.mozillazine.org/Browser.sessionhistory.max_total_viewers
dom.ipc.processCount -> 32 # max cpu threads, divved up to tabs
toolkit.legacyUserProfileCustomizations.stylesheets -> true # enables userChrome.css userContent.css
apz.gtk.kinetic_scroll.enabled → false # scrolling shall stop when lifting fingers from touchpad
browser.gesture.swipe.left -> ""
browser.gesture.swipe.right -> ""
browser.compactmode.show → true # customize
identity.sync.tokenserver.uri → https://ss.c7.ee/token/1.0/sync/1.5
media.cache_readahead_limit, media.cache_resume_threshold, media.cache_size: *3 (helps with high-speed media playback)
toolkit.zoomManager.zoomValues = .01,0.05,0.1,.3,.5,.67,.8,.9,1,1.1,1.2,1.33,1.5,1.7,2,2.4,3,4,5
zoom.minPercent = 1
browser.gesture.pinch.in -> "" # no, x230 touchpad is not great with accidental zooms with no way to reset withou reload of page rly
browser.gesture.pinch.out -> "" # yes, i like the zoom implementation sometimes: it doesn't rescale the content, but it's inaccessible for me rly
# extensions.experiments.enabled -> true # used to use this for Paxmod. Browser updates make paxmod break easily, switched to csshacks for multi-row tab. Missing the domain text coloring.
# [gone] media.autoplay.enabled.user-gestures-needed -> false # used to prevent video from autoplaying on yt, after navigation (if you navigate without refreshing, it still autoplays). Switching to invidious helped.
# [gone] browser.in-content.dark-mode -> true
# ~/.config/environment.d/99-firefox.conf
MOZ_USE_XINPUT2=1
MOZ_ENABLE_WAYLAND=1
GTK_USE_PORTAL=1
NB you need to restart your computer for systemd to register those environment variables
about:config
enablelayers.acceleration.force-enabled
apz.overscroll.enabled
apz.gtk.touchpad_pinch.enabled
To prevent touchscreen zooming gesture triggering the 100%, 125% keyboard-like zoom, set browser.gesture.pinch.threshold
to 99999
.
dom.security.https_only_mode
Now also available at the bottom of about:preferences#privacy
!
Workaround: privacy.resistFingerprinting
to false
during login.