Developer API only. See Configuration for user documentation.

Modules

electron-builder
app-builder-lib
dmg-builder
electron-publish
electron-updater

electron-builder

electron-builder.Arch : enum

Kind: enum of electron-builder
Properties

  • ia32
  • x64
  • armv7l
  • arm64
  • universal

electron-builder.build(rawOptions)Promise<Array<String>>

Kind: method of electron-builder

Param Type
rawOptions CliOptions

electron-builder.createTargets(platforms, type, arch)Map<Platform | Map<Arch | Array<String>>>

Kind: method of electron-builder

Param Type
platforms Array<Platform>
type String | “undefined”
arch String | “undefined”

electron-builder.publish(args)Promise< | Array>

Kind: method of electron-builder

Param Type
args Object<String, any>

app-builder-lib

ArtifactBuildStarted

Kind: interface of app-builder-lib
Properties

  • targetPresentableName String
  • file String
  • arch Arch | “undefined”

ArtifactCreatedmodule:packages/electron-publish/out/publisher.UploadTask

Kind: interface of app-builder-lib
Extends: module:packages/electron-publish/out/publisher.UploadTask
Properties

BeforeBuildContext

Kind: interface of app-builder-lib
Properties

  • appDir String
  • electronVersion String
  • platform Platform
  • arch String

BuildResult

Kind: interface of app-builder-lib
Properties

CertificateFromStoreInfo

Kind: interface of app-builder-lib
Properties

  • thumbprint String
  • subject String
  • store String
  • isLocalMachineStore Boolean

FileCodeSigningInfo

Kind: interface of app-builder-lib
Properties

  • file String
  • password String | “undefined”

Framework

Kind: interface of app-builder-lib
Properties

  • name String
  • version String
  • distMacOsAppName String
  • macOsDefaultTargets Array<String>
  • defaultAppIdPrefix String
  • isNpmRebuildRequired Boolean
  • isCopyElevateHelper Boolean

Methods

framework.afterPack(context)Promise<any>

Param Type
context module:app-builder-lib/out/configuration.PackContext

framework.beforeCopyExtraFiles(options)Promise<any>

Param Type
options module:app-builder-lib/out/Framework.BeforeCopyExtraFilesOptions

framework.createTransformer()null | module:packages/builder-util/out/fs.__type

framework.getDefaultIcon(platform)null | String

Param Type
platform Platform

framework.getExcludedDependencies(platform)null | Array

Param Type
platform Platform

framework.getMainFile(platform)null | String

Param Type
platform Platform

framework.prepareApplicationStageDirectory(options)Promise<any>

Param Type
options PrepareApplicationStageDirectoryOptions

PlugDescriptor

Kind: interface of app-builder-lib

SlotDescriptor

Kind: interface of app-builder-lib

SourceRepositoryInfo

Kind: interface of app-builder-lib
Properties

  • type String
  • domain String
  • user String
  • project String

AppInfo

Kind: class of app-builder-lib
Properties

  • description = smarten(this.info.metadata.description || "") String
  • version String
  • type String | undefined
  • shortVersion String | undefined
  • shortVersionWindows String | undefined
  • buildNumber String | undefined
  • buildVersion String
  • productName String
  • sanitizedProductName String
  • productFilename String
  • channel String | “undefined”
  • companyName String | “undefined”
  • id String
  • macBundleIdentifier String
  • name String
  • linuxPackageName String
  • sanitizedName String
  • updaterCacheDirName String
  • copyright String

Methods

appInfo.computePackageUrl()Promise< | String>

appInfo.getVersionInWeirdWindowsForm(isSetBuildNumber)String

Param
isSetBuildNumber

LinuxPackager ⇐ PlatformPackager

Kind: class of app-builder-lib
Extends: PlatformPackager
Properties

  • executableName String
  • defaultTarget Array<String>

Methods

linuxPackager.createTargets(targets, mapper)

Overrides: createTargets

Param Type
targets Array<String>
mapper callback

linuxPackager.artifactPatternConfig(targetSpecificOptions, defaultPattern)module:app-builder-lib/out/platformPackager.__object

Param Type
targetSpecificOptions TargetSpecificOptions | “undefined” | undefined
defaultPattern String | undefined

linuxPackager.computeSafeArtifactName(suggestedName, ext, arch, skipDefaultArch, defaultArch, safePattern)null | String

Param Type
suggestedName String | “undefined”
ext String
arch Arch | “undefined”
skipDefaultArch
defaultArch String
safePattern

linuxPackager.getDefaultFrameworkIcon()null | String

linuxPackager.dispatchArtifactCreated(file, target, arch, safeArtifactName)Promise<void>

Param Type
file String
target Target | “undefined”
arch Arch | “undefined”
safeArtifactName String | “undefined”

linuxPackager.getElectronDestinationDir(appOutDir)String

Param Type
appOutDir String

linuxPackager.getElectronSrcDir(dist)String

Param Type
dist String

linuxPackager.expandArtifactBeautyNamePattern(targetSpecificOptions, ext, arch)String

Param Type
targetSpecificOptions TargetSpecificOptions | “undefined” | undefined
ext String
arch Arch | “undefined”

linuxPackager.expandArtifactNamePattern(targetSpecificOptions, ext, arch, defaultPattern, skipDefaultArch, defaultArch)String

Param Type
targetSpecificOptions TargetSpecificOptions | “undefined” | undefined
ext String
arch Arch | “undefined”
defaultPattern String
skipDefaultArch
defaultArch String

linuxPackager.expandMacro(pattern, arch, extra, isProductNameSanitized)String

Param Type
pattern String
arch String | “undefined”
extra any
isProductNameSanitized

linuxPackager.generateName2(ext, classifier, deployment)String

Param Type
ext String | “undefined”
classifier String | “undefined” | undefined
deployment Boolean

linuxPackager.getIconPath()Promise< | String>

linuxPackager.getMacOsResourcesDir(appOutDir)String

Param Type
appOutDir String

linuxPackager.pack(outDir, arch, targets, taskManager)Promise<any>

Param Type
outDir String
arch Arch
targets Array<Target>
taskManager AsyncTaskManager

linuxPackager.resolveIcon(sources, fallbackSources, outputFormat)Promise<Array<module:app-builder-lib/out/platformPackager.IconInfo>>

Param Type
sources Array<String>
fallbackSources Array<String>
outputFormat “set” | “icns” | “ico”

linuxPackager.getResource(custom, names)Promise< | String>

Param Type
custom String | “undefined” | undefined
names Array<String>

linuxPackager.getResourcesDir(appOutDir)String

Param Type
appOutDir String

linuxPackager.getTempFile(suffix)Promise<String>

Param Type
suffix String

MacPackager ⇐ PlatformPackager

Kind: class of app-builder-lib
Extends: PlatformPackager
Properties

  • **<code id="MacPackager-[codeSigningInfo=new Lazy(() => { const cscLink = this.getCscLink() if (cscLink == null || process.platform !== “darwin”) { return Promise.resolve({ keychainFile: process.env.CSC_KEYCHAIN || null }) }

    return createKeychain({ tmpDir: this.info.tempDirManager, cscLink, cscKeyPassword: this.getCscPassword(), cscILink: chooseNotNull(this.platformSpecificBuildOptions.cscInstallerLink, process.env.CSC_INSTALLER_LINK), cscIKeyPassword: chooseNotNull(this.platformSpecificBuildOptions.cscInstallerKeyPassword, process.env.CSC_INSTALLER_KEY_PASSWORD), currentDir: this.projectDir, }).then(result => { const keychainFile = result.keychainFile if (keychainFile != null) { this.info.disposeOnBuildFinish(() => removeKeychain(keychainFile)) } return result }) })]">[codeSigningInfo=new Lazy(() => { const cscLink = this.getCscLink() if (cscLink == null || process.platform !== “darwin”) { return Promise.resolve({ keychainFile: process.env.CSC_KEYCHAIN || null }) }

    return createKeychain({ tmpDir: this.info.tempDirManager, cscLink, cscKeyPassword: this.getCscPassword(), cscILink: chooseNotNull(this.platformSpecificBuildOptions.cscInstallerLink, process.env.CSC_INSTALLER_LINK), cscIKeyPassword: chooseNotNull(this.platformSpecificBuildOptions.cscInstallerKeyPassword, process.env.CSC_INSTALLER_KEY_PASSWORD), currentDir: this.projectDir, }).then(result => { const keychainFile = result.keychainFile if (keychainFile != null) { this.info.disposeOnBuildFinish(() => removeKeychain(keychainFile)) } return result }) })]** Lazy<module:app-builder-lib/out/codeSign/macCodeSign.CodeSigningInfo>

  • defaultTarget Array<String>

Methods

macPackager.applyCommonInfo(appPlist, contentsPath)Promise<void>

Param Type
appPlist any
contentsPath String

macPackager.createTargets(targets, mapper)

Overrides: createTargets

Param Type
targets Array<String>
mapper callback

macPackager.getElectronDestinationDir(appOutDir)String

Overrides: getElectronDestinationDir

Param Type
appOutDir String

macPackager.getElectronSrcDir(dist)String

Overrides: getElectronSrcDir

Param Type
dist String

macPackager.getIconPath()Promise< | String>

Overrides: getIconPath

macPackager.pack(outDir, arch, targets, taskManager)Promise<void>

Overrides: pack

Param Type
outDir String
arch Arch
targets Array<Target>
taskManager AsyncTaskManager

macPackager.artifactPatternConfig(targetSpecificOptions, defaultPattern)module:app-builder-lib/out/platformPackager.__object

Param Type
targetSpecificOptions TargetSpecificOptions | “undefined” | undefined
defaultPattern String | undefined

macPackager.computeSafeArtifactName(suggestedName, ext, arch, skipDefaultArch, defaultArch, safePattern)null | String

Param Type
suggestedName String | “undefined”
ext String
arch Arch | “undefined”
skipDefaultArch
defaultArch String
safePattern

macPackager.getDefaultFrameworkIcon()null | String

macPackager.dispatchArtifactCreated(file, target, arch, safeArtifactName)Promise<void>

Param Type
file String
target Target | “undefined”
arch Arch | “undefined”
safeArtifactName String | “undefined”

macPackager.expandArtifactBeautyNamePattern(targetSpecificOptions, ext, arch)String

Param Type
targetSpecificOptions TargetSpecificOptions | “undefined” | undefined
ext String
arch Arch | “undefined”

macPackager.expandArtifactNamePattern(targetSpecificOptions, ext, arch, defaultPattern, skipDefaultArch, defaultArch)String

Param Type
targetSpecificOptions TargetSpecificOptions | “undefined” | undefined
ext String
arch Arch | “undefined”
defaultPattern String
skipDefaultArch
defaultArch String

macPackager.expandMacro(pattern, arch, extra, isProductNameSanitized)String

Param Type
pattern String
arch String | “undefined”
extra any
isProductNameSanitized

macPackager.generateName2(ext, classifier, deployment)String

Param Type
ext String | “undefined”
classifier String | “undefined” | undefined
deployment Boolean

macPackager.getMacOsResourcesDir(appOutDir)String

