Skip to content
bash script to install major Firefox versions on Mac OS X
Find file
New pull request
Pull request Compare This branch is 145 commits behind omgmog:master.
Fetching latest commit...
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.



This is a bash script to install all major versions of Firefox on OS X.

Currently it installs:

  • Firefox
  • Firefox 3.0.19
  • Firefox 3.5.9
  • Firefox 3.6.28
  • Firefox 4.0.1
  • Firefox 5.0.1
  • Firefox 6.0.1
  • Firefox 7.0.1
  • Firefox 8.0.1
  • Firefox 9.0.1
  • Firefox 10.0.2
  • Firefox 11.0
  • Firefox 12.0
  • Firefox Beta
  • Firefox Aurora
  • Firefox Nightly
  • Firefox UX Nightly

Optionally, the script can install Firebug for each version of Firefox too.

What does it do?

  1. The script downloads the latest version of before running to ensure that the script is up to date.

  2. The script downloads all of the associated resources (icons) and utilities (seticon) to the /tmp/firefoxes directory.

  3. The script downloads the .dmg files from Mozilla's FTP server into /tmp/firefoxes.

  4. The script installs the Firefoxes to /Applications/Firefoxes/.

  5. The script creates a Firefox profile for each installed version of Firefox.

  6. The script modifies each Firefox app to launch with its specific profile, and customises the application icon.

  7. The script can optionally download the latest Firebug available for each version of Firefox, and install it upon first launch.

What else does it do?

You can see which versions of Firefox you've already installed using this script, using the following command:

$ ./


$ ./ status

You can specify the version to install, or use any of the pre-defined installation groups:

// Default, installs all versions available
$ ./

// You can also use the 'all' keyword to install all versions available
$ ./ "all"

// 'all_future' installs Aurora, Beta, Nightly, Nightly UX
$ ./ "all_future"

// 'all_past' installs all versions excluding Aurora, Beta, Nightly and Nightly UX
$ ./ "all_past"

// 'current' installs the current version of Firefox only
$ ./ "current"

// Specify the versions you would like to install, from the list at the top of this README, separated by spaces
$ ./ " 3.0.19"

You can specify the locale to use, from the list of available locale options. By default en-GB is used.

af, ar, be , bg, ca, cs, da, de, el, en-GB, en-US, es-AR, es-ES, eu, fi, fr, fy-NL,
ga-IE, he, hu, it, ja-JP-mac, ko, ku, lt, mk, mn, nb-NO, nl, nn-NO, pa-IN, pl, pt-BR,
pt-PT, ro, ru, sk, sl, sv-SE, tr, uk, zh-CN, zh-TW
$ ./ "all" "en-US"

(The installation process for the Aurora and Nightly/UX versions will install as en-US regardless of what you specify)

If you want to just install all versions and leave the installation process unattended, there is a no_prompt option, this will default all of the y/n prompts to answering y.

$ ./ "all" "en-GB" "no_prompt"

(You will still need to manually accept the EULA if installing Firefox


From a terminal prompt, enter the following:

curl -L -O
chmod +x
./ [version] [locale] [no_prompt]

When the Mozilla license pops up, press Q and then Y to continue.

It'll take a little while to grab the .dmg files, but it should only need to do this once. (Until you reboot, and the contents of /tmp are deleted.)


Previous updates removed from the README. Look at the file history to see them.

Update: 08/05/2012

  • Formatting fixes in
  • Fixed the firebug installation process for Firefox 4+!

Update: 24/04/2012

  • Added Firefox 12

Update: 10/03/2012

  • Fixed bug with all parameters not being passed between scripts
  • Renamed to


  • Add ability to specify additional versions
  • Create launcher to preview a site in all install firefoxes (WIP!)


Something went wrong with that request. Please try again.