CLI
electron-builder
Build
Commands:
electron-builder build Build [default]
electron-builder install-app-deps Install app deps
electron-builder node-gyp-rebuild Rebuild own native code
electron-builder publish Publish a list of artifacts
electron-builder create-self-signed-cert Create self-signed code signing cert for
Windows apps
electron-builder start Run application in a development mode using
electron-webpack
electron-builder clear-cache Clear the electron-builder default cache
directory
Building:
-m, -o, --mac, --macos Build for macOS, accepts target list (see
https://www.electron.build/mac). [array]
-l, --linux Build for Linux, accepts target list (see
https://www.electron.build/linux) [array]
-w, --win, --windows Build for Windows, accepts target list (see
https://www.electron.build/win) [array]
--x64 Build for x64 [boolean]
--ia32 Build for ia32 [boolean]
--armv7l Build for armv7l [boolean]
--arm64 Build for arm64 [boolean]
--universal Build for universal [boolean]
--dir Build unpacked dir. Useful to test. [boolean]
--prepackaged, --pd The path to prepackaged app (to pack in a
distributable format)
--projectDir, --project The path to project directory. Defaults to
current working directory.
-c, --config The path to an electron-builder config. Defaults
to `electron-builder.yml` (or `json`, or `json5`,
or `js`, or `ts`), see
https://www.electron.build/configuration
Publishing:
-p, --publish Publish artifacts, see https://www.electron.build/publish
[choices: "onTag", "onTagOrDraft", "always", "never", undefined]
Other:
--help Show help [boolean]
--version Show version number [boolean]
Examples:
electron-builder -mwl build for macOS, Windows and Linux
electron-builder --linux deb tar.xz build deb and tar.xz for Linux
electron-builder --win --ia32 build for Windows ia32
electron-builder set package.json property `foo` to
-c.extraMetadata.foo=bar `bar`
electron-builder configure unicode options for NSIS
--config.nsis.unicode=false
See https://electron.build for more documentation.
For other commands please see help using --help arg, e.g. ./node_modules/.bin/electron-builder install-app-deps --help
Since Node.js 8 npx is bundled, so, you can simply use npx electron-builder.
Prepend npx to sample commands below if you run it from Terminal and not from package.json scripts.
electron-builder -mwl
electron-builder --linux deb tar.xz
electron-builder --windows nsis:ia32
foo to barelectron-builder -c.extraMetadata.foo=bar
electron-builder -c.nsis.unicode=false
Target
Without target configuration, electron-builder builds Electron app for current platform and current architecture using default target.
- macOS - DMG and ZIP for Squirrel.Mac.
- Windows - NSIS.
- Linux:
Platforms and archs can be configured using CLI args, or in the configuration.
For example, if you don't want to pass --ia32 and --x64 flags each time, but instead build by default NSIS target for all archs for Windows:
package.json
"build": {
"win": {
"target": [
{
"target": "nsis",
"arch": [
"x64",
"ia32"
]
}
]
},
"mac": {
"target": [
{
"target": "dmg",
"arch": [
"universal"
]
}
]
}
}
electron-builder.yml
win:
target:
- target: nsis
arch:
- x64
- ia32
mac:
target:
- target: dmg
arch: universal
electron-builder.config.js
module.exports = {
"win": {
"target": [
{
"target": "nsis",
"arch": [
"x64",
"ia32"
]
}
]
},
"mac": {
"target": [
{
"target": "dmg",
"arch": [
"universal"
]
}
]
}
}
and use
build -wl
TargetConfiguration
targetString - The target name. e.g.snap.arch"x64" | "ia32" | "armv7l" | "arm64" | "universal" - The arch or list of archs.