Valve опубликовала исходный код Lepton — инструмента, который позволяет запускать Android-игры в Steam на устройствах под управлением Linux. Решение создает изолированную среду Android и связывает ее со SteamOS, благодаря чему игры в формате APK можно запускать без отдельной адаптации под Linux.
В первую очередь Lepton предназначен для переноса VR-игр с автономных Android-гарнитур на Steam Frame. При этом технология может использоваться и для других Android-игр, хотя Valve не позиционирует ее как универсальный способ запуска любых приложений этой платформы.
Lepton запускает каждую игру в отдельном контейнере
В основе Lepton лежит контейнеризированная среда Android. Каждая игра запускается в собственном контейнере, что позволяет изолировать ее от основной системы.
Для работы инструмента не требуется root-доступ. При этом Android-среда использует некоторые компоненты основной операционной системы, включая графические драйверы, библиотеки Steam и необходимые компоненты Vulkan.
Такой подход позволяет не дублировать все программное окружение Android, а оставить только те элементы, которые необходимы для запуска игр. В результате Lepton может использовать системные ресурсы SteamOS непосредственно из контейнера.
Инструмент ориентирован именно на игры
Valve намеренно не включила в Android-среду Lepton полный набор компонентов, необходимых для полноценной работы обычных Android-приложений. Поэтому инструмент прежде всего рассчитан на игры.
Это особенно важно для VR-сценариев, ради которых технология и создавалась. Запуск обычных приложений Android с помощью Lepton возможен не во всех случаях и может сопровождаться различными проблемами совместимости.
Таким образом, Valve не пытается превратить SteamOS в универсальную Android-платформу. Задача Lepton значительно уже — обеспечить запуск совместимых Android-игр непосредственно через Steam.
Lepton использует разработки других проектов
При создании инструмента Valve использовала наработки нескольких открытых проектов, включая Waydroid, Anbox, Halium и Hybris.
Собственный исходный код Lepton компания опубликовала под лицензией MIT. Образ Android с компонентами сторонних проектов распространяется по лицензии GPL 3.0 с учетом соответствующих компонентов и их условий распространения.
Открытая публикация исходного кода позволит разработчикам изучать устройство инструмента и при необходимости адаптировать его под собственные задачи.
Android-игры станут частью Steam
Valve объявила о поддержке Android-игр в Steam одновременно с представлением Steam Frame. Разработчики смогут публиковать APK-файлы в магазине, а пользователи — устанавливать и запускать совместимые проекты практически так же, как обычные игры Steam.
Особенно заметным это может стать для VR-игр, которые ранее создавались преимущественно для автономных Android-гарнитур. Steam Frame позволит использовать подобные проекты в экосистеме Steam без полноценной портировки игрового движка на Linux.
При этом окончательная совместимость будет зависеть от конкретной игры и ее требований к Android-среде.
Lepton работает иначе, чем Proton
По своему назначению Lepton напоминает Proton, который Valve использует для запуска Windows-игр в SteamOS, однако технически эти решения устроены по-разному.
Proton обеспечивает совместимость с Windows за счет преобразования системных вызовов и графических API между Windows и Linux. Lepton не выполняет аналогичную трансляцию Android API. Вместо этого он запускает игру внутри изолированного контейнера с необходимыми компонентами Android.
Такой подход позволяет Valve добавить в Steam еще один способ запуска игр, не требуя от разработчиков полноценной Linux-версии. Для Steam Frame это особенно актуально, поскольку устройство сможет получить доступ к значительной библиотеке Android-игр, сохраняя при этом привычную для Steam модель установки и запуска.


