- Joined
- Jul 22, 2018
- Messages
- 7,519
- Motherboard
- Supermicro X11SPA-T
- CPU
- Intel Xeon W-3275 28 Core
- Graphics
- 2xAMD RX 580 8GB
- OS X/macOS
- 13.x
- Bootloader
- OpenCore (UEFI)
- Mac
- Mac mini
- MacBook Pro
- Mobile Phone
- Android
- iOS
How to Install macOS on VMware Workstation
What is VMware?
Does VMware Workstation need a Bootloader?
Is AMD CPU supported on VMware Workstation?
Is Graphics acceleration possible in VMware Workstation?
If you need functionality like Graphics acceleration and PCI Passthrough, VMware ESXi is the way. See installing macOS on VMware Exsi for more information.
Can you passthrough PCI Devices on Hyper-V?
Can I use the VHD File from somewhere else?
Is it possible to perform a clean install?
Yes, using this guide, you can perform a clean install of the desired macOS version as long as you meet the requirements.
macOS Support Table
As of now, the Hyper-V supports the installation of macOS to macOS Sonoma.
As Hyper-V runs on Windows, this guide will be especially focused on Windows for creating the Bootable USB.
CHAPTER 2: Creating macOS Bootable USB
Converting dmg
As DMG cannot be read directly by Hyper-V, VMware Workstation, you need to convert the image from DMG to a suitable format/recognizable format such as VHDX (Hyper-V) and .vmdk (VMware Workstation). This step will eliminate the requirement of an additional virtual USB (Hyper-V) and a physical USB (VMware Workstation) along with Transmac and other complicated and lengthy steps. In addition, this will also make the booting faster, reducing the boot times due to the latency. However, if you want to go with that route and can skip this step if you're interested in knowing other ways.
Download and install QEMU. When you run the installer, make sure to select the Tools and DLL Library and that would serve the purpose.
If you don't want to use QEMU, you can just select the Tools and DLL Library when you run the installer and that would be enough for converting the dmg/serve the purpose
Navigate to OpenCore\macrecovery directory
Within the directory, right-click and select Open in Terminal from the context menu
Now execute the following command in Terminal
Code:
c:\"Program Files"\qemu\qemu-img convert -O vmdk -o compat6 BaseSystem.dmg Recovery.vmdk
Now, the qemu-img will convert the BaseSystem.dmg to Recovery.vmdk which can be used as an existing disk in VMware Workstation.
Once the conversion is completed, you'll find a Recovery.vmdk file in the same directory.
Install VMware Workstation
Enable support for macOS/Patching VMware Workstation
If you have noticed, while creating a Virtual Machine, there is no option related to macOS. This is because, by default, VMware does not support installing macOS as a guest Operating System unless you're on a Mac. Windows users are required to run a patch tool which unlocks and provides functionalities to support macOS.
The patch tool carries out the following modifications dependent on the product being patched:
Enable support for AMD CPUs
Unlike bare metal, the AMD CPU isn't supported for booting macOS on VMware Workstation. To fix that, you'll need to add some parameters in the .VMX file for your preferred Virtual Machine. Unless you do that on AMD based systems for booting macOS on VMware Workstation, you'll get the following error i.e. "The CPU has been disabled by the guest operating system. Power off or reset the virtual machine". as soon as you start the Virtual Machine.
Navigate to C:\Users\%USERPROFILE%\Documents\Virtual Machines\macOS Sonoma
Right-click on the Virtual Machine Configuration File ending with .vmx extension and open it using Notepad
Copy the code below and paste it into the Virtual Machine Configuration file at the end of the line.
Code:
smc.version = "0"
cpuid.0.eax = "0000:0000:0000:0000:0000:0000:0000:1011"
cpuid.0.ebx = "0111:0101:0110:1110:0110:0101:0100:0111"
cpuid.0.ecx = "0110:1100:0110:0101:0111:0100:0110:1110"
cpuid.0.edx = "0100:1001:0110:0101:0110:1110:0110:1001"
cpuid.1.eax = "0000:0000:0000:0001:0000:0110:0111:0001"
cpuid.1.ebx = "0000:0010:0000:0001:0000:1000:0000:0000"
cpuid.1.ecx = "1000:0010:1001:1000:0010:0010:0000:0011"
cpuid.1.edx = "0000:0111:1000:1011:1111:1011:1111:1111"
smbios.reflectHost = "TRUE"
hw.model = "MacBookPro14,3"
board-id = "Mac-551B86E5744E2388"
keyboard.vusb.enable = "TRUE"
mouse.vusb.enable = "TRUE"
Enable Network for Guest Operating System
By default, in the newer release of VMware Workstation, if you don't use the NIC type vmxnet3, you'll have issues getting an IP Address in the VM.
Navigate to C:\Users\%USERPROFILE%\Documents\Virtual Machines\macOS Sonoma
Right-click on the Virtual Machine Configuration File ending with .vmx extension and open it using Notepad
Find the line ethernet0.virtualDev = "e1000e" and replace it with ethernet0.virtualDev = "vmxnet3".
Now, if you just launch the Virtual Machine, you're doing it wrong. You'll ket a Kernel Panic (see the attached image). Therefore, you must add some of the parameters before you can boot up the Virtual Machine. This is because the Virtual Machine still needs some of the parameters like Board ID, etc
What is VMware?
Does VMware Workstation need a Bootloader?
Is AMD CPU supported on VMware Workstation?
Is Graphics acceleration possible in VMware Workstation?
If you need functionality like Graphics acceleration and PCI Passthrough, VMware ESXi is the way. See installing macOS on VMware Exsi for more information.
Can you passthrough PCI Devices on Hyper-V?
Can I use the VHD File from somewhere else?
Is it possible to perform a clean install?
Yes, using this guide, you can perform a clean install of the desired macOS version as long as you meet the requirements.
Is it recommended to install macOS on VMware Workstation?
Generally, no. If your hardware is supported, installing macOS on bare metal is always recommended due to the ease of the installation and seamless support due to the maximum performance, support and compatibility.macOS Support Table
As of now, the Hyper-V supports the installation of macOS to macOS Sonoma.
macOS version | Status | Minimum Version | Maximum Version |
---|---|---|---|
macOS Sonoma | |||
macOS Ventura | |||
macOS Monterey | |||
macOS Big Sur | |||
macOS Catalina | |||
macOS Mojave | |||
macOS High Sierra | |||
macOS Sierra |
Current Status
Although different models can have different specs and the hardware component/model can differ from manufacturer to manufacturer, here is a list of the current status in terms of functions under macOS.Hardware/Function | Status | Notes |
---|---|---|
Brightness Control | Working, including the Brightness Hotkeys | |
USB Ports | Working | |
Keyboard | Working | |
Keyboard Backlight | Working | |
Trackpad | Working | |
Touchscreen | Working | |
Camera | Working | |
Card Reader | Not working | Intel Card Readers are simply not supported |
Battery | Working | |
Ethernet | Working | |
WiFi/BT | Working | Realtek and MediaTek Chipsets are not supported |
Audio | Working | |
HDMI | Working | |
Power Management | Working | |
Shutdown/Reboot | Working | |
Sleep/Wake | Working | |
iServices | Working |
Requirements
Following are the requirements for installing macOS on VMware Workstation. Please ensure you meet the requirements before proceeding with this guide.CPU | Intel/AMD CPU. 4 Core or more. 6 or more is recommended. Haswell and later is recommended. macOS Compatible CPU. See Chromebook and Chromebox Compatibility for more information. |
Memory | 16GB or more |
Storage | 50GB of free space on the Windows Drive or a separate drive with 128GB or more capacity. A separate Drive is usually recommended. |
Operating System | Windows 10 or later is recommended. |
Tools | VMware Workstation VMware Unlocker OpenCorePkg |
As Hyper-V runs on Windows, this guide will be especially focused on Windows for creating the Bootable USB.
CHAPTER 2: Creating macOS Bootable USB
Converting dmg
As DMG cannot be read directly by Hyper-V, VMware Workstation, you need to convert the image from DMG to a suitable format/recognizable format such as VHDX (Hyper-V) and .vmdk (VMware Workstation). This step will eliminate the requirement of an additional virtual USB (Hyper-V) and a physical USB (VMware Workstation) along with Transmac and other complicated and lengthy steps. In addition, this will also make the booting faster, reducing the boot times due to the latency. However, if you want to go with that route and can skip this step if you're interested in knowing other ways.
Download and install QEMU. When you run the installer, make sure to select the Tools and DLL Library and that would serve the purpose.
If you don't want to use QEMU, you can just select the Tools and DLL Library when you run the installer and that would be enough for converting the dmg/serve the purpose
Navigate to OpenCore\macrecovery directory
Within the directory, right-click and select Open in Terminal from the context menu
Now execute the following command in Terminal
Code:
c:\"Program Files"\qemu\qemu-img convert -O vmdk -o compat6 BaseSystem.dmg Recovery.vmdk
Now, the qemu-img will convert the BaseSystem.dmg to Recovery.vmdk which can be used as an existing disk in VMware Workstation.
Once the conversion is completed, you'll find a Recovery.vmdk file in the same directory.
Install VMware Workstation
Enable support for macOS/Patching VMware Workstation
If you have noticed, while creating a Virtual Machine, there is no option related to macOS. This is because, by default, VMware does not support installing macOS as a guest Operating System unless you're on a Mac. Windows users are required to run a patch tool which unlocks and provides functionalities to support macOS.
The patch tool carries out the following modifications dependent on the product being patched:
- Fix vmware-vmx and derivatives to allow macOS to boot
- Fix vmwarebase .dll or .so to allow Apple to be selected during VM creation
- Download a copy of the latest VMware Tools for macOS
Enable support for AMD CPUs
Unlike bare metal, the AMD CPU isn't supported for booting macOS on VMware Workstation. To fix that, you'll need to add some parameters in the .VMX file for your preferred Virtual Machine. Unless you do that on AMD based systems for booting macOS on VMware Workstation, you'll get the following error i.e. "The CPU has been disabled by the guest operating system. Power off or reset the virtual machine". as soon as you start the Virtual Machine.
Navigate to C:\Users\%USERPROFILE%\Documents\Virtual Machines\macOS Sonoma
Right-click on the Virtual Machine Configuration File ending with .vmx extension and open it using Notepad
Copy the code below and paste it into the Virtual Machine Configuration file at the end of the line.
Code:
smc.version = "0"
cpuid.0.eax = "0000:0000:0000:0000:0000:0000:0000:1011"
cpuid.0.ebx = "0111:0101:0110:1110:0110:0101:0100:0111"
cpuid.0.ecx = "0110:1100:0110:0101:0111:0100:0110:1110"
cpuid.0.edx = "0100:1001:0110:0101:0110:1110:0110:1001"
cpuid.1.eax = "0000:0000:0000:0001:0000:0110:0111:0001"
cpuid.1.ebx = "0000:0010:0000:0001:0000:1000:0000:0000"
cpuid.1.ecx = "1000:0010:1001:1000:0010:0010:0000:0011"
cpuid.1.edx = "0000:0111:1000:1011:1111:1011:1111:1111"
smbios.reflectHost = "TRUE"
hw.model = "MacBookPro14,3"
board-id = "Mac-551B86E5744E2388"
keyboard.vusb.enable = "TRUE"
mouse.vusb.enable = "TRUE"
Enable Network for Guest Operating System
By default, in the newer release of VMware Workstation, if you don't use the NIC type vmxnet3, you'll have issues getting an IP Address in the VM.
Navigate to C:\Users\%USERPROFILE%\Documents\Virtual Machines\macOS Sonoma
Right-click on the Virtual Machine Configuration File ending with .vmx extension and open it using Notepad
Find the line ethernet0.virtualDev = "e1000e" and replace it with ethernet0.virtualDev = "vmxnet3".
Now, if you just launch the Virtual Machine, you're doing it wrong. You'll ket a Kernel Panic (see the attached image). Therefore, you must add some of the parameters before you can boot up the Virtual Machine. This is because the Virtual Machine still needs some of the parameters like Board ID, etc