Das FESCo-Komitee (Fedora Engineering Steering Committee), das für den technischen Teil der Entwicklung der Fedora-Linux-Distribution verantwortlich ist, hat die Gewährung einer Ausnahmegenehmigung genehmigt, die es ermöglicht, ausführbare Dateien und Bibliotheken, die für die macOS-Plattform gebaut wurden, im Installer-Paket asahi-installer bereitzustellen. Die Ausnahme wurde auf Antrag der Entwickler der Fedora Asahi Remix-Edition gewährt, die für die Installation auf Mac-Computern mit AppleSilicon-ARM-Chips gedacht ist.
Anstelle des standardmäßigen Fedora-Installers Anaconda wird in Fedora Asahi Remix der eigene Installer asahi-installer verwendet. Der Installationsprozess für Fedora Asahi Remix wird aus dem bereits auf dem Mac-Computer installierten Betriebssystem macOS initiiert, wofür das asahi-installer-Paket eine Anwendung enthält, die aus macOS und recoveryOS (abgespeckte macOS-Umgebung) gestartet wird. Neben dieser Anwendung enthält der Installer auch ein Modul in Python, das zum Extrahieren und Platzieren der Firmware verwendet wird. Das Paket mit dem Modul zum Entpacken der Firmware wurde bereits in das Fedora-Repository aufgenommen, aber die Bereitstellung des Pakets mit dem Installer wird durch die Notwendigkeit behindert, ausführbare Dateien, die für die macOS-Plattform erstellt wurden, im Paket unterzubringen.
Da der Installer in Python geschrieben ist, benötigt man für dessen Ausführung in macOS einen Python-Interpreter und die Bibliothek libffi, deren Quelltexte unter offenen Lizenzen bereitgestellt werden. Da es problematisch ist, diese Komponenten für macOS aus Quelltexten in einer Linux-Umgebung zu bauen, haben die Entwickler von Fedora Asahi Remix um die Gewährung einer Ausnahmegenehmigung gebeten, die es ihnen erlaubt, den bereits für macOS gebauten Python-Interpreter (python-3.9.6-macos11.pkg) und die Bibliothek libffi (libffi-3.4.6-macos.tar.gz) in das asahi-installer-Paket aufzunehmen. Die Hinzufügung dieser Dateien zum Paket mit den Quelltexten des Installers wird es ermöglichen, die Standardinfrastruktur von Fedora zum Bauen des Installers zu nutzen, anstatt vorgefertigte Komponenten von dem Asahi Linux-Projekt herunterzuladen.
Die Regeln für das Packaging in Fedora legen fest, dass alle in den endgültigen Paketen enthaltenen Binärdateien von Programmen und Bibliotheken aus den Quelltexten erstellt werden müssen, die im Quellpaket geliefert werden. Diese Anforderung ist dadurch bedingt, dass Binärdateien versteckte Funktionen oder schädliche Änderungen enthalten können, deren Funktionsfähigkeit schwer überprüfbar ist, und dass Korrekturen nicht durch Patches vorgenommen werden können. Zudem können Binär-Exekutierbare Dateien und Bibliotheken ohne die in Fedora vorgeschriebenen Compiler-Flags erstellt werden, die bestimmte Schutz- und Optimierungsmechanismen umfassen.
Quelle: opennet.ru
