Build MSI (Windows Installer) packages on Mac and Linux.
The installer has no wizard. Users just run the installer and your app will be installed and shortcuts created.
You must have wixl
from msitools
available in your path.
$ brew install msitools
# ubuntu / debian
$ sudo apt-get install msitools
Install via npm
$ npm install msi-packager
var createMsi = require('./')
var options = {
// required
source: '/Users/matt/Code/loop/loopjs-packager/build/Loop Drop-win32',
output: '/Users/matt/Code/loop/loopjs-packager/releases/Loop Drop v1.0.0.msi',
name: 'Loop Drop',
upgradeCode: 'YOUR-GUID-HERE',
version: '1.0.0',
manufacturer: 'loopjs.com',
iconPath: '/Users/matt/Code/loop/loopjs-packager/icon.ico',
executable: 'Loop Drop.exe',
// optional
description: "Some description",
arch: 'x86',
localInstall: true
}
createMsi(options, function (err) {
if (err) throw err
console.log('Outputed to ' + options.output)
})
By default the app will be installed for all users under Program Files.
If you specify localInstall: true
as an option, the app will be installed to the user's AppData folder. This allows non-admin users to install your app.
Usage: msi-packager <source> <output> [options]
source Directory containing app to package
output write output .msi to this path
Options:
-n, --name
-v, --version Specify application version
-m, --manufacturer
-a, --arch Specify the target architecture: x86 or x64 (optional)
-u, --upgrade-code Specify GUID to use for upgrading from other versions
-i, --icon Specify an icon to use on shortcuts and installer
-e, --executable Specify file to create shortcuts for
-l, --local Install per user (no administrator rights required)
All options are required except for --local
and --arch
.