A professional, safe, and fully automated utility to update OpenCore, maintain Kexts/Drivers, and merge config.plist changes on Hackintosh setups.
Designed to make Hackintosh maintenance effortless, this script interacts with your EFI partitions, downloads official Acidanthera releases, performs intelligent driver merging, automates pre-release tracking via GitHub's API, and features a dual-language (EN/PT-BR) output system.
- YouTube Channel - www.youtube.com/@HackintoshAndBeyond
- Tool Tutorial Video - Watch the Video Here
- Discord Community - Join us at discord.gg/5hvZ5u7QXQ
-
Intuitive Menu Interface & Multi-Language A simple and straightforward menu detects your macOS environment to display information in English (en_US) or natively translated to Portuguese (pt-BR).
-
Automatic FAT32/EFI Partition Detection The script intelligently scans both internal drives and external USBs for any EFI or FAT32-formatted partition. It bypasses technical limitations by extracting true hardware names—like "SanDisk" or "WD Black"—and actual OS volume names.
-
Smart Backup System Before touching your system, the script creates an
EFI-Backup-<date>-<time>copy directly into the targeted EFI partition, allowing for immediate fail-safe rollbacks if a boot sequence breaks. It automatically rotates old backups to save space. -
Direct OpenCore Downloads & Smart Fallback Downloads the latest RELEASE or DEBUG version of OpenCore directly from the official Acidanthera GitHub.
- Smart Fallback: If GitHub triggers a Rate Limit (HTTP 403), a custom scraping fallback steps in, guaranteeing you get your OpenCore files regardless of API exhaustion!
-
Intelligent Boot File Updates Updates core engine files (
BOOTx64.efi,OpenCore.efi,.contentVisibility, and.contentFlavour) while keeping all your preciousconfig.plist, custom SSDTs, Kexts, and customized GUI Resources strictly intact. -
Automatic Driver Pruning Synchronizes and updates only the
.efidrivers explicitly declared as "Enabled" in yourconfig.plist. Identifies rogue or unused driver files hidden in your folder and asks if you would like to securely remove them. -
Sample.plist Merging Engine Seamlessly parses structural changes from the new Acidanthera
Sample.plistand injects new schema keys directly into your functionalconfig.plist, ensuring you stay compliant with the newest OpenCore changes without erasing your hardware's quirks. -
SHA-256 Validation & temporary clean-ups Automatically sweeps leftover artifacts, removes ZIP files, and completely closes out temp environments once the bootloader updates successfully.
-
Download the Script Grab the
update_opencore.pyscript repository or clone it via git. -
Launch Terminal & Navigate
cd /Users/your_username/Downloads/update_opencore -
Install Requirements Please make sure to have Python 3 and modules installed. (e.g.
requests,tqdm).pip3 install requests tqdm
-
Run the Script as Administrator The tool requires
sudoaccess to natively mount inactive EFI drives safely and manipulate your system.sudo python3 RunUpdateOpenCore.command # or sudo python3 main.py
- macOS Environment: Built for Hackintosh/macOS functionality relying on
diskutil. - Python 3: Comes heavily supported on macOS via Homebrew.
- Network connection: Essential for hitting GitHub API tags.
-
ModuleNotFoundError: No module named 'tqdm'or'requests'Missing python libraries. Ensure you run:python3 -m pip install requests tqdm
-
Permission Denied / Administrator Error Always execute the script using
sudo. The script intentionally enforces a safety lock preventing execution by standard users to avoid partial EFI corruption. -
[Errno 28] No space left on device You've run out of space on your hidden EFI partition. Open your EFI partition manually and discard very old bootloader logs or oversized Kexts.
This tool manipulates crucial system boot structures. A full system backup/USB Recovery drive is heavily recommended before running bootloader automations. The creator takes no liability for corrupted boot sectors or kernel panics arising from updated setups. Use the tool responsibly.
Found a bug or want to enhance the Python workflow? Feel free to fork the repository, refine the logic, and submit a Pull Request! The Hackintosh community thrives on collaborative engineering!