Jump to content

Clover General discussion


ErmaC
30,171 posts in this topic

Recommended Posts

Hey guys,

 

I was wondering if there's a way to use "Startup Disk" in system preferences to choose the next startup disk and somehow clover manages to boot from the selected disk. Is that even possible?

 

I noticed when I change the startup disk these files change in macOS /System/Library/CoreServices/.disk_label, /System/Library/CoreServices/.disk_label_2x and some other files in /private/var/db/uuidtext

All the information used by Startup Disk is available to Clover, so it should be possible to add code to Clover and or it's scripts to do that if it doesn't already.

 

.disk_label is a graphics image of the text displayed under the disk icon in the Startup Manager UI (an EFI program on Macs that is displayed when you hold the option key at startup). .disk_label_2x is the same thing for retina displays. The bless command does some of the same things as the Startup Disk preferences panel, including creating those graphics images. The bless command affects some nvram variables. It also affects some information in the HFS header of an HFS formatted disk.

nvram -p
echo "==============================================================================="
bless --verbose --getboot
echo "==============================================================================="
bless --verbose --info
echo "==============================================================================="
ioreg -w 0 -n AppleEFINVRAM | sed -n -E "/^[ \|]+[ ]+(\".*)$/s//\1/p;"
efi-boot-device is the xml representation of the boot device. efi-boot-device-data is a binary representation (using EFI device path protocol). If this is an HFS disk, then the HFS header has the id of the boot folder and the id of the efi boot file.

 

bless --verbose will tell you which EFI boot variable that uses the efi-boot-device. GUID 8BE4DF61-93CA-11D2-AA0D-00E098032B8C is for the efi owned set of nvram variables, and Boot0080 is the name of the nvram variable in that set containing the EFI device path of the boot device. Apple owned nvram variables will use a different guid.

 

If you select a Windows disk in Startup Disk preferences panel, and it is legacy (BIOS) instead of EFI, then the efi-boot-device-data will be the path of an EFI program used for booting BootCamp (an image file in EFI). The BootCampHD nvram variable will then be the device path of the disk that should have it's MBR boot code executed by Apple's BIOS boot loader.

 

efi-boot-device-data can also be a path to an efi program like Clover.

  • Like 3
Link to comment
Share on other sites

All the information used by Startup Disk is available to Clover, so it should be possible to add code to Clover and or it's scripts to do that if it doesn't already.

 

.disk_label is a graphics image of the text displayed under the disk icon in the Startup Manager UI (an EFI program on Macs that is displayed when you hold the option key at startup). .disk_label_2x is the same thing for retina displays. The bless command does some of the same things as the Startup Disk preferences panel, including creating those graphics images. The bless command affects some nvram variables. It also affects some information in the HFS header of an HFS formatted disk.

nvram -p
echo "==============================================================================="
bless --verbose --getboot
echo "==============================================================================="
bless --verbose --info
echo "==============================================================================="
ioreg -w 0 -n AppleEFINVRAM | sed -n -E "/^[ \|]+[ ]+(\".*)$/s//\1/p;"
efi-boot-device is the xml representation of the boot device. efi-boot-device-data is a binary representation (using EFI device path protocol). If this is an HFS disk, then the HFS header has the id of the boot folder and the id of the efi boot file.

 

bless --verbose will tell you which EFI boot variable that uses the efi-boot-device. GUID 8BE4DF61-93CA-11D2-AA0D-00E098032B8C is for the efi owned set of nvram variables, and Boot0080 is the name of the nvram variable in that set containing the EFI device path of the boot device. Apple owned nvram variables will use a different guid.

 

If you select a Windows disk in Startup Disk preferences panel, and it is legacy (BIOS) instead of EFI, then the efi-boot-device-data will be the path of an EFI program used for booting BootCamp (an image file in EFI). The BootCampHD nvram variable will then be the device path of the disk that should have it's MBR boot code executed by Apple's BIOS boot loader.

 

