Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.

johnwillsey

macrumors member
Dec 31, 2009
54
10
Before dealing with top level issues, you need to sort out some basic ones resulting in issues with the Helper Tools.
Wipe things out and start over while adhering to this:
View attachment 1537424
if you do have issues after strictly following this, then such can be resolved.
Thanks, but the guide does not explain the explicit conditions that demand where one must start, so I tried very carefully to explain everything as I've been stuck going in circles. e.g. it does not state that you must clear nvram/pram before starting the process. It also does not specify if you must boot without any OC or previous refindplus. e.g. must it be like factory with only the Apple directory on the EFI partition? It also recommends not installing to system drive but does not state one cannot and that will cause the issues I'm having, so I'm not sure if that is the root cause or not either. (all my drives have OS systems on them)

I think I'm setting it up in a similar manner to my existing older refindplus install that has worked great for months. Is there a big undo/clear out process one must do if upgrading vs a fresh system that has never had OC or refind on it? The only diff I can see from the docs is using an EFI on a disk that has an arbitrary OS on it, but it worked fine before. regardless of which EFI partition regardless of which disk once blessed. I can move my backup older version of my refindplus EFI folder to any drive, bless it, and it works just fine too. same with my pure OC setup.

I've looked at the docs and am not sure where I'm going off the rails causing applications not to work. (older builds of the mybootmgr utils work fine that I have backed up.) I'm assuming it's something silly and a bad assumption I'm making somewhere but not seeing...

Onward...

I did some resetting of nvram and clearing out of my EFI partition on my first seeked drive upon boot and started to make progress. I thought I would use refindplus gui to disable SIP, which sets a value of 87F, but although Enter Recovery is OK with that value thinking sip is disabled, apparently Bootblesser or DeployEFI are not. So I got stuck in a loop again.

Turning SIP back On via refindplus, rebooting using auxiliary and booting into Catalina recovery image and then manually disabling it in terminal via csrutil disable...

This specific path is a place where I must have gone wrong by assuming refindplus SIP disable was equivalent to the recovery partition manual disable process. (Perhaps a different value than 87F should be used?.. like 7FF perhaps?)

Back in the loop. Bootblesser says I need to reset NVRAM and DeployEFI gives an error.

Removing EFI folder from EFI Partition...Resetting NVRAM via cmd-opt-P-R...Booting into recovery...disabling SIP via terminal...booting into Std Apple boot into Mojave.. Starting again...

Ran EnterRecovery and it thinks SIP is disabled
Run DeployEFI and application errors out before giving the disk picker. (Although I had it working earlier and previously successfully deployed the EFI)

Re-Ran ConfigFactory.
Run EnterRecovery. Says SIP is disabled
Run DeployEFI and application errors out before giving the disk picker.

Next attempt..
add new drive in bay 1
re-run Config Factory and keep settings except change drive name to drive in bay 1 for EFI destination
Run Enter recovery, which confirms SIP is disabled
Run DeployEFI and application errors out before giving the disk picker.

Not sure what to try next...
It seems like the tools are referring to some config information somewhere and based on that either error out or continue. e.g. for TweakEFI or deployEFI, is there something they are looking up I can check to see why it is failing now but didn't earlier? Seems like if it would just get to the disk selector, I could continue and TweakEFI should launch regardless...

I can use other methods do just drop the EFI folder onto my drive of choice and bless it and boot my system, but I don't want to bypass anything important here...
 
Last edited:

Dayo

macrumors 68020
Original poster
Dec 21, 2018
2,257
1,279
Thanks, but the guide does not explain the explicit conditions that demand where one must start, so I tried very carefully to explain everything as I've been stuck going in circles. e.g. it does not state that you must clear nvram/pram before starting the process. It also does not specify if you must boot without any OC or previous refindplus. e.g. must it be like factory with only the Apple directory on the EFI partition?
Anything that is not EXPLICITLY mentioned is not required and the items you listed fall into this category. It is impossible to write to cover every possible quirk out there. Note that the very first post in response to the guide is a moan about it being complicated.

It also does not specify if you must boot without any OC or previous refindplus. e.g. must it be like factory with only the Apple directory on the EFI partition?
I think it is a reasonable expectation that a user will disable such items that may conflict with a new setup. Basically you have UEFI applications operating in the same UEFI space that this would be working in. Could argue that this isn't mentioned though!

I don't know if that is an issue but I personally would not be starting from such a setup myself without ensuring that this would not lead to a clash. But, my focus now is on the Helper Tools and all these have no impact on their operation.

It also recommends not installing to system drive but does not state one cannot and that will cause the issues I'm having, so I'm not sure if that is the root cause or not either. (all my drives have OS systems on them)
No idea really if this is causing the issues you are having but I suspect it is related.

Is there a big undo/clear out process one must do if upgrading vs a fresh system that has never had OC or refind on it?
There is a section in the guide that deals with upgrading. Summary is: Get a new EFI folder with the ConfigFactory, sync with the previous and put back in place.

Regardless, there are two different things here and and we just need to be careful not to mix them up.
There an issue of whether the setup works and there is one of whether the Helper Tools work. I am currently purely talking about why the tools do not work as it points to something fundamental.

The only diff I can see from the docs is using an EFI on a disk that has an arbitrary OS on it, but it worked fine before. regardless of which EFI partition regardless of which disk once blessed. I can move my backup older version of my refindplus EFI folder to any drive, bless it, and it works just fine too. same with my pure OC setup.
I suppose you could manually copy the new EFI folder from the staging location in /Users/Shared to your working location.

I've looked at the docs and am not sure where I'm going off the rails causing applications not to work. (older builds of the mybootmgr utils work fine that I have backed up.) I'm assuming it's something silly and a bad assumption I'm making somewhere but not seeing...
Your selected volume is a Mojave Volume which implies APFS. In ConfigFactory, the dialogue box for setting this says to avoid APFS or RAID volumes and the other tools (TweakEFI, BootBlesser etc) exclude them as an option as they are "virtual" with potential issues if selected. How are you actually selecting this when using these tools?

I did some resetting of nvram and clearing out of my EFI partition on my first seeked drive upon boot and started to make progress. I thought I would use refindplus gui to disable SIP, which sets a value of 87F, but although Enter Recovery is OK with that value thinking sip is disabled, apparently Bootblesser or DeployEFI are not. So I got stuck in a loop again.
Did you actually get a message from DeployEFI stating it has an issue with SIP? I can't go check now but I would be very surprised if it checks SIP as all it does is copy a folder to a destination and this is not related to SIP.

Similarly, did you get one about SIP from BootBlesser? Would be strange if you did and did not with EnterRecovery as the function that does the check there was copied from BootBlesser verbatim and should give the same outcome under the same conditions.

Turning SIP back On via refindplus, rebooting using auxiliary and booting into Catalina recovery image and then manually disabling it in terminal via csrutil disable...

This specific path is a place where I must have gone wrong by assuming refindplus SIP disable was equivalent to the recovery partition manual disable process. (Perhaps a different value than 87F should be used?.. like 7FF perhaps?)
Manual disable is less open than if done with RefindPlus (0x87F if using Big Sur or 0x877 for others) and AFAIK, is not enough for Big Sur.

One question. Your selected volume is a Mojave Volume which implies APFS. In ConfigFactory, the dialogue box for this says to avoid APFS or RAID volumes and the other tools (TweakEFI, BootBlesser etc) exclude them as an option (they are virtual and potential issues if selected). How are you actually selecting this when using these tools?

Back in the loop. Bootblesser says I need to reset NVRAM and DeployEFI gives an error.
You need to take a bit of a step back and read the messages you are getting. That message has nothing to do with SIP.

