Publishing Etcher
This is a small guide to package and publish Etcher to all supported operating systems.
Release Types
Etcher supports pre-release and final release types as does Github. Each is published to Github releases. The release version is generated automatically from the commit messasges.
Signing
OS X
-
Get our Apple Developer ID certificate for signing applications distributed outside the Mac App Store from the balena.io Apple account.
-
Install the Developer ID certificate to your Mac's Keychain by double clicking on the certificate file.
The application will be signed automatically using this certificate when packaging for OS X.
Windows
-
Get access to our code signing certificate and decryption key as a balena.io employee by asking for it from the relevant people.
-
Place the certificate in the root of the Etcher repository naming it
certificate.p12
.
Packaging
Run the following command on each platform:
npm run make
This will produce all targets (eg. zip, dmg) specified in forge.config.ts for the host platform and architecture.
The resulting artifacts can be found in out/make
.
Publishing to Cloudfront
We publish GNU/Linux Debian packages to Cloudfront.
Log in to cloudfront and upload the rpm
and deb
files.
Publishing to Homebrew Cask
-
Update
Casks/etcher.rb
with the new version andsha256
-
Send a PR with the changes above to
caskroom/homebrew-cask
Announcing
Post messages to the Etcher forum announcing the new version of Etcher, and including the relevant section of the Changelog.
Updating EFP / Success-Banner
Etcher Featured Project is automatically run based on an algorithm which promoted projects from the balena marketplace which have been contributed by the community, the algorithm prioritises projects which give uses the best experience. Editing both EFP and the Etcher Success-Banner can only be done by someone from balena, instruction are on the Etcher-EFP repo (private)