efi-boot-device-data can also be a path to an efi program like Clover.

 

That's really a great explanation on the subject, Thanks a lot :)

Link to comment
Share on other sites

hmmm ... for some reason I can't load config.plist anymore, even with EFI mounted. I can open it in Wrangler but in CConfigurator everything is blank? I can create enteries like SMBIOS os thats working ok. Any ideas?

Link to comment
Share on other sites

Hi guys!

 

Where is Clover installed on APFS volumes? Meaning, if you have an APFS formatted drive, where will Clover put its files and folders in order to boot that system?

Clover puts the files in the root of the selected drive and you have to manually move them to the esp.

 

Sent from my SM-G930F using Tapatalk

hmmm ... for some reason I can't load config.plist anymore, even with EFI mounted. I can open it in Wrangler but in CConfigurator everything is blank? I can create enteries like SMBIOS os thats working ok. Any ideas?

Seems like a corrupt config.plist.

 

Sent from my SM-G930F using Tapatalk

Link to comment
Share on other sites

I am kind of wondering the same thing myself, should I install Clover onto my APFS partition of my main SSD drive (As I usually do when testing new releases etc)?

 

BIG thanks to fusion71au and SavageAUS for clearing up custom entries too!

  • Like 2
Link to comment
Share on other sites

I am kind of wondering the same thing myself, should I install Clover onto my APFS partition of my main SSD drive (As I usually do when testing new releases etc)?

 

BIG thanks to fusion71au and SavageAUS for clearing up custom entries too!

 

 

Well, if you have a spare SSD, I would suggest installing it there, in case things go south. I don't, so I just split my SSD in half, and installed Hi Sierra (APFS) on one side, with Sierra on the other.

Link to comment
Share on other sites

I did the same thing, made a 50GB partition on my boot drive.

 

Did you then Install Clover into High Sierra to get the control panel etc working?

 

 

To be honest, I didn't even notice there was no Clover pref pane in High Sierra until you mentioned it. :))LOL  Well, no, I didn't reinstall Clover. I totally forgot about that. But...I guess you could...?

 

So I guess it's a good thing I asked where does Clover put its files when you're installing it on APFS. :)) That's good to know. Cause now I know I have to move them manually.

 

So, is this something expected with APFS? Will we always need to move Clover from Root to EFI? Or is it just a feature that's not ready yet and will be done in future versions? I'm only curious. :)

  • Like 1
Link to comment
Share on other sites

To be honest, I didn't even notice there was no Clover pref pane in High Sierra until you mentioned it. :))LOL Well, no, I didn't reinstall Clover. I totally forgot about that. But...I guess you could...?

 

So I guess it's a good thing I asked where does Clover put its files when you're installing it on APFS. :)) That's good to know. Cause now I know I have to move them manually.

 

So, is this something expected with APFS? Will we always need to move Clover from Root to EFI? Or is it just a feature that's not ready yet and will be done in future versions? I'm only curious. :)

We can only hope that the clever devs will find a way to solve the AFPS + Clover + ESP problem.

 

Sent from my SM-G930F using Tapatalk

  • Like 1
Link to comment
Share on other sites

I cannot get past the ++++++++++++++++ right after the boot 0 and clover Gui.   Sierra 10.12.5 is pre-installed, clover in EFI for 3 legacy PCs, all LGA 775's Core2 Quads, gigabyte GA-G41, EP45-UD3P no issues booting but the Asus Maxiumus Forumla X38 chipset is the one that will not get past the ++++++++++.  I am assuming once you see the plus's the bootefi should load then the kernel correct?   So it has to be something with the bootefi.  I tried placing from the OEM folder where I keep the 3 different PCs and placed the Asus back to the root of EFI/kext and ACPI/patched and still nothing.  I have the latest clover sourceforge version 4097.  Maybe I can try a later version if anyone has already compiled one link?

 

I don't know how to collect any logs if it cannot get past BootEFI and other suggestions?

 

