0xProbabillity / luma-tv
git clone https://github.com/0xProbabillity/luma-tv.git
v2.1.1 · 1d ago
A calm, tvOS-inspired home screen for Android TV and Google TV. No ads, no tracking.
+45
stars, 24h · #212
+45
stars, 7 days · #989
+45
stars, 30 days · #6,553
45
★ total · +45% this week
2
forks · 0 open issues
Star history starts 2026-10-20; the chart appears after the second daily snapshot.
LanguageJava
LicenseMIT
Created2026-10-19 (1d ago)
Last push1d ago
Watchers1
OwnerUser
GitHub topics
Links
README excerpt
Luma A calm, tvOS-inspired home screen for Android TV and Google TV. Your favourite apps over living wallpapers, with no ads, no sponsored rows and no tracking. Install · Make it your home screen · Support the project Made by @0xProbabillity ## What it does Luma works on its own: it needs no smart home, account or other app. Everything below except the scene block works on any Android TV. - **A quiet Home.** A greeting, your favourite apps as large cards, and nothing you did not put there. Moving to an app shows its name and a line about it; hold OK on any app to show it on Home, move it or hide it. - **Every app, one tab away.** *Apps* lists everything installed on the TV, hidden apps included. - **Living wallpapers.** Seven of them, from a Norwegian fjord at dusk to the Milky Way. On the fjord, clouds drift and the water moves very slowly, with real depth: the sky and the mountains travel at different speeds as you move. Everything pauses while an app is open. - **Feels like a TV, not a phone.** Springy focus, cards that tilt toward the direction you move, a pill that slides along the tab bar, and soft, quiet navigation sounds. *Fluid motion* and *Navigation sounds* turn off in Settings, and Android's own animation settings are respected. - **Your smart home, if you have one.** The scene block appears only when House Control TV is installed: Home then also shows five scene buttons and a live 3D model of your home, and a scene can open an app as the lights go down (*Movie* starts Netflix). Without it, Home is just your greeting and favourites over the wallpaper, and Luma picks House Control up as soon as you install it. - **Easy to leave.** Settings → *Home screen* hands Home back to your TV's own launcher, and `./luma.sh restore` undoes everything the installer changed. Recorded on a real TV with the isolated demo home · watch the one-minute tour, with its sounds ## Requirements | | You need | | --- | --- | | TV | Android TV or Google TV, Android 8.0 or newer, with **USB / network debugging** turned on (Settings → Device Preferences → About: press *Build* 7 times, then Developer options) | | Computer | macOS or Linux with ADB (`brew install --cask android-platform-tools`) | | To build it | JDK 17, Android SDK build-tools 36.0.0 and platform `android-34`, Python 3. No Gradle | ## Install Put the computer and the TV on the same network, then connect once (the TV asks you to allow it): [code] Download `luma-tv.apk` from Releases and install it, or build and install it yourself: [code] `./luma.sh build` only builds (`dist/luma-tv.apk`). With several devices connected, choose one: `./luma.sh -s 192.168.1.50:5555 install`, or set `LUMA_DEVICE`. `./luma.sh status` shows the TV, the installed version and which app opens at Home. The build looks for the Android SDK in `$ANDROID_SDK_ROOT` (default: Homebrew's `android-commandlinetools`) and for JDK 17 in `$LUMA_JDK`. It creates a signing key in `.signing/` the first time; ke