How can I use two Firefox profiles?
How to set up different Firefox profiles for the same Ubuntu user and the same Firefox installation
Excerpt of the command-line options from man firefox
:
-ProfileManager
Start the profilemanager. Use this to choose the profile you would like to
run firefox with. You will need to also use -no-remote if there is already
a running firefox instance.
-P profile
Start firefox with the profile named profile. Will start the profile
manager if a valid profile name is not specified. You will need to also
use -no-remote if there is already a running firefox instance.
So you just need to start Firefox with one of those parameters by either using a terminal, the Alt+F2 HUD, from the launcher icon's context menu after editing its configuration file, which I will describe below.
Set up a new profile:
Launch Firefox's ProfileManager from the terminal or with Alt+F2:
firefox -ProfileManager
Rename your current profile
default
toprofile1
(or whatever you like, you don't even have to rename it, but I will do in this guide for clarification - you just have to replaceprofile1
with your exact name wherever it occurs!) by clicking on Rename Profile....Create a new profile with the wizard by clicking on Create Profile.... It will show you an info window first, read it and click Next. The second window will ask you to enter a name for the profile, enter
profile2
here (or replace it wherever it occurs in this guide with exactly what you entered instead). I would recommend you not to change the folder where the profile will be stored in, unless you have a good reason to do so. Click Finish.Exit the ProfileManager.
Set up your launcher icon to access those profiles from the context menu:
Copy the original launcher file (which is owned by root, used system-wide and will get replaced with the next update) to your home folder:
cp /usr/share/applications/firefox.desktop ~/.local/share/applications/firefox.desktop
Edit the copy e.g. with either Gedit (GUI) or Nano (terminal):
gedit ~/.local/share/applications/firefox.desktop nano ~/.local/share/applications/firefox.desktop
Search for the line:
Actions=NewWindow;NewPrivateWindow;
and add new context menu action identifiers like this (example names, but only used within the file, you won't see them anywhere else):
Actions=NewWindow;NewPrivateWindow;Profile1;Profile2;ProfileManager;
Insert the code snippet below at the end of the file, you may vary the
Name=
value and add as many translations as you want (example for German [de] is given). TheExec=firefox -P ...
lines have to contain the exact (case-sensitive) name of the profiles you created in the profile manager! The-no-remote
flag allows multiple firefox profiles to run at the same time. Also the last word in the lines[Desktop Action ...]
has to exactly match the keys you added to theActions=
line above.[Desktop Action Profile1] Name=Run Firefox with profile 1 Name[de]=Firefox mit Profil 1 starten Exec=firefox -P profile1 -no-remote OnlyShowIn=Unity; [Desktop Action Profile2] Name=Run Firefox with profile 2 Name[de]=Firefox mit Profil 2 starten Exec=firefox -P profile2 -no-remote OnlyShowIn=Unity; [Desktop Action ProfileManager] Name=Open Firefox profile manager Name[de]=Firefox Profilmanager öffnen Exec=firefox -ProfileManager -no-remote OnlyShowIn=Unity;
Now if you want to specify a permanent default profile for when you left-click the launcher icon (otherwise the profile you last used through the ProfileManager with the respective checkbox ticked gets launched), you also have to edit the main
Exec=
line. It's the topmost and should look like this:Exec=firefox %u
Edit it to look like the one below, maybe replacing
profile1
with the correct default profile name you wish.Exec=firefox -P profile1 %u
You have to reboot (maybe logging out and back in is also enough?) before the system realizes that you want to override the system-wide
firefox.desktop
file and use your personal and customized one. Or you can use the commanddesktop-file-install --dir=~/.local/share/applications ~/.local/share/applications/firefox.desktop
to re-initiate the launcher file. After that, enjoy your multiple profiles!
I think Firefox Profile Switcher is your answer!
You can activate it with the option "-P" like this on the commandline
firefox -P
You can then create Profiles for each task, all in the same homefolder (if you must).
To have them all running at the same time you'll also need to add --new-instance
to the command.
And finally, you can select one of the predefined themes via the Customize Menu and Toolbars option :
Open the customization dialog and on the lest you'll see Themes as drop down menu.
You'll have to this for each social media account, I guess.
You can now either place an icon on the launcher that invokes
firefox -P --new-instance
or write a small wrapper script and replace the symlinks.
sudo nano /usr/local/bin/firefox
enter the following with the correct paths
#!/bin/bash
/usr/lib/firefox/firefox -P --new-instance
make it executable
sudo chmod +x /usr/local/bin/firefox
As pointed out by the user muru in the comments below, it is not necessary to replace the original link, as originally suggested
The path to the firefox link might differ on your OS, you can find it out with
which firefox
then remove the old link
sudo unlink /usr/bin/firefox
link it to the correct path
sudo ln -s /usr/local/bin/firefox /usr/bin/firefox
I would propose the Multi-Account Containers extension, an official Mozilla-made addon. The use-case you described is precisely why it exists:
(source: mozilla.net)
She can create containers for each one of her account sets, and choose an accent color. This accent color will show up below the title of every tab, indicating which container it is on:
(nevermind the dark theme)
Tabs by default do not open in a container, you create them by long-pressing the "new tab" button.
Not only are the containers easily identified, tabs are just normal tabs, you can put them all on the same window. (with multiple profiles, you would not be able to have tabs of 2 profiles in one window).
Additionally, the browser configuration and installed plugins are still the same (since it is just one browser), which reduces the "WTF" factor.