Param Type
appOutDir String

macPackager.resolveIcon(sources, fallbackSources, outputFormat)Promise<Array<module:app-builder-lib/out/platformPackager.IconInfo>>

Param Type
sources Array<String>
fallbackSources Array<String>
outputFormat “set” | “icns” | “ico”

macPackager.getResource(custom, names)Promise< | String>

Param Type
custom String | “undefined” | undefined
names Array<String>

macPackager.getResourcesDir(appOutDir)String

Param Type
appOutDir String

macPackager.getTempFile(suffix)Promise<String>

Param Type
suffix String

Packager

Kind: class of app-builder-lib
Properties

  • projectDir String
  • appDir String
  • metadata Metadata
  • areNodeModulesHandledExternally Boolean
  • isPrepackedAppAsar Boolean
  • devMetadata Metadata | “undefined”
  • config Configuration
  • isTwoPackageJsonProjectLayoutUsed = false Boolean
  • eventEmitter = new EventEmitter() module:events.EventEmitter
  • _appInfo AppInfo | “undefined”
  • appInfo AppInfo
  • tempDirManager = new TmpDir("packager") TmpDir
  • options PackagerOptions
  • debugLogger = new DebugLogger(log.isDebugEnabled) DebugLogger
  • repositoryInfo Promise< | SourceRepositoryInfo>
  • [stageDirPathCustomizer=(target, packager, arch) => { return path.join(target.outDir, __${target.name}-${getArtifactArchName(arch, target.name)}) }] callback
  • buildResourcesDir String
  • relativeBuildResourcesDirname String
  • framework Framework

Methods

packager.addAfterPackHandler(handler)

Param Type
handler callback

packager.afterPack(context)Promise<any>

Param Type
context module:app-builder-lib/out/configuration.PackContext

packager.artifactCreated(handler)Packager

Param Type
handler callback

packager.build(repositoryInfo)Promise<BuildResult>

Param Type
repositoryInfo SourceRepositoryInfo

packager.callAppxManifestCreated(path)Promise<void>

Param Type
path String

packager.callArtifactBuildCompleted(event)Promise<void>

Param Type
event ArtifactCreated

packager.callArtifactBuildStarted(event, logFields)Promise<void>

Param Type
event ArtifactBuildStarted
logFields any

packager.callMsiProjectCreated(path)Promise<void>

Param Type
path String

packager.dispatchArtifactCreated(event)

Only for sub artifacts (update info), for main artifacts use callArtifactBuildCompleted.

Param Type
event ArtifactCreated

packager.disposeOnBuildFinish(disposer)

Param Type
disposer callback

packager.installAppDependencies(platform, arch)Promise<any>

Param Type
platform Platform
arch Arch

packager.getNodeDependencyInfo(platform)Lazy<Array<module:app-builder-lib/out/util/packageDependencies.NodeModuleDirInfo>>

Param Type
platform Platform | “undefined”

packager.validateConfig()Promise<void>

Platform

Kind: class of app-builder-lib
Properties

  • MAC = new Platform("mac", "mac", "darwin") Platform
  • LINUX = new Platform("linux", "linux", "linux") Platform
  • WINDOWS = new Platform("windows", "win", "win32") Platform

Methods

platform.createTarget(type, archs)Map<Platform | Map<Arch | Array<String>>>

Param Type
type String | Array<String> | “undefined”
archs Array<Arch>

platform.current()Platform

platform.fromString(name)Platform

Param Type
name String

platform.toString()String

PlatformPackager

Kind: class of app-builder-lib
Properties

  • packagerOptions PackagerOptions
  • buildResourcesDir String
  • projectDir String
  • config Configuration
  • platformSpecificBuildOptions module:app-builder-lib/out/platformPackager.DC
  • resourceList Promise<Array<String>>
  • appInfo AppInfo
  • compression “store” | “normal” | “maximum”
  • debugLogger DebugLogger
  • defaultTarget Array<String>
  • fileAssociations Array<FileAssociation>
  • forceCodeSigning Boolean

Methods

platformPackager.artifactPatternConfig(targetSpecificOptions, defaultPattern)module:app-builder-lib/out/platformPackager.__object

Param Type
targetSpecificOptions TargetSpecificOptions | “undefined” | undefined
defaultPattern String | undefined

platformPackager.computeSafeArtifactName(suggestedName, ext, arch, skipDefaultArch, defaultArch, safePattern)null | String

Param Type
suggestedName String | “undefined”
ext String
arch Arch | “undefined”
skipDefaultArch
defaultArch String
safePattern

platformPackager.createTargets(targets, mapper)

Param Type
targets Array<String>
mapper callback

platformPackager.getDefaultFrameworkIcon()null | String

platformPackager.dispatchArtifactCreated(file, target, arch, safeArtifactName)Promise<void>

Param Type
file String
target Target | “undefined”
arch Arch | “undefined”
safeArtifactName String | “undefined”

platformPackager.getElectronDestinationDir(appOutDir)String

Param Type
appOutDir String

platformPackager.getElectronSrcDir(dist)String

Param Type
dist String

platformPackager.expandArtifactBeautyNamePattern(targetSpecificOptions, ext, arch)String

Param Type
targetSpecificOptions TargetSpecificOptions | “undefined” | undefined
ext String
arch Arch | “undefined”

platformPackager.expandArtifactNamePattern(targetSpecificOptions, ext, arch, defaultPattern, skipDefaultArch, defaultArch)String

Param Type
targetSpecificOptions TargetSpecificOptions | “undefined” | undefined
ext String
arch Arch | “undefined”
defaultPattern String
skipDefaultArch
defaultArch String

