Windows Installer Wrapper Wizard and a Better Firefox 3 Enterprise Deployment

Building off of the previous successful article, Make a .msi from Firefox 3 setup.exe for Enterprise Deployment, I have come up with an even better way to deploy Mozilla Firefox 3 via Group Policy and .msi installation. This article will provide a step-by-step guide to accomplish this, tested and proven working with Firefox 3.0.4.

Whereas the previous article allowed Firefox to be deployed as an .MSI through capturing the installation with WinINSTALL LE 2003, this article will be using the original installation package and using command line switches to direct the installation process. This means you will get the same results as doing an installation on one thousand machines that you would when downloading from Mozilla and installing on one machine by clicking through the install process. This now occurs without any tricky captures or chances for files to be manipulated.

Highlighted in and enabling this improved Firefox deployment method is the program Windows Installer Wrapper Wizard. Essentially what WIWW allows you to do is take a setup executable and wrap it inside of an .msi file. By doing this you can deploy the original setup.exe much faster than you can by making a capture and ensuring that it is perfect.

Update: Direct download available at bottom of article

In order to use Windows Installer Wizard, the setup.exe must accept command line switches (e.g. setup.exe /silent, /s, or /install). This requirement means that there is still a place for capturing the install, for those applications that are tricky or don’t have silent install capabilities.

Firefox 3, however, has those command line switches and we will use them to wrap the setup.exe file into a .msi so that we can deploy the software through the Group Policy with no ill side-effects.

To start, you’ll need to download two products:

Windows Installer Wrapper Wizard 0.2.0 (while the official site is down you can download my backup copy)

Mozilla Firefox 3.0.4 (or current version)

Next install the products:

Install the Windows Installer Wrapper Wizard on your computer. It can be treated as a standard application and doesn’t need any other reservations like the previous capturing method. Also install Firefox from the setup that you just downloaded.

I recommend renaming the Firefox setup executable to something much easier to work with than ‘Firefox Setup 3.0.4.exe’. Instead, rename it to something like ff304.exe and then copy/move it to your distribution folder, or where you store your .msi files to deploy through group policy.

Now run through the Windows Installer Wrapper Wizard:

Launch the Windows Installer Wrapper Wizard. You’ll find it under the Start Menu, All Programs as WIWW 0.2.0.

Click Next to get past the introductory window.

The next window will prompt you to create a new Windows Installer msi file. With that radio button selected, hit the browse button. This is essentially asking where you want to save your MSI file. I would recommend that you save it at the same location you just copied the Firefox setup executable, your distribution folder or where you normally store .msi files to deploy through group policy. (This location is rather important because the permissions on the folder need to be such that all of your users and computers will be able to access the folder. If the permissions are wrong, your Group Policy install assignment will fail.)

Windows Installer Wrapper Wizard

Name your .msi file something similarly easy as the setup file, like ff3.msi, and hit Save to return to the original window. Then click Next to go onto the next window.

This next window is where you will specify the commands to install the program. Click the Add button for a new window to pop-up. Browse to the Firefox setup.exe copy in your deployment directory along with that, you should add the command line parameter ‘/S’. Your Program to Run window should look like the screenshot below. With those settings configured, hit Ok. Leave ‘Reboot the system at the end of installation.’ unchecked as it is not needed for installing Firefox. Click next to proceed to the uninstall commands window.

wiww2

The next window after the install commands contains the instructions for the uninstallation of the program. This is important because if you use the options for deployed software to automatically uninstall itself if you delete the policy, it can actually uninstall the software.

Click the Add button so we can add the uninstall commands. Firefox uses a separate executable to uninstall itself. Some programs use the same executable to uninstall themselves as they used to install, but with a different switch like /U. For other programs, you’ll have to figure out this information.For Firefox, change the drop-down to say [ProgramFilesFolder].

WIWW uses variables to reference the folders in case it is different from one machine to the next. Whereas with the install, we checked the box for ‘Use [SourceDir]‘, this meant it would find the executable in the same directory that the MSI is running from. The uninstall executable for a Windows XP/Server 2003 machine will come from C:Program FilesMozilla Firefoxuninstallhelper.exe. So choosing [ProgramFilesFolder] takes care of the C:Program Files part.

Now hit the browse button and select the C:Program FilesMozilla Firefoxuninstallhelper.exe application. You’ll notice that after you select it, what gets entered in the text box is just the Mozilla Firefoxuninstallhelper.exe part. This part gets combined with the [ProgramFilesFolder] selected above to complete the entire location. We’ll need to specify another switch to make sure the uninstall completes in its silent mode, without need for user interaction. In order to do that, put a /S in the box for program parameters. Your setup should match the screenshot below.

wiww3

Click next to move onto the Product Appearances and Requirements page. Here you can configure what options are available in the Control Panel, Add/Remove Programs component. For Firefox, the ‘Disable the Change button’ and ‘Disable the Repair button’ should be checked as Firefox’s setup does not utilize these functions. You can also prevent it from even being listed so that users cannot remove the application.

You can also set the minimum requirements for the application, like Windows XP SP3 or Windows 2000 SP4.

wiww4

Hit the Next button to proceed to the Package Meta Data and Language options. This will be the name listed in the Add/Remove Programs control panel component. I would recommend:

Product name: Mozilla Firefox 3
Product version: 3.0.4 (or current version numbering. Yes, 3.0.5 just came out while I was writing this…)

wiww5

After you are satisfied, hit Next to proceed to the summary page. This will provide a summary of all the options we just selected. If you are content with them, hit Next to generate the .msi or hit Back to make any changes. After the .msi is generated in the location you provided, it will confirm this and tell you the location when it successfully completes. Hit Finish and you’re almost all done.

The final steps are to make the Group Policy for deployment. Add a new standard package and choose the .msi you just created through the Group Policy Management Console. The only other option you might choose is to ‘Uninstall This Application When It Falls out of the Scope of Management’. This would allow you to control the software more through the group policy. If you delete the group policy or remove a computer from a group that has this policy affecting it, the software would be uninstalled. This can be particularly useful for new versions. When Firefox 4 comes out, you could just delete this policy and make a new one to install Firefox 4. This would serve the dual purpose of uninstalling the older version and installing the newer version.

Any questions, just use the comments below.

Bonus Content

I believe you can customize the default Firefox settings before it is deployed. Open up the Firefox setup.exe downloaded from Mozilla with 7-zip or a comparable zip/extraction program.

ffcustom11

After you have opened the archive, drill down to localizeddefaultsprofile and you will see where you can change the default bookmarks deployed. If you go up one directory to the ‘defaults’ folder, you will also see all the entries for the default search providers.

ffcustom2

I have to imagine you could edit these files or provide your own alternatives to change the default deployment to people that have not yet setup a Firefox profile.

Can anyone confirm or explain how one would include extensions into the defaults?

Update: You can download the following .msi file from my site here. It includes the above methods. You’ll also need to download the latest Firefox install from Mozilla: Mozilla Firefox 3.0.6.

Step 1: Download my firefox3.msi

Step 2: Download the latest version of Mozilla Firefox 3

Step 3: Put the firefox3.msi and the setup file downloaded from Mozilla in the same deployment directory.

Step 4: Rename the Mozilla setup file to firefox3.exe

Step 5: Configure your Group Policy deployment using my firefox3.msi file.

Done!

Comment on this post in our forums

Related posts:

  1. Disable Firefox's 'Set as Desktop Background' option
  2. Using Group Policy to deploy software to select computers
  3. Make a .msi from Firefox 3 setup.exe for Enterprise Deployment

Jason

Jason is a full-time system administrator and operates 404 Tech Support in his spare time from Central Illinois.

