macOS Ventura es la flamante versión del sistema operativo de Apple para PC y aunque no estará disponible hasta el próximo otoño, la compañía ya lo ha mostrado en sociedad y ha adelantado algunas de sus novedades, entre las que se cuenta el soporte para ejecutar aplicaciones de Linux.
La presentación de macOS Ventura se dio ayer, en el marco de la conferencia para desarrolladores WWDC 2022, que la que la firma de Cupertino aprovechó para enseñar lo próximo de otros de sus productos de cabecera, incluyendo los nuevos Macbook Pro y Macbook Air con los chips Apple M2, iOS y iPadOS 16 o watchOS 9, además del que nos ocupa, macOS 13, con nombre en clave macOS Ventura.
Pues bien. De las principales novedades de macOS Ventura dimos cuenta ayer en MC (también del resto de novedades que trajo la WWDC 2022: pincha en el enlace de más arriba para verlo todo), aunque justo la de la compatibilidad con aplicaciones de Linux, no estaba entre ellas. Cabe recordar que macOS Ventura se encuentra en fase beta y quedan muchas cosas por conocerse.
Sin embargo, según recogen en Phoronix macOS Ventura podrá ejecutar aplicaciones de Linux a través de Rosetta, el componente que desarrolló Apple para mantener la compatibilidad de las aplicaciones clásicas de macOS con los nuevos procesadores ARM de Apple Silicon. Mucho se ha habló de Rosetta al inicio de la transición, pero parece que Apple ha cumplido con unos mínimos y el invento ha cuajado.
Con macOS Ventura irán un paso más allá, utilizando el macOS Virtualization Framework para permitir la ejecución de binarios de Linux, sirviéndose para ello de máquinas virtuales de Linux basadas en ARM. La integración de Rosetta en este sentido se reducirá a eso, binarios o aplicaciones dentro del espacio de usuario, y no a distribuciones Linux al completo, al menos por ahora. ¿A qué nos suena esto?
En efecto, aunque hemos visto casos como el de ChromeOS con las aplicaciones de Linux, esto es diferente. No se trata de ampliar el ecosistema de aplicaciones de escritorio, que en macOS es bastante florido. Ofrecer la posibilidad de ejecutar aplicaciones de Linux en macOS Ventura tiene el mismo objetivo que Windows Subsystem for Linux: facilitarle la vida a los desarrolladores… ¿o alejar de ellos la tentación de pasarse a Linux para trabajar?
Sea como fuere, el cambio que propone Apple para macOS Ventura puede dar de que hablar, aunque ya hay quien le está poniendo peros al invento, no por la forma del mismo, sino por el fondo. Hector Martin publicaba ayer uno y dos hilos en Twitter hablando sobre el tema y esperando que la evolución de Rosetta no desincentive el trabajo en torno a los esfuerzos existentes para llevar Linux a Apple Silicon.
Según Martin, uno de esos desarrolladores encargados de llevar los M1 de Apple a Linux, así como uno de los responsables de Asahi Linux, la primera distribución Linux para Apple Silicon, hay dudas acerca de en qué tecnologías se apoya la nueva funcionalidad de Rosetta. Dudas que quizás se despejarán hoy, pues Apple tiene programada una charla en la que se tratará este asunto. Aparte está la documentación oficial de Rosetta.
También hay dudas, y estas son de diferente índole, en relación a los posibles problemas legales de usar Rosetta fuera de macOS Ventura y siguientes versiones, por lo que continuar con el trabajo previo de la comunidad en clave de código abierto alrededor de Apple Silicon, es esencial, sostiene Martin.
En qué quedará todo, lo veremos en un futuro. Mientras tanto ¿quién nos iba a decir que volveríamos a traer a macOS por estos lares? Con macOS Big Sur la excusa fue que el cambio de diseño creó tendencia; en esta ocasión, no obstante, la historia apunta hacia otros derroteros. A ver cuándo se invierte en nuestro -el de los usuarios de Linux- favor
O lo que es lo mismo, a ver cuándo podemos hablar de un avance sustancial de Darling, porque macOS tiene cantidad de aplicaciones exclusivas de gran nivel, muchas de las cuales no están disponibles ni siquiera para Windows. Darling, por cierto, es el equivalente a Wine, pero para ejecutar aplicaciones de Mac en Linux.