A specialized tool that streamlines OpenCore EFI creation by automating the essential setup process and providing standardized configurations. Designed to reduce manual effort while ensuring accuracy in your Hackintosh journey.
Features •
How To Use •
Contributing •
License •
Credits •
Contact
Warning
While OpCore Simplify significantly reduces setup time, the Hackintosh journey still requires:
- Understanding basic concepts from the Dortania Guide
- Testing and troubleshooting during the installation process
- Patience and persistence in resolving any issues that arise
Our tool does not guarantee a successful installation in the first attempt, but it should help you get started.
-
Comprehensive Hardware and macOS Support
Fully supports modern hardware. UseCompatibility Checkerto check supported/unsupported devices and macOS version supported.Component Supported CPU Intel: Nehalem and Westmere (1st Gen) → Arrow Lake (15th Gen/Core Ultra Series 2)
AMD: Ryzen and Threadripper with AMD VanillaGPU Intel iGPU: Iron Lake (1st Gen) → Ice Lake (10th Gen)
AMD APU: The entire Vega Raven ASIC family (Ryzen 1xxx → 5xxx, 7x30 series)
AMD dGPU: Navi 23, Navi 22, Navi 21 generations, and older series
NVIDIA: Kepler, Pascal, Maxwell, Fermi, Tesla generations
NVIDIA Turing and newer (GTX 16, RTX 20/30/40/50, TITAN RTX, Quadro RTX, Quadro T-series) on macOS 15 Sequoia via the NullMoth NVIDIA drivermacOS macOS High Sierra → macOS Tahoe -
ACPI Patches and Kexts
Automatically detects and adds ACPI patches and kexts based on hardware configuration.- Integrated with SSDTTime for common patches (e.g., FakeEC, FixHPET, PLUG, RTCAWAC).
- Includes custom patches:
- Prevent kernel panics by directing the first CPU entry to an active CPU, disabling the UNC0 device, and creating a new RTC device for HEDT systems.
- Disable unsupported or unused PCI devices, such as the GPU (using Optimus and Bumblebee methods or adding the disable-gpu property), Wi-Fi card, and NVMe storage controller.
- Fix sleep state values in _PRW methods (GPRW, UPRW, HP special) to prevent immediate wake.
- Add devices including ALS0, BUS0, MCHC, PMCR, PNLF, RMNE, IMEI, USBX, XOSI, along with a Surface Patch.
- Enable ALSD and GPI0 devices.
-
Automatic Updates
Automatically checks for and updates OpenCorePkg and kexts from Dortania Builds and GitHub releases before each EFI build. -
EFI Configuration
Apply additional customization based on both widely used sources and personal experience.- Spoof GPU IDs for certain AMD GPUs not recognized in macOS.
- Use CpuTopologyRebuild kext for Intel CPUs with P-cores and E-cores to enhance performance.
- Disable System Integrity Protection (SIP).
- Spoof CPU IDs for Intel Pentium, Celeron, Core, and Xeon processors.
- Add custom CPU names for AMD CPUs, as well as Intel Pentium, Celeron, Xeon, and Core lines from the Rocket Lake (11th) generation and newer.
- Add a patch to allow booting macOS with unsupported SMBIOS.
- Add NVRAM entries to bypass checking the internal Bluetooth controller.
- Properly configure ResizeAppleGpuBars based on specific Resizable BAR information.
- Allow flexible iGPU configuration between headless and driving a display when a supported discrete GPU is present.
- Force Intel GPUs into VESA mode with HDMI and DVI connectors to simplify installation process.
- Provide configuration required for using OpenCore Legacy Patcher.
- Add built-in device property for network devices (fix 'Could not communicate with the server' when using iServices) and storage controllers (fix internal drives shown as external).
- Prioritize SMBIOS optimized for both power management and performance.
- Re-enable CPU power management on legacy Intel CPUs in macOS Ventura 13 and newer.
- Apply WiFi profiles for itlwm kext to enable auto WiFi connections at boot time.
and more...
-
Easy Customization
In addition to the default settings applied, users can easily make further customizations if desired.- Custom ACPI patches, kexts, and SMBIOS adjustments (not recommended).
- Force load kexts on unsupported macOS versions.
-
Download OpCore Simplify:
- Click Code → Download ZIP, or download directly via this link.
- Extract the downloaded ZIP file to your desired location.
-
Running OpCore Simplify:
- On Windows, run
OpCore-Simplify.bat. - On macOS, run
OpCore-Simplify.command. - On Linux, run
OpCore-Simplify.pywith existing Python interpreter.
- On Windows, run
-
Selecting hardware report:
- On Windows, there will be an option for
E. Export hardware report. It's recommended to use this for the best results with your hardware configuration and BIOS at the time of building. - Alternatively, use Hardware Sniffer to create a
Report.jsonand ACPI dump for configuration manully.
- On Windows, there will be an option for
-
Selecting macOS Version and Customizing OpenCore EFI:
- By default, the latest compatible macOS version will be selected for your hardware.
- OpCore Simplify will automatically apply essential ACPI patches and kexts.
- You can manually review and customize these settings as needed.
-
Building OpenCore EFI:
- Once you've customized all options, select Build OpenCore EFI to generate your EFI.
- The tool will automatically download the necessary bootloader and kexts, which may take a few minutes.
-
USB Mapping:
- After building your EFI, follow the steps for mapping USB ports.
-
Create USB and Install macOS:
- Use UnPlugged on Windows to create a USB macOS installer, or follow this guide for macOS.
- For troubleshooting, refer to the OpenCore Troubleshooting Guide.
Note
-
After a successful installation, if OpenCore Legacy Patcher is required, simply apply root patches to activate the missing features (such as modern Broadcom Wi-Fi card and graphics acceleration).
-
For AMD GPUs, after applying root patches from OpenCore Legacy Patcher, you need to remove the boot argument
-radvesa/-amd_no_dgpu_accelfor graphics acceleration to work. -
For an NVIDIA Turing-or-newer card, see NullMoth NVIDIA driver below.
This fork adds support for NVIDIA Turing and newer cards (GTX 16, RTX 20/30/40/50, TITAN RTX, Quadro RTX and the Quadro T-series) on macOS 15 Sequoia through the NullMoth NVIDIA driver — NVIDIA's own open GPU kernel modules (r610) with a Metal plugin, a framebuffer, an accelerator and an AGDC shim on top.
The supported card list comes from NVIDIA's open-gpu-kernel-modules 610.57.04 table, stored in
Scripts/datasets/nvidia_gsp_data.py. Kepler, Maxwell and Pascal are not supported by the
driver and keep their original (OCLP) path.
When a supported card is found, OpCore Simplify writes the settings the driver needs into config.plist:
| Setting | Value | Why |
|---|---|---|
NVRAM → Add → 7C436110-… → boot-args |
nvfb=1 nvaccel=1 nvfbheads=4 -nvkmsnosmooth amfi_get_out_of_my_way=0x1 amfi=0x80 ipc_control_port_options=0 |
framebuffer + accelerator, 4 display heads; the AMFI arguments let WindowServer load the driver bundle |
NVRAM → Add → … → csr-active-config |
<430A0000> |
the SIP value the driver was tested with (its kexts are not Apple-signed) |
Misc → Security → SecureBootModel |
Disabled |
Apple Secure Boot refuses kexts Apple did not sign |
Kernel → Block |
com.apple.iokit.IONDRVSupport, Exclude |
otherwise the firmware framebuffer takes display index 0 from NVRMFB |
Kernel → Add |
Lilu.kext, AMFIPass.kext |
the driver's dependencies |
Booter → Quirks → ResizeAppleGpuBars |
-1 |
keep the firmware's BAR sizing; the driver sets the BAR up itself once macOS runs |
UEFI → Quirks → ResizeGpuBars |
-1 |
forced resizing can stop the firmware before the picker |
nv_disable=1, -wegnoegpu and agdpmod=pikera are removed for the card, and gfxrst=4 is added when WhateverGreen is also present
(for an Intel or AMD GPU on the same machine). While the config is used to boot the macOS installer — which has no NVIDIA driver and
runs on the firmware framebuffer — the installer values are used instead: ResizeAppleGpuBars = 0, ResizeGpuBars = -1, and
IONDRVSupport is left unblocked.
On a laptop with both an NVIDIA and an Intel GPU, the NVIDIA card is woken from ACPI (acpi-wake-type = 1) so an Optimus machine does not
put it back to sleep before the driver claims it, and the Before Using EFI screen prints the mux note.
The driver's four kernel extensions (NVRM, NVAccel, NVRMFB, NVRMAGDC) are not injected from EFI/OC/Kexts: they install to
/Library/Extensions and load from the Auxiliary Kernel Collection. OpenCore only has to set SIP and the boot arguments.
After installing macOS with the built EFI, install the driver on the installed system:
tar -xzf nullmoth-nvidia-*.tar.gz && cd pkgroot
shasum -a 256 -c SHA256SUMS
sudo ./install.shBIOS requirements: Above 4G Decoding ON, CSM OFF. Verify after the restart:
kmutil showloaded --list-only | grep nullmoth # 4 lines
system_profiler SPDisplaysDataType | head -20 # your card, Metal: supportedThe 1401 app (Windows and macOS) automates the driver install and its boot-picker entry (1401: Remove NVIDIA driver); this fork's job is only to produce the OpenCore side of that setup.
Contributions are highly appreciated! If you have ideas to improve this project, feel free to fork the repo and create a pull request, or open an issue with the "enhancement" tag.
Don't forget to ⭐ star the project! Thank you for your support! 🌟
Distributed under the BSD 3-Clause License. See LICENSE for more information.
- OpenCorePkg and kexts – The backbone of this project.
- SSDTTime – SSDT patching utilities.
Hoang Hong Quan
Facebook @macforce2601 · Telegram @lzhoang2601 · Email: lzhoang2601@gmail.com









