Firefox and Firefox ESR (Extended Support Release) can be configured on various configurations files and methods:
GUI
The easiest way to configure Firefox is through the graphical user interface (GUI). You can access the configuration options by going to the menu (the three horizontal lines in the top-right corner of the window), selecting "Preferences" and then navigating to the settings you want to modify.
about:config
You can access advanced configuration options in Firefox by typing "about:config" in the address bar and pressing Enter. This will open a page with a list of advanced configuration options that you can modify. Note that some of these options may be experimental or unsupported, and changing them may have unintended consequences.
policies.json
The policies.json file is used to configure Firefox using Group Policy Objects (GPOs) on Windows systems. On Linux systems, you can use the policies.json file to configure Firefox system-wide or for a specific user by placing the file in the appropriate location.
For system-wide configuration, you can place the policies.json file in the /etc/firefox/ directory. For user-specific configuration, you can place the policies.json file in the ~/.mozilla/firefox// directory, where is the name of the Firefox profile.
user.js
The user.js file is a script that is used to configure Firefox when it starts up. You can use the user.js file to set default values for advanced configuration options that are not exposed in the GUI or about:config page.
You can place the user.js file in the ~/.mozilla/firefox// directory to apply the configuration to a specific Firefox profile. You can also place the user.js file in the /etc/firefox/ directory to apply the configuration system-wide.
Other files
There are several other configuration files that can be used to configure Firefox, such as prefs.js, autoconfig.js, mozilla.cfg, and local-settings.js. These files are typically located in the ~/.mozilla/firefox// directory or in the /etc/firefox/ directory, depending on whether they are intended to apply to a specific Firefox profile or system-wide.
Priority
If there are contradictory configurations in different configuration files, the priority of the configuration files is as follows:
- policies.json
- mozilla.cfg
- autoconfig.js
- local-settings.js
- user.js
- prefs.js
This means that configurations in the policies.json file will take precedence over configurations in the mozilla.cfg file, and so on. Configuration options set through the GUI or about:config page will take precedence over all other configuration files.