Skip to content
Like virtualenvwrapper except for mozconfigs
Python Shell
Latest commit 2e29ad5 May 15, 2016 @ahal Bump to 0.4
Failed to load latest commit information.
mozconfigwrapper Append name to MOZ_OBJDIR line and not first line in mozconfig Dec 20, 2011 Re-structure package Nov 11, 2011 Update installation instructions Aug 25, 2014 Explicit clobbering when writing .active file May 14, 2016

Mozconfigwrapper is just like virtualenvwrapper except for mozconfigs. Mozconfigwrapper basically hides all your mozconfigs away in a configurable directory (defaults to ~/.mozconfigs) and allows you to easily create, switch, delete and edit them. Mozconfigs remain active across terminal sessions. Mozconfigwrapper is currently Unix only.

Installation Instructions

First make sure you have pip installed.

Follow these simple steps to get mozconfigwrapper running:

sudo pip install mozconfigwrapper

Then open your ~/.bashrc file (or equivalent) and add the line:

source /usr/local/bin/

Note: may be in a different location on your system,
use which to find it.

Finally run:

source ~/.bashrc

Mozconfigwrapper is now installed.


You can create, remove, switch, list and edit mozconfigs.

To build with (activate) a mozconfig named foo, run:

buildwith foo

To create a mozconfig named foo, run:

mkmozconfig foo

To delete a mozconfig named foo, run:

rmmozconfig foo

To see the currently active mozconfig, run:


To list all mozconfigs, run:

mozconfig -l

To edit the currently active mozconfig, run (the $EDITOR variable must be set):

mozconfig -e


By default mozconfigs are stored in the ~/.mozconfigs directory, but you can override this by setting the $BUILDWITH_HOME environment variable. e.g, add:

export BUILDWITH_HOME=~/my/custom/mozconfig/path 

to your ~/.bashrc file.

When you make a new mozconfig, it will be populated with some basic build commands and the name of the mozconfig will be appended to the end of the OBJDIR instruction. You can modify what gets populated by default by editing the ~/.mozconfigs/.template file. For example, if I wanted my default configuration to store object directories in a folder called objdirs and enable debugging and tests, I'd edit the ~/.mozconfigs/.template file to look like:

mk_add_options MOZ_OBJDIR=@TOPSRCDIR@/objdirs/
ac_add_options --enable-application=browser
ac_add_options --enable-debug
ac_add_options --enable-tests

Now if I ran the command 'mkmozconfig foo', foo would be populated with the above and have the word 'foo' appended to the first line.

Something went wrong with that request. Please try again.