Contribute
Register

[GUIDE] Installing 3rd Party Kexts - El Capitan, Sierra, High Sierra, Mojave, Catalina

Thank you for clarifying this issue. Finally I understand the behavior of "Inject = Detect" and will revise the Designare Z390 build guide over the weekend. Everything will go to /L/E with the exception of bare minimum extensions needed for OS updates and Recovery.
everything goes in /Library/Extensions NO exceptions! :)
 
everything goes in /Library/Extensions NO exceptions! :)
I see that I worded that sentence poorly! I meant:

Everything will go to /L/E but a bare minimum will be duplicated in /C/K/O for OS updates and recovery.
 
I see that I worded that sentence poorly! I meant:

Everything will go to /L/E but a bare minimum will be duplicated in /C/K/O for OS updates and recovery.
Fantastic! :)
 
The main reason that Clover supports injecting kexts is to load critical kexts required to run the following :-
  • MacOS Installer
  • MacOS Updater
  • MacOS Recovery
Since none of the above are full MacOS operating systems it is not possible to install the kexts we need to run them so we use Clover to inject the critical kexts we need before running them. Most users will only need FakeSMC in EFI/Clover/kexts/Other in order to run all of the above packages. Some users may need to add additional driver kexts in order to access 3rd party storage controllers or NAS based TimeMachine backups, laptop users may need to add a mouse or trackpad kext if they require mouse control when running Recovery.

Think very carefully about the kexts you actually need in EFI/Clover/kexts/Other ... you only need the absolute bare minimum to run the above packages.

Great guide as always @jaymonkey. Would you consider these kexts critical to run the MacOS Installer, Updater, or Recovery?

AppleALC.kext
IntelMausiEthernet.kext
Lilu.kext
USBInjectAll.kext (for use with SSDT-UIAC.aml in EFI/Clover/ACPI/patched)
WhateverGreen.kext

Or do these only need to be loaded to /L/E?
 
Great guide as always @jaymonkey. Would you consider these kexts critical to run the MacOS Installer, Updater, or Recovery?

AppleALC.kext
IntelMausiEthernet.kext
Lilu.kext
USBInjectAll.kext (for use with SSDT-UIAC.aml in EFI/Clover/ACPI/patched)
WhateverGreen.kext

Or do these only need to be loaded to /L/E?
audio is not essential to reach the installer

your other ones are essential
 
Great guide as always @jaymonkey. Would you consider these kexts critical to run the MacOS Installer, Updater, or Recovery?

AppleALC.kext
IntelMausiEthernet.kext
Lilu.kext
USBInjectAll.kext (for use with SSDT-UIAC.aml in EFI/Clover/ACPI/patched)
WhateverGreen.kext

Or do these only need to be loaded to /L/E?


@manHands,

I don't need any of those kexts on any of my systems to run Installer, Updater or Recovery, i just need FakeSMC but it depends on your hardware and what you may need access externally in those packages ...

Audio is not important so no need for AppleALC.

If you don't need to connect to a LAN server for TM backups in Recovery then IntelMausiEthernet is not needed.

USBInjectAll is only needed if you cant use any of your preferred USB ports in recovery.

Lilu + WhatEverGreen are only required if you don't get a display when running Installer, Updater or Recovery, if your using a dGPU as the primary adapter then generally no need, some more current IGPU's do need them.

There really is no hard or fast rule.

My recommendation is try with just FakeSMC and then add additional kexts until you can run recovery.

Cheers
Jay
 
Finally a great and clear guide about those kexts folders! Thanks a lot. :)
I wish I had that clear information when I started testing Clover.
As every rule has its exception, my DELL E6320 laptop needs VoodooHDA.kext in EFI/Clover/Kexts/10.11, it doesn't work in L/E or S/L/E, no matter what I've tried...
Except for that specific case, I always follow the recommendations you gave. :thumbup:
 
9. Summary

1. Copy FakeSMC and only critical kext's needed to run the MacOS Installer, Updater or Recovery to EFI/Clover/kexts/Other
2. Install all 3rd party kexts (including FakeSMC) required to run MacOS in /Library/Extensions
3. Set Clover -> System Parameters -> Inject Kexts to "Detect"​




Here is my test result:
Attach is my original list kext and load them from EFI/Clover/kexts/Other, all fine.

As advised, first I move 2 device-related kexts for testing. IntelMausiEthernet.kext and realtekALC.kext to
/Library/Extensions , guess what? both won't load at all thus any LAN to use.​
Revert back and everything works. Maybe those are not designed to work from the /L/E (not signed maybe?)​

I think all kexts as in the attach are for me the "minimum kext set".
Any different thought or advice?
 

Attachments

  • 2019-02-09 下午11.15.50.jpg
    2019-02-09 下午11.15.50.jpg
    52.7 KB · Views: 192
everything goes in /Library/Extensions NO exceptions! :)

The developers of lilu kexts already said they belong in the clover folder. Yes, most third party kexts that are made for hardware belong in /library/extensions. But, any kext that is a "hack" kext belongs in the clover folder. I feel that saying "All" kexts belong in /library/extension will cause more problems and more posts and less success... Listen to the developers...
 
On the Designare Z390, all kexts have now been moved to /L/E, including IntelMausiEthernet and SmallTreeIntel82576. Kernel caches were rebuilt with Kext Utility, Inject Kexts was changed to Detect, and everything is working perfectly.
 
Back
Top