Ce n'est pas réellement un tuto mais plutôt un petit guide car beaucoup d'entre vous qui démarrent sur Hackintosh se demandent à quoi servent les kext et quelle est leur utilité.
Rassurez vous, tout le monde s'est posé exactement les mêmes questions lors du montage et de l'installation de son premier Hackintosh.
Voici donc un petit lexique avec les question les plus courantes qui vous permettront d'y voir un peu plus clair.
NB : Même si vous n'avez pas besoin d'avoir constamment la dernière version d'un ou plusieurs kexts, pensez néanmoins à les mettre à jour
avant une mise Ă jour de macOS/OS X.
â—‰ Qu'est ce qu'un kext ?
D'une manière très simple, un kext est grosso-modo l'équivalent d'un driver sur Windows.
il va permettre à macOS de reconnaitre les périphériques embarqués sur votre carte mère pour qu'ils soient reconnus par le système (cela va de la carte son, à l'Ethernet, les ports USB, etc.) car à la base, ils ne sont pas prévus pour fonctionner sur les ordinateurs d'Apple.
◉ Comment connaitre son matériel ?
Trouver les références de vos périphériques est relativement simple. Il suffit d'aller chercher la référence de votre carte mère sur le site du constructeur. La plupart des informations y sont et si ce n'est pas le cas, il faudra chercher dans la notice qui est souvent bien plus complète.
â—‰ Comment trouver ses kext ?
Hélas, il n'y a pas de solution miracle et bien souvent, il faudra faire des recherches. Ça ne se fera pas de manière automatique car chaque périphérique à sa spécificité et il n'existe pas encore de kext universel.
Mais une fois qu'on a identifié le périphérique, il suffit juste d'aller sur Google pour trouver le kext adéquat.
Pour l'exemple je vais faire comme si je montais une nouvelle installation.
Dans mon cas, j'ai cette carte mère :
Asus Z97-Pro (Wifi ac).
En regardant dans ses
spécifications, je vois que mon contrôleur Ethernet est un «Intel® I218V»
Donc je fais une recherche sur
Google: intel I218V hackintosh ou mĂŞme juste
Google: I218V kextEt dès la 2ème ligne dans le résultat de recherches, je vois "
GitHub - Mieze/IntelMausiEthernet: OS X driver for Intel onboard LAN"
J'ouvre donc le lien et à l'intérieur je peux lire :
Ce kext correspond bien à mon contrôleur et ça m'aura pris moins d'une minute pour le trouver et pour l'identifier !
â—‰ Comment faire quand il faut compiler le kext ?
Dans la plupart des cas, les kext ont déjà été compilés pour les utilisateurs lambdas que nous sommes. Mais pour reprendre l'exemple ci-dessus, il arrive parfois que le développeur du kext ne donne pas de version déjà compilée. C'est rare mais ça arrive…
Bien entendu, il n'est pas question de le faire vous-même donc il va falloir continuer à chercher un peu. Et comme maintenant je connais le nom de ce fameux kext, je peux chercher une version "déjà prête à l'emploi".
Si ce cas de figure vous arrive, une simple recherche sur Google: IntelMausiEthernet.kext devrait vous mettre sur la bonne piste.
Et en effet, dès la 1ère ligne, on trouve le kext en question : RehabMan / OS-X-intel-network / Downloads — Bitbucket
Vous voyez, trouver un kext est relativement simple et à la porté de tout le monde !
â—‰ OĂą placer ses kexts ?
Maintenant qu'on a récupéré tous nos kext, nous allons les placer dans la partition EFI et plus précisément, dans le dossier "EFI/CLOVER/kexts/Other".
Ensuite, il faudra juste redémarrer son Hack pour que le ou les kexts que vous avez ajouté puissent se charger avec le système.
Mais pourquoi dans Other et pas dans l'un des dossiers 10.x me direz-vous ?
Et bien parce que comme son nom ne l'indique pas , le dossier Other est en fait un dossier commun qui sera utilisé quelque soit la version de macOS/OS X lancée par Clover.
C'est très pratique pour le passage d'une mise à jour majeure à une autre (de El Capitan à Sierra par exemple) puisqu'on a pas à se soucier de savoir si les kexts seront bien chargés alors même que la version du système a changé entre temps.
Mais rien ne vous empĂŞche d'utiliser les dossiers 10.x si le besoin s'en fait sentir comme, par exemple, si un kext est indispensable Ă une version mais qu'il ne l'est plus avec la suivante.
◉ Comment savoir si le périphérique est bien reconnu ?
Après avoir redémarré votre Hack, il suffit soit de lancer le rapport système de macOS ou, 2ème possibilité, d'utiliser DCPIManager
On peut ainsi voir que la carte Ethernet est maintenant parfaitement reconnue.
â—‰ Faut il mettre Ă jour ses kexts ?
Si votre config fonctionne parfaitement je vous conseillerais de ne rien toucher. MAIS si vous faites des mises à jour ou si vous faites une migration vers un système plus récent (de Sierra vers High Sierra par exemple),
il se peut que vous ayez besoin de mettre à jour vos kexts sous peine de perdre la reconnaissance de vos périphériques embarqués ou de ne plus pouvoir démarrer car votre kext ne sera pas compatible avec la mise à jour.
Donc avant chaque mise à jour il est très important de toujours bien vérifier si il n'y a pas de nouvelles versions de vos kexts pour assurer la compatibilité avec votre matériel et/ou votre système.
D'ailleurs, il ne faut pas hésiter à aller lire les liens des différents forums que l'on trouve durant ses recherches. Il y a souvent des informations très pertinentes et très utiles.
â—‰ Pour vous aider voici une petite liste de kext les plus courants.
La liste est bien sur non-exhaustive car vu le le nombre de kexts, je ne peux pas tous les répertorier. Mais elle se remplira au fur et mesure.
NB : Lorsque vous téléchargerez certains kexts, vous pourriez tomber sur deux dossiers une fois le fichier dézippé : Debug et Release. Il faut choisir celui qui se trouve dans le dossier Release.
â– FakeSMC :
○ C'est le seul kext absolument indispensable d'un Hack. Il sert à simuler le SMC (System Management Controller) d’un vrai Mac et sans ce kext, vous ne pourrez tout simplement pas démarrer votre Hack.
â– Lilu.kext et ses plugins (liste non-exhaustive) :
○ C'est le kext de base sur lequel tous les plugins reposent. Par conséquent, il est obligatoire si vous comptez les utiliser. Il va agir sur les kexts natifs de macOS/OS X et il dispose de bootflags pour le configurer.
â– AppleALC.kext :
○ C'est l'un des plugins de Lilu.kext. Il sert pour la reconnaissance de votre matériel audio et s'utilise donc en complément de Lilu.kext
â– WhateverGreen.kext :
○ Ce kext s'adresse en particulier aux utilisateur de cartes graphiques AMD récentes (essentiellement celles qui disposent d'un Bios UEFI). Il permet notamment de régler des problèmes de veille ou d'écran noir.
• EDIT
â—‹ WhateverGreen.kext propose maintenant la fusion des kext pour AMD / intel / Nvidia et inclus aussi shiki.kext
pour les utilisateur de cartes Nvidia ou intel plus la peine d'installer NvidiaGraphicsFixup ou intelGraphicsFixup et shiki
Lilu.kext est par contre toujours obligatoire avec ce kext
â– IntelGraphicsFixup.kext :
○ Celui-ci s'adresse en particulier aux utilisateur de GPU Intégrés (IGPU) Intel HD. Il permet notamment de régler des problèmes de freezes ou d'artefacts graphiques.
â– NvidiaGraphicsFixup.kext :
○ Ce kext s'adresse en particulier aux utilisateur de cartes graphiques NVIDIA récentes (Maxwell et Pascal) lorsqu'elles sont utilisés avec certains SMBios et les webdrivers.
â—‰ Kexts divers :
â– VoodooHDA.kext :
○ Ce n'est pas un plugin de Lilu.kext mais il concerne lui aussi l'audio. En bref, si AppleALC.kext ne supporte pas votre matériel, il y a de grandes chances que VoodooHDA.kext en soit capable.
Cependant, ce n'est pas une solution native et la qualité audio n'est pas toujours bonne. À utiliser en dernier recours.
NB : Il s'utilise en complément de AppleHDADisabler.kext qui, la plupart du temps, est fourni ou installé avec.
â– USBInjectAll.kext :
○ Ce kext permet d'activer tous les ports USB détectés sur votre config.
On s'en sert temporairement pour définir les adresses de ces ports afin de concevoir un Injecteur personnalisé.
Ce message a été modifié par jeanchrijaz - 4 Aug 2018, 01:37.
Raison de l'édition : Ajout de WhateverGreen.kext