These are step by step instructions for a Vanilla install of MacOS Mojave on a Gigabyte Aorus Master Z390 with an Intel i9 9900k CPU.
- Load Optimized Default Settings
- Peripherals → USB Configuration → XHCI Hand-off : Enabled
- Chipset → Internal Graphics : Enabled (important for Quicklook/Preview and hardware acceleration)
- Please note that we will be using our internal GPU in headless mode only and this guide assumes that. This is how an iMac18,3 (what we're basing our build on) behaves.
- If you opt to disable Internal Graphics, you will need to use
NoVPAJpeg.kext
. Otherwise, it is not required. - I seriously recommend enabling the iGPU.
You may want to take a look at my BIOS Settings & Overclocking.
These are all Mac utilities. Therefore, you need access to a real Mac.
Follow the following instructions:
You need to create your own config.plist
file. Start with the sample file I included in assets/coffeelake_sample_config.plist
. This file was taken from /r/hackintosh's Vanilla Guide. Its latest version can always be found on GitHub
Here's a great explanation of the Clover settings for Coffee Lake if you want to better understand what's going on.
- Open
coffeelake_sample_config.plist
with Clover Configurator (right click → Open With → Clover Configurator)
In SMBIOS:
- Click the button with an up/down arrow (middle right). Chose iMac18,3
. This is important since we'll be connecting our monitor to the RX580. The HDMI port on our motherboard is NOT yet working for Hackintoshes.
- Make sure the serial number generated is an iMac (mid-2017) by clicking Model Lookup
.
- Ensure that Check Coverage
reports that the serial is NOT valid. You don't want to use somebody else's serial number.
- While you're here, copy your Board Serial Number to your clipboard. You'll need it soon.
-
In Rt Variables:
- Paste your Board Serial Number in the
MLB
field. - Set
CsrActiveConfig
to0x0
which enables SIP for extra security. This should work just fine for a Vanilla Hackintosh install and is how genuine Macs ship.
- Paste your Board Serial Number in the
-
In Boot:
- Change the
Custom Flags
to:shikigva=40 uia_exclude=HS14
(this disables onboard Bluetooth since we'll be using an external Broadcom Wi-Fi/Bluetooth adapter)
- Change the
-
In ACPI:
- Click
List of Patches
and enable the following:Change GFX0 to IGPU
- Click
-
In Devices:
- Set
Inject
to16
. - Click
Properties
, selectPciRoot(0x0)/Pci(0x2,0x0)
. Then, click the + button to add a property.- Add (or update if already present):
- Property Key:
AAPL,ig-platform-id
- Property Value:
0300923E
- Value Type:
DATA
- Property Key:
- Add (or update if already present):
- If you are installing Mojave 10.14.3 or earlier, you need fake your iGPU id in order to properly enable it. This is important but not necessary with 10.14.4 and up.
- Add:
- Property Key:
device-id
- Property Value:
923E0000
- Value Type:
DATA
- Property Key:
- Add:
- Set
-
Click the Export Configuration button (bottom left), then Save As
config.plist
. -
Copy your newly generated
config.plist
to/EFI/CLOVER/
on your bootable USB key.
All Kexts should be copied to /EFI/CLOVER/kexts/Other
. Whenever copying kexts from an online source, always make sure to copy the Release version (as opposed to Debug) if both are included in your download.
We need a few Kexts to get our installation working as it should:
- USBInjectAll.kext
- This is necessary to exclude our onboard Bluetooth adapter (HS14).
- IntelMausiEthernet.kext
- This is for our onboard Ethernet/LAN adapter
- Lilu.kext
- Arbitrary kext and process patching on macOS
- WhateverGreen.kext
- Various patches necessary for certain ATI/AMD/Intel/Nvidia GPUs
- VirtualSMC.kext
- Advanced Apple SMC emulator in the kernel
These are Kexts that I am not using, but that could potentially be useful for you.
- NoVPAJpeg.kext
- This is a Kext you can use if you are having issues with Quicklook/Preview. iGPU is known to not always work properly on Z390 boards. My iGPU (headless) is working properly and natively, so I don't need this.
Because NVRAM is not natively working on my motherboard, we have to use the UEFI driver EmuVariableUefi-64.efi
. You can install EmuVariableUefi-64.efi
using Clover Configurator (Install Drivers) or with the Clover installation package (Customize → UEFI Drivers).
When I added EmuVariableUefi-64.efi
to /EFI/CLOVER/drivers64UEFI
, I got a crash at bootup.
The solution to that crash is to remove AptioMemoryFix-64.efi
and to replace it with OsxAptioFix2Drv-free2000.efi
. You can download it from here.
I am told that there are downsides (that I don't fully understand yet) to using OsxAptioFix2Drv-free2000
, so do this at your own risk.
I will update this guide when I learn more about all this. Hopefully we can run without these alternative UEFI drivers in the future.
Here I made a quick video explaining how to generate your own USB SSDT/kext. This will fix all your USB issues such as slow speed, drives getting ejected on wake, etc.
- /r/hackintosh's awesome Vanilla Install guide
- MacPeet at hackintosh-forum.de for a modified
AppleALC.kext
. (Now released as version 1.3.4) - See RESOURCES.md for other threads, sites, posts I used to get this to work.
I consider this guide complete and finished. Many have used it successfully already. I will continously update these documents as needed.