Cobalt: plataforma de aplicaciones y SDK para los lectores Kobo

Fuentes: Cobalt: apps and an SDK for Kobo e-readers

Cobalt es una plataforma de código abierto para los lectores electrónicos Kobo que combina un launcher, una tienda de aplicaciones firmada, un SDK en Rust y un entorno de ejecución en el que cada aplicación corre en su propio proceso sin privilegios. La instalación inicial se realiza una sola vez por USB; a partir de ahí, las apps se instalan, actualizan y eliminan a través de Wi-Fi desde el propio dispositivo. Un reinicio devuelve al lector a la interfaz original de Kobo.

Cada aplicación es un binario estático para ARM que se ejecuta como proceso independiente sobre el hardware estándar. La tienda descarga los paquetes desde una release firmada en GitHub, compuesta por un ejecutable ARM y un manifiesto canónico también firmado. Antes de lanzar una app, el sistema verifica la firma del catálogo, del paquete, del manifiesto instalado y del binario. Las actualizaciones de las apps son independientes de las actualizaciones de la plataforma: fusionar un pull request compila la app para ARM, la firma y actualiza el catálogo sin necesidad de nuevas versiones de Cobalt.

El SDK permite declarar pantallas de forma descriptiva mientras el runtime se encarga del diseño, la planificación del refresco de tinta electrónica, la navegación hacia atrás y el ciclo de vida. Las apps no acceden directamente a los recursos del dispositivo: lo solicitan mediante capacidades, y las que se rechazan se devuelven como valores que la app puede manejar.

En seguridad, Cobalt no reemplaza la cadena de arranque de Kobo y un reinicio restaura el lector original. Solo el perfil del Kobo Clara BW ha sido probado en hardware; el proyecto es independiente y no está afiliado a Rakuten Kobo.