Thanks!

Link to comment
Share on other sites

I am kind of wondering the same thing myself, should I install Clover onto my APFS partition of my main SSD drive (As I usually do when testing new releases etc)?

 

BIG thanks to fusion71au and SavageAUS for clearing up custom entries too!

 

You have no choice but to install it on the volume you want to boot, but because APFS creates a bunch of logical volumes from one physical, the files need to be moved until the installer is updated to get the original physical volume to determine the disk's ESP. Also, awesome that I'm the one that said what to do with custom entries but didn't even get a shout out......

 

We can only hope that the clever devs will find a way to solve the AFPS + Clover + ESP problem.

 

The installer needs updated to detect APFS partitions and determine the physical volume to determine the ESP.

 

I cannot get past the ++++++++++++++++ right after the boot 0 and clover Gui.   Sierra 10.12.5 is pre-installed, clover in EFI for 3 legacy PCs, all LGA 775's Core2 Quads, gigabyte GA-G41, EP45-UD3P no issues booting but the Asus Maxiumus Forumla X38 chipset is the one that will not get past the ++++++++++.  I am assuming once you see the plus's the bootefi should load then the kernel correct?   So it has to be something with the bootefi.  I tried placing from the OEM folder where I keep the 3 different PCs and placed the Asus back to the root of EFI/kext and ACPI/patched and still nothing.  I have the latest clover sourceforge version 4097.  Maybe I can try a later version if anyone has already compiled one link?

 

I don't know how to collect any logs if it cannot get past BootEFI and other suggestions?

 

Thanks!

 

You can't boot 10.12+ with a Core2 that does not have SSE4.1. So you need a Q8200 or better, or QX9650 or better. Or you need to use legacy kernel, if it's even around for 10.12... Not sure... Anyone?

  • Like 5
Link to comment
Share on other sites

You have no choice but to install it on the volume you want to boot, but because APFS creates a bunch of logical volumes from one physical, the files need to be moved until the installer is updated to get the original physical volume to determine the disk's ESP. Also, awesome that I'm the one that said what to do with custom entries but didn't even get a shout out......

 

 

The installer needs updated to detect APFS partitions and determine the physical volume to determine the ESP.

 

 

You can't boot 10.12+ with a Core2 that does not have SSE4.1. So you need a Q8200 or better, or QX9650 or better. Or you need to use legacy kernel, if it's even around for 10.12... Not sure... Anyone?

 

 

I though it might be because of that to but I changed my PlatformSupport.plist to include support for MacPro3,1, I don't think the kernel ever loads.  I can see the Plus's start but before you see the boot64x.efi or boot.efi I don't remember, within that boot.efi is a string about the boot drive,  it never gets to that point, and it is right after that the kernel loads, I just never get to the point of seeing either one of that parts just stuck on +++++++++++.  The other two LGA 775 boards have slower quad cores and they boot perfectly fine under the modified PlatformSupport.plist so its something else!  I  will have to troubleshoot to see if its clover on this piece of hardware or not.  I will start out by booting via USB then see if an El Capitan installer will start with Clover 4097 if it does then I am guessing it may have something to do with the combination of Sierra/Clover and this Asus motherboard.

Link to comment
Share on other sites

I though it might be because of that to but I changed my PlatformSupport.plist to include support for MacPro3,1, I don't think the kernel ever loads.  I can see the Plus's start but before you see the boot64x.efi or boot.efi I don't remember, within that boot.efi is a string about the boot drive,  it never gets to that point, and it is right after that the kernel loads, I just never get to the point of seeing either one of that parts just stuck on +++++++++++.  The other two LGA 775 boards have slower quad cores and they boot perfectly fine under the modified PlatformSupport.plist so its something else!  I  will have to troubleshoot to see if its clover on this piece of hardware or not.  I will start out by booting via USB then see if an El Capitan installer will start with Clover 4097 if it does then I am guessing it may have something to do with the combination of Sierra/Clover and this Asus motherboard.

 

