Many packager improvements; Windows signing! (#413)

* Many packager improvements; Windows signing!

* Windows signing works now! (Certs are on an external USB stick that
must be plugged into the build machine during build. We can't do the
same for OS X because certs need to exist in the login Keychain to be
found.)

Fixes #219

* Signing is now optional (so OS X and Windows contributors can run
`npm run package` without errors)

* zip, dmg, and deb arguments are now passed in as e.g. "--package=dmg"

* Print a huge warning when signing is disabled so we're less likely to
ship unsigned binaries to users.

* Make console.logs during packaging consistent and parallel
("creating..." followed by "created.")

* More aggressive signing warnings

* Warn when building OS X app on non-OS X platform (because signing
will never work on non-OS X platforms)
* Warn when building Windows app on non-Windows platform (because
signing doesn't work yet on non-Windows platforms)
This commit is contained in:
Feross Aboukhadijeh
2016-04-14 22:32:36 -07:00
parent 04318d7580
commit 2333171de7
5 changed files with 165 additions and 58 deletions

View File

@@ -50,12 +50,15 @@ $ npm run package
To build for one platform:
```
$ npm run package -- [platform] [package-type]
$ npm run package -- [platform]
```
Where `[platform]` is `darwin`, `linux`, or `win32`
Where `[platform]` is `darwin`, `linux`, `win32`, or `all` (default).
and `[package-type]` is `all` (default), `deb` or `zip` (`linux` platform only)
The following optional arguments are available:
- `--package=[type]` - Package only one output file. `type` is `deb`, `dmg`, `zip`, or `all` (default)
- `--sign` - Sign the application (OS X, Windows)
#### Windows build notes