platformPackager.expandMacro(pattern, arch, extra, isProductNameSanitized)String

Param Type
pattern String
arch String | “undefined”
extra any
isProductNameSanitized

platformPackager.generateName2(ext, classifier, deployment)String

Param Type
ext String | “undefined”
classifier String | “undefined” | undefined
deployment Boolean

platformPackager.getIconPath()Promise< | String>

platformPackager.getMacOsResourcesDir(appOutDir)String

Param Type
appOutDir String

platformPackager.pack(outDir, arch, targets, taskManager)Promise<any>

Param Type
outDir String
arch Arch
targets Array<Target>
taskManager AsyncTaskManager

platformPackager.resolveIcon(sources, fallbackSources, outputFormat)Promise<Array<module:app-builder-lib/out/platformPackager.IconInfo>>

Param Type
sources Array<String>
fallbackSources Array<String>
outputFormat “set” | “icns” | “ico”

platformPackager.getResource(custom, names)Promise< | String>

Param Type
custom String | “undefined” | undefined
names Array<String>

platformPackager.getResourcesDir(appOutDir)String

Param Type
appOutDir String

platformPackager.getTempFile(suffix)Promise<String>

Param Type
suffix String

PublishManager ⇐ module:packages/electron-publish/out/publisher.PublishContext

Kind: class of app-builder-lib
Extends: module:packages/electron-publish/out/publisher.PublishContext
Properties

  • isPublish = false Boolean
  • progress = (process.stdout as TtyWriteStream).isTTY ? new MultiProgress() : null MultiProgress

Methods

publishManager.awaitTasks()Promise<void>

publishManager.cancelTasks()

publishManager.getGlobalPublishConfigurations()Promise< | Array>

publishManager.scheduleUpload(publishConfig, event, appInfo)

Param Type
publishConfig PublishConfiguration
event module:packages/electron-publish/out/publisher.UploadTask
appInfo AppInfo

Target

Kind: class of app-builder-lib
Properties

Methods

target.build(appOutDir, arch)Promise<any>

Param Type
appOutDir String
arch Arch

target.finishBuild()Promise<any>

WinPackager ⇐ PlatformPackager

Kind: class of app-builder-lib
Extends: PlatformPackager
Properties

  • **<code id="WinPackager-[cscInfo=new Lazy<FileCodeSigningInfo | CertificateFromStoreInfo | null>(() => { const platformSpecificBuildOptions = this.platformSpecificBuildOptions if (platformSpecificBuildOptions.certificateSubjectName != null || platformSpecificBuildOptions.certificateSha1 != null) { return this.vm.value .then(vm => getCertificateFromStoreInfo(platformSpecificBuildOptions, vm)) .catch((e: any) => { // https://github.com/electron-userland/electron-builder/pull/2397 if (platformSpecificBuildOptions.sign == null) { throw e } else { log.debug({ error: e }, “getCertificateFromStoreInfo error”) return null } }) }

    const certificateFile = platformSpecificBuildOptions.certificateFile if (certificateFile != null) { const certificatePassword = this.getCscPassword() return Promise.resolve({ file: certificateFile, password: certificatePassword == null ? null : certificatePassword.trim(), }) }

    const cscLink = this.getCscLink(“WIN_CSC_LINK”) if (cscLink == null) { return Promise.resolve(null) }

    return ( importCertificate(cscLink, this.info.tempDirManager, this.projectDir) // before then .catch((e: any) => { if (e instanceof InvalidConfigurationError) { throw new InvalidConfigurationError(Env WIN_CSC_LINK is not correct, cannot resolve: ${e.message}) } else { throw e } }) .then(path => { return { file: path, password: this.getCscPassword(), } }) ) })]">[cscInfo=new Lazy<FileCodeSigningInfo | CertificateFromStoreInfo | null>(() => { const platformSpecificBuildOptions = this.platformSpecificBuildOptions if (platformSpecificBuildOptions.certificateSubjectName != null || platformSpecificBuildOptions.certificateSha1 != null) { return this.vm.value .then(vm => getCertificateFromStoreInfo(platformSpecificBuildOptions, vm)) .catch((e: any) => { // https://github.com/electron-userland/electron-builder/pull/2397 if (platformSpecificBuildOptions.sign == null) { throw e } else { log.debug({ error: e }, “getCertificateFromStoreInfo error”) return null } }) }

    const certificateFile = platformSpecificBuildOptions.certificateFile if (certificateFile != null) { const certificatePassword = this.getCscPassword() return Promise.resolve({ file: certificateFile, password: certificatePassword == null ? null : certificatePassword.trim(), }) }

    const cscLink = this.getCscLink(“WIN_CSC_LINK”) if (cscLink == null) { return Promise.resolve(null) }

    return ( importCertificate(cscLink, this.info.tempDirManager, this.projectDir) // before then .catch((e: any) => { if (e instanceof InvalidConfigurationError) { throw new InvalidConfigurationError(Env WIN_CSC_LINK is not correct, cannot resolve: ${e.message}) } else { throw e } }) .then(path => { return { file: path, password: this.getCscPassword(), } }) ) })]** Lazy< | FileCodeSigningInfo | CertificateFromStoreInfo>

  • vm = new Lazy<VmManager>(() => (process.platform === "win32" ? Promise.resolve(new VmManager()) : getWindowsVm(this.debugLogger))) Lazy<module:app-builder-lib/out/vm/vm.VmManager>

  • **<code id="WinPackager-[computedPublisherName=new Lazy<Array | null>(async () => { const publisherName = this.platformSpecificBuildOptions.publisherName if (publisherName === null) { return null } else if (publisherName != null) { return asArray(publisherName) }

    const certInfo = await this.lazyCertInfo.value return certInfo == null ? null : [certInfo.commonName] })]">[computedPublisherName=new Lazy<Array | null>(async () => { const publisherName = this.platformSpecificBuildOptions.publisherName if (publisherName === null) { return null } else if (publisherName != null) { return asArray(publisherName) }

    const certInfo = await this.lazyCertInfo.value return certInfo == null ? null : [certInfo.commonName] })]** Lazy< | Array>

  • **<code id="WinPackager-[lazyCertInfo=new Lazy<CertificateInfo | null>(async () => { const cscInfo = await this.cscInfo.value if (cscInfo == null) { return null }

    if (“subject” in cscInfo) { const bloodyMicrosoftSubjectDn = cscInfo.subject return { commonName: parseDn(bloodyMicrosoftSubjectDn).get(“CN”)!, bloodyMicrosoftSubjectDn, } }

    const cscFile = cscInfo.file if (cscFile == null) { return null } return await getCertInfo(cscFile, cscInfo.password || “”) })]">[lazyCertInfo=new Lazy<CertificateInfo | null>(async () => { const cscInfo = await this.cscInfo.value if (cscInfo == null) { return null }

    if (“subject” in cscInfo) { const bloodyMicrosoftSubjectDn = cscInfo.subject return { commonName: parseDn(bloodyMicrosoftSubjectDn).get(“CN”)!, bloodyMicrosoftSubjectDn, } }

    const cscFile = cscInfo.file if (cscFile == null) { return null } return await getCertInfo(cscFile, cscInfo.password || “”) })]** Lazy< | module:app-builder-lib/out/codeSign/windowsCodeSign.CertificateInfo>

  • isForceCodeSigningVerification Boolean

  • defaultTarget Array<String>