Well what's the debug.log have if you enable debug with Boot/Debug=true?

 

 

Sorry apianti, I guess I didn't read far enough back in the thread!

 

BIG thanks!

 

Haha, I was just being a smartass.

  • Like 2
Link to comment
Share on other sites

If anyone is interested, here are some DarwinDumps for 2017 MacBook Pros (MacBookPro14,1/14,2/14,3).

 

...and some other 2017 Macs (iMac18,3 with Radeon Pro 580 and MacBook10,1).

Thank you so much:)

 

나의 LG-F800S 의 Tapatalk에서 보냄

Link to comment
Share on other sites

Well what's the debug.log have if you enable debug with Boot/Debug=true?

 

 

 

Haha, I was just being a smartass.

 

 

I enabled all the possible debug sections in the Clover Config, this won't work because it only gets to the Clover GUI and then starts to boot with the ++++++++, but never loads this part which is before the kernel boot below which never happens so not sure if a log will generate if it cannot get past below?

 

efiboot loaded from device Acpi (PNP0A08,0)/Pci (1F12)/SATA(0,0)/HD(Part1,SigFB80A2E1-C0D7-425B-B471-F5260F9370E7)

boot file path: \System\library\CoreServices\boot.efi

................................................................................................

root device uuid is 'E216AA4C-001B-A249-30A9CEE752D3'

.................................................................................................

 

Then the kernel boots next but not on this Asus MB.  I thought possibly the SSD drive might be the problem but proved to myself that is not the case same thing happens on a flash drive or regular SATA drive.

  • Like 1
Link to comment
Share on other sites

There's no log past that point as when you get that line of plus signs, that is when the kernel is booting. Clover is gone as exit boot services was called. I meant is there anything else in the log that might give an idea of why it's not working. Are you not using a boot fix (like AptioFix)? You should just post the debug.log.

Link to comment
Share on other sites

I enabled all the possible debug sections in the Clover Config, this won't work because it only gets to the Clover GUI and then starts to boot with the ++++++++, but never loads this part which is before the kernel boot below which never happens so not sure if a log will generate if it cannot get past below?

 

efiboot loaded from device Acpi (PNP0A08,0)/Pci (1F12)/SATA(0,0)/HD(Part1,SigFB80A2E1-C0D7-425B-B471-F5260F9370E7)

boot file path: \System\library\CoreServices\boot.efi

................................................................................................

root device uuid is 'E216AA4C-001B-A249-30A9CEE752D3'

.................................................................................................

 

Then the kernel boots next but not on this Asus MB.  I thought possibly the SSD drive might be the problem but proved to myself that is not the case same thing happens on a flash drive or regular SATA drive.

If you pressed F2 in Clover GUI then /EFI/CLOVER/misc/preboot.log was created. Upload it, please!

  • Like 1
Link to comment
Share on other sites

I'm trying to build clover and get this.

make: *** No rule to make target `tbuild'.  Stop.
make: *** No rule to make target `tbuild'.  Stop.


build.py...
 : error 7000: Failed to execute command
	make tbuild [/Users/LuCy/CloverGrowerPro/edk2/Build/Clover/RELEASE_GCC49/X64/MdePkg/Library/BasePcdLibNull/BasePcdLibNull]


build.py...
 : error 7000: Failed to execute command
	make tbuild [/Users/LuCy/CloverGrowerPro/edk2/Build/Clover/RELEASE_GCC49/X64/MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull]


build.py...
 : error 7000: Failed to execute command
	make tbuild [/Users/LuCy/CloverGrowerPro/edk2/Build/Clover/RELEASE_GCC49/X64/MdePkg/Library/BaseMemoryLib/BaseMemoryLib]


build.py...
 : error 7000: Failed to execute command
	make tbuild [/Users/LuCy/CloverGrowerPro/edk2/Build/Clover/RELEASE_GCC49/X64/MdePkg/Library/BaseLib/BaseLib]


