# Asahi Linux

Asahi Linux è un progetto open source che mira a portare una completa esperienza Linux sui Mac con chip Apple Silicon (M1, M2 e successivi). Questo è stato possibile grazie a un intenso lavoro di reverse engineering. Il progetto è stato avviato da Hector Martin, uno sviluppatore noto per il suo lavoro di porting di Linux su altre piattaforme, come PS4 e PS3.

## Storia

Nel 2020, Apple annunciò la transizione dai processori Intel x86 in favore di Apple Silicon. Poco tempo dopo, Linus Torvalds, si mostrò interessato a far funzionare Linux anche su questi nuovi Mac. Tuttavia, giudicò il lavoro necessario per rendere Linux compatibile con questi chip troppo complesso e dispendioso in termini di tempo per occuparsene personalmente.
Hector Martin annunciò l'avvio del progetto Asahi Linux nel dicembre 2020 e, ufficialmente, il progetto iniziò nel gennaio 2021 dopo aver ottenuto finanziamenti tramite crowdfunding.
Alyssa Rosenzweig, famosa per aver sviluppato Panfrost (progetto open-source che mira a sviluppare driver grafici liberi e compatibili per le GPU Mali) si unì al progetto per contribuire nel supporto alla GPU Apple Silicon Una sfida resa complessa dalla mancanza di documentazione di pubblico dominio a dal firmware proprietario di Apple.
Gli sviluppatori hanno subito realizzato che tentare di avviare il kernel Linux compilato per l'architettura del processore Apple Silicon (AArch64) sarebbe stato difficile. Era infatti necessario comprendere per intero il funzionamento del codice proprietario di Apple utilizzato nel processo di avvio. Il lavoro è stato lungo. Ha richiesto molto tempo e la presentazione di pull request agli sviluppatori principali del kernel Linux per mantenere lo sviluppo sincronizzato ed evitare regressioni. Questo ha portato ad un'analisi dettagliata e completa del processo di avvio (precedentemente non documentata) che Martin Hector e il team di Asahi Linux hanno pubblicato su GitHub.
La prima versione alfa dell'installer di Asahi Linux venne rilasciata nel marzo 2022. Questo installer offriva diverse opzioni di installazione: un desktop basato su Arch Linux ARM, un ambiente minimale, o un ambiente UEFI di base funzionale all'installazione di OpenBSD o altre distribuzioni Linux con supporto per Apple Silicon tramite un'unità USB avviabile.
Nonostante sia possibile avviare una shell UEFI, il boot di Microsoft Windows non è supportato (e non ne è previsto nemmeno per il futuro) in quanto richiederebbe la modifica del kernel proprietario di Windows. Altri progetti che studiano un possibile porting di Windows su questi sistemi hanno incontrato ostacoli significativi, legati alla gestione dell'Apple Interrupt Controller (AIC) e alle pagine di memoria da 16K presenti solo sull'IOMMU.
Il supporto completo per tutti i Mac con chip Apple Silicon non era previsto prima di uno o due anni dalla prima versione alpha. Nel luglio 2022, il team di Asahi Linux ha rilasciato un aggiornamento con il supporto per M1 Ultra, Mac Studio e un supporto iniziale per il MacBook Pro M2.
Ad agosto 2023, è arrivato l'annunciato dell'avvio di una collaborazione tra il team di Asahi Linux e il Fedora Project per rilasciare il Fedora Asahi Remix. Questo remix sostituirà la distribuzione originale basata su Arch come sistema operativo principale di Asahi. Il progetto è iniziato alla fine del 2021 e segue un approccio "upstream-first". L'obiettivo finale è quello di integrare tutte le modifiche sviluppate da Asahi Linus, direttamente nel progetto Fedora così da rendere superflua una distribuzione specifica.
Nell'ottobre 2023, Fedora Asahi Remix è stata rilasciata come Beta e, 3 mesi dopo, come versione stabile.
Nel febbraio 2025, Hector Martin, fondatore e principale sviluppatore di Asahi Linux, ha annunciato le sue dimissioni dalla guida del progetto, citando burnout e difficoltà con la comunità del kernel Linux, sebbene il progetto dovrebbe proseguire senza di lui.

## Supporto hardware e driver

Il progetto Asahi Linux ha sviluppato un driver Vulkan in grado di supportare OpenGL 4.6 e OpenGL ES 3.2. Questo driver è attualmente l'unico completamente compatibile con la GPU AGX (Apple Silicon) per qualsiasi standard grafico diffuso. Inizialmente veniva utilizzata l'implementazione del driver Panfrost ma, il progetto Asahi Linux, ha fatto uso anche Gallium-3D e Rust per le API basate su Linux per lo sviluppo del driver.
L'uscita video HDMI è supportata solo sul Mac mini con Apple Silicon e non c'è supporto video tramite Thunderbolt. E' invece possibile utilizzare display esterni tramite dock DisplayLink.
Il kernel del sistema operativo è stato configurato per supportare solo pagine di memoria da 16 kB (per motivi prestazionali). I programmi che non si aspettano pagine di 16 kB (ad esempio, che si aspettano pagine di 4 kB o 64 kB) potrebbero generare problemi di allineamento quando vengono mappati in memoria.

## Accoglienza

Il progetto ha ricevuto subito apprezzamenti. Una recensione di "The Register" afferma che il sistema, seppur in fase alpha e ancora in sviluppo, funzionava sorprendentemente bene. Parimenti, una recensione di "Ars Technica", dichiarava di essere rimasta colpita dalla quantità di hardware già supportato nelle prime fasi del ciclo di vita del progetto.