Methods

winPackager.createTargets(targets, mapper)

Overrides: createTargets

Param Type
targets Array<String>
mapper callback

winPackager.getIconPath()Promise< | String>

Overrides: getIconPath

winPackager.sign(file, logMessagePrefix)Promise<Boolean>

Param Type
file String
logMessagePrefix String

winPackager.signAndEditResources(file, arch, outDir, internalName, requestedExecutionLevel)Promise<void>

Param Type
file String
arch Arch
outDir String
internalName String | “undefined”
requestedExecutionLevel “asInvoker” | “highestAvailable” | “requireAdministrator” | “undefined”

winPackager.artifactPatternConfig(targetSpecificOptions, defaultPattern)module:app-builder-lib/out/platformPackager.__object

Param Type
targetSpecificOptions TargetSpecificOptions | “undefined” | undefined
defaultPattern String | undefined

winPackager.computeSafeArtifactName(suggestedName, ext, arch, skipDefaultArch, defaultArch, safePattern)null | String

Param Type
suggestedName String | “undefined”
ext String
arch Arch | “undefined”
skipDefaultArch
defaultArch String
safePattern

winPackager.getDefaultFrameworkIcon()null | String

winPackager.dispatchArtifactCreated(file, target, arch, safeArtifactName)Promise<void>

Param Type
file String
target Target | “undefined”
arch Arch | “undefined”
safeArtifactName String | “undefined”

winPackager.getElectronDestinationDir(appOutDir)String

Param Type
appOutDir String

winPackager.getElectronSrcDir(dist)String

Param Type
dist String

winPackager.expandArtifactBeautyNamePattern(targetSpecificOptions, ext, arch)String

Param Type
targetSpecificOptions TargetSpecificOptions | “undefined” | undefined
ext String
arch Arch | “undefined”

winPackager.expandArtifactNamePattern(targetSpecificOptions, ext, arch, defaultPattern, skipDefaultArch, defaultArch)String

Param Type
targetSpecificOptions TargetSpecificOptions | “undefined” | undefined
ext String
arch Arch | “undefined”
defaultPattern String
skipDefaultArch
defaultArch String

winPackager.expandMacro(pattern, arch, extra, isProductNameSanitized)String

Param Type
pattern String
arch String | “undefined”
extra any
isProductNameSanitized

winPackager.generateName2(ext, classifier, deployment)String

Param Type
ext String | “undefined”
classifier String | “undefined” | undefined
deployment Boolean

winPackager.getMacOsResourcesDir(appOutDir)String

Param Type
appOutDir String

winPackager.pack(outDir, arch, targets, taskManager)Promise<any>

Param Type
outDir String
arch Arch
targets Array<Target>
taskManager AsyncTaskManager

winPackager.resolveIcon(sources, fallbackSources, outputFormat)Promise<Array<module:app-builder-lib/out/platformPackager.IconInfo>>

Param Type
sources Array<String>
fallbackSources Array<String>
outputFormat “set” | “icns” | “ico”

winPackager.getResource(custom, names)Promise< | String>

Param Type
custom String | “undefined” | undefined
names Array<String>

winPackager.getResourcesDir(appOutDir)String

Param Type
appOutDir String

winPackager.getTempFile(suffix)Promise<String>

Param Type
suffix String

app-builder-lib.build(options, packager)Promise<Array<String>>

Kind: method of app-builder-lib

Param Type
options PackagerOptions | module:packages/electron-publish/out/publisher.PublishOptions
packager Packager

app-builder-lib.buildForge(forgeOptions, options)Promise<Array<String>>

Kind: method of app-builder-lib

Param Type
forgeOptions ForgeOptions
options PackagerOptions

dmg-builder

dmg-builder.attachAndExecute(dmgPath, readWrite, task)Promise<any>

Kind: method of dmg-builder

Param Type
dmgPath String
readWrite Boolean
task callback

