Explainer

A 45KB launcher asks how much software a television really needs

The dumbtv project changes the launcher and background package state on supported televisions, leaving the signed operating system and hardware in place.
Illustrative television photograph; this set is not identified as a tested dumbtv device.

Illustrative image: Jonas Leupe on Unsplash

The display panel is still good. The HDMI inputs still work. It is the journey through the home screen that has become an ordeal. The open-source dumbtv project tackles that part of a television by replacing its launcher and changing which background packages are allowed to run.

Its own home screen is a Java application described as 45KB, with no external libraries. On supported Fire OS 7 and 8 systems it requests no permissions. The project presents apps, HDMI inputs and a clock without the promotional rows of the original launcher. That small application file is the eye-catching number, although it says little by itself about the memory consumed by a running television.

The mechanism is Android Debug Bridge, or ADB. Google’s development tool allows another computer to communicate with the device and issue shell and package-management commands. A package can be disabled for a user without removing the protected system image. In the same way, changing the application that receives a home-screen action does not require replacing every software layer beneath it.

That distinction explains how the project can make a substantial visible change without installing a new operating system. Android Verified Boot protects a chain of software authenticity and integrity from startup onwards. User-level package settings and installed applications occupy a different part of the system from the signed partitions it checks. The project works within those boundaries rather than providing a general bootloader-unlocking method.

Compatibility is tied to those boundaries too. The project reports end-to-end testing on a Fire TV Edition set running Fire OS 7.7.1.7. Other versions require different handling. A package list is specific knowledge about the software on a particular device, not a universal set of unwanted processes that can safely be applied to every television.

Restoration deserves the same precision. The project snapshots settings and package state, but an ordinary app deleted from the data partition may need to be downloaded again. A settings snapshot is not a complete backup of installed software and its data. Its changes to update-related services also affect how the device receives vendor updates.

The 45KB download and the television’s response to a remote describe different parts of the system. The first is an application’s stored size; responsiveness also depends on the code running around it, available memory and the work triggered by each action. Simplifying the launcher and disabling background packages change that software workload while leaving the panel, processor and memory in place. TEB has not measured a before-and-after performance result.

Sources: 1 · 2 · 3

Continue reading