¿Soporte Linux para Apple Silicion M1?
Linus Torvalds ya insinuó que le encantaría trabajar en equipos basados en ARM, y que le encantaría que el nuevo Apple Silicon, el M1, soportase Linux. Pero también dejó claro que no tenía la capacidad de hacer que las empresas se implicasen en ello para dar soporte para el kernel Linux en esta plataforma.
Ahora, parece que el mismo desarrollador que trajo el soporte Linux a la videoconsola Sony PlayStation 4 (PS4), también se ha marcado como objetivo llevar Linux a los Apple Silicon. En cambio, aún no hay que cantar victoria, es un duro camino, así que habrá que ser cautos y ver cómo termina todo esto…
No obstante, es bueno saber que desde el lado del software ya hay esfuerzos que comenzarán a dar sus frutos para adaptar varios sistemas que ahora funcionan con x86 a esta nueva plataforma Apple Silicion ARM-based, como el M1. Y no solo Linux ha quedado fuera con este cambio, también Microsoft Windows 10, o proyectos tan conocidos como Docker. De hecho, éste último no funciona ni con Rosetta debido a que depender de las extensiones de virtualización de Intel.
El desarrollador del que hablo, ya demostró su destreza portando Linux a la PS4, pero eso es una cosa, y el resto para el Apple M1 (y todo su ecosistema) es otro. Requerirá de largas horas de trabajo, muchos problemas que resolver, y grandes dosis de ingeniería inversa. Es decir, no será algo de la noche a la mañana, y tal vez cuando se consiga se haya avanzado en el terreno del hardware hacia nuevas versiones…
Por lo pronto, este desarrollador, llamado Héctor Martin, ha creado una campaña de financiación en la plataforma Patreon para poder encontrar el apoyo económico necesario. Él mismo ha comentado «Apple acaba de lanzar una nueva gama de Apple Silicion Macs basadas en ARM y hacen volar por los aires a cualquier otra máquina ARM de la misma clase. ¿No sería bueno que pudieran ejecutar Linux también?«.
«Resulta que pueden, pero alguien tiene que hacer el trabajo. Dado que estos dispositivos son nuevos y hechos a medida, portar Linux para que funcione en ellos es una tarea enorme. Más allá de un proyecto de hobby, es un trabajo a tiempo completo«. Como el dice, una cosa es portar Linux para que funcione en un dispositivo x86 diferente, como es el caso de la PS4, o para que funcione en un SoC ARM con núcleos IP, y otra es hacerlo a un chip diseñado a medida usando la ISA ARM, como es el caso de Apple Silicon.
«El objetivo es ofrecer soporte de Linux en las Mac de Apple Silicon hasta el punto en que no sea simplemente una demostración técnica, sino un sistema operativo que a uno le gustaría usar en un dispositivo de uso diario. Para lograrlo, hay una gran cantidad de trabajo por hacer. Ejecutar Linux en cualquier cosa es fácil, pero hacer que funcione bien es difícil. Los controladores deben estar escritos para todos los dispositivos. El controlador para la GPU de Apple completamente personalizada es el componente más complicado, el cual es necesario para tener una buena experiencia de escritorio. La administración de energía también debe funcionar bien para que la duración de la batería sea razonable.«Sea como sea, el objetivo es alcanzar los 4000$ al mes, lo que ha calculado Martin que sería suficiente para financiar su esfuerzo a tiempo completo para poder realizar este trabajo arduo y colosal.
Linus Torvalds ya lo dijo «El principal problema del M1 para mi es la GPU y otros dispositivos que lo rodean, porque es probable que eso me impida usarla porque no tendría soporte para LInux a menos que Apple se abra.«.
Héctor parece más optimista, incluso si Apple no colabora: «Ejecutar Linux en las cosas es fácil, pero hacer que funcione bien es difícil. Los controladores deben estar escritos para todos los dispositivos. El controlador para la GPU de Apple completamente personalizada es componente más complicado.».
Habrá que ver cómo resulta todo este proyecto, y si se consigue algún día, si podría servir de base para adaptar Linux a futuras versiones de Apple Silicion de forma más rápida.