Skip to content

Research the signing and notarization strategy for macOS and Windows #19

Description

@eimexdev

Part of OpenBeat v0.1.0 public launch map.

Question

What signing and notarization strategy should OpenBeat use for trusted macOS and Windows GitHub Release artifacts, and how should its credentials be handled safely in GitHub Actions?

Research scope

macOS

  • Required Apple certificate types for the bundled executable and .pkg.
  • Signing order, hardened runtime, notarization, stapling, and verification.
  • App Store Connect API keys or other CI authentication.
  • Secret storage, rotation, and least-privilege practices.
  • Verification using codesign, pkgutil, spctl, and current notarization tooling.

Assume the maintainer has an Apple Developer account and Developer ID distribution is available.

Windows

  • Current Authenticode options for an open-source project: OV, EV, cloud signing, and reputable sponsorship programs.
  • Cost, identity verification, key-storage requirements, timestamping, renewal, SmartScreen/reputation implications, and GitHub Actions support.
  • Which executables should be signed and in what packaging order.
  • Verification and credential-rotation procedures.

Research artifact

Use $research and primary vendor documentation. Link a repository Markdown summary from the resolution comment. The answer must be decision-ready: recommended providers/approaches, expected cost and setup time, CI architecture, credential model, and rejected alternatives.

Handoff

Implement macOS Developer ID signing and notarization in the release workflow and Implement Windows Authenticode signing in the release workflow are blocked on this decision.

Metadata

Metadata

Assignees

Labels

launchRequired for the public launchresearchResearch needed before implementationsigningCode signing, notarization, and platform trustwayfinder:researchAFK research that resolves a decision

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions