I believe the only reason OpenCore can't be used alone is because of some rigid design choices that limits the kinds of stuff it can boot.
OpenCore can be used, and is used by the majority of users, alone. Perhaps you meant it can't be so used for multiple instances of OpenCore?
Anyway, the only restrictions on what it can boot are:
- It does not support booting legacy BIOS setups
- So, no legacy windows or similar
- There is an open item to add this on the tracker but is tagged as "Low Priority"
- It does not ordinarily allow booting another OpenCore Instance
- You can't chain-load another OpenCore instance unless you disable signing and build your own as documented in the OpenCore manual.
Does it know about legacy BIOS booting on old Macs? What's missing for being able to boot Linux? Does OpenCore support chain booting other boot loaders? Can it boot RefindPlus (the opposite order of MyBootMgr)?
Legacy BIOS - See above
Missing for Booting Linux - Nothing. It boots Linux
Supports Chainloading - Yes, apart from other OpenCore instances. Every time an OS is booted, it is a bootloader being chain-loaded. The firmware does this, RefindPlus does this and so does OpenCore. That some other bootloader is actually there instead is not visible to what is calling it as long as it has the correct name from the UEFI specs. That's why the firmware will happily load RP or OC and same applies to those.
Boot RefindPlus - See above. Actually, this was the initial way to use Legacy Windows with OC. I just turned it on it's head in MyBootMgr as I also wanted to boot multiple OC instances. Initially to have instances with GPU Acceleration (Mojave) or without (HiSierra) but since moved on to other reasons and now keep four OpenCore Instances:
- OC - Current Version with GPU Acceleration
- OC_ALT - Current Version without GPU Acceleration
- OC_Dev - Builds of the GitHub Code for Testing
- Can easily misconfigure something here, in which case recovery means simply rebooting and selecting another instance.
- No need to pull disks, reset NVRAM etc
- OC_WRK - Some old known working implementation of OC (I think it is v0.5.9)
- Just because I sometimes lose discipline and develop in the three previous instances concurrently
- I can probably delete this since I can also get in with RefindPlus directly but just leave it there
The four instances work for OC tests but actually, screw ups are more likely with testing RefindPlus builds of which I have to do countless interim builds.
For this, I use a
RP (Stable Version) -> OC -> RP (Dev Version)
setup. If
RP Dev
blows out, it is simply reboot and carry on. Only restriction here is that another OC instance can't be added to that chain as mentioned earlier.