dmg-builder.computeBackground(packager)Promise<String>

Kind: method of dmg-builder

Param Type
packager PlatformPackager<any>

dmg-builder.detach(name)Promise<String>

Kind: method of dmg-builder

Param Type
name String

dmg-builder.getDmgTemplatePath()String

Kind: method of dmg-builder

dmg-builder.getDmgVendorPath()String

Kind: method of dmg-builder

electron-publish

PublishContext

Kind: interface of electron-publish
Properties

  • cancellationToken CancellationToken
  • progress module:electron-publish/out/multiProgress.MultiProgress | “undefined”

UploadTask

Kind: interface of electron-publish
Properties

  • file String
  • fileContent module:global.Buffer | “undefined”
  • arch Arch | “undefined”
  • safeArtifactName String | “undefined”
  • timeout Number | “undefined”

HttpPublisher ⇐ Publisher

Kind: class of electron-publish
Extends: Publisher

httpPublisher.upload(task)Promise<any>

Overrides: upload

Param Type
task UploadTask

httpPublisher.toString()String

ProgressCallback

Kind: class of electron-publish

progressCallback.update(transferred, total)

Param Type
transferred Number
total Number

Publisher

Kind: class of electron-publish
Properties

  • providerName “github” | “s3” | “spaces” | “generic” | “custom” | “snapStore” | “keygen” | “bitbucket”

Methods

publisher.toString()String

publisher.upload(task)Promise<any>

Param Type
task UploadTask

electron-publish.getCiTag()null | String

Kind: method of electron-publish

electron-updater

Logger

Kind: interface of electron-updater

logger.debug(message)

Param Type
message String

logger.error(message)

Param Type
message any

logger.info(message)

Param Type
message any

logger.warn(message)

Param Type
message any

ResolvedUpdateFileInfo

Kind: interface of electron-updater
Properties

  • url module:url.URL
  • info module:builder-util-runtime.UpdateFileInfo
  • packageInfo module:builder-util-runtime.PackageFileInfo

UpdateCheckResult

Kind: interface of electron-updater
Properties

  • updateInfo module:builder-util-runtime.UpdateInfo
  • downloadPromise Promise<Array<String>> | “undefined”
  • cancellationToken CancellationToken
  • versionInfo module:builder-util-runtime.UpdateInfo - Deprecated:

UpdateDownloadedEventmodule:builder-util-runtime.UpdateInfo

Kind: interface of electron-updater
Extends: module:builder-util-runtime.UpdateInfo
Properties

  • downloadedFile String

AppImageUpdater ⇐ BaseUpdater

Kind: class of electron-updater
Extends: BaseUpdater

appImageUpdater.isUpdaterActive()Boolean

appImageUpdater.install(isSilent, isForceRunAfter)Boolean

Param
isSilent
isForceRunAfter

appImageUpdater.quitAndInstall(isSilent, isForceRunAfter)

Param
isSilent
isForceRunAfter

AppUpdater ⇐ module:tiny-typed-emitter/lib/index.TypedEmitter

Kind: class of electron-updater
Extends: module:tiny-typed-emitter/lib/index.TypedEmitter
Properties

  • autoDownload = true Boolean - Whether to automatically download an update when it is found.

  • autoInstallOnAppQuit = true Boolean - Whether to automatically install a downloaded update on app quit (if quitAndInstall was not called before).

  • autoRunAppAfterInstall = true Boolean - windows-only Whether to run the app after finish install when run the installer NOT in silent mode.

  • allowPrerelease = false Boolean - GitHub provider only. Whether to allow update to pre-release versions. Defaults to true if application version contains prerelease components (e.g. 0.12.1-alpha.1, here alpha is a prerelease component), otherwise false.

    If true, downgrade will be allowed (allowDowngrade will be set to true).

  • fullChangelog = false Boolean - GitHub provider only. Get all release notes (from current version to latest), not just the latest.

  • allowDowngrade = false Boolean - Whether to allow version downgrade (when a user from the beta channel wants to go back to the stable channel).

    Taken in account only if channel differs (pre-release version component in terms of semantic versioning).

  • disableWebInstaller = false Boolean - Web installer files might not have signature verification, this switch prevents to load them unless it is needed.

    Currently false to prevent breaking the current API, but it should be changed to default true at some point that breaking changes are allowed.

  • disableDifferentialDownload = false Boolean - NSIS only Disable differential downloads and always perform full download of installer.

  • forceDevUpdateConfig = false Boolean - Allows developer to force the updater to work in “dev” mode, looking for “dev-app-update.yml” instead of “app-update.yml” Dev: path.join(this.app.getAppPath(), "dev-app-update.yml") Prod: path.join(process.resourcesPath!, "app-update.yml")

  • currentVersion SemVer - The current application version.

  • channel String | “undefined” - Get the update channel. Not applicable for GitHub. Doesn’t return channel from the update configuration, only if was previously set.

  • requestHeaders [key: string]: string | “undefined” - The request headers.

  • netSession Electron:Session

  • logger Logger | “undefined” - The logger. You can pass electron-log, winston or another logger with the following interface: { info(), warn(), error() }. Set it to null if you would like to disable a logging feature.

  • signals = new UpdaterSignal(this) UpdaterSignal

  • configOnDisk = new Lazy<any>(() => this.loadUpdateConfig()) Lazy<any>

  • httpExecutor module:electron-updater/out/electronHttpExecutor.ElectronHttpExecutor

  • isAddNoCacheQuery Boolean

Methods

appUpdater.addAuthHeader(token)

Shortcut for explicitly adding auth tokens to request headers

Param Type
token String