build.py...
 : error 7000: Failed to execute command
	make tbuild [/Users/LuCy/CloverGrowerPro/edk2/Build/Clover/RELEASE_GCC49/X64/MdePkg/Library/BasePrintLib/BasePrintLib]


build.py...
 : error 7000: Failed to execute command
	make tbuild [/Users/LuCy/CloverGrowerPro/edk2/Build/Clover/RELEASE_GCC49/X64/MdePkg/Library/BaseReportStatusCodeLibNull/BaseReportStatusCodeLibNull]


build.py...
 : error F002: Failed to build module
	/Users/LuCy/CloverGrowerPro/edk2/MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf [X64, GCC49, RELEASE]

- Failed -
Build end time: 17:08:39, Jul.03 2017
Build total time: 00:00:07

Cloverx64  ERROR!!


Ejecting RAM disk
"disk4" unmounted.
"disk4" ejected.
Link to comment
Share on other sites

bryan51, on 01 Jul 2017 - 6:17 PM, said:snapback.png

hmmm ... for some reason I can't load config.plist anymore, even with EFI mounted. I can open it in Wrangler but in CConfigurator everything is blank? I can create enteries like SMBIOS os thats working ok. Any ideas?

Seems like a corrupt config.plist.

 

Thats it, thanks. I had tried a previous version but it must have been corrupt too. :)

Link to comment
Share on other sites

If you pressed F2 in Clover GUI then /EFI/CLOVER/misc/preboot.log was created. Upload it, please!

 

Does not create one.   I'm guessing the kernel never starts.

Link to comment
Share on other sites

I'm trying to build clover and get this.

make: *** No rule to make target `tbuild'.  Stop.
make: *** No rule to make target `tbuild'.  Stop.


build.py...
 : error 7000: Failed to execute command
	make tbuild [/Users/LuCy/CloverGrowerPro/edk2/Build/Clover/RELEASE_GCC49/X64/MdePkg/Library/BasePcdLibNull/BasePcdLibNull]


build.py...
 : error 7000: Failed to execute command
	make tbuild [/Users/LuCy/CloverGrowerPro/edk2/Build/Clover/RELEASE_GCC49/X64/MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull]


build.py...
 : error 7000: Failed to execute command
	make tbuild [/Users/LuCy/CloverGrowerPro/edk2/Build/Clover/RELEASE_GCC49/X64/MdePkg/Library/BaseMemoryLib/BaseMemoryLib]


build.py...
 : error 7000: Failed to execute command
	make tbuild [/Users/LuCy/CloverGrowerPro/edk2/Build/Clover/RELEASE_GCC49/X64/MdePkg/Library/BaseLib/BaseLib]


build.py...
 : error 7000: Failed to execute command
	make tbuild [/Users/LuCy/CloverGrowerPro/edk2/Build/Clover/RELEASE_GCC49/X64/MdePkg/Library/BasePrintLib/BasePrintLib]


build.py...
 : error 7000: Failed to execute command
	make tbuild [/Users/LuCy/CloverGrowerPro/edk2/Build/Clover/RELEASE_GCC49/X64/MdePkg/Library/BaseReportStatusCodeLibNull/BaseReportStatusCodeLibNull]


build.py...
 : error F002: Failed to build module
	/Users/LuCy/CloverGrowerPro/edk2/MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf [X64, GCC49, RELEASE]

- Failed -
Build end time: 17:08:39, Jul.03 2017
Build total time: 00:00:07

Cloverx64  ERROR!!


Ejecting RAM disk
"disk4" unmounted.
"disk4" ejected.
Try remove clover folder or src folder.

Then try build again from clover build script.

 

I tested r4102. Build is nop

 

나의 LG-F800S 의 Tapatalk에서 보냄

  • Like 1
Link to comment
Share on other sites

×
×
  • Create New...