A hackintosh,
generated for your machine.
One Python tool that scans your hardware, picks the kexts, writes a validated
OpenCore config.plist and builds the bootable macOS installer.
From Linux or Windows — you never need a Mac.
curl -fsSL https://raw.githubusercontent.com/devfrp/easy-hackintosh/main/get.sh | sh
irm https://raw.githubusercontent.com/devfrp/easy-hackintosh/main/get.ps1 | iex
The manual build, done for you
Building a hackintosh by hand means reading a hundred-page guide, guessing which
kexts apply to your board, hand-editing a config.plist, then making a
USB stick from a Mac you don't own. easy-hackintosh does all four: it asks for the macOS
version, downloads the official Apple recovery, reads your actual hardware and writes an
OpenCore EFI that matches it — checked by ocvalidate before anything is
written to the media.
From the first question to bootable media
Seven steps chained by a single assistant. Everything lands in
build/ — delete the folder to start over.
EH_VERSION=sequoiamacrecoverybuild/hardware.jsonconfig.plist: quirks and SMBIOS matched to the machineHardware handled automatically
Every detected component pulls in the kext or SSDT that goes with it — no checkbox to tick.
| Detected component | Kext / SSDT | State |
|---|---|---|
| Intel iGPU / AMD dGPU display and acceleration patches | WhateverGreen | AUTO |
| Audio (Realtek ALC…) with a starting layout-id | AppleALC | AUTO |
| Intel / Realtek Ethernet picked from the controller found | IntelMausi · RealtekRTL8111 · LucyRTL8125 | AUTO |
| Intel / Broadcom Wi-Fi kext build chosen per macOS version | AirportItlwm · AirportBrcmFixup | AUTO |
| USB re-enumerates every port | SSDT-RHUB | AUTO |
| ACPI — EC, clock, CPU, backlight universal boot-safe SSDTs (Dortania) | SSDT-EC/USBX · AWAC · PLUG · PNLF | AUTO |
| NVMe compatibility patches | NVMeFix | AUTO |
| SMC mandatory — emulates the Apple controller | VirtualSMC + plugins | AUTO |
| Precise USB mapping 15-port-per-controller limit — USBToolBox on Windows | manual | OPTIONAL |
Install
On Windows, open PowerShell as Administrator for the USB write.
get.ps1 installs Python and Git through winget if they are missing;
partitioning goes through diskpart, which ships with Windows.
Linux
# full assistant curl -fsSL https://raw.githubusercontent.com/devfrp/easy-hackintosh/main/get.sh | sh # dependencies (Arch) sudo pacman -S --needed python mtools gptfdisk \ pciutils usbutils qemu-full edk2-ovmf
Windows (PowerShell)
# Administrator console for USB irm https://raw.githubusercontent.com/devfrp/easy-hackintosh/main/get.ps1 | iex
Manually
git clone https://github.com/devfrp/easy-hackintosh.git
cd easy-hackintosh
python3 easy_hackintosh.py # Windows: python
Sub-commands
python3 easy_hackintosh.py # the whole assistant python3 easy_hackintosh.py scan # hardware scan only python3 easy_hackintosh.py efi # regenerate the EFI python3 easy_hackintosh.py image # rebuild the media
Output & test
# test in a VM (Linux) build/out/run-qemu.sh # write to USB — ⚠ erases the stick sudo dd if=build/out/macOS-*.iso of=/dev/sdX \ bs=4M oflag=sync status=progress
| Produced file | Contents |
|---|---|
| build/out/macOS-<version>.iso | Hybrid bootable ISO, a single file (Linux: USB or QEMU) |
| build/EFI/ | The generated OpenCore EFI folder |
| build/out/run-qemu.sh | Boots the ISO in a VM (Linux) |
| build/hardware.json | Result of the hardware scan |
What to know before you run it
No tool guarantees a first-try boot. Here is exactly where the limits are.
- ONLINE"Recovery" installer · macOS is downloaded during installation — a connection is required. A full offline installer needs
createinstallmedia, which only exists on macOS. - AUTOMATEDACPI, USB and Wi-Fi · universal boot-safe SSDTs (EC, USBX, AWAC, plugin-type, PNLF), USB through
SSDT-RHUB, and the Wi-Fi kext chosen per version — IntelAirportItlwmor BroadcomAirportBrcmFixup. - STARTING POINTThe EFI still needs tuning · precise USB mapping through USBToolBox (Windows); Intel Wi-Fi on Sequoia/Tahoe has no stable build yet — it falls back to the Sonoma build, worth checking; very specific ACPI → SSDTTime and the Dortania guide.
- TAHOE (26)Last Intel macOS release · but only 4 real models are accepted (MacPro7,1, MacBookPro16,1/16,2, iMac20,1/20,2) — the installer rejects a spoofed SMBIOS that isn't one of them. macOS 27 will be Apple Silicon only.
- LAPTOPSTrickier · battery, sleep, Wi-Fi and USB almost always need extra work.