Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 10 additions & 0 deletions .github/release-notes/v2.1.1.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
## NVENCForgeGUI 2.1.1: built on GitHub, ready for code signing

The window works exactly as in 2.1.0. This release is about where the exe comes from.

- **Built by GitHub Actions:** from this version on, `NVENCForgeGUI.exe` is built and published by GitHub Actions from the source in this repository, no longer on the developer's PC. The tests and window checks run before every release, and a dry run checks the whole build without publishing anything.
- **File properties:** the exe shows its name and version under right-click > Properties > Details.
- **Code signing prepared:** free code signing through the SignPath Foundation is applied for. Until it is active the exe stays unsigned. What would be signed and what the window fetches from GitHub (only when you click for it): [code signing policy](https://github.com/burnersen/NVENCForgeGUI/blob/main/CODE_SIGNING.md).
- **License:** GPL-3.0-only, and nothing else.

Update: About page > *Check for updates*, or replace `NVENCForgeGUI.exe` with the new one. Your converter, settings and profiles in `tools` stay.
25 changes: 22 additions & 3 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ on:
workflow_dispatch:
inputs:
tag:
description: 'Existing tag to release (for example v2.2.0)'
description: 'Version to release, e.g. v2.2.0: an existing tag is built as it is, a new one is built from main and tagged'
required: true
dry_run:
description: 'Dry run: build and check only, sign and publish nothing'
Expand Down Expand Up @@ -58,7 +58,6 @@ jobs:
steps:
- uses: actions/checkout@v4
with:
ref: ${{ inputs.tag || github.ref }}
# The annotated tag message can be the release text, and it only
# exists in a clone that carries the tag objects.
fetch-depth: 0
Expand All @@ -68,6 +67,26 @@ jobs:
go-version-file: go.mod
cache: true

# Started by hand: an existing tag is built exactly as tagged. A new
# version is built from main, and publishing the release creates its
# tag on the commit that was built.
- name: Commit to build
if: github.event_name == 'workflow_dispatch'
env:
RELEASE_TAG: ${{ inputs.tag }}
run: |
git rev-parse -q --verify "refs/tags/$env:RELEASE_TAG" *> $null
if ($LASTEXITCODE -eq 0) {
git checkout -q --detach "refs/tags/$env:RELEASE_TAG"
Write-Host "Building the existing tag $env:RELEASE_TAG."
} elseif ($env:GITHUB_REF_NAME -ne 'main' -and $env:DRY_RUN -ne 'true') {
Write-Host "::error::A new version is released from main only, not from $env:GITHUB_REF_NAME."
exit 1
} else {
Write-Host "Tag $env:RELEASE_TAG does not exist yet: building $env:GITHUB_REF_NAME, the release creates the tag."
}
$global:LASTEXITCODE = 0

# Node only runs the window checks; the interface itself has no build step.
- uses: actions/setup-node@v4
with:
Expand Down Expand Up @@ -239,5 +258,5 @@ jobs:
gh release edit $tag --title $title --notes-file release-notes.md --draft=false
gh release upload $tag NVENCForgeGUI.exe --clobber
} else {
gh release create $tag NVENCForgeGUI.exe --title $title --notes-file release-notes.md
gh release create $tag NVENCForgeGUI.exe --target (git rev-parse HEAD) --title $title --notes-file release-notes.md
}
2 changes: 1 addition & 1 deletion main.go
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ var assets embed.FS
// guiVersion ist die einzige Stelle, an der die Version dieses Fensters
// steht. Angezeigt wird sie im Fensterkopf (Titelleiste) und in der
// Kopfzeile der Oberfläche selbst (siehe StartupInfo in app.go).
const guiVersion = "2.1.0"
const guiVersion = "2.1.1"

// singleInstanceID hält die Startsperre. Der Name muss auf dem Rechner
// einmalig sein und darf sich nie ändern — sonst erkennt eine neue Ausgabe die
Expand Down
2 changes: 1 addition & 1 deletion wails.json
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
"info": {
"companyName": "burnersen",
"productName": "NVENCForgeGUI",
"productVersion": "2.1.0",
"productVersion": "2.1.1",
"copyright": "Copyright 2026 burnersen",
"comments": "A window for NVENCForge"
}
Expand Down
Loading