Il Comitato FESCo (Fedora Engineering Steering Committee), responsabile della parte tecnica dello sviluppo della distribuzione Fedora Linux, ha approvato la concessione di un'eccezione alle regole, consentendo di includere nel pacchetto dell'installer asahi-installer un file eseguibile e librerie compilati per la piattaforma macOS. L'eccezione è stata concessa su richiesta degli sviluppatori dell'edizione Fedora Asahi Remix, destinata all'installazione su computer Mac dotati di chip ARM AppleSilicon.
In Fedora Asahi Remix è utilizzato un installer proprietario, asahi-installer, anziché l'installer Anaconda predefinito per Fedora. Il processo di installazione di Fedora Asahi Remix viene avviato dall'attuale sistema operativo macOS già presente sul computer Mac, per il quale l'asahi-installer include un'applicazione avviabile da macOS e recoveryOS (un ambiente macOS ridotto). Oltre a questa applicazione, l'installer contiene anche un modulo in Python utilizzato per estrarre e posizionare il firmware. Il pacchetto con il modulo per l'estrazione del firmware è già stato accettato nel repository Fedora, ma il posizionamento del pacchetto con l'installer è ostacolato dalla necessità di includere file eseguibili compilati per la piattaforma macOS.
Poiché l'installer è scritto in Python, per eseguirlo su macOS è necessario un interprete Python e la libreria libffi, i cui codici sorgente sono forniti sotto licenze aperte. Poiché raccogliere questi componenti per macOS a partire dai sorgenti in un ambiente Linux è problematico, gli sviluppatori di Fedora Asahi Remix hanno richiesto un'eccezione alle regole che consenta loro di includere nel pacchetto asahi-installer l'interprete Python già compilato per macOS (python-3.9.6-macos11.pkg) e la libreria libffi (libffi-3.4.6-macos.tar.gz). L'aggiunta di questi file al pacchetto con i codici sorgente dell'installer permetterà di utilizzare l'infrastruttura standard di Fedora per costruire l'installer, invece di dover scaricare componenti esterni già pronti dal progetto Asahi Linux.
Le regole di packaging per Fedora stabiliscono che tutti i file binari delle applicazioni e le librerie inclusi nei pacchetti finali debbano essere costruiti a partire dai sorgenti forniti nel pacchetto con i sorgenti. Questa richiesta è motivata dal fatto che i file binari possono contenere funzionalità nascoste o modifiche malevole, rendendo problematico verificarne il corretto funzionamento e impossibile apportare correzioni tramite patch. Inoltre, i file eseguibili binari e le librerie possono essere costruiti senza l'uso dei flag di compilazione prescritti in Fedora, che includono meccanismi di sicurezza e ottimizzazione.
Fonte: opennet.ru
