.dmg
file.packapp.zsh
, is available from my GitHub repo. It performs all but the last two steps — I’ll explain why in a moment — leaving you with an Installer package ready for distribution. The ability to build the steps into a script also gives you a great deal of scope for automation..app
file plus a number of switches. The essential ones are -u
/--user
and -c
/--cert
, which respectively take a Keychain account name and the name of your Developer ID Installer certificate, which you’ll require if you’re to create a signed Installer package. And you have to do that to get it notarised.packapp.zsh
using the --user
switch.packapp.zsh
now periodically polls the App Store server until the notarisation process is complete, either successfully or not. If the package is notarised, the script staples the notarisation notice to the package, verifies that it’s good for distribution and exits..dmg
file manually: open Disk Utility, make a 100MB image, copy over the Installer package, unmount the image, and then use Disk Utility to create a compressed version. I sign this manually using:.dmg
as much as Disk Utility does. Here are the CLI steps:-format
values (check out hdiutil’s man page for the details) yield larger .dmg
files than Disk Utility does. I continue to experiment.