# Sony BRAVIA VU1 (KD-43X7500H, KD-65X750H, product BRAVIA_VU1_UC, Realtek SoC), 2 GB RAM, armeabi-v7a # Android TV 11 (API 30, classic Android TV, not Google TV), build RTT7.210105.001/366.60436 # # Apply: TV_HOST= tools/disable.sh examples/sony-bravia-vu1/debloat.txt # Undo: TV_HOST= tools/restore.sh examples/sony-bravia-vu1/debloat.txt com.google.android.tvlauncher # Everything is DISABLED, not uninstalled. Comment out any line you want to keep. # # History: the same set was first removed with `pm uninstall --user 0` on 2026-10-18 and lived with for seven # days (several reboots; Home, Inputs, Settings, Netflix and YouTube fine; no crashes seen apart from the one below). # On 2026-10-25 the packages were re-enabled and this file was applied with tools/disable.sh: # all 19 stayed disabled after a reboot, `tools/check.py` reported "nothing drifted", Home, Settings and the # 21 HDMI/AV input entries were fine. One boot earlier in the run logged a crash in two Realtek vendor # services (exTv HAL, com.realtek.tv.atv); both respawned and nothing was visibly wrong. # # Stock launcher: com.google.android.tvlauncher (classic Android TV; recommendations rows with sponsored # tiles). cmd package set-home-activity printed Success and changed nothing: the stock launcher outranks any # other HOME app, so it has to be disabled for a new launcher to get Home (FLauncher, me.efesser.flauncher, was # used). The run above removed it with uninstall rather than disable-user; the second unit below disabled it with # disable-user. It is the last line: disable it last, after the new launcher answers HOME. # Tuner / inputs on this Realtek set are com.realtek.dtv, com.realtek.tv.atv and com.android.tv (Live # Channels): keep them, plus the com.sony.dtv.* services (sonysystemservice, smartui = Input menu, ipcontrol, # remotecontrolsettings, timers) and all com.realtek.* overlays. # # Kept on purpose: Chromecast built-in (com.google.android.apps.mediashell). Measured on this set after a fresh # boot and 2 minutes idle: about 31 MB PSS (109 MB RSS, mostly shared pages), +16 MB used RAM, and # `am force-stop` leaves it stopped (no respawn after 65 s) until the next boot. # # Gotchas from the run: # - Wait at least 15 s after the last `pm` command, and run `adb shell sync`, before rebooting. Eight changes # made right before a reboot were lost (package state is written lazily). # - Before disabling setupwraith check `dumpsys wifi | grep -o 'cname=[^ ]*'`. Here the saved networks belong # to android.uid.system and com.google.uid.shared, so Wi-Fi and ADB stayed up. # - While setupwraith is enabled its .MainActivity answers HOME; it takes Home from a third-party launcher # until it is disabled. # - Not tested: the remote's mic button after katniss goes (it also needs com.google.android.tv.remote.service, # kept), and Google Home Mini voice control of the TV. # # Second unit (same product BRAVIA_VU1_UC and build 366.60436, 2026-10-26): every line applied unchanged with # tools/disable.sh in three batches, tvrecommendations before the launcher. Then launcher/build-and-install.sh # installed com.gathin.tvhome and disabled the stock launcher with `pm disable-user` (not uninstall): # Home resolved to the new launcher, and after a reboot all packages were still disabled and the TV started # straight into it (not Live TV). So the last line is now active. # - setupwraith was left ENABLED on this unit, and it did not claim HOME once tvlauncher was disabled # (query-activities listed only com.gathin.tvhome and the two FallbackHome activities), and phone casting still # worked after two days. Owners who cast from a phone can comment its line out; see README.md in this folder. # - Live TV: com.android.tv has no leanback launch entry here, so the launcher's Inputs menu needs # live_tv_package com.realtek.tv.atv (the stock "TV" tile); config.json in this folder sets it. # - Remote: Input and the settings button are vendor keys (EV_KEY 0x225, 0x254) handled by the firmware. They # kept working with the stock launcher disabled and no key helper enabled, and holding Volume still ramps. # # Third unit (KD-65X750H, US/Canada, same product BRAVIA_VU1_UC and build 366.60436, on Ethernet, 2026-10-22): # a subset of this list plus four more, applied with tools/disable.sh in three batches with a screenshot and # crash-log check after each, then launcher/build-and-install.sh, then a reboot. Lived with for 8 days, nothing # re-enabled. It kept Assistant (katniss), the Ambient screensaver (backdrop), TTS, tvrecommendations, # setupwraith, providers.calendar, gallery3d, htmlviewer and livepicker, and added play.games and the Sony # auto-installs config (below) plus YouTube Music and Disney+ (commented out, owner's choice). # - setupwraith again claimed no HOME with tvlauncher disabled; it owns one saved Wi-Fi network on this unit, so # check the cname before disabling it on a set that uses Wi-Fi. # - Remote: Netflix, YouTube, Prime Video, Input and the mic button were pressed on the real remote with the # stock launcher disabled and katniss kept: all work, no key helper. `dumpsys window policy` routes no key to # tvlauncher. The Help key goes to com.sony.dtv.smarthelp, so it does nothing once that line is applied. # - HDMI rows in the launcher's Inputs menu open an "Open with: TV / TV" chooser: com.android.tv and # com.realtek.tv.atv both answer the passthrough URI, and "Always" is never applied. Either choice plays the # input; the Input key goes through smartui and has no chooser. # Sony demo and help com.sony.dtv.demo # retail demo mode com.sony.dtv.smarthelp # Sony help tile com.sony.dtv.helpguidecontents # on-screen manual (IManual) # Google leftovers a TV never needs com.google.android.feedback # Google feedback reporter com.google.android.partnersetup # RLZ install-attribution provider com.google.android.onetimeinitializer # runs once after first setup com.google.android.syncadapters.calendar # calendar sync com.android.providers.calendar # calendar storage (calendar is one of the allowed providers) com.android.printspooler # printing com.android.camera2 # the set has no camera com.android.gallery3d # legacy photo viewer com.android.htmlviewer # local HTML viewer com.android.wallpaper.livepicker # live wallpaper picker com.google.android.play.games # Play Games (third unit, 8 days) android.autoinstalls.config.Sony.BRAVIA_VU1 # Play partner auto-installs (third unit, 8 days) # Off by choice (owner does not use them) com.google.android.videos # Play Movies & TV com.google.android.tts # Google text-to-speech; ~227 MB RSS at baseline; the TalkBack screen reader has no voice without it com.google.android.backdrop # Ambient screensaver, ~108 MB RSS at baseline com.google.android.katniss # Assistant / voice search, ~110-125 MB RSS at baseline; the remote's mic stops # com.google.android.youtube.tvmusic # YouTube Music: the third unit's owner disabled it (8 days) # com.disney.disneyplus # Disney+: the third unit's owner disabled it (8 days) # Launcher handover: install the replacement launcher first and confirm Home, then disable these com.google.android.tvrecommendations # launcher recommendations rows; the SHIELD phone remote also stops without it com.google.android.tungsten.setupwraith # setup wizard; its .MainActivity answers HOME on the first unit (see the Wi-Fi owner check above); also costs phone casting after a reboot (the Cast receiver reads its credentials from setupwraith); the second unit kept it # com.google.android.tvlauncher # stock launcher: launcher/build-and-install.sh disables it with disable-user after the new launcher owns Home (second unit, reboot-checked); do not disable it by hand first