Install Guide
1. Gathering Data
This is vital information for creating the installer and for post install, many DDST patches depend on it. The necessary data -the device's ACPI path- can be obtained through Device Manager on Windows, in a property called BIOS device name.
- Embedded Controller:
\_SB.PCI0.LPCB.EC
- Processor:
\_PR.CPU0
- iGPU:
\_SB.PCI0.GFX0
- dGPU:
\_SB.PCI0.RP05.PEGP
- SMBUS:
\_SB.PCI0.D004
- Keyboard:
\_SB.PCI0.LPCB.PS2K
- Touchpad:
\_SB.PCI0.I2C1.TPD1
- Touchscreen:
\_SB.PCI0.XHC.RHUB.HS06
- Webcam:
\_SB.PCI0.XHC.RHUB.HS05
- Bluetooth:
\_SB.PCI0.XHC.RHUB.HS07
2. BIOS Settings
Needed for OpenCore in order to boot.
- Virtualization: [Enabled]
- SATA Operation: [AHCI]
- Boot List Option: [UEFI]
- Secure Boot: [Disabled]
- LoadLegacy Option Rom (CSM): [Enabled]
Note: the default DVMT prealloc for this laptop is 64MB so no BIOS patching is needed. Changing to a higher setting and patching the framebuffer to match the value didn't seem to solve the resolution issue. The BIOS used in this laptop is A08.
3. Making the Installer
The only way as of today to install directly Big Sur is with a macOS computer. Those with Windows can install Catalina and then upgrade to Big Sur.
Note: If the installer is made in macOS then al the setting up (installer only) must be done on macOS as well. Windows cannot read a Mac OS Extended USB.
Making the Installer on macOS
- Download Big Sur from the App Store
- Open Disk Utility
- Set View to Show All Devices
- Select the target USB and Erase
- Name: MyVolume
- Format: Mac OS Extended (Journaled)
- Scheme: GUID Partition Map
- Run on Terminal or iTerm:
Bash:
sudo /Applications/Install\ macOS\ Big\ Sur.app/Contents/Resources/createinstallmedia --volume /Volumes/MyVolume
Making the Installer on Windows
- Download Python and gibMacOS
- From gibMacOS, run gibMacOS.bat batch file as Administrator
- Set to Recovery. Option R.
- Choose the latest version that ends with FULL Instal
- Again on gibMacOS, run MakeInstall.bat batch file as Administrator
- Select the target USB and OpenCore option. Option 1o
- Yes continue.
- Copy the full path of the RecoveryHDMetaDmg.pkg file
4. Adding Base Files
Adding all the necessary files for the installer to work, kept to a minimum of drivers, tools, kexts and patches.
1. Installing OpenCore Files
- Download OpenCorePkg
- Add the X64 EFI folder to:
- Windows: root of the USB
- macOS: EFI partition of the USB
- Remove all Drivers except OpenRuntime.efi
- Download HfsPlus.efi driver and add it to OpenCore (OC/Drivers)
- Remove all Tools from except OpenShell.efi
- Copy Sample.plist found under Docs to the OpenCore root folder (OC)
2. Installing Essential Kexts
Note: They go under OC/Kexts.
Note 2: On Windows they look like regular folders.
Note 3: for Big Sur delete the AirPortBrcm4360_Injector.kext plugin (or set Max Kernel to 19.9.9).
3. Installing Essential ACPI Patches
Note: They go under OC/ACPI
Note 2: This are generic and prebuilt patches.
5. Setting Up config.plist
The starting point file is the one provided on the OpenCorePkg, it needs some modifications, specific for each laptop architecture and manufacturer.
1. Adding Kexts, SSDTs and Drivers
- Download ProperTree (python is needed)
- Run ProperTree.bat as administrator on Windows
- Open (Cmd/Ctrl + O) the config.plist on the target USB
- Perform a Clean Snapshot (Cmd/Ctrl + Shift + R) and point it at the EFI/OC folder
Note: On macOS is possible to generate an application by downloading
python (will not work otherwise), running buildapp-python3.command, and moving the app to Applications. Highly recommended.
2. Changing Configurations
Device Properties
- Under DeviceProperties/Add create a new children.
- Name:
PciRoot(0x0)/Pci(0x02,0x0)
- Type: Dictionary
- Under the recently created dictionary create 3 new Data type children
AAPL,ig-platform-id
with a value of 06002616
disable-external-gpu
with a value of 01000000
enable-max-pixel-clock-override
with a value of 01000000
Kernel
- Under Quirks enable:
AppleXcpmCfgLock
DisableIOMapper
PanicNoKextDump
PowerTimeoutKernelPanic
XhciPortLimit
- Under Add, search for AirPortBrcm4360_Injector.kext and set MaxKernel to
19.9.9
.
Misc
- Under Debug enable:
AppleDebug
ApplePanic
DisableWatchDog
SysReport
(for ACPI dump, only with DEBUG version of OpenCore)
- Under Debug, set
Target
to 67
.
- Under Security enable:
AllowNvramReset
AllowSetDefault
BlacklistAppleUpdate
- Under Security set:
ScanPolicy
to 0
Vault
to Optional
NVRAM
- Under 7C436110-AB2A-4BBB-A880-FE41995C9F82:
- Add to
boot-args
the flag debug=0x100
- Set
prev-lang:kbd
to 656E2D55533A30
UEFI
- Under Quirks enable:
IgnoreInvalidFlexRatio
ReleaseUsbOwnership
Note: For all the remaining categories the defaults work good.
3. Generating SMBIOS
- Download GenSMBIOS (python is needed)
- Choose the most similar SMBIOS:
- MacBookAir7,1
- MacBookAir7,2
- MacBookPro12,1
- Run GenSMBIOS and pick in order:
- Option 1 for downloading MacSerial
- Option 3 for selecting out SMBIOS
- Copy the data under PlatforInfo/Generic as follows:
- Type under
SystemProductName
- Serial under
SystemSerialNumber
- Board Serial under
MLB
- SmUUID under
SystemUUID
6. Installing macOS
Everything is set up now, time for the installation. Check the useful links before trying to install, having extra knowledge makes it easier.
0. Useful Links
A few useful links for before the install process:
- Dortania General Troubleshooting page
- MacOS Boot Process page
- Big Sur Laptop Support page
1. Boot from USB
- Insert USB stick into computer and boot off it (F12 to select USB).
- Once booted, the next options will be presented:
- Windows
- macOS Base System (External) / Install macOS Catalina (External)
- OpenShell.efi
- Reset NVRAM
- Select the option 2. Its name may vary
Note: Remember to set the right BIOS settings.
2. Formatting the Drive
- After arriving to the Installer, open Disk Utility
- Set View to Show All Devices
- Select the target HDD/SSD/Partition and Erase
- Name: Hackintosh
- Format: APFS
- Scheme: GUID Partition Map
Note: By default, macOS will setup freshly formatted drives with 200MB EFI.
Note 2: On the installation process the computer will restart a few times, but there is no need to touch anything, OpenCore handles it beautifully. Waiting is the way.
Important Note for UHD Display Users: After setting up the OS, when the installer finishes, if you get a black/gray screen that looks garbled when you use keyboard, find a way to get to System Preferences -> Displays -> set Resolution to Scaled -> change Scale to a larger text.
If you can't reach System Preferences to scale down resolution, boot with an invalid
ig-platform-id
, install some VNC viewer and control the MacBook from another device.
Original Post/Links
Most of the information, if not all is from the
Dortania's Official install page.
I'm attaching the install's config.plist to help checking if it's everything correctly configured.