Installing custom OS X builds using DeployStudio and createOSXinstallPkg
From time to time, Apple will release a custom build of Mac OS X to support a new Mac model. A current example is the Mid 2013 MacBook Airs, which were released after 10.8.4, but before 10.8.5. Since they have hardware that wasn’t accounted for in the standard 10.8.4 software, they’re running a custom build of 10.8.4.
Mac App Store 10.8.4 build number: OS X 10.8.4, build 12E55
Mid 2013 MacBook Air 10.8.4 build number: OS X 10.8.4, build 12E3067
While the Air’s custom build should run fine on older 10.8-compatible Macs, the Mid 2013 MacBook Airs aren’t able to run from the 10.8.4 build currently available from the Mac App Store.
In the event that you need to reinstall OS X on a Mac that needs a custom build, Apple’s solution is to use Recovery HD or Internet Recovery to download and install the correct version of OS X for that Mac. However, if your network connection is behind a proxy server, you may not be able to connect back to Apple while booted from Recovery HD, or be able to boot from Internet Recovery.
To help address this, you can use DeployStudio and OS install packages created by createOSXinstallPkg to help address situations where you can’t use Apple’s Recovery, but still need the ability to install custom builds of Mac OS X. See below the jump for the procedure.
A copy of Install OS X Mountain Lion.app from the Mac App Store.
A copy of the InstallESD.dmg used to install the custom build.
Note: The custom build’s InstallESD must be obtained via Recovery HD or Internet Recovery, so you may need to take a machine off your network in order to get it.
Mac running 10.6.8 or higher (to build the createOSXinstallPkg installer on.)
DeployStudio 1.6.1 or higher running on another Mac
DeployStudio 1.6.1 boot set running the custom build of Mac OS X needed for your hardware (can be NetBoot, or using a Firewire/USB drive.) The boot set needs to be created with Python selected as a tool to include in the bootable system.
Replacing the stock 10.8.4 InstallESD with the custom build’s InstallESD
1. Right-click on the copy of Install OS X Mountain Lion.app from the Mac App Store and select Show Package Contents.
2. Navigate to Contents: SharedSupport and replace the stock 10.8.4 InstallESD.dmg file with the custom build’s InstallESD.dmg
Creating the automated installer package with createOSXinstallPkg
1. Download the latest version of createOSXinstallPkg to your Mac.
2. Run the following command to create a basic uncustomized installation package (see the documentation if you want to create a customized installer):
sudo /path/to/createOSXinstallPkg --source /Applications/Install\ OS\ X\ Mountain\ Lion.app
3. Copy your newly-created createOSXinstallPkg installer to your DeployStudio server.
Putting it into a DeployStudio workflow
1. Set up a new package in DeployStudio for your createOSXinstallPkg installer. In the case of my example, I’m calling it MacBook Air 2013 10.8.4.
2. Set up a new DeployStudio workflow where the workflow is set to do two tasks:
A. Repartition the boot drive with one partition (this erases any existing OS and Recovery HD partitions).
B. Install one package, configured to install MacBook Air 2013 10.8.4. I did not check the box to set it as a Postponed installation, so that the DeployStudio boot set would do the install rather than doing it on first boot. In the case of my example, I’m calling it Restore 2013 MacBook Air Custom OS.
Running the automated installation
1. Boot the Mac that needs reinstallation to DeployStudio.
2. Log in and select the Restore 2013 MacBook Air Custom OS workflow.
3. Depending on your automation preferences, you may need to select the drive. Once selected, DeployStudio should wipe and repartition the target drive, then install the custom version of Mac OS X for your Mac model.
4. Wait for DeployStudio to finish installing the package on the Mac and hit Quit when prompted. Your Mac should reboot at this point.
5. Stand up, walk away, go get some coffee. If all goes well, your Mac should install the custom version of OS X and set up a Recovery HD partition on the designated drive without needing any further intervention on your part.