- Joined
- Aug 29, 2018
- Messages
- 78
- Motherboard
- GA-Z170X-Gaming 5
- CPU
- Intel Core i7 6700K
- Graphics
- AMD Radeon Pro 580
- OS X/macOS
- 10.14.x
- Bootloader
- Clover (UEFI)
- OpenCore (UEFI)
- Mobile Phone
- iOS
If you are using APFS formatted hard disks or SSDs or NVME drives for macOS High Sierra or macOS Mojave you are probably familiar with the verbose logs that will pop up on the screen before clover loads, these are called APFS verbose logs which won't show up on a regular Mac.
There are several ways to remove those logs which includes patching the apfs.efi file from terminal and then manually adding the patched file to clover's drivers64UEFI or Drivers64 folder or using an already patched version of the apfs.efi.
Using this method requires you to extract the file from the macOS Installer manually and then adding them to the clover but since the apfs compatibility is now a part of clover installer, all you need to do is to make sure that you have the latest clover installer (which is included in our download section under the Clover Bootloader) and just make sure that you install the following files along with other parts of clover.
Just make sure that you have the most recent and most updated version of Clover. These files my not be included in the older versions of clover.
The files you need to install are located under the UEFI Drivers and called:
APFSDriverLoader.efi
AppleImageLoader.efi
APFSDriverLoader.efi:
Open source apfs.efi loader based on reverse-engineered Apple's ApfsJumpStart driver. It chain loads the apfs.efi driver that is already embedded in the APFS container from this container.
AppleImageLoader:
Secure AppleEfiFat binary driver with implementation of AppleLoadImage protocol with EfiBinary signature verification.
It provides secure loading of Apple EFI binary files into memory by pre-authenticating its signature.
For more info you can check the AppleSupportPkg on GitHub page.
If you decide to use any other methods for loading the APFS formatted volume you need to update the apfs.efi file after each major macOS update and the patches that are already discussed in the hackintosh community might not work anymore so let's keep things simple.
Credits for AppleSupportPkg:
How to extract the apfs.efi:
If you like to use the original apfs.efi for whatever reason, you need to extract the apfs.efi from one of the following paths first and the you can patch it with using the following steps:
If you already have installed macOS High Sierra or macOS Mojave open Terminal and use the following command to extract the apfs.efi
or
Just pate the command above and then drag the apfs.efi file from your desktop to the Terminal window and hit enter/return. Enter your password and hit enter/return once more and then you'll have your patched apfs.efi file ready.
it should look like this:
Please know that there won't be a new file on the desktop the patches will be applied to the same file and you can check the md5 data to compare the original and the new file just to make sure that the patches are applied.
There are several ways to remove those logs which includes patching the apfs.efi file from terminal and then manually adding the patched file to clover's drivers64UEFI or Drivers64 folder or using an already patched version of the apfs.efi.
Using this method requires you to extract the file from the macOS Installer manually and then adding them to the clover but since the apfs compatibility is now a part of clover installer, all you need to do is to make sure that you have the latest clover installer (which is included in our download section under the Clover Bootloader) and just make sure that you install the following files along with other parts of clover.
Just make sure that you have the most recent and most updated version of Clover. These files my not be included in the older versions of clover.
The files you need to install are located under the UEFI Drivers and called:
APFSDriverLoader.efi
AppleImageLoader.efi
APFSDriverLoader.efi:
Open source apfs.efi loader based on reverse-engineered Apple's ApfsJumpStart driver. It chain loads the apfs.efi driver that is already embedded in the APFS container from this container.
- Loads apfs.efi from APFS container located on the block device.
- Apfs driver verbose logging suppressed.
- Version system: connects each apfs.efi to the device from which it was retrieved.
- Embedded signature verification of chainloaded apfs.efi driver, what prevents possible implant injection.
AppleImageLoader:
Secure AppleEfiFat binary driver with implementation of AppleLoadImage protocol with EfiBinary signature verification.
It provides secure loading of Apple EFI binary files into memory by pre-authenticating its signature.
For more info you can check the AppleSupportPkg on GitHub page.
If you decide to use any other methods for loading the APFS formatted volume you need to update the apfs.efi file after each major macOS update and the patches that are already discussed in the hackintosh community might not work anymore so let's keep things simple.
Credits for AppleSupportPkg:
- cugu for awesome research according APFS structure
- CupertinoNet and Download-Fritz for Apple EFI reverse-engineering
- vit9696 for codereview and support in the development
- Chromium OS project for Rsa2048Sha256 signature verification implementation
- Brad Conte for Sha256 implementation
- savvas
How to extract the apfs.efi:
If you like to use the original apfs.efi for whatever reason, you need to extract the apfs.efi from one of the following paths first and the you can patch it with using the following steps:
If you already have installed macOS High Sierra or macOS Mojave open Terminal and use the following command to extract the apfs.efi
Code:
cp /usr/standalone/i386/apfs.efi to ~/desktop
- Right click on the Install macOS High Sierra.app and select "Show Package Contents"
- Navigate to /Install macOS High Sierra.app/Contents/SharedSupport/ and mount the BaseSystem.dmg
- Once the image is mounted navigate to /usr/standalone/i386 and copy the apfs.efi to your desktop
Code:
sudo perl -i -pe 's|\x00\x74\x07\xb8\xff\xff|\x00\x90\x90\xb8\xff\xff|sg'
it should look like this:
Code:
sudo perl -i -pe 's|\x00\x74\x07\xb8\xff\xff|\x00\x90\x90\xb8\xff\xff|sg' /Users/Cyberdevs/Desktop/apfs.efi
Please know that there won't be a new file on the desktop the patches will be applied to the same file and you can check the md5 data to compare the original and the new file just to make sure that the patches are applied.
md5 /Users/cyberdevs/Desktop/apfs.efi
MD5 (/Users/cyberdevs/Desktop/apfs.efi) = 6476a34f98587d4b2d1922f525d27048
md5 /usr/standalone/i386/apfs.efi
MD5 (/usr/standalone/i386/apfs.efi) = 0790f493a4d84a4c290537ea260e2ca3
MD5 (/Users/cyberdevs/Desktop/apfs.efi) = 6476a34f98587d4b2d1922f525d27048
md5 /usr/standalone/i386/apfs.efi
MD5 (/usr/standalone/i386/apfs.efi) = 0790f493a4d84a4c290537ea260e2ca3