We are still actively working on the spam issue.

Difference between revisions of "Firefox"

From InstallGentoo Wiki
Jump to: navigation, search
m (Customisability: - changes status of tree style tabs)
m (added ffprofile, fixed some typos)
(43 intermediate revisions by 13 users not shown)
Line 1: Line 1:
{{note|try to keep this page up-to-date by updating the status of the extensions and patches.}}
+
{{cleanup|Add-ons section really outdated}}
  
 +
{{note| Try to keep this page up-to-date by updating the status of the extensions and patches.}}
 
{{Browser Infobox
 
{{Browser Infobox
 
|name= Mozilla Firefox
 
|name= Mozilla Firefox
|image= [[file:Firefox.png|64px]]
+
|image= [[file:NuFox.png|64px]]
 
|type= Free
 
|type= Free
 
|layout= Gecko
 
|layout= Gecko
 +
|website= [https://www.mozilla.org/firefox/ https://www.mozilla.org/en-US/firefox/]
 
}}
 
}}
 
+
'''Firefox''' is a free and open source [[browsers|web browser]] developed and maintained by the Mozilla Corporation which is owned by the Mozilla Foundation. It is known for its high degree of customizability through add-ons and its adherence to Web standards.
'''Firefox''' is a free and open source [[browsers|web browser]] developed and maintained by the Mozilla Foundation. It is known for its high degree of customisability through add-ons and its adherence to Web standards.
 
  
 
== Official branches ==
 
== Official branches ==
  
''Unfortunately, [https://support.mozilla.org/kb/firefox-36-no-longer-supported the v3.6.x series of Firefox is now unsupported]. It will no longer receive security or stability updates.''
+
''Unfortunately, [https://support.mozilla.org/kb/firefox-36-no-longer-supported the v3.6.x series of Firefox is now unsupported]. It will no longer receive security or stability updates. Please use Pale Moon for those olde-skool aesthetics.''
  
Mozilla offers six officially compiled branches or channels of Firefox. These are [[ESR (Software)|ESR]], Stable, Beta, Aurora, Nightly, and UX.
+
Mozilla offers five officially compiled branches or channels of Firefox. These are Release, Beta, Dev Edition, Nightly, and [[ESR (Software)|ESR]].
  
*The [https://www.mozilla.org/firefox/organizations/all/ Extended support release or ESR] branch of Firefox is geared towards large organisations who require long-term support for mass deployments, but it is can also be a good option for the technologically illiterate. It remains static for approximately one year after a major release, receiving new code only in the form of security and stability patches.
+
*The [https://www.mozilla.org/firefox/ Release] branch of Firefox is geared towards the the average home or office Web user. It receives a major update every four weeks if all goes according to plan, but security and stability patches are issued as needed in the meantime.
  
*The [https://www.getfirefox.com/ Stable] branch of Firefox is geared towards the the average home or office Web user. It receives a major update every six weeks if all goes according to plan, but security and stability patches are issued as needed in the meantime.
+
*The [https://www.mozilla.org/firefox/beta/ Beta] branch of Firefox is geared towards home users who want to try new features a few weeks early while contributing to Firefox development. It is generally quite stable with most remaining bugs being specific to certain configurations or drivers. In the course of a typical six week beta run, there are between seven and thirteen builds released.
  
*The [https://www.mozilla.org/firefox/channel/#beta Beta] branch of Firefox is geared towards home users who want to try new features a few weeks early while contributing to Firefox development. It is generally quite stable with most remaining bugs being specific to certain configurations or drivers. In the course of a typical six week beta run, there are between seven and thirteen builds released.
+
*The [https://www.mozilla.org/firefox/developer/ Developer Edition] or alpha branch of Firefox replaced the Aurora branch and is geared towards Web developers and includes extra development tools and a special theme. Some instability and bugs should be expected.
  
*The [https://www.mozilla.org/firefox/channel/#aurora Aurora] or alpha branch is intended for testing and debugging purposes, but it is more suitable for general use than Nightly. Naturally, some instability and a few bugs are to be expected.
+
*The [https://www.mozilla.org/firefox/nightly/ Nightly] or pre-alpha branch is intended for testing and debugging purposes. It represents the bleeding edge of Firefox development, so the likelihood of encountering instability, security vulnerabilities, and major bugs is high. As the name implies, Nightly typically receives patches on a day-to-day basis and new features as soon as they become ready.
  
*The [https://nightly.mozilla.org/ Nightly] or pre-alpha branch is intended for testing and debugging purposes. It represents the bleeding edge of Firefox development, so the likelihood of encountering instability, security vulnerabilities, and major bugs is high. As the name implies, Nightly typically receives patches on a day-to-day basis and new features as soon as they become ready. Oddly, it is the only official branch in which native 64-bit builds for Windows are offered.
+
*The [https://www.mozilla.org/firefox/organizations/ Extended support release or ESR] branch of Firefox is geared towards large organizations who require long-term support for mass deployments, but it is can also be a good option for the technologically illiterate. It remains static for approximately one year after a major release, receiving new code only in the form of security and stability patches.
 
 
*The [https://people.mozilla.org/~jwein/ux-nightly/ UX (Nightly)] branch is a clone of the Nightly branch used to début and test user interface changes like the Australis project before they are added to Nightly. At the time of this writing, UX builds appear to be identical to standard Nightly builds.
 
  
 
Regarding experimental features, Mozilla gives you the option to install an extension that allows you to enable them before they come enabled out of the box, if they ever make it to the stable branch. For more information, go to [https://testpilot.firefox.com/ testpilot.com].
 
Regarding experimental features, Mozilla gives you the option to install an extension that allows you to enable them before they come enabled out of the box, if they ever make it to the stable branch. For more information, go to [https://testpilot.firefox.com/ testpilot.com].
Line 38: Line 37:
 
*[http://packages.debian.org/wheezy/iceweasel Iceweasel] is a fork maintained by the Debian Project. It is designed to allow the project to back-port as it pleased without running afoul of Mozilla's trademarks.
 
*[http://packages.debian.org/wheezy/iceweasel Iceweasel] is a fork maintained by the Debian Project. It is designed to allow the project to back-port as it pleased without running afoul of Mozilla's trademarks.
  
*[http://www.palemoon.org/ Pale Moon] is a fork of Firefox [[Extended Support Release|ESR]] dedicated to providing an optimised Firefox with the classic user interface layout of the v3.6.x series. Pale Moon is offered in both [http://www.palemoon.org/download-ng.shtml 32-bit] and [http://www.palemoon.org/palemoon-x64.shtml 64-bit] builds, and uses a fork of the Gecko rendering engine called Goanna. For a complete list of the differences between Pale Moon and Firefox, see [http://www.palemoon.org/technical.shtml#Firefox_Differences this page]. (Note: it's made by a [[furry]] who has a Fursona named Moonchild. He has art and has written Furry stories. His Furry website is [http://www.moonchildproductions.info/ here].)
+
*[http://www.palemoon.org/ Pale Moon] is a fork of Firefox [[Extended Support Release|ESR]] dedicated to providing an optimized Firefox with the classic user interface layout of the v3.6.x series. Pale Moon is offered in both [http://www.palemoon.org/download-ng.shtml 32-bit] and [http://www.palemoon.org/palemoon-x64.shtml 64-bit] builds, and uses a fork of the Gecko rendering engine called Goanna. For a complete list of the differences between Pale Moon and Firefox, see [http://www.palemoon.org/technical.shtml#Firefox_Differences this page]. Note: it's made by a [[furry]] who has a fursona named Moonchild. He has art and has written furry stories. His furry website is [http://www.moonchildproductions.info/ here].
 +
 
 +
*The [https://www.torproject.org/projects/torbrowser.html.en Tor Browser Bundle] is a package designed specifically to visit Onion sites and to browse the Internet through the Tor network.
 +
 
 +
*[https://github.com/intika/Librefox Librefox] Modern FF fork enhanced for privacy. Discontinued.
 +
 
 +
*[https://librewolf-community.gitlab.io/ LibreWolf] Fork of Librefox.
 +
 
 +
*[https://www.waterfox.net/ Waterfox] Maintains support for legacy addons and aims to be fast.
  
*The [https://www.torproject.org/projects/torbrowser.html.en Tor Browser Bundle] is a package designed specifically for the purposes of visiting Onion sites and browsing the Internet through the Tor network.
+
== Add-Ons ==
  
*[https://www.waterfoxproject.org/ Waterfox] is a highly optimised build of Firefox for 64-bit systems running Windows. Unfortunately, it is rarely updated.
+
=== Controversy and WebExtension Add-onpocalypse ===
  
== Tags ==
+
In 2014, Brendan Eich the then CEO of the Mozilla '''Corporation''' (the for-profit entity that develops the Firefox browser), had been found to have donated $1000 to a proposition around banning same-sex marriage in California. Some employees of the Mozilla '''Foundation''' (the non-profit entity that decides the changes around the Firefox browser, which ironically Brendan Eich helped create) were upset with this, and did what they normally do; blog posts, activism and calling for Brendan to resign. That same year, Brendan did resign, but not without saying that he stands by his donation to ban same-sex marriage.
[[File:Active.png|x14px]] — Development process is very active.
 
  
[[File:Slow.png|x14px]] — Development process is slow. Software is mature enough to warrant less frequent updates, unless it comes with a "buggy" tag.
+
Since then, Firefox has been heading downhill fast. Current development of Firefox involves pushing it to become as much of a Google Chrome clone as possible. Performance has gotten worse, bloat has been added, the theme has become closer to chrome and the ability to rice it to autistic levels has been threatened. Trackers have been added, including screen recording software and for some reason it now also has its own instant message chat built into the browser. However probably the worst of them all was the WebExtension Add-onpocalypse.
  
[[File:Stalled.png|x14px]] — Software isn't updated regularly. Mostly fine unless it comes with a buggy tag.
+
The drop of support for legacy add-ons made every single add-on that had been developed, incomparable with Firefox. This was obviously controversial, but it wasn't enough. They also dropped every legacy add-on's page, so even if you made a way to support legacy add-ons, you wouldn't be able to find any.
  
[[File:Buggy.png|x14px]] — Comes with a significant amount of bugs, possibly due to slow, or non-existent development.
+
Some browsers such as Pale moon, Waterfox and SeaMonkey, however, preserve the support for these legacy add-ons. Luckily, the Pale Moon and Waterfox Team have a [https://github.com/JustOff/ca-archive working archive] of (almost) all the legacy add-ons, which you can install and use as an [https://github.com/JustOff/ca-archive/releases add-on] in the mentioned browsers.
  
[[File:E10s.png|x14px]] — Compatible with e10s. Lacking this tag means it is either incompatible with it, or that the extension [https://developer.mozilla.org/en-US/Add-ons/Working_with_multiprocess_Firefox has been] [https://developer.mozilla.org/en-US/docs/Glossary/Shim shimmed]. If it lacks an e10s tag, look in the [https://www.arewee10syet.com/ database] for your extension.
+
As for what Brendan Eich is doing; he decided he wasn't done with the browser game, and is now the CEO of a company that is developing a browser called [https://brave.com/ Brave], which is basically just a browser with crypto attached to it.
  
== Notable add-ons ==
+
=== Tags ===
 +
[[File:LegacyTag.png|x14px]] — Is a legacy add-on, and can only be used on a Firefox fork that supports legacy add-ons (Waterfox, Pale Moon, SeaMonkey). Can be downloaded using the [https://github.com/JustOff/ca-archive Classic Add-ons Archive].
 +
 
 +
[[File:WebExt.png|x14px]] — Is a WebExtension Add-on. Can be run on any modern Firefox or Firefox fork (Including Waterfox, Pale Moon and SeaMonkey).
 +
 
 +
=== Notable add-ons ===
 
{{note|some of these listed add-ons may overlap slightly. They are both listed for modularity. Some people like one thing, and some like the other or a third. Pick your poison.}}
 
{{note|some of these listed add-ons may overlap slightly. They are both listed for modularity. Some people like one thing, and some like the other or a third. Pick your poison.}}
=== Adblocking, privacy, and security ===
+
{{warning|With Firefox having a new addon engine with Version 55 and above, many of these addons no longer work!}}
 +
==== Adblocking, privacy, and security ====
  
[[File:Betterprivacy.png|48px]] '''BetterPrivacy''' [[File:Stalled.png|x14px]]
+
[[File:Betterprivacy.png|48px]] '''BetterPrivacy''' [[File:LegacyTag.png|x14px]]
  
[https://addons.mozilla.org/en-US/firefox/addon/betterprivacy/ BetterPrivacy] manages and auto-destroys flash cookies, aka super cookies.
+
[https://addons.mozilla.org/en-US/firefox/addon/betterprivacy/ BetterPrivacy] manages and auto-destroys '''flash''' cookies, aka super cookies. '''If you don't have flash''' (which is likely unless you love newgrounds or /f/) '''then you have no need for this addon'''.
  
[[File:Blender.png|48px]] '''Blender''' [[File:Stalled.png|x14px]]
+
[[File:Blender.png|48px]] '''Blender''' [[File:LegacyTag.png|x14px]]
  
 
[https://addons.mozilla.org/en-US/firefox/addon/blender-1/ Blender] automatically spoofs your user agent string to another popular one.
 
[https://addons.mozilla.org/en-US/firefox/addon/blender-1/ Blender] automatically spoofs your user agent string to another popular one.
  
[[File:Certificatepatrol.png|48px]] '''Certificate Patrol''' [[File:Stalled.png|x14px]] [[File:Buggy.png|50px]]
+
[[File:Certificatepatrol.png|48px]] '''Certificate Patrol''' [[File:LegacyTag.png|x14px]] [[File:WebExt.png|x14px]]
 +
 
 +
[https://addons.thunderbird.net/en-us/firefox/addon/certificate-patrol/?src=cb-dl-mostpopular Certificate Patrol] discovers when certificates have changed.
 +
 
 +
[[File:Cookiemonster.png|48px]] '''Cookie Monster''' [[File:LegacyTag.png|x14px]]
  
[https://addons.mozilla.org/en-US/firefox/addon/certificate-patrol/ Certificate Patrol] discovers when certificates have changed.
+
[https://addons.mozilla.org/en-US/firefox/addon/cookie-monster/ Cookie Monster] manages cookies permissions. Its function can be replaced by uMatrix.
  
[[File:Cookiemonster.png|48px]] '''Cookie Monster''' [[File:Stalled.png|x14px]] [[File:E10s.png|x14px]]
+
'''Cookie Autodelete''' [[File:WebExt.png|x14px]]
  
[https://addons.mozilla.org/en-US/firefox/addon/cookie-monster/ Cookie Monster] manages cookies permissions.
+
[https://addons.mozilla.org/en-US/firefox/addon/cookie-autodelete/ Cookie Autodelete] is a webExt replacement for Cookie Monster.
  
[[File:Decentraleyes.png|48px]] '''Decentraleyes''' [[File:Slow.png|x14px]] [[File:E10s.png|x14px]]
+
[[File:Decentraleyes.png|48px]] '''Decentraleyes''' [[File:LegacyTag.png|x14px]] [[File:WebExt.png|x14px]]
  
 
[https://addons.mozilla.org/en-US/firefox/addon/decentraleyes/ Decentraleyes] loads common CDN resources locally, minimizing your exposure to third-party servers and slightly decreasing page load times, as well as the amount of data transferred.
 
[https://addons.mozilla.org/en-US/firefox/addon/decentraleyes/ Decentraleyes] loads common CDN resources locally, minimizing your exposure to third-party servers and slightly decreasing page load times, as well as the amount of data transferred.
  
[[File:Httpseverywhere.png|48px]] '''HTTPS-Everywhere''' [[File:Active.png|x14px]] [[File:E10s.png|x14px]]
+
[[File:Httpseverywhere.png|48px]] '''HTTPS-Everywhere''' [[File:LegacyTag.png|x14px]] [[File:WebExt.png|x14px]]
  
 
[https://addons.mozilla.org/en-US/firefox/addon/https-everywhere/ HTTPS Everywhere] encrypts your communications with many major websites, making your browsing more secure. If you can only install a couple of add-ons, this should be one of them.
 
[https://addons.mozilla.org/en-US/firefox/addon/https-everywhere/ HTTPS Everywhere] encrypts your communications with many major websites, making your browsing more secure. If you can only install a couple of add-ons, this should be one of them.
  
[[File:Httpsfinder.png|48px]] '''HTTPS Finder''' [[File:Stalled.png|x14px]] [[File:Buggy.png|50px]]
+
[[File:Httpsfinder.png|48px]] '''HTTPS Finder''' [[File:LegacyTag.png|x14px]]
  
 
[https://code.google.com/p/https-finder/downloads/list HTTPS Finder] detects available https and creates HTTPS Everywhere rules.
 
[https://code.google.com/p/https-finder/downloads/list HTTPS Finder] detects available https and creates HTTPS Everywhere rules.
  
[[File:Noscript.png|48px]] '''NoScript''' [[File:Active.png|x14px]]
+
[[File:Noscript.png|48px]] '''NoScript''' [[File:LegacyTag.png|x14px]] [[File:WebExt.png|x14px]]
  
 
[https://addons.mozilla.org/en-US/firefox/addon/noscript/ NoScript] allows JavaScript, Java and other executable content to run only from trusted domains of your choice.
 
[https://addons.mozilla.org/en-US/firefox/addon/noscript/ NoScript] allows JavaScript, Java and other executable content to run only from trusted domains of your choice.
  
[[File:RAS.png|48px]] '''Random Agent Spoofer''' [[File:Stalled.png|x14px]]
+
[[File:RAS.png|48px]] '''Random Agent Spoofer''' [[File:LegacyTag.png|x14px]]
 +
 
 +
[https://github.com/dillbyrne/random-agent-spoofer Random Agent Spoofer] spoofs your user-agent string to any value of your choice, with the option to change to popular agent strings randomly. It also includes the ability to spoof various HTTP Referer request values, as well as multiple about:config tweaks.
  
[https://addons.mozilla.org/en-US/firefox/addon/random-agent-spoofer/ Random Agent Spoofer] spoofs your user-agent string to any value of your choice, with the option to change to popular agent strings randomly. It also includes the ability to spoof various HTTP Referer request values, as well as multiple about:config tweaks.
+
'''Chameleon''' [[File:WebExt.png|x14px]]
  
[[File:Refcontrol.png|48px]] '''RefControl''' [[File:Stalled.png|x14px]]
+
[https://addons.mozilla.org/en-US/firefox/addon/chameleon-ext/ Random Agent Spoofer] is a potential webExt replacement for Random Agent Spoofer
 +
 
 +
[[File:Refcontrol.png|48px]] '''RefControl''' [[File:LegacyTag.png|x14px]]
  
 
[https://addons.mozilla.org/en-US/firefox/addon/refcontrol/ RefControl] controls what gets sent as the HTTP Referer on a per-site basis.
 
[https://addons.mozilla.org/en-US/firefox/addon/refcontrol/ RefControl] controls what gets sent as the HTTP Referer on a per-site basis.
  
[[File:Selfdestructingcookies.png|48px]] '''Self-Destructing Cookies''' [[File:Stalled.png|x14px]]
+
'''Referer Controler''' [[File:WebExt.png|x14px]]
  
[https://addons.mozilla.org/en-US/firefox/addon/self-destructing-cookies/ Self-Destructing Cookies] auto-deletes cookies on tab close.
+
[https://addons.mozilla.org/en-US/firefox/addon/referercontrol/ Referer Controler] webExt replacement for RefControl.
  
[[File:Priv8.png|48px]] '''Priv8''' [[File:Slow.png|x14px]] [[File:E10s.png|x14px]]
+
[[File:Priv8.png|48px]] '''Priv8''' [[File:LegacyTag.png|x14px]]
  
 
[https://addons.mozilla.org/en-US/firefox/addon/priv8/ Priv8] is a Firefox addon that uses part of the security model of Firefox OS to create sandboxed tabs and manage them. Updated infrequently and might be incompatible with certain addons.
 
[https://addons.mozilla.org/en-US/firefox/addon/priv8/ Priv8] is a Firefox addon that uses part of the security model of Firefox OS to create sandboxed tabs and manage them. Updated infrequently and might be incompatible with certain addons.
  
[[File:Sessionmanager.png|48px]] '''Session Manager''' [[File:Active.png|x14px]]
+
'''Multi Account Containers''' [[File:WebExt.png|x14px]]
  
[https://addons.mozilla.org/en-US/firefox/addon/session-manager/ SessionManager], along with many other features allows you to encrypt your Firefox session.
+
[https://addons.mozilla.org/en-US/firefox/addon/multi-account-containers/ Multi Account Containers] successor to Priv8.
  
[[File:uBlock.png|48px]] '''uBlock Origin''' [[File:Active.png|x14px]] [[File:E10s.png|x14px]]
+
[[File:uBlock.png|48px]] '''uBlock Origin''' [[File:LegacyTag.png|x14px]] [[File:WebExt.png|x14px]]
  
 
[https://addons.mozilla.org/en-US/firefox/addon/ublock-origin/ uBlock Origin] is a lightweight and low-resource adblocker. Has many filter lists built in, with EasyList, Peter Lowe’s Ad server list, EasyPrivacy, and Malware domains enabled by default. Can fully replace NoScript in advanced mode and outperform it, whilst offering more features.
 
[https://addons.mozilla.org/en-US/firefox/addon/ublock-origin/ uBlock Origin] is a lightweight and low-resource adblocker. Has many filter lists built in, with EasyList, Peter Lowe’s Ad server list, EasyPrivacy, and Malware domains enabled by default. Can fully replace NoScript in advanced mode and outperform it, whilst offering more features.
 
*Not to be confused with 'uBlock', an EXTREMELY outdated fork with some very slight changes to the UI.
 
*Not to be confused with 'uBlock', an EXTREMELY outdated fork with some very slight changes to the UI.
 
*If you feel bad about blocking advertisements, make a deal with yourself: you'll stop blocking ads when major international internet companies stop [http://uk.businessinsider.com/yahoos-advertising-network-is-being-targeted-by-hackers-malwarebytes-says-2015-8?r=US&IR=T serving]  [https://blog.malwarebytes.org/malvertising-2/2015/08/large-malvertising-campaign-takes-on-yahoo/ malware].
 
*If you feel bad about blocking advertisements, make a deal with yourself: you'll stop blocking ads when major international internet companies stop [http://uk.businessinsider.com/yahoos-advertising-network-is-being-targeted-by-hackers-malwarebytes-says-2015-8?r=US&IR=T serving]  [https://blog.malwarebytes.org/malvertising-2/2015/08/large-malvertising-campaign-takes-on-yahoo/ malware].
 +
*Supports the WebExtensions API.
  
[[File:uMatrix.png|48px]] '''uMatrix''' [[File:Slow.png|x14px]] [[File:E10s.png|x14px]]
+
[[File:uMatrix.png|48px]] '''uMatrix''' [[File:LegacyTag.png|x14px]] [[File:WebExt.png|x14px]]
  
 
[[File:matrix.png|thumb|uMatrix's fine-grained control]]
 
[[File:matrix.png|thumb|uMatrix's fine-grained control]]
Line 124: Line 145:
 
*<sup>1</sup> - Cannot replace NoScript's surrogate script functionality (which is very, VERY rarely used anyway). uBlock has a similar [https://github.com/gorhill/uBlock/wiki/Experimental-filters feature called redirect], whose purpose is to redirect blocked resources to locally-hosted, neutered contents.
 
*<sup>1</sup> - Cannot replace NoScript's surrogate script functionality (which is very, VERY rarely used anyway). uBlock has a similar [https://github.com/gorhill/uBlock/wiki/Experimental-filters feature called redirect], whose purpose is to redirect blocked resources to locally-hosted, neutered contents.
  
=== Customisability ===
+
==== Customisability ====
[[File:Classicthemerestorer.png|48px]] '''Classic Theme Restorer''' [[File:Active.png|x14px]] [[File:E10s.png|x14px]]
 
  
[https://addons.mozilla.org/en-US/firefox/addon/classicthemerestorer/ Classic Theme Restorer] offers extensive GUI options to make Firefox look like old Firefox.
+
[[File:Tabgroups.png|48px]] '''Tab Groups''' [[File:LegacyTag.png|x14px]]
  
[[File:Tabgroups.png|48px]] '''Tab Groups''' [[File:Slow.png|x14px]] [[File:E10s.png|x14px]]
+
[https://addons.mozilla.org/en-US/firefox/addon/tab-groups-panorama/ Tab Groups] allows you to create tab groups, a feature that was once part of Firefox.
  
[https://addons.mozilla.org/en-US/firefox/addon/tab-groups-panorama/ Tab Groups] allows you to create tab groups, a feature that was once part of Firefox.
+
'''Panorama View''' [[File:WebExt.png|x14px]]
 +
 
 +
[https://addons.mozilla.org/en-US/firefox/addon/panorama-view/ Panorama View] is a WebExt replacement for tab groups
  
[[File:Treestyletabs.png|48px]] '''Tree Style Tabs''' [[File:Slow.png|x14px]]
+
[[File:Treestyletabs.png|48px]] '''Tree Style Tabs''' [[File:LegacyTag.png|x14px]] [[File:WebExt.png|x14px]]
  
 
[https://addons.mozilla.org/en-US/firefox/addon/tree-style-tab/ Tree Style Tabs] shows tabs like a tree.
 
[https://addons.mozilla.org/en-US/firefox/addon/tree-style-tab/ Tree Style Tabs] shows tabs like a tree.
  
=== Dev tools ===
+
'''New Tab Homepage''' [[File:WebExt.png|x14px]]
 +
 
 +
[https://addons.mozilla.org/en-US/firefox/addon/new-tab-homepage/ New Tab Homepage] will load your homepage whenever you open a new tab.
  
[[File:Livehttpheaders.png|48px]] '''Live HTTP Headers''' [[File:Stalled.png|x14px]] [[File:E10s.png|x14px]]
+
'''Stylus''' [[File:WebExt.png|x14px]]
  
[https://addons.mozilla.org/en-US/firefox/addon/live-http-headers/ Live HTTP Headers] lets you view HTTP headers, and includes a generator and a filter.
+
[https://addons.mozilla.org/en-US/firefox/addon/styl-us/ Stylus] lets you customise websites by setting custom CSS for them. It is a replacement for the previously recommended add-on Stylish, which was brought out by a company and is now [https://addons.mozilla.org/en-US/firefox/addon/styl-us/ spyware that steals browsing history] and more.
  
=== Usability ===
+
'''OneLiner''' [[File:LegacyTag.png|x14px]]
  
[[File:FxIF.png|48px]] '''FxIF''' [[File:Stalled.png|x14px]] [[File:E10s.png|x14px]]
+
[https://github.com/khuedoan98/one-line-firefox OneLiner] (also exists as "Liner") puts all the different bars at the top of the page, into a single bar (url, tabs, etc all on the same line). This can also be achieved with css.
  
[https://addons.mozilla.org/en-US/firefox/addon/fxif/ FxIF] is a tool to view EXIF data in image properties.
+
==== Usability ====
  
[[File:Greasemonkey.png|48px]] '''Greasemonkey''' [[File:Slow.png|x14px]]
+
[[File:FxIF.png|48px]] '''WxIF''' [[File:WebExt.png|x14px]]
 +
 
 +
[https://addons.mozilla.org/en-US/firefox/addon/wxif/ WxIF] is a WebExt port of the legacy add-on FxIF. A tool to view EXIF data in image properties.
 +
 
 +
[[File:Greasemonkey.png|48px]] '''Greasemonkey''' [[File:WebExt.png|x14px]]
  
 
[https://addons.mozilla.org/firefox/addon/greasemonkey/ Greasemonkey] manages [[Browsers#Recommended_User_Scripts | Userscripts]].
 
[https://addons.mozilla.org/firefox/addon/greasemonkey/ Greasemonkey] manages [[Browsers#Recommended_User_Scripts | Userscripts]].
  
*The [https://addons.mozilla.org/firefox/addon/scriptish/ Scriptish] fork of this add-on that was once popular on /g/ is no longer recommended.
+
[[File:ViolentMonkey.png|48px]] '''Violentmonkey''' [[File:WebExt.png|x14px]]
  
[[File:Redirector.png|48px]] '''Redirector''' [[File:Slow.png|x14px]] [[File:E10s.png|x14px]]
+
[https://addons.mozilla.org/firefox/addon/violentmonkey/ Violentmonkey] manages [[Browsers#Recommended_User_Scripts | Userscripts]] as well as Greasemonkey.
 +
 
 +
[[File:Tampermonkey.png|48px]] '''Tampermonkey''' [[File:WebExt.png|x14px]]
 +
 
 +
[https://addons.mozilla.org/firefox/addon/tampermonkey/ Tampermonkey] manages [[Browsers#Recommended_User_Scripts | Userscripts]] as well as Greasemonkey and Violentmonkey. The downside is that it is not Free Software.
 +
 
 +
[[File:Redirector.png|48px]] '''Redirector''' [[File:WebExt.png|x14px]]
  
 
[https://addons.mozilla.org/en-us/firefox/addon/redirector/ Redirector] automatically redirects to user-defined urls on a per-hyperlink basis.
 
[https://addons.mozilla.org/en-us/firefox/addon/redirector/ Redirector] automatically redirects to user-defined urls on a per-hyperlink basis.
  
[[File:Singingstallman.png|48px]] '''Singing Stallman''' [[File:Stalled.png|x14px]]
+
[[File:Vimfx.png|48px]] '''VimFx''' [[File:LegacyTag.png|x14px]]
  
[https://addons.mozilla.org/en-US/firefox/addon/singing-stallman/ Singing Stallman], the Singing Stallman icon bides its time in the toolbar, waiting to be invoked in your time of need.
+
[https://addons.mozilla.org/en-US/firefox/addon/vimfx/ VimFx] offers [[Vim]] bindings without changes in the UI.
  
[[File:Vimfx.png|48px]] '''VimFx''' [[File:Active.png|x14px]] [[File:E10s.png|x14px]]
+
'''Vimium-FF''' [[File:WebExt.png|x14px]]
  
[https://addons.mozilla.org/en-US/firefox/addon/vimfx/ VimFx] offers [[Vim]] bindings without changes in the UI.
+
[https://addons.mozilla.org/en-US/firefox/addon/vimium-ff/ Vimium-FF] offers vim bindings via WebExt. However all WebExt extensions offering vim bindings are limited and will not work as well as they should (you will still need the mouse), due to how WebExt/nu-firefox works.
  
[[File:Youtubecenter.png|48px]] '''YouTube Center''' [[File:Slow.png|x14px]] [[File:E10s.png|x14px]]
+
'''Other Vim Binding Options''' [[File:LegacyTag.png|x14px]] [[File:WebExt.png|x14px]]
  
[https://addons.mozilla.org/en-us/firefox/addon/youtube-center/ YouTube Center] enhances YouTube. It is recommended that you use the [https://github.com/YePpHa/YouTubeCenter/wiki/Developer-Version developer version], as per their wiki.
+
There is a [https://vim.fandom.com/wiki/Vim_key_bindings_for_web_browsers list] on the vim wiki that goes over all the vim extensions/add-ons.
  
 
== Notable patches ==
 
== Notable patches ==
Line 175: Line 209:
 
Bugs are explicitly stated.
 
Bugs are explicitly stated.
  
=== [https://github.com/perfect7gentleman/pg_overlay/tree/master/www-client/firefox/files/kde OpenSUSE-KDE] [[File:Active.png|x14px]] ===
+
=== [https://github.com/perfect7gentleman/pg_overlay/tree/master/www-client/firefox/files/kde-opensuse OpenSUSE-KDE] [[File:Active.png|x14px]] ===
 
This patchset makes trivial changes to Firefox to improve its aesthetic and functionality.
 
This patchset makes trivial changes to Firefox to improve its aesthetic and functionality.
*Adds KDE integration to Firefox;
+
*Adds KDE integration to Firefox.
*Changes your {{ic|general.useragent.locale}} to {{ic|chrome://global/locale/intl.properties}};
+
*Changes your {{ic|general.useragent.locale}} to {{ic|chrome://global/locale/intl.properties}}.
 
*Adds higher resolution icons.
 
*Adds higher resolution icons.
  
=== [https://github.com/perfect7gentleman/pg_overlay/blob/master/www-client/firefox/files/pgo.patch PGO] [[File:Stalled.png|x14px]] ===
+
=== [https://github.com/perfect7gentleman/pg_overlay/blob/master/www-client/firefox/files/firefox-48.0-pgo.patch PGO] [[File:Stalled.png|x14px]] ===
 
This simple patch enables Profile-Guided Optimization techniques for the [[GCC]] build. PGO builds consist of two passes: the first one builds instrumented binaries, and the second one to rebuild optimized binaries. It might result in a [https://wiki.ubuntu.com/MozillaTeam/PGOBenchmarks slight performance increase of roughly ~5%], for double the compilation time.
 
This simple patch enables Profile-Guided Optimization techniques for the [[GCC]] build. PGO builds consist of two passes: the first one builds instrumented binaries, and the second one to rebuild optimized binaries. It might result in a [https://wiki.ubuntu.com/MozillaTeam/PGOBenchmarks slight performance increase of roughly ~5%], for double the compilation time.
  
Line 192: Line 226:
 
=== [https://aur.archlinux.org/cgit/aur.git/tree/?h=firefox-esr-privacy Privacy] [[File:Active.png|x14px]] ===
 
=== [https://aur.archlinux.org/cgit/aur.git/tree/?h=firefox-esr-privacy Privacy] [[File:Active.png|x14px]] ===
 
This patchset aims to disable certain Firefox 'features' that might undermine one's attempt at staying anonymous. In a way, it debloats it.
 
This patchset aims to disable certain Firefox 'features' that might undermine one's attempt at staying anonymous. In a way, it debloats it.
*Certain connections to Mozilla are removed;
+
*Certain connections to Mozilla are removed.
*Disables: telemetry, location.services, sponsored tiles, Pocket, Hello, and Reader View;
+
*Disables: telemetry, location.services, sponsored tiles, Pocket, Hello, and Reader View.
*Applies certain privacy conscious settings to about:config by default;
+
*Applies certain privacy conscious settings to about:config by default.
 
*Enables tracking protection by default (disable if you use uBlock and/or uMatrix).
 
*Enables tracking protection by default (disable if you use uBlock and/or uMatrix).
  
== Tweaking ==
+
=== DNS over HTTPS and Encrytped SNI ===
 +
 
 +
[[File:ESNI.png|thumb|How ESNI makes the internet opaque. Website support may vary.]]
 +
 
 +
Newer Firefox versions support DNS over HTTPS and Encrypted SNI. For an introduction to ESNI read [https://www.eff.org/deeplinks/2018/09/esni-privacy-protecting-upgrade-https this article from the EFF].
 +
 
 +
Upsides of DoH: Your ISP knows less about you.
 +
 
 +
Downsides of DoH: Your DNS resolver knows a lot more about you including your browser and operating system, and can set cookies. (Bet you didn't know).
 +
 
 +
To enable DoH:
 +
* Set {{ic|network.trr.mode}} to {{ic|2}}.
 +
 
 +
* Set {{ic|network.trr.uri}} to a DoH compliant server such as {{ic|https://mozilla.cloudflare-dns.com/dns-query}}.
 +
 
 +
DNS over HTTPS is an ESNI prerequisite.
 +
 
 +
For ESNI set {{ic|network.security.esni.enabled}} to {{ic|true}}.
 +
 
 +
[[https://www.cloudflare.com/ssl/encrypted-sni/ Test your configuration courtesy of CloudFlare]]
 +
 
 +
== Ricing ==
 +
 
 +
You can edit Firefox's appearance with [[CSS]] (Cascading Style Sheets). To be more general, you can alter ANY web page with CSS. This is achieved with the usage of userstyles. To use and take complete advantage of them, you need a userstyle manager. [https://addons.mozilla.org/en-US/firefox/addon/stylish/ Stylish] is the most common.
 +
 
 +
The Stylish button that appears after you install it is useful. For instance, to write a userstyle for Firefox, you need to go to:
 +
 
 +
    chrome://browser/content/browser.xul
 +
 
 +
And select Write new style -> For this URL, and it'll have a template set up.
 +
 
 +
The most useful feature in writing userstyles is the Inspector. You pop it up by pressing Ctrl+Shift+C and it'll let you see what elements you can style on the page.
 +
 
 +
== Config ==
  
Below are options in '''about:config''' worth considering.
+
Below are options in '''about:config''' worth considering. Instead of doing this manually, consider visiting [https://ffprofile.com/ ffprofile] to do this much easier and install extensions as well.
  
* '''dom.storage.enabled''' ''FALSE'' - Disable "client-side session and persistent storage" cookies. (bad for 8ch - the replies hypelinks next to the post number disappears)  
+
* '''dom.storage.enabled''' ''FALSE'' - Disable "client-side session and persistent storage" cookies (bad for 8ch - the replies hyperlinks next to the post number disappears).
 
* '''geo.enabled''' ''FALSE'' - Disable location data.
 
* '''geo.enabled''' ''FALSE'' - Disable location data.
 
* '''general.useragent.override''' - Create as a String value and insert your own useragent.
 
* '''general.useragent.override''' - Create as a String value and insert your own useragent.
** [http://techblog.willshouse.com/2012/01/03/most-common-user-agents/ Dynamically updated list of common user agents]
+
** [http://techblog.willshouse.com/2012/01/03/most-common-user-agents/ Dynamically updated list of common user agents].
 
* '''network.dns.disablePrefetch''' ''TRUE'' - Stop Firefox looking up IP addresses of links of the page you haven't/aren't going to.
 
* '''network.dns.disablePrefetch''' ''TRUE'' - Stop Firefox looking up IP addresses of links of the page you haven't/aren't going to.
 
* '''network.http.pipelining''' ''TRUE'' - Possible speedup for some servers (send multiple files through one connection).
 
* '''network.http.pipelining''' ''TRUE'' - Possible speedup for some servers (send multiple files through one connection).
Line 210: Line 277:
 
* '''network.http.pipelining.ssl''' ''TRUE'' - Pipeline with HTTPS sites.
 
* '''network.http.pipelining.ssl''' ''TRUE'' - Pipeline with HTTPS sites.
 
* '''network.http.proxy.pipelining''' ''TRUE'' - Pipleline through proxy connections.
 
* '''network.http.proxy.pipelining''' ''TRUE'' - Pipleline through proxy connections.
* '''network.http.sendRefererHeader''' - ''0'' = never (bad for 8ch), ''1'' = domain only, ''2'' = full url (default)
+
* '''network.http.sendRefererHeader''' - ''0'' = never (bad for 8ch), ''1'' = domain only, ''2'' = full url (default).
 
* '''network.prefetch-next''' ''FALSE'' - Don't download pages linked to the current page unless we click the link.
 
* '''network.prefetch-next''' ''FALSE'' - Don't download pages linked to the current page unless we click the link.
 
* '''dom.event.clipboardevents.enabled''' ''FALSE'' - Don't allow webpages to mess with the clipboard.
 
* '''dom.event.clipboardevents.enabled''' ''FALSE'' - Don't allow webpages to mess with the clipboard.
Line 217: Line 284:
 
* '''media.autoplay.enabled''' ''FALSE'' - Don't autoplay media.
 
* '''media.autoplay.enabled''' ''FALSE'' - Don't autoplay media.
 
* '''media.peerconnection.enabled''' ''FALSE'' - Important for VPN users. Don't allow p2p downloading of media.
 
* '''media.peerconnection.enabled''' ''FALSE'' - Important for VPN users. Don't allow p2p downloading of media.
* '''pdfjs.disabled''' ''TRUE'' - Don't run javascript within the builtin pdf viewer.
+
* '''pdfjs.disabled''' ''TRUE'' - Don't run javascript within the builtin PDF viewer.
* '''reader.parse-on-load.enabled''' ''FALSE'' - disable "reader view"
+
* '''reader.parse-on-load.enabled''' ''FALSE'' - disable "reader view".
* '''browser.pocket.enabled''' (or '''extensions.pocket.enabled''') ''FALSE''  - disable pocket
+
* '''browser.pocket.enabled''' (or '''extensions.pocket.enabled''') ''FALSE''  - disable pocket.
* '''network.http.speculative-parallel-limit''' ''0'' - don't create connections to links [http://news.slashdot.org/story/15/08/14/2321202/how-to-quash-firefoxs-silent-requests you only hover over]
+
* '''network.http.speculative-parallel-limit''' ''0'' - don't create connections to links [http://news.slashdot.org/story/15/08/14/2321202/how-to-quash-firefoxs-silent-requests you only hover over].
* '''dom.push.connection.enabled''' ''FALSE'' - Disable push notifications (FF44+)
+
* '''dom.push.connection.enabled''' ''FALSE'' - Disable push notifications (FF44+).
* '''dom.push.enabled''' ''FALSE'' - (as above)
+
* '''dom.push.enabled''' ''FALSE'' - (as above).
* '''dom.webnotifications.enabled''' ''FALSE'' - (as above)
+
* '''dom.webnotifications.enabled''' ''FALSE'' - (as above).
* '''dom.webnotifications.serviceworker.enabled''' ''FALSE'' - (as above)
+
* '''dom.webnotifications.serviceworker.enabled''' ''FALSE'' - (as above).
 
* '''loop.enabled''' ''FALSE'' - Disable loop/conversation calling features.
 
* '''loop.enabled''' ''FALSE'' - Disable loop/conversation calling features.
 
* '''browser.urlbar.unifiedcomplete''' ''FALSE'' - Disables the "Search With" popup when typing into the location bar.
 
* '''browser.urlbar.unifiedcomplete''' ''FALSE'' - Disables the "Search With" popup when typing into the location bar.
* '''media.ffmpeg.enabled''' ''FALSE'' (linux only as of FF44) - Disable mp4 playback through ffmpeg, to stop ffmpeg bugs breaking your firefox.
+
* '''media.ffmpeg.enabled''' ''FALSE'' (linux only as of FF44) - Disable mp4 playback through ffmpeg, to stop ffmpeg bugs breaking your Firefox.
 
* '''media.eme.apiVisible''' ''FALSE'' - Stops pages from using a JavaScript library for DRM (Digital Rights Management/
 
* '''media.eme.apiVisible''' ''FALSE'' - Stops pages from using a JavaScript library for DRM (Digital Rights Management/
 
Digital Restrictions Management) in html video.
 
Digital Restrictions Management) in html video.
* '''media.eme.enabled''' ''FALSE'' - (as above)
+
* '''media.eme.enabled''' ''FALSE'' - (as above).
  
 
For a privacy conscious user.js, study https://github.com/crisbrm/user.js for a user.js that comes with minimal breakage, or https://github.com/pyllyukko/user.js for one with even more emphasis on security (occasionally at the cost of functionality, like when you completely disable DOM storage, for instance), and less emphasis on blending in.
 
For a privacy conscious user.js, study https://github.com/crisbrm/user.js for a user.js that comes with minimal breakage, or https://github.com/pyllyukko/user.js for one with even more emphasis on security (occasionally at the cost of functionality, like when you completely disable DOM storage, for instance), and less emphasis on blending in.
Line 241: Line 308:
 
* [http://www.logicalincrements.com/firefox/ Falcon's Firefox /g/uide.]
 
* [http://www.logicalincrements.com/firefox/ Falcon's Firefox /g/uide.]
 
* [https://gnu.org/software/gnuzilla/addons.html A list of free software add-ons compiled by the GNU Project.]
 
* [https://gnu.org/software/gnuzilla/addons.html A list of free software add-ons compiled by the GNU Project.]
 +
* [https://ffprofile.com/ ffprofile] A convenient profile creator. Change about:config and install extensions.
  
 
[[Category:Browser]]
 
[[Category:Browser]]

Revision as of 20:31, 8 May 2021

Cleanup.png
Cleanup.png
CLEANUP CANDIDATE
Relevant discussion may be found on the talk page. Reason: Add-ons section really outdated


Note: Try to keep this page up-to-date by updating the status of the extensions and patches.
Mozilla Firefox
NuFox.png
Type Free
Layout engine Gecko
Website https://www.mozilla.org/en-US/firefox/

Firefox is a free and open source web browser developed and maintained by the Mozilla Corporation which is owned by the Mozilla Foundation. It is known for its high degree of customizability through add-ons and its adherence to Web standards.

Official branches

Unfortunately, the v3.6.x series of Firefox is now unsupported. It will no longer receive security or stability updates. Please use Pale Moon for those olde-skool aesthetics.

Mozilla offers five officially compiled branches or channels of Firefox. These are Release, Beta, Dev Edition, Nightly, and ESR.

  • The Release branch of Firefox is geared towards the the average home or office Web user. It receives a major update every four weeks if all goes according to plan, but security and stability patches are issued as needed in the meantime.
  • The Beta branch of Firefox is geared towards home users who want to try new features a few weeks early while contributing to Firefox development. It is generally quite stable with most remaining bugs being specific to certain configurations or drivers. In the course of a typical six week beta run, there are between seven and thirteen builds released.
  • The Developer Edition or alpha branch of Firefox replaced the Aurora branch and is geared towards Web developers and includes extra development tools and a special theme. Some instability and bugs should be expected.
  • The Nightly or pre-alpha branch is intended for testing and debugging purposes. It represents the bleeding edge of Firefox development, so the likelihood of encountering instability, security vulnerabilities, and major bugs is high. As the name implies, Nightly typically receives patches on a day-to-day basis and new features as soon as they become ready.
  • The Extended support release or ESR branch of Firefox is geared towards large organizations who require long-term support for mass deployments, but it is can also be a good option for the technologically illiterate. It remains static for approximately one year after a major release, receiving new code only in the form of security and stability patches.

Regarding experimental features, Mozilla gives you the option to install an extension that allows you to enable them before they come enabled out of the box, if they ever make it to the stable branch. For more information, go to testpilot.com.

Notable forks

Due to the free and open source nature of its code base, Firefox has given rise to several forks.

  • GNU IceCat is a fork maintained by the GNU Project for those who happen to be of one mind with Richard Stallman. In addition to removing and replacing the copyrighted or trademarked parts of Firefox, the maintainer has added a couple of minor privacy and security features.
  • Iceweasel is a fork maintained by the Debian Project. It is designed to allow the project to back-port as it pleased without running afoul of Mozilla's trademarks.
  • Pale Moon is a fork of Firefox ESR dedicated to providing an optimized Firefox with the classic user interface layout of the v3.6.x series. Pale Moon is offered in both 32-bit and 64-bit builds, and uses a fork of the Gecko rendering engine called Goanna. For a complete list of the differences between Pale Moon and Firefox, see this page. Note: it's made by a furry who has a fursona named Moonchild. He has art and has written furry stories. His furry website is here.
  • The Tor Browser Bundle is a package designed specifically to visit Onion sites and to browse the Internet through the Tor network.
  • Librefox Modern FF fork enhanced for privacy. Discontinued.
  • Waterfox Maintains support for legacy addons and aims to be fast.

Add-Ons

Controversy and WebExtension Add-onpocalypse

In 2014, Brendan Eich the then CEO of the Mozilla Corporation (the for-profit entity that develops the Firefox browser), had been found to have donated $1000 to a proposition around banning same-sex marriage in California. Some employees of the Mozilla Foundation (the non-profit entity that decides the changes around the Firefox browser, which ironically Brendan Eich helped create) were upset with this, and did what they normally do; blog posts, activism and calling for Brendan to resign. That same year, Brendan did resign, but not without saying that he stands by his donation to ban same-sex marriage.

Since then, Firefox has been heading downhill fast. Current development of Firefox involves pushing it to become as much of a Google Chrome clone as possible. Performance has gotten worse, bloat has been added, the theme has become closer to chrome and the ability to rice it to autistic levels has been threatened. Trackers have been added, including screen recording software and for some reason it now also has its own instant message chat built into the browser. However probably the worst of them all was the WebExtension Add-onpocalypse.

The drop of support for legacy add-ons made every single add-on that had been developed, incomparable with Firefox. This was obviously controversial, but it wasn't enough. They also dropped every legacy add-on's page, so even if you made a way to support legacy add-ons, you wouldn't be able to find any.

Some browsers such as Pale moon, Waterfox and SeaMonkey, however, preserve the support for these legacy add-ons. Luckily, the Pale Moon and Waterfox Team have a working archive of (almost) all the legacy add-ons, which you can install and use as an add-on in the mentioned browsers.

As for what Brendan Eich is doing; he decided he wasn't done with the browser game, and is now the CEO of a company that is developing a browser called Brave, which is basically just a browser with crypto attached to it.

Tags

LegacyTag.png — Is a legacy add-on, and can only be used on a Firefox fork that supports legacy add-ons (Waterfox, Pale Moon, SeaMonkey). Can be downloaded using the Classic Add-ons Archive.

WebExt.png — Is a WebExtension Add-on. Can be run on any modern Firefox or Firefox fork (Including Waterfox, Pale Moon and SeaMonkey).

Notable add-ons

Note: some of these listed add-ons may overlap slightly. They are both listed for modularity. Some people like one thing, and some like the other or a third. Pick your poison.
Warning: With Firefox having a new addon engine with Version 55 and above, many of these addons no longer work!

Adblocking, privacy, and security

Betterprivacy.png BetterPrivacy LegacyTag.png

BetterPrivacy manages and auto-destroys flash cookies, aka super cookies. If you don't have flash (which is likely unless you love newgrounds or /f/) then you have no need for this addon.

Blender.png Blender LegacyTag.png

Blender automatically spoofs your user agent string to another popular one.

Certificatepatrol.png Certificate Patrol LegacyTag.png WebExt.png

Certificate Patrol discovers when certificates have changed.

Cookiemonster.png Cookie Monster LegacyTag.png

Cookie Monster manages cookies permissions. Its function can be replaced by uMatrix.

Cookie Autodelete WebExt.png

Cookie Autodelete is a webExt replacement for Cookie Monster.

Decentraleyes.png Decentraleyes LegacyTag.png WebExt.png

Decentraleyes loads common CDN resources locally, minimizing your exposure to third-party servers and slightly decreasing page load times, as well as the amount of data transferred.

Httpseverywhere.png HTTPS-Everywhere LegacyTag.png WebExt.png

HTTPS Everywhere encrypts your communications with many major websites, making your browsing more secure. If you can only install a couple of add-ons, this should be one of them.

Httpsfinder.png HTTPS Finder LegacyTag.png

HTTPS Finder detects available https and creates HTTPS Everywhere rules.

Noscript.png NoScript LegacyTag.png WebExt.png

NoScript allows JavaScript, Java and other executable content to run only from trusted domains of your choice.

RAS.png Random Agent Spoofer LegacyTag.png

Random Agent Spoofer spoofs your user-agent string to any value of your choice, with the option to change to popular agent strings randomly. It also includes the ability to spoof various HTTP Referer request values, as well as multiple about:config tweaks.

Chameleon WebExt.png

Random Agent Spoofer is a potential webExt replacement for Random Agent Spoofer

Refcontrol.png RefControl LegacyTag.png

RefControl controls what gets sent as the HTTP Referer on a per-site basis.

Referer Controler WebExt.png

Referer Controler webExt replacement for RefControl.

Priv8.png Priv8 LegacyTag.png

Priv8 is a Firefox addon that uses part of the security model of Firefox OS to create sandboxed tabs and manage them. Updated infrequently and might be incompatible with certain addons.

Multi Account Containers WebExt.png

Multi Account Containers successor to Priv8.

UBlock.png uBlock Origin LegacyTag.png WebExt.png

uBlock Origin is a lightweight and low-resource adblocker. Has many filter lists built in, with EasyList, Peter Lowe’s Ad server list, EasyPrivacy, and Malware domains enabled by default. Can fully replace NoScript in advanced mode and outperform it, whilst offering more features.

  • Not to be confused with 'uBlock', an EXTREMELY outdated fork with some very slight changes to the UI.
  • If you feel bad about blocking advertisements, make a deal with yourself: you'll stop blocking ads when major international internet companies stop serving malware.
  • Supports the WebExtensions API.

UMatrix.png uMatrix LegacyTag.png WebExt.png

uMatrix's fine-grained control

uMatrix, made by the creator of uBlock, is a high performance matrix-based firewall that supports hosts files, capable of blocking a myriad of objects, complete with per-hostname and global toggles, as well as plenty of privacy oriented features. Able to replace NoScript1, policeman, and request policy continued. Can be used with uBlock.

  • 1 - Cannot replace NoScript's surrogate script functionality (which is very, VERY rarely used anyway). uBlock has a similar feature called redirect, whose purpose is to redirect blocked resources to locally-hosted, neutered contents.

Customisability

Tabgroups.png Tab Groups LegacyTag.png

Tab Groups allows you to create tab groups, a feature that was once part of Firefox.

Panorama View WebExt.png

Panorama View is a WebExt replacement for tab groups

Treestyletabs.png Tree Style Tabs LegacyTag.png WebExt.png

Tree Style Tabs shows tabs like a tree.

New Tab Homepage WebExt.png

New Tab Homepage will load your homepage whenever you open a new tab.

Stylus WebExt.png

Stylus lets you customise websites by setting custom CSS for them. It is a replacement for the previously recommended add-on Stylish, which was brought out by a company and is now spyware that steals browsing history and more.

OneLiner LegacyTag.png

OneLiner (also exists as "Liner") puts all the different bars at the top of the page, into a single bar (url, tabs, etc all on the same line). This can also be achieved with css.

Usability

FxIF.png WxIF WebExt.png

WxIF is a WebExt port of the legacy add-on FxIF. A tool to view EXIF data in image properties.

Greasemonkey.png Greasemonkey WebExt.png

Greasemonkey manages Userscripts.

ViolentMonkey.png Violentmonkey WebExt.png

Violentmonkey manages Userscripts as well as Greasemonkey.

Tampermonkey.png Tampermonkey WebExt.png

Tampermonkey manages Userscripts as well as Greasemonkey and Violentmonkey. The downside is that it is not Free Software.

Redirector.png Redirector WebExt.png

Redirector automatically redirects to user-defined urls on a per-hyperlink basis.

Vimfx.png VimFx LegacyTag.png

VimFx offers Vim bindings without changes in the UI.

Vimium-FF WebExt.png

Vimium-FF offers vim bindings via WebExt. However all WebExt extensions offering vim bindings are limited and will not work as well as they should (you will still need the mouse), due to how WebExt/nu-firefox works.

Other Vim Binding Options LegacyTag.png WebExt.png

There is a list on the vim wiki that goes over all the vim extensions/add-ons.

Notable patches

Bugs are explicitly stated.

OpenSUSE-KDE Active.png

This patchset makes trivial changes to Firefox to improve its aesthetic and functionality.

  • Adds KDE integration to Firefox.
  • Changes your general.useragent.locale to chrome://global/locale/intl.properties.
  • Adds higher resolution icons.

PGO Stalled.png

This simple patch enables Profile-Guided Optimization techniques for the GCC build. PGO builds consist of two passes: the first one builds instrumented binaries, and the second one to rebuild optimized binaries. It might result in a slight performance increase of roughly ~5%, for double the compilation time.

As it stands, the clang-pgo.patch may not be working.

Bugs

  • The Makefile.in file might not have the compile rule called pgo-profile-run1.
    • Solution: add the pgo-profile-run rule to the Makefile.in.

Privacy Active.png

This patchset aims to disable certain Firefox 'features' that might undermine one's attempt at staying anonymous. In a way, it debloats it.

  • Certain connections to Mozilla are removed.
  • Disables: telemetry, location.services, sponsored tiles, Pocket, Hello, and Reader View.
  • Applies certain privacy conscious settings to about:config by default.
  • Enables tracking protection by default (disable if you use uBlock and/or uMatrix).

DNS over HTTPS and Encrytped SNI

How ESNI makes the internet opaque. Website support may vary.

Newer Firefox versions support DNS over HTTPS and Encrypted SNI. For an introduction to ESNI read this article from the EFF.

Upsides of DoH: Your ISP knows less about you.

Downsides of DoH: Your DNS resolver knows a lot more about you including your browser and operating system, and can set cookies. (Bet you didn't know).

To enable DoH:

  • Set network.trr.mode to 2.

DNS over HTTPS is an ESNI prerequisite.

For ESNI set network.security.esni.enabled to true.

[Test your configuration courtesy of CloudFlare]

Ricing

You can edit Firefox's appearance with CSS (Cascading Style Sheets). To be more general, you can alter ANY web page with CSS. This is achieved with the usage of userstyles. To use and take complete advantage of them, you need a userstyle manager. Stylish is the most common.

The Stylish button that appears after you install it is useful. For instance, to write a userstyle for Firefox, you need to go to:

   chrome://browser/content/browser.xul

And select Write new style -> For this URL, and it'll have a template set up.

The most useful feature in writing userstyles is the Inspector. You pop it up by pressing Ctrl+Shift+C and it'll let you see what elements you can style on the page.

Config

Below are options in about:config worth considering. Instead of doing this manually, consider visiting ffprofile to do this much easier and install extensions as well.

  • dom.storage.enabled FALSE - Disable "client-side session and persistent storage" cookies (bad for 8ch - the replies hyperlinks next to the post number disappears).
  • geo.enabled FALSE - Disable location data.
  • general.useragent.override - Create as a String value and insert your own useragent.
  • network.dns.disablePrefetch TRUE - Stop Firefox looking up IP addresses of links of the page you haven't/aren't going to.
  • network.http.pipelining TRUE - Possible speedup for some servers (send multiple files through one connection).
  • network.http.pipelining.max-optimistic-requests 8 - Total number of pipelines.
  • network.http.pipelining.ssl TRUE - Pipeline with HTTPS sites.
  • network.http.proxy.pipelining TRUE - Pipleline through proxy connections.
  • network.http.sendRefererHeader - 0 = never (bad for 8ch), 1 = domain only, 2 = full url (default).
  • network.prefetch-next FALSE - Don't download pages linked to the current page unless we click the link.
  • dom.event.clipboardevents.enabled FALSE - Don't allow webpages to mess with the clipboard.
  • dom.disable_window_move_resize TRUE - Don't allow webpages to move or resize the browser window.
  • dom.ipc.plugins.flash.subprocess.crashreporter.enabled FALSE - Don't report flash plugin crashes.
  • media.autoplay.enabled FALSE - Don't autoplay media.
  • media.peerconnection.enabled FALSE - Important for VPN users. Don't allow p2p downloading of media.
  • pdfjs.disabled TRUE - Don't run javascript within the builtin PDF viewer.
  • reader.parse-on-load.enabled FALSE - disable "reader view".
  • browser.pocket.enabled (or extensions.pocket.enabled) FALSE - disable pocket.
  • network.http.speculative-parallel-limit 0 - don't create connections to links you only hover over.
  • dom.push.connection.enabled FALSE - Disable push notifications (FF44+).
  • dom.push.enabled FALSE - (as above).
  • dom.webnotifications.enabled FALSE - (as above).
  • dom.webnotifications.serviceworker.enabled FALSE - (as above).
  • loop.enabled FALSE - Disable loop/conversation calling features.
  • browser.urlbar.unifiedcomplete FALSE - Disables the "Search With" popup when typing into the location bar.
  • media.ffmpeg.enabled FALSE (linux only as of FF44) - Disable mp4 playback through ffmpeg, to stop ffmpeg bugs breaking your Firefox.
  • media.eme.apiVisible FALSE - Stops pages from using a JavaScript library for DRM (Digital Rights Management/

Digital Restrictions Management) in html video.

  • media.eme.enabled FALSE - (as above).

For a privacy conscious user.js, study https://github.com/crisbrm/user.js for a user.js that comes with minimal breakage, or https://github.com/pyllyukko/user.js for one with even more emphasis on security (occasionally at the cost of functionality, like when you completely disable DOM storage, for instance), and less emphasis on blending in.

To compare a myriad of privacy-conscious user.js files, use jm42's compare-user.js

External links