Deux heures, c'est le temps qu'il a fallu à dosdude1 pour déjouer l'incompatibilité de vieux Mac avec macOS Sierra. Comme nous l'indiquions récemment, ce développeur a mis au point un « patch » permettant d'installer Sierra sur des machines qui n'y ont théoriquement pas droit.
Pour la première fois depuis Mountain Lion, une nouvelle version de macOS abandonne en effet les plus vieux modèles... mais c'était sans compter sur le talent de bidouilleurs. dosdude1 nous a expliqué avoir créé ce patch principalement par défi, pour tester ses compétences : « Comme j'ai déjà une solide expérience du développement en Objective-C, je me suis dit que ce serait un projet assez facile, et ça l'a été. »
L'affaire a été pliée en seulement deux heures. « L'optimisation m'a pris environ une heure supplémentaire », précise-t-il.
Qu'est-ce que fabrique son patch au fait ? Premièrement, il crée une copie conforme de l'installeur Sierra sur la clé USB. Ensuite, il copie les fichiers modifiés et l'utilitaire « macOS Post Install ». Une fois que le système est installé normalement, cet utilitaire va le patcher en fonction du modèle de Mac sélectionné. Concrètement, il va ajouter des flags au fichier com.apple.Boot.plist
et des extensions kernel, dont legacyUSBInjector.kext
(créée par parrotgeek1) pour la compatibilité USB.
Le patch de dosdude1 désactive également SIP pour permettre l'ajout et le fonctionnement de ces extensions kernel tierces.
Malgré cette astucieuse bidouille — à utiliser à vos risques et périls —, tous les Mac délaissés par Apple ne peuvent pas passer sur Sierra. « Le principal problème rencontré actuellement, c'est que Sierra demande un processeur prenant en charge les instructions SSE4.1. Les Core 2 Duo Merom utilisés dans les machines de 2007 ne les prennent pas en charge, ce qui empêche totalement l'exécution de Sierra », détaille dosdude1.
Le processeur de l'iMac 2007 étant sur un socket, il peut être remplacé, mais ce n'est pas le cas du processeur du MacBook Pro 2007 qui est soudé. L'autre problème, c'est l'incompatibilité du chipset Wi-Fi Broadcom BCM4321 répandu dans les ordinateurs de 2008.