It comes up when you try to use BootBlesser when booted in via OpenCore (you can't bless in such situations). Specifically, it says you should reboot outside OpenCore to use the tool. It then says to reset NVRAM IF you are sure you are booted outside OpenCore and still seeing the message.

You may be similarly missing or mixing up some other messages. Slow down and follow the stuff and actually read what you are getting.

You got that message in BootBlesser because of this bit in the guide (Only spelt out for Firm Bless - Will rectify):

Screen Shot 2020-11-09 at 01.32.54.jpg


I suggest you go back to the guide, restart from the top (delete the previous downloads you have and download the package again) and redo things without rushing it ... Tick off the steps in the guide one by one.

Don't skip anything and don't take any shortcuts even if you had done it earlier. Don't reuse settings in ConfigFactory for instance. Do it again and ensure you read and understand the messages.

Just work your way through the guide literally. Also stick to the tools from one download and don't try to mix and match.

I can use other methods do just drop the EFI folder onto my drive of choice and bless it and boot my system, but I don't want to bypass anything important here...
You can go down this route if redoing does not work for you.





On BigSur, it is in beta and stuff changes all the time. 877 was working before then 87F became a requirement and it might have since changed (I am not running it myself). You will need to find out what the current state of play is if that is no longer enough and manually amend your RefindPlus and OpenCore config files accordingly.

FFF in RefindPlus will make everything wide open as long as OpenCore is set to respect the RefindPlus setting. I have set things up to use the least wide open setting that will work and the last information I had was 87F. This may have changed as said.
 
Last edited:
  • Like
Reactions: JedNZ

johnwillsey

macrumors member
Dec 31, 2009
54
10
Thanks for the feedback.

While doing my testing, I've been running multiple OSs across different drives. I've tried fresh boot (no bootloader), boots with refindplus and with (opencore which I should not have and I got warnings when doing so). So all those bases/paths were covered. I thought I'd get there when I totally removed all old EFI folders, reset p/nvram and added a new drive.

SIP may have just been a red herring, but I thought it odd that one tool said SIP was disabled and another that is was not, hence my suspicion with SIP related to Big Sur RC1. But looking around, I was not able to find anything concrete, however lower SIP values work fine in OC booting.

I also tried fresh installs as well as upgrades and went down both paths multiple times.

What is interesting is that I've done the setup multiple times and don't recall a message about APFS or raid. maybe my combination of selected items didn't trigger that warning.....

Just rebooted. did a walkthrough again of a fresh setup and got no warnings In ConfigFactory in any dialogue box for regarding APFS or RAID volumes.

Since ALL my volumes I've been testing are APFS, this may have been another source of my issues as I was unaware it was an issue to avoid in the first place. By the way, I just double checked the guide and didn't see anything there about not using APFS. My previous refindplus install had no issues with Mojave on NVME an APFS or when I tested Catalina so I never imagined that might be impacting things.

By the way I did manually move the EFI that was created and then was able to install/boot Big Sur RC1 with the same OC tweaks I used to get BigSur to install under OC 0.63. Unfortunately, big Sur had odd issues like always thinking something had crashed during the last shut down (which had not) and also thinking the year was in the 1400s and not being able to update it. Timezone would not update over the internet either.

Sounds like I may have had two big strikes against me:
-using exclusively APFS volumes
-using Big Sure RC1 (fresh install from installer after getting boot loader going)

BTW, just switched EFI back to my OC .63 setup, reinstalled Big Sur RC1 and it has none of the odd issues.

Perhaps others might make some progress and not attempt using APFS drives as I did...

Thanks for helping run down what was likely impacting my setup I really like the approach of the chainloading and look forward to things getting worked out with Big Sur.
 

Dayo

macrumors 68020
Original poster
Dec 21, 2018
2,257
1,279
Sounds like I may have had two big strikes against me:
-using exclusively APFS volumes
-using Big Sure RC1 (fresh install from installer after getting boot loader going)

BTW, just switched EFI back to my OC .63 setup, reinstalled Big Sur RC1 and it has none of the odd issues.

Perhaps others might make some progress and not attempt using APFS drives as I did...
I am unable to make another long post but will just deal with this and some other potential bits that may misinform others following this.

There is absolutely nothing wrong with using APFS and it does not result in any issues by itself. You missed it but ConfigFactory will suggest that you do not select an APFS volume when naming a volume to ID your physical disk:

Screen Shot 2020-11-09 at 13.29.57.jpg

This is purely a procedural issue and you can select an APFS volume. The only implication is that while using the tools, it will not be fully automated (it cannot detect the EFI Partition of the physical disk the volumes sits in at this point) and you will need to tell it the EFI partition yourself each time. That's all in normal situations.

In your case, you imply things are still automated which suggests some other deeper problems with your setup. To reiterate for anyone else reading, APFS does not make the helper tools crash but each time you use many of the tools in a boot session, you will need to go to terminal to grab a disk id. If you use an HFS+ Volume, the tool will detect the EFI Partition by itself.

The other item to touch on is that there is no situation whereby one tool says SIP is disabled and another says it is not under the same conditions. This is not possible and the routine that does the check is the same everywhere. The message you referred to as saying SIP was enabled and asking to reset NVRAM is not actually SIP related:

Screen Shot 2020-11-09 at 16.53.52.jpg

Seems there perhaps needs to be a calming down in runnng this. Read the stuff that is written. Do things deliberately and don't get flustered. For instance, it has never occurred to me to click on a slide-in notification. Anyway, take your time at things, print out the guide and physically tick the items off one by one if needed.

BTW, you did not respond to my queries in the last post and it is not clear whether you actually followed (literally) what I said you should in re-running the process but no need to respond on those at this point. Just keep your things going as they are and maybe at some point, perhaps in a future release, you will figure out what's currently off.
 
Last edited:
  • Like
Reactions: JedNZ

Macschrauber

macrumors 68030
Dec 27, 2015
2,979
1,487
Germany
If one has more knowledge of the background of the whole Bootloader thing it is no issue to use APFS.

My last configuration was one single AHCI Blade with APFS Mojave and RefindPlus in the EFI Partition of the blade.

Only downside was that the tools could not auto detect EFI Partitions and asked where the EFI Partition is. (V0.63)

I had during installation other drives mounted.

But not recommended for the unexperienced, as Dayo said.
 

johnwillsey

macrumors member
Dec 31, 2009
54
10
Thanks again for replying. All calm over here, was just trying to summarize relevant info. I 'believe' I literally followed the instructions on my later attempts after your feedback when I got really careful. Had one system with the step-by-step docs as well as the target cMP system. Tried numerous installs with numerous approaches/options/OSs with different "pre-conditions" and on different drives. Obviously there is something I'm systematically doing without realizing it or something with my environment that is not happy. Perhaps from previous OC or refind drive blessings or who knows what since it is working for others.

Background wise, I've got multiple cMPs and have been at this for a very long while, so not new or unexperienced, and never had any issues with older builds or older myUtils with the new EFI. I've flashed custom video bios on multiple cards over the years and flashed multiple systems to 5,1 systems. Tried the various UEFI mods over the years and set up my systems to mutiboot OSX/Win via Bootcamp or custom firmware. That said I'm not a developer. Been tinkering with Hackintoshes for over 10 years from time to time as well out of curiosity although a cMP owner since the 1,1.

If the current build of the tools had progressed to the disk selector vs stopping with an error, I probably would have proceeded along without incident or any posts in the thread about this.

Anyways, thanks for clearing up things for other adventurers to this really slick approach to keeping the older MacPros cranking along.
 
  • Like
Reactions: Dayo

Dayo

macrumors 68020
Original poster
Dec 21, 2018
2,257
1,279
Put a RefindPlus in each EFI Partition, each with a refind.conf with a unique manual stanza that indicates which bay it is installed to.
This is what I wanted to do.
I see you might have tested this and come to the conclusion that the fourth bay has some kind of precedence but I presume you only tested it once. This is equivalent to taking a disk id from "diskutil list" as something permanent.

As you may know from diskutil, the order in which disks are sorted is variable. That variability applies here as well (basically the same thing) and while you might have gotten Bay 4 on one reboot, what it would be on the next reboot is a toss up.

The disk id order can change between reboots and the Mac Firmware will check EFI partitions following the current disk order and boot the first fallback bootloader found unless somethnig else has been designated. This is not to be confused with the search for the Mac OS bootloader which goes in a strict order in such cases. However, the search for the Mac OS bootloader only takes place if a fallback bootloader is not found as Apple follows the UEFI Spec up to that point.

To keep things short, you just need to have only one situation where there is a fallback bootloader (BOOTx64.efi) in the location indicated by the UEFI Spec ("EFI/BOOT" folder of an EFI Partition) and it will always be loaded whenever a boot target is not indicated in the NVRAM since it will be the only one found regardless of the disk order.

This is what you would get if you follow the recommended steps in the guide. As it says, don't second guess it (without knowing exactly what you are doing).

It may be that you still want to plaster every EFI partition but just make sure you know what the deal is with that.
 
Last edited:
  • Like
Reactions: JedNZ and joevt

freqrider

macrumors regular
Feb 10, 2019
213
74
This is a guide to using OpenCore and an enhanced version of rEFInd, RefindPlus, to multiboot Classic MacPros (3,1 to 5,1). It involves booting Mac OS from one or more OpenCore instances chain-loaded from RefindPlus and booting other OS types directly from RefindPlus.




The guide is focused on configuring a RefindPlus/OpenCore chain-loading arrangement and comes with a working configuration of RefindPlus and OpenCore ("MyBootMgr") that is literally "Plug and Play".

MyBootMgr is benign and can be implemented or removed without changing any fundamentals and can therefore be safely tested. Just make sure it is implemented on a physical disk that does not hold your main OS, or that only contains data, as this allows you to disconnect the disk if required and still boot into your OS. This is always preferable for boot loaders.
TL; DR
Start at STAGE 1 - PRE INSTALLATION under IMPLEMENTATION and follow the steps one after the other to implement a RefindPlus/OpenCore chain-loading arrangement.
MyBootMgr is made up of this guide and a set of Helper Tools to enable you setup and manage RefindPlus and OpenCore:




  • The BootBlesser Tool
    • This is used to bless either RefindPlus or OpenCore so that they can handle boot actions
  • The ConfigFactory Tool
    • This uses input you provide to configure RefindPlus and OpenCore
  • The DeployEFI Tool
    • This migrates RefindPlus and OpenCore from the staging folder to the target EFI Partition or USB Volume
  • The EnterRecovery Tool
    • This tool reboots your Mac into Recovery Mode for you if required
  • The FetchEFI Tool
    • This fetches your deployed EFI Folder to your staging area for you to facilitate upgrading MyBootMgr
  • The RunSwitch Tool
    • This enables switching back and forth between Release Mode, optimised for day-to-day running, and Debug Mode, optimised for trouble shooting.
  • The StartDiskReset Tool
    • This helps reset your computer to a default start disk if required
  • The TweakEFI Tool
    • This is used to mount and unmount EFI Partitions if required.
  • The UninstallMgr Tool
    • This is used to remove MyBootMgr and the boot utilities from your Mac.
  • The ValidateOC Tool
    • This is used to run some high level checks on OpenCore to help determine if it is properly activated
This guide is simply for getting a boot manager with Pre-Boot Screen support up and running. Follow the simple outlined steps without deviation and you will be good to go.

If you follow this guide step by step, word for word, implement recommended steps, avoid those not recommended, don't second guess it by implementing things not explicitly written, you will not have issues and will be able to easily restore your previous state if required.

For help on compatible GPUs, installing/configuring any supported or unsupported OS, the intricacies of configuring/running RefindPlus and/or OpenCore beyond the configuration provided and such, please refer to, and seek help from, subject specific threads such as:
* Most Importantly, READ THE GUIDE.
* If you face or anticipate any issues, READ THE GUIDE AGAIN


Even if not multi booting into different OS Types, this guide can be used to easily enable OpenCore on a Classic MacPro in a way that is useful to first timers or experienced users that want to test different OpenCore Instances.

This is achieved by first booting into RefindPlus and using this to either load OpenCore (for Mac OS) or other OS Types as while OpenCore is far more powerful and can provide such multi booting along with several other features, configuring RefindPlus is a lot easier and it is a lot more difficult to break things with RefindPlus.
  • You can easily load any operating system from RefindPlus.
  • You can easily enable or disable SIP from RefindPlus
  • You can load Legacy Windows installations (Not supported by OpenCore)
    • UEFI Windows is now the orthodox way of installing Windows but it comes with the risk of potentially damaging your cMP as it was not designed with multiboot cMP setups in mind.
    • OpenCore offers protection from this issue as long as you ensure that you never ever deliberately boot, or, inadvertently get booted (See HERE or HERE), into Windows from outside of OpenCore.
    • Legacy Windows does not have this issue and it also does not have the issue of updates taking over your boot process (Boot Coups). UPDATE: Boot Coup issue overcome by OpenCore in v0.5.9
  • You can manage multiple instances of OpenCore. For instance...
    • With Hardware Acceleration and Without (See HERE and HERE)
    • With VMM Spoofing and Without (cMP 5,1 Only)
    • OpenCore Release Version and Debug Version
    • Current OpenCore Version and Known Working Version for Recovery
    • Anything else that takes your fancy ... including a combination of the above
With this chain-loading arrangement, OpenCore would handle Mac OS booting and there can be multiple instances as mentioned. One path to Mac OS via RefindPlus should be maintained for recovery. You basically have all of the awesome power of OpenCore fully tamed by the simplicity of RefindPlus at your disposal.

This package includes one additional OpenCore instance in OC_ALT. You will need to bulld and patch further OpenCore instances (See Post #11), put into a separate OC_XZY folder and add Manual Stanzas in your /EFI/BOOT/overrides/override.conf file if you require more.
  • REQUIREMENTS
    • MacPro3,1 to MacPro5,1: You can operate DosDude patched installations alongside OpenCore and is required to run newer Mac OS versions on a MacPro3,1.
      • DosDude patching is not needed with OpenCore on MacPro5,1 (including flashed MacPro4,1) so you can overwrite your DosDude patched Mac OS installation with a vanilla version after installing RefindPlus/OpenCore if using a MacPro5,1.
    • GPU: To get the Pre-Boot Screen, your GPU must fall into one of the following categories:
      • "Fully Compatible" GPUs: These are GPUs that can load Mac OS and show the Mac Pre-Boot Screen. This capability to show the Pre-Boot Screen can be either from the factory or flashed afterwards.
      • "Semi Compatible" GPUs: These are GPUs that can load Mac OS but cannot show the Mac Pre-Boot Screen. Additionally for this category, the GPU must have "Useful GOP".
        • This "Useful GOP" requirement is where some Semi Compatible GPUs, mainly from Nvidia, fail to qualify. That is, while such GPUs may have GOP, as things currently stand for RefindPlus/OpenCore, their GOP implementations are not "Useful" in that they cannot be used by those tools to show bootpickers.
        • It is possible to to run RefindPlus/OpenCore without a Graphical Pre-Boot Screen when using Semi Compatible GPUs with "Useless GOP". Refer to the OTHER CONSIDERATIONS section for guidance on this.
  • This guide outlines things for two possible modes, "EFI" and "USB", which you decide based on your preferences.
    • EFI Mode
      • The EFI Partition is a hidden partition on your drive created when formatting the drive.
        • USB Sticks formatted as HFS+ (Mac OS Extended Journaled) also have EFI Partitions that can be used in EFI Mode.
        • Note that these can be an order of magnitude slower to show the pre-boot screen.
      • This partition is not something you create by yourself.
      • This package contains the TweakEFI Tool which allows you to mount/unmount EFI Partitions which are otherwise invisible. After mounting one, you will be able to see it in Finder.
      • You can only mount one at a time
    • USB Mode (Not Recommended)
      • "USB" as used in this guide refers to a normal disk volume which may be on a physical USB Stick or on a HD/SSD or other type of disk. This basically refers to normal folders/volumes that you can create yourself.
      • You cannot mount such with the TweakEFI Tool.
      • Use HFS+ (Mac OS Extended Journaled) Volumes for USB Mode and not APFS.
      • Note that the debug versions of both RefindPlus and OpenCore may not output debug logs in USB Mode.
  • The /EFI/BOOT folder distributed is a RefindPlus folder.
    • As a result, the BOOTx64.efi file is a RefindPlus efi file and NOT the OpenCore efi file which has the same name.
    • The RefindPlus BOOTx64.efi file is modified from the upstream rEFInd release.
  • The OpenCore.efi and bootstrap.efi files in the /EFI/OC_ALT folder are patched to allow them to run from a non-standard folder.
    • Bear in mind that as a result, the OpenCore.efi and bootstrap.efi files in the /EFI/OC_ALT folder and those in the /EFI/OC folder ARE NOT interchangeable.
    • If you would rather not use such a patched file by a third party, you can patch and build OpenCore yourself.
    • This is only really relevant if wanting to run multiple instances of OpenCore
  • Try to make sure the package is not on the same physical disk as any Operating System
    • This is because a last ditch recovery from an issue with an installed OS is to disconnect the physical disk it is installed on but you will need to maintain access to this package.
    • The opposite, where you have issues with this package and need to boot into the OS also applies.
  • Install Legacy Windows if booting Windows through RefindPlus.
    • You can find a guide to installing Windows on your Mac HERE
    • If installing UEFI Windows, make sure you ALWAYS boot Windows through OpenCore.
      • OpenCore does not support Legacy Windows but protects against the Boot ROM corruption issues with UEFI Windows. Therefore, you must make sure you never boot, or get booted ... knowingly or unknowingly, into Windows from outside OpenCore if you go with UEFI Windows.
      • You probably cannot install UEFI Windows on cMP 3,1.
        • If you are able to do so without issue, please report back.
  • OpenCanopy is not supported and is not distributed as there is no point having two graphical bootpickers.
    • You can theme RefindPlus by updating the images in the /EFI/BOOT/overrides/images folder after installation.
    • You can set the OpenCore Text Bootpicker to only show up when specifically needed and to otherwise go directly to Mac OS. You can also set it so that it shows for a short period only before going to Mac OS.
    • If you do want to duplicate things and implement OpenCanopy anyway, please direct configuration or troubleshooting queries to the main OpenCore thread.
FOR INFORMATION ONLY ... NOT RECOMMENDED
  1. Install and Use RefindPlus without OpenCore
    1. Download rEFInd from the rEFInd Website and install, following instructions provided there
    2. Once done, replace the rEFInd efi file with one from MyBootMgr (BOOTx64.efi).
      1. Ensure that you rename to match.
    3. Also replace the default rEFInd configuration file with the /Users/Shared/MyBootMgr/EFI/BOOT/refind.conf file to configure the additonal options provided.
    4. For full compatibility, copy in the icons in /Users/Shared/MyBootMgr/EFI/BOOT/overrides/images folder to the rEFInd icons folder.
    5. Skip the rest of this guide and refer to the rEFInd project for configuration/operation guidance.
  2. Install and Use OpenCore without RefindPlus
    1. Run the ConfigFactory Tool and answer the YES/NO questions as required
    2. Delete everything inside the /Users/Shared/MyBootMgr/EFI/BOOT folder
    3. Get a copy of the BOOTx64.efi file from the same version of OpenCore and copy into the /Users/Shared/MyBootMgr/EFI/BOOT folder
    4. Open /Users/Shared/MyBootMgr/EFI/OC/config.plist, search for BootProtect, set to Bootstrap and save
    5. Repeat for /Users/Shared/MyBootMgr/EFI/OC_ALT/config.plist and save
    6. Assume RefindPlus stands for OpenCore in the rest of instructions
    7. Once done, please refer to the OpenCore Thread for configuration/operation guidance
  1. Get MyBootMgr
    1. Download and mount the MyBootMgr dmg file and run MyBootMgrSetup
      1. Due to significant automation introduced as from v062, it appears the package is now too large to attach to this post ... You can download it HERE
    2. This will create a /Users/Shared/MyBootMgr folder for you
      1. If this folder is already present, it will be backed up as MyBootMgr_BAK
        1. If a MyBootMgr_BAK folder is already present in such cases, it will be overwritten
    3. Within this folder will be a MyTools folder containing the Helper Tools that make up MyBootMgr
  2. Run the ConfigFactory Tool and provide the required responses
    1. This will build and configure both RefindPlus and OpenCore to your specifications
    2. The configured files will be saved in /Users/Shared/MyBootMgr/EFI
    3. You will need to specify where you want to implement MyBootMgr
      1. Remember to avoid using a partition on the same physical disk as your startup drive, or, preferably, any OS installation. This is important if you ever need to reset things.
  1. IMPLEMENT ONLY IF ON MAC OS v10.11 (EL CAPITAN) OR NEWER:
    1. Run the EnterRecovery Tool to boot your computer into Mac Recovery Mode.
      1. The tool will inform you if SIP is already disabled in which case you can move on to the next step
    2. In the Mac Recovery Mode, run Terminal from the "Utilities" menu item and enter csrutil disable && reboot
    3. Log in as normal once rebooted.
  2. Deploy RefindPlus and OpenCore
    1. Run the DeployEFI Tool to deploy RefindPlus and OpenCore to your EFI Partition or USB Volume.
    2. The tool will offer to deploy to the location you designated with the ConfigFactory Tool.
      1. You can select another location if you have changed your mind in the interim but you really should rerun the ConfigFactory Tool and change the setting there.
    3. If you already have an EFI folder in the EFI Partition or USB Volume, it will be backed up as EFI_BAK
      1. If an EFI_BAK folder is already present in such cases, it will be overwritten
  3. Test RefindPlus
    1. Run the BootBlesser Tool, select RefindPlus and then, Soft Bless
      1. You must be booted into Mac OS without using OpenCore to Soft Bless. That is, natively or directly through RefindPlus
      2. Remember to select EFI Mode or USB Mode to match your implementation mode. If you make a mistake and bless the wrong target or type, run the StartDiskReset Tool
    2. Reboot your machine and you should be booted into RefindPlus where you should be presented with two OpenCore Instances, your Mac installations and any other OS you have installed.
      1. If running a Semi Compatible GPU with "Invalid GOP" and thus without a bootscreen, refer to the OTHER CONSIDERATIONS section for guidance on running RefindPlus under such conditions.
    3. In the unlikely event of a failure to load, just reboot and you will be in your normal boot mode since only soft blessed and you can go back to fix things.
  4. Test OpenCore
    1. Boot into Mac OS using one of the OpenCore instances provided in RefindPlus and run the ValidateOC Tool to get output to help determine whether OpenCore is loaded properly.
      1. If running a Semi Compatible GPU with "Invalid GOP" and thus without a bootscreen, refer to the OTHER CONSIDERATIONS section for guidance on running OpenCore under such conditions.
    2. In the unlikely case of a failure to load OpenCore, just reboot and you will be in your normal boot mode since only soft blessed and you can go back to fix things
    3. If you have somehow messed things up, shut down, disconnect the physical disk, reset nvram and select a start disk once booted
  5. Observe and Verify Installation
    1. Do a few reboots after soft blessing each time to make sure all is working as expected.
      1. You may want to keep in this state for a couple of days
  6. Finalise Installation (When satisfied everything is working as it should)
    1. Run the RunSwitch Tool to switch the Run Mode from Debug to Release Mode
    2. Run the BootBlesser Tool and Firm Bless RefindPlus.
      1. You must be booted into Mac OS without using OpenCore to Firm Bless. That is, natively or directly through RefindPlus​
    3. Reboot into Mac OS using an OpenCore Instance
    4. Select your Startup Disk in System Preferences and reboot using the "restart" option
  1. You can manually amend the configuration files produced by the ConfigFactory Tool if required but most typical options are already covered by the tool. You can always rerun the tool and redeploy MyBootMgr if required.
    1. Use the TweakEFI Tool to mount your EFI (EFI Mode Only) if you want to manually amend the configuration files. You can obviously directly edit such if in USB Mode.
    2. IMPORTANT: Make sure the OpenCore BootProtect config key is kept at None.
      1. This setting, to protect OpenCore against Boot Coups, where another boot process takes over the configured/expected boot setup, is not applicable in this chain-loading environment as MyBootMgr involves what would appear to an OpenCore installation with this flag set, to be a Boot Coup by RefindPlus.
      2. If you do experience a Boot Coup against RefindPlus by Linux or UEFI Windows (Not an issue with Legacy Windows, which, like Mac OS, does not attempt Boot Coups), refer to the OTHER CONSIDERATIONS section of this guide for suggestions on reasserting control.
  2. OPTIONAL: Getting disks connected to PCIe slots to show as internal disks
    1. Quick and Easy Option 1
      1. Open your installed /EFI/OC/config.plist file
        1. Search for Innie
        2. Set <key>Enabled</key> to <true/> and save.
      2. Repeat in your installed /EFI/OC_ALT/config.plist file
    2. Quick and Easy Option 2 (Try if Option 1 Fails ... Disable Innie first)
      1. Open your installed /EFI/OC/config.plist file
        1. Search for AHCI_3rdParty_SATA.kext
        2. Set <key>Enabled</key> to <true/> and save.
      2. Repeat in your installed /EFI/OC_ALT/config.plist file
    3. Not as Quick and Easy but Guaranteed to Work Option (Disable other options)
      1. Install Hackintool
      2. Go to the PCIe tab in Hackintool
      3. Click on the heading of the Subclass column so that the data is sorted by subclass
      4. Look for SATA Controller entries
      5. Right click on each in turn and select Copy Device Path
      6. Save each somewhere such as TextEdit.
        1. You will have text like PciRoot(0x0)/Pci(0x1F,0x2)
      7. Amend <key>DeviceProperties</key> (NB: The standalone top level instance and NOT the one under "ProtocolOverrides") in your installed /EFI/OC/config.plist and /EFI/OC_ALT/config.plist files as below:
XML:
<key>DeviceProperties</key>
<dict>
    <key>Add</key>
    <dict>
        <key>PciRootStuff_1</key>
        <dict>
            <key>built-in</key>
            <data>AA==</data>
        </dict>
        <key>PciRootStuff_2</key>
        <dict>
            <key>built-in</key>
            <data>AA==</data>
        </dict>

        ...

        <key>PciRootStuff_N</key>
        <dict>
            <key>built-in</key>
            <data>AA==</data>
        </dict>
    </dict>
    <key>Delete</key>
    <dict/>
</dict>
  1. How do I remove MyBootMgr?
    1. MyBootMgr will be removed on running the UninstallMgr Tool
    2. On first run, the tool will delete the deployed RefindPlus/OpenCore fileset, empty the trash and reboot your computer
    3. After this reboot, running the tool a second time will remove the staging folders such as /Users/Shared/MyBootMgr and contents including the UninstallMgr Tool itself
      1. After this, go to System Preferences, select a default boot disk and restart from System Preferences
      2. If you don't run the tool a second time, the deployed files would have been deleted but the staging folder would remain for use later if you so wish.
      3. If you run most of the other tools after the first run of the UninstallMgr Tool, the run count will be reset to zero.
  2. I am on Mac OS "ABC" ... How do I Upgrade to, or Install, Mac OS "XYZ"?
    1. Install MyBootMgr as outlined in this guide.
    2. Boot into Mac OS via an OpenCore instance with VMM Spoofing active if on a MacPro5,1 or a "flashed" MacPro4,1. Otherwise use a regular OpenCore instance.
    3. Install desired Mac OS "XYZ"
      1. If on a MacPro3,1 or an "unflashed" MacPro4,1
        1. Use a patched installation such as from DosDude1
      2. If on a MacPro5,1 or a "flashed" MacPro4,1
        1. Get a copy of the Mac OS "XYZ" installer and run it.
          1. You can get Mac OS Installers by using the installinstallmacos.py script.
          2. Run the following Terminal Command to download and run the script: mkdir -p /Users/Shared/MyBootMgr/InstallMacOS && cd /Users/Shared/MyBootMgr/InstallMacOS && curl -O -L https://raw.githubusercontent.com/munki/macadmin-scripts/main/installinstallmacos.py && sudo python installinstallmacos.py
          3. Select your desired installer to have it downloaded to your /Users/Shared/MyBootMgr/InstallMacOS folder where the script will create a dmg file contaning the installer which you can mount.
        2. Run the installer and follow prompts
    4. You may need to rerun the ConfigFactory Tool to indicate using Mac OS v11.0 (Big Sur) if required and then redeploy your EFI with the DeployEFI Tool
  3. How do I boot using MyBootMgr without a Graphical Pre-Boot Screen?
    1. In RefindPlus
      1. The Default OpenCore Instance is always mapped to Keyboard Key '1' on start and pressing this key will load this. Similarly, the Alternate OpenCore Instance is always mapped to Keyboard Key '2'. Installed operating systems are mapped to Keyboard Keys '3,4,5 ... 8,9,0'.
        1. If you have a USB Drive with a "valid OS", including Mac OS Installers and DosDude1 Patchers, this will come in at position '3' and displace the internal OS keys accordingly. Hence, when you need to boot into such, attach the USB drive, restart your machine and press Keyboard Key '3'.
        2. You may want to use Keyboard Key '3' (without USB attached) to boot into Mac OS directly from RefindPlus and access your debug log to check the keyboard mapping.
    2. In OpenCore
      1. Blind booting in OpenCore is trickier but your operating systems should be listed in alphabetical order mapped to Keyboard Keys from '1' if the HideAuxilliary key in the OpenCore Config file is set to Hide which is what MyBootMgr uses by default. You can infer what key to use accordingly.
      2. Note however that if you have the ScanPolicy key in the OpenCore Config file set to 0, this alphabetical order may include one or more 'EFI' entries.
  4. How do I update MyBootMgr?
    1. Run Steps 1 and 2 of "STAGE 1: PRE INSTALLATION" which will create a /Users/Shared/MyBootMgr folder
    2. Run the FetchEFI Tool to get your currently installed implementation of MyBootMgr
      1. The tool will create a /Users/Shared/MyBootMgrOld folder for you
      2. If this folder is already present, it will be backed up as MyBootMgrOld_BAK
        1. If a MyBootMgrOld_BAK folder is already present, it will be overwritten
      3. Within this folder will be a subfolder containing your currently installed EFI folder
    3. Bring in any Drivers/Kexts you have added to MyBootMgrOld outside the ConfigFactory Tool to /Users/Shared/MyBootMgr
    4. Use FileMerge (Type name into Spotlight to find) to compare your MyBootMgrOld/OC/config.plist file with the newly distributed one in MyBootMgr/OC/config.plist and update the new one with key items from your old one if you have made changes outside of the ConfigFactory Tool.
      1. Repeat for your OC_ALT folder.
        1. Only if not preserving OC_ALT as a known working instance.
        2. In such cases, overwrite the MyBootMgr/EFI/OC_ALT folder with your MyBootMgrOld/EFI/OC_ALT folder instead
      2. Carry out equivalent for any other OC_XYZ folders you may have.
    5. Run the DeployEFI Tool to deploy RefindPlus and OpenCore to your designated EFI Partition or USB Volume and reboot.
      1. The tool only deploys the MyBootMgr/EFI/OC, MyBootMgr/EFI/OC_ALT and MyBootMgr/EFI/BOOT folders and their contents. You will need to manually deploy any additional folders you may have.
      2. You don't need to bless again if already on a Firm Blessed implementation
    6. When satisfied everything is working as it should, run the RunSwitch Tool to switch from Debug to Release Mode
  5. How do I update RefindPlus?
    1. You really should never update the distributed version of RefindPlus.
      1. It has been patched to allow RefindPlus boot screen on all cMP Models
    2. You can however upgrade to a rEFInd version from the that project if running an Fully Compatible GPU
  6. How do I update OpenCore?
    1. Typically, you need to update the following files as a minimum with OpenCore:
      1. EFI/BOOT/BOOTx64.efi
      2. EFI/OC/OpenCore.efi
      3. EFI/OC/Bootstrap/Bootstrap.efi
      4. EFI/OC/Drivers/OpenRuntime.efi
    2. However, as we have swapped BOOTx64.efi for a RefindPlus file, you should only update the other three.
    3. Apart from that, update config as needed
    4. You may also want to refer to THIS GUIDE
      1. Remember that BOOTx64.efi is modified in our implementation
  7. I installed/updated Windows/Linux and now it only boots into Windows/Linux
    1. To recover from a Linux Boot Coup
      1. Boot into Linux and follow the instructions HERE
    2. To recover from a Windows Boot Coup (Should not happen with Legacy Windows)
      1. If you installed in EFI Mode:
        1. Go to the Command Prompt in the Start Menu, right-click it, and select Run as Administrator.
        2. Enter bcdedit /set "{bootmgr}" path \EFI\BOOT\BOOTx64.efi
        3. Enter bcdedit /set "{bootmgr}" description "RefindPlus Boot Manager"
        4. Reboot and it will boot into RefindPlus
          1. Note that each time you use this, it will creeate a new Windows Boot Entry
          2. No real harm done but you can use EasyUEFI to keep things tidy by moving an exisitng boot entry up the boot order.
      2. If you installed in USB Mode (NOT TESTED):
        1. Shut your computer down
        2. Disconnect the physical disk Windows is installed on
        3. Reboot and Hard Reset NVRAM (Hold the OPT + CMD + P + R keys down until the fourth chime)
          1. You may be booted into recovery mode. If so ...
            1. Click on the arrow to move to the next screen
            2. The Apple Icon should appear on the top left of the menu of the next screen
            3. Don't select any of the options in themain window
            4. Click on the icon and select Startup Disk from available options
            5. Select a Mac OS volume and restart (Keep Windows Disk Disconnected)
        4. You should be booted into Mac OS on restart
          1. Use the BootBlesser App to Firm Bless your RefindPlus installation in the "USB" volume and reboot (Keep Windows Disk Disconnected)
        5. You should be booted into RefindPlus on restart
          1. Load Mac OS through OpenCore or directly from RefindPlus
        6. Select a startup disk in system prefs
        7. Shut down, reconnect Windows Disk and restart
        8. You should now always be booted into RefindPlus again
  8. The RefindPlus boot screen flashes on and off a few times on boot
    1. No idea why this happens but just wait until it settles.
    2. Alternatively, power down using the power button, disconnect the power cable, wait for 15 Seconds, reconnect it, wait for 5 seconds, restart and immediately hold down the "Option", "Command", "P" and "R" keys until you hear the boot chime twice. Release the keys and log in as normal.
      1. Disable SIP by toggling the shield Icon in RefindPlus if required as it would have been re-enabled by this process.
  • MyBootMgr-063:
    • OpenCore
      • Updated to v0.6.3
      • Updated Lilu to v1.4.9
      • Updated Whatevergreen to v1.4.4
    • RefindPlus
      • Updated to v0.12.0.L
  • MyBootMgr-057:
    • Initial version based on OpenCore v0.5.7
    • Incoporates HWAccel from @h9826790 (See HERE)
  • MyBootMgr-057a:
    • Updated RadeonBoost to v1.2.
  • MyBootMgr-057b:
    • Combined DriveLabel_Refind.scpt and DriveLabel_OpenCore.scpt into single DriveLabel.scpt file.
    • Updated OpenCore Icon in Refind.
  • MyBootMgr-057c:
    • Changed distributed config files to explicitly switch off VMM and eliminate one step in instructions
    • Fixed property label in distributed DefaultVolume.scpt file
  • MyBootMgr-057d:
    • Changed OpenCore ScanPolicy setting to 0 so as not to throw users without APFS off
    • Amended Refind config to show Legacy Windows
    • Added AHCI_3rdParty_SATA.kext to simplify making external SATA/PCIe drives internal on cMP3,1
    • Updated RadeonBoost to v1.3
  • MyBootMgr-057e:
    • Removed RadeonBoost
    • Fixed issue that meant the OpenCore instance in the /EFI/OC_ALT folder used the config file in the /EFI/OC folder. (I.E., both instances were the same)
  • MyBootMgr-058:
    • Updated for OpenCore v0.5.8
    • Updated Lilu to v1.4.4
    • Updated Whatevergreen to v1.3.9
    • Updated distributed BootBlesser App to v2.0 for compatibility with new Bootstrap efi
      • Breaks compatibility with OpenCore v0.5.7 and earlier
    • Updated distributed EFI_Util App to v1.1 for consistency with BootBlesser App
      • Maintains compatibility with older versions of OpenCore
    • Changed folder name for helper apps to myUtils to avoid confusion with OpenCore's Utilities folder
    • Added OpenCore's Docs folder
    • Changed OC_Alt folder name to OC_ALT for consistent all uppercase format in OpenCore EFI
    • Renamed default OpenCore instance in Refind to OpenCore as opposed to OpenCore Accel and the second OpenCore instance in Refind to OpenCore ALT as opposed to OpenCore Basic
      • This is to reflect that users may choose to vary installations on other parameters and not just acceleration
    • Added debug versions of OpenCore.efi for both OC and OC_ALT
    • Removed gxutil
  • MyBootMgr-058a:
    • Fixed invalid HaltLevel value
      • Incorrectly amended from v0.5.7 value
    • Added missing ResetSystem.efi file
    • Updated icons
  • MyBootMgr-059:
    • Updated OpenCore to v0.5.9
      • Fixed ConsoleAttributes key
      • Added CrScreenshotDxe.efi
    • Updated Lilu to v1.4.5
    • Updated Whatevergreen to v1.4.0
    • Updated Refind to v0.12.0
      • Updated config file
      • Updated icons
      • Updated banner
      • Optimised image sizes
  • MyBootMgr-059a:
    • Updated Refind to v0.12.0.B
      • Extends bootscreen provision to cMP 5.1 Firmware (No longer limited to cMP 3,1)
        • Requires GPU with valid GOP
    • Updated BootBlesser to v1.2
      • v1.1 did not correctly detect volume specified in DiskLabel.scpt
  • MyBootMgr-060:
    • Updated OpenCore to v0.6.0
    • Updated Lilu to v1.4.6
    • Updated Whatevergreen to v1.4.1
    • Updated NVMeFix to v1.0.3
    • Updated Refind to v0.12.0.C
      • Implements ProvideConsoleGOP from OpenCore
        • This allows Pre-Boot Configuration Screens (Boot Screen) on units with broken GOP Implementation (such as the cMP 5,1) when running Semi Compatible GPUs such as the RX580
        • Units such as the cMP 3,1 running Semi Compatible GPUs can still display Boot Screens as before
      • Implements UGAPassThrough from OpenCore
        • This allows Boot Screen on Operating Systems such as Mac OS v10.4 (Tiger) that use old EFIBoot processes
      • Implements BuiltinText Renderer from OpenCore
        • This fixes Text Mode on units with broken text display implementations such as Classic MacPros
        • This allows running EFI Shell on such units
      • Includes all Mac OS SIP Values for CSR Rotation (Thanks @startergo)
        • This implements the actual Mac OS default value of 877 in place of the previously defined value of 77
        • This allows disabling SIP on, and booting with caveats, pre-release versions of Mac OS v11.0 (Big Sur)
      • Expands Debug Logging
      • Improves Boot Speed
  • MyBootMgr-060a:
    • Updates Refind to v0.12.0.E
      • Fixes GOP Selection Bug from v0.12.0.D
      • Fixes Debug Output Issues from v0.12.0.C
      • Expands Debug Log Coverage
      • Adds "text_renderer" as Configuration Option
        • This allows switching the TextRenderer Feature, Introduced in v0.12.0.C, "ON" or "OFF" in the configuration file. Default is "ON"
      • Adds "uga_pass_through" as Configuration Option
        • This allows switching the UGAPassThrough" Feature, Introduced in v0.12.0.C, "ON" or "OFF" in the configuration file. Default is "ON"
      • Adds "provide_console_gop" as Configuration Option
        • This allows switching the ProvideConsoleGOP" Feature, Introduced in v0.12.0.C, "ON" or "OFF" in the configuration file. Default is "ON"
      • Optimises libeg/screen.c by removing redundant wrapper calls from libeg/screen.c
        • Various function calls were previously routed through a wrapper but can be called directly instead to save on processing cycles
      • Broadens the scope of the search for available Graphics Protocols
        • This reduces the likelihood of false negatives when locating GOP, UGADraw and ConsoleControl.
    • Updates Distributed OpenCore Config
      • Fixes "ThirdPartyDrives" Key (Reset to TRUE ... Thanks @osxfr33k)
      • Fixes "ProvideConsoleGop" key (Reset to TRUE)
      • Fixes "ReplaceTabWithSpace" key (Reset to TRUE)
    • Updates Distributed Refind Config
      • Fixes "csr_values" Token (Reset to 10 and 877)
  • MyBootMgr-060b:
    • Updates Refind to v0.12.0.F
      • Misc Performance Optimisation
      • Expands Debug Logging Coverage
      • Implements Direct GOP Renderer from OpenCore
      • Forces Graphics Mode when booting via efi (e.g OpenCore) to eliminate flash of black screen
      • Changes Default 'text_renderer' Status to FALSE
      • Forces 'text_renderer' Configuration Setting to 'True' on Switch To Text
      • Adds EDK "Full" EFI Shell to default distribution
      • Permits Running EFI Shell from 'BOOT/tools_x64' folder
      • Permits Running Memtest from standard locations
      • Permits using 'Memtest.efi' filename in addition to existing 'Memtest86.efi'
      • Removes duplicate 'text_renderer' token from chain-loader config file (Thanks @osxfr33k)
      • Changes screen mode to text when an invalid mode is detected (Mode is not text and is not graphics) .
    • Updates Distributed OpenCore Config
      • Reinstated "agdpmod=pikera" to boot arguments for GPU Acceleration Config (Thanks @osxfr33k)
        • May benefit some non-Navi GPUs and does not appear to be detrimental to others.
  • MyBootMgr-060c:
    • Updates Refind to v0.12.0.G
      • Fixes Bug that Removed UGA Support and Disabled Refind Bootscreen on Legacy GPUs
        • This bug appeared in v0.12.0.B (MyBootMgr v059a)
      • Implements BootKicker Feature from OpenCore
        • This allows loading the Apple Boot Screen directly from Refind which may be useful in getting the environment for full EFI Shell support.
        • Requires GOP Capable Fully Compatible GPUs (Fully Compatible GPUs released post 2014)
      • Implements Clean NVRAM Feature from OpenCore
        • Allows resetting the NVRAM Directly from Refind
      • Improves Direct GOP Renderer Implementation
      • Changes distributed Shell EFI to OpenCore's "OpenShell" implementation
      • Expands and Improves Debug Logging
  • MyBootMgr-061:
    • Updated OpenCore to v0.6.1
      • Removed misc unused drivers such as OpenCanopy as the text bootpicker, or better still, no bootpicker, is preferred in OpenCore with this setup since RefindPlus already provides a graphical bootpicker.
    • Updated Lilu to v1.4.7
    • Updated Whatevergreen to v1.4.2
    • Updated Refind to v0.12.0.H
      • Rebrands 'Refind-GOPFix' as 'RefindPlus'
        • This is to reflect wider scope of interventions beyond fixing GOP Screens
      • Restores on-screen notices on Apple Firmware
        • This fixes a long standing rEFInd bug that meant most on-screen notices could not be displayed on Macs
      • Implements "ContinueOnWarning" config option
        • This allows users to set RefindPlus to automatically proceed after waiting for a while on screen notices
      • Fixes UGAPassThrough Feature
        • The UGAPassThrough feature was sometimes not activated
      • Handles Invalid GOP Instances
        • Validates GOP Instances before providing console GOP
      • Optimises Device Handle Connection
        • Improve connection reliability as well as boot speed
      • Switched initial installed file to "Debug" Version.
        • To be changed by user to "Release" Version when Firm Blessing
      • Misc Optimisation
        • Removes more redundant wrapper calls
        • Improves logging scope and presentation
        • General look and feel improvements
        • Misc coding intervention
    • Updated BootBlesser to v2.1
      • Previous versions searched an invalid path for boot files on USB Volumes and could not bless such.
  • MyBootMgr-062:
    • General
      • Largely automates installation and configuration of RefindPlus and OpenCore
    • OpenCore
      • Updated to v0.6.2
      • Updated Lilu to v1.4.8
      • Updated Whatevergreen to v1.4.3
      • Updated NVMeFix to v1.0.4
      • Reintroduces RadeonBoost as Optional Kext
    • RefindPlus
      • Updated to v0.12.0.J
      • Fixes on-screen notices
      • Debug log improvements
        • Optimises Bootlog routines
        • Provides different log files per login and no longer places all logs in one file
        • Itemises found bootloaders
        • Discards superfluous log items
        • Logs screensaver
        • Logs details of found Bootloaders
      • Optimises device connection routines
      • Increases Keyboard Shortcut Keys to cover 10 Bootloaders
      • Enhances screensaver function
      • Improves Direct GOP Renderer Implementation
      • General Stability Fixes
    • MyTools
      • BootBlesser: Updated to v3.0
      • ConfigFactory: New Tool (v1.0)
      • DeployEFI: New Tool (v1.0)
      • EnterRecovery: New Tool (v1.0)
      • RunSwitch: New Tool (v1.0)
      • StartDiskReset: New Tool (v1.0)
        • Replaces ResetStartDisk (Retired)
      • TweakEFI: New Tool (v1.0)
        • Replaces EFI_Util (Retired)
      • UninstallMgr: New Tool (v1.0)
      • VerifyOC: New Tool (v1.0)
  • MyBootMgr-062a:
    • General
      • Fixes Setting Automation Bugs
      • Refer to v062 Release Log for Featureset
  • MyBootMgr-062b:
    • General
      • Disables the option for OpenCore to respect SIP settings from RefindPlus which, if activated, caused OpenCore to fail to load.
        • Recommended to update to this version if running v062 or v062a.
        • You can accept the option to reuse saved settings from those versions if offered when running v062b
  • MyBootMgr-062c:
    • General
      • Misc Improvements
  • MyBootMgr-062d:
    • General
      • Further Enhancement
  • MyBootMgr-062e:
    • General
      • Finetuned and Enhanced
  • MyBootMgr-062f:
    • General
      • Accomodates situations where only one disk and/or Mac OS instance is present when running the ConfigFactory Tool
How do I turn off logging on your latest package 0.6.3?
 

Dayo

macrumors 68020
Original poster
Dec 21, 2018
2,257
1,279
If you follow the guide under upgrading, the logging will switched off when you are done.
HINT: If you can't be bothered to read this or it's too much trouble, just look at the provided tools.
 

freqrider

macrumors regular
Feb 10, 2019
213
74
YourOC.tool script did not work for me.
 

Attachments

  • Screen Shot 2020-11-11 at 6.38.44 PM.png
    Screen Shot 2020-11-11 at 6.38.44 PM.png
    134.6 KB · Views: 153

freqrider

macrumors regular
Feb 10, 2019
213
74
If you follow the guide under upgrading, the logging will switched off when you are done.
HINT: If you can't be bothered to read this or it's too much trouble, just look at the provided tools.
Ok, the Switch tool did it for me. Thanks :)
 

Dayo

macrumors 68020
Original poster
Dec 21, 2018
2,257
1,279
@Dayo why don't you provide an option to deploy the latest committed versions of OC and RefindPlus?
Perhaps because the one person that might use it is probably able to implement 100 instances manually in the time it would take to put it together? ;)
 

Dayo

macrumors 68020
Original poster
Dec 21, 2018
2,257
1,279
I have no idea how these apps corrupted my bootrom but I think it's been done.
Try to ensure you know the meanings of terms you use as neither OpenCore nor RefindPlus have anything to do with BootROMs.

To reset things manually:
  1. Shut your computer down
  2. Connect a GPU that can boot into Mac OS natively
  3. Disconnect the physical disk RefindPlus/OpenCore is installed on
    1. Presumes you did not install on the same disk as your Mac OS as was advised in the guide​
  4. Restart and Hard Reset NVRAM (Hold the OPT + CMD + P + R keys down until the fourth chime)
    1. You may be booted into recovery mode. If so ...
      1. Click on the arrow to move to the next screen
      2. The Apple Icon should appear on the top left of the menu of the next screen
      3. Click on the Apple Icon and select Startup Disk from the available options
        1. Don't select any of the options in the main window​
      4. Select a Mac OS volume and restart
  5. You should be booted into Mac OS on restart
    1. Go into System Preferences
    2. Select a Mac OS Volume and restart from System Preferences
  6. You should be booted into Mac OS on restart
    1. Shut your computer down from the log in screen (No need to log in)
    2. Reconnect the disk from Step 3
    3. Restart your computer
  7. You should be booted into Mac OS on restart
    1. Login to Mac OS and mount the EFI partition on the reconnected disk
    2. Delete RefindPlus and OpenCore
 
Last edited:
  • Like
Reactions: Dewdman42 and JedNZ

Dewdman42

macrumors 6502a
Jul 25, 2008
513
103
Dayo this is an excellent project! I have a couple questions before I try to deploy it.

In any case, my main questions are related to how I should organize my various volumes the best way and some questions about the resulting config.plist that ConfigFactory generated just now.

So first about which volume to install this on. I gather that I will be using EFI mode. I have two SSD's installed on the computer, both were setup as APFS drives, one to install Mojave the old fashioned Apple way, and the second I setup with Catalina using CDF's guide on that other thread. Now I am going to bring rEFInd into it..

Questions
  1. So first question, should I do the initial setup, including the bless, while booted natively into my original Mojave, in other words not by using OC Boot Picker to get there. I should disable OC, following cdf's guide disabling it...and make sure I'm cleanly booted into Mojave without OC...and then proceed with the instructions here to install rEFInd. Yes?
  2. Where do you feel is the ideal place to install rEFInd in EFI mode, on which disk, such that I will easily be able to pull a drive and get back to reality if I have to, or whatever? I think probably it will be the same as cdf's guide in that I should install it onto the EFI partition of the drive where Catalina is currently installed, and leave the Mojave drive pristine pure Apple boot. That would become my fallback drive, so worst case I can pull the Catalina drive out and boot up the Mojave drive and get back in business, wipe off the OC, reinstall rEFInd or whatever. Am I understanding that correctly? Is there any reason or benefit to needing an entirely separate drive with no OS at all on it for the rEFInd stuff? There was some mention about that in your guide, but I didn't understand exactly why that would be the case or what exactly you meant.
  3. Related to ConfigFactory, it created a number of additional kext injections that I have not been using so far with CDF's guide from that other thread, so I was hoping you could elaborate on what they are and why I would want them. Namely: AHCI_3rdParty_SATA.kext, Innie.kext, NVMeFix.kext, RadeonBoost.kext.

    I already know what the RadeonBoost is, but when I tried that a few days ago I really didn't see any significant improvement with my RX580, so I pulled it back out. But any comments about that would be appreciated, and which question in the ConfigFactory do I need to answer appropriately to keep Boost out? I thought I answered "no" to a question about that, but maybe not, will try again later. I can always hack the EFI package after running ConfigFactory, but I would really like to try to use ConfigFactory as designed without straying if possible.

    NVMeFix.kext I'm assume is only needed if I have NVMe drives, which I don't. How can I keep that out?

    Not sure what Innie.kext is?

    I think AHCI_3rdParty_SATA.kext must be related to older legacy drives or something? I'm thinking I don't need, but please advise.
  4. If there are any other differences between this OC setup and the simple setup that CDF documented on that other thread, perhaps related to hardware acceleration or id spoofing, etc.. that I need to be aware of just to know the difference between that setup and this setup in OC..
