FESCo-kommittén (Fedora Engineering Steering Committee), som ansvarar för den tekniska delen av utvecklingen av Fedora Linux-distributionen, godkÀnde att ge ett undantag frÄn reglerna som tillÄter leverans av exekverbara filer och bibliotek som Àr kompileringar för macOS-plattformen i paketet med asahi-installer. Undantaget beviljades pÄ begÀran av utvecklarna av Fedora Asahi Remix, som Àr avsedd för installation pÄ Mac-datorer utrustade med Apples ARM-chips, Apple Silicon.
IstÀllet för den vanliga installeraren Anaconda för Fedora anvÀnds en egen installerare, asahi-installer, i Fedora Asahi Remix. Installationsprocessen för Fedora Asahi Remix initieras frÄn det redan befintliga operativsystemet macOS pÄ Mac-datorn, vilket innebÀr att asahi-installer inkluderar en applikation som startas frÄn macOS och recoveryOS (en avskuren version av macOS). Förutom denna applikation innehÄller installeraren ocksÄ en modul pÄ Python-sprÄket som anvÀnds för att extrahera och placera firmware. Paketet med modulen för avpackning av firmware har redan godkÀnts i Fedora-repositoriet, men placeringen av paketet med selve installeraren hindras av behovet av att inkludera exekverbara filer som Àr kompileringar för macOS-plattformen.
Eftersom installeraren Àr skriven i Python krÀver dess körning i macOS en Python-tolk och libffi-biblioteket, vars kÀllkod levereras under öppna licenser. Eftersom det Àr problematiskt att kompilera dessa komponenter för macOS frÄn kÀllkoder i en Linux-miljö, bad utvecklarna av Fedora Asahi Remix om ett undantag frÄn reglerna som tillÄter dem att lÀgga till en redan komplierad Python-tolk (python-3.9.6-macos11.pkg) och libffi-biblioteket (libffi-3.4.6-macos.tar.gz) i asahi-installer-paketet. Att lÀgga till dessa filer i paketet med installerarens kÀllkod möjliggör anvÀndning av Fedora's standardinfrastruktur för kompilering av installeraren, istÀllet för att ladda ner fÀrdiga tredjeparts komponenter frÄn Asahi Linux-projektet.
Reglerna för paketering i Fedora faststÀller att alla binÀra filer och bibliotek som ingÄr i de slutliga paketen mÄste kompileras frÄn kÀllkoden som följer med paketen med kÀllkoden. Detta krav beror pÄ att binÀra filer kan innehÄlla dolda funktioner eller skadliga Àndringar, det Àr problematiskt att sÀkerstÀlla deras funktionalitet och det Àr omöjligt att göra korrigeringar med hjÀlp av patchar. Dessutom kan binÀra körbara filer och bibliotek kompileras utan att anvÀnda de kommandon som anges i Fedora, vilka inkluderar vissa skydds- och optimeringsmekanismer.
KĂ€lla: opennet.ru
