Releases: redpersongpt/OpCore-OneClick
v5.0.0 - APP IS 3 MB NOW
What's New
This release rewrites a huge chunk of the EFI generation pipeline. If you tried building on AMD or ran into missing kexts, this one's for you.
Actually working AMD builds
The AMD kernel patch system was completely broken — core count never made it from the hardware scanner to the config generator. Every AMD build silently shipped without the critical cpuid_cores_per_package patches. Fixed now.
Real SMBIOS serials
Previously, every single EFI shipped with the same placeholder serial numbers (W0000000001, etc). That means no iMessage, no FaceTime, probably no App Store. The generator now creates unique random serials, MLB, UUID, and ROM per build.
Pick your macOS version
You can now choose which macOS to target in the Compatibility step, with Apple-styled version cards showing Big Sur through Tahoe. Your pick flows through to the build — right kexts, right patches, right SSDTs.
Bluetooth actually works now
Intel Bluetooth (IntelBluetoothFirmware + BlueToolFixup) and Broadcom Bluetooth (BrcmPatchRAM3 + BrcmFirmwareData + BlueToolFixup) kexts are now included when the matching wifi chipset is detected. All 7 new kexts have proper download sources in the registry.
Multi-GPU & headless iGPU
Desktop builds with both a discrete GPU and an iGPU (like RX 580 + UHD 630) now pass both GPUs to the config generator. Headless iGPU framebuffer patching finally works correctly.
New kext coverage
- CPUFriend for Intel laptop power management
- XHCI-unsupported for USB 3.0 on Haswell/Broadwell desktops
- LucyRTL8125Ethernet for 2.5G Realtek NICs
- NVMeFix expanded to cover Samsung 970/980/990 and WD SN drives
- SSDT-PLUG skipped on macOS 12.3+ (not needed anymore)
- Desktop Intel wifi kext selection (was laptop-only before)
- Ethernet kext selection based on chipset instead of always adding both
Troubleshooting built in
New troubleshoot screen with 11 common Hackintosh issues — black screen, kernel panics, no audio, USB problems, iServices, and more. Each has symptoms, likely causes, step-by-step fixes, and links to Dortania guides. Searchable and filterable by category.
Report issues from the app
Settings now has a "Send Bug Report" button that opens a GitHub issue with your session logs, hardware info, and build details pre-filled. TRACE logs are filtered out so the URL doesn't blow up.
Check for updates
The app now checks GitHub Releases on startup and shows a badge when a newer version is available. One click to download.
Post-install guide
The completion screen now walks you through the critical post-install steps: USB port mapping (with an 8-step guide), CPU power management, iServices configuration, and Intel wifi HeliPort setup.
170+ loading quotes
Build screen now shows rotating funny quotes while you wait. Platform-aware — Windows users get roasted, Linux users get sudo jokes, macOS users get inception humor.
UI polish
- New app icon matching the in-app hero Logo (C-slash shield + blue dot)
- Settings modal: solid background, no more transparency
- All buttons have hover glow + press animation so you can tell what's clickable
- Settings gear icon bigger and brighter
- Modal scrolling fixed for smaller screens
Bug fixes
- Flash dialog no longer opens after a failed prepareFlash
- Build page no longer double-writes progress to the store
- Linux disk size parsing handles both string and number JSON
- Flash token validation is now atomic
- VM detection via motherboard/chassis fingerprinting
- OpenCanopy.efi and OpenHfsPlus.efi validated after OC extraction
- Config strategy propagated from compatibility report
- 7 kexts had no download source — builds would silently fail
- Non-boot-critical kexts (Bluetooth, NVMeFix, etc) marked optional
- Placeholder serial validator updated for new format
v4.0.0
v4.0.0 moves the desktop app to Tauri v2.
Highlights:
- Rust-backed desktop runtime and platform integration
- Updated interface and streamlined installer workflow
- Cross-platform packaging for Windows and Linux builds
- Improved hardware scan, validation, EFI build, and recovery flow
Release assets:
- Windows installer (.exe)
- Linux AppImage
- Linux .deb package
v3.2.8
Stop auto-injecting Intel itlwm on laptops unless the detected Wi-Fi card is actually Intel.\n\nBroadcom BCM4352/BCM43602 paths now pull in AirportBrcmFixup on Ventura and older, and Broadcom Sonoma+ paths now surface as risky/manual instead of pretending they are a clean native route.\n\nThis also adds AirportBrcmFixup to the app kext registries so the generated Broadcom path is fetchable and visible in planning.
v3.2.7 — Fix #51: SSDT-GPIO sourcing + cache auto-clear on startup
Fixes #51 — SSDT-GPIO download failure blocking EFI build
-
OpenCore cache cleared on every app startup — prevents corrupted or partial downloads from blocking subsequent builds. Supplemental ACPI tables and kext archives are re-downloaded as needed.
-
SSDT-GPIO is now optional — when the Dortania supplemental download fails, SSDT-GPIO is removed from config.plist along with VoodooI2C/VoodooI2CHID kexts, gracefully falling back to the PS2 trackpad path (VoodooPS2Controller). The system boots fine without I2C support.
-
All other required SSDTs remain mandatory — only SSDT-GPIO is in the optional set since it's specific to the I2C trackpad path.
v3.2.6 — Fix #50: itlwm download failure no longer blocks EFI build
Fixes #50 — itlwm.kext download failure blocked entire EFI build
Wi-Fi and Bluetooth kexts are now classified as optional. When GitHub is unreachable and no embedded fallback exists, the kext is removed from config.plist and the build continues. The system boots without Wi-Fi — the user can install the kext manually later.
Optional kexts (non-fatal on download failure):
- itlwm.kext (Intel Wi-Fi)
- AirportItlwm.kext (Intel Wi-Fi native)
- IntelBluetoothFirmware.kext
- BlueToolFixup.kext
- BrcmPatchRAM3.kext (Broadcom Bluetooth)
- AirportBrcmFixup.kext (Broadcom Wi-Fi)
- VoodooI2C.kext / VoodooI2CHID.kext (I2C trackpad — PS2 fallback still works)
Required kexts (still block build on failure):
- Lilu, VirtualSMC, WhateverGreen, AppleALC, SMCBatteryManager, ECEnabler, VoodooPS2Controller, and all other core kexts
v3.2.5 — Fix CI publish-release workflow
v3.2.4 — Dortania conformance pass + flash pipeline hardening
Complete Dortania cross-reference audit — all 18 generation guides read and verified against the EFI generator.
Dortania gaps fixed:
- Ice Lake: Added -igfxcdc and -igfxdvmt boot-args for framebuffer clock driving and DVMT fixes
- Sandy/Ivy Bridge desktop: Added SSDT-IMEI for CPU/chipset mismatch cases (safe to include unconditionally)
Flash pipeline hardening (v3.2.3, included):
3. Detach failures now logged instead of silently swallowed
4. Phase 2 format re-disables automount to prevent Explorer race
5. XCopy has 3-attempt retry loop for transient failures
6. Drive accessibility preflight check before copy phase
7. Automount error logging on re-enable failure
All Dortania values verified correct:
- 24 ig-platform-id values (8 generations x 3 modes) — all match
- Booter/Kernel quirks per generation — all correct
- SSDT selection per generation/platform — all correct
- SMBIOS selection with version-aware fallbacks — all correct
- Device-id spoofs — all correct
- AMD Ryzen/Threadripper path — all correct
v3.2.3 — Flash pipeline hardening: 5 critical fixes
End-to-end audit of the Windows USB flash pipeline found 10 issues. This fixes the 5 most critical:
- Detach logging: mountvol failures are now logged instead of silently swallowed — previously the retry loop repeated the same locked-handle failure because detach "succeeded" without actually releasing anything
- Phase 2 automount disable: Re-disables automount before the Phase 2 format fallback — Phase 1 re-enabled it at the end, letting Explorer grab the raw partition between phases (#49 recurring root cause)
- XCopy retry loop: 3-attempt retry with 1.5s backoff for transient failures from drive stabilizing after format
- Drive accessibility preflight: Verifies the drive letter is accessible (5 attempts, 1s each) before starting copy
- Automount error logging: automount re-enable failures now produce visible warnings instead of being silently caught
v3.2.2 — Fix #49: single-pass diskpart eliminates persistent FAT32 format failure
Fixes #49 — FAT32 format still failing on v3.2.0 despite automount disable fix from v3.1.9.
Root cause: The v3.1.9 fix used two separate diskpart processes (Phase 1: create partition, Phase 2: format). The automount disable command only persists within a single diskpart session on some Windows 10 builds. In the ~1.5s gap between Phase 1 exiting and Phase 2 launching, Explorer re-acquired a handle on the raw partition, causing format to fail.
Fix: Merged create and format into a single diskpart script — clean → convert gpt → create partition → format fs=fat32 → assign all run in ONE diskpart session. This eliminates the inter-process window entirely.
v3.2.1 — Close remaining BUGHUNTERCLAUDE: type safety, security, CI
Closes the remaining BUGHUNTERCLAUDE findings from the comprehensive audit.
Fixes:
- H2: Documented sandbox:false requirement (preload needs ipcRenderer access)
- M4: Platform detection now uses preload bridge instead of User-Agent parsing
- M5: Stale closure risk documented with TODO for safe refactor
- M6: Recovery resume creates build flow snapshot before download
- Q2: _setStepRaw calls now use setStepForced wrapper with audit logging
- L3: All missing IPC methods added to Window.electron interface (eliminates as-any casts)
- L4: Diagnostic logging added to critical empty catch blocks in diskOps
- L10: biosStatus and cachedRecovInfo properly typed (no more any)
- S1: Kext download integrity verification added (SHA-256 checksums)
- S3: Preload argument-type validation for disk/flash IPC channels
- CI1: macOS build job placeholder added to release workflow
- CI2: Action version pin documentation added
- CI3: Release creation race condition documented with clobber pattern
Combined with v3.2.0, this closes 44 of 49 BUGHUNTERCLAUDE findings. Remaining 5 are architectural (Q1 App.tsx decomposition, Q3 module state) or require deeper investigation (M9 version default behavior).