Follow this great video tutorial from TECHNolli. My guide is just an extension to this video, where I detail the things I did differently and the troubleshooting I made along the way.
This is perhaps a little overkill, but I am never satisfied a USB or SSD I intend to install an OS onto is truly “clean” unless I’m able to format the drive and it’s hidden EFI partition fully. Using a Windows 10 PC you can fully format all partitions in a way I’ve never been able to do with the Mac’s DiskUtility app or Terminal commands.
How to Format EFI Partition in Windows 10+:
cmd + R to open “Run” window
diskpart to open a command line tool for managing partitions.
Then type in the following commands, making sure the disk number is the one you’re after.
sel disk 0
sel partition 1
delete partition override
Opening “Disk Manager” will give you to option to format and visually see the partitions on all drives.
This assumes you’ve named your USB stick “USB”
sudo /Applications/Install\ macOS\ Big\ Sur.app/Contents/Resources/createinstallmedia --volume /Volumes/USB -- /Applications/Install\ macOS\ Big\ Sur.app
|OC Gen-X||Creates the initial EFI files for a great starting point||Link|
|GenSMBIOS||Generates unique SMBIOS details giving your Mac a unique serials number||Link|
|ProperTree||GUI for modifying the config.plist. It’s what’s referenced in the official OpenCore guides. Other apps like “OpenCore Configurator” shows promise, but didn’t seemed entirely necessary really.||Link|
|EFI Mounter||Allows you to quickly open EFI partitions, but isn’t as intuitive as “Clover Configurators” EFI Mounting feature which shows you the names of the drives.||Link|
|Clover Configurator||Used solely for it’s more intuitive EFI Mounter as an alternative to the above||Link|
Use the Kaby Lake official install guide: https://dortania.github.io/OpenCore-Install-Guide/config.plist/kaby-lake.html
Only difference I made was adding
npci=0x3000 to the end of the NVRAM → boot-args
This resolved an issue with the graphics card; which would give me a black screen.
After saving the config.plist file for the last time and before booting into BIOS (16:42), I’d recommend checking your config with this handy sanity checker:
It highlights common mistakes or typos. My config file shows no errors or warning.
I have a two config files to choose from:
Obviously make sure all your kexts are up to date.
Assuming the site is still live, all the latest versions of the above kexts can be found here: https://kext.me/
Turning CSM off seems to be controversial. It may make no difference in the end, but mine is off and everything’s ok so far.
The SMBIOS config properties in these config.plist files are blank.
Thats because this EFI guide is public and I don’t want anyone just using my EFI files and creating a serial number conflict. So be sure to follow the last part of the video guide (28:58) where he uses GenSMBIOS to create new Platform Information. Also check out the OpenCore’s post install guide on how to get a unqiue serial. You can use a VPN like TunnelBears free version to help with that too.
Just a note, you will need to use
iMac18,3 when setting GenSMBIOS.
Allow short passwords:
chflags hidden [path/to/file.ext]
Everything works. All iCloud and related services are working well. Bluetooth, Wifi, Graphics Card, Audio, Ethernet, etc… it all works. I haven’t come accross anything that hasn’t worked as expected. Admittiedly I haven’t yet tested all USB ports and their respective read/write speeds to confrim USB 3 is active on all ports, but the ones I have used are good.
There were some instances where the screen would glitch and freeze just before booting into the desktop. It’s hard to reproduce as it’s only ever happened twice during my entire time working with OpenCore. Rebooting the PC resolved the issue, but I’m a little unsatisfied I don’t have a proper explanation.
In the early stages of experimenting and testing out OpenCore for the first time I experienced an error that would stall the installation. It said “Disk4 : device is write locked“. Sometimes the disk number would be different.
I found a forum thread that explained that using “Single User Mode” would help. I had to update the following values in the config.plist:
-v keepsyms=1 debug=0x100 alcid=1 npci=0x3000 -s
-s and the
csr-active-config puts the installation into “single user mode”
When booting into the “Install macOS Big Sur (external)” with this single user mode switched on, you’ll be asked to enter an option. Just type ‘exit’ and press Enter.
After I managed to install Big Sur to the SSD, the second reboot would go into an infinite loop. Restarting the PC and making no progress. At this point I needed to remove the
-s argument. Which is easier said than done. Having access to a functioning Mac parition or second Mac computer is the only way you’re going to be able to change that
-s flag. In the OpenCore Boot Menu I also selected the “Reset NVRAM” option, which changed the BIOS’s boot order and renamed the UEFI USB drive to “OpenCore” instead of the USB manufacturer (SanDisk) name. You may not need to do any of this if you don’t come accross the “device is write locked” error.
Immidiatly after logging into iCloud for the first time, everything seemed to work. One-by-one Messages started to work, FaceTime, Contacts, Calander, etc… However iClouds did not seem to want to upload any files. The little cloud icon would appear next to the filename but next upload. I tried:
Eventually I logged back into iCloud on my genuine iMac at work and found the same problem was happening. iCloud files would not upload. Coincendally my work iMac is registered in my name and is as a 2017 model. The same “SystemProductName” as my Hackintosh. So I called up Apples’ technical support only to go over everything I had already done. There was no solution.
iCloud is important to me, I use it all the time… but I had exhausted all my options and had to crack on with work. Then about one day later and for no reason at all, it just started working. Not had any problems since.
Following the success stories from many other people being able to simply update Big Sur using MacOS’s native System Preferences → Software Update tool, I attempted to do the same. After allowing the installer to reboot; OpenCore attempts to boot into a “Mackintosh HD” instead of my normal “Mac” SSD. After about 10-20 minutes the update would hang and I’d get the ? failure image. Strangely enough the solution was to just disconnect additional monitors. Using one monitor allowed the installation to complete with no further issues.