How we build and release
We use GitHub Actions workflows to automate the entire release process.
We release in three steps:
- Create a draft release on Github
- Build and upload those builds to the draft release
- Publish the draft as the latest release
Create a draft
- Trigger: push a tag
vX.Y.Z
- Workflow: "release-1-draft"
- Result: a draft GitHub Release with autogenerated notes (no binaries yet)
Build and upload builds (All platforms on CI)
- Workflow: "release-2-build-upload" (manual, input the tag)
- Builds and uploads macOS (signed + notarized), Windows, and Linux artifacts to the same draft release
Publish the draft
- Workflow: "release-3-finalize" (manual, input the tag)
- Sets
draft=false
so users and auto-updaters see the new version
Github actions
See .github/workflows/
in the root
Use gh
cli tool to inspect workflows if needed
Notes
- All platforms are built on CI. macOS artifacts are code-signed and notarized automatically.
- We produce a single universal macOS DMG (Intel + Apple Silicon).
- The latest public release is available on the download page: silain.com/download.