humblemuzzu / dumbtv
git clone https://github.com/humblemuzzu/dumbtv.git
launcher-v1.1 · 1d ago
—
—
stars, 24h
+948
stars, 7 days · #74
+948
stars, 30 days · #324
948
★ total · +948% this week
88
forks · 39 open issues
Star history starts 2026-10-20; the chart appears after the second daily snapshot.
LanguageJavaScript
License—
Created2026-10-18 (2d ago)
Last push1d ago
Watchers3
OwnerUser
Links
README excerpt
# dumbtv Your TV should do what you paid for: your apps, your HDMI inputs, and nothing else. No ads from the TV itself, no watch tracking, no update you did not ask for. dumbtv applies that over ADB from another machine — **no root**, nothing written to `/system`, every step reversible with one script. The same idea, told to whichever TV will listen: | TV | Debloat | Own home screen | On-device DNS filter | |---|---|---|---| | **Fire OS** (Fire TV sticks, Fire TV Edition TVs) | yes | yes | yes | | **Android TV / Google TV** (Sony, TCL, Philips, Hisense, Xiaomi, Shield) | yes | yes, by disabling the stock launcher | yes | | **Samsung, LG, Roku, VIDAA, Vizio, Panasonic, Philips Saphi** | no shell, no path | no | no — block it at the router, or boot the TV straight into HDMI | Tested end to end on a Fire TV Edition television running Fire OS 7.7.1.7 (Android 9). Fire OS 6 and 8 differ in small ways; Android TV needs a different package list and a different launcher trick. Fire OS 6 (Android 7.1, e.g. the 2018 Fire TV Stick 4K) uses its own lists in `data/fireos6/`, picked up from the device, and the launcher holds HOME there with a small foreground service instead of the accessibility hook Amazon refuses on 6.7. The ones that cannot be opened, and the honest reason for each, are in `docs/OTHER-TVS.md` — along with what we are working on to reach them. **What it will not do:** replace the operating system, unlock a bootloader, or survive a factory reset. Every current TV has a signed boot chain and a verified system partition, so there is no honest way around it. Pretending otherwise is how people brick their TVs. See `docs/WHY-NOT-REPLACE-OS.md`. ## Add your TV to the catalog At the end of a session — or any time something surprised you — record it: [code] It reads the model, OS build and kernel from the TV, then asks only what a robot cannot know: how developer mode was enabled, where the IP address was shown, which dialogs blocked automation and what dismissed each one. It writes `catalog/devices/ .yaml`, validates it, and prints the `git` / `gh` commands for a pull request. No git? `.github/ISSUE_TEMPLATE/device-report.yml` asks the same questions in a browser. That file is the part this repo cannot generate: per-model knowledge. Code is cheap; someone's evening is not. ## It asks what you want to keep Nothing is decided for you: [code] It goes through the apps this repo would remove (`data/fireos/user-apps.txt`, with readable names from `data/apps.txt`) and asks, one by one, whether to remove each. Answer "no" and that app is never touched. It also asks whether you watch Prime Video — Prime stays installed either way, but if you say yes its video CDN is left out of the blocklist so playback keeps working — and whether you want the launcher replaced and the DNS filter installed. The answers go into `dumbtv.conf` (git-ignored). Re-run it any time to change your mind; the scripts read that file, so nothing has to be edited by hand. Ads, telemet