Je connaissais depuis longtemps l’existence des profils de firefox mais je n’en ai découvert qu’aujourd’hui la simplicité et la praticité (si si, ce mot existe bel et bien).
Ce que je propose dans cet article n’est valable que pour Ubuntu 11.10 et supérieurs. Cela permet à partir de l’icône firefox du lanceur d’accéder à une quicklist contenant vos différents profils. Exemple en image :
À quoi servent ces profils ?
Pour faire court, c’est comme les sessions d’utilisateurs mais que pour firefox. À la création d’un nouveau profil, on obtient un firefox tout neuf, vierge de tout historique, de toute extension ou autres données. Dès lors, plusieurs utilisations sont envisageables :
- plusieurs personnes aux extensions et marques-pages différents utilisent la même session sur l’ordinateur et se partagent le même navigateur (mon cas)
- créer un profil spécifique à des fins de test (pour les développeurs web)
- si l’on utilise beaucoup d’extensions gourmandes mais de manière occasionnelles, des profils aux extensions thématisées peuvent être utilisés …
Comment gérer ses profils, je ne vois rien dans les préférences ?
Il suffit d’ouvrir un terminal (ctrl+alt+T) et d’y taper :
firefox -P
(NB: il faut que firefox soit totalement fermé)
On obtient alors la fenêtre suivante (non traduite chez moi) avec pour seul profil, celui par défaut. Je l’ai renommé LySioS et ai rajouté un deuxième profil Emilie.
Dorénavant, à chaque fois que firefox sera lancé, cette fenêtre vous invitera à choisir quel profil lancer. On peut cocher la case Don’t ask at startup pour ne pas être importuné à chaque lancement mais on perd le choix du profil.
Pour lancer directement un profil sans passer par cette fenêtre, deux solutions sont possibles. Créer un lanceur différent pour chaque profil ou tout réunir dans le lanceur d’origine grâce à la quicklist.
1ère solution: Ouvrir firefox directement avec le profil voulu via un lanceur spécifique
Cela peut se faire facilement. Il suffit de créer un lanceur avec cette commande :
firefox -no-remote -P profil-voulu
L’argument -no-remote indique à firefox que même si une instance de ce dernier est déjà ouverte, il doit en ouvrir une autre différente, avec le profil spécifié après l’argument -P.
Chez moi, cela donne : firefox -no-remote -P LySioS
et firefox -no-remote -P Emilie
Nous voilà donc avec autant de lanceurs que de profils. Cela peut être avantageux pour bien différencier les profils ouverts (surtout si chaque lanceur a une icône particulière) mais peut surcharger la barre des lanceurs d’Unity. Chez moi, j’ai tout réuni dans le même lanceur avec la méthode suivante.
2ème solution: Un lanceur pour les gouverner tous (quicklist power)
La méthode n’est pas très compliquée. Je suis parti du lanceur originel de firefox pour rajouter manuellement les profils supplémentaires. À la base, je m’étais servi de MyUnity qui permet de modifier les quicklist d’un lanceur mais ça n’a pas marché. Ensuite, j’avais copié et modifié le lanceur de firefox dans ~/.local/share/applications mais ça ne marchait pas mieux. J’ai donc remplacé le lanceur originel par le mien modifié, et ça marche. Attention, car du coup, ce lanceur modifié sera le même pour toutes vos sessions utilisateurs d’Ubuntu.
C’est parti. La commande suivante permet de copier le lanceur dans notre dossier personnel et de l’ouvrir avec l’éditeur de texte gedit :
cp /usr/share/applications/firefox.desktop ~ && gedit firefox.desktop
Il faut aller à la ligne 156 et remplacer Actions=NewWindow
par Actions=NewWindow;Profil1;Profil2
Cela veut dire que la quicklist de firefox sera composée de 3 actions. La première NewWindow permet d’ouvrir une nouvelle fenêtre. Les deux autres que j’ai rajoutées ouvriront les profils respectifs.
Ensuite, on se dirige à la fin du fichier pour rajouter le détail des actions précédemment indiquées. Copiez-collez et modifiez selon vos besoins :
[Desktop Action Profil1]
Name=Open a New Window for LySioS
Name[fr]=Ouvrir le profil LySioS
Exec=firefox -no-remote -P LySioS
OnlyShowIn=Unity;
[Desktop Action Profil2]
Name=Open a New Window for Emilie
Name[fr]=Ouvrir le profil Emilie
Exec=firefox -no-remote -P Emilie
OnlyShowIn=Unity;
Enregistrez vos modifications.
Ensuite, on déplace le fichier modifié à la place de l’original.
sudo cp firefox.desktop /usr/share/applications && rm firefox.desktop
Pour que les changements soient pris en compte, on relance Unity :
unity --reset