{"content":"Command: cd /Users/nickchen/WorkBuddy/2026-10-23-15-17-57/cleanyourtv && sed -n '1,80p' launcher/app/src/main/res/values/config.xml\nStdout: <?xml version=\"1.0\" encoding=\"utf-8\"?>\r\n<!--\r\n  Launcher configuration. Edit this file, then run launcher/build-and-install.sh.\r\n  Or leave it and push a theme instead: tools/theme.sh themes/<name> puts a config.json (same keys, see\r\n  themes/README.md) and an optional wallpaper on the TV, and the launcher overlays it at start.\r\n  Package names: on the TV run `pm list packages` (tools/tv.py 'pm list packages').\r\n-->\r\n<resources>\r\n\r\n    <!-- Tried in order when no standard settings handler is usable; each package must also be visible\r\n         through <queries> in the manifest. -->\r\n    <string-array name=\"settings_fallback_components\" translatable=\"false\">\r\n        <item>com.xiaomi.mitv.settings/com.xiaomi.mitv.settings.entry.MainActivity</item>\r\n        <item>com.tcl.settings/com.tcl.settings.ui.MainActivity</item>\r\n        <item>com.amazon.tv.launcher/com.amazon.tv.launcher.ui.MainSettingsActivity</item>\r\n    </string-array>\r\n\r\n    <!-- Apps pinned to the dock row at the bottom, in this order. Missing apps are skipped. -->\r\n    <string-array name=\"dock_apps\">\r\n        <item>com.netflix.ninja</item>\r\n        <item>com.amazon.amazonvideo.livingroom</item>\r\n        <item>com.google.android.youtube.tv</item>\r\n        <item>in.startv.hotstar</item>\r\n    </string-array>\r\n    <!-- With fewer dock_apps than columns (or a dock app that is not installed), the free dock slots take\r\n         the first grid apps, so the dock never shows a gap. false leaves them empty (#162); a theme can\r\n         set \"fill_dock\": false. -->\r\n    <bool name=\"fill_dock\">true</bool>\r\n\r\n    <!-- Apps never shown as tiles (e.g. the Live TV app, which the Inputs menu already covers). -->\r\n    <string-array name=\"hidden_apps\">\r\n        <item>com.mediatek.wwtv.tvcenter</item>\r\n        <item>com.mitv.gallery</item>\r\n    </string-array>\r\n\r\n    <!-- The TV's Live TV / tuner app, offered at the end of the Inputs menu. Leave empty to omit. -->\r\n    <string name=\"live_tv_package\" translatable=\"false\">com.mediatek.wwtv.tvcenter</string>\r\n\r\n    <!-- Open the Live TV app above the first time Home comes up after the TV is switched on, for sets that are\r\n         mostly used for broadcast TV. Once per boot: Home after that stays Home. Can also be set with\r\n         \"boot_to_live_tv\": true in a theme's config.json. -->\r\n    <bool name=\"boot_to_live_tv\">false</bool>\r\n\r\n    <!-- Local fork: an input opened on the first Home after the TV starts and after every wake-up while Home is\r\n         in front, for a set that is only ever used through a set-top box. A full input id, or its \"HW<n>\" tail\r\n         (opens as a mapped input_sources port, so a port the firmware never registers still works). Home after\r\n         that stays Home: press HOME to get it back. Empty (off) by default. -->\r\n    <string name=\"boot_input\" translatable=\"false\">HW5</string>\r\n\r\n    <!-- Some TVs give their Live TV app no leanback entry point at all, so `live_tv_package` above\r\n         resolves to nothing (TCL Android TV 9 on China-market sets is one). This action is then sent\r\n         to that package instead, and the app starts normally. Leave empty to omit. -->\r\n    <string name=\"live_tv_action\" translatable=\"false\"></string>\r\n\r\n    <!-- Optional exact system tuner ID for the Inputs menu's Live TV row, e.g. the DVB-S input on\r\n         a TV with separate antenna, cable and satellite tuners. It opens that input's channel\r\n         collection, restricted to live_tv_package. Empty keeps automatic selection and its existing\r\n         OEM passthrough route. If the ID is absent or the app cannot handle the collection, open\r\n         the Live TV app normally instead of selecting a different input. See docs/devices/haam-r4.md. -->\r\n    <string name=\"live_tv_input_id\" translatable=\"false\"></string>\r\n\r\n    <!-- Tiles that open a screen of the app instead of its start screen: \"package=action\", sent to that package.\r\n         A tile whose action no longer resolves opens the app normally. MagentaTV's program guide:\r\n         com.telekom.onetv.tv.pl=com.telekom.onetv.tv.pl.action.PROGRAM_GUIDE. -->\r\n    <string-array name=\"launch_actions\">\r\n    </string-array>\r\n\r\n    <!-- A tile's name instead of the app's own: \"package=Name\". It also shows above the dock. -->\r\n    <string-array name=\"app_labels\">\r\n    </string-array>\r\n    <!-- A tile's artwork instead of the app's banner: \"package=drawable\", a banner_* drawable bundled with the\r\n         launcher (res/drawable). banner_tv is a magenta field with the Live TV glyph. -->\r\n    <string-array name=\"app_banners\">\r\n    </string-array>\r\n\r\n    <!-- TVs with no TvInputManager have no HDMI list to read, but their own source-selection panel\r\n         still switches inputs (TCL Android TV 9 again). When nothing could be listed, the Inputs menu\r\n         offers one row that starts this service: component first, then action. The component can also be an\r\n         activity, for sets whose panel is a dialog (BYINTEK U4). With no Live TV app either, the Inputs pill\r\n         opens the panel directly instead of a menu. Leave empty to omit. -->\r\n\nStderr: (empty)\nExit Code: 0\nSignal: (none)","renderer":{"type":"text","value":"<?xml version=\"1.0\" encoding=\"utf-8\"?>\r\n<!--\r\n  Launcher configuration. Edit this file, then run launcher/build-and-install.sh.\r\n  Or leave it and push a theme instead: tools/theme.sh themes/<name> puts a config.json (same keys, see\r\n  themes/README.md) and an optional wallpaper on the TV, and the launcher overlays it at start.\r\n  Package names: on the TV run `pm list packages` (tools/tv.py 'pm list packages').\r\n-->\r\n<resources>\r\n\r\n    <!-- Tried in order when no standard settings handler is usable; each package must also be visible\r\n         through <queries> in the manifest. -->\r\n    <string-array name=\"settings_fallback_components\" translatable=\"false\">\r\n        <item>com.xiaomi.mitv.settings/com.xiaomi.mitv.settings.entry.MainActivity</item>\r\n        <item>com.tcl.settings/com.tcl.settings.ui.MainActivity</item>\r\n        <item>com.amazon.tv.launcher/com.amazon.tv.launcher.ui.MainSettingsActivity</item>\r\n    </string-array>\r\n\r\n    <!-- Apps pinned to the dock row at the bottom, in this order. Missing apps are skipped. -->\r\n    <string-array name=\"dock_apps\">\r\n        <item>com.netflix.ninja</item>\r\n        <item>com.amazon.amazonvideo.livingroom</item>\r\n        <item>com.google.android.youtube.tv</item>\r\n        <item>in.startv.hotstar</item>\r\n    </string-array>\r\n    <!-- With fewer dock_apps than columns (or a dock app that is not installed), the free dock slots take\r\n         the first grid apps, so the dock never shows a gap. false leaves them empty (#162); a theme can\r\n         set \"fill_dock\": false. -->\r\n    <bool name=\"fill_dock\">true</bool>\r\n\r\n    <!-- Apps never shown as tiles (e.g. the Live TV app, which the Inputs menu already covers). -->\r\n    <string-array name=\"hidden_apps\">\r\n        <item>com.mediatek.wwtv.tvcenter</item>\r\n        <item>com.mitv.gallery</item>\r\n    </string-array>\r\n\r\n    <!-- The TV's Live TV / tuner app, offered at the end of the Inputs menu. Leave empty to omit. -->\r\n    <string name=\"live_tv_package\" translatable=\"false\">com.mediatek.wwtv.tvcenter</string>\r\n\r\n    <!-- Open the Live TV app above the first time Home comes up after the TV is switched on, for sets that are\r\n         mostly used for broadcast TV. Once per boot: Home after that stays Home. Can also be set with\r\n         \"boot_to_live_tv\": true in a theme's config.json. -->\r\n    <bool name=\"boot_to_live_tv\">false</bool>\r\n\r\n    <!-- Local fork: an input opened on the first Home after the TV starts and after every wake-up while Home is\r\n         in front, for a set that is only ever used through a set-top box. A full input id, or its \"HW<n>\" tail\r\n         (opens as a mapped input_sources port, so a port the firmware never registers still works). Home after\r\n         that stays Home: press HOME to get it back. Empty (off) by default. -->\r\n    <string name=\"boot_input\" translatable=\"false\">HW5</string>\r\n\r\n    <!-- Some TVs give their Live TV app no leanback entry point at all, so `live_tv_package` above\r\n         resolves to nothing (TCL Android TV 9 on China-market sets is one). This action is then sent\r\n         to that package instead, and the app starts normally. Leave empty to omit. -->\r\n    <string name=\"live_tv_action\" translatable=\"false\"></string>\r\n\r\n    <!-- Optional exact system tuner ID for the Inputs menu's Live TV row, e.g. the DVB-S input on\r\n         a TV with separate antenna, cable and satellite tuners. It opens that input's channel\r\n         collection, restricted to live_tv_package. Empty keeps automatic selection and its existing\r\n         OEM passthrough route. If the ID is absent or the app cannot handle the collection, open\r\n         the Live TV app normally instead of selecting a different input. See docs/devices/haam-r4.md. -->\r\n    <string name=\"live_tv_input_id\" translatable=\"false\"></string>\r\n\r\n    <!-- Tiles that open a screen of the app instead of its start screen: \"package=action\", sent to that package.\r\n         A tile whose action no longer resolves opens the app normally. MagentaTV's program guide:\r\n         com.telekom.onetv.tv.pl=com.telekom.onetv.tv.pl.action.PROGRAM_GUIDE. -->\r\n    <string-array name=\"launch_actions\">\r\n    </string-array>\r\n\r\n    <!-- A tile's name instead of the app's own: \"package=Name\". It also shows above the dock. -->\r\n    <string-array name=\"app_labels\">\r\n    </string-array>\r\n    <!-- A tile's artwork instead of the app's banner: \"package=drawable\", a banner_* drawable bundled with the\r\n         launcher (res/drawable). banner_tv is a magenta field with the Live TV glyph. -->\r\n    <string-array name=\"app_banners\">\r\n    </string-array>\r\n\r\n    <!-- TVs with no TvInputManager have no HDMI list to read, but their own source-selection panel\r\n         still switches inputs (TCL Android TV 9 again). When nothing could be listed, the Inputs menu\r\n         offers one row that starts this service: component first, then action. The component can also be an\r\n         activity, for sets whose panel is a dialog (BYINTEK U4). With no Live TV app either, the Inputs pill\r\n         opens the panel directly instead of a menu. Leave empty to omit. -->"}}