FESCo (Fedora Engineering Steering Committee), som er ansvarlig for den tekniske del af udviklingen af Fedora Linux-distributionen, har godkendt at give et undtagelse fra reglerne, der muliggør at inkludere en eksekverbar fil og biblioteker, der er bygget til macOS, i pakken med asahi-installer. Undtagelsen er givet på anmodning fra udviklerne af Fedora Asahi Remix-redaktionen, der er designet til installation på Mac-computere udstyret med Apple Silicon ARM-chips.
I stedet for den almindelige Fedora-installationsprogram Anaconda anvender Fedora Asahi Remix sit eget installationsprogram, asahi-installer. Installationsprocessen for Fedora Asahi Remix startes fra den allerede eksisterende macOS-operativsystem på Mac-computeren, hvilket gør det muligt for asahi-installer at inkludere en app, der kan startes fra macOS og recoveryOS (et beskåret macOS-miljø). Udover denne app indeholder installationsprogrammet også en Python-modul, der bruges til at udtrække og placere firmwaren. Pakken med modulet til udpakning af firmwaren er allerede blevet accepteret i Fedora-repositoriet, men placeringen af pakken med selve installationsprogrammet hindres af behovet for at inkludere eksekverbare filer, der er bygget til macOS.
Da installationsprogrammet er skrevet i Python, kræver det en Python-fortolker og libffi-biblioteket for at køre i macOS, hvis kildekoder leveres under åbne licenser. Da det er problematisk at bygge disse komponenter for macOS fra kildekoder i et Linux-miljø, har udviklerne af Fedora Asahi Remix bedt om at få en undtagelse fra reglerne, der tillader dem at tilføje en allerede bygget Python-fortolker (python-3.9.6-macos11.pkg) og libffi (libffi-3.4.6-macos.tar.gz) til asahi-installer-pakken. Tilføjelsen af de nævnte filer til pakken med kildekoderne til installationsprogrammet vil muliggøre brugen af den normale Fedora-infrastruktur til at bygge installationsprogrammet, i stedet for at skulle hente færdige tredjeparts komponenter fra Asahi Linux-projektet.
Reglerne for pakkeoprettelse i Fedora bestemmer, at alle binære filer og biblioteker, der indgår i de endelige pakker, skal samles fra kildekoder, der leveres i pakken med kildekoder. Dette krav skyldes, at binære filer kan indeholde skjult funktionalitet eller skadelige ændringer, hvilket gør det problematisk at bekræfte deres funktionalitet og umuligt at foretage rettelser ved hjælp af patches. Desuden kan binære udførelsesfiler og biblioteker være samlet uden anvendelse af de foreskrevne kompilationsflagg i Fedora, der inkluderer bestemte beskyttelses- og optimeringsmekanismer.
Kilde: opennet.ru
