Rebranding the Firefox Installer

Updated files for Firefox are available here.

One of the other extensions I’ve written is the Rebrand extension. This extension allows you to rebrand Firefox to whatever you want just by installing an extension. A question I often get asked by people that use this extension is whether or not it is possible to rebrand the installer. This post will provide instructions on how to rebrand the Firefox 2 installer. In particular, we are going to create a new customized setup.exe that can be used with the instructions in this post. Basically you unpack the installer and simply replace setup.exe with the new one we will create.

The installer for Firefox 2 is based on the Nullsoft Scriptable Install System so first we need to install NSIS.

To actually customize the installer, we need the original files that were used to create the installer. I have packaged the files from a non branded Firefox for you. That means the files show “Bon Echo” instead of “Firefox” and the images are just a globe (no Firefox). You can download them here. After you download the package, unzip it into a directory and we’re ready to go.

Here are the files we’ll need to change.

  • license.rtf – This is the license agreement that must be agreed to by the user during the install. You’ll need to replace it with your own RTF file containing a license. If you do not want or need the user to agree to a license agreement, you can comment out the line:

    !insertmacro MUI_PAGE_LICENSE license.rtf

    in installer.nsi.
  • branding.nsi – This file contains most of the text changes you’ll make, including name of your browser and your company.
  • wizHeader.bmp – This image is at the top of right of every page in the installer.
  • wizWatermark.bmp – This image is on the first page of the installer.
  • defines.nsi – This file contains some version specific strings, so it will need to be changed as you move to different versions of the Firefox source code. It will also need to be changed if you change the name of the executable.
  • version.nsh – Unfortunately the installer folks didn’t do a good job of keeping branding strings just in branding.nsi, so there are a few miscellaneous things you might want to change here.

Now that we’ve customized the files, it’s time to build the installer. To do this, we’ll use one of the tools that came with NSIS, makensis.exe.

makensis installer.nsi

If we did things correctly, the result of this command should be a new setup.exe that contains all of our customizations. You can test this immediately by just running setup.exe and seeing if it contains your customizations.

There’s not a quick and easy way to integrate this setup.exe into the Firefox packaging, so for now my recommendation is to unpack a Firefox 2 installer using 7-Zip and simply replace setup.exe with the new one you just created. Once I get the information on manually repackaging Firefox, I’ll post it.

Note that this is a new process I’ve just put together, so please let me know if I’ve missed anything or if you have problems.

Please note: I reserve the right to delete comments that are offensive or off-topic.

Leave a Reply

Your email address will not be published. Required fields are marked *

5 thoughts on “Rebranding the Firefox Installer

  1. Second the notion for Thunderbird — I had a working customization for Thunderbird that would add a pre-configured option in the new account wizard for our University, but haven’t been able to figure out the new nsis installer process yet.

  2. HELP
    Invalid command: StrCmp${_TEXTFUNC_S}
    Error in macro TextCompareNoDetails on macroline 43
    Error in script “C:\1\installer.nsi” on line 91 — aborting creation process