djh1697 - what *exactly* did you try and what *exactly* happened?
Yes there is a problem when building the openMSX on MacOS >=12
The app works fine when it is compiled on the Mac, but the app is not redistributable, even when compiled with an AppleDevelopper account (which is free for home development).
I hope a solution may comes ...
None of the main developers own a Mac, so help is needed from Mac experts. If they find a solution, we will integrate it.
@ericb59, that is expected. If you want to distribute an App, you need to sign it. As far as I know only if you pay for a full AppleDeveloper account (it was $100 a year last time I checked a few years ago) and then sign it with that account the app becomes distributable.
@ericb59, that is expected. If you want to distribute an App, you need to sign it. As far as I know only if you pay for a full AppleDeveloper account (it was $100 a year last time I checked a few years ago) and then sign it with that account the app becomes distributable.
Exactly. And if it is not properly signed, on MacOS >=12, you can disable the signature check with:
sudo xattr -r -d com.apple.quarantine openMSX.app
I do not think the problem is related to a signature. The Apple Silicon version of openMSX available on the official site, is signed with an "adhoc" signature which is valid. This signature is sufficient to run an App on MacOS as long as the user agrees to run applications from unknown developers (See MacOS system preferences).
I think the problem is elsewhere (But i can be wrong), at the level of the package structure, there must be missing information, perhaps in the info.plist file which prevents GateKeeper (the MacOS security software) from validating the execution of openMSX.
The command line "sudo xattr -r -d com.apple.quarantine openMSX.app" Does not remove the signature or disable verification. This command line removes the quarantine attribute of the file.
All files downloaded from the internet are automatically assigned a quarantine attribute. This attribute is given by the browser during the download.
This attribute tells GateKeeper to verify the integrity of the App before launching it.
Removing this attribute afterwards, is a solution, but it would be better if GateKeeper validated the execution of openMSX.
If you download openMSX with Curl
"curl -LJO https://github.com/openMSX/openMSX/releases/download/RELEASE_18_0/openmsx-18.0-mac-aarch64-bin.dmg"
There is no need to remove the quarantine attribut, because Curl does not add the Quarantine attribute to files downloaded from the internet, and openMSX run without any problem or request from the system .
Also note : Apple Silicon App must be signed, or the OS will prevent its execution.
I keep looking for a solution...
Thanks for the link and the detailed information @ericb59. Hope you find a solution. Great work!
UPDATE: The version from the link, when unpacked, shows me an OpenMSX-icon with a Ø through the icon. In other words: it does not work either... [iMac 2017 - macOS Ventura 13.0]
@ray2day did you download that version clicking on the link? or using "curl" from the command line? ericb59's point is to use curl from the command line.
UPDATE2: I took the version on the OpenMSX website itself and this version works fine for me. No problems at all.
Note, that there is an issue on the Apple Silicon Version only.
To bypass any issue, every Mac user can still use the Intel X64 version which is run thru Rosetta2 emulation layer on the Mac.
This is really not a big deal using this version on M1/M2 Mac today, but in a near futur who know if it will be still possible to use Intel based coded application...