Hackintosh

January 1, 2022 (2y ago)

Hackintosh

Overview:

Apple's macOS is designed to run exclusively on Apple hardware, but through various methods often termed as "hacks," it's possible to run macOS on non-Apple hardware. These methods typically involve kernel modifications, customized bootloaders, emulators, or virtual machines. This project specifically utilizes a custom bootloader approach. If you're unfamiliar with the concept of hackintosh, I recommend conducting some research to understand the motivations and processes involved.

Journey:

The journey begins with extensive research and study. I highly recommend referring to Dortania's OpenCore Install Guide for comprehensive instructions on setting up a hackintosh system. After dedicating a month to trial and error, I successfully achieved a functional hackintosh setup. Reflecting on the experience, I can confidently say it was a worthwhile endeavor. I utilized the system as my daily driver for a year before eventually acquiring an M1 Mac Mini.

Hackintosh Guide

This guide focuses solely on the Asus TUF X570 Plus. While the provided EFI may work on similar systems, I do not recommend using it without proper adjustments. You can download the customised bootloader here on my GitHub.

Specifications

  • Motherboard: Asus TUF X570
  • CPU: Ryzen 7 3700X
  • GPU: ROG Strix Radeon RX Vega 64 8GB
  • PSU: Superflower 850W 80+ Gold
  • RAM: 3200MHz 32GB (2x16)
  • NVMe1: 500GB
  • NVMe2: 500GB
  • Chassis: Corsair iCUE 465x
  • AIO: Corsair H100i RGB
  • Fans: Corsair LL120 RGB
  • Network: Fenvi FV-T919

See Build on PC Part Picker

BIOS Settings

SettingValue
FastbootOFF (Important)
CSMOFF (Important)
SecureBootOFF
IOMMUOFF
AMI Native NVMe DriverOFF
USB Power Delivery in Soft StateOFF
fTPM NV for factory resetOFF
Above 4G DecodingON
Power On By PCIeON
PCIe16_1GEN 3

Tools You Need to Make the Installer:

  • ProperTree - used to edit Config.plist
  • SSDT-Time - compiled using SSDT-Time (I highly recommend compiling with SSDT-Time instead of using prebuilt ones)
  • GenSMBIOS - Used to generate fake SMBIOS for hackintosh
  • MountEFI - Necessary if you're making your bootable drive on a Mac or Mac VM
  • Gib-MacOS - MacOS downloader script (works on Windows and Linux, but it's recommended to use a Mac for creating the bootable drive)

Kexts

  • AppleALC - For onboard audio (add alcid=1 to bootargs)
  • Lilu - Library for other Kexts
  • RealtekRTL8111 - For Ethernet
  • VirtualSMC - Essential for system management
  • WhateverGreen - For optimizing your graphics card performance

SSDTs

  • SSDT-EC - Fake Embedded Controller
  • SSDT-USBX - Powers USB devices (e.g., Audio DACs)
  • SSDT-SBRG - USB Mapping (If you're using the exact same board, you can copy this SSDT-SBRG and AMDUSBMAP.kext; every port will work just fine.)

If you have a similar system and couldn't get it to boot, feel free to ask for help on my Twitter

Rig

Here is the system configuration I've assembled using the provided kext and EFI. This setup is affectionately referred to as "Ryzenshine," highlighting its AMD components and stellar performance.

Hackintosh

If you're considering building a hackintosh from scratch but don't know where to begin, I offer comprehensive services—from assembling the PC to ensuring a fully functional hackintosh setup. Feel free to reach out to me through any of the channels listed on my website's contact page.