Brifing

Kobo e-readers can now run apps with Cobalt platform

Open-source application platform expands Kobo device functionality

Hacker News2 min

1Overview of Cobalt Platform

Cobalt is an open-source application platform developed for Kobo e-readers. It includes a launcher, signed app store, Rust SDK, and a runtime that runs each app in its own unprivileged process. Initial installation is done via USB, after which all apps are managed over Wi-Fi. The system offers a reboot feature to return users to the original Kobo reader interface when needed.

2App Security and Architecture

Each app runs as a static ARM binary in its own unprivileged process. The App Store handles installation, updates, and removal of apps over Wi-Fi, with all signatures verified before launch. Device resource access is capability-based - apps must request permissions for features like network, storage, audio, frontlight, and Wi-Fi connectivity.

3ArXiv App and Academic Content

The arXiv app on the platform can read HTML renders of all academic papers published since December 2023. It displays abstracts, sections, mathematical expressions, and result tables with e-ink friendly pagination. This functionality provides significant value for academics and researchers using Kobo devices.

4App Store and Distribution Model

The App Store reads a signed catalog from a fixed GitHub release. Each package contains an ARM executable and a signed manifest. The runtime verifies the catalog, package, installed manifest, and binary before any app runs. App versions can be updated independently of platform versions.

5Developer Experience and SDK

Cobalt provides an SDK for Rust programming language. Developers implement the KoboApp trait to create applications. The SDK automatically handles core functionalities like e-ink refresh planning, back navigation, and lifecycle management. The UI toolkit offers panel-optimized controls, layouts, typography, and states.

6Community Contributions and Device Support

App contributions are made through standard pull requests. PRs demonstrating working apps on devices get merged and published. Support for different Kobo models is encouraged, but requires opening an issue first to agree on device profiles. Currently, only Clara BW model has passed hardware testing.

7Update and Recovery Mechanism

The Cobalt platform itself updates over Wi-Fi through a channel separate from the app catalog. Installation and catalog transactions are interruption-resistant - a failed update rolls back to the previous version. The USB cable is only required for initial setup.

8Platform Future and Potential

Cobalt significantly expands Kobo e-reader functionality. Though developed as an independent project, it has potential to set new standards in the e-reader market. It stands out with academic content access, personal library management, and developer-friendly architecture. Users are advised to only install on hardware-tested models.

Original article: Hacker News — Kobo e-okuyucular artık uygulama çalıştırabiliyor