Écoutez cet article

Même si les puces M1 et M2 des Macs modernes sont basées sur des processeurs ARM, elles ne sont pas comme les autres. Cela a fait du portage de Linux sur les nouveaux Macs un défi difficile à relever, mais des progrès impressionnants ont été réalisés récemment.

Une grande partie du travail de portage de Linux sur les ordinateurs Mac Apple Silicon (M1 et M2) a été réalisée dans le cadre du projet Asahi Linux, qui propose déjà une distribution de bureau pouvant démarrer en mode natif sur de nombreux modèles. Même si Linux prend en charge les puces ARM depuis des années, en grande partie grâce à l’utilisation de Linux par Google pour le noyau Android et des appareils comme le Raspberry Pi, faire en sorte que tout fonctionne sur Apple Silicon a été un défi.

Le système d’exploitation de base et l’expérience de bureau fonctionnent sous Asahi Linux depuis un certain temps déjà, de sorte que certains développeurs sont passés à une prise en charge graphique appropriée. Alyssa Rosenzweig a participé à l’ingénierie inverse du GPU de la puce M1 pour créer un pilote d’espace utilisateur, basé sur le travail de documentation de Dougall Johnson. Cependant, il manquait toujours un pilote au niveau du noyau – une tâche assumée par le VTuber Asahi Linya.

10 jeux amusants à jouer dans le terminal Linux

Asahi Lina a expliqué dans un billet de blog, « tout comme les autres parties de la puce M1, le GPU a un coprocesseur appelé « ASC » qui exécute le firmware Apple et gère le GPU. Ce coprocesseur est un processeur ARM64 complet exécutant un système d’exploitation en temps réel propriétaire d’Apple appelé RTKit… et il est responsable de tout ! Il gère la gestion de l’énergie, la planification et la préemption des commandes, la reprise après défaillance, et même les compteurs de performance, les statistiques et des choses comme la mesure de la température ! En fait, le pilote du noyau de macOS ne communique pas du tout avec le matériel du GPU. »

Après de nombreux essais et erreurs, Asahi Lina a développé un pilote de GPU M1 pour le noyau Linux, écrit dans le langage de programmation Rust. Le mois dernier, il est devenu suffisamment stable pour faire fonctionner l’environnement de bureau GNOME dans le compositeur Wayland, et le travail en cours sur le noyau et les pilotes utilisateur permet à certains jeux de fonctionner, y compris le jeu de tir classique Quake. L’article de blog mentionne que « comme la gestion de l’alimentation du GPU est gérée par le firmware, tout cela fonctionne tout simplement. J’ai testé Xonotic à 1080p à l’intérieur d’une session GNOME, et l’autonomie estimée était de plus de 8 heures ! »

Il faudra encore quelques semaines (ou mois) avant que les nouveaux pilotes de GPU soient facilement accessibles à quiconque essaie Linux sur un Mac M1 ou M2, mais le travail progresse à un rythme impressionnant – surtout si l’on considère qu’Apple n’a pas du tout documenté la plupart de son architecture de CPU et de GPU.