764af371b9e7f082e9a3d5b3aba434d0dca0d6e4
Implement the full Home Assistant tab with room-based navigation and glass-morphism card rendering: - Toggle card: on/off for lights, switches, covers with state indicator - Range card: dimmable lights with brightness bar and D-pad ±10% control - Climate card: current/target temp, HVAC mode, D-pad ±0.5°C, sparkline - Action card: one-shot activation for scenes and scripts - Vacuum card: summary card that opens room selection modal - Weather card: hero card with condition icon, temp, humidity, wind Navigation: room tabs (horizontal pills), card grid (3-col), vacuum modal with room multi-select, cleaning mode cycle, and start button. Back button cascades: vacuum modal → card grid → room tabs → Home page. Glass design: rgba(255,255,255,0.12) fill, 22px radius, 1px border at 0.15 opacity, elevated shadow on focus. Accent color #7EB8DA for active entities, warm orange for heating, cool blue for cooling. Wires Effect::Ha to dispatch toggle/brightness/temperature/scene/vacuum service calls through ha_client. Adds 6 new SVG icons matching the existing Lucide stroke style. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Luma Home
Fork of Luma — a native launcher for rooted LG webOS TVs — with a Home Assistant integration tab and webOS 5/6 Home button support.
What's different from upstream
- Home Assistant tab — a fourth nav tab ("Home") with glass cards for controlling HA entities (lights, climate, scenes, vacuum, etc.) directly from the TV remote
- webOS 5/6 Home trampoline — bind-mount overlay that redirects the Home button to Luma on older webOS versions (see
trampoline/) - Settings app theme — transparent overlay for the webOS Settings app (see
settings-theme/)
Structure
| Directory | What |
|---|---|
src/ |
Rust source (SDL2 + OpenGL ES 2 renderer) |
assets/ |
Generated artwork, fonts, wallpapers |
ha-home/ |
HA tab config schema and default config |
trampoline/ |
webOS 5/6 Home button redirect (boot hook, watcher, overlay) |
settings-theme/ |
Transparent Settings app theme |
Building
See development.md for the full build guide. Quick summary:
nix develop # enter the dev shell with cross-compilation toolchain
pnpm install # install JS tooling for asset generation
pnpm assets # generate native artwork
cargo build --release --features webos --target armv7-unknown-linux-gnueabi
Target TV
- LG 65NANO813PA, webOS 6.5.3-47
- Rooted via Homebrew Channel v0.7.3
- Luma installed as
com.ecklf.luma
License
Upstream Luma is MIT licensed. See license file.