macOS can be cleanly re-installed using Erase All Contents and Settings, transferring an IPSW file while in DFU mode, and by using the startosinstall --eraseinstall command in the macOS Install app. All of these come with trade offs. None of them are exactly the same as a factory Mac.
| EACS | IPSW | EI | |
| OS version | Same as before erase | Any version supported by the hardware | Same or later version |
| MDM command | Yes | No | Not directly, but policies or packages can be built |
| Requires booted macOS | Yes | No | Yes |
| Remote possible | Yes | No | Yes |
The tests below were all conducted on an M4 Pro 16″ MacBook Pro with macOS 15.1. The computer was not assigned to an MDM and was only connected to a network for the purposes of activating macOS.
Storage space used
Macs from Apple come with about double the storage space used compared to any of the clean install options.
| Factory | EACS | IPSW | EI |
| 28.03 GB | 14.08 GB | 14.04 GB | 14.44 GB |
These measurements were taken in the Info panel for Macintosh HD shortly after the first boot.
Contents and size of /Applications
Some of the extra used storage space is for stock applications. These applications are otherwise exclusively distributed in the Mac App Store. Keynote, Numbers, and Pages are part of a suite known as iWork, although the term is rarely used today. iMovie and GarageBand were previously in a suite called iLife.
| Factory | EACS, IPSW, EI |
| Keynote, Numbers, Pages, GarageBand, and iMovie 5.5 GB | None |
All of the installs had a symlink to Safari.app and an empty Utilities folder.
Packages listed
Factory Macs have a lot more package receipts, most of which are related to the above stock applications.
Output of pkgutil –pkgs | sort -f from a Factory Mac
com.apple.cdm.pkg.GarageBand_MASReceipt
com.apple.cdm.pkg.iMovie_MASReceipt
com.apple.cdm.pkg.Keynote_MASReceipt
com.apple.cdm.pkg.Numbers_MASReceipt
com.apple.cdm.pkg.Pages_MASReceipt
com.apple.files.data-template
com.apple.pkg.GarageBand_AppStore
com.apple.pkg.iMovie_AppStore
com.apple.pkg.Keynote14
com.apple.pkg.MAContent10_AssetPack_0048_AlchemyPadsDigitalHolyGhost
com.apple.pkg.MAContent10_AssetPack_0310_UB_DrumMachineDesignerGB
com.apple.pkg.MAContent10_AssetPack_0312_UB_UltrabeatKitsGBLogic
com.apple.pkg.MAContent10_AssetPack_0314_AppleLoopsHipHop1
com.apple.pkg.MAContent10_AssetPack_0315_AppleLoopsElectroHouse1
com.apple.pkg.MAContent10_AssetPack_0316_AppleLoopsDubstep1
com.apple.pkg.MAContent10_AssetPack_0317_AppleLoopsModernRnB1
com.apple.pkg.MAContent10_AssetPack_0320_AppleLoopsChillwave1
com.apple.pkg.MAContent10_AssetPack_0321_AppleLoopsIndieDisco
com.apple.pkg.MAContent10_AssetPack_0322_AppleLoopsDiscoFunk1
com.apple.pkg.MAContent10_AssetPack_0323_AppleLoopsVintageBreaks
com.apple.pkg.MAContent10_AssetPack_0324_AppleLoopsBluesGarage
com.apple.pkg.MAContent10_AssetPack_0325_AppleLoopsGarageBand1
com.apple.pkg.MAContent10_AssetPack_0354_EXS_PianoSteinway
com.apple.pkg.MAContent10_AssetPack_0357_EXS_BassAcousticUprightJazz
com.apple.pkg.MAContent10_AssetPack_0358_EXS_BassElectricFingerStyle
com.apple.pkg.MAContent10_AssetPack_0371_EXS_GuitarsAcoustic
com.apple.pkg.MAContent10_AssetPack_0375_EXS_GuitarsVintageStrat
com.apple.pkg.MAContent10_AssetPack_0482_EXS_OrchWoodwindAltoSax
com.apple.pkg.MAContent10_AssetPack_0484_EXS_OrchWoodwindClarinetSolo
com.apple.pkg.MAContent10_AssetPack_0487_EXS_OrchWoodwindFluteSolo
com.apple.pkg.MAContent10_AssetPack_0491_EXS_OrchBrass
com.apple.pkg.MAContent10_AssetPack_0509_EXS_StringsEnsemble
com.apple.pkg.MAContent10_AssetPack_0536_DrummerClapsCowbell
com.apple.pkg.MAContent10_AssetPack_0537_DrummerShaker
com.apple.pkg.MAContent10_AssetPack_0538_DrummerSticks
com.apple.pkg.MAContent10_AssetPack_0539_DrummerTambourine
com.apple.pkg.MAContent10_AssetPack_0540_PlugInSettingsGB
com.apple.pkg.MAContent10_AssetPack_0554_AppleLoopsDiscoFunk2
com.apple.pkg.MAContent10_AssetPack_0557_IRsSharedAUX
com.apple.pkg.MAContent10_AssetPack_0560_LTPBasicPiano1
com.apple.pkg.MAContent10_AssetPack_0593_DrummerSoCalGBLogic
com.apple.pkg.MAContent10_AssetPack_0597_LTPChordTrainer
com.apple.pkg.MAContent10_AssetPack_0598_LTPBasicGuitar1
com.apple.pkg.MAContent10_AssetPack_0615_GBLogicAlchemyEssentials
com.apple.pkg.MAContent10_AssetPack_0637_AppleLoopsDrummerKyle
com.apple.pkg.MAContent10_AssetPack_0646_AppleLoopsDrummerElectronic
com.apple.pkg.MAContent10_AssetPack_0806_PlugInSettingsGBLogic
com.apple.pkg.MobileAssets
com.apple.pkg.Numbers14
com.apple.pkg.Pages14
The Factory build has package receipts for all the apps found in /Applications, their Mac App Store receipts, GarageBand essential sounds, and two others: com.apple.pkg.MobileAssets and com.apple.files.data-template. Only the latter is present after any of the clean installation options.
pkgutil --pkgs | sort -f after EACS, IPSW, or EI
com.apple.files.data-template
As the name implies, and the bill of materials confirms, this package is the template for the Data volume. Presumably, it gets installed early after a macOS installation or the Data volume being wiped during EACS. (It includes the empty Applications and Utilities directories noted above.)
GarageBand content
GarageBand, which weighs in at 1 GB itself, also requires another ~4 GB of instruments and loops before it can be used. These are preinstalled at the factory but have to be downloaded if the Mac has been wiped.1
They can be removed by deleting the following directories:
"/Library/Audio/Apple Loops/Apple"
"/Library/Application Support/Logic"
"/Library/Application Support/GarageBand"
"/Library/Audio/Impulse Responses"
These directories do not exist after any of the clean installation options.
In a factory install, the package receipts for this content are unfortunately in a SIP-protected directory, /Library/Apple/System/Library/Receipts, and cannot be removed by pkgutil or deleting the files. Fortunately, if the above folders are removed GarageBand will redownload and install the missing content.
Other content
The applications and GarageBand content do not entirely account for the difference in used storage space. The rest of factory-installed content is found in /System/Library/AssetsV2. In there, one will find 5.1 GB of content vs 125 MB on a clean install. The content includes dictionaries, fonts, generative models, and peripheral firmware. (Some of this content is from the com.apple.pkg.MobileAssets package.) Because of the risk in messing with this unknown file structure, I judge these cache assets to not be worth cleaning up unless one is dealing with small SSDs. And even in that case, I would use one of the clean install methods.
Removing the stock apps
I wrote a script that removes the stock apps including receipts and the GarageBand content. It can be used during a provisioning process and can be configured to operate on one or more of the stock apps.
- I have not seen it but an Apple Sales Engineer can provide a script that will automate this process. ↩︎
Leave a comment