Installs one or more XPI files on the local machine.

Method of

InstallTrigger object


int install(array XPIlist [, function callBackFunc ] )


The install method has the following parameters:

An array of files to be installed (see example below).
An optional callback function invoked when the installation is complete (see example below).

Firefox 3 note

In Firefox 3 the callback is no longer invoked unless the website performing the installation is whitelisted.


install returns True if the function succeeded and False if it did not, but these values are not always reliable as a determinant of the success of the operation. To surface detail about the status of the installation, use the optional callback function and its status parameter, as in the example below.


In the example below, a special JavaScript object constructor is used to create an object that can be passed to the install() method. The { } constructor takes a comma-delimited set of label/value pairs. For installations, these pairs are the XPInstall confirm dialog display name and the path of the XPI, respectively.

In the example below, a single installation object is created, but you can use this approach to create multiple installations to pass to a single install.

As with the older startSoftwareUpdate method, XPIs installed with this method must have their own install.js files in which the full installation is defined. In contrast to startSoftwareUpdate, install allows you to do multiple installs with the same trigger and provides a unified user experience for the multiple installs.


function xpinstallCallback(url, status)
if (status == 0)
   msg = "XPInstall Test:   PASSED\n";
   msg = "XPInstall Test:   FAILED\n";
xpi={'XPInstall Pre-Checkin Test':'pre_checkin.xpi'};