Skip to content

Ship Windows zips, sign them, and document a Windows signerd host - #18

Merged
davidnewhall merged 5 commits into
mainfrom
feat/windows-release
Aug 26, 2026
Merged

davidnewhall merged 5 commits into
mainfrom
feat/windows-release

Conversation

@davidnewhall

Copy link
Copy Markdown
Contributor

Summary

  • GoReleaser Pro: Windows amd64/arm64 zips, darwin universals, Authenticode hook when CODESIGN_URL is set, Apple notarize when MACOS_SIGN_P12 is set. Release workflow installs this checkout's codesign CLI and uses goreleaser-pro with a 60m timeout.
  • Host docs and examples for a native Windows signerd (jsign + PIV, Task Scheduler logon task, Caddy). Release artifacts: Authenticode on PE, Apple-signed+notarized darwin, existing cosign on checksums.txt.

Stacked on the Windows config PR. Merge that first.

Test plan

  • goreleaser release --snapshot --clean without CODESIGN_URL / MACOS_SIGN_P12: unsigned Windows zips and un-notarized darwin universals, no hook/notary failure
  • After merge + tag: four Authenticode-signed Windows exes (signerd/codesign × amd64/arm64) and two notarized darwin universals; checksums.txt still cosign-signed
  • Friend-facing dry run on their box: codesign -url http://127.0.0.1:8750 -health

Made with Cursor

GoReleaser Pro builds windows/amd64+arm64 and darwin universals, Authenticode-signs PE when CODESIGN_URL is set, and notarizes macOS when MACOS_SIGN_P12 is set. Windows operators get jsign+PIV docs and a logon Task Scheduler job instead of a Session-0 service.

Co-authored-by: Cursor <cursoragent@cursor.com>

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Adds signed Windows release artifacts and documents native Windows signerd deployment.

Changes:

  • Adds Windows ZIPs, Authenticode signing, and macOS notarization.
  • Updates release automation for GoReleaser Pro.
  • Adds Windows deployment examples and documentation.

Reviewed changes

Copilot reviewed 10 out of 10 changed files in this pull request and generated 2 comments.

Show a summary per file
File Description
.goreleaser.yaml Configures Windows builds, signing, ZIPs, and Darwin universals.
.github/workflows/release.yml Adds signing credentials and GoReleaser Pro.
init/windows/signexe.sh Authenticode-signs Windows executables.
docs/windows.md Documents native Windows hosting.
docs/yubikey.md Mentions WinGet installation.
README.md Links Windows deployment guidance.
examples/signerd.toml.example Documents Windows and PIV settings.
examples/windows/signerd.toml.example Provides Windows jsign configuration.
examples/windows/signerd.task.xml Provides a logon task definition.
examples/windows/Caddyfile.example Provides a Windows reverse-proxy configuration.

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

Comment thread examples/windows/Caddyfile.example Outdated
Comment thread examples/windows/Caddyfile.example Outdated
davidnewhall and others added 2 commits August 25, 2026 19:29
require_and_verify enforces the documented client CA, and 100MiB matches max_body_mib.

Co-authored-by: Cursor <cursoragent@cursor.com>
Base automatically changed from feat/windows-config to main August 26, 2026 03:52

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 10 out of 10 changed files in this pull request and generated 3 comments.

Comment thread .github/workflows/release.yml
Comment thread docs/windows.md Outdated
Comment thread examples/windows/Caddyfile.example
GoReleaser can publish signed-only darwin when the P12 is set but notary secrets are empty. Task Scheduler history is not a log; the example wrapper appends stderr.

Co-authored-by: Cursor <cursoragent@cursor.com>
@davidnewhall
davidnewhall merged commit b7c5fb9 into main Aug 26, 2026
7 checks passed
@davidnewhall
davidnewhall deleted the feat/windows-release branch August 26, 2026 05:27
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