32 responses to “Windows Installer Wrapper Wizard and a Better Firefox 3 Enterprise Deployment”

  1. 404techsupport

    From my understanding, Frontmotion does not have their own administrative templates. They use an open-source project called FirefoxADM: http://sourceforge.net/project/showfiles.php?group_id=129699

    You can use the FirefoxADM templates with the method of deploying Firefox I documented here. You can find some great instructions from the Developer’s site here:
    http://homepages.ed.ac.uk/mcs/FirefoxADM/ADM_Deploy.pdf

    The main blog for FirefoxADM is here: http://ick2.wordpress.com/

    I would recommend against Frontmotion just so you know entirely what is going on with your computers. The method with WIWW is very easy and will work with FirefoxADM.

  2. Mike Pullen

    Thanks for great tips here!

    Regarding the comment made in March the 7z can’t recreate the exe– I dug a little, and found out this:

    - you add the “extracted” folder to the 7-Zip File Manager, and create a “.7z” compressed file.

    – use 7-Zip Silencer from http://www.mystercrowley.com/sw_7zs_en.php to make the .7z file an SFX which will call “setup.exe”…

    Works like a charm to create a “customized” Firefox by editing prefs.js etc al!

    Thanks!
    Mike

  3. Jason

    Cool! Good work, Mike. Thanks for posting it here!

  4. brownhornet

    Firefox can be a real pain in a windows domain setup I have found. I haven’t gone down the path of creating a MSI at our organisation. (FF is our pref over ie as some features of moodle display very poorly in ie). Anyway we image so not a huge deal but would love to get MSI working. I use this…
    http://support.mozilla.com/tiki-view_forum_thread.php?locale=ro&comments_parentId=12272&forumId=1

    The major issue I found on domain is that everytime a user logon on a machine in the domain it always asked them registatation/default browser question. Got around it by using above which took me forever to find. Happy to share. Maybe someone can suggest how this can be successfully implemented in the MSI package.

  5. KrtRcr31

    I have followed all the steps directly laid out above and not having any success with 3.5.2. If I manually run the created MSI file it installs fine but not silently. If I try to run it through GPO, it hangs on the “Installing managed software Mozilla Firefox 3.5.2…” screen (I’m assuming waiting for user interaction perhaps). Any ideas? I have verified both the exe and msi are in the same location on a network share that all users have rights to and that I did add the /S silent switch as indicated above. Thanks in advance for any insights.

  6. Jason

    I fixed the link to the firefox3.msi that I created above. Please try downloading that, put it in your distribution directory along with the Firefox 3.5 setup executable renamed to firefox3.exe and try deploying that .msi.

    I tested distributing FF 3.5 and it worked out just fine.

    Also, when running the firefox3.msi by double-clicking it, it does not install silently, only when running through a Group Policy.

    Let me know if that works for you.

  7. Tim

    Jason,

    I didn’t see a link that you posted above in your posts. What was the date of that post? Were you posting under a different name? I’m just trying the 3.5 installation and was having similar problems to KrtRcr31. I just am not sure which post you were talking about. Thanks in advance,

    ~Tim.

  8. Jason

    Tim,

    The link I mentioned was referring to the firefox3.msi that I created. It’s at the bottom of this post in the Update section. You can download my firefox3.msi here:

    http://www.404techsupport.com/blog/firefox3.msi

    Hope that helps,
    -Jason

  9. Tim

    Jason,

    I followed what you said by putting my Firefox 3.5.2 (renamed as firefox3.exe) into the same directory as the firefox3.msi that I downloaded from you. It appeared to be installing on reboot, although it took around 35 minutes for it to get to the windows log on screen. Once I got into windows, a box popped up which basically walked me through a manual install. Did I do something completely wrong? Sorry to keep bothering you! :)

    ~Tim.

  10. Jason

    Tim,

    Apparently Mozilla changed the silent install switch for Firefox 3.5. I walked away from my test machine while it was installing so I wasn’t aware of the length it took.

    Try creating the MSI using the instructions above but replacing the switch for install to ‘-ms’.

    I’ll do some further testing and update the post above with the new instructions.

    -Jason

  11. 404techsupport

    It sounds like you're doing everything right so it leads me to believe that this is a permissions issue with the setup.exe. Running it manually will use your user credentials, running it through the GPO will use it as the Computer account.

    The FrontMotion MSI's are made using a capture method instead of a true install. That means all of the install files are held within the MSI, which might be the difference in your case. You can see how to do that method here: http://www.404techsupport.com/2008/09/22/make-a-m...

    To clarify about the event log: You'll get a note that the setup completed successfully as long as the MSI runs from start to finish. Unfortunately, this doesn't provide any feedback about the setup.exe running inside of the MSI unless that executable does its own logging.

  12. 404techsupport

    Do you have a security group for the computers you're trying to install it on? Remember for a GPO directed install, the computers will be installing it, not the user accounts.

    You might also check out this article on simulating an MSI deployment:
    http://www.grantburton.com/2008/09/21/simulate-a-...