Skip to content

Harden unsigned DMG signature integrity#203

Merged
aaf2tbz merged 3 commits into
mainfrom
fix/dmg-adhoc-signature-integrity
Jun 14, 2026
Merged

Harden unsigned DMG signature integrity#203
aaf2tbz merged 3 commits into
mainfrom
fix/dmg-adhoc-signature-integrity

Conversation

@aaf2tbz

@aaf2tbz aaf2tbz commented Jun 14, 2026

Copy link
Copy Markdown
Owner

Summary

  • ad-hoc sign the full macOS app bundle when Apple Developer ID credentials are unavailable
  • make mounted-DMG verification fail on invalid app bundle signatures
  • make the updater reject staged update apps that fail deep strict codesign verification

Evidence

  • Current v0.46.8 release logs show Apple signing secrets were empty and the workflow uploaded an unsigned DMG.
  • Local v0.46.8 DMG fails with: code has no resources but signature indicates they must be present.
  • The new mounted-DMG verifier rejects the broken v0.46.8 DMG before install.
  • The ad-hoc signing command repairs a copied v0.46.8 app bundle so codesign --verify --deep --strict passes.

Tests

  • python3 tools/ci/verify-dmg-workflow.py
  • node --check app/build/notarize.cjs
  • bash -n app/updater/update.sh
  • bash -n tools/dmg/verify-dmg-runtime-assets.sh

@aaf2tbz aaf2tbz merged commit 8fa23ff into main Jun 14, 2026
7 checks passed
@aaf2tbz aaf2tbz deleted the fix/dmg-adhoc-signature-integrity branch June 14, 2026 07: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.

1 participant