Difference between revisions of "Firefox"

From ArchWiki
Jump to: navigation, search
(Firefox 4 New Menu Bar/Firefox Button)
(Installing: no longer needed)
 
(351 intermediate revisions by more than 100 users not shown)
Line 1: Line 1:
 +
[[Category:Web browser]]
 +
[[ar:Firefox]]
 
[[cs:Firefox]]
 
[[cs:Firefox]]
 +
[[de:Firefox]]
 
[[es:Firefox]]
 
[[es:Firefox]]
 
[[fr:Firefox]]
 
[[fr:Firefox]]
 
[[it:Firefox]]
 
[[it:Firefox]]
 +
[[ja:Firefox]]
 
[[ko:Firefox]]
 
[[ko:Firefox]]
 
[[ru:Firefox]]
 
[[ru:Firefox]]
[[tr:Firefox]]
+
[[zh-hans:Firefox]]
[[zh-CN:Firefox]]
+
{{Related articles start}}
[[Category:Web Browser]]
+
{{Related|Browser plugins}}
{{Article summary start}}
+
{{Related|Firefox/Tweaks}}
{{Article summary text|Installing and troubleshooting the Firefox browser and plugins}}
+
{{Related|Firefox/Privacy}}
{{Article summary heading|Related}}
+
{{Related|Chromium}}
{{Article summary wiki|Browser Plugins}}
+
{{Related|Opera}}
{{Article summary wiki|Firefox Tweaks}}
+
{{Related articles end}}
{{Article summary wiki|Chromium}}
+
[https://www.mozilla.org/firefox Firefox] is a popular open-source graphical web browser from [https://www.mozilla.org Mozilla].
{{Article summary wiki|Opera}}
 
{{Article summary end}}
 
[http://www.firefox.com Firefox] is a popular open-source graphical web browser from [http://www.mozilla.com Mozilla].
 
  
 
== Installing ==
 
== Installing ==
Firefox can be [[Pacman|installed]] with the {{Pkg|firefox}} package, available in the [[official repositories]].
 
  
There are a number of language packs available for Firefox, other than the standard English. Language packs are usually named as {{ic|firefox-i18n-languagecode}} (where {{ic|languagecode}} can be any language code, such as '''de''', '''ja''', '''fr''', etc.). For a list of available language packs see [https://www.archlinux.org/packages/?sort=&q=firefox-i18n&maintainer=&last_update=&flagged=&limit=100 this].
+
Firefox can be [[installed]] with the {{Pkg|firefox}} package.
  
If Firefox does not anti-alias and/or hint your fonts, try to install {{AUR|ttf-win7-fonts}} (preferred) or {{AUR|ttf-ms-fonts}} and take a look at [[Font Configuration]].
+
Other alternatives include:
 +
 
 +
* {{App|Firefox Extended Support Release|long-term supported version|https://www.mozilla.org/firefox/organizations/|{{AUR|firefox-esr}} or {{AUR|firefox-esr-bin}}}}
 +
* {{App|Firefox Beta|cutting-edge version|https://www.mozilla.org/firefox/channel/desktop/#beta|{{AUR|firefox-beta}} or {{AUR|firefox-beta-bin}}}}
 +
* {{App|Firefox Developer Edition|for developers|https://www.mozilla.org/firefox/developer/|{{AUR|firefox-developer}}}}
 +
* {{App|Firefox Nightly|nightly builds for testing ([https://developer.mozilla.org/Firefox/Experimental_features experimental features])|https://www.mozilla.org/firefox/channel/desktop/#nightly|{{AUR|firefox-nightly}}}}
 +
* {{App|Firefox KDE|Version of Firefox that incorporates an OpenSUSE patch for better KDE integration than is possible through simple Firefox plugins.|https://build.opensuse.org/package/show/mozilla:Factory/MozillaFirefox|{{AUR|firefox-kde-opensuse}}}}
 +
* On top of the different Mozilla build channels, a number of forks exist with more or less special features; see [[List of applications#Gecko-based]].
 +
 
 +
Here you can find an overview of Mozilla's [https://wiki.mozilla.org/Releases releases].
 +
 
 +
There are a number of language packs available for Firefox, other than the standard English. Language packs are usually named as {{ic|firefox-i18n-''languagecode''}} (where {{ic|''languagecode''}} can be any language code, such as '''de''', '''ja''', '''fr''', etc.). For a list of available language packs see [https://www.archlinux.org/packages/?sort=&q=firefox-i18n&maintainer=&last_update=&flagged=&limit=100 this].
  
 
== Add-ons ==
 
== Add-ons ==
Firefox is well known for its large library of add-ons which can be used to add new features or modify the behavior of existing features of Firefox.  You can find new add-ons or manage installed add-ons with Firefox's "Add-ons Manager."
 
  
For a list of popular add-ons, see [https://addons.mozilla.org/en-US/firefox/extensions/?sort=popular Mozilla's add-on list sorted by popularity].
+
Firefox is well known for its large library of add-ons which can be used to add new features or modify the behavior of existing features of Firefox. You can find new add-ons or manage installed add-ons with Firefox's "Add-ons Manager."
 +
 
 +
For a list of popular add-ons, see [https://addons.mozilla.org/firefox/extensions/?sort=popular Mozilla's add-on list sorted by popularity]. See also [[Wikipedia:List of Firefox extensions|List of Firefox extensions]] on Wikipedia.
 +
 
 +
=== Adding search engines ===
 +
 
 +
Search engines can be added to Firefox through normal add-ons, see [https://addons.mozilla.org/firefox/search-tools/ this page] for a list of available search engines.
 +
 
 +
A very extensive list of search engines can be found at the [http://mycroftproject.com/ Mycroft Project].
 +
 
 +
Also, you can use the [https://firefox.maltekraus.de/extensions/add-to-search-bar add-to-searchbar] extension to add a search to your search bar from any web site, by simply right clicking on the site's search field and selecting ''Add to Search Bar...''
 +
 
 +
==== arch-firefox-search ====
 +
 
 +
Install the {{Pkg|arch-firefox-search}} package to add Arch-specific searches (AUR, wiki, forum, etc, as specified by user) to the Firefox search toolbar.
 +
 
 +
== Configuration ==
 +
 
 +
Firefox exposes a number of configuration options. To examine them, enter:
 +
 
 +
about:config
 +
 
 +
in the Firefox address bar.
 +
 
 +
Once set, these affect the user's current profile, and may be synchronized across all devices via [https://www.mozilla.org/firefox/sync/ Firefox Sync]. Please note that only a subset of the {{ic|about:config}} entries are synchronized by this method, and the exact subset may be found by searching for {{ic|services.sync.prefs}} in {{ic|about:config}}. Additional preferences and 3rd party preferences may be synchronized by creating new boolean entries prepending the config value with {{ic|services.sync.prefs.sync}} ([https://developer.mozilla.org/en-US/docs/Archive/Mozilla/Firefox_Sync/Syncing_custom_preferences documentation] is still applicable.) To synchronize the whitelist for the extension [https://addons.mozilla.org/firefox/addon/noscript/ NoScript]:
 +
 
 +
services.sync.prefs.sync.capability.policy.maonoscript.sites
 +
 
 +
The boolean {{ic|noscript.sync.enabled}} must be set to {{ic|true}} to synchronize the remainder of NoScript's preferences via Firefox Sync.
 +
 
 +
Firefox also allows configuration for a profile via a {{ic|user.js}} file: [http://kb.mozillazine.org/User.js_file user.js] kept in the profile folder, usually {{ic|~/.mozilla/firefox/''xxxxxxxx''.default/}}. For a useful starting point, see e.g [https://github.com/pyllyukko/user.js custom user.js] which is targeted at privacy/security conscious users.
 +
 
 +
One drawback of the above approach is that it is not applied system-wide. Furthermore, this is not useful as a "pre-configuration", since the profile directory is created after first launch of the browser. You can, however, let ''firefox'' create a new profile and, after closing it again, [https://support.mozilla.org/en-US/kb/back-and-restore-information-firefox-profiles#w_restoring-a-profile-backup copy the contents] of an already created profile folder into it.
 +
 
 +
Sometimes it may be desired to lock certain settings, a feature useful in widespread deployments of customized Firefox. In order to create a system-wide configuration, follow the steps outlined in [http://kb.mozillazine.org/Locking_preferences Locking preferences]:
  
== Plugins ==
+
1. Create {{ic|/usr/lib/firefox/defaults/pref/local-settings.js}}:
{{Box||See the main article: [[Browser Plugins]]|#E5E5FF|#FCFCFC}}
+
 
 +
pref("general.config.obscure_value", 0);
 +
pref("general.config.filename", "mozilla.cfg");
 +
 
 +
2. Create {{ic|/usr/lib/firefox/mozilla.cfg}} (this stores the actual configuration):
 +
 
 +
//
 +
//...your settings...
 +
// e.g to disable Pocket, uncomment the following line
 +
// lockPref("browser.pocket.enabled", false);
 +
 
 +
Please note that the first line must contain exactly {{ic|//}}. The syntax of the file is similar to that of {{ic|user.js}}.
 +
 
 +
=== Multimedia playback ===
 +
 
 +
Firefox uses [[FFmpeg]] for playing multimedia inside HTML5 {{ic|<audio>}} and {{ic|<video>}} elements. Go to [https://www.youtube.com/html5 YouTube's HTML5 page], [https://www.quirksmode.org/html5/tests/video.html video-test page] or [https://hpr.dogphilosophy.net/test/ audio-test page] to check which formats are actually supported.
 +
 
 +
HTML5 DRM playback is supported by the Google Widevine CDM, it is however not enabled by default. See ''Preferences > General > Digital Rights Management (DRM) Content'' if you want to learn more.
 +
 
 +
See [[Firefox tweaks#Enable additional media codecs]] for advanced configuration and enabling support for Widevine (Netflix, Amazon Video, etc.).
 +
 
 +
Starting with version 54, Firefox uses [[PulseAudio]] for audio playback and capture. For sound to work, you need to install the {{Pkg|pulseaudio}} package.
 +
 
 +
In case, for whatever reason, [[PulseAudio]] is not an option for you, you can use [[Advanced Linux Sound Architecture#PulseAudio compatibility|apulse]] instead. To make this work, it is necessary to exclude {{ic|/dev/snd/}} from Firefox' sandboxing by adding it to the comma-separated list in {{ic|about:config}}:
  
To find out what plugins are installed/enabled, enter:
+
  security.sandbox.content.write_path_whitelist
  about:plugins
 
in the Firefox address bar or go to the ''Add-ons'' entry in the Firefox Menu and select the ''Plugins'' tab.
 
  
=== GNOME Keyring integration ===
+
{{Note|The trailing slash on {{ic|/dev/snd/}} is important, otherwise apulse will report "Permission denied" errors.}}
Install {{AUR|firefox-gnome-keyring}} from the [[AUR]] to integrate Firefox with [[GNOME Keyring]].
 
  
=== KDE integration ===
+
==== Open-with extension ====
* To use KDE's KPart technology with Firefox, by embedding different KDE file viewers into the browser, you can install {{Pkg|kpartsplugin}}.
 
  
* To get further integration with KDE's Oxygen theme, you can install [http://kde-look.org/content/show.php/?content=117962 Oxygen KDE], a very comprehensive theme that also has color scheme detection, support for Firefox's Persona themes, support for both the Oxygen and Faenza icons and various other customizations.
+
# Install [https://addons.mozilla.org/firefox/addon/open-with/ Open-with] add-on.
 +
# Open {{ic|about:openwith}}, select ''Add...''
 +
# In the dialog select a video streaming capable player (e.g. [[mpv|/usr/bin/mpv]]).
 +
# (Optional step) Add needed arguments to the player (e.g. you may want {{ic|--force-window --ytdl}} for ''mpv'')
 +
# (Optional step) Choose how to display the dialogs using the left panel.
 +
# Right click on links or visit pages containing videos. If the site is supported, the player will open as expected.
  
* For integration with KDE’s mime type system and file dialogs, one can use a [https://aur.archlinux.org/packages/firefox-kde-opensuse version of firefox] with OpenSUSE’s patches applied.
+
The same procedure can be used to associate video downloaders such as ''youtube-dl''.
  
 
=== Dictionaries for spell checking ===
 
=== Dictionaries for spell checking ===
 +
 
To enable spell checking for a specific language right click on any text field and check the ''Check Spelling'' box. To select a language for spell checking to you have right click again and select your language from the ''Languages'' sub-menu.
 
To enable spell checking for a specific language right click on any text field and check the ''Check Spelling'' box. To select a language for spell checking to you have right click again and select your language from the ''Languages'' sub-menu.
  
 
To get more languages just click ''Add Dictionaries...'' and select the dictionary you want to install from the list.
 
To get more languages just click ''Add Dictionaries...'' and select the dictionary you want to install from the list.
 
   
 
   
Alternatively, you can install the {{Pkg|hunspell}} package, available in the [[official repositories]]. You also need to install dictionaries for your language, such as {{Pkg|hunspell-fr}} (for the French language) or {{Pkg|hunspell-he}} (for Hebrew).
+
Alternatively, you can install the {{Pkg|hunspell}} package. You also need to install dictionaries for your language, such as {{Pkg|hunspell-fr}} (for the French language) or {{Pkg|hunspell-he}} (for Hebrew).
  
=== Adding Firefox search engines ===
+
By default, Firefox will try to symlink all your hunspell dictionaries in {{ic|/usr/lib/firefox/dictionaries}}. If you want to have less dictionaries offered to you in Firefox, you can remove some of those links. Be aware that it may not stand an upgrade of Firefox.
  
Search engines can be added to Firefox through normal add-ons, see [https://addons.mozilla.org/en-US/firefox/search-tools/ this page] for a list of available search engines.
+
When your default language choice does not stick, see [[#Firefox does not remember default spell check language]].
  
A very extensive list of search engines can be found [http://mycroft.mozdev.org/ here].
+
=== KDE/GNOME integration ===
  
Also, you can use the [https://firefox.maltekraus.de/extensions/add-to-search-bar add-to-searchbar] extension to add a search to your search bar from any web site, by simply right clicking on the site's search field and selecting ''Add to Search Bar...''
+
* To bring the [[KDE]] look to GTK apps (including Firefox), install {{Pkg|breeze-gtk}} and {{Pkg|kde-gtk-config}}. Afterwards, go to ''System Settings > Application Style > GTK''. Be sure to choose 'Breeze' in 'Select a GTK2/GTK3 Theme' and check 'Show icons in GTK buttons' and 'Show icons in GTK'.
 +
 
 +
* For integration with KDE’s mime type system and file dialogs, one can use {{AUR|firefox-kde-opensuse}} variant from AUR with OpenSUSE’s patches applied.
 +
 
 +
* Add-ons may provide some integration, such as [https://addons.mozilla.org/firefox/addon/kde5-wallet-password-integrati/ KWallet integration], [https://addons.mozilla.org/firefox/addon/gnotifier/ GNotifier] (soon to be [https://github.com/mkiol/GNotifier/issues/162 discontinued]), [https://addons.mozilla.org/firefox/addon/unityfox-revived/ Unityfox Revived] (or e10s compatible {{AUR|firefox-extension-unity-launcher-api-e10s}}), and [https://addons.mozilla.org/firefox/addon/plasma-integration/ Plasma Integration].
 +
 
 +
* Install {{AUR|mozilla-extension-gnome-keyring-git}} (all-JavaScript implementation) to integrate Firefox with [[GNOME Keyring]]. To make firefox-gnome-keyring use your login keychain, set extensions.gnome-keyring.keyringName to "login" (without the double quotes) in about:config. Note the lowercase 'l' despite the the keychain name having an uppercase 'L' in Seahorse.
 +
 
 +
* To make the left mouse button warp the scrollbar instead of the middle one on KDE, go to ''System Settings > Application Style > GTK'' and set the checkbox for "Left mouse button warps scrollbar".
 +
 
 +
== Plugins ==
 +
 
 +
{{Note|Firefox [https://support.mozilla.org/en-US/kb/npapi-plugins has removed support] for [[w:NPAPI|NPAPI]] plugins, except for Flash. Firefox ESR will support plugins until 2018.}}
  
If you want a manual solution, take a look at {{ic|~/.mozilla/firefox/xxx.default/searchplugins/}} (where xxx is your profile ID).
+
See the main article: [[Browser plugins]]
  
==== arch-firefox-search ====
+
To find out what plugins are installed/enabled, enter:
Install the {{Pkg|arch-firefox-search}} package, available in the [[official repositories]], to add Arch-specific searches (AUR, wiki, forum, etc, as specified by user) to the Firefox search toolbar.
 
  
== Firefox derivatives ==
+
about:plugins
  
* {{App|[[Wikipedia:Mozilla Corporation software rebranded by the Debian project#IceWeasel|Iceweasel]]|A fork of Firefox that is being developed by Debian. The main difference is that it does not include any trademarked Mozilla artwork.|http://wiki.debian.org/Iceweasel|{{AUR|iceweasel}}}}
+
in the Firefox address bar or go to the ''Add-ons'' entry in the Firefox Menu and select the ''Plugins'' tab.
{{Note|For some more information about Iceweasel's existance see [http://web.glandium.org/blog/?p&#61;97 this blog post].}}
 
* {{App|[[Wikipedia:Gnu IceCat|GNU IceCat]]|A web browser distributed by the GNU Project. It is made entirely of free software and is compatible with the GNU/Linux operating system and almost all of Firefox's addons. |http://www.gnu.org/software/gnuzilla/|{{AUR|icecat}}}}
 
* {{App|[[Wikipedia:Swiftfox|Swiftfox]]|A web browser based on Firefox but optimized for some newer Intel and AMD processors.|http://www.getswiftfox.com/|{{AUR|swiftfox-athlon64}} {{AUR|swiftfox-prescott}} {{AUR|swiftfox-i686}}}}
 
* {{App|Firefox KDE|A version of Firefox that incorporates an OpenSUSE patch for better KDE integration than is possible through simple Firefox plugins.|http://gitorious.org/firefox-kde-opensuse|{{AUR|firefox-kde-opensuse}}}}
 
  
== Troubleshooting ==
+
== Tips and tricks ==
  
=== Setting your e-mail client ===
+
For general enhancements see [[Firefox/Tweaks]], for privacy related enhancements see [[Firefox/Privacy]].
Firefox is usually set to open {{ic|mailto}} links with a web application such as Gmail or Yahoo Mail. To set your e-mail client in Firefox to use with {{ic|mailto}} links, go to ''Preferences > Applications'' and modify the ''action'' column corresponding to the {{ic|mailto}} content type. You have set this to the exact location of your e-mail client (e.g. {{ic|/usr/bin/kmail}} for Kmail).
 
  
=== Firefox 4 New Menu Bar/Firefox Button ===
+
=== Screenshot of webpage ===
{{Merge|Firefox Tweaks|This is just style tweaks, should better keep it in tweak page to keep main page clean.}}
+
{{Tip|Since Firefox 57, you can take a screenshot by clicking the "page actions" button (three horizontal dots in the right of the address bar), and choosing "Screenshot".}}
To toggle between the new Firefox button and the classic menu bar:
 
* if the button is active, check ''Preferences > Menu Bar'', or right click in the toolbar area and check ''Menu Bar''.
 
* if the menu bar is active, uncheck ''View > Toolbars > Menu Bar'', or right click in the toolbar area and uncheck ''Menu Bar''.
 
  
In GNU/Linux, you will just get a plain grey button instead of the new orange one from Windows. However you can change this to either a Firefox icon or the icon followed by the "Firefox" text.
+
To use Firefox to take a screenshot of a webpage open the developer console using {{ic|Shift+F2}}. Then type in:
  
Adding the following to your {{ic|~/.mozilla/firefox/userprofile/chrome/userChrome.css}} file will place the icon before the text:
+
screenshot ''filename''
{{bc|
 
#appmenu-toolbar-button {
 
  list-style-image: url("chrome://branding/content/icon16.png");
 
}
 
}}
 
  
Adding the following to the same file will ''remove'' the "Firefox" text:
+
where ''filename'' is optional.
{{bc|
 
#appmenu-toolbar-button > .toolbarbutton-text,
 
#appmenu-toolbar-button > .toolbarbutton-menu-dropmarker {
 
  display: none !important;
 
}
 
}}
 
  
 +
To take a screenshot of the entire page, not just the section displayed on the screen, use the {{ic|--fullpage}} option:
  
This userChrome.css configuration copies the default Windows Firefox 4+ look and adds an orange background to the button, with a purple background in Private Browsing mode:
+
screenshot --fullpage ''filename''
{{bc|
 
#main-window:not([privatebrowsingmode]) #appmenu-toolbar-button {
 
    -moz-appearance: none !important;
 
    color: #FEEDFC !important;
 
    background: -moz-linear-gradient(hsl(34,85%,60%), hsl(26,72%,53%) 95%) !important;
 
    border: 1px solid #000000 !important;
 
}
 
  
#main-window:not([privatebrowsingmode]) #appmenu-toolbar-button:hover:not(:active):not([open]) {
+
== Troubleshooting ==
    -moz-appearance: none !important;
 
    color: #FEEDFC !important;
 
    background: -moz-linear-gradient(hsl(26,72%,53%), hsl(34,85%,60%) 95%) !important;
 
    border: 1px solid #000000 !important;
 
}
 
  
 +
=== Firefox startup takes very long ===
  
#main-window:not([privatebrowsingmode]) #appmenu-toolbar-button:hover:active,
+
If Firefox takes much longer to start up than other browsers, it may be due to lacking configuration of the localhost in  {{ic|/etc/hosts}}. See [[Network configuration#Local network hostname resolution]] on how to set it up.
#main-window:not([privatebrowsingmode]) #appmenu-toolbar-button[open] {
 
    -moz-appearance: none !important;
 
    color: #FEEDFC !important;
 
    background: -moz-linear-gradient(hsl(26,72%,53%), hsl(26,72%,53%) 95%) !important;
 
    border: 1px solid #000000 !important;
 
}
 
  
#appmenu-toolbar-button {
+
=== Font troubleshooting ===
    -moz-appearance: none !important;
 
    color: #FEEDFC !important;
 
    background: -moz-linear-gradient(hsl(279,70%,46%), hsl(276,75%,38%) 95%) !important;
 
    border: 1px solid #000000 !important;
 
}
 
  
 +
See [[Font configuration]].
  
#main-window #appmenu-toolbar-button:hover:not(:active):not([open]) {
+
Firefox has a setting which determines how many replacements it will allow from fontconfig. To allow it to use all your replacement-rules, change {{ic|gfx.font_rendering.fontconfig.max_generic_substitutions}} to {{ic|127}} (the highest possible value).
    -moz-appearance: none !important;
 
    color: #FEEDFC !important;
 
    background: -moz-linear-gradient(hsl(276,75%,38%), hsl(279,70%,46%) 95%) !important;
 
    border: 1px solid #000000 !important;
 
}
 
  
 +
=== Setting an email client ===
  
#main-window #appmenu-toolbar-button:hover:active,
+
Inside the browser, {{ic|mailto}} links by default are opened by a web application such as Gmail or Yahoo Mail. To set an external email program, go to ''Preferences > Applications'' and modify the ''action'' corresponding to the {{ic|mailto}} content type; the file path will need to be designated (e.g. {{ic|/usr/bin/kmail}} for Kmail).
#main-window #appmenu-toolbar-button[open] {
 
    -moz-appearance: none !important;
 
    color: #FEEDFC !important;
 
    background: -moz-linear-gradient(hsl(276,75%,38%), hsl(276,75%,38%) 95%) !important;
 
    border: 1px solid #000000 !important;
 
}
 
}}
 
  
{{Note|You need to create both the {{ic|chrome}} directory and {{ic|userChrome.css}}, if they do not already exist.}}
+
Outside the browser, {{ic|mailto}} links are handled by the {{ic|x-scheme-handler/mailto}} mime type, which can be easily configured with [[xdg-mime]]. See [[Default applications]] for details and alternatives.
  
=== Open containing folder problems (KDE) ===
+
=== File association ===
If Firefox launches something other than your preferred file manager when using the "Open Containing Folder" option in the Downloads manager, make sure you select your file manager of choice (e.g. [[Dolphin]]) in KDE's System Settings under ''Workspace Appearance and Behavior > Default Applications > File Manager''.
 
  
If Firefox is still not opening your file manager of choice, modify your user's {{ic|~/.local/share/applications/defaults.list}} to include these two lines:
+
See [[Default applications]].
x-directory/normal=kde4-dolphin.desktop;kde4-kfmclient_dir.desktop;
 
inode/directory=kde4-dolphin.desktop;kde4-kfmclient_dir.desktop;kde4-gwenview.desktop;kde4-filelight.desktop;kde4-cervisia.desktop;
 
  
 
=== Firefox keeps creating ~/Desktop even when this is not desired ===
 
=== Firefox keeps creating ~/Desktop even when this is not desired ===
Firefox uses {{ic|~/Desktop}} as the default place for download and upload files. To set it to another folder, create {{ic|~/.config/user-dirs.dirs}} and add:
+
 
XDG_DESKTOP_DIR="/home/<user>/"
+
Firefox uses {{ic|~/Desktop}} as the default place for download and upload files. To change it to another folder, set the {{ic|XDG_DESKTOP_DIR}} option as explained in [[XDG user directories]].
XDG_DOWNLOAD_DIR="/home/<user>/<dir>"
 
XDG_TEMPLATES_DIR="/home/<user>/<dir>"
 
XDG_PUBLICSHARE_DIR="/home/<user>/<dir>"
 
XDG_DOCUMENTS_DIR="/home/<user>/<dir>"
 
XDG_MUSIC_DIR="/home/<user>/<dir>"
 
XDG_PICTURES_DIR="/home/<user>/<dir>"
 
XDG_VIDEOS_DIR="/home/<user>/<dir>"
 
Change {{ic|<user>}} and {{ic|<dir>}} to the actual directory.
 
  
 
=== Make plugins respect blocked pop-ups ===
 
=== Make plugins respect blocked pop-ups ===
 +
 
Some plugins can misbehave and bypass the default settings, such as the Flash plugin. You can prevent this by doing the following:
 
Some plugins can misbehave and bypass the default settings, such as the Flash plugin. You can prevent this by doing the following:
  
 
# Type {{ic|about:config}} into the address bar.
 
# Type {{ic|about:config}} into the address bar.
# Right-click on the page and select {{ic|New}} and then {{ic|Integer}}.
+
# Right-click on the page and select ''New > Integer''.
 
# Name it {{ic|privacy.popups.disable_from_plugins}}.
 
# Name it {{ic|privacy.popups.disable_from_plugins}}.
# Set the value to 2.
+
# Set the value to {{ic|2}}.
  
 
The possible values are:
 
The possible values are:
* '''0''': Allow all popups from plugins.
+
 
* '''1''': Allow popups, but limit them to dom.popup_maximum.
+
* {{ic|'''0'''}}: Allow all popups from plugins.
* '''2''': Block popups from plugins.
+
* {{ic|'''1'''}}: Allow popups, but limit them to {{ic|dom.popup_maximum}}.
* '''3''': Block popups from plugins, even on whitelisted sites.
+
* {{ic|'''2'''}}: Block popups from plugins.
 +
* {{ic|'''3'''}}: Block popups from plugins, even on whitelisted sites.
  
 
=== Middle-click errors ===
 
=== Middle-click errors ===
 +
{{Note|1=This has been fixed in Firefox 57.[https://www.phoronix.com/scan.php?page=news_item&px=Firefox-Middle-Click-Bug]}}
 
A common error message you can get while using the middle mouse button in Firefox is:
 
A common error message you can get while using the middle mouse button in Firefox is:
 +
 
  The URL is not valid and cannot be loaded.
 
  The URL is not valid and cannot be loaded.
  
 
Another symptom is that middle-clicking results in unexpected behavior, like accessing a random web page.
 
Another symptom is that middle-clicking results in unexpected behavior, like accessing a random web page.
  
The reason stems from the use of the middle mouse buttons in UNIX-like operating systems. The middle mouse button is used to paste whatever text has been highlighted/added to the clipboard. Then there is the possibly conflicting feature in Firefox, which defaults to loading the URL of the corresponding text when the button is depressed. This can be easily disabled by going to {{ic|about:config}} and setting the {{ic|middlemouse.contentLoadURL}} option to '''false'''.
+
The reason stems from the use of the middle mouse buttons in UNIX-like operating systems. The middle mouse button is used to paste whatever text has been highlighted/added to the clipboard. Then there is the possibly conflicting feature in Firefox, which defaults to loading the URL of the corresponding text when the button is depressed. This can be easily disabled by going to {{ic|about:config}} and setting the {{ic|middlemouse.contentLoadURL}} option to {{ic|false}}.
  
Alternatively, having the traditional scroll cursor on middle-click (default behavior on Windows browsers) can be achieved by searching for {{ic|general.autoScroll}} and setting it to '''true'''.
+
Alternatively, having the traditional scroll cursor on middle-click (default behavior on Windows browsers) can be achieved by searching for {{ic|general.autoScroll}} and setting it to {{ic|true}}.
  
 
=== Backspace does not work as the 'Back' button ===
 
=== Backspace does not work as the 'Back' button ===
As per [http://ubuntu.wordpress.com/2006/12/21/fix-firefox-backspace-to-take-you-to-the-previous-page/ this article], the feature has been removed in order to fix a bug. To re-introduce the original behavior go to {{ic|about:config}} and set the {{ic|browser.backspace_action}} option to '''0''' (zero).
+
 
 +
According to [http://kb.mozillazine.org/Browser.backspace_action mozillaZine], the {{ic|Backspace}} key was mapped based on which platform the browser was running on. As a compromise, this preference was created to allow the {{ic|Backspace}} key to either go back/forward, scroll up/down a page, or do nothing.
 +
 
 +
To make {{ic|Backspace}} behave like the back button type {{ic|about:config}} in the address bar and search for the property {{ic|browser.backspace_action}}, then set it to {{ic|0}}.
 +
 
 +
You can also set the property {{ic|browser.backspace_action}} to {{ic|1}} so the {{ic|Backspace}} key will scroll up the page, whereas {{ic|Shift+Backspace}} scrolls down. Setting this property to any other value will leave the key unmapped (Arch Linux defaults to {{ic|2}}, in other words, it is unmapped by default).
  
 
=== Firefox does not remember login information ===
 
=== Firefox does not remember login information ===
It may be due to a corrupted {{ic|cookies.sqlite}} file in [http://support.mozilla.com/en-US/kb/Profiles#How_to_find_your_profile Firefox's profile] folder. In order to fix this, just rename or remove {{ic|cookie.sqlite}} while Firefox is not running.
+
 
 +
It may be due to a corrupted {{ic|cookies.sqlite}} file in [https://support.mozilla.org/t5/Firefox/Profiles-Where-Firefox-stores-your-bookmarks-passwords-and-other/ta-p/4608#w_how-do-i-find-my-profile Firefox's profile] folder. In order to fix this, just rename or remove {{ic|cookie.sqlite}} while Firefox is not running.
  
 
Open a terminal of choice and type the following:
 
Open a terminal of choice and type the following:
  $ cd ~/.mozilla/firefox/xxxxxxxx.default/
+
 
$ rm -f cookies.sqlite
+
  $ rm -f ~/.mozilla/firefox/<profile id>.default/cookies.sqlite
{{Note|xxxxxxxx represents a random string of 8 characters.}}
+
 
 +
The profile id is a random 8 character string.
  
 
Restart Firefox and see if it solved the problem.
 
Restart Firefox and see if it solved the problem.
  
 
=== Unreadable input fields with dark GTK+ themes ===
 
=== Unreadable input fields with dark GTK+ themes ===
When using a dark [[GTK+]] theme, one might encounter Internet pages with unreadable input and text fields (e.g. Amazon can have white text on white background). This can happen because the site only sets either background or text color, and Firefox takes the other one from the theme.
 
  
A work around is to explicitly setting standard colors for all web pages in {{ic|~/.mozilla/firefox/xxxxxxxx.default/chrome/userContent.css}}.
+
{{Merge|Firefox tweaks#Appearance|Anything on that page might be in troubleshooting section as well, so let us keep the info in one place.}}
 +
 
 +
When using a dark [[GTK+]] theme, one might encounter Internet pages with unreadable input and text fields (e.g. Amazon can have white text on white background). This can happen because the site only sets either background or text color, and Firefox takes the other one from the theme.
 +
 
 +
This can be prevented by setting {{ic|1=browser.display.use_system_colors = false}} in {{ic|about:config}}, which will stop Firefox using your theme's colors in web pages.
 +
 
 +
The extension [https://addons.mozilla.org/firefox/addon/text-contrast-for-dark-themes/ Text Contrast for Dark Themes] sets the other color as needed to maintain contrast.
 +
 
 +
Another workaround is to explicitly set standard colors for all web pages in {{ic|~/.mozilla/firefox/''xxxxxxxx''.default/chrome/userContent.css}} or using the [https://addons.mozilla.org/firefox/addon/styl-us/ stylus add-on].
  
 
The following sets input fields to standard black text / white background; both can be overridden by the displayed site, so that colors are seen as intended:
 
The following sets input fields to standard black text / white background; both can be overridden by the displayed site, so that colors are seen as intended:
{{bc|
 
input {
 
    -moz-appearance: none !important;
 
    background-color: white;
 
    color: black;
 
}
 
  
textarea {
+
{{Note|If you want {{ic|urlbar}} and {{ic|searchbar}} to be {{ic|white}} remove the two first {{ic|:not}} css selectors.}}
 +
 
 +
{{bc|1=
 +
input:not(.urlbar-input):not(.textbox-input):not(.form-control):not([type='checkbox']):not([type='radio']), textarea, select {
 
     -moz-appearance: none !important;
 
     -moz-appearance: none !important;
 
     background-color: white;
 
     background-color: white;
Line 231: Line 265:
 
}
 
}
  
select {
+
#downloads-indicator-counter {
    -moz-appearance: none !important;
+
     color: white;
     background-color: white;
 
    color: black;
 
 
}
 
}
 
}}
 
}}
  
This will force the colors ("Allow pages to choose their own colors..." checkbox in the ''Preferences > Content > Color'' dialog):
+
Alternatively, force Firefox to use a light theme (e.g. "Adwaita:light"):
{{bc|
+
 
input {
+
# Copy {{ic|/usr/share/applications/firefox.desktop}} to {{ic|~/.local/share/applications/firefox.desktop}} and replace all occurrences of {{ic|1=Exec=firefox}} with {{ic|1=Exec=env GTK_THEME=Adwaita:light firefox}}.
    -moz-appearance: none !important;
+
# Close all running instances of Firefox and restart your window manager/desktop environment.
    background-color: pink !important;
+
 
    color: green !important;
+
=== "Do you want Firefox to save your tabs for the next time it starts?" dialog does not appear ===
}
+
 
 +
From the [https://support.mozilla.com/en-US/questions/767751 Mozilla support] site:
 +
 
 +
# Type {{ic|about:config}} in the address bar.
 +
# Set {{ic|browser.warnOnQuit}} to {{ic|true}}.
 +
# Set {{ic|browser.showQuitWarning}} to {{ic|true}}.
 +
 
 +
=== Silently fails when installing desktop apps from marketplace ===
 +
 
 +
Installation of apps from Firefox OS Marketplace will silently fail if there is no {{ic|~/.local/share/applications}} folder.
 +
 
 +
=== Firefox detects the wrong version of my plugin ===
 +
 
 +
When you close Firefox, the latter saves the current timestamp and version of your plugins inside {{ic|pluginreg.dat}} located in your profile folder, typically in {{ic|~/.mozilla/firefox/''xxxxxxxx''.default/}}.
 +
 
 +
If you upgraded your plugin when Firefox was still running, you will thus have the wrong information inside that file. The next time you will restart Firefox you will get that message {{ic|Firefox has prevented the outdated plugin "XXXX" from running on ...}} when you will be trying to open content dedicated to that plugin on the web. This problem often appears with the official [[Browser plugins#Flash Player|Adobe Flash Player plugin]] which has been upgraded while Firefox was still running.
  
textarea {
+
The solution is to remove the file {{ic|pluginreg.dat}} from your profile and that is it. Firefox will not complain about the missing file as it will be recreated the next time Firefox will be closed. [https://bugzilla.mozilla.org/show_bug.cgi?id=1109795#c16]
    -moz-appearance: none !important;
 
    background-color: pink !important;
 
    color: green !important;
 
}
 
  
select {
+
=== Javascript context menu does not appear on some sites ===
    -moz-appearance: none !important;
 
    background-color: pink !important;
 
    color: green !important;
 
}
 
}}
 
Change color values to suit, or use an add-on like [https://addons.mozilla.org/en-US/firefox/addon/2108 Stylish].
 
  
=== File association problems ===
+
In {{ic|about:config}}, unset the {{ic|dom.w3c_touch_events.enabled}} setting.
For non-[[GNOME]] users, Firefox may not associate file types properly or at all (in the "Open With" part of the download dialog). Installing {{Pkg|libgnome}} from the [[official repositories]] amends the problem.
 
  
If you are using [[KDE]] you can also do the following:
+
=== Firefox does not remember default spell check language ===
ln -s ~/.local/share/applications/mimeapps.list ~/.local/share/applications/mimeinfo.cache
 
From now on Firefox should use the applications which are explicitly set in KDE.
 
  
=== "I'm Feeling Lucky" Mode ===
+
The default spell checking language can be set as follows:
Some search engines have a feeling lucky feature. For example Google has "I'm Feeling Lucky"  and DuckDuckGo has "I'm Feeling Ducky".
 
  
To activate them:
 
 
# Type {{ic|about:config}} in the address bar.
 
# Type {{ic|about:config}} in the address bar.
# Search for the string {{ic|keyword.url}}.
+
# Set {{ic|spellchecker.dictionary}} to your language of choice, for instance {{ic|en_GB}}.
# Modify its value (if any) to the URL of the search engine.  
+
# Notice that the for dictionaries installed as a Firefox plugin the notation is {{ic|en-GB}}, and for {{Pkg|hunspell}} dictionaries the notation is {{ic|en_GB}}.
 +
 
 +
When you only have system wide dictionaries installed with {{Pkg|hunspell}}, Firefox might not remember your default dictionary language settings. This can be fixed by having at least one [https://addons.mozilla.org/firefox/language-tools/ dictionary] installed as a Firefox plugin. Notice that now you will also have a tab '''Dictionaries''' in '''add-ons'''.
 +
 
 +
Related questions on the '''StackExchange''' platform: [https://stackoverflow.com/questions/26936792/change-firefox-spell-check-default-language/29446115], [https://stackoverflow.com/questions/21542515/change-default-language-on-firefox/29446353], [https://askubuntu.com/questions/184300/how-can-i-change-firefoxs-default-dictionary/576877]
 +
 
 +
Related bug reports: [https://bugzilla.mozilla.org/show_bug.cgi?id=776028 Bugzilla 776028], [https://bugs.launchpad.net/ubuntu/+source/firefox/+bug/1026869 Ubuntu bug 1026869]
 +
 
 +
=== Some MathML symbols are missing ===
 +
 
 +
You need some Math fonts, namely Latin Modern Math and STIX (see this MDN page: [https://developer.mozilla.org/en-US/docs/Mozilla/MathML_Project/Fonts#Linux]), to display MathML correctly.
  
For Google, set it to:
+
In Arch Linux, these fonts are provided by {{Pkg|texlive-core}} '''and''' {{Pkg|texlive-fontsextra}}, but they are not available to fontconfig by default. See [[TeX Live#Fonts]] for details. You can also try other [[Fonts#Math|Math fonts]].
{{bc|<nowiki>http://www.google.com/search?btnI=I%27m+Feeling+Lucky&q=</nowiki>}}
 
For DuckDuckGo, set it to:
 
{{bc|<nowiki>https://duckduckgo.com/?q=\</nowiki>}}
 
  
=== "Do you want Firefox to save your tabs for the next time it starts?" dialog does not appear ===
+
=== Picture flickers while scrolling ===
From the [http://support.mozilla.com/en-US/questions/767751 Mozilla Support] site:
 
  
# Type {{ic|about:config}} in the address bar.
+
{{Accuracy|Most likely a driver issue, useless without reference}}
# Set {{ic|browser.warnOnQuit}} to '''true'''.
+
{{Note|Problem available in some MATE desktops}}
# Set {{ic|browser.showQuitWarning}} to '''true'''.
 
  
=== Firefox uses ugly fonts for its interface ===
+
Uncheck the "Use smooth scrolling" setting in ''Preferences > General > Browsing''.
  
If the fonts in the menu bar look ugly to you, chances are you're missing better looking fonts for Firefox to use. As a quick remedy, just install Type 1 fonts from the {{Pkg|xorg-fonts-type1}} package, available in the official repositories.
+
=== Tearing video in fullscreen mode ===
  
=== Firefox uses ugly fonts on certain webpages ===
+
If you are using the Xorg Intel or Nouveau drivers and experience tearing video in fullscreen mode, try [[Firefox tweaks#Enable OpenGL Off-Main-Thread Compositing (OMTC)]].
  
When Firefox uses bitmap fonts, it can happen that on certain webpages the fonts are very ugly (compared to Google Chrome for example):
+
=== Firefox ESR 52 looks bad ===
  
http://i.imgur.com/SMVdi.png vs http://i.imgur.com/jNmxU.png
+
Firefox 52 [https://bugzilla.mozilla.org/show_bug.cgi?id=1264079 does not support] GTK+ >=3.20 and may look unsightly as a result. A possible resolution is compiling Firefox against GTK2 instead, see {{AUR|firefox-esr-gtk2}}.
  
To fix that, just disable bitmap fonts for X:
+
=== Firefox WebRTC module cannot detect a microphone ===
$ sudo ln -s /etc/fonts/conf.avail/70-no-bitmaps.conf /etc/fonts/conf.d/
 
  
=== The menu cannot pop-up after updating to Firefox 13 ===
+
WebRTC applications for instance [https://mozilla.github.io/webrtc-landing/gum_test.html Firefox WebRTC getUserMedia test page] say that microphone cannot be found. Issue is reproducible for both ALSA or Pulseaudio setup. Firefox debug logs show the following error:
This problem is most probably related to this [https://bugzilla.mozilla.org/show_bug.cgi?id=787943 bug] and it may affect any user that sets
 
GTK_IM_MODULE=xim
 
  
while configuring their input method.
+
{{hc|1=$ NSPR_LOG_MODULES=MediaManager:5,GetUserMedia:5 firefox|2=
 +
...
 +
[Unnamed thread 0x7fd7c0654340]: D/GetUserMedia  VoEHardware:GetRecordingDeviceName: Failed 1
 +
}}
  
It appears to happen especially to those who are using [[Fcitx]] 4.0.x (at that time Fcitx only supported XIM). With newer version of Fcitx, XIM is discouraged and you should set:
+
You can try setting {{ic|media.navigator.audio.full_duplex}} property to {{ic|false}} at {{ic|about:config}} Firefox page and restart Firefox.
GTK_IM_MODULE=fcitx
 
  
For more information see the [[Fcitx]] page.
+
This can also help if you are using the PulseAudio [[PulseAudio/Troubleshooting#Enable Echo/Noise-Cancelation|module-echo-cancel]], and Firefox does not recognise the virtual echo canceling source.
  
 
== See also ==
 
== See also ==
* [http://www.mozilla.org/firefox/ Official Website]
+
 
* [http://www.mozilla.org/ Mozilla Foundation]
+
* [https://www.mozilla.org/firefox/ Official website]
* [https://wiki.mozilla.org/Firefox Firefox Wiki]
+
* [https://www.mozilla.org/ Mozilla Foundation]
 +
* [https://wiki.mozilla.org/Firefox Firefox wiki]
 
* [https://addons.mozilla.org/ Firefox Add-ons]
 
* [https://addons.mozilla.org/ Firefox Add-ons]
* [http://www.getpersonas.com/ Firefox Persona Themes]
+
* [https://addons.mozilla.org/firefox/themes/ Firefox themes]
 +
* [[Wikipedia:Mozilla Firefox]]
 +
* [http://forums.mozillazine.org/ mozillaZine] unofficial forums

Latest revision as of 11:30, 7 December 2017

Firefox is a popular open-source graphical web browser from Mozilla.

Installing

Firefox can be installed with the firefox package.

Other alternatives include:

  • Firefox Extended Support Release — long-term supported version
https://www.mozilla.org/firefox/organizations/ || firefox-esrAUR or firefox-esr-binAUR
  • Firefox Beta — cutting-edge version
https://www.mozilla.org/firefox/channel/desktop/#beta || firefox-betaAUR or firefox-beta-binAUR
  • Firefox Developer Edition — for developers
https://www.mozilla.org/firefox/developer/ || firefox-developerAUR
https://www.mozilla.org/firefox/channel/desktop/#nightly || firefox-nightlyAUR
  • Firefox KDE — Version of Firefox that incorporates an OpenSUSE patch for better KDE integration than is possible through simple Firefox plugins.
https://build.opensuse.org/package/show/mozilla:Factory/MozillaFirefox || firefox-kde-opensuseAUR

Here you can find an overview of Mozilla's releases.

There are a number of language packs available for Firefox, other than the standard English. Language packs are usually named as firefox-i18n-languagecode (where languagecode can be any language code, such as de, ja, fr, etc.). For a list of available language packs see this.

Add-ons

Firefox is well known for its large library of add-ons which can be used to add new features or modify the behavior of existing features of Firefox. You can find new add-ons or manage installed add-ons with Firefox's "Add-ons Manager."

For a list of popular add-ons, see Mozilla's add-on list sorted by popularity. See also List of Firefox extensions on Wikipedia.

Adding search engines

Search engines can be added to Firefox through normal add-ons, see this page for a list of available search engines.

A very extensive list of search engines can be found at the Mycroft Project.

Also, you can use the add-to-searchbar extension to add a search to your search bar from any web site, by simply right clicking on the site's search field and selecting Add to Search Bar...

arch-firefox-search

Install the arch-firefox-search package to add Arch-specific searches (AUR, wiki, forum, etc, as specified by user) to the Firefox search toolbar.

Configuration

Firefox exposes a number of configuration options. To examine them, enter:

about:config

in the Firefox address bar.

Once set, these affect the user's current profile, and may be synchronized across all devices via Firefox Sync. Please note that only a subset of the about:config entries are synchronized by this method, and the exact subset may be found by searching for services.sync.prefs in about:config. Additional preferences and 3rd party preferences may be synchronized by creating new boolean entries prepending the config value with services.sync.prefs.sync (documentation is still applicable.) To synchronize the whitelist for the extension NoScript:

services.sync.prefs.sync.capability.policy.maonoscript.sites

The boolean noscript.sync.enabled must be set to true to synchronize the remainder of NoScript's preferences via Firefox Sync.

Firefox also allows configuration for a profile via a user.js file: user.js kept in the profile folder, usually ~/.mozilla/firefox/xxxxxxxx.default/. For a useful starting point, see e.g custom user.js which is targeted at privacy/security conscious users.

One drawback of the above approach is that it is not applied system-wide. Furthermore, this is not useful as a "pre-configuration", since the profile directory is created after first launch of the browser. You can, however, let firefox create a new profile and, after closing it again, copy the contents of an already created profile folder into it.

Sometimes it may be desired to lock certain settings, a feature useful in widespread deployments of customized Firefox. In order to create a system-wide configuration, follow the steps outlined in Locking preferences:

1. Create /usr/lib/firefox/defaults/pref/local-settings.js:

pref("general.config.obscure_value", 0);
pref("general.config.filename", "mozilla.cfg");

2. Create /usr/lib/firefox/mozilla.cfg (this stores the actual configuration):

//
//...your settings...
// e.g to disable Pocket, uncomment the following line
// lockPref("browser.pocket.enabled", false);

Please note that the first line must contain exactly //. The syntax of the file is similar to that of user.js.

Multimedia playback

Firefox uses FFmpeg for playing multimedia inside HTML5 <audio> and <video> elements. Go to YouTube's HTML5 page, video-test page or audio-test page to check which formats are actually supported.

HTML5 DRM playback is supported by the Google Widevine CDM, it is however not enabled by default. See Preferences > General > Digital Rights Management (DRM) Content if you want to learn more.

See Firefox tweaks#Enable additional media codecs for advanced configuration and enabling support for Widevine (Netflix, Amazon Video, etc.).

Starting with version 54, Firefox uses PulseAudio for audio playback and capture. For sound to work, you need to install the pulseaudio package.

In case, for whatever reason, PulseAudio is not an option for you, you can use apulse instead. To make this work, it is necessary to exclude /dev/snd/ from Firefox' sandboxing by adding it to the comma-separated list in about:config:

security.sandbox.content.write_path_whitelist
Note: The trailing slash on /dev/snd/ is important, otherwise apulse will report "Permission denied" errors.

Open-with extension

  1. Install Open-with add-on.
  2. Open about:openwith, select Add...
  3. In the dialog select a video streaming capable player (e.g. /usr/bin/mpv).
  4. (Optional step) Add needed arguments to the player (e.g. you may want --force-window --ytdl for mpv)
  5. (Optional step) Choose how to display the dialogs using the left panel.
  6. Right click on links or visit pages containing videos. If the site is supported, the player will open as expected.

The same procedure can be used to associate video downloaders such as youtube-dl.

Dictionaries for spell checking

To enable spell checking for a specific language right click on any text field and check the Check Spelling box. To select a language for spell checking to you have right click again and select your language from the Languages sub-menu.

To get more languages just click Add Dictionaries... and select the dictionary you want to install from the list.

Alternatively, you can install the hunspell package. You also need to install dictionaries for your language, such as hunspell-fr (for the French language) or hunspell-he (for Hebrew).

By default, Firefox will try to symlink all your hunspell dictionaries in /usr/lib/firefox/dictionaries. If you want to have less dictionaries offered to you in Firefox, you can remove some of those links. Be aware that it may not stand an upgrade of Firefox.

When your default language choice does not stick, see #Firefox does not remember default spell check language.

KDE/GNOME integration

  • To bring the KDE look to GTK apps (including Firefox), install breeze-gtk and kde-gtk-config. Afterwards, go to System Settings > Application Style > GTK. Be sure to choose 'Breeze' in 'Select a GTK2/GTK3 Theme' and check 'Show icons in GTK buttons' and 'Show icons in GTK'.
  • For integration with KDE’s mime type system and file dialogs, one can use firefox-kde-opensuseAUR variant from AUR with OpenSUSE’s patches applied.
  • Install mozilla-extension-gnome-keyring-gitAUR (all-JavaScript implementation) to integrate Firefox with GNOME Keyring. To make firefox-gnome-keyring use your login keychain, set extensions.gnome-keyring.keyringName to "login" (without the double quotes) in about:config. Note the lowercase 'l' despite the the keychain name having an uppercase 'L' in Seahorse.
  • To make the left mouse button warp the scrollbar instead of the middle one on KDE, go to System Settings > Application Style > GTK and set the checkbox for "Left mouse button warps scrollbar".

Plugins

Note: Firefox has removed support for NPAPI plugins, except for Flash. Firefox ESR will support plugins until 2018.

See the main article: Browser plugins

To find out what plugins are installed/enabled, enter:

about:plugins

in the Firefox address bar or go to the Add-ons entry in the Firefox Menu and select the Plugins tab.

Tips and tricks

For general enhancements see Firefox/Tweaks, for privacy related enhancements see Firefox/Privacy.

Screenshot of webpage

Tip: Since Firefox 57, you can take a screenshot by clicking the "page actions" button (three horizontal dots in the right of the address bar), and choosing "Screenshot".

To use Firefox to take a screenshot of a webpage open the developer console using Shift+F2. Then type in:

screenshot filename

where filename is optional.

To take a screenshot of the entire page, not just the section displayed on the screen, use the --fullpage option:

screenshot --fullpage filename

Troubleshooting

Firefox startup takes very long

If Firefox takes much longer to start up than other browsers, it may be due to lacking configuration of the localhost in /etc/hosts. See Network configuration#Local network hostname resolution on how to set it up.

Font troubleshooting

See Font configuration.

Firefox has a setting which determines how many replacements it will allow from fontconfig. To allow it to use all your replacement-rules, change gfx.font_rendering.fontconfig.max_generic_substitutions to 127 (the highest possible value).

Setting an email client

Inside the browser, mailto links by default are opened by a web application such as Gmail or Yahoo Mail. To set an external email program, go to Preferences > Applications and modify the action corresponding to the mailto content type; the file path will need to be designated (e.g. /usr/bin/kmail for Kmail).

Outside the browser, mailto links are handled by the x-scheme-handler/mailto mime type, which can be easily configured with xdg-mime. See Default applications for details and alternatives.

File association

See Default applications.

Firefox keeps creating ~/Desktop even when this is not desired

Firefox uses ~/Desktop as the default place for download and upload files. To change it to another folder, set the XDG_DESKTOP_DIR option as explained in XDG user directories.

Make plugins respect blocked pop-ups

Some plugins can misbehave and bypass the default settings, such as the Flash plugin. You can prevent this by doing the following:

  1. Type about:config into the address bar.
  2. Right-click on the page and select New > Integer.
  3. Name it privacy.popups.disable_from_plugins.
  4. Set the value to 2.

The possible values are:

  • 0: Allow all popups from plugins.
  • 1: Allow popups, but limit them to dom.popup_maximum.
  • 2: Block popups from plugins.
  • 3: Block popups from plugins, even on whitelisted sites.

Middle-click errors

Note: This has been fixed in Firefox 57.[1]

A common error message you can get while using the middle mouse button in Firefox is:

The URL is not valid and cannot be loaded.

Another symptom is that middle-clicking results in unexpected behavior, like accessing a random web page.

The reason stems from the use of the middle mouse buttons in UNIX-like operating systems. The middle mouse button is used to paste whatever text has been highlighted/added to the clipboard. Then there is the possibly conflicting feature in Firefox, which defaults to loading the URL of the corresponding text when the button is depressed. This can be easily disabled by going to about:config and setting the middlemouse.contentLoadURL option to false.

Alternatively, having the traditional scroll cursor on middle-click (default behavior on Windows browsers) can be achieved by searching for general.autoScroll and setting it to true.

Backspace does not work as the 'Back' button

According to mozillaZine, the Backspace key was mapped based on which platform the browser was running on. As a compromise, this preference was created to allow the Backspace key to either go back/forward, scroll up/down a page, or do nothing.

To make Backspace behave like the back button type about:config in the address bar and search for the property browser.backspace_action, then set it to 0.

You can also set the property browser.backspace_action to 1 so the Backspace key will scroll up the page, whereas Shift+Backspace scrolls down. Setting this property to any other value will leave the key unmapped (Arch Linux defaults to 2, in other words, it is unmapped by default).

Firefox does not remember login information

It may be due to a corrupted cookies.sqlite file in Firefox's profile folder. In order to fix this, just rename or remove cookie.sqlite while Firefox is not running.

Open a terminal of choice and type the following:

$ rm -f ~/.mozilla/firefox/<profile id>.default/cookies.sqlite

The profile id is a random 8 character string.

Restart Firefox and see if it solved the problem.

Unreadable input fields with dark GTK+ themes

Merge-arrows-2.pngThis article or section is a candidate for merging with Firefox tweaks#Appearance.Merge-arrows-2.png

Notes: Anything on that page might be in troubleshooting section as well, so let us keep the info in one place. (Discuss in Talk:Firefox#)

When using a dark GTK+ theme, one might encounter Internet pages with unreadable input and text fields (e.g. Amazon can have white text on white background). This can happen because the site only sets either background or text color, and Firefox takes the other one from the theme.

This can be prevented by setting browser.display.use_system_colors = false in about:config, which will stop Firefox using your theme's colors in web pages.

The extension Text Contrast for Dark Themes sets the other color as needed to maintain contrast.

Another workaround is to explicitly set standard colors for all web pages in ~/.mozilla/firefox/xxxxxxxx.default/chrome/userContent.css or using the stylus add-on.

The following sets input fields to standard black text / white background; both can be overridden by the displayed site, so that colors are seen as intended:

Note: If you want urlbar and searchbar to be white remove the two first :not css selectors.
input:not(.urlbar-input):not(.textbox-input):not(.form-control):not([type='checkbox']):not([type='radio']), textarea, select {
    -moz-appearance: none !important;
    background-color: white;
    color: black;
}

#downloads-indicator-counter {
    color: white;
}

Alternatively, force Firefox to use a light theme (e.g. "Adwaita:light"):

  1. Copy /usr/share/applications/firefox.desktop to ~/.local/share/applications/firefox.desktop and replace all occurrences of Exec=firefox with Exec=env GTK_THEME=Adwaita:light firefox.
  2. Close all running instances of Firefox and restart your window manager/desktop environment.

"Do you want Firefox to save your tabs for the next time it starts?" dialog does not appear

From the Mozilla support site:

  1. Type about:config in the address bar.
  2. Set browser.warnOnQuit to true.
  3. Set browser.showQuitWarning to true.

Silently fails when installing desktop apps from marketplace

Installation of apps from Firefox OS Marketplace will silently fail if there is no ~/.local/share/applications folder.

Firefox detects the wrong version of my plugin

When you close Firefox, the latter saves the current timestamp and version of your plugins inside pluginreg.dat located in your profile folder, typically in ~/.mozilla/firefox/xxxxxxxx.default/.

If you upgraded your plugin when Firefox was still running, you will thus have the wrong information inside that file. The next time you will restart Firefox you will get that message Firefox has prevented the outdated plugin "XXXX" from running on ... when you will be trying to open content dedicated to that plugin on the web. This problem often appears with the official Adobe Flash Player plugin which has been upgraded while Firefox was still running.

The solution is to remove the file pluginreg.dat from your profile and that is it. Firefox will not complain about the missing file as it will be recreated the next time Firefox will be closed. [2]

Javascript context menu does not appear on some sites

In about:config, unset the dom.w3c_touch_events.enabled setting.

Firefox does not remember default spell check language

The default spell checking language can be set as follows:

  1. Type about:config in the address bar.
  2. Set spellchecker.dictionary to your language of choice, for instance en_GB.
  3. Notice that the for dictionaries installed as a Firefox plugin the notation is en-GB, and for hunspell dictionaries the notation is en_GB.

When you only have system wide dictionaries installed with hunspell, Firefox might not remember your default dictionary language settings. This can be fixed by having at least one dictionary installed as a Firefox plugin. Notice that now you will also have a tab Dictionaries in add-ons.

Related questions on the StackExchange platform: [3], [4], [5]

Related bug reports: Bugzilla 776028, Ubuntu bug 1026869

Some MathML symbols are missing

You need some Math fonts, namely Latin Modern Math and STIX (see this MDN page: [6]), to display MathML correctly.

In Arch Linux, these fonts are provided by texlive-core and texlive-fontsextra, but they are not available to fontconfig by default. See TeX Live#Fonts for details. You can also try other Math fonts.

Picture flickers while scrolling

Tango-inaccurate.pngThe factual accuracy of this article or section is disputed.Tango-inaccurate.png

Reason: Most likely a driver issue, useless without reference (Discuss in Talk:Firefox#)
Note: Problem available in some MATE desktops

Uncheck the "Use smooth scrolling" setting in Preferences > General > Browsing.

Tearing video in fullscreen mode

If you are using the Xorg Intel or Nouveau drivers and experience tearing video in fullscreen mode, try Firefox tweaks#Enable OpenGL Off-Main-Thread Compositing (OMTC).

Firefox ESR 52 looks bad

Firefox 52 does not support GTK+ >=3.20 and may look unsightly as a result. A possible resolution is compiling Firefox against GTK2 instead, see firefox-esr-gtk2AUR.

Firefox WebRTC module cannot detect a microphone

WebRTC applications for instance Firefox WebRTC getUserMedia test page say that microphone cannot be found. Issue is reproducible for both ALSA or Pulseaudio setup. Firefox debug logs show the following error:

$ NSPR_LOG_MODULES=MediaManager:5,GetUserMedia:5 firefox
...
[Unnamed thread 0x7fd7c0654340]: D/GetUserMedia  VoEHardware:GetRecordingDeviceName: Failed 1

You can try setting media.navigator.audio.full_duplex property to false at about:config Firefox page and restart Firefox.

This can also help if you are using the PulseAudio module-echo-cancel, and Firefox does not recognise the virtual echo canceling source.

See also