Last active
October 28, 2020 14:01
-
-
Save cengage/4542016 to your computer and use it in GitHub Desktop.
First shot at describing the process of building a vanilla OS X box with veewee using only the OS X installer application.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Notes using minstallconfig.xml | |
- Create base OS X vmx w/ veewee: | |
* HD must be IDE, not SCSI | |
* Do not define a specific boot device, VM will boot from DMG attached to CD-ROM later in process | |
- Obtain "Install OS X Mountain Lion.app"/"Install Mac OS X Lion.app" | |
- Mount InstallESD.dmg w/ shadow file from "Install Mac OS X Lion.app/Contents/SharedSupport/InstallESD.dmg" | |
* hdiutil attach "[...]/Install Mac OS X Lion.app/Contents/SharedSupport/InstallESD.dmg" -owners on -shadow /tmp/InstallESD.shadow | |
- Mount /Volumes/Mac OS X Install ESD/BaseSystem.dmg w/ shadow file | |
* hdiutil attach "/Volumes/Mac OS X Install ESD/BaseSystem.dmg" -owners on -shadow /tmp/BaseSystem.shadow | |
- Add line to /Volumes/Mac OS X Base System/etc/rc.common to erase VMDK and create empty "Macintosh HD" volume | |
* echo "diskutil eraseVolume JHFS+ "Macintosh HD" disk0" >> "/Volumes/Mac OS X Base System/etc/rc.common" | |
- Testing has shown that the VMDK is always at /dev/disk0 but more logic to be sure would be prudent | |
- Create "/Volumes/Mac OS X Install ESD/Packages/Extras" folder | |
- Create "/Volumes/Mac OS X Install ESD/Packages/Extras/minstallconfig.xml" - this is a standard plist | |
* EXAMPLE: http://bit.ly/10xgOkU | |
- TODO: Configure minstallconfig.xml to use an OSInstall.collection plist instead to install additional custom packages (first boot, create user, etc.) | |
* The .collection file is a plist with one array containing strings representing absolute paths of packages to be installed | |
- TODO: When using a .collection file also copy referenced custom packages to /Volumes/Mac OS X Install ESD/Packages | |
- Detach BaseSystem.dmg | |
- Convert BaseSystem.dmg + shadow file to replacement BaseSystem.dmg: | |
* hdiutil convert -format UDZO -o /SOMETEMP/BaseSystem.dmg "/Volumes/Mac OS X Install ESD/BaseSystem.dmg" -shadow /tmp/BaseSystem.shadow | |
- Replace /Volumes/Mac OS X Install ESD/BaseSystem.dmg with modified /SOMETEMP/BaseSystem.dmg | |
- Detach InstallESD.dmg | |
- Convert InstallESD.dmg + shadow file to new InstallESD_mod.dmg | |
* hdiutil convert -format UDZO -o /SOMETEMP/InstallESD_mod.dmg "[...]/Install Mac OS X Lion.app/Contents/SharedSupport/InstallESD.dmg" -shadow /tmp/InstallESD.shadow | |
- Configure /SOMETEMP/InstallESD_mod.dmg as the attached CD-ROM image - do NOT set CD-ROM as boot device in VMX | |
- Boot VM | |
- OS X installer will automatically start | |
- After install completes the VM will reboot and start OS X from the VMDK; OS X and any custom packages will be installed | |
- $DOSTUFF based on any custom packages |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment