Initial support for macOS High Sierra
parent
af92fb163e
commit
861bac4742
Binary file not shown.
Binary file not shown.
@ -0,0 +1,139 @@
|
||||
### Notes
|
||||
|
||||
* Enoch bootloader is not used for macOS High Sierra. Clover is used instead.
|
||||
|
||||
|
||||
### Host System Details
|
||||
|
||||
Known to work on:
|
||||
|
||||
* Fedora 25 running on i7-6600U CPU.
|
||||
|
||||
* Ubuntu 17.04 running on i5-6500 CPU.
|
||||
|
||||
Tested with QEMU >= 2.10 (with an out-of-tree patch) and Linux 4.10.x / 4.12.x.
|
||||
A CPU with SSE4.1 support is required for macOS High Sierra. Intel VT-x / AMD
|
||||
SVM is required.
|
||||
|
||||
|
||||
### Installation Preparation
|
||||
|
||||
#### Preparation steps on your current macOS installation
|
||||
|
||||
* Download macOS High Sierra installer from Apple App Store.
|
||||
|
||||
* Clone this repository. Files included in this repository are needed for ISO
|
||||
creation.
|
||||
|
||||
```
|
||||
git clone https://github.com/kholia/OSX-KVM.git
|
||||
```
|
||||
|
||||
* Run the ISO creation script `create_iso_highsierra.sh` included in this
|
||||
folder. Run it with `sudo`.
|
||||
|
||||
* Copy the generated ISO image from your Mac's Desktop to your QEMU/KVM machine.
|
||||
|
||||
#### Preparation steps on your QEMU system
|
||||
|
||||
* Clone this repository again on your QEMU system. Files from this repository are used in the following steps.
|
||||
|
||||
* Install required software packages.
|
||||
|
||||
```
|
||||
sudo apt-get install qemu uml-utilities libguestfs-tools
|
||||
```
|
||||
|
||||
* Build and use QEMU from source. See http://wiki.qemu-project.org/Hosts/Linux for help.
|
||||
|
||||
```
|
||||
# First edit /etc/apt/sources.list to add/uncomment deb-src lines
|
||||
|
||||
sudo apt-get update
|
||||
|
||||
sudo apt-get build-dep qemu
|
||||
|
||||
git clone https://github.com/kholia/qemu.git
|
||||
|
||||
cd qemu
|
||||
|
||||
git checkout macOS
|
||||
|
||||
git submodule init
|
||||
|
||||
git submodule update --recursive
|
||||
|
||||
./configure --prefix=/home/$(whoami)/QEMU --target-list=x86_64-softmmu --audio-drv-list=pa
|
||||
|
||||
$ make clean; make -j8; make install
|
||||
```
|
||||
|
||||
This step is not optional and is required.
|
||||
|
||||
* See [networking notes](../networking-qemu-kvm-howto.txt) to setup guest networking.
|
||||
|
||||
* Create a virtual HDD image where macOS will be installed.
|
||||
|
||||
```
|
||||
qemu-img create -f qcow2 mac_hdd.img 128G
|
||||
```
|
||||
|
||||
* Create bootable Clover disk.
|
||||
|
||||
|
||||
```
|
||||
sudo ./clover-image.sh --iso Clover-v2.4k-4233-X64.iso --cfg clover/config.plist.stripped.qemu --img Clover.qcow2
|
||||
```
|
||||
|
||||
Instead of building your own bootable Clover disk, you may use the included `Clover.qcow2` disk image.
|
||||
|
||||
|
||||
### Installation
|
||||
|
||||
To install macOS High Sierra, use the included `boot-macOS-HS.sh` script.
|
||||
|
||||
Note: Ensure that the OVMF resolution is set to 1024x768. This can be done via
|
||||
the OVMF menu, which you can reach with a press of the ESC button during the
|
||||
OVMF boot logo. In the OVMF menu settings, set Device Manager -> OVMF Platform
|
||||
Configuration -> Change Preferred Resolution for Next Boot to 1024x768 . Commit
|
||||
changes and exit the OVMF menu. Relaunch the `boot-macOS-HS.sh` script.
|
||||
|
||||
#### Installer Steps
|
||||
|
||||
* After booting, the initial language selection should show up.
|
||||
|
||||
* After selecting the language, fire-up the Terminal program and prepare the
|
||||
hard drive for installation.
|
||||
|
||||
```
|
||||
diskutil list
|
||||
diskutil eraseDisk JHFS+ macOS disk0 # adapt this according to your system
|
||||
```
|
||||
|
||||
High Sierra's Disk Utility does not recognize unformatted disks, unless you
|
||||
click View > Show All Devices, quit Disk Utility, then relaunch it.
|
||||
|
||||
Thanks to https://tinyapps.org/blog/mac/ and xenadu02 for this tip.
|
||||
|
||||
* When done, quit Terminal.
|
||||
|
||||
* Now, you can continue with the installation as usual.
|
||||
|
||||
* When finished, the VM will reboot automatically and the first time setup continues as usual.
|
||||
|
||||
#### Post-Installation Recommendations
|
||||
|
||||
* Install Clover to the main hard drive where macOS High Sierra was installed
|
||||
in previous steps. See [UEFI notes](../UEFI/README.md) for details.
|
||||
|
||||
* For debugging and general tips, see the main [README.md](../README.md) file
|
||||
and [notes.md](../notes.md) file.
|
||||
|
||||
|
||||
### Credits
|
||||
|
||||
* Nicholas Sherlock (http://www.nicksherlock.com)
|
||||
|
||||
* https://www.kraxel.org/blog/2017/09/running-macos-as-guest-in-kvm/
|
||||
|
||||
* https://sourceforge.net/projects/cloverefiboot/files/Bootable_ISO/
|
Binary file not shown.
@ -0,0 +1,160 @@
|
||||
#!/bin/bash
|
||||
|
||||
# https://github.com/kraxel/imagefish
|
||||
|
||||
######################################################################
|
||||
# defaults
|
||||
|
||||
iso=""
|
||||
img=""
|
||||
cfg=""
|
||||
|
||||
######################################################################
|
||||
# create work dir
|
||||
|
||||
function msg() {
|
||||
local txt="$1"
|
||||
local bold="\x1b[1m"
|
||||
local normal="\x1b[0m"
|
||||
echo -e "${bold}### ${txt}${normal}"
|
||||
}
|
||||
|
||||
function do_cleanup() {
|
||||
msg "cleaning up ..."
|
||||
if test "$GUESTFISH_PID" != ""; then
|
||||
guestfish --remote -- exit >/dev/null 2>&1 || true
|
||||
fi
|
||||
sudo rm -rf "$WORK"
|
||||
}
|
||||
|
||||
WORK="${TMPDIR-/var/tmp}/${0##*/}-$$"
|
||||
mkdir "$WORK" || exit 1
|
||||
trap 'do_cleanup' EXIT
|
||||
|
||||
BASE="$(dirname $0)"
|
||||
|
||||
######################################################################
|
||||
# parse args
|
||||
|
||||
function print_help() {
|
||||
cat <<EOF
|
||||
usage: $0 [ options ]
|
||||
options:
|
||||
--iso <iso-image>
|
||||
--img <disk-image>
|
||||
--cfg <clover-config>
|
||||
EOF
|
||||
}
|
||||
|
||||
while test "$1" != ""; do
|
||||
case "$1" in
|
||||
--iso)
|
||||
iso="$2"
|
||||
shift; shift
|
||||
;;
|
||||
--img)
|
||||
img="$2"
|
||||
shift; shift
|
||||
;;
|
||||
--cfg)
|
||||
cfg="$2"
|
||||
shift; shift
|
||||
;;
|
||||
esac
|
||||
done
|
||||
|
||||
######################################################################
|
||||
# guestfish script helpers
|
||||
|
||||
function fish() {
|
||||
echo "#" "$@"
|
||||
guestfish --remote -- "$@" || exit 1
|
||||
}
|
||||
|
||||
function fish_init() {
|
||||
local format
|
||||
|
||||
case "$img" in
|
||||
*.raw) format="raw" ;;
|
||||
*) format="qcow2";;
|
||||
esac
|
||||
|
||||
msg "creating and adding disk image"
|
||||
fish disk-create $img $format 256M
|
||||
fish add $img
|
||||
fish run
|
||||
}
|
||||
|
||||
function fish_fini() {
|
||||
fish umount-all
|
||||
}
|
||||
|
||||
######################################################################
|
||||
# sanity checks
|
||||
|
||||
if test ! -f "$iso"; then
|
||||
echo "ERROR: iso not found: $iso"
|
||||
exit 1
|
||||
fi
|
||||
if test ! -f "$cfg"; then
|
||||
echo "ERROR: cfg not found: $cfg"
|
||||
exit 1
|
||||
fi
|
||||
if test -f "$img"; then
|
||||
if test "$allow_override" = "yes"; then
|
||||
rm -f "$img"
|
||||
else
|
||||
echo "ERROR: image exists: $img"
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
|
||||
######################################################################
|
||||
# go!
|
||||
|
||||
msg "copy files from iso"
|
||||
guestfish -a "$iso" -m "/dev/sda:/:norock" <<EOF || exit 1
|
||||
copy-out /EFI $WORK
|
||||
EOF
|
||||
|
||||
#msg "[debug] list drivers in EFI/CLOVER"
|
||||
#(cd $WORK/EFI/CLOVER; find driver* -print)
|
||||
|
||||
export LIBGUESTFS_BACKEND=direct
|
||||
eval $(guestfish --listen)
|
||||
if test "$GUESTFISH_PID" = ""; then
|
||||
echo "ERROR: starting guestfish failed"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
fish_init
|
||||
|
||||
msg "partition disk image"
|
||||
fish part-init /dev/sda gpt
|
||||
fish part-add /dev/sda p 2048 200000
|
||||
fish part-add /dev/sda p 202048 -2048
|
||||
fish part-set-gpt-type /dev/sda 1 C12A7328-F81F-11D2-BA4B-00A0C93EC93B
|
||||
fish part-set-bootable /dev/sda 1 true
|
||||
fish mkfs vfat /dev/sda1 label:EFI
|
||||
fish mkfs vfat /dev/sda2 label:clover
|
||||
fish mount /dev/sda2 /
|
||||
fish mkdir /ESP
|
||||
fish mount /dev/sda1 /ESP
|
||||
|
||||
msg "copy files to disk image"
|
||||
cp -v "$cfg" $WORK/config.plist
|
||||
fish mkdir /ESP/EFI
|
||||
fish mkdir /ESP/EFI/CLOVER
|
||||
fish copy-in $WORK/EFI/BOOT /ESP/EFI
|
||||
fish copy-in $WORK/EFI/CLOVER/CLOVERX64.efi /ESP/EFI/CLOVER
|
||||
fish copy-in $WORK/EFI/CLOVER/drivers64UEFI /ESP/EFI/CLOVER
|
||||
fish copy-in $WORK/EFI/CLOVER/drivers-Off/drivers64UEFI/OsxAptioFix2Drv-64.efi \
|
||||
/ESP/EFI/CLOVER/drivers64UEFI
|
||||
fish copy-in $WORK/EFI/CLOVER/drivers-Off/drivers64UEFI/PartitionDxe-64.efi \
|
||||
/ESP/EFI/CLOVER/drivers64UEFI
|
||||
fish copy-in apfs.efi \
|
||||
/ESP/EFI/CLOVER/drivers64UEFI
|
||||
|
||||
fish copy-in $WORK/EFI/CLOVER/tools /ESP/EFI/CLOVER
|
||||
fish copy-in $WORK/config.plist /ESP/EFI/CLOVER
|
||||
fish_fini
|
@ -0,0 +1,82 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||
<plist version="1.0">
|
||||
<dict>
|
||||
<key>Boot</key>
|
||||
<dict>
|
||||
<key>Arguments</key>
|
||||
<string></string>
|
||||
<key>DefaultVolume</key>
|
||||
<string>system</string>
|
||||
<key>Log</key>
|
||||
<true/>
|
||||
<key>Secure</key>
|
||||
<false/>
|
||||
<key>Timeout</key>
|
||||
<integer>5</integer>
|
||||
</dict>
|
||||
<key>GUI</key>
|
||||
<dict>
|
||||
<key>Scan</key>
|
||||
<dict>
|
||||
<key>Entries</key>
|
||||
<true/>
|
||||
<key>Tool</key>
|
||||
<true/>
|
||||
</dict>
|
||||
<key>ScreenResolution</key>
|
||||
<string>1920x1080</string>
|
||||
<key>Theme</key>
|
||||
<string>embedded</string>
|
||||
</dict>
|
||||
<key>RtVariables</key>
|
||||
<dict>
|
||||
<key>BooterConfig</key>
|
||||
<string>0x28</string>
|
||||
<key>CsrActiveConfig</key>
|
||||
<string>0x3</string>
|
||||
</dict>
|
||||
<key>SMBIOS</key>
|
||||
<dict>
|
||||
<key>BiosReleaseDate</key>
|
||||
<string>10/23/12</string>
|
||||
<key>BiosVendor</key>
|
||||
<string>Apple Inc.</string>
|
||||
<key>BiosVersion</key>
|
||||
<string>MM61.88Z.0106.B00.1208091121</string>
|
||||
<key>Board-ID</key>
|
||||
<string>Mac-F65AE981FFA204ED</string>
|
||||
<key>BoardManufacturer</key>
|
||||
<string>Apple Inc.</string>
|
||||
<key>BoardType</key>
|
||||
<integer>10</integer>
|
||||
<key>ChassisAssetTag</key>
|
||||
<string>Mini-Aluminum</string>
|
||||
<key>ChassisManufacturer</key>
|
||||
<string>Apple Inc.</string>
|
||||
<key>ChassisType</key>
|
||||
<string>16</string>
|
||||
<key>Family</key>
|
||||
<string>Mac mini</string>
|
||||
<key>Manufacturer</key>
|
||||
<string>Apple Inc.</string>
|
||||
<key>Mobile</key>
|
||||
<false/>
|
||||
<key>ProductName</key>
|
||||
<string>Macmini6,2</string>
|
||||
<key>SerialNumber</key>
|
||||
<string>C02L5LZLDWYN</string>
|
||||
<key>Trust</key>
|
||||
<false/>
|
||||
<key>Version</key>
|
||||
<string>1.0</string>
|
||||
</dict>
|
||||
<key>SystemParameters</key>
|
||||
<dict>
|
||||
<key>InjectKexts</key>
|
||||
<false/>
|
||||
<key>InjectSystemID</key>
|
||||
<true/>
|
||||
</dict>
|
||||
</dict>
|
||||
</plist>
|
@ -0,0 +1,247 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||
<plist version="1.0">
|
||||
<dict>
|
||||
<key>ACPI</key>
|
||||
<dict>
|
||||
<key>DSDT</key>
|
||||
<dict>
|
||||
<key>Debug</key>
|
||||
<false/>
|
||||
<key>DropOEM_DSM</key>
|
||||
<false/>
|
||||
<key>Fixes</key>
|
||||
<dict>
|
||||
<key>AddDTGP_0001</key>
|
||||
<false/>
|
||||
<key>AddHDMI_8000000</key>
|
||||
<false/>
|
||||
<key>AddIMEI_80000</key>
|
||||
<false/>
|
||||
<key>AddMCHC_0008</key>
|
||||
<false/>
|
||||
<key>AddPNLF_1000000</key>
|
||||
<false/>
|
||||
<key>DeleteUnused_400000</key>
|
||||
<false/>
|
||||
<key>FIX_ACST_4000000</key>
|
||||
<false/>
|
||||
<key>FIX_ADP1_800000</key>
|
||||
<false/>
|
||||
<key>FIX_INTELGFX_100000</key>
|
||||
<false/>
|
||||
<key>FIX_RTC_20000</key>
|
||||
<false/>
|
||||
<key>FIX_S3D_2000000</key>
|
||||
<false/>
|
||||
<key>FakeLPC_0020</key>
|
||||
<false/>
|
||||
<key>FiX_TMR_40000</key>
|
||||
<false/>
|
||||
<key>FiX_WAK_200000</key>
|
||||
<false/>
|
||||
<key>FixAirport_4000</key>
|
||||
<false/>
|
||||
<key>FixDarwin_0002</key>
|
||||
<false/>
|
||||
<key>FixDisplay_0100</key>
|
||||
<false/>
|
||||
<key>FixFirewire_0800</key>
|
||||
<false/>
|
||||
<key>FixHDA_8000</key>
|
||||
<false/>
|
||||
<key>FixHPET_0010</key>
|
||||
<false/>
|
||||
<key>FixIDE_0200</key>
|
||||
<false/>
|
||||
<key>FixIPIC_0040</key>
|
||||
<false/>
|
||||
<key>FixLAN_2000</key>
|
||||
<false/>
|
||||
<key>FixRegions_10000000</key>
|
||||
<false/>
|
||||
<key>FixSATA_0400</key>
|
||||
<false/>
|
||||
<key>FixSBUS_0080</key>
|
||||
<false/>
|
||||
<key>FixShutdown_0004</key>
|
||||
<false/>
|
||||
<key>FixUSB_1000</key>
|
||||
<false/>
|
||||
<key>NewWay_80000000</key>
|
||||
<false/>
|
||||
</dict>
|
||||
<key>Name</key>
|
||||
<string>DSDT.aml</string>
|
||||
<key>ReuseFFFF</key>
|
||||
<false/>
|
||||
</dict>
|
||||
<key>HaltEnabler</key>
|
||||
<false/>
|
||||
<key>SSDT</key>
|
||||
<dict>
|
||||
<key>DropOem</key>
|
||||
<false/>
|
||||
<key>Generate</key>
|
||||
<dict>
|
||||
<key>CStates</key>
|
||||
<false/>
|
||||
<key>PStates</key>
|
||||
<false/>
|
||||
</dict>
|
||||
</dict>
|
||||
</dict>
|
||||
<key>Boot</key>
|
||||
<dict>
|
||||
<key>Arguments</key>
|
||||
<string>dart=0</string>
|
||||
<key>DefaultVolume</key>
|
||||
<string>clover</string>
|
||||
<key>Legacy</key>
|
||||
<string>PBR</string>
|
||||
<key>Log</key>
|
||||
<true/>
|
||||
<key>Secure</key>
|
||||
<false/>
|
||||
<key>Timeout</key>
|
||||
<integer>3</integer>
|
||||
<key>XMPDetection</key>
|
||||
<string>NO</string>
|
||||
</dict>
|
||||
<key>Devices</key>
|
||||
<dict>
|
||||
<key>Audio</key>
|
||||
<dict>
|
||||
<key>Inject</key>
|
||||
<string>1</string>
|
||||
</dict>
|
||||
<key>FakeID</key>
|
||||
<dict>
|
||||
<key>ATI</key>
|
||||
<string>0x0</string>
|
||||
<key>IMEI</key>
|
||||
<string>0x0</string>
|
||||
<key>IntelGFX</key>
|
||||
<string>0x0</string>
|
||||
<key>LAN</key>
|
||||
<string>0x0</string>
|
||||
<key>NVidia</key>
|
||||
<string>0x0</string>
|
||||
<key>SATA</key>
|
||||
<string>0x0</string>
|
||||
<key>WIFI</key>
|
||||
<string>0x0</string>
|
||||
<key>XHCI</key>
|
||||
<string>0x0</string>
|
||||
</dict>
|
||||
<key>USB</key>
|
||||
<dict>
|
||||
<key>FixOwnership</key>
|
||||
<false/>
|
||||
<key>Inject</key>
|
||||
<false/>
|
||||
</dict>
|
||||
<key>UseIntelHDMI</key>
|
||||
<false/>
|
||||
</dict>
|
||||
<key>DisableDrivers</key>
|
||||
<array>
|
||||
<string>Nothing</string>
|
||||
</array>
|
||||
<key>GUI</key>
|
||||
<dict>
|
||||
<key>Hide</key>
|
||||
<array>
|
||||
<string>Windows</string>
|
||||
<string>\EFI\BOOT\BOOTX64.EFI</string>
|
||||
</array>
|
||||
<key>Language</key>
|
||||
<string>en:0</string>
|
||||
<key>Mouse</key>
|
||||
<dict>
|
||||
<key>Enabled</key>
|
||||
<true/>
|
||||
<key>Speed</key>
|
||||
<integer>8</integer>
|
||||
</dict>
|
||||
<key>Scan</key>
|
||||
<dict>
|
||||
<key>Entries</key>
|
||||
<true/>
|
||||
<key>Legacy</key>
|
||||
<string>First</string>
|
||||
<key>Tool</key>
|
||||
<true/>
|
||||
</dict>
|
||||
<key>ScreenResolution</key>
|
||||
<string>1024x768</string>
|
||||
<key>Theme</key>
|
||||
<string>embedded</string>
|
||||
</dict>
|
||||
<key>Graphics</key>
|
||||
<dict>
|
||||
<key>Inject</key>
|
||||
<dict>
|
||||
<key>ATI</key>
|
||||
<false/>
|
||||
<key>Intel</key>
|
||||
<false/>
|
||||
<key>NVidia</key>
|
||||
<false/>
|
||||
</dict>
|
||||
</dict>
|
||||
<key>KernelAndKextPatches</key>
|
||||
<dict>
|
||||
<key>AppleRTC</key>
|
||||
<true/>
|
||||
<key>AsusAICPUPM</key>
|
||||
<true/>
|
||||
<key>KernelCpu</key>
|
||||
<false/>
|
||||
<key>KernelHaswellE</key>
|
||||
<false/>
|
||||
<key>KernelLapic</key>
|
||||
<false/>
|
||||
<key>KernelPm</key>
|
||||
<true/>
|
||||
<key>KextsToPatch</key>
|
||||
<array>
|
||||
<dict>
|
||||
<key>Comment</key>
|
||||
<string>External icons patch</string>
|
||||
<key>Find</key>
|
||||
<data>
|
||||
RXh0ZXJuYWw=
|
||||
</data>
|
||||
<key>Name</key>
|
||||
<string>AppleAHCIPort</string>
|
||||
<key>Replace</key>
|
||||
<data>
|
||||
SW50ZXJuYWw=
|
||||
</data>
|
||||
</dict>
|
||||
</array>
|
||||
</dict>
|
||||
<key>RtVariables</key>
|
||||
<dict>
|
||||
<key>BooterConfig</key>
|
||||
<string>0x28</string>
|
||||
<key>CsrActiveConfig</key>
|
||||
<string>0x3</string>
|
||||
</dict>
|
||||
<key>SMBIOS</key>
|
||||
<dict>
|
||||
<key>Trust</key>
|
||||
<false/>
|
||||
</dict>
|
||||
<key>SystemParameters</key>
|
||||
<dict>
|
||||
<key>InjectKexts</key>
|
||||
<string>Detect</string>
|
||||
<key>InjectSystemID</key>
|
||||
<true/>
|
||||
<key>NvidiaWeb</key>
|
||||
<false/>
|
||||
</dict>
|
||||
</dict>
|
||||
</plist>
|
@ -0,0 +1,35 @@
|
||||
<key>SMBIOS</key>
|
||||
<dict>
|
||||
<key>BiosReleaseDate</key>
|
||||
<string>10/23/12</string>
|
||||
<key>BiosVendor</key>
|
||||
<string>Apple Inc.</string>
|
||||
<key>BiosVersion</key>
|
||||
<string>MM61.88Z.0106.B00.1208091121</string>
|
||||
<key>Board-ID</key>
|
||||
<string>Mac-F65AE981FFA204ED</string>
|
||||
<key>BoardManufacturer</key>
|
||||
<string>Apple Inc.</string>
|
||||
<key>BoardType</key>
|
||||
<integer>10</integer>
|
||||
<key>ChassisAssetTag</key>
|
||||
<string>Mini-Aluminum</string>
|
||||
<key>ChassisManufacturer</key>
|
||||
<string>Apple Inc.</string>
|
||||
<key>ChassisType</key>
|
||||
<string>16</string>
|
||||
<key>Family</key>
|
||||
<string>Mac mini</string>
|
||||
<key>Manufacturer</key>
|
||||
<string>Apple Inc.</string>
|
||||
<key>Mobile</key>
|
||||
<false/>
|
||||
<key>ProductName</key>
|
||||
<string>Macmini6,2</string>
|
||||
<key>SerialNumber</key>
|
||||
<string>C02L5LZLDWYN</string>
|
||||
<key>Trust</key>
|
||||
<false/>
|
||||
<key>Version</key>
|
||||
<string>1.0</string>
|
||||
</dict>
|
@ -0,0 +1,52 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||
<plist version="1.0">
|
||||
<dict>
|
||||
<key>Boot</key>
|
||||
<dict>
|
||||
<key>Arguments</key>
|
||||
<string></string>
|
||||
<key>DefaultVolume</key>
|
||||
<string>clover</string>
|
||||
<key>Log</key>
|
||||
<true/>
|
||||
<key>Secure</key>
|
||||
<false/>
|
||||
<key>Timeout</key>
|
||||
<integer>3</integer>
|
||||
</dict>
|
||||
<key>GUI</key>
|
||||
<dict>
|
||||
<key>Scan</key>
|
||||
<dict>
|
||||
<key>Entries</key>
|
||||
<true/>
|
||||
<key>Tool</key>
|
||||
<true/>
|
||||
</dict>
|
||||
<key>ScreenResolution</key>
|
||||
<string>1024x768</string>
|
||||
<key>Theme</key>
|
||||
<string>embedded</string>
|
||||
</dict>
|
||||
<key>RtVariables</key>
|
||||
<dict>
|
||||
<key>BooterConfig</key>
|
||||
<string>0x28</string>
|
||||
<key>CsrActiveConfig</key>
|
||||
<string>0x3</string>
|
||||
</dict>
|
||||
<key>SMBIOS</key>
|
||||
<dict>
|
||||
<key>Trust</key>
|
||||
<false/>
|
||||
</dict>
|
||||
<key>SystemParameters</key>
|
||||
<dict>
|
||||
<key>InjectKexts</key>
|
||||
<false/>
|
||||
<key>InjectSystemID</key>
|
||||
<true/>
|
||||
</dict>
|
||||
</dict>
|
||||
</plist>
|
@ -0,0 +1,52 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||
<plist version="1.0">
|
||||
<dict>
|
||||
<key>Boot</key>
|
||||
<dict>
|
||||
<key>Arguments</key>
|
||||
<string></string>
|
||||
<key>DefaultVolume</key>
|
||||
<string>system</string>
|
||||
<key>Log</key>
|
||||
<true/>
|
||||
<key>Secure</key>
|
||||
<false/>
|
||||
<key>Timeout</key>
|
||||
<integer>5</integer>
|
||||
</dict>
|
||||
<key>GUI</key>
|
||||
<dict>
|
||||
<key>Scan</key>
|
||||
<dict>
|
||||
<key>Entries</key>
|
||||
<true/>
|
||||
<key>Tool</key>
|
||||
<true/>
|
||||
</dict>
|
||||
<key>ScreenResolution</key>
|
||||
<string>1280x800</string>
|
||||
<key>Theme</key>
|
||||
<string>embedded</string>
|
||||
</dict>
|
||||
<key>RtVariables</key>
|
||||
<dict>
|
||||
<key>BooterConfig</key>
|
||||
<string>0x28</string>
|
||||
<key>CsrActiveConfig</key>
|
||||
<string>0x3</string>
|
||||
</dict>
|
||||
<key>SMBIOS</key>
|
||||
<dict>
|
||||
<key>Trust</key>
|
||||
<false/>
|
||||
</dict>
|
||||
<key>SystemParameters</key>
|
||||
<dict>
|
||||
<key>InjectKexts</key>
|
||||
<false/>
|
||||
<key>InjectSystemID</key>
|
||||
<true/>
|
||||
</dict>
|
||||
</dict>
|
||||
</plist>
|
@ -0,0 +1,13 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
# Bail at first High Sierra ISO creation error
|
||||
set -e
|
||||
|
||||
# Borrrowed from multiple internet sources
|
||||
hdiutil create -o ~/Desktop/HighSierra.cdr -size 7316m -layout SPUD -fs HFS+J
|
||||
hdiutil attach ~/Desktop/HighSierra.cdr.dmg -noverify -mountpoint /Volumes/install_build
|
||||
sudo /Applications/Install\ macOS\ High\ Sierra.app/Contents/Resources/createinstallmedia --volume /Volumes/install_build --nointeraction
|
||||
hdiutil detach "/Volumes/Install macOS High Sierra"
|
||||
hdiutil convert ~/Desktop/HighSierra.cdr.dmg -format UDTO -o ~/Desktop/HighSierra.iso
|
||||
mv ~/Desktop/HighSierra.iso.cdr ~/Desktop/HighSierra.iso
|
||||
rm ~/Desktop/HighSierra.cdr.dmg
|
Binary file not shown.
After Width: | Height: | Size: 982 KiB |
Binary file not shown.
After Width: | Height: | Size: 15 KiB |
Binary file not shown.
Binary file not shown.
Binary file not shown.
@ -1 +0,0 @@
|
||||
MD5 (sym/Clover_v2.4k_r4152.pkg) = adf87b4a9aa182859216dee0722a4dff
|
Binary file not shown.
@ -0,0 +1 @@
|
||||
MD5 (sym/Clover_v2.4k_r4233.pkg) = d9e1f55d0b10cf2ac3cfbe80ab54f45b
|
@ -0,0 +1,29 @@
|
||||
#!/bin/bash
|
||||
|
||||
# See https://www.mail-archive.com/qemu-devel@nongnu.org/msg471657.html thread.
|
||||
#
|
||||
# The "pc-q35-2.4" machine type was changed to "pc-q35-2.9" on 06-August-2017.
|
||||
|
||||
##################################################################################
|
||||
# NOTE: Comment out the "MY_OPTIONS" line in case you are having booting problems!
|
||||
##################################################################################
|
||||
|
||||
MY_OPTIONS="+aes,+xsave,+avx,+xsaveopt,avx2,+smep"
|
||||
|
||||
~/QEMU/bin/qemu-system-x86_64 -enable-kvm -m 3072 -cpu Penryn,kvm=on,vendor=GenuineIntel,+invtsc,vmware-cpuid-freq=on,$MY_OPTIONS\
|
||||
-machine pc-q35-2.9 \
|
||||
-smp 4,cores=2 \
|
||||
-usb -device usb-kbd -device usb-tablet \
|
||||
-device isa-applesmc,osk="ourhardworkbythesewordsguardedpleasedontsteal(c)AppleComputerInc" \
|
||||
-drive if=pflash,format=raw,readonly,file=OVMF_CODE-pure-efi.fd \
|
||||
-drive if=pflash,format=raw,file=OVMF_VARS-pure-efi-1024x768.fd \
|
||||
-smbios type=2 \
|
||||
-device ich9-intel-hda -device hda-duplex \
|
||||
-device ide-drive,bus=ide.2,drive=Clover \
|
||||
-drive id=Clover,if=none,snapshot=on,format=qcow2,file=./'Clover.qcow2' \
|
||||
-device ide-drive,bus=ide.1,drive=MacHDD \
|
||||
-drive id=MacHDD,if=none,file=./mac_hdd.img,format=qcow2 \
|
||||
-device ide-drive,bus=ide.0,drive=MacDVD \
|
||||
-drive id=MacDVD,if=none,snapshot=on,media=cdrom,file=./'HighSierra.iso' \
|
||||
-netdev tap,id=net0,ifname=tap0,script=no,downscript=no -device e1000-82545em,netdev=net0,id=net0,mac=52:54:00:c9:18:27 \
|
||||
-monitor stdio
|
Binary file not shown.
Binary file not shown.
Loading…
Reference in New Issue