Skip to content

Settings in config.json

Setting What it does
favorites The starting Favorites row, by app name. Once you change Favorites on the TV, the TV’s choice wins.
exclude Apps to leave out of the launcher entirely, by name (e.g. ["Music", "Sports Alert"]).
inputNames Names for inputs, by ID (e.g. {"HDMI_1": "Xbox"}). Otherwise the device’s own name or the TV’s label is used.
showAllInputs true to show inputs with nothing plugged in.
weather.zip The ZIP code for the weather. Leave weather out to hide it. weather.units is fahrenheit or celsius.
screensaverMinutes Idle minutes before the screensaver starts (default 5); 0 turns it off.
screensaverFolder A folder of your own pictures and videos for the screensaver, shown in random order, e.g. "~/Pictures/Launcher screen savers". Pictures stay up 12 seconds; videos play through. Leave it empty to show Plex artwork instead.
screensaverNames Names for the screensaver’s files in the sidebar’s picker, by file name, e.g. {"IMG_0042.jpg": "Mountain lake"}. Files without one are named after the file.
relay.host The always-on computer that runs the phone remote’s relay (npm run relay-setup), reached over SSH: a host, or user@host.
relay.dir Where the relay goes on that computer, a path from the SSH user’s home folder or an absolute one (default tv-remote). For a Docker manager such as Arcane or Dockge, its projects folder plus /tv-remote.
tv.mac The MAC address of the TV’s wired network port, for the relay to wake it. Read from the TV when it’s left out.
plex.appId The app the Plex cards open, by app ID. Defaults to the official Plex app; e.g. "com.beb.plxnative" for PlxNative.
theme The starting theme: ambient, aurora, midnight, ocean, sunset, space, or a wallpaper’s ID such as wall-revan (wall- and its name in lowercase, with dashes for spaces). Once you pick one with the blue button, the TV’s choice wins.
tiles Your own tile looks, keyed by app name or ID, or input ID: title (a new name), bgColor, icon (a picture; plain margins are trimmed), removeBackground (makes the icon’s plain border see-through, for icons that come on a solid square), and for the glass icons glassColor (the logo’s color) and glassIcon (a picture or .svg to use as its silhouette). E.g. {"Netflix": {"bgColor": "#000000"}, "HDMI_2": {"icon": "media/tiles/spectrum-tv.png", "bgColor": "#ffffff"}}.
wallpapers Your own wallpapers, each a theme of its own: a list of { "name": "Revan", "file": "~/Videos/revan.mp4" }. A file is a picture or a short looping video (.mp4 or .webm); videos play silently. Keep videos short; the whole file goes onto the TV. The older single wallpaper (a file) still works, as a theme named Wallpaper.

Pictures and videos for the wallpapers and screensaver are converted to 1080p (JPEG, or silent H.264 video) when they’re synced; a wallpaper video that’s already H.264 at 1080p or less goes as it is. Converted copies are kept in media/cache, so only new or changed files are converted again.

The updater picks up changes here, and files added to the screensaver folder, within the hour. To see them right away, run npm run sync and npm run deploy.