В Fedora одобрена поставка в пакете asahi-installer исполняемых файлов для macOS

Комитет FESCo (Fedora Engineering Steering Committee), отвечающий за техническую часть разработки дистрибутива Fedora Linux, одобрил предоставление исключения из правил, дающего возможность поставлять в составе пакета с инсталлятором asahi-installer исполняемого файла и библиотеки, собранных для платформы macOS. Исключение предоставлено по просьбе разработчиков редакции Fedora Asahi Remix, предназначенной для установки на компьютеры Mac, оснащённые ARM-чипами AppleSilicon.

Вместо штатного для Fedora инсталлятора Anaconda в Fedora Asahi Remix задействован собственный инсталлятор asahi-installer. Процесс установки Fedora Asahi Remix инициируется из уже имеющейся на компьютере Mac операционной системы macOS, для чего в состав asahi-installer входит приложение, запускаемое из macOS и recoveryOS (урезанное окружение macOS). Помимо данного приложения инсталлятор также содержит модуль на языке Python, применяемый для извлечения и размещения прошивки. Пакет с модулем для распаковки прошивки уже принят в репозитории Fedora, но размещению пакета с самим инсталлятором мешает необходимость размещения в пакете исполняемых файлов, собранных для платформы macOS.

Так как инсталлятор написан на языке Python для его запуска в macOS требуется интерпретатор Python и библиотека libffi, исходные тексты которых поставляются под открытыми лицензиями. Так как собирать данные компоненты для macOS из исходных текстов в окружении Linux проблематично, разработчики Fedora Asahi Remix попросили предоставить исключение из правил, разрешающее им добавить в пакет asahi-installer уже собранный для macOS интерпретатор Python (python-3.9.6-macos11.pkg) и библиотеку libffi (libffi-3.4.6-macos.tar.gz). Добавление указанных файлов в пакет с исходными текстами инсталлятора позволит использовать штатную инфраструктуру Fedora для сборки инсталлятора, вместо загрузки готовых сторонних компонентов от проекта Asahi Linux.

Правила оформления пакетов для Fedora определяют, что все входящие в итоговые пакеты бинарные файлы программ и библиотеки должны собираться из исходных текстов, поставляемых в пакете с исходными текстами. Подобное требование обусловлено тем, что бинарные файлы могут содержать скрытую функциональность или вредоносные изменения, проблематично удостовериться в их работоспособности и невозможно внести исправления при помощи патчей. Кроме того, бинарные исполняемые файлы и библиотеки могут быть собраны без использования предписанных в Fedora флагов компиляции, включающих определённые механизмы защиты и оптимизации.

Источник: opennet.ru