Introduction
Mozilla Firefox est un navigateur libre développé par la fondation Mozilla. Il utilise le moteur de rendu Gecko, le seul concurrent au moteur de Google Chrome sur le marché des moteurs web modernes.
Malheureusement Firefox perd constamment des parts de marché face aux autres navigateurs. Selon radar.cloudflare.com, Firefox ne représenterait que 6,40% du traffic.
Pourtant Firefox dispose de beaucoup d’atouts pour qui souhaite un navigateur moderne, éthique et respectueux de la vie privée.
Je présente dans cet article les extensions indispensables que j’utilise, deux fonctionnalités de Firefox méconnues mais très pratiques ainsi que certaines options de configuration que j’applique.
Extensions
Confidentialité / Sécurité
Excellent “adblock”, peu gourmand en ressources et régulièrement mis à jour. C’est plus précisément un bloqueur de contenu, bloquant aussi bien des scripts javascript que des images à partir de listes prédéfinies.
Ces listes peuvent être maintenues par les contributeurs de uBlock ou provenir de fournisseurs externes comme Adguard ou Fanboy.
Il est aussi possible d’activer le mode avancé permettant d’avoir une interface proche d’uMatrix (extension du même développeur qu’uBlock Origin, encore plus avancée mais plus complexe).
Cookie AutoDelete (Code source)
Extension qui supprime automatiquement les cookies selon certaines règles.
Concernant ma configuration, en plus d’activer le nettoyage automatique (option Activer le nettoyage automatique) je désactive les notifications (option Afficher la notification après le nettoyage automatique décochée), active toutes les Autres options de nettoyage des données de navigation et active la compatibilité avec l’extension Multi-Account Containers (voir plus bas, option Activer la prise en charge des onglets contextuels de Firefox). Le reste des paramètres restent inchangés de ceux par défaut.
Héberge localement différents fichiers javascript couramment présents sur les sites internet, permettant ainsi d’économiser de la bande passante. Les fichiers fournis par Decentraleyes comprennent Jquery, AngularJS ou encore BackboneJS.
HTTPS Everywhere (Code source)
Projet de l’EFF, cette extension force l’activation du protocole HTTPS sur les sites supportés.
À partir de Firefox 83, il existe dans les paramètres de Firefox l’option “Mode HTTPS uniquement” permettant de forcer l’utilisation d’HTTPS sur tous les sites. Cela ne rend pas pour autant obsolète l’extension HTTPS Everywhere, qui ne forcera HTTPS que sur les sites explicitement supportés. Personnellement, je continue d’utiliser HTTPS Everywhere, j’utilise un certaine nombre de services web sur mon réseau local qui restent en HTTP uniquement et qui demanderaient une confirmation à chaque accès si j’utilisais le mode HTTPS uniquement de Firefox.
Apparence
Dark Background and Light Text (Code source)
Extension qui active un thème sombre sur tous les sites à partir de règles CSS. Peut ne pas marcher sur tous les sites ou même rendre certains éléments illisibles, mais elle fonctionne généralement très bien.
Il existe aussi Dark Reader, une extension similaire plus personnalisable mais plus gourmande en ressources.
Productivité
Firefox Multi-Account Containers (Code source)
Extension créée par Mozilla permettant la création de conteneurs d’onglets. Chaque conteneur sera indépendant des autres et possédera ses propres cookies et données de site. Il est possible d’assigner des sites internet à des conteneurs afin que les cookies d’un site internet soient actifs uniquement dans le conteneur assigné.
Cette extension se marie très bien avec l’extension Cookie AutoDelete citée précédemment. Il est aussi possible de synchroniser ses conteneurs et la liste des sites à ouvrir dans un conteneur spécifique avec la fonction Firefox Sync.
Je paramètre généralement les conteneurs suivants :
- Conteneurs avec suppression automatique des données (aucune règle dans Cookie AutoDelete) :
- Achats en ligne : sites d’e-commerce
- Par défaut : conteneur par défaut
- Conteneurs avec données sauvegardées (règles pour les sites concernés renseignées dans Cookie AutoDelete) :
- Personnel : sites visités régulièrement pour lesquelles je souhaite sauvegarder les données de session
- Local : sites de mon réseau local
- Google : sites Google, principalement Youtube
- Microsoft : sites Microsoft, principalement Outlook
- Facebook : Facebook
- Linkedin : Linkedin
- Twitter : Twitter
Pour ouvrir un onglet d’un certain conteneur, il suffit de cliquer longuement sur le bouton nouvel onglet ou de le faire via le widget de l’extension. On peut également ouvrir un lien dans un onglet contextuel en faisant clic droit > Ouvrir le lien dans un nouvel onglet contextuel.
L’assignation d’un site internet à un conteneur peut se faire dans le widget de l’extension avec l’option Always open this site in…. Il est aussi possible d’ajouter au menu contextuel (clic droit) des favoris l’ouverture dans un onglet contextuel. Cette option un peu obscure se trouve dans Gestionnaire de modules complémentaires > Firefox Multi-Account Containers > Préférences > Enable Bookmarks Menus.
Plus d’informations sont disponibles sur la page dédiée aux conteneurs du site d’aide de Mozilla.
- Conteneurs avec suppression automatique des données (aucune règle dans Cookie AutoDelete) :
Extension très pratique permettant de maximiser images et vidéos en passant simplement la souris dessus. Il est possible de redimensionner l’aperçu (touche z à l’affichage des images puis molette de la souris), de changer son orientation (touche r) et même de naviguer entre plusieurs images dans le cas d’albums (molette de la souris).
KeePassXC-Browser (Code source)
À utiliser avec le gestionnaire de mots de passe KeepassXC pour activer l’auto-complétion des mots de passe. Il est nécessaire d’activer l’intégration aux navigateurs dans les paramètres de KeepassXC. Il est aussi nécessaire de renseigner l’attribut URL lors de la création de mots de passe.
KeepassXC-browser peut détecter automatiquement les mots de passe lors de la connexion aux sites et les ajouter à la base de données associée.
Tree Style Tab est une extension permettant d’afficher les onglets sous forme d’arbre à partir d’un menu vertical. Le widget de l’extension permet d’activer l’extension et son menu.
C’est une extension qui demande un certain temps d’adaptation, je ne l’active que lorsque je commence à avoir un nombre d’onglet important.
Vimium est une extension permettant d’utiliser des raccourcis clavier inspirés de ceux de l’éditeur de texte vim pour naviguer. En maîtrisant les bases, il est déjà possible d’augmenter significativement sa vitesse de navigation.
- j et k pour se déplacer sur la page (h et l pour se déplacer à gauche ou à droite).
- J et K pour passer d’un onglet à un autre.
- H et L pour reculer ou avancer d’une page.
- gg et G pour aller respectivement tout en haut et tout en bas d’une page.
- f pour ouvrir un nouvel onglet à partir d’indices placés sur tous les liens visibles (F pour ouvrir dans un nouvel onglet).
- i pour entrer en mode insertion et désactiver temporairement les raccourcis de Vimium (Echap pour revenir au mode normal).
- t pour ouvrir un nouvel onglet
- x pour fermer un onglet, X pour annuler la dernière fermeture d’onglet.
- ? pour avoir une page d’aide présentant les raccourcis disponibles.
En alternatives on peut citer Vim Vixen, Tridactyl, ou encore Saka Key.
To Google Translate (Code source)
Extension bien pratique permettant d’ajouter des raccourcis vers Google Translate en ouvrant le menu contextuel sur une sélection de texte. Attention plusieurs extensions portent le même nom, je parle de la version développée par Juan Escobar.
Personnalisation de l’interface
Une des fonctionnalités vraiment unique de Firefox est la possibilité de modifier en profondeur son interface. Cette fonctionnalité est disponible dans le menu Personnaliser… disponible dans le menu des paramètres Firefox ou en faisant un clic droit au niveau de la barre d’onglets.
Parmi les barres constituant l’interface de Firefox, toutes sauf la barre de menu sont modifiables. Concernant leur affichage, il est possible d’afficher ou non la barre de menu et la barre personnelle, les deux autres étant toujours actives.
Les éléments d’interface disponibles peuvent provenir de Firefox ou des extensions installées. Ainsi les icônes de Firefox comme Paramètres, Accueil, Téléchargements ou les icônes des extensions peuvent être placés n’importe où sur les barres citées précédemment. Certains éléments comme les onglets, la barre d’URL ou les boutons de navigation ne peuvent pas être supprimés mais peuvent être bougés.
L’élément Espace flexible est le seul élément ne remplissant qu’une fonction esthétique : il sert à remplir un espace vide (d’ailleurs, la disposition par défaut de Firefox utilise cet élément de chaque côté de la barre d’URL).
En bas à gauche se trouvent des options permettant d’ajouter des barres d’outils (barre de menu, barre personnelle), de changer le thème (par défaut, clair, sombre ou afterglow) ou de changer la densité de l’interface (du plus petit au plus grand, compacte, normale, tactile).
Configuration par défaut
4 thèmes possible
Défaut (sous Linux, dépend du thème GTK)
Sombre
Clair
Afterglow
Si vous voulez allez plus loin dans le choix des couleurs du thème Firefox, il est possible de télécharger des thèmes sur addons.mozilla.org et même de créer facilement le sien sur color.firefox.com.
3 niveaux de densité
Compacte
Normale
Tactile
Ma configuration
La configuration que j’utilise est faite avec les options suivantes :
- densité “Compacte”
- thème “Sombre”
- pas de barre de menu, pas de barre personnelle
Les éléments de la barre personnelle (contenant les favoris) sont placés au niveau de la barre d’URL, et les éléments des extensions sont déplacés sur la barre d’onglets (lors de l’installation d’une extension ils se mettent automatiquement à droite de la barre d’URL).
Une astuce pour n’avoir que les favicons des favoris est de supprimer le titre de ceux-ci. N’oubliez pas que pour que les favoris soient dans les éléments de la barre personnelle, vous devrez sélectionner le dossier barre personnelle à l’enregistrement.
Il est possible d’aller encore plus loin dans la personnalisation de l’interface de Firefox en modifiant le fichier userChrome.css (ici le terme Chrome est une référence au métal brillant et non au navigateur concurrent qui d’ailleurs ne permet pas de modification aussi poussée de son interface). Il est possible de voir certains exemples de configuration avancée sur le subreddit FirefoxCSS.
Moteur de recherche en mot clé
Une autre fonctionnalité moins connue est la possibilité d’ajouter des moteurs de recherche et d’y ajouter un mot-clé.
La manière la plus simple d’ajouter un moteur de recherche à Firefox est de faire un clic droit dans n’importe quel champ de recherche et de sélectionner l’option Ajouter un mot-clé pour cette recherche.
Il vous sera ensuite demandé de choisir un mot-clé pour cette recherche, par exemple wiki. Une fois le moteur ajouté, une recherche de wiki linux redirigera automatiquement vers la recherche du mot “linux” sur ce moteur de recherche.
Cette fonctionnalité est équivalente à celle des bangs de DuckDuckGo ou des qwicks de Qwant (il faut préfixer le mot-clé du moteur de recherche de ! pour ddg, et de ! ou & pour qwant). Le désavantage de la fonctionnalité de Firefox comparée à celle intégrée à DuckDuckGo ou Qwant est la nécessité d’ajouter manuellement chaque moteur de recherche. En revanche, la recherche sera plus rapide car la résolution des URLs s’effectuera en local au lieu d’être envoyée sur un serveur distant, et vous aurez le choix du mot-clé utilisé pour la recherche.
Intérieurement, ces moteurs de recherche ne sont que de simples marques-pages, avec des attributs un peu différents :
- l’attribut URL contient %s qui sera remplacé par la recherche à son utilisation
- l’attribut mot-clé est renseigné
Il est même possible d’aller plus loin en utilisant cette fonctionnalité comme constructeur d’URLs. Prenons l’exemple de Lastfm, un site internet permettant d’enregistrer son historique d’écoutes et proposant des statistiques et recommandations associées.
Une recherche du groupe Radiohead sur Lastfm se fait via l’URL https://www.last.fm/fr/search?q=radiohead. Dans ce cas-ci, la recherche n’est pas ambigüe et le groupe cherché est en première position dans la liste des résultats. Puisque nous connaissons déjà le nom du groupe, il serait plus rapide d’aller directement sur la page de l’artiste sans passer par la page de recherche en utilisant l’URL https://www.last.fm/fr/music/radiohead.
De la même manière que précédemment il est donc possible d’utiliser des raccourcis pour reconstruire directement l’URL de l’artiste. J’utilise personnellement les mots-clés lfm et lfmd (d pour direct) pour respectivement utiliser la recherche de Lastfm ou accéder directement à une page artiste.
- Recherche Lastfm : lorsque je ne suis pas sûr du nom de l’artiste, ou que son nom contient des caractères spéciaux :
- URL : “https://www.last.fm/fr/search?q=%s”
- Mot-clé : lfm
- Recherche Lastfm directe : lorsque je connais le nom de l’artiste et que ce nom est simple :
- URL : “https://www.last.fm/fr/music/s”
- Mot-clé : lfmd
Paramètres
Voici les principaux paramètres que j’applique dans les options de Firefox (page about:preferences). J’utilise la fonction Firefox Sync pour sauvegarder et synchroniser ces paramètres.
Général
- Téléchargements - Toujours demander où enregistrer les fichiers
J’active cette option car je préfère choisir systématiquement l’emplacement de sauvegardes des fichiers que je télécharge plutôt que tout soit enregistré dans le dossier Téléchargements.
- Utiliser le défilement automatique - Activé
Permet d’utiliser le clic molette pour défiler dans une page.
- Utiliser le défilement doux - Désactivé
Ce paramètre activé par défaut rend le défilement des pages “fluide”. Cela est utile si vous utilisez un touchpad mais rend la navigation assez désagréable lors du défilement avec la molette de la souris.
Vie privée et sécurité
- Protection stricte
Firefox avertit que certains sites pourraient ne pas bien fonctionner, mais je n’ai personnellement jamais eu de problème.
- Ne pas me pister - Toujours
Envoie un signal DNT (Do Not Track) aux sites internet. Paradoxalement, cette fonctionnalité peut favoriser le pistage des sites internet puisque assez peu d’utilisateurs utilisent cette option. Je l’active par principe.
- Identifiants et mots de passe - Tout décoché
Sert à désactiver le gestionnaire de mots de passe intégré à Firefox.
Fichier user.js
En dehors des options disponibles dans les paramètres de Firefox, il en existe d’autres accessibles uniquement via la page about:config de Firefox (plus précisément, tous les paramètres de Firefox sont présents sur about:config même ceux présentés précédemment).
Même s’il est possible de changer manuellement les options via cette page, il est aussi possible de créer un fichier user.js contenant ces paramètres avec la syntaxe user_pref(“clé”, valeur). Ce fichier doit être placé dans le dossier du profil firefox actif. Sous Linux ce dossier devrait se trouver à un emplacement ressemblant à ~/.mozilla/firefox/1234.default-release/. Une fois le fichier placé au bon endroit, un redémarrage du navigateur suffira à appliquer les nouveaux paramètres.
Dans les exemples ci-dessous, je n’ai sélectionné que les options qui me paraissaient les plus importantes. Vous pouvez trouver l’intégralité de mon fichier user.js sur github.
Comportement des onglets
Lors du chargement d’un nouvel onglet, celui-ci s’ajoutera à la droite de l’onglet courant plutôt que tout à la fin de la liste des onglets.
user_pref("browser.tabs.insertAfterCurrent", true);
L’option Recherche du menu contextuel ouvrira un onglet en arrière plan.
user_pref("browser.search.context.loadInBackground", true);
Lors de l’ouverture en arrière-plan d’un favori (avec le clic molette par exemple), celui-ci s’ouvrira en arrière-plan.
user_pref("browser.tabs.loadBookmarksInBackground", true);
Lors de l’ouverture d’un favori contenu dans un dossier dans un nouvel onglet (avec le clic molette par exemple), cela ne fermera pas le dossier.
user_pref("browser.bookmarks.openInTabClosesMenu", false);
Interface
Surligne toutes les correspondances trouvées lors d’une recherche.
user_pref("findbar.highlightAll", true);
Affiche les urls complètes (ne cache pas les préfixes http/https).
user_pref("browser.urlbar.trimURLS", false);
Lors du passage en plein écran, ne cache pas les barres d’interface.
user_pref("browser.fullscreen.autohide", false);
Lors du passage en plein écran, n’affiche pas le message d’avertissement.
user_pref("full-screen-api.warning.timeout", 0);
Un double clic dans la barre d’URL sélectionnera les mots de l’URL et non pas toute la ligne (qui se sélectionnera avec 3 clics avec cette option activée).
user_pref("browser.urlbar.doubleClickSelectsAll", false);
Confidentialité / Sécurité
Désactive le remplissage automatique des formulaires.
user_pref("browser.formfill.enable", false);
Bloque le rafraîchissement automatique de certains sites internet.
user_pref("accessibility.blockautorefresh", true);
Désactive l’accès au presse-papiers par les sites internet.
user_pref("dom.event.clipboardevents.enabled", false);
Protège contre le fingerprinting (plus d’informations ici).
user_pref("privacy.resistFingerprinting", true);
Isole les cookies à leur domaine principal et désactive les cookies tierces partie. Ces options peuvent avoir des effets indésirables sur certains sites internet mais je n’ai personnellement jamais rencontré de problème.
user_pref("privacy.firstparty.isolate", true); user_pref("privacy.firstparty.isolate.restrict_opener_access", true); user_pref("network.cookie.cookieBehavior", 1);
Force l’affichage des codes unicodes des caractères non-latins dans les URLs. Ceux ci peuvent être utilisés par des noms de domaines malicieux afin de se déguiser en sites internet connus (plus d’informations ici).
user_pref("network.IDN_show_punycode", true);
Une remarque, un commentaire ? Réagissez sur Mastodon !
>> Home