In general I am envisioning a setup where rEFInd will give me two OC boots to Catalina through the OC alt feature, one of them with VMM on and one with it off; and then directly booting to Mojave (without OC) and later on I will install Windows Legacy, which I assume would boot without OC also. And later on I will try to also install BigSur at least initially as a separate bootable volume in order to test it out...but I'm not sure how I would create additional OC instances for BigSur, and whether I would need to have a dedicated physical drive for it, or it could be installed on other APFS volumes of the same device where Catalina is? I'm presuming that when I get ready to install legacy windows, it will need its own dedicated physical device?
 
Last edited:

JedNZ

macrumors 6502a
Dec 6, 2015
647
247
Deep South
Without stepping on Dayo's toes:

2. RefindPlus EFI location: recommended it doesn't contain a bootable macOS system. You can use another non-bootable data drive or a Time Machine drive in one of the SATA bays (maybe even a HDD or SSD in an Optical drive bay too). If you use software that supports scratch drives (e.g. Adobe Photoshop etc) then that might be a good reason to have a non-bootable data drive attached, in which case you could use it as your EFI drive.

3. Innie allows your PCIe drives to be seen as internal. More info here. As for NVMeFix.kext - I assume if you answer "No" to the question in ConfigFactory it won't include the kext, likewise for RadeonBoost. And I believe AHCI_3rdParty_SATA.kext is for third party SATA PCIe adapters.

