pkg
Create a .pkg file for your Electron app on macOS using Electron Forge.
Last updated
Create a .pkg file for your Electron app on macOS using Electron Forge.
Last updated
The pkg target builds a .pkg
installer for macOS. These are used to upload your application to the Mac App Store (MAS), or can be used as an alternate distribution method to users outside of the app store.
This format is often referred to as a flat package installers for historical purposes. Prior to Mac OS X Leopard (10.5), installation packages were organized in hierarchical directories. OS X Leopard introduced a new flat package format that is used for modern .pkg
installers.
The flat installer package format is sparsely documented by Apple. If you want to learn more about its specification, there are a few userland articles available:
Flat Package Format - The missing documentation (Stéphane Sudre)
You can only build the pkg target on macOS machines while targeting the darwin
or mas
platforms.
To use @electron-forge/maker-pkg
, add it to the makers
array in your Forge configuration:
All configuration options are optional, and options are documented in the API docs for MakerPkgConfig
.
With the pkg maker, you can add either a preinstall
or postinstall
bash script that runs before and after your app is installed, respectively.
Both preinstall
and postinstall
scripts need to:
have execution permissions
be extension-less
be located in the same folder in your filesystem
For example, they can live in a folder in your project called scripts
.
Then, your Forge configuration would need to point to the ./scripts
folder.
All logs for your flat package installer can be found in macOS installation logs, which are stored in /var/log/install.log
. They are also accessible within the Console.app utility.
For advanced debug logging for this maker, add the DEBUG=electron-osx-sign*
environment variable.