ChordPro / chordpro

Reference implementation of the ChordPro standard for musical lead sheets.
Other
321 stars 51 forks source link

ChordPro app will not open on macOS 15.x #444

Open jlg89 opened 1 week ago

jlg89 commented 1 week ago

Describe the bug

The READ ME FIRST file says that the app isn't a universal binary because "an unsigned arm-version will simply refuse to open."

Well, an unsigned app of any sort refuses to open on macOS 15.x, but the fix is simple (see below). So there's no reason not to go ahead and do a universal binary, and there's no reason to fret all that much about it being an unsigned app. Pun intended.

To Reproduce

Steps to reproduce the behavior:

  1. Download the ChordPro dmg for macOS
  2. Drag-install the ChordPro app
  3. Double-click the installed app OR right-click and select "Open"
  4. See error, same error either way.

Expected behavior

The app should open

System information

Additional context

The workaround is pretty simple. After drag-installing the app, execute these two commands in a Terminal window:

xattr -dr com.apple.quarantine /Applications/ChordPro.app
xattr -cr /Applications/ChordPro.app

You only have to do this once for the new app. I created a "ChordProFix.command" file with those commands in it, so I can just double-click that file after installing a new version of ChordPro.

Desbeers commented 1 week ago

https://arstechnica.com/gadgets/2024/08/macos-15-sequoia-makes-you-jump-through-more-hoops-to-disable-gatekeeper-app-checks/

"In macOS Sequoia, users will no longer be able to Control-click to override Gatekeeper when opening software that isn’t signed correctly or notarized," the brief note reads. "They’ll need to visit System Settings > Privacy & Security to review security information for software before allowing it to run."

With xattr you will only bypass the gatekeeper. The reason it works with your GitHub download is that it is an Intel version only. An arm binary will still not work when it is unsigned:

https://eclecticlight.co/2021/01/26/when-you-dont-have-permission-to-run-an-app-on-an-m1-mac/

Future macOS versions of ChordPro might be ad-hoc code signed to make universal binaries possible.

jlg89 commented 1 week ago

Ah, I didn't realize that it wasn't signed at all. The xattr method works with e.g. OpenLP, but that app is ad hoc code signed.