A gulp plugin that creates electron based distributable applications.
Install with npm.
npm install --save-dev gulp-electron
Add a gulp electron task like :
var gulp = require('gulp');
var electron = require('gulp-electron');
var packageJson = require('./src/package.json');
gulp.task('electron', function() {
gulp.src("")
.pipe(electron({
src: './src',
packageJson: packageJson,
release: './release',
cache: './cache',
version: 'v0.37.4',
packaging: true,
token: 'abc123...',
platforms: ['win32-ia32', 'darwin-x64'],
platformResources: {
darwin: {
CFBundleDisplayName: packageJson.name,
CFBundleIdentifier: packageJson.name,
CFBundleName: packageJson.name,
CFBundleVersion: packageJson.version,
icon: 'gulp-electron.icns'
},
win: {
"version-string": packageJson.version,
"file-version": packageJson.version,
"product-version": packageJson.version,
"icon": 'gulp-electron.ico'
}
}
}))
.pipe(gulp.dest(""));
});
Executing gulp electron
will create an electron package for the specified platforms.
When you run code under process.NODE_ENV = test
more debug information will be displayed.
Dependency
If you using windows: install 7z(http://www.7-zip.org/).
options
src
The root directory of the sources that shall be packaged, required.
packageJson
The package.json, required.
cache
The download path for the electron package, required.
release
is where the release applictions path, required.
version
the version of the electron release to be download from the GitHub page, required.
platforms
Support ['darwin','win32','linux','darwin-x64','linux-ia32','linux-x64','win32-ia32','win64-64']
, default is darwin-x64
. If verion is under v0.13.0
must use ['darwin','win32','linux']
.
apm
Path to the atom-package-manager
executable. If not specified the default behavior will be to use the globally installed apm
executable.
rebuild
Default is false
, when set to true
then rebuild native-modules.
asar
Default is false
, when set to true
then asar pack your app directory. see more docs(https://github.com/atom/electron/blob/master/docs/tutorial/application-packaging.md).
asarUnpack
Default is false
, this options use minimatch to filter out asar file.
asarUnpackDir
Default is false
, this options filter out asar directory, ex: vendor
filter out vendor
dir.
symbols
Default is false
, when set to true
the symbols package from GitHub will be downloaded.
packaging
Default is false
, when set to true
the packaging zip file.
token
Default is undefined
or env GITHUB_TOKEN
, when set to a GitHub authentication token helps prevent rate-limits when downloading Electron releases.
platformResources
darwin
Mac resources. See Core Foundation Keys for details.CFBundleDisplayName
The actual name of the bundleCFBundleIdentifier
An identifier string that specifies the app type of the bundle. The string should be in reverse DNS format using only the Roman alphabet in upper and lower case (A–Z, a–z), the dot (“.”), and the hyphen (“-”).CFBundleName
The short display name of the bundle.CFBundleVersion
The build-version-number string for the bundle.CFBundleURLTypes
An array of dictionaries describing the URL schemes supported by the bundle.icon
Path to the icon file. .icns
formatwin
Windows resources. On platforms other then Windows you will need to have Wine installed and in the system path.version-string
- An object containings properties to change of .exe
version string.file-version
File's version to change to.product-version
Product's version to change to.icon
Path to the icon file. .ico
formatMIT