Running multiple Firefox versions concurrently

Written at 18:14, on Thursday 2 February 2006. Tags: webdesign .

A little known feature of Mozilla Firefox, which is particularly useful for web developers who wish to check their site in both Firefox 1.0 and Firefox 1.5, is the ability to run multiple Firefox versions next to each other concurrently. The trick is to start each version with a different profile so that they won’t mess up your settings and extensions.

My main (development) browser is Firefox 1.5, in which I have installed all sorts of useful webdeveloper extensions, bookmarks etc. Most of the time, I also have a couple of windows with 10-20 tabs open, full of research and reading material from my blogs. To make sure I don’t lose them when Firefox crashes, I have the Session Saver extension installed, a must-have (and should be built-in if Firefox wishes to be a more humane software application. Running Firefox-1.0 disables those extensions and messes up with my sessions. Also, I can’t run them next to each other, which is useful to try debugging complicated CSS which affects one version but not the other.

To be able to run Firefox-1.0 next to it, I downloaded it and put it in /Applications as Firefox-1.0. To start it up, first create a new profile for it. Makes sure you quit all running Firefox instances and backup your Profiles folder. You’ll have to open the Terminal for it and enter the following command:

/Applications/ -Profilemanager

This will bring up the Profile manager for Firefox. You should already have a default profile which you don’t want to mess up, so just hit “Create profile” to start from scratch. Give it a useful name, such as “Firefox-1.0”. This will be your default profile for Firefox-1.0 and will be created in your profiles directory, which is at ~/Library/Application Support/Firefox/Profiles. The new profile will unfortunately be set as your default profile for Firefox-1.5 as well, so fire up your favorite text editor to change ~/Library/Application Support/Firefox/profiles.ini and find the line with:


Make sure that it reads to equal 0 because that was your original profile. Now you can start Firefox-1.5 as usual.

To startup Firefox-1.0, return to the Terminal and run (all on one line):

/Applications/ -P Firefox-1.0 &

Firefox 1.0 will start with the Firefox-1.0 profile. Bookmarks, sessions, history, cookies, extensions – everything – will be stored in the Firefox-1.0 profile, so you can safely use it without affecting the other profile. You can even run Firefox-1.5 at the same time. The only drawback of this method is that you have to start Firefox-1.0 from the Terminal. I tried changing the to add -P firefox-1.0 inside the string <string>firefox-bin</string>, which seems to be responsible for running the correct program, but it gave me an error. Suggestions for improving this are greatly appreciated.

What about Windows, you say? The same method will work, although the paths will be different, of course. It’s easier to run though, because you can create a shortcut in your Startmenu which calls the right profile. You can also try running a version of PortableFirefox, which is optimized to be a self-contained version and can be run from an USB-drive or even your iPod.

Comments closed |

From the portfolio

  • Nightflight homepage

About this website

My name is Jeroen Coumans, I'm a freelance web designer, front-end developer and Drupal ninja from the Netherlands. I love to create beautiful, usable and accessible websites. On this website, you can find my portfolio as well as my personal weblog. Interested in hiring me? I'd love to hear from you.

After completing my BA in Arts and Culture I'm now doing a MA in Communication and Multimedia Design. More …


Issuu and Smart Look for a better PDF viewing experience

A plugin that embeds PDF's, Word and Powerpoint files in a very cool, usable and fast Flash interface.

Visit site …

Palm Pre: everything you ever wanted to know - Engadget

This is the only device I would consider as replacement for my iPhone. Palm seems to have done some essential things right, like contact management by pulling data from various services in the cloud. I love the zoomable UI and the card metaphor for app switching.

Visit site …

Release:jQuery 1.3 - jQuery JavaScript Library

Some very nice features and performance improvements in this release, among which the Sizzle CSS selector engine (currently fastest avaiable), live events and much faster HTML injection.

Visit site …

jQuery API Browser v1.3

Improved and also available offline as AIR app.

Visit site …

A List Apart: Articles: Return of the Mobile Style Sheet

"What can be done for mobile browsers that do not read handheld style sheets, or parse CSS Media Queries? Short of ignoring them, there are two options."

Visit site …

Mapeed.AddressChooser API documentation | Home

Cool Javascript component that can be used for address collection in forms, combining HTML form and Google Maps for dynamic place retrieval and auto-completion.

Visit site …

Digital Ethnography

Blog of Michael Wesh, cultural anthropologist, professor of the year, and creator of the video "Web 2.0 … The Machine is Us/ing Us".

Visit site …

Components Versus Patterns

Analysis on the differences and commonalities between components and patterns. "Although the two concepts are strongly related, their differences warrant consideration to ensure you are building the type of library that’s right for you."

Visit site …

The State of the Web 2008 | Web Directions

"Welcome to this detailed report from our first “State of the Web” survey of professional web designers and developers. It includes details and analysis of all the responses to over 50 questions covering technologies, techniques, philosophies and practices that today’s web professionals employ."

Visit site …

The Curious Case of Twply and Twitter - Bokardo

Excellent interface analysis of twply: "Moral of the story? Design can effectively be used to deceive people. Deal only with those services you know and trust. "

Visit site …


Or choose one of the single feeds:
Journal feed | Elsewhere feed