Making the hall TV mine A TCL "Smart TV Pro" running Google TV was stripped of manufacturer ads and telemetry in about two hours using the open-source CleanYourTV package list for the TCL G03 board, driven by Claude Code, which disabled 25 packages without uninstalling anything. The owner then swapped in a small open-source launcher with no internet access, added a time-of-day wallpaper order that switches among four Lake Tahoe frames at 06, 10, 17 and 21 hours, and built jqssun/android-airplay-server on top of UxPlay for the TV's 32-bit ARM chip, patching it with 25 lines so the receiver appears as "Hall TV" and comes forward only when an iPhone actually plays. Making the hall TV mine tldrStripping the ads and telemetry off a TCL Google TV, giving it a calm home screen whose wallpaper follows the clock, and building an AirPlay receiver that doesn't need opening first. The living room TV is a TCL “Smart TV Pro” on Google TV, and its home screen had stopped being ours: mostly ads, plus rows of things nobody had asked for. One evening I took it back. It took about two hours, plus a little polish the next morning. The cleanup If you’ve seen CleanYourTV https://github.com/Gathin23/cleanyourtv go round this week, you know the recipe: turn on network debugging, let a coding assistant disable the manufacturer’s telemetry, ad rows and auto-installers over Wi-Fi, and swap the home screen for a small open-source launcher. I did exactly that with Claude Code, using the repo’s list for the TCL G03 board. It disabled 25 packages and uninstalled nothing. We went slowly: a full backup first, then five small batches, checking the home screen, inputs and Settings after each one, with an undo record per batch. None was needed. The new launcher doesn’t even ask for internet access, so it can’t phone home. Two TCL gotchas: - The setup wizard can own your Wi-Fi. Disabling setupwraith deletes the network it saved during first setup and drops the TV off Wi-Fi. Forget and re-join the network in Settings first. - The remote’s app buttons only talk to Google’s home screen. Read the codes with getevent -lt and map them in the launcher’s theme app keys , gear on 4077 . The look Font. Fonts aren’t themeable in the launcher, so I rendered a handful of open-licence faces from Google Fonts https://github.com/google/fonts over the real wallpaper and picked by eye. Josefin Sans won, as a one-file swap of res/font/outfit.ttf and a rebuild. Wallpaper that follows the clock. I wanted one scene in four lights that changes with the time of day: Lake Tahoe from Apple’s macOS Tahoe wallpaper, in the dawn, day, dusk and night frames Basic Apple Guy https://basicappleguy.com/basicappleblog/dynamic-tahoe-wallpapers pulled out of it. The launcher could only shuffle or cycle wallpapers, so Claude Code added a time of day order. Each file name starts with the hour it takes over 06-dawn , 10-day , 17-dusk , 21-night , and once a minute the launcher shows the latest one that has started, wrapping back to night before 6 a.m. Two new theme keys also made the focused app’s name bigger and lifted it into the sky above the mountains. To test it, we set the TV’s clock to different times and checked the screen. Every slot came up right, greeting included. AirPlay We’re an iPhone house, and the TV has no AirPlay. The free app we used only worked if someone found the remote and opened it first, and by then whoever had the phone had usually given up. So I built jqssun/android-airplay-server https://github.com/jqssun/android-airplay-server , an open-source receiver on top of UxPlay https://github.com/FDH2/UxPlay , from source for the TV’s 32-bit ARM chip. It starts at boot and shows up on every phone as “Hall TV”. Out of the box it jumped to the front whenever any iPhone nearby so much as listed AirPlay screens, and then stayed there. A 25-line patch makes it come forward only when something actually plays, and step back when the stream ends. Built with CleanYourTV https://github.com/Gathin23/cleanyourtv , android-airplay-server https://github.com/jqssun/android-airplay-server and Claude Code.