Phase 276 — box-side cleanup (net ~5100 lines removed).
App-store dead code
- Removed the dead git-clone app store (utopusc/livinity-apps repo deleted); browse stays the livinity.io/store iframe (Supabase).
appStore.registry()stubbed to [] (route + RegistryApp type kept), install Step 3 git-clone removed, dead native grid UI + dead sync-catalog importer deleted. - Fixed 12 builtin app icons off the deleted livinity-apps-gallery repo → homarr-labs/dashboard-icons CDN + upstream.
Umbrel docker images removed
- auth-server: dead (LivOS auth = Caddy forward_auth → livinityd /auth/verify, in-process; the container was never reverse-proxied). Removed the service + image pull/retag.
- tor / Remote Tor Access: removed (default-off feature, onion served the legacy Umbrel dashboard not the live UI; LivOS remote access = Cloudflare Tunnel). Service + image + fragments + UI/plumbing removed.
- Kept load-bearing legacy-compat: docker-compose.common.yml + the livinity_main_network block + app-script (the live app launcher for ALL apps).
- Hygiene: stripped the dead JWT_SECRET + LIVINITYD_RPC_HOST compose-env injections (only consumer was the removed auth-server).
Verified: static gates (tsc no new source errors, UI build, install-script tests) + live-box confirmation (auth+tor containers deleted on the box, everything still works). livinityd integration suite runs on Linux/CI.
🤖 Generated with Claude Code
Full Changelog: v44.39...v44.40