Today I got around to learning what was required for our apps to load correctly when Gatekeeper is active. Turns out it’s a little more complex than I thought, because we don’t build using the latest Xcode and the default designated requirements won’t work under 10.5.8 or 10.6.
It turns out that (after a number of hours of reading, various attempts, some frustration, one sleep, and another day …) it’s actually not that hard.
Our builds are automated by Jenkins. The publishing of our apps (at least, to our store) is semi-automated. All we needed to do was run the codesign tool directly before our DMG stage, and things seemed to work just fine. Here’s what we do:
/usr/bin/codesign -f -s "Developer ID Application" -r "$WORKSPACE/iShowU/DeveloperID/requirement.bin" "/Volumes/Development/TrunkBuild/Release/iShowU Classic.app"
The above presumes that you’ve build your designated requirements using the method described by Ben, and saved those somewhere accessible. In the above, we have those saved in “iShowU/DeveloperID/requirement.bin”
And that’s it!
I’ve tested on 10.5.8 both Intel and PPC. 10.6 (Intel), 10.7 (Intel) and also 10.8. It all seems to work.
If anyone spots any issues tho – don’t hesitate to get in touch via firstname.lastname@example.org.
For those with access to the developer preview, it looks like DP3 has broken screen capture. I can do three/four captures here (all coming out green) and then my system KP’s. I’ve not yet tried any AMD GPU’s (my devbox is running an NVidia 285). I think it’s an Apple bug, as their own QTX screen recorder does the same thing.