NPN uses goreleaser
to create build artifacts.
You can release to GitHub using ./bin/build/release.sh
, or test the release by running ./bin/build/release-test.sh
.
Your releases are available at https://github.com/kyleu/npn/releases
All release binaries are checksummed, available in checksums.txt
in the root of the release
A changelog will be created based on the commit history, including all authors and messages
Multiple Docker images will be created. The main image is ghcr.io/kyleu/npn/x.x.x
, and a debug image is provided at ghcr.io/kyleu/npn/x.x.x-debug
that includes delve
for debugging
Packages for macOS and Linux will be pushed to Homebrew at kyleu/homebrew-kyleu
The build will produce apk
, deb
, and rpm
packages for each supported Linux architecture
The build will create a bill of materials for each binary
Release binaries for macOS and iOS are notarized using Apple Notarization services
Release binaries and the checksum file are signed using gpg
The build will produce snap
packages for each supported Linux architecture
The source code will be bundled in the release, available as npn_x.x.x_source.zip
A universal macOS app will be created, containing the complete app for x86-64 and ARM
A standalone desktop application, bundling the server and a web view, will be built for Linux, macOS, and Windows
A standalone mobile app, bundling the server and a web view, will be built for Android and iOS
The server is compiled to WASM and available as a WebAssembly module