Our thinking


Fix broken createinstallmedia from macOS Catalina to run on modern macOS

In my last post, described a way to download the macOS Catalina onto an Apple Silicon Mac.

Once I had the installer in hand however, running the createinstallmedia command simply didn’t work – the process was just killed.

As it turns out, this was caused by the code signatures having expired.

I was then able to use the codesign utility to re-sign the relevant binaries and frameworks, which allowed me to run the command in the Terminal.

I had to re-sign the createinstallmedia binary first, and then run it a few times to find out what frameworks it was calling, and re-sign them.

To re-sign the binaries, simply use codesign like this:

codesign -s - -f path/to/binary

So for me, had to sign IAESD, IAPackageKit, IAMiniSoftwareUpdate & IAInstallerUtilities. To do this, I ran the following commands in Terminal.

cd ~/Downloads/Catalina/Install macOS Catalina.app/Contents/Resources
codesign -s - -f createinstallmedia
cd ../Frameworks
codesign -s - -f IAESD.framework/Versions/A/IAESD
codesign -s - -f OSInstallerSetup.framework/Versions/A/Frameworks/IAESD.framework/Versions/A/Frameworks/IAPackageKit.framework/Versions/A/IAPackageKit
codesign -s - -f OSInstallerSetup.framework/Versions/A/Frameworks/IAESD.framework/Versions/A/Frameworks/IAMiniSoftwareUpdate.framework/Versions/A/IAMiniSoftwareUpdate
codesign -s - -f OSInstallerSetup.framework/Versions/A/Frameworks/IAESD.framework/Versions/A/Frameworks/IAInstallerUtilities.framework/Versions/A/IAInstallerUtilities

After signing all of these binaries, I was able to successfully build a macOS Catalina install disk on macOS Sequoia on an Apple Silicon Mac mini.

Leave a Reply