Skip to content

[Bug] macOS "App is damaged" error on launch - workaround available #5

@cch1rag

Description

@cch1rag

Environment

  • macOS: Tahoe 26.4 Beta
  • GhostMD version: v0.6.0
  • Downloaded from: GitHub Releases
  • Install method: Moved .app to /Applications manually

Steps to Reproduce

  1. Download GhostMD v0.6.0 from GitHub Releases
  2. Move GhostMD.app to /Applications
  3. Double-click to launch

Expected Behavior

GhostMD opens normally.

Actual Behavior

macOS displays the following dialog and blocks the app entirely:

"GhostMD" is damaged and can't be opened. You should move it to the Bin.

The "Open Anyway" option in System Settings > Privacy & Security does not
appear, leaving no visible path to proceed.

Image

Root Cause

The error is misleading — the binary is not corrupt. macOS applies a
com.apple.quarantine extended attribute to all files downloaded from the
internet. When an app lacks a valid Apple Developer signature + notarization
ticket, Gatekeeper on macOS 26 (Tahoe) escalates the block to the "damaged"
dialog with no GUI override available.

Confirmed Working Workaround

Run this in Terminal after moving the app to /Applications:

xattr -cr /Applications/GhostMD.app

Strips the quarantine attribute. App launches normally after.
Verified on macOS Tahoe 26.4 Beta.

Suggested Fix

Sign and notarize the macOS build in the GitHub Actions release workflow:

  • Apple Developer Program membership (~$99/yr)
  • Code signing via codesign
  • Notarization via xcrun notarytool
  • Staple the ticket: xcrun stapler staple

At minimum, please document the xattr -cr workaround prominently in the
README and release notes — without it, most users will discard a working build.

References

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions