How to manage one clover for for HSierra and Mojave

bitmajic

New member
Joined
Feb 11, 2019
macOS
10.13.5, 10.14.2
Mobo
ASrock Fatal1ty itx-Z370
CPU
i7-8700K
GPU
Intel Integrated 630
#1
Brand new to the forum, but had the chance to build my first HACK last year.
Been running High Sierra 10.13.5 perfectly and decided to explore Mojave this weekend as well.

Is it possible (or even practical) to load both these on the same drive? As I understand I need to
have one Clover boot loader that 'might' over time have different revisions of Kexts and parameters.

Appreciate your thoughts and guidance.
 

Edhawk

Well-known member
Joined
Apr 10, 2018
macOS
10.13.6
Mobo
GA-Z97X-UD5H-BK
CPU
i7-4790K
GPU
Geforce GTX 980TI
#2
Yes it is possible and as long as your hard drive is large enough it is practical, if you don't have enough room in your system for another hard drive or SSD.

I believe if you have room and a spare drive then two separate drives are a better way to proceed. As you can jump from drive to drive if one gets corrupted or an update fails.

Your first drive would have the EFI partition containing CLOVER, you do not need to install clover on the second drive, as the primary drive is read first and the EFI folder on that drive should have the correct information for both drives to show at the Clover boot screen. You can of course have Clover installed on the second drive, with a copy of the EFI folder from the first drive as a backup or incase you remove the first drive.

Your single hard drive or SSD would need to be in APFS format as Mojave only allows installs to proceed on APFS formatted drives.

Your APFS container would need to have two 'APFS Volumes', one for High Sierra and a new Volume for Mojave. You can add a second 'Volume' to an existing APFS formatted drive in the Disk Utility app:

Screen Shot 2019-02-11 at 12.21.52.png
Shows my APFS Data drive container with a single Volume

Screen Shot 2019-02-11 at 12.22.03.png
Shows my APFS Data Volume

Screen Shot 2019-02-11 at 12.22.25.png
Shows the options available when 'Partition' is selected with the APFS container highlighted. You would need to select 'Add Volume' not add partition to create the new Volume. You would not need to specify a size for the new Volume as the APFS container shares space as needed between the Volumes created on the drive.

You could then run a Mojave installer to install the second OS on the new Volume.

Hope this helps.
 
Likes: bitmajic

bitmajic

New member
Joined
Feb 11, 2019
macOS
10.13.5, 10.14.2
Mobo
ASrock Fatal1ty itx-Z370
CPU
i7-8700K
GPU
Intel Integrated 630
#3
Yes it is possible and as long as your hard drive is large enough it is practical, if you don't have enough room in your system for another hard drive or SSD.

I believe if you have room and a spare drive then two separate drives are a better way to proceed. As you can jump from drive to drive if one gets corrupted or an update fails.

Your first drive would have the EFI partition containing CLOVER, you do not need to install clover on the second drive, as the primary drive is read first and the EFI folder on that drive should have the correct information for both drives to show at the Clover boot screen. You can of course have Clover installed on the second drive, with a copy of the EFI folder from the first drive as a backup or incase you remove the first drive.

Your single hard drive or SSD would need to be in APFS format as Mojave only allows installs to proceed on APFS formatted drives.

Your APFS container would need to have two 'APFS Volumes', one for High Sierra and a new Volume for Mojave. You can add a second 'Volume' to an existing APFS formatted drive in the Disk Utility app:

View attachment 2030
Shows my APFS Data drive container with a single Volume

View attachment 2031
Shows my APFS Data Volume

View attachment 2032
Shows the options available when 'Partition' is selected with the APFS container highlighted. You would need to select 'Add Volume' not add partition to create the new Volume. You would not need to specify a size for the new Volume as the APFS container shares space as needed between the Volumes created on the drive.

You could then run a Mojave installer to install the second OS on the new Volume.

Hope this helps.
Thank you for offering understanding and confidence. I only have one boot disk, and something odd happened to the drive. I had already created 3 HFS+ partitions with HSierra in the first. I did a Mojave upgrade but told it the target partition was the third one (instead of the HS one). It looks like the process created a APFS container in the third partition (which is confusing since I thought the whole drive would be upgraded to APFS). Just looks odd - but functions well and looks like it has accomplished what you mentioned above?

After thinking a bit further about my goals of managing Clover for both instances I'm wondering:

1) How the directory of Kexts can finally be used to target specific kexts to each OS release. If I put a ketx in 10.13 will it ONLY be loaded for High Sierra (and therefore ignored by Mojave)?

2) Is it possible to tie a specific config to a specific version? For instance now with Mojave the closet Apple model to my config is 'Mac Mini 8,1'. But if I apply that config High Sierra fails during boot (circle with slash - do-not-enter-symbol) I presume because the mini can't operate with HSierra.
 

Attachments

Edhawk

Well-known member
Joined
Apr 10, 2018
macOS
10.13.6
Mobo
GA-Z97X-UD5H-BK
CPU
i7-4790K
GPU
Geforce GTX 980TI
#4
With regards specific kexts for each OS:
Install the kexts to /Library/Extensions, you can then install the kexts you need for each version. See this post over at Tonymacx86 for an explanation on why third party kexts should always be in /Library/Extensions not EFI/CLOVER/kexts/Other - https://www.tonymacx86.com/threads/...-el-capitan-sierra-high-sierra-mojave.268964/

With regards to having more than one config.plist:
This is also possible but can be a bit wearisome at boot. You can create a second Mac mini 8.1 config.plist and save it in your /EFI/CLOVER folder, along side your normal config.plist. The second config just needs to be named something like config_mm81.plist so it is easy to identify. It will not by default be selected when you select Mojave at the Clover boot screen. Your config.plist will always be the default config used by Clover. You can however, select the Options icon on the Clover boot screen and select an alternative config for Mojave.

The Mac mini 2018 has Mojave pre-installed so it won't necessarily work with High Sierra (HS), as HS may not have all the drivers for this model. You could try the following boot argument no_compat_check, to see if that allows you to boot HS and Mojave with the Mac mini smbios.
 

bitmajic

New member
Joined
Feb 11, 2019
macOS
10.13.5, 10.14.2
Mobo
ASrock Fatal1ty itx-Z370
CPU
i7-8700K
GPU
Intel Integrated 630
#5
With regards specific kexts for each OS:
Install the kexts to /Library/Extensions, you can then install the kexts you need for each version. See this post over at Tonymacx86 for an explanation on why third party kexts should always be in /Library/Extensions not EFI/CLOVER/kexts/Other - https://www.tonymacx86.com/threads/...-el-capitan-sierra-high-sierra-mojave.268964/

With regards to having more than one config.plist:
This is also possible but can be a bit wearisome at boot. You can create a second Mac mini 8.1 config.plist and save it in your /EFI/CLOVER folder, along side your normal config.plist. The second config just needs to be named something like config_mm81.plist so it is easy to identify. It will not by default be selected when you select Mojave at the Clover boot screen. Your config.plist will always be the default config used by Clover. You can however, select the Options icon on the Clover boot screen and select an alternative config for Mojave.

The Mac mini 2018 has Mojave pre-installed so it won't necessarily work with High Sierra (HS), as HS may not have all the drivers for this model. You could try the following boot argument no_compat_check, to see if that allows you to boot HS and Mojave with the Mac mini smbios.
Those pointers are perfect. /L/E gets me closer to the goal. I always wondered about the naming of the config.plist and other variants. Do you know what effect the 10.X directories have in the boot process? will 10.13 Only be incorporated for High Sierra? Or will the entire Kexts directory be in incorporated for all booting? Or maybe even will it be incremental 10.13 will only be incorporated for 10.13 and 10.14?
Thank you for the guidance.
 

Edhawk

Well-known member
Joined
Apr 10, 2018
macOS
10.13.6
Mobo
GA-Z97X-UD5H-BK
CPU
i7-4790K
GPU
Geforce GTX 980TI
#6
I think that the numbered OS X folders in EFI/CLOVER/kexts were meant to be used the way you said. But the way I understand things is if you have kexts in more than one folder Clover will look to inject each block/set/group of kexts. The bootlog for your system will show you that Clover tried to inject the kexts from /EFI/CLOVER/kexts/10.13 and /10.14 and also /Other if there are kexts in that folder too.

It has become the norm to delete the numbered folders and only use Other for any injected kexts. It is also becoming the norm for Hacks to follow the Apple third party kext installation method, i.e. place them in /Library/Extensions (/L/E) and to only have the most essential of kexts in /EFI/CLOVER/kexts/Other, i.e. FakeSMC.kext and nothing else unless you have a laptop and need a trackpad/keyboard driver. With the Inject Kexts option in Clover config.plist set to 'Detect' not 'Yes'. That way if the kext is already in /L/E or part of the kextcache then Clover will not inject the duplicate kext.
 
Likes: bitmajic