Il contesto e il ritorno dei progetti “impossibili”
Negli ultimi anni sono stati numerosi gli esperimenti di hacker che hanno cercato di far girare iOS su dispositivi Android e, viceversa, Android su iPhone. La maggior parte di questi tentativi si è conclusa in fallimento, ma l’avvento dell’intelligenza artificiale generativa e la disponibilità di tempo libero hanno alimentato una nuova ondata di sperimentazione.
Le piattaforme social sono state invase da brevi video in cui gli utenti mostrano iOS 16 in esecuzione su smartphone non Apple. Tra questi, il clip più discusso mostra un iOS 16 avviato su un Redmi Note 12, suscitando grande curiosità nella community.
Il traguardo tecnico: da Hackintosh a “Hackios”
iOS è stato progettato per funzionare esclusivamente sull’hardware Apple. In passato sono stati realizzati progetti opposti, come iDroid (che avviava Android su iPhone del 2010) e Project Sandcastle (che portava Android 10 su iPhone usando il chip AIO di Apple). Fino a poco tempo fa nessuno era riuscito a fare il contrario: far girare iOS su un dispositivo Android.
Il movimento, soprannominato “Hackios” e ispirato alla scena Hackintosh (macOS su PC non Apple), nasce da un progetto open‑source su GitHub chiamato ios-sweet. Questo progetto sostituisce il kernel Linux tipico degli Android con XNU, il kernel utilizzato da Apple.
Come funziona il kernel XNU su Android
- Sostituzione del kernel: il kernel Linux viene rimosso e al suo posto viene inserito XNU.
- Albero dei dispositivi: ios‑sweet fornisce a XNU un “device tree” copiato da un iPhone X, cioè una descrizione dettagliata dell’hardware.
- Illusione di avvio: grazie al device tree, XNU crede di avviarsi su un iPhone X.
- Caricamento di iOS 16: vengono poi caricati file non modificati di iOS 16 prelevati da un iPhone X, che vengono eseguiti sul chip del dispositivo Android.
Apple pubblica il codice sorgente di XNU, il che rende possibile questo tipo di esperimenti.
Perché è stato scelto l’iPhone X
Secondo Android Authority, lo sviluppatore ha optato per l’iPhone X perché è l’ultimo modello Apple privo della protezione “Pointer Authentication Code” (PAC). La PAC è una misura di sicurezza introdotta a partire dall’iPhone X e richiede hardware specifico per essere gestita. I chip Qualcomm, come quello presente nel Redmi Note 10 Pro, non supportano la PAC, quindi versioni più recenti di iOS non avrebbero potuto avviarsi.
Questa scelta implica che l’approccio attuale non funzionerà su dispositivi Android più moderni che non possiedono un chip compatibile con l’assenza di PAC.
Cosa funziona e cosa no su un Redmi Note 12
Il risultato non è ancora un sistema operativo pienamente utilizzabile, ma è comunque sorprendente. Su un Redmi Note 12 Pro, ad esempio, si osservano i seguenti comportamenti:
- Schermata di blocco, home, Centro di Controllo e Impostazioni funzionano.
- Input tattile e pulsanti fisici rispondono correttamente.
- Wi‑Fi, Bluetooth, dati mobili, audio, fotocamere e sensori biometrici non funzionano.
- App di sistema come Messaggi, Telefono o Foto mostrano solo una schermata nera.
- Assenza di driver grafico: il display viene disegnato a circa 20‑30 fps.
- Tempo di avvio: tra 4 e 5 minuti, a causa dell’inefficienza del driver grafico.
Queste limitazioni rendono l’esperienza più una dimostrazione tecnica che un sostituto pratico di iOS.
Dispositivi compatibili e versioni in sviluppo
Oltre al Redmi Note 10 Pro, sono state create versioni adattate per:
- Redmi Note 12 Pro
- LG V60
- OnePlus 7T (in fase di sviluppo)
- Redmi 5 Plus (in fase di sviluppo)
- Galaxy S23 Ultra (codice non ancora pubblico)
Altri tentativi includono Google Pixel 6 (chip Tensor) e Galaxy S7 (Exynos 8890), ma finora senza successo.
Il responsabile dell’adattamento per il Redmi Note 12 afferma di aver ottenuto funzionamento di suono, Wi‑Fi e sfondo, sebbene il sistema rimanga molto instabile. Un gruppo indipendente, OOSexGang, ha dichiarato di eseguire iOS 16.5 su un Poco X5 Pro, pubblicando il progetto su GitHub.
Il ruolo cruciale dell’intelligenza artificiale generativa
La maggior parte delle versioni recenti si avvale di contenuti assistiti da IA generativa. Nei file NOTES.md dei repository si trovano istruzioni per agenti IA come Claude Code, ChatGPT Codex o Gemini. Questi assistenti accelerano notevolmente la scrittura di codice, la generazione di script di build e la risoluzione di incompatibilità.
Il ritmo con cui gli agenti IA possono produrre e testare software è molto più rapido rispetto al lavoro manuale, e questo spiega la recente proliferazione di progetti estremi. Anche nel mondo dei videogiochi si sono registrate centinaia di decompilazioni di titoli eseguiti su piattaforme non previste, dimostrando la potenza di questi strumenti.
Prospettive future e conclusioni
Il successo di iOS 16 su un Redmi Note 12, seppur limitato, rappresenta una pietra miliare nella storia del reverse‑engineering mobile. Dimostra che, con l’aiuto dell’IA e la disponibilità di codice open‑source, è possibile superare barriere che un tempo sembravano invalicabili.
Le sfide rimangono numerose: driver grafici più efficienti, supporto completo per Wi‑Fi, Bluetooth, audio e sensori, nonché una stabilità sufficiente per un uso quotidiano. Tuttavia, la crescita della community “Hackios” e la collaborazione con agenti IA suggeriscono che ulteriori miglioramenti arriveranno rapidamente.
In sintesi, quello che sembrava impossibile – far girare iOS su un dispositivo Android – è stato realizzato, anche se ancora in forma sperimentale. Il prossimo passo sarà trasformare questa dimostrazione in un sistema operativo realmente praticabile, aprendo nuove possibilità per gli appassionati di hacking, gli sviluppatori e, perché no, per gli utenti curiosi di sperimentare il meglio di due mondi.
