Thanks for being a part of WWDC25!

How did we do? We’d love to know your thoughts on this year’s conference. Take the survey here

Creating codesigned AppleScript apps

In the past it was relatively easy to download from the developer portal both the app signing and installer signing certs so that I could sign AppleScripts from Script Editor when exporting them and when building packages in Jamf Composer.

I went to set that up today and it seems things have changed in the last few years since I've had to set this up. I've been unable to sort this out and would love some help.

I'm looking for a tutorial on doing this that walks someone step-by-step through the process for obtaining the certs (yes, I have dev account) and setting them up in keychain and then making use of them.

Thanks!

Answered by DTS Engineer in 842116022

I generally recommend that folks do this stuff using Xcode, and that’s true even if you’re not building your final app using Xcode. Xcode’s automatic code signing is by far the best way to get things up and running, and once you have that working you can literally use the same code-signing identity in Script Editor.

My specific advice would be to do something like this:

  1. In Xcode > Settings > Account, add your developer account.

  2. Create a new project from one of the built-in templates.

  3. Configure it for automatic signing and then choose Product > Archive.

  4. In the Xcode organiser, select the archive, click Distribute App, and then follow the path for your expected distribution process.

It sounds like you’re planning to distribute this app directly, rather than on the Mac App Store. That likely means that you’ll need Developer ID signing identities for both the app and the installer. Developer ID signing identities are precious, so I have a whole spiel about how best to manage them. See The Care and Feeding of Developer ID.

Once you have a Developer ID Application signing identity, you can export a signed app directly from Script Editor. Just choose it from the Code Sign popup in the File > Export sheet.

Creating an installer package from that is… well… easy in the easy case. Packaging Mac software for distribution explains that easy case. However, installer packages can get very complicated, so my recommendation for anything beyond that is to follow the advice from the distribution platform you’re using.

If you hit any snags, I’m happy to help. Just reply here with the details.

Share and Enjoy

Quinn “The Eskimo!” @ Developer Technical Support @ Apple
let myEmail = "eskimo" + "1" + "@" + "apple.com"

I generally recommend that folks do this stuff using Xcode, and that’s true even if you’re not building your final app using Xcode. Xcode’s automatic code signing is by far the best way to get things up and running, and once you have that working you can literally use the same code-signing identity in Script Editor.

My specific advice would be to do something like this:

  1. In Xcode > Settings > Account, add your developer account.

  2. Create a new project from one of the built-in templates.

  3. Configure it for automatic signing and then choose Product > Archive.

  4. In the Xcode organiser, select the archive, click Distribute App, and then follow the path for your expected distribution process.

It sounds like you’re planning to distribute this app directly, rather than on the Mac App Store. That likely means that you’ll need Developer ID signing identities for both the app and the installer. Developer ID signing identities are precious, so I have a whole spiel about how best to manage them. See The Care and Feeding of Developer ID.

Once you have a Developer ID Application signing identity, you can export a signed app directly from Script Editor. Just choose it from the Code Sign popup in the File > Export sheet.

Creating an installer package from that is… well… easy in the easy case. Packaging Mac software for distribution explains that easy case. However, installer packages can get very complicated, so my recommendation for anything beyond that is to follow the advice from the distribution platform you’re using.

If you hit any snags, I’m happy to help. Just reply here with the details.

Share and Enjoy

Quinn “The Eskimo!” @ Developer Technical Support @ Apple
let myEmail = "eskimo" + "1" + "@" + "apple.com"

Creating codesigned AppleScript apps
 
 
Q