Analysis updated 2026-06-24
Build OpenCore from source to boot macOS on a custom PC
Patch ACPI and SMBIOS tables at boot to make a Hackintosh look like a real Mac
Inject kernel extensions into XNU at boot time without modifying the macOS install
Reuse the UEFI support libraries in another Acidanthera project that needs Apple driver helpers
| acidanthera/opencorepkg | peng-zhihui/dummy-robot | glfw/glfw | |
|---|---|---|---|
| Stars | 14,972 | 14,954 | 14,995 |
| Language | C | C | C |
| Setup difficulty | hard | hard | moderate |
| Complexity | 5/5 | 5/5 | 4/5 |
| Audience | ops devops | researcher | developer |
Figures from each repo's GitHub metadata at analysis time.
Building OpenCore requires the EDK2 toolchain, Clang with specific flags for the UBSan runtime, and matching Apple-specific firmware knowledge to produce a bootable config.
OpenCorePkg is the source repository for the OpenCore bootloader, plus a development SDK for building against it. A bootloader is the piece of software that runs after the firmware on a computer and before the operating system starts, and OpenCore is one used in the Hackintosh community to boot macOS on non-Apple hardware. The README is short and assumes the reader already knows what OpenCore is for, so most of it is a catalogue of what the repository contains. Alongside the bootloader, the project holds a set of UEFI support libraries that are shared with other projects in the Acidanthera organisation on GitHub. The README states that the main purpose of these libraries is to add functionality needed for Apple-specific UEFI drivers, the firmware-level pieces that talk to Apple hardware and macOS. The README lists what the libraries handle. Among the items are loading Apple disk images, aggregating Apple keyboard input, verifying Apple PE image signatures, supplemental code for Apple UEFI secure boot, audio management with screen reading support, basic reading and writing of ACPI and SMBIOS firmware tables, gathering CPU information with timer support, cryptographic primitives such as SHA-256 and RSA, and several decompression formats including zlib, lzss, and lzvn. Other entries cover helpers for files and strings, UEFI variables, overflow-checked arithmetic, plist configuration parsing, PNG image handling, text and graphics output, and an XNU kernel driver injection and patch engine. XNU is the kernel inside macOS. A sub-library called OcGuardLib gets its own short section. It provides safe integer arithmetic built on top of compiler intrinsics, type alignment checking, and a runtime for the undefined-behaviour sanitiser, with the runtime based on a NetBSD implementation. Using the sanitiser runtime requires building with Clang and the relevant compiler flag. The rest of the README is administrative. It points readers to the AppleSupportPkg repository and the PicoLib library set for the early history of the code, credits contributors and other Hackintosh teams such as Chameleon and Clover, and links to a separate document listing OpenCore discussion forums. The repository is mainly written in C.
Source for the OpenCore UEFI bootloader used by the Hackintosh community to boot macOS on non-Apple hardware, plus shared Apple-focused UEFI support libraries.
Mainly C. The stack also includes C, UEFI, EDK2.
Setup difficulty is rated hard, with roughly 1day+ to a first successful run.
Mainly ops devops.
This repo across BitVibe Labs
Verify against the repo before relying on details.