Lepton: la apertura de una pieza clave para la compatibilidad de Android en SteamOS

Lepton

Valve ha dado un paso importante para hacer más transparente una de las piezas de software que ha creado para su nuevo ecosistema basado en SteamOS. La compañía ha publicado el código fuente de Lepton, la capa de compatibilidad que permite ejecutar juegos diseñados para Android sobre Linux y que forma parte de la infraestructura utilizada por Steam Frame.

La publicación resulta especialmente interesante porque Lepton no es simplemente una herramienta interna cerrada de Valve. La compañía ha puesto el proyecto a disposición de desarrolladores y usuarios en su propio GitLab, permitiendo estudiar cómo funciona y cómo se construye esta integración entre Android y Linux. Valve no ha realizado, eso sí, un gran anuncio sobre la apertura del proyecto, que ha pasado inicialmente bastante desapercibida.

Valve abre una pieza clave de su compatibilidad con Android

Según la documentación de Valve, Lepton es una herramienta utilizada por el cliente de Steam para ejecutar juegos exclusivos de Android en Linux. El sistema utiliza un contenedor para proporcionar el entorno Android necesario sin convertirlo en una máquina virtual convencional y con el objetivo de reducir al mínimo la sobrecarga.

La apertura del código encaja con la estrategia que Valve lleva años siguiendo con otras capas de compatibilidad de SteamOS. Proton permitió ejecutar juegos de Windows sobre Linux y FEX permite traducir aplicaciones x86 para ejecutarlas en procesadores ARM64. Lepton ocupa ahora un espacio diferente: permite aprovechar versiones Android de determinados juegos en un sistema Linux.

El objetivo principal es facilitar que los desarrolladores puedan llevar sus juegos Android, especialmente títulos de realidad virtual, a Steam Frame sin tener que crear desde cero otra versión completamente independiente. La propia documentación de Steamworks explica que Steam Frame utiliza un Snapdragon 8 Gen 3 con arquitectura ARM64 y SteamOS, por lo que estas capas permiten aprovechar software creado originalmente para otros sistemas.

No todo Lepton utiliza la misma licencia

Uno de los detalles más interesantes de la publicación es que no existe una única licencia para absolutamente todo el contenido del repositorio. Valve ha separado el proyecto en diferentes componentes y sus condiciones de distribución dependen de qué parte estemos utilizando.

La herramienta de compatibilidad propiamente dicha, denominada compat_tool, está publicada bajo la licencia MIT. Es el componente que utiliza Steam para poner en marcha los juegos dentro del contenedor y proporciona la infraestructura necesaria para gestionar las diferentes instancias.

La imagen raíz de Android tiene, en cambio, licencia GPL-3.0. Esto está relacionado con los diferentes proyectos de código abierto que forman parte de ella. Entre las tecnologías utilizadas aparecen Waydroid, LineageOS, AOSP y otros componentes procedentes del ecosistema Android sobre Linux.

Lepton se apoya en otros proyectos de código abierto

Valve no ha construido todo el entorno Android desde cero. El proyecto reutiliza y modifica componentes existentes para crear una solución adaptada a sus necesidades. Waydroid constituye una de las bases más importantes, ya que proporciona la infraestructura para ejecutar Android dentro de un contenedor Linux.

También aparecen componentes de LineageOS y del Android Open Source Project, además de código y modificaciones procedentes de otros proyectos como Anbox, Halium, Hybris y Boringdroid. La publicación del código permite precisamente comprobar cómo Valve ha combinado estas piezas para construir su propia solución.

Además, Lepton toma algunas decisiones de diseño específicas. El sistema funciona sin necesidad de ejecutar el entorno Android como root y está pensado para que cada juego pueda disponer de su propio contenedor. Al iniciar una aplicación, también puede desactivar servicios de Android que no sean necesarios para reducir recursos utilizados durante la ejecución.

¿Puede utilizarse fuera de Steam Frame?

Aquí conviene diferenciar entre que el código sea abierto y que Valve esté ofreciendo una solución preparada para cualquier distribución Linux. Lepton está pensado principalmente para Steam Frame y la propia documentación del proyecto advierte de que otros usos son posibles, pero no fueron el objetivo principal durante su desarrollo y pueden presentar aspectos todavía poco pulidos.

Por tanto, la publicación no significa que Valve haya convertido Lepton en una alternativa general a Waydroid para ejecutar cualquier aplicación Android en cualquier PC con Linux. Sí proporciona, en cambio, una base técnica que puede ser estudiada, modificada y reutilizada por la comunidad dentro de las condiciones de sus respectivas licencias.

La decisión también refuerza una característica cada vez más visible del software que rodea a SteamOS. Valve mantiene cerradas determinadas piezas de su ecosistema, pero al mismo tiempo publica componentes fundamentales como Proton y otras herramientas de compatibilidad. Con Lepton, la compañía vuelve a apostar por que una parte importante de la tecnología que permite ampliar el catálogo disponible en sus dispositivos pueda ser examinada directamente por los desarrolladores.

Para la comunidad Linux, la apertura de Lepton puede ser incluso más interesante a largo plazo que su función concreta en Steam Frame. Ahora existe una referencia pública de cómo Valve resuelve la ejecución de Android dentro de Linux, y los desarrolladores pueden estudiar esa implementación en lugar de depender únicamente de lo que la compañía decida documentar.

from Linux Adictos https://ift.tt/PWEmyTj
via IFTTT