v2.1.4 - server-side setup persistence and TMDB status
What's changed
- Setup state now persists across browsers, devices, and the HA app
(closes #95, PR #96). Previously the in-app setup overlay stored
Connection / Coming Soon / TMDB values in per-tabletlocalStorage,
so a phone or HA app opening the kiosk on a different origin saw
blank fields even after Master Panel had been fully configured. The
add-on Configuration tab (or Docker env vars) is now the single
source of truth — the unified server reads it once at boot and every
device hits the same canonical state. - New
GET /api/configendpoint exposes a non-secret config summary:
mode,managed, the canonical Plex / Radarr / Sonarr URLs, plex
username, and a*Setboolean for every secret. No secrets are
returned — the(key set)/(token set)markers tell the UI a
value is configured without leaking it. - Setup overlay in unified-server mode now renders a "Settings are
managed by the Now Showing add-on" banner with a read-only summary
of what the server actually loaded (mode, display mode,
backend/player, Plex/Radarr/Sonarr URLs, TMDB region + configured
status). Connection / Coming Soon password fields stay hidden;
localStorage values continue to work as per-device overrides for
visual preferences only. - The first-run setup auto-open is suppressed in unified-server
mode — the server already has a working HA token, so a brand-new
phone is no longer pushed through a setup form pretending to need
credentials. Save-button validation no longer demands an HA / Radarr
/ Sonarr token in unified-server mode either. - The setup overlay's Coming Soon section gained an inline TMDB
status panel showing whether the server has a TMDB API key
configured and which region is active (driven by the existing
tmdb_api_key/tmdb_regionadd-on options). The panel directs
operators to the add-on Configuration tab to set/change the
key — the kiosk frontend never calls TMDB directly and the API key
remains a server-side option.
Migration
No action required for the canonical Connection / Coming Soon / TMDB
values: they are already read from add-on options. If you previously
filled in the in-app setup overlay and the values only appeared on one
tablet, copy those same values into Settings → Add-ons → Now Showing
→ Configuration once and every device will pick them up
automatically. The per-device localStorage overrides are left
untouched and continue to work.
Tests
cd server && node --test test/*.js— 173 passed, 0 failed,
including coverage for/api/config(managed-mode summary,
*Setbooleans, secret redaction) and the existing TMDB / Coming
Soon / Plex / state / cache / routes / switcher suites.python3config.yaml lint (options/schema balance, required keys,
arch list) — OK.
Packages
- Add-on package version is 2.1.4.
- The
addon-v2.1.4tag has been pushed to trigger the multi-arch GHCR
build that publishes:ghcr.io/rusty4444/plex-now-showing-amd64:2.1.4(and:latest)ghcr.io/rusty4444/plex-now-showing-aarch64:2.1.4(and:latest)ghcr.io/rusty4444/plex-now-showing-armv7:2.1.4(and:latest)ghcr.io/rusty4444/plex-now-showing-armhf:2.1.4(and:latest)ghcr.io/rusty4444/plex-now-showing-i386:2.1.4(and:latest)
- Supervisor pulls the matching
2.1.4Docker tag for each arch from
addons/plex-now-showing/config.yaml'sversionfield.