1
0
mirror of https://github.com/h3poteto/whalebird-desktop synced 2024-12-14 01:34:15 +01:00
Whalebird-desktop-client-ma.../DEVELOPMENT.md
2019-07-27 22:49:11 +09:00

2.0 KiB

Release

Build

At first, you have to build.

$ 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.

# 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 Appplication: Akira Fukushima (DR9TBDD8DFM)

Then use make command.

# 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.

$ 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.

$ npm 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.

$ brew install snapcraft

or

$ snap install snapcraft --classic

Build command for linux generates a snap file.

$ make linux VERSION=2.8.0

And upload.

$ snapcraft push build/Whalebird-2.8.0-linux-amd64.snap  --release beta