Installing XULRunner applications

It is now possible to use XULRunner to install XUL applications in an OS-appropriate manner. The code for Mac is already checked in, and the code for Win/Linux is under review in bug 306689. This was most important on Mac, because unless there is an application bundle for the XUL application, the UI is basically nonfunctional.

To install a XUL application which you have in a ZIP/XPI file:


/Library/Frameworks/XUL.framework/xulrunner-bin -install-app /path/to/my/application.xpi


/Path/To/xulrunner.exe -install-app /path/to/my/application.xpi


/path/to/xulrunner-bin -install-app /path/to/my/application.xpi

It is also possible to install directly from an unpacked directory (xulrunner-bin -install-app /path/to/my/unpacked-application). But please note that the INI file must be called “application.ini” in the root of the XUL Application package, it may not be named “chatzilla.ini” or any of the other custom filenames that have been floating around.

Next steps:

  1. GUI installer to drive the same process
  2. Developer-mode process that uses symlinks instead of actually copying the files (mainly useful on Mac).

Atom Feed for Comments 9 Responses to “Installing XULRunner applications”

  1. Robert Accettura Says:

    can the existing installer be modified for this use?

    /faintly remembers something about cleaning up the installer for 2.0.

  2. Benjamin Smedberg Says:

    This is different: this is once you already have XULRunner installed on the system, getting an app installed properly. The XULRunner installer (and various variations on stub installers with or without XUL app packages) is covered in broad outline at

  3. Brian King Says:

    Is this for the 1.8 branch, the trunk, or both? Will there be any XULRunner ‘releases’ off the 1.8 branch, or is it better to work with the trunk?

  4. Benoit Says:

    Is this the beginning of a solution for installing an extension to Thunderbird from Firefox (as soon they both become xulrunner apps)?

  5. Jonathan Avidan Says:

    What does installing entail? In terms of usability etc., what’s the difference between an application which is loaded from the “xulrunner application.ini” commandline and one that has been installed?

  6. Fabrice Says:

    I build the linux version from CVS, and got a strange error :
    $./xulrunner/xulrunner myapp.xpi
    $Error: Gecko MinVersion requirement not met.

    But running ./xulrunner/xulrunner myapp/application.ini works…

  7. Benjamin Smedberg Says:

    Brian, yes this is for the 1.8 branch and trunk.

    Benoit, no, that is a different problem.

    Jonathan, on mac you cannot use the command-line solution because the app must be packaged into a mac application bundle. On win/linux there is not much difference right now, but it will perform various OS-integration tasks on installation, as well as manage the Windows “Add/Remove Programs” integration, and ensure that the XULRunner installation is not prematurely uninstalled.

    Fabrice, you cannot *run* a xulapp from an XPI, it must be either manually unpacked or installed before it can be run.

  8. Jeff Walden Says:

    Hehe, a first! Mac users get a feature before everyone else! ;-)

  9. Pogovor » XULRunner 1.9 Voodoo Says:

    […] bsmedberg has written previously about deploying standalone XUL apps based on XULRunner 1.8 and Installing XULRunner applications. This post expands on the latter, and note it is based on my findings (self discovery and nagging Ben a bit) while working with XULRunner 1.9 (trunk). […]

Leave a Reply