4. RefindPlus installs two instances of OpenCore - one is titled OC, the other OC_ALT. The differences between the two are what you chose during ConfigFactory setup, plus OC_ALT has VMM turned on so is ideal for installing Catalina or doing Catalina OTA updates. But the beauty of RefindPlus is that you can manually config additional OC version (e.g. OC_BS maybe for BigSur) etc. Dayo confirmed in the OpenCore thread
Having said all that, you may want to wait about two weeks for OpenCore 0.6.4 as there are gaps in OpenCore 0.6.3 relating to BigSur (the protection in OpenCore against undesirable firmware updates does not work in v0.6.3). MyBootMgr 064 will come with OpenCore 0.6.4 and have BigSur setup items but if you can't wait for OpenCore 0.6.4, you can build a copy from the code on GitHub and use the suggested Config file.[quote/] So maybe wait for the next version if you're thinking of installing BigSur, unless you like to dabble and experiment.

You need to use an EFI install of Windows with OC - legacy won't work. RefindPlus supports legacy install of Windows.
 

Dayo

macrumors 68020
Original poster
Dec 21, 2018
2,257
1,279
Without stepping on Dayo's toes:
Only thing to add to your anwser is that just because a kext is there does not mean it is active. Follow the guide, use the ConfigFactory and other tools as specified and everything is taken care of.
 
  • Like
