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/Firefox-1.0.app/Contents/MacOS/firefox-bin -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:

StartWithLastProfile=0

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/Firefox-1.0.app/Contents/MacOS/firefox-bin -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 Firefox-1.0.app/Contents/Info.Plist 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 (7 total) |

7 Comments so far

Sweetness, been looking for some time. I was running opera next to firefox but it has some strange JS quirks making AJAX development a pest.

Thanks

Thanks for the tip, I’m using it now for 2.0 (I’m reading this a little late :)).

If you’re on Mac OSX, you can put the command line call in a Bash script and then make a GUI executable to run that Bash script using Platypus: http://www.sveinbjorn.org/platypus

That’s a great tip, thanks!

Jeroen Coumans on

Firstly, Jeroen: Thank you so much for making me aware of Session Saver … I think it has to be one of the most indispensable Firefox extensions! I can’t believe I’ve not seen it and installed it before now!

Just wanted to mention that, in order to get this working under Window with Firefox 1.5 and 1.0 running concurrently, I had to use the “complicated” batch file method mentioned on Hiveminds.

Another option would be to create a file called runff in Contents/MacOS and write these two lines to it:


#!/bin/bash
./firefox-bin -P Firefox-1.0 &

Don’t forget to chmod a+x that file afterwards. Then, in the Info.plist, change CFBundleExecutable from firefox-bin to runff

Correction to my posting. The solution I posted won’t work properly – no dock icon appears, and you can’t focus the Firefox window.

Change the shell script to this:


#!/bin/bash
./firefox-bin -P Firefox-1.0

All we need to do is remove the & so firefox-bin doesn’t run in the background. Obviously, this is important so OS X can keep track of the process that’s running (it starts runff, so that must keep running)… to my surprise, the & even caused trouble when firefox was run from the command line… very strange.

I had to alter the runff script David suggested to get it to work on my machine:


#!/bin/bash
FIREFOX_DIR=`dirname "$0"`
$FIREFOX_DIR/firefox-bin -P Firefox-2.0


(mine wouldn’t start without the full path, YMMV.)

From the portfolio

  • Gebruikstarief web applicatie

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 …

Elsewhere

Improve your jQuery - 25 excellent tips

"I'd call myself an "intermediate" jQuery user and I thought some others out there could benefit from all the little tips, tricks and techniques I've learned over the past year. "

Add comment | Visit site …

On UI Quality (The Little Things): Client-side Image Resizing

Some (non-standard) CSS declarations can really increase the quality of resized images in Internet Explorer.

Add comment | Visit site …

Plausible Labs - Peeps

"Visually organize your contacts with Peeps — the application that turns your address book into an animated photo album!"

Add comment | Visit site …

CSS Tables for layout are A Bad Idea.

When will we get a CSS layout solution that doesn't require adding unnecessary HTML markup?

Add comment | Visit site …

Distortion Icon Set

Free, grungy icons. Pretty sweet.

Add comment | Visit site …

Checklist online marketing voor webwinkels

(dutch) Aardige lijst met aandachtspunten, voor, tijdens en na de ontwikkeling van een webwinkel.

Add comment | Visit site …

Pirates of the Amazon Documentation

""Pirates of the Amazon" was an artistic parody, part of our media research and education at the Media Design M.A. course at the Piet Zwart Institute of the Willem de Kooning Academy Hogeschool Rotterdam, the Netherlands. It was a practical experiment on interface design, information access and currently debated issues in media culture. We were surprised by the attentions and the strong reactions this project received. Ultimately, the value of the project lies in these reactions. It is a ready-made and social sculpture of contemporary internet user culture. "

Add comment | Visit site …

De volgende generatie corporate website

(dutch) Trend die zeer zeker niet specifiek is voor de corporate website, maar iets is dat we al een aantal jaar kunnen signaleren met de opkomst van widgets en het Web 2.0 principe van "Data als de nieuwe Intel Inside": "De gedachte van een portal waar traffic naartoe moet worden geleid, maakt plaats voor de gedachte dat je moet zijn waar de doelgroep is. De corporate website versplintert en men zal de komende jaren meer en meer zien dat kernfuncties buiten de eigen websiteomgeving te gebruiken zijn. Daar waar de aanwezigheid op het web nu is beperkt tot de eigen website, zullen er meer en meer ‘outposts’ op het web worden gecreëerd door bedrijven."

Add comment | Visit site …

DD_belatedPNG: better PNG background-image support in IE6

"If you attempt to use a 24-bit translucent PNG image as a background image or as an <IMG/> element's SRC attribute, IE6 yields an unsightly grey (sometimes greenish) background behind the image's translucent colors. Using the MSIE AlphaImageLoader filter to fix the grey background issue renders both background-repeat and background-position unusable! This script reclaims all your background positioning controls by avoiding AlphaImageLoader, AND fixes the grey background issue!"

Add comment | Visit site …

Ten Recipes for Persuasive Content

"In many of my columns, I have touted the importance of persuasive, or influential, content and shared relevant theories and arguments, sprinkling in some practical tips and examples along the way. This column brings together a collection of practical tips, or recipes, for persuasive content. " Note how the article itself is also very persuasive and uses its own tips. Very nice!

Add comment | Visit site …

Subscribe

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