appUpdater.checkForUpdates()Promise< | UpdateCheckResult>

Asks the server whether there is an update.

appUpdater.checkForUpdatesAndNotify(downloadNotification)Promise< | UpdateCheckResult>

Param Type
downloadNotification module:electron-updater/out/AppUpdater.DownloadNotification

appUpdater.downloadUpdate(cancellationToken)Promise<Array<String>>

Start downloading update manually. You can use this method if autoDownload option is set to false.

Returns: Promise<Array<String>> - Paths to downloaded files.

Param Type
cancellationToken CancellationToken

appUpdater.getFeedURL()undefined | null | String

appUpdater.setFeedURL(options)

Configure update provider. If value is string, GenericServerOptions will be set with value as url.

Param Type Description
options PublishConfiguration | String | GithubOptions | S3Options | SpacesOptions | GenericServerOptions | module:builder-util-runtime/out/publishOptions.CustomPublishOptions | module:builder-util-runtime/out/publishOptions.KeygenOptions | SnapStoreOptions | module:builder-util-runtime/out/publishOptions.BitbucketOptions | String If you want to override configuration in the app-update.yml.

appUpdater.isUpdaterActive()Boolean

appUpdater.quitAndInstall(isSilent, isForceRunAfter)

Restarts the app and installs the update after it has been downloaded. It should only be called after update-downloaded has been emitted.

Note: autoUpdater.quitAndInstall() will close all application windows first and only emit before-quit event on app after that. This is different from the normal quit event sequence.

Param Type Description
isSilent Boolean windows-only Runs the installer in silent mode. Defaults to false.
isForceRunAfter Boolean Run the app after finish even on silent install. Not applicable for macOS. Ignored if isSilent is set to false(In this case you can still set autoRunAppAfterInstall to false to prevent run the app after finish).

BaseUpdater ⇐ AppUpdater

Kind: class of electron-updater
Extends: AppUpdater

baseUpdater.install(isSilent, isForceRunAfter)Boolean

Param
isSilent
isForceRunAfter

baseUpdater.quitAndInstall(isSilent, isForceRunAfter)

Overrides: quitAndInstall

Param
isSilent
isForceRunAfter

baseUpdater.addAuthHeader(token)

Shortcut for explicitly adding auth tokens to request headers

Param Type
token String

baseUpdater.checkForUpdates()Promise< | UpdateCheckResult>

Asks the server whether there is an update.

baseUpdater.checkForUpdatesAndNotify(downloadNotification)Promise< | UpdateCheckResult>

Param Type
downloadNotification module:electron-updater/out/AppUpdater.DownloadNotification

baseUpdater.downloadUpdate(cancellationToken)Promise<Array<String>>

Start downloading update manually. You can use this method if autoDownload option is set to false.

Returns: Promise<Array<String>> - Paths to downloaded files.

Param Type
cancellationToken CancellationToken

baseUpdater.getFeedURL()undefined | null | String

baseUpdater.setFeedURL(options)

Configure update provider. If value is string, GenericServerOptions will be set with value as url.

Param Type Description
options PublishConfiguration | String | GithubOptions | S3Options | SpacesOptions | GenericServerOptions | module:builder-util-runtime/out/publishOptions.CustomPublishOptions | module:builder-util-runtime/out/publishOptions.KeygenOptions | SnapStoreOptions | module:builder-util-runtime/out/publishOptions.BitbucketOptions | String If you want to override configuration in the app-update.yml.

baseUpdater.isUpdaterActive()Boolean

DebUpdater ⇐ BaseUpdater

Kind: class of electron-updater
Extends: BaseUpdater

debUpdater.install(isSilent, isForceRunAfter)Boolean

Param
isSilent
isForceRunAfter

debUpdater.quitAndInstall(isSilent, isForceRunAfter)

Param
isSilent
isForceRunAfter

debUpdater.addAuthHeader(token)

Shortcut for explicitly adding auth tokens to request headers

Param Type
token String

debUpdater.checkForUpdates()Promise< | UpdateCheckResult>

Asks the server whether there is an update.

debUpdater.checkForUpdatesAndNotify(downloadNotification)Promise< | UpdateCheckResult>

Param Type
downloadNotification module:electron-updater/out/AppUpdater.DownloadNotification

debUpdater.downloadUpdate(cancellationToken)Promise<Array<String>>

Start downloading update manually. You can use this method if autoDownload option is set to false.

Returns: Promise<Array<String>> - Paths to downloaded files.

Param Type
cancellationToken CancellationToken

debUpdater.getFeedURL()undefined | null | String

debUpdater.setFeedURL(options)

Configure update provider. If value is string, GenericServerOptions will be set with value as url.

Param Type Description
options PublishConfiguration | String | GithubOptions | S3Options | SpacesOptions | GenericServerOptions | module:builder-util-runtime/out/publishOptions.CustomPublishOptions | module:builder-util-runtime/out/publishOptions.KeygenOptions | SnapStoreOptions | module:builder-util-runtime/out/publishOptions.BitbucketOptions | String If you want to override configuration in the app-update.yml.

debUpdater.isUpdaterActive()Boolean

MacUpdater ⇐ AppUpdater

Kind: class of electron-updater
Extends: AppUpdater

macUpdater.quitAndInstall()

Overrides: quitAndInstall

macUpdater.addAuthHeader(token)

Shortcut for explicitly adding auth tokens to request headers

Param Type
token String

macUpdater.checkForUpdates()Promise< | UpdateCheckResult>

Asks the server whether there is an update.

macUpdater.checkForUpdatesAndNotify(downloadNotification)Promise< | UpdateCheckResult>

Param Type
downloadNotification module:electron-updater/out/AppUpdater.DownloadNotification

macUpdater.downloadUpdate(cancellationToken)Promise<Array<String>>

Start downloading update manually. You can use this method if autoDownload option is set to false.

Returns: Promise<Array<String>> - Paths to downloaded files.

Param Type
cancellationToken CancellationToken

macUpdater.getFeedURL()undefined | null | String

macUpdater.setFeedURL(options)

Configure update provider. If value is string, GenericServerOptions will be set with value as url.

Param Type Description
options PublishConfiguration | String | GithubOptions | S3Options | SpacesOptions | GenericServerOptions | module:builder-util-runtime/out/publishOptions.CustomPublishOptions | module:builder-util-runtime/out/publishOptions.KeygenOptions | SnapStoreOptions | module:builder-util-runtime/out/publishOptions.BitbucketOptions | String If you want to override configuration in the app-update.yml.

macUpdater.isUpdaterActive()Boolean

NsisUpdater ⇐ BaseUpdater

Kind: class of electron-updater
Extends: BaseUpdater
Properties

  • installDirectory String - Specify custom install directory path
  • verifyUpdateCodeSignature module:electron-updater.__type - The verifyUpdateCodeSignature. You can pass win-verify-signature or another custom verify function: (publisherName: string[], path: string) => Promise<string | null>. The default verify function uses windowsExecutableCodeSignatureVerifier

Methods

nsisUpdater.install(isSilent, isForceRunAfter)Boolean

Param
isSilent
isForceRunAfter

nsisUpdater.quitAndInstall(isSilent, isForceRunAfter)

Param
isSilent
isForceRunAfter

nsisUpdater.addAuthHeader(token)

Shortcut for explicitly adding auth tokens to request headers

Param Type
token String

nsisUpdater.checkForUpdates()Promise< | UpdateCheckResult>

Asks the server whether there is an update.

nsisUpdater.checkForUpdatesAndNotify(downloadNotification)Promise< | UpdateCheckResult>

Param Type
downloadNotification module:electron-updater/out/AppUpdater.DownloadNotification

nsisUpdater.downloadUpdate(cancellationToken)Promise<Array<String>>

Start downloading update manually. You can use this method if autoDownload option is set to false.

Returns: Promise<Array<String>> - Paths to downloaded files.

Param Type
cancellationToken CancellationToken

nsisUpdater.getFeedURL()undefined | null | String

nsisUpdater.setFeedURL(options)

Configure update provider. If value is string, GenericServerOptions will be set with value as url.

Param Type Description
options PublishConfiguration | String | GithubOptions | S3Options | SpacesOptions | GenericServerOptions | module:builder-util-runtime/out/publishOptions.CustomPublishOptions | module:builder-util-runtime/out/publishOptions.KeygenOptions | SnapStoreOptions | module:builder-util-runtime/out/publishOptions.BitbucketOptions | String If you want to override configuration in the app-update.yml.

nsisUpdater.isUpdaterActive()Boolean

Provider

Kind: class of electron-updater
Properties

  • isUseMultipleRangeRequest Boolean
  • fileExtraDownloadHeaders [key: string]: string | “undefined”

Methods

provider.getLatestVersion()Promise<module:electron-updater/out/providers/Provider.T>

provider.setRequestHeaders(value)

Param Type
value [key: string]: string | “undefined”

provider.resolveFiles(updateInfo)Array<ResolvedUpdateFileInfo>

Param Type
updateInfo module:electron-updater/out/providers/Provider.T

RpmUpdater ⇐ BaseUpdater

Kind: class of electron-updater
Extends: BaseUpdater

rpmUpdater.install(isSilent, isForceRunAfter)Boolean

Param
isSilent
isForceRunAfter

rpmUpdater.quitAndInstall(isSilent, isForceRunAfter)

Param
isSilent
isForceRunAfter

rpmUpdater.addAuthHeader(token)

Shortcut for explicitly adding auth tokens to request headers

Param Type
token String

rpmUpdater.checkForUpdates()Promise< | UpdateCheckResult>

Asks the server whether there is an update.

rpmUpdater.checkForUpdatesAndNotify(downloadNotification)Promise< | UpdateCheckResult>

Param Type
downloadNotification module:electron-updater/out/AppUpdater.DownloadNotification

rpmUpdater.downloadUpdate(cancellationToken)Promise<Array<String>>

Start downloading update manually. You can use this method if autoDownload option is set to false.

Returns: Promise<Array<String>> - Paths to downloaded files.

Param Type
cancellationToken CancellationToken

rpmUpdater.getFeedURL()undefined | null | String

rpmUpdater.setFeedURL(options)

Configure update provider. If value is string, GenericServerOptions will be set with value as url.

Param Type Description
options PublishConfiguration | String | GithubOptions | S3Options | SpacesOptions | GenericServerOptions | module:builder-util-runtime/out/publishOptions.CustomPublishOptions | module:builder-util-runtime/out/publishOptions.KeygenOptions | SnapStoreOptions | module:builder-util-runtime/out/publishOptions.BitbucketOptions | String If you want to override configuration in the app-update.yml.

rpmUpdater.isUpdaterActive()Boolean

UpdaterSignal

Kind: class of electron-updater

updaterSignal.login(handler)

Emitted when an authenticating proxy is asking for user credentials.

Param Type
handler module:electron-updater.__type

updaterSignal.progress(handler)

Param Type
handler callback

updaterSignal.updateCancelled(handler)

Param Type
handler callback

updaterSignal.updateDownloaded(handler)

Param Type
handler callback

electron-updater.autoUpdater : AppUpdater

Kind: constant of electron-updater