Reactions: JedNZ

Dewdman42

macrumors 6502a
Jul 25, 2008
513
103
Good info thanks. I’m gonna give this a go today.

One more question about the EFI partition, I do have another hdd that is a scratch drive with several partitions including time machine and other data partitions. So if I wanted to use that for the EFI, how do I go about creating a “proper” EFI partition for that purpose?

I’m thinking I should make it a little bigger then normal if possible in order to accommodate more OC instances in the future.

Once I do that, am I correct to assume that I could then theoretically remove the EFI partition from my catalina drive since it can’t boot natively anyway? And it’s recovery partition?

With this approach does it then become ok to have multiple apfs volumes with different bootable installs of OS X sharing one physical device ( but the EFI partition over on my scratch drive ), mojave still on its own drive with its own EFI and windows on its own drive with its own EFI?

I’m guessing maybe apple could still decide to have a problem if the EFI is missing on the OS X drive during install or update. And if it is there, with say both catalina and Big Sur installed on the same drive (different volumes), I suppose there could be apple junk that tries to look in there and might get confused, even though the boot up happened using my scratch drive EFI, but I don’t know. Just wondering. I’d rather not have to buy another physical drive for testing out Big Sur and whatever comes after that
 

joevt

macrumors 604
Jun 21, 2012
6,963
4,257
Good info thanks. I’m gonna give this a go today.

One more question about the EFI partition, I do have another hdd that is a scratch drive with several partitions including time machine and other data partitions. So if I wanted to use that for the EFI, how do I go about creating a “proper” EFI partition for that purpose?

I’m thinking I should make it a little bigger then normal if possible in order to accommodate more OC instances in the future.

Once I do that, am I correct to assume that I could then theoretically remove the EFI partition from my catalina drive since it can’t boot natively anyway? And it’s recovery partition?

With this approach does it then become ok to have multiple apfs volumes with different bootable installs of OS X sharing one physical device ( but the EFI partition over on my scratch drive ), mojave still on its own drive with its own EFI and windows on its own drive with its own EFI?

I’m guessing maybe apple could still decide to have a problem if the EFI is missing on the OS X drive during install or update. And if it is there, with say both catalina and Big Sur installed on the same drive (different volumes), I suppose there could be apple junk that tries to look in there and might get confused, even though the boot up happened using my scratch drive EFI, but I don’t know. Just wondering. I’d rather not have to buy another physical drive for testing out Big Sur and whatever comes after that
Every GPT formatted disk already has a EFI partition so you should need to create one.
200 MB for an EFI partition is plenty big enough for multiple booters.
Do not remove EFI partitions.
A disk can have multiple APFS partitions containing macOS installations of various versions.
A recovery partition takes very little space - no reason to delete it.
No reason why you can't create a separate FAT partition and put booters in there. HFS+ is also fine (but then logs and screenshots from EFI apps will need to be saved elsewhere - some of them will automatically save to the first EFI/FAT partition they find but maybe some of them will not).
 

Dewdman42

macrumors 6502a
Jul 25, 2008
513
103
A disk can have multiple APFS partitions containing macOS installations of various versions.

I know that is normally the case without OC, I just wanted to make sure there is no issue with that when using rEFInd and/or OpenCore.
 

Dewdman42

macrumors 6502a
Jul 25, 2008
513
103
Alright, I used the tools, its up and running. Good stuff. Massive kudos to Dayo for creating these AppleScript tools and figuring out all the things that need to be asked and configured appropriately. These tools not only enable rEFInd but also really help to make sure OC is setup properly!

A couple questions came up while going through the process...

  1. Since I am using an EFI partition that is on an HDD rather then SSD, should I have any concerns about performance, or is most everything in there pretty much loaded into memory that matters, or perhaps even irrelevant while running OSX/Windows?

  2. What is the difference between Soft-Bless and Firm-bless in this procedure?

  3. The last installation step in Dayo's guide is to go to System Preferences Startup Disk and select the "startup disk" then reboot. It wasn't clear to me which disk he meant by that..or why we need to do this step? I actually only have the option to select my Catalina Disk (the Mojave one doesn't appear), or another backup partition I have out there is also showing. But anyway, I just want to understand the purpose and ramifications of this last step.

  4. Now that I have switched over from CDF's OC guide, to this much better way using rEFInd, my Mojave boot volume (in drive bay 1) is now showing up as the first default boot loader in the OC BootPicker. I guess that is because before with CDF's guide I had the Catalina disk blessed so it was showing up as the first default bootloaderin BootPicker, but now that I have the HDD with EFI blessed, so its showing the volumes in the order they appear in my drive bays or something like that.

    That's all fine, but I definitely don't want that volume to be the default in OC Boot Picker...I want it to be Catalina, hopefully while still leaving Mojave in drive bay 1 as my last ditch fallback. I don't know if I'm making sense here, but just looking for advice how to set it up so that OC will by default boot to the Catalina drive..and then I will change the OC config to not even wait for me, but to always just boot to that default volume. just not sure how to make sure its the Catalina one that will be the default and not the Mojave one.

  5. Secondly, in rEFInd, I see the two OC icons, great, but also an icon for each bootable volume, which includes both my Mojave volume and Catalina Volume. What I really want is to hide the Catalina volume here...I don't want to try to boot to Catalina native...only through OC. So really I want to see two OC icons for Catalina and one Mojave native volume icon...which I presume would boot natively and directly to Mojave, while the OC ones would boot through OC to Catalina. So how can I configure rEFInd to hide that Catalina native icon?

  6. Is it possible for me to rename the OC_ALT icon to something more interesting like "Catalina Update"

  7. I'm using 4k monitor. OC BootPicker is able to handle hiDPI, which basically makes everything a little bigger, but rEFInd seems to use native 4k resolution and all the fonts are tiny. Is there any way for me to scale it or change it so that everything will be bigger, including the fonts and icons?
That's all I have for now. In a couple months I will try to add Big Sur to this setup on another APFS volume, but prior to that I will be looking into installing windows on this setup. its still not clear to me if I will have to buy another SSD in order to install Windows or if it can simply be another partition within one of these existing drives.. (legacy mode).

thanks for everyone's help so far...
 
Last edited:

joevt

macrumors 604
Jun 21, 2012
6,963
4,257
Since I am using an EFI partition that is on an HDD rather then SSD, should I have any concerns about performance, or is most everything in there pretty much loaded into memory that matters, or perhaps even irrelevant while running OSX/Windows?
I think SSD will boot faster since file I/O in EFI seems to magnify the slowness of HDD.
Using scan_delay 1 in the Refind config file slowed things down for me a lot (I have many partitions to scan) so if you can get a good scan without using scan_delay then don't use it.
Loading drivers may cause a rescan (but I think this may have been improved or will be improved?). Check the logs. In that case, you can load drivers before RefindPlus loads using the DriverOrder, Driver#### nvram variables (but then those drivers will affect everything including the Startup Manager which might be desirable for something like the apfs.efi driver which the Startup Manager can use to show APFS volumes).

What is the difference between Soft-Bless and Firm-bless in this procedure?
SoftBless is explained at:
SoftBless uses the --nextonly parameter which means only the next reboot will use the new boot option. After that the location that has previously FirmBlessed will be booted.

You can try the FirmBless command and check the result with the dumpallbootvars command from https://gist.github.com/joevt/477fe842d16095c2bfd839e2ab4794ff

The last installation step in Dayo's guide is to go to System Preferences Startup Disk and select the "startup disk" then reboot. It wasn't clear to me which disk he meant by that..or why we need to do this step? I actually only have the option to select my Catalina Disk (the Mojave one doesn't appear), or another backup partition I have out there is also showing. But anyway, I just want to understand the purpose and ramifications of this last step.
The previous step was to Firm Bless RefindPlus.
This step uses Startup Disk preferences panel to Firm Bless the macOS partition that you want to boot - but the trick here (I am totally guessing!) is that OpenCore intercepts the Firm Bless so that Refind Plus remains as the Firm Blessed boot option and the macOS that Startup Disk attempted to Firm Bless becomes a setting in OpenCore (probably some non standard EFI NVRAM variable? - I'm too lazy to check) which Open Core will boot automatically for you or at least select as the default boot option (I could be wrong - I haven't used this stuff).

Now that I have switched over from CDF's OC guide, to this much better way using rEFInd, my Mojave boot volume (in drive bay 1) is now showing up as the first default boot loader in the OC BootPicker. I guess that is because before with CDF's guide I had the Catalina disk blessed so it was showing up as the first default bootloaderin BootPicker, but now that I have the HDD with EFI blessed, so its showing the volumes in the order they appear in my drive bays or something like that.

That's all fine, but I definitely don't want that volume to be the default in OC Boot Picker...I want it to be Catalina, hopefully while still leaving Mojave in drive bay 1 as my last ditch fallback. I don't know if I'm making sense here, but just looking for advice how to set it up so that OC will by default boot to the Catalina drive..and then I will change the OC config to not even wait for me, but to always just boot to that default volume. just not sure how to make sure its the Catalina one that will be the default and not the Mojave one.
Did you select Mojave or Catalina in the last step with Startup Disk preference panel?

Secondly, in rEFInd, I see the two OC icons, great, but also an icon for each bootable volume, which includes both my Mojave volume and Catalina Volume. What I really want is to hide the Catalina volume here...I don't want to try to boot to Catalina native...only through OC. So really I want to see two OC icons for Catalina and one Mojave native volume icon...which I presume would boot natively and directly to Mojave, while the OC ones would boot through OC to Catalina. So how can I configure rEFInd to hide that Catalina native icon?
Where RefindPlus is located, there is the refind.conf file. You can read the items there and see if there's an option to hide certain partitions (maybe dont_scan_volumes). Or hide everything (scanfor manual) and use manual stanzas (menuentryexamples at end of the conf file) for the OpenCore items.

Is it possible for me to rename the OC_ALT icon to something more interesting like "Catalina Update"
Probably. You could always try replacing it with a manual stanza (described in the refind.conf file).

I'm using 4k monitor. OC BootPicker is able to handle hiDPI, which basically makes everything a little bigger, but rEFInd seems to use native 4k resolution and all the fonts are tiny. Is there any way for me to scale it or change it so that everything will be bigger, including the fonts and icons?
I thought RefindPlus had a HiDPI mode? In the debug log, it says "- HiDPI Detected ...Scale Icons Up".

That's all I have for now. In a couple months I will try to add Big Sur to this setup on another APFS volume, but prior to that I will be looking into installing windows on this setup. its still not clear to me if I will have to buy another SSD in order to install Windows or if it can simply be another partition within one of these existing drives.. (legacy mode).

thanks for everyone's help so far...
Windows should be easy to install, legacy mode. You can use iPartition.app to create a partition (Type: "Windows FAT or NTFS Data", Format it as ExFAT). Use iPartition to set that partition as "Visible in Windows" and set it as "Active". You can make up to 3 other partitions on that disk as "Visible in Windows". , Run the Windows installer, erase the new partition as NTFS and install.
 
  • Like
Reactions: Dayo
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.