Skip to content

Release workflow on GitHub, with code signing prepared (off until set up) - #2

Merged
burnersen merged 2 commits into
mainfrom
claude/signpath-prep
Oct 31, 2026
Merged

burnersen merged 2 commits into
mainfrom
claude/signpath-prep

Conversation

@burnersen

@burnersen burnersen commented Oct 31, 2026 •

Copy link
Copy Markdown
Owner

Until now NVENCForgeGUI.exe was not built by GitHub Actions. SignPath Foundation only signs files built from source on a trusted build system, so this adds a release workflow and prepares signing in it. Signing stays off until the variable SIGNPATH_ORGANIZATION_ID and the secret SIGNPATH_API_TOKEN are set.

What changes

  • New release.yml: push a tag vX.Y.Z equal to guiVersion, or "Run workflow" with an existing tag. It runs go test and the window checks, writes the version into wails.json (file properties), runs wails build (CLI v2.14.0, matching go.mod) and publishes NVENCForgeGUI.exe. The asset name stays the same, so the update button keeps working. The release text comes from .github/release-notes/vX.Y.Z.md or the annotated tag message.
  • Dry run: "Run workflow" with dry run ticked, and automatically for PRs that touch the workflow, wails.json, build/windows/ or .signpath/.
  • CODE_SIGNING.md: code signing policy (roles, what gets signed, privacy policy, uninstalling), linked from the README.
  • .signpath/: artifact configuration, file check, setup and removal instructions.
  • README: removes the offer of "a separate license for companies". NVENCForgeGUI is GPL-3.0-only and nothing else, as SignPath Foundation requires (no commercial dual-licensing). Ko-fi stays.

Test

The dry run of the new release workflow on this PR passed on Windows. Please check that the dry-run exe (artifact on the run page) behaves like the last release before the first real tag.

🤖 Generated with Claude Code

https://claude.ai/code/session_01GvUq7HnA5ggbuHBogzS2rV

… up)

Until now NVENCForgeGUI.exe was not built by GitHub Actions. The new
release workflow builds it from a tag vX.Y.Z (equal to guiVersion): tests,
window checks, wails build with the version written into the file
properties, then publishes NVENCForgeGUI.exe, the asset name the window's
update button looks for. The release text is .github/release-notes/vX.Y.Z.md
or the annotated tag message.

Code signing with SignPath is prepared in the same workflow but only runs
once the repository has the variable SIGNPATH_ORGANIZATION_ID and the
secret SIGNPATH_API_TOKEN; without them the exe is released unsigned.

- Dry run: by hand (tick "dry run") and for pull requests that change
  the release workflow, wails.json, build/windows/ or .signpath/.
- CODE_SIGNING.md: code signing policy with roles, privacy policy and
  uninstalling, linked from the README and from every release text.
- .signpath/: artifact configuration, file check, setup and removal.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01GvUq7HnA5ggbuHBogzS2rV
NVENCForgeGUI is GPL-3.0-only and nothing else. SignPath Foundation signs only
projects under an OSI license without commercial dual-licensing, and
the project is not meant to earn money anyway. Donations via Ko-fi stay.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01GvUq7HnA5ggbuHBogzS2rV
@burnersen
burnersen merged commit 46ae905 into main Oct 31, 2026
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants