Easy easy code signing :)
-
- Open your project's .jucer file in Projucer
- Select Xcode (macOS) at the left
- In the right pane scroll down to the Use Hardened Runtime dropdown and set it to Enabled - I think this is only needed for Standalone, not plugins.
- Scroll down to Development Team ID and put your Team ID (10 character code) in there.
- File >> Save Project and Open in IDE
- In Xcode build your project for profiling
Xcode will compile your project and code sign it. You'll need to enter your password to unlock the keychain when prompted.
You can verify the signature status with a free app called Taccy. You can use this to verify your notarisation once you've done that too.
I'm doing this on an Intel Mac running Monterey, your results may be different.
-
@d-healey Thank you for this!!!
-
@FatMitchell I just discovered that for some crazy reason, Apple decided that by default Xcode doesn't add the necessary --timestamp flag when codesigning. I don't know if there is a way to do this from Projucer, if not it means back to manual codesigning.
-
@d-healey Yeah it's weird. When I do it your way in the Projucer (so XCode does the codesign), then notarization fails and I have to replace the code signature manually...
Although for one of the projects (for which I enabled audio inputs), it is the opposite. Manual codesign (altool) works but the microphone access isn't allowed - resulting in a successfully codesigned/notarized app but the audio input doesn't work - after being hardened. While through Projucer/XCode you can specify the mic access and the codesign/notarization works, so it is strange...
I can't find the altool command that allows hardening with authorised mic access (and I don't have a machine recent enough to try with the new notarytool).
So in definitive, I don't understand why I can make the manual codesigning work when it doesn't from XCode and vice-versa for another project, despite the certificate being the same (so the team and app ID...). I don't know if all of this is related to the timestamp issue you mentioned, I will perform more tests in the next few days.