Booting an OS is just a matter of invoking the correct boot file, whether BOOTx64.efi or GRUBx64.efi, etc. (Booting macOS on foreign hardware is much more complicated than that, but booting an OS that is supported by the firmware is much easier.)
On my Z490 Vision D, OpenCore detects macOS and Windows, but not Ubuntu Linux. Clover, however, auto-detects everything. With OpenCore we have to create an entry in
Misc section using PCI paths that can be determined by running
OpenShell.
Here are the volumes that OpenCore and Clover have auto-detected:
- OpenCore on top
- Clover on bottom
We can see that Clover has detected Linux, but OpenCore has not -- even with
ScanPolicy set to 0.
View attachment 487981
View attachment 487982
But after manually adding an entry in
Misc as follows...
XML:
<key>Entries</key>
<array>
<dict>
<key>Arguments</key>
<string></string>
<key>Auxiliary</key>
<false/>
<key>Comment</key>
<string></string>
<key>Enabled</key>
<true/>
<key>Name</key>
<string>Ubuntu Linux</string>
<key>Path</key>
<string>PciRoot(0x0)/Pci(0x17,0x0)/Sata(0x2,0xFFFF,0x0)/HD(2,GPT,1224743C-A3D6-4286-AA06-4F251E336011,0x109000,0x32000)/\EFI\ubuntu\grubx64.efi</string>
</dict>
</array>
...OpenCore now displays an entry for Ubuntu, which in turn boots
grubx64.efi:
View attachment 487983
This is also speculation because only the developers know whether it's feature complete and whether it's time to move to 1.0.0. My
speculation is that it's still not feature complete.
But this semantic is largely irrelevant as long as OpenCore does what we need it to do.