Firefox

In a Bugzilla report, Mozilla has revealed that they provide enterprise MSI installers starting with Firefox 65. By offering an MSI installer , system administrators can create their own transform files (MST) to easily customize the installation of Firefox in their organization.

Originally targeted to be released for Firefox 64, Mozilla has since pushed the target date for releasing the MSI installers to Firefox 65. These MSI installers have already been created for numerous regions for the Firefox Nightly builds.

MSI Properties for Firefox 65 (Nightly)
MSI Properties for Firefox 65 (Nightly)

According to a Bugzilla ticket, the decision to offer an MSI installer for Firefox is to make it easier to deploy the browser in the enterprise.

As a system administrator in Active Directory environment, I want the convenience of an MSI installer provided by Mozilla, so I can deploy it easily in my organization.
As a system administrator, I can set properties through a MST file so that the installation is customized.

Acceptance criteria:
- MSI installer created as a wrapper of the exe installer
- MSI properties include available command line parameters (silent install, silent uninstall, configuration.ini file) as well as a way to  enable the installation of the native messaging app require for legacy website support extension. MSI properties can be set externally through an MST file
- 2 MSI installers are available, one for 32 bit installs and one for 64 bit installs and each locale has a dedicated MSI installer
- Use WIX variables for details such as the language, version, platform, package/upgrade codes, and installer file, to ease turning the file into a template.

Using the MSI installer, administrators can install Firefox by passing command line arguments directly to the installer or via a MST file. A MST file, or Windows Installer Setup Transform File, is a file that contains the changes that an administrator wants to apply to an installer. 

Using MST files an administrator can create a customized installation that is then pushed out to all of the users in their organization. This allows them to have a static install environment for all of the computers in their organization, which makes it easier to support and administrate. More information about how to create an MST file is explained later in the article.

Mozilla has already created enterprise support document that outlines how you can customize the MSI installer. This support document is titled "Firefox customization with MSI installers" and contains all the current arguments and the custom Firefox properties that can be used either in an MST file or via the command line.

For example to change the directory path to C:\Firefox\ you can use the INSTALL_DIRECTORY_PATH property on the command line as seen below.

msiexec.exe /i "c:\MSi\default.msi" INSTALL_DIRECTORY_PATH="C:\Firefox\" TASKBAR_SHORTCUT=false DESKTOP_SHORTCUT=false INSTALL_MAINTENANCE_SERVICE=false /quiet 

To download the latest MSI installers for Firefox 65, you can visit their ftp site. Instructions on how to create a MST file for Firefox is in the next section.

Creating a Firefox MST or Transform file

An MST file is like a patch for a MSI installer that you can then apply when performing an install. This allows you to change, or transform, the install process by passing the MST file as an argument to the MSI installer.

To create an MST file, you need to download the Windows SDK Components for Windows Installer Developers and install the Orca.exe program. Once Orca is installed, run it and click on File and then Open and then select the MSI file that you wish to create a MST file

Once the MSI file is opened, click on the Transform menu and select New Transform as shown below.

Create a new Transform
Create a new Transform

When a new Transform has been started, the Orca window title will now include "transformed by untitled" to indicate that you are in the transform mode.

Window title showing transform mode
Window title showing transform mode

Now click on the Property table as shown below. This will list all of the custom Firefox properties that you can configure for your MST file. For descriptions on what each property does, you can review this document.

Firefox properties that can be configured
Firefox properties that can be configured

To change a property, simply double-click on it and enter the new value. For boolean properties, the data can either be true or false. As you can see in the image below, we have changed the INSTALL_DIRECTORY_PATH property so that Firefox will be installed in the C:\Firefox65-Nightly\ folder.

Changed Property
Changed Property

When you are done configuring the properties, click on the Transform menu and select Generate Transform.

Orca will now generate a MST file and ask you where to save it. In our example, we will be saving the mst file as "custom.mst". After you save the MST file, you can close the Orca program.

To use this newly generated MST file when installing Firefox, you would need to open a command prompt and enter a command like the following.

msiexec /i firefox-65.0a1.en-US.win64.installer.msi /lvx msi.log TRANSFORMS="custom.mst"

When using this command, the Firefox MSI installer will execute and be transformed by the custom configuration saved in the custom.mst file. The "/lvx msi.log" part of the command will generate a log file called msi.log in the same folder that you executed the command.

This log file can be used to debug problems that you may encounter when installing the MSI.

Related Articles:

Mozilla Firefox 64.0 Released - Here's What's New

Mozilla Announces a Native ARM64 version of Firefox

Mozilla Firefox Expands DNS-over-HTTPS (DoH) Test to Release Channel

Mozilla Overhauls Content Blocking Settings in Firefox 65

Firefox Now Shows Warnings On Sites with Data Breaches