3.0 KiB
3.0 KiB
Super Hub Architecture
Goal
Build the ARM or X86 node as a reusable Linux super hub instead of a single-purpose streaming box. The Douyin or YouTube workflow is one optional business module that can be installed alone or layered on top of the hub later.
Install Profiles
-
install-hub.sh- Base Linux super hub
- Web control plane
- mDNS
live.local - Wi-Fi onboarding profile
- ShellCrash
- WebTTY
- Cockpit
- File Browser
- Homepage
- Netdata
- Hardware probe
-
install-business.sh- Shared control plane runtime
- ffmpeg, mpv, ADB, Chromium
- SRS
- Hardware probe and adaptive decode defaults
- Douyin or YouTube business orchestration
-
install-all.sh- Runs the hub profile first
- Runs the business profile second
- Safe to rerun because the shared pieces are idempotent
Layers
-
Base Node
- Debian / Ubuntu / Armbian
liveuser- mDNS with
live.local - Wi-Fi bootstrap
- hardware probe and graceful degradation
-
Control Plane
- FastAPI backend
- Next.js panel
- managed config roots
- service registry and status polling
-
Hub Modules
- ShellCrash
- WebTTY
- Cockpit
- File Browser
- Homepage
- Netdata
- Android Web Panel
-
Business Modules
- Douyin / YouTube relay app
- SRS
- HDMI playback bridge
- Android / ADB integration
- Chromium persistent profile
- Browser-based device control via web-scrcpy
-
Future Modules
- Caddy
- WireGuard
- FRP
- Matrix
- Uptime Kuma
- n8n
- AI and media workloads
Design Rules
install-hub.shmust never hard-depend on business services such as SRS.install-business.shmust work on a clean Linux system without requiring the hub profile first.- If the hub profile already exists, the business profile must reuse it instead of replacing it.
- Each service stays in its own systemd unit or compose file so it can be removed without breaking unrelated modules.
- The control plane edits only managed roots and never exposes arbitrary filesystem write access.
- ARM and X86 share one control plane, then diverge only through the generated hardware profile.
Current Implementation
scripts/linux/lib/common.shcontains the shared install functions used by every profile.scripts/linux/install_hub.shinstalls the reusable Linux super hub.scripts/linux/install_business.shinstalls the Douyin or YouTube business module.scripts/linux/install_stack.shremains as a compatibility entrypoint forhub,business, andall.src/control_plane.pyexposes managed roots, hardware profile loading, and service actions.scripts/hardware_probe.pygenerates safe runtime defaults for ARM and X86.services/keeps dockerized modules isolated instead of merging them into one monolith.
Recommended Next Modules
- Caddy for unified reverse proxy and TLS
- wg-easy for WireGuard mesh management
- FRP panel for tunnel management
- Uptime Kuma for alerting
- n8n for workflow automation
- Matrix plus Element for messaging and operations collaboration