OpenCorePkg (Recommend to build from scratch instead of using the prebuilt package as OpenCore is constantly being updated. As of writing, we're on Version
0.5.3 even though the current official release is
0.5.2). The easiest way to build is via the
macbuild.tool, you will need Xcode's Commandline tools
Cleaned NVRAM(This is seriously important as you want a clean slate when working with OpenCore, luckily with OC you can press
Cmd+Option+P+R while booting to clean your NVRAM as long as you have
PollAppleHotKeys set to True. Some firmware require UsbKbDxe.efi for proper keyboard functionality with this setting on).
USB formatted as MacOS Journaled with GUID partition map.
Knowledge of how a Hackintosh works and what files yours requires(ie: Type of network controller).
You must remove Clover from your system entirely if you wish to use it as your main boot-loader. Keep a backup of your Clover based EFI.
Do I need macOS to setup OpenCore and install macOS?
Actually no, you can go into the release tab of all your required files and grab them that way. MaciASL is only on macOS so compiling them may be more difficult if it's not handled by SSDTTime. See the installer section below for more info.
Recommended BIOS settings:
VT-d(can be enabled if you set DisableIoMapper to YES, AMD users will need to disable SVM in the BIOS)
Intel Platform Trust
CFG Lock(MSR 0xE2 write protection)
If this can't be turned off in the BIOS(or even found) please consider patching it out. See Fixing CFG Lock for more info.
AMD CPU users don't need to worry about.
Above 4G decoding
Execute Disable Bit
OS type: Windows 8.1/10
Note for legacy users
If you want to use OpenCore on your system, please follow the Legacy Install section first, after you can continue following the Base folder structure section
Creating the USB is simple, all you need to do is format it with GUID partition map. There is no real size requirement for the USB as OpenCore's entire EFI will generally be less than 5MB.
Next, we'll want to mount the EFI partition on the USB with mountEFI.
You'll notice that once we open the EFI partition, it's empty. This is where the fun begins.
To setup OpenCore’s folder structure, you’ll want to grab those files from OpenCorePkg and construct your EFI to look like the one below:
Now you can place your necessary .efi drivers from AppleSupportPkg into the drivers folder and kexts/ACPI into their respective folders. Please note that UEFI drivers from Clover are not supported with OpenCore!(EmuVariableUEF, AptioMemoryFix, OsxAptioFixDrv, etc).
Please do also note that AptioMemoryFix.efi has now been split between OpenCore itself and FwRuntimeServices.efi
Here's what mine looks like(For the majority of users you can ignore Tools but it can be useful like for Shell.efi and other such tools):
SSDTs and custom DSDTs go in ACPI folder
Kexts go in Kexts folder
Firmware drivers(.efi) go in the Drivers folder
While you don't need a fresh install of macOS to use OpenCore, some users prefer having a fresh slate with their boot manager upgrades.
Note: Some users may have issues booting the USB, make sure you have an HFS driver and you can also try
AvoidHighAlloc set to
YES. If you continue to have issues, I recommend using Midi's /r/Hackintosh macOS Internet Install