Darling: запуск macOS-приложений на Linux по образцу Wine

· Linux и open source
Проект Darling предлагает слой совместимости, позволяющий выполнять программы для macOS прямо в Linux — без аппаратной эмуляции и без нарушения лицензии Apple.

cover.svg

Проект Darling решает для мира macOS ту же задачу, что Wine решает для Windows: он даёт возможность запускать программы, написанные под чужую операционную систему, прямо в Linux. Название складывается из слов «Darwin» и «Linux» — Darwin как раз и является тем ядром, на котором построены macOS и iOS.

Авторы подчёркивают, что Darling — не эмулятор: программы исполняются напрямую, без виртуализации оборудования, что сказывается на скорости. Внутри реализована полноценная среда Darwin со всеми привычными компонентами — Mach, dyld, launchd. Настройку окружения система в основном берёт на себя, так что пользователю остаётся лишь запустить нужное приложение.

Свободное ПО и вопрос лицензии

Darling распространяется под лицензией GNU GPL версии 3 и разрабатывается открыто на GitHub. Проект во многом опирается на исходный код Darwin, который Apple публикует как свободное ПО, а также использует наработки сторонних проектов: The Cocotron лёг в основу реализации Cocoa, к нему добавлены Apportable Foundation и фрагменты GNUstep.

Отдельно авторы отвечают на закономерный вопрос о нарушении пользовательского соглашения Apple. По их словам, нарушения нет: напрямую задействуются только те части Darwin, что выпущены как полностью свободное программное обеспечение.

Что уже работает, а что нет

Амбиция разработчиков — интегрировать запускаемые под Darling программы в рабочий стол Linux настолько, чтобы они выглядели и вели себя как родные приложения. С графическими программами дело обстоит скромнее: после долгих усилий появилась лишь базовая экспериментальная поддержка простых GUI-приложений. Формулировка «почти» здесь звучит честнее любых обещаний.

Запустить Darling можно и на Windows — через WSL 2; подробности авторы отсылают искать в документации.

В долгосрочных планах — поддержка iOS-приложений на ARM-устройствах, включая большинство Android-смартфонов. Главным препятствием разработчики называют необходимость написать собственную реализацию UIKit, и здесь они открыто зовут на помощь всех желающих. Присоединиться к проекту, как утверждается, можно и без опыта разработки под macOS или iOS — достаточно начать с документации и блога.


Источник: Hacker News

Комментарии

Войдите, чтобы комментировать.

  • Пока нет комментариев.