## Release ### Build At first, you have to build. ```bash $ make build ``` This command only generate javascript codes for Electron, so if you want to create release package, please read following document. ### Binary I use `electron-builder` to create package, but it is hidden by Makefile. So you can use make command. ```bash # for linux $ make linux VERSION=2.8.0 # for 64 bit Windows $ make wi64 VERSION=2.8.0 ``` You have to use macOS to build packages for macOS. And you have to install certificates for Mac Application. - Mac App Distribution: `Developer ID Application: Akira Fukushima (DR9TBDD8DFM)` - Mac App Installer Distribution: `Developer ID Application: Akira Fukushima (DR9TBDD8DFM)` Then use make command. ```bash # for mac $ make mac VERSION=2.8.0 ``` This command automatically loads the Developer ID Application certificate from your keychain. If you want to specify a certificate, please set `CSC_NAME` before this command. ```bash $ export CSC_NAME="Akira Fukushima (DR9TBDD8DFM)" $ make mac VERSION=2.8.0 ``` ### AppStore Please prepare certificates on your Apple developer console. The following keys are required: - Mac App Distribution: `3rd Party Mac Developer Application: Akira Fukushima (DR9TBDD8DFM)` - Mac Installer Distribution: `3rd Party Mac Developer Installer: Akira Fukushima (DR9TBDD8DFM)` and register your KeyChain. Then, create a Mac App ID like `org.whalebird.desktop`. ```bash $ yarn run build:mas # This command automatically loads the certificates from you keychain. $ ./appStore.sh ``` After that, the `.pkg` file is created under `./packages`. Please upload the `.pkg` to App Store using Application Loader in Xcode. ### Snapcraft First, please prepare snapcraft command. ```bash $ brew install snapcraft ``` or ```bash $ snap install snapcraft --classic ``` Build command for linux generates a snap file. ```bash $ make linux VERSION=2.8.0 ``` And upload. ```bash $ snapcraft push build/Whalebird-2.8.0-linux-amd64.snap --release beta ```