There aren't too many changes to be made, but being aware of what we've applied out of the box, will help ensure you have a successful configuration later.


Stripped Comments/Disabled Entries

Right away, we take the latest official Sample.plist from Acidanthera and run ProperTree's two Strip commands, to remove all of the stock examples included. This debloats the sample, and allows us to add what we really need.


CaseySJ | Fix PCI bus enumeration on KVM | 13.0+

This kernel patch repairs a hang that forces a timeout to go off before continuing the boot process once PCI enumeration happens. To add this patch, please add the following to Kernel -> Patch -> 0. You can copy the below section, as it is valid XML data, and Ctrl+V (paste) it into your ProperTree window for easier adding.

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<array>
	<dict>
		<key>Arch</key>
		<string>x86_64</string>
		<key>Base</key>
		<string>__ZN17IOPCIConfigurator18IOPCIIsHotplugPortEP16IOPCIConfigEntry</string>
		<key>Comment</key>
		<string>CaseySJ | IOPCIIsHotplugPort | Fix PCI bus enumeration on KVM | 13.0+</string>
		<key>Count</key>
		<integer>1</integer>
		<key>Enabled</key>
		<true/>
		<key>Find</key>
		<data>hAB1Sw==</data>
		<key>Identifier</key>
		<string>com.apple.iokit.IOPCIFamily</string>
		<key>Limit</key>
		<integer>0</integer>
		<key>Mask</key>
		<data>/wD//w==</data>
		<key>MaxKernel</key>
		<string>24.99.99</string>
		<key>MinKernel</key>
		<string>22.0.0</string>
		<key>Replace</key>
		<data>AADrAA==</data>
		<key>ReplaceMask</key>
		<data>AAD/AA==</data>
		<key>Skip</key>
		<integer>0</integer>
	</dict>
</array>
</plist>


English as the Default Language

DarwinOCPkg, and DarwinKVM is primarily english based. Due to this, the default Sample has been updated from Russian to English.

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
	<key>prev-lang:kbd</key>
	<data>ZW46MjUy</data>
</dict>
</plist>


Updated Default SMBIOS Data

DarwinOCPkg sets the default Model to MacPro7,1 as most users intend to use the latest macOS version possible. Do not use other than a Mac Pro model for your QEMU KVM. You are not building an iMac, nor a Mac mini, and especially not a MacBook.

As a side note, you can see that the Min/Max have been set to -1. This allows the APFS driver to see as many volumes as possible, regardless of APFS driver version of said volume.


Complete!

As of right now, those are all of the modifications you need to make to OpenCorePkg to get a near identical experience to DarwinOCPkg. You can now continue to finish setting up the rest of your OpenCore disk image contents, and then continue to configuring the config file! Goodluck.




DarwinKVM Logo
DarwinKVM Docs Version 3.0.0~prerelease
Copyright © 2023, 2024, 2025 RoyalGraphX
Copyright © 2025 Carnations Botanica
Distributed by a BSD 3-Clause License
Last Modified: Sat, 24 May 2025 01:58:55 CDT
Carnations Logo