File tree Expand file tree Collapse file tree 1 file changed +50
-0
lines changed
Expand file tree Collapse file tree 1 file changed +50
-0
lines changed Original file line number Diff line number Diff line change 1+ # Creating a Release
2+
3+ This document outlines the steps to create a new release for the project. Follow these steps carefully to ensure a smooth release process.
4+
5+ ## Prerequisites
6+
7+ - Zig installed (same version used in CI)
8+ - GnuPG with the release signing key available
9+ - [ OpenTimestamps client] ( https://github.com/opentimestamps/opentimestamps-client ) (` ots ` )
10+ - Access to create GitHub releases and to the [ sysupdates repository] ( https://github.com/nakamochi/sysupdates )
11+
12+ ## Step 1: Tag release
13+
14+ ```
15+ git tag -s vX.Y.Z -m "Release vX.Y.Z"
16+ ```
17+
18+ Replace ` X.Y.Z ` with the appropriate version number.
19+
20+ ## Step 2: Push tag
21+
22+ ```
23+ git push origin vX.Y.Z
24+ ```
25+
26+ ## Step 3: Build and sign aarch64 binaries
27+
28+ ```
29+ git submodule update --init --recursive
30+ zig build -Dtarget=aarch64-linux-musl -Ddriver=fbev -Doptimize=ReleaseSafe -Dstrip
31+ cd zig-out/bin
32+ tar czf ndg-vX.Y.Z-aarch64.tar.gz nd ngui
33+ gpg --sign --armor --detach-sign ndg-vX.Y.Z-aarch64.tar.gz
34+ ots stamp ndg-vX.Y.Z-aarch64.tar.gz.asc
35+ ```
36+
37+ ## Step 4: Create GitHub release
38+
39+ Go to the GitHub releases page for the repository and create a new release. Use the tag ` vX.Y.Z ` and upload the following files:
40+
41+ - ` ndg-vX.Y.Z-aarch64.tar.gz `
42+ - ` ndg-vX.Y.Z-aarch64.tar.gz.asc `
43+ - ` ndg-vX.Y.Z-aarch64.tar.gz.asc.ots `
44+
45+ Describe main changes in the release notes.
46+
47+ ## Step 5: Add new release to sysupdates
48+
49+ Update ` ndg/env ` in the [ sysupdates repository] ( https://github.com/nakamochi/sysupdates ) with the new version and its SHA256 checksum.
50+
You can’t perform that action at this time.
0 commit comments