La principale nouveauté figure en tête du dépôt : son mainteneur indique ne plus pouvoir entretenir Kakehashi. Le projet doit être évalué comme une expérience privée de ce suivi.

Le dépôt actuel change la conclusion
Le README contient désormais des exemples Apple git et clang, en plus de 7-Zip et curl. Il exclut encore une pile macOS complète et codesign fonctionnel. L’exécution exige Linux aarch64 et un système de fichiers invité préparé manuellement. L’Ubuntu de référence tourne dans UTM, pas simultanément sur matériel nu. Ces exemples ne constituent pas un engagement de compatibilité future après le retrait du mainteneur.
Même jeu d’instructions, autre contrat système
Un exécutable Mach-O transporte davantage d’hypothèses que ses instructions ARM64 : chargeur, symboles de bibliothèques, threads, chemins et appels système. Kakehashi adapte ce contrat à Linux. Les instructions compatibles peuvent s’exécuter directement, tandis que les frontières système ajoutent du travail ou révèlent des fonctions manquantes.
L’absence d’émulateur d’instructions ne signifie donc pas absence de surcoût. Une boucle de compression et un parcours de dossiers peuvent franchir ces frontières à des fréquences très différentes. Nous avons retiré un ancien facteur de ralentissement plutôt que de transformer un microbenchmark évolutif du développeur en prévision pour votre compilation.
Compatibilité ne signifie pas isolation
Le mappage documenté /Volumes/linux expose le système de fichiers hôte. Un outil invité qui écrit sur un chemin de l’hôte peut modifier de vrais fichiers. Évaluez-le sur des données jetables avec un accès à l’hôte délibérément limité ; la présence d’un dossier invité ne démontre pas son isolation.
Avant de déplacer une étape CI, testez le binaire exact, ses bibliothèques et ses entrées, puis comparez validité des résultats et durée totale. Signature et vérification de la version distribuée restent des exigences distinctes. Un exemple clang réussi ne valide pas toute une chaîne macOS, et une démonstration ne dit pas qui corrigera la prochaine incompatibilité. Le projet reste une base de recherche possible ; son état de maintenance représente un coût d’adoption concret.
Revue du 8 septembre : arrêt de maintenance signalé, exemples git/clang actualisés ; ancien benchmark 5,2× et description contradictoire d’UTM retirés.