Any macOS Target

The top-level mac key contains set of options instructing electron-builder on how it should build macOS targets. These options applicable for any macOS target.

  • category String - The application category type, as shown in the Finder via View -> Arrange by Application Category when viewing the Applications directory.

    For example, "category": "" will set the application category to Developer Tools.

    Valid values are listed in Apple’s documentation.

  • target String | TargetConfiguration - The target package type: list of default, dmg, mas, mas-dev, pkg, 7z, zip, tar.xz, tar.lz, tar.gz, tar.bz2, dir. Defaults to default (dmg and zip for Squirrel.Mac).

  • identity String - The name of certificate to use when signing. Consider using environment variables CSC_LINK or CSC_NAME instead of specifying this option. MAS installer identity is specified in the mas.
  • icon = build/icon.icns String - The path to application icon.
  • entitlements String - The path to entitlements file for signing the app. build/entitlements.mac.plist will be used if exists (it is a recommended way to set). MAS entitlements is specified in the mas.
  • entitlementsInherit String - The path to child entitlements which inherit the security settings for signing frameworks and bundles of a distribution. build/entitlements.mac.inherit.plist will be used if exists (it is a recommended way to set). Otherwise default.

    This option only applies when signing with entitlements provided.

  • provisioningProfile String - The path to the provisioning profile to use when signing, absolute or relative to the app root.

  • bundleVersion String - The CFBundleVersion. Do not use it unless you need to.
  • bundleShortVersion String - The CFBundleShortVersionString. Do not use it unless you need to.
  • darkModeSupport = false Boolean - Whether a dark mode is supported. If your app does have a dark mode, you can make your app follow the system-wide dark mode setting.
  • helperBundleId = ${appBundleIdentifier}.helper String - The bundle identifier to use in the application helper’s plist.
  • type = distribution “distribution” | “development” - Whether to sign app for development or for distribution.
  • extendInfo any - The extra entries for Info.plist.
  • binaries Array<String> - Paths of any extra binaries that need to be signed.
  • minimumSystemVersion String - The minimum version of macOS required for the app to run. Corresponds to LSMinimumSystemVersion.
  • requirements String - Path of requirements file used in signing. Not applicable for MAS.
  • electronLanguages Array<String> | String - The electron locales. By default Electron locales used as is.
  • extraDistFiles Array<String> | String - Extra files to put in archive. Not applicable for tar.*.
  • hardenedRuntime = true Boolean - Whether your app has to be signed with hardened runtime.
  • gatekeeperAssess = false Boolean - Whether to let electron-osx-sign validate the signing or not.

And all common platform-specific options.