Both sides previous revisionPrevious revisionNext revision | Previous revision |
notes:firefox [2023/07/24 07:06] – [user.js] Sean Rhone | notes:firefox [2024/08/13 21:46] (current) – removed Sean Rhone |
---|
====== Info ====== | |
| |
* Old notes on how to configure Firefox on Linux | |
| |
====== Mozilla Firefox ====== | |
| |
===== Settings ===== | |
| |
==== Environment Variables ==== | |
| |
* Enables hardware acceleration, smooth-scrolling, and EGL | |
* :!: WebRenderer requires the previous ''MOZ_ACCELERATED'' variable as well | |
| |
echo -e 'export MOZ_ACCELERATED=1\nexport MOZ_WEBRENDER=1\nexport MOZ_USE_XINPUT2=1\nexport MOZ_X11_EGL=1' | sudo tee '/etc/profile.d/firefox-hwaccel.sh' > '/dev/null' && cat '/etc/profile.d/firefox-hwaccel.sh' | |
| |
sudo -e '/etc/profile.d/firefox-hwaccel.sh' | |
| |
==== Default Profile ==== | |
| |
rm -fv '/tmp/profiles.ini' && nano '/tmp/profiles.ini' && sed -i 's/'CHANGEME'/'$USER'/g' '/tmp/profiles.ini' | |
| |
<code> | |
[General] | |
StartWithLastProfile=1 | |
| |
[Profile0] | |
Name=default | |
IsRelative=1 | |
Path=CHANGEME | |
Default=1</code> | |
| |
==== user.js ==== | |
| |
* Last updated: 2021/04/02 | |
| |
* :!: IPv6 is disabled in order to prevent WebRTC from grabbing an IPv6 address even though NetworkManager has it disabled | |
* :!: ''media.peerconnection.enabled'' disables WebRTC | |
* :!: ''layout.frame_rate'' needs adjusted for displays with a refresh rate higher than 60Hz ((go to Help -> Troubleshooting information (or ''about:support'') and check ''Target Frame Rate'')) | |
| |
rm -fv '/tmp/user.js' && nano '/tmp/user.js' | |
| |
<code> | |
/********************* | |
* Hardware-specific * | |
*********************/ | |
| |
user_pref("layout.frame_rate", 144); | |
| |
/************************* | |
* Hardware Acceleration * | |
*************************/ | |
| |
user_pref("layers.acceleration.force-enabled", true); | |
| |
/********* | |
* Video * | |
*********/ | |
| |
user_pref("media.ffmpeg.vaapi.enabled", true); | |
user_pref("media.ffvpx.enabled", false); | |
user_pref("media.rdd-vpx.enabled", false); | |
user_pref("media.hardware-video-decoding.force-enabled", true); | |
| |
/************** | |
* Dark Theme * | |
**************/ | |
| |
user_pref("browser.in-content.dark-mode", true); | |
user_pref("ui.systemUsesDarkTheme", 1); | |
| |
/*********** | |
* General * | |
***********/ | |
| |
user_pref("extensions.screenshots.disabled", true); | |
user_pref("reader.parse-on-load.enabled", false); | |
| |
user_pref("webgl.disabled", true); | |
user_pref("webgl.enable-webgl2", false); | |
user_pref("accessibility.force_disabled", 1); | |
user_pref("mousewheel.min_line_scroll_amount", 40); | |
user_pref("browser.tabs.drawInTitlebar", true); | |
user_pref("network.standard-url.escape-utf8", false); | |
| |
/*********** | |
* Privacy * | |
***********/ | |
| |
user_pref("network.security.esni.enabled", true); | |
| |
/*********** | |
* TODO * | |
***********/ | |
| |
user_pref("identity.fxaccounts.enabled", false); | |
user_pref("extensions.pocket.enabled", false); | |
user_pref("browser.preferences.moreFromMozilla", false); | |
user_pref("browser.messaging-system.whatsNewPanel.enabled", false); | |
user_pref("browser.messaging-system.whatsNewPanel.enabled", false); | |
user_pref("browser.messaging-system.whatsNewPanel.enabled", false); | |
user_pref("browser.newtabpage.activity-stream.asrouter.userprefs.cfr.addons", false); | |
user_pref("browser.newtabpage.activity-stream.asrouter.userprefs.cfr.features", false); | |
user_pref("browser.newtabpage.activity-stream.asrouter.useRemoteL10n", false); | |
| |
/******* | |
* END * | |
*******/</code> | |
| |
==== Apply Settings ==== | |
| |
* ''Path'' should report the current user's username, and the text ''Custom Stuff'' should be visible | |
* :!: If Firefox doesn't open automatically, ''firefox -p default'' must be ran the first time Firefox is started after this command | |
| |
ls '/tmp/profiles.ini' '/tmp/user.js' && pkill -f 'firefox' && rm -Rfv ~/'.mozilla' && sync && mkdir -p ~/'.mozilla/firefox/'$USER && mv '/tmp/profiles.ini' ~/'.mozilla/firefox/profiles.ini' && mv '/tmp/user.js' ~/'.mozilla/firefox/'$USER'/user.js' && sync && cat ~/'.mozilla/firefox/profiles.ini' | grep $USER && cat ~/'.mozilla/firefox/'$USER'/user.js' | grep 'Custom Stuff' && sleep '1' && sync || firefox -p 'default' | |
| |
===== Extensions ===== | |
| |
==== Download ==== | |
| |
* Decentraleyes | |
* Cookie AutoDelete | |
* uBlock Origin | |
| |
gio open 'https://addons.mozilla.org/en-US/firefox/addon/decentraleyes/versions' && gio open 'https://addons.mozilla.org/en-US/firefox/addon/cookie-autodelete/versions' && gio open 'https://addons.mozilla.org/en-US/firefox/addon/ublock-origin/versions' | |
| |
==== Cookie AutoDelete ==== | |
| |
* Clean-up everything | |
* Disable notifications | |
| |
==== uBlock Origin ==== | |
| |
=== Settings === | |
| |
* [x] Prevent WebRTC from leaking local IP addresses | |
| |
=== Filter lists === | |
| |
* [ ] Ads -> EasyList ((uncheck; included in ''Fanboy Ultimate List'')) | |
* [ ] Privacy -> EasyPrivacy ((uncheck; included in ''Fanboy Ultimate List'')) | |
| |
* Multipurpose -> [x] Dan Pollock's hosts file | |
* Multipurpose -> [x] MVPS HOSTS | |
| |
* Custom -> [x] Import | |
| |
=== Custom 3rd-party filters === | |
| |
* Last updated: 2023/07/10 | |
| |
<code> | |
https://www.fanboy.co.nz/fanboy-problematic-sites.txt | |
https://www.fanboy.co.nz/r/fanboy-ultimate.txt | |
https://www.fanboy.co.nz/fanboy-antifacebook.txt | |
https://www.fanboy.co.nz/fanboy-cookiemonster_ubo.txt | |
https://www.fanboy.co.nz/enhancedstats.txt</code> | |
| |
===== Testing Sites ===== | |
| |
* https://www.youtube.com/html5 | |
* https://ipx.ac | |
* https://decentraleyes.org/test/ | |
* https://panopticlick.eff.org/ | |
* https://browserleaks.com/ | |
* https://speedof.me/ | |
* https://www.cloudflare.com/ssl/encrypted-sni/ | |
* https://1.1.1.1/help | |
| |