secubox-deb/remote-ui
CyberMind b0b42e81de
Feature/135 converge round square dashboards into re (#140)
* fixup(common): pod_size=48 to match deployed icon sizes (ref #135)

Module icons were falling back to first-letter placeholders because
SquareDashboard/RoundDashboard called paint_pod_cluster(pod_size=40)
while load_module_icon only ships sizes 22/48/96/128. Bump pod_size
to 48 and radius from 70 to 78 so the pod inner edge (54) stays clear
of the central button (44).

Confirmed on Pi 4B square hardware: pods now render with full icons.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>

* fixup(square): ship remote-ui/common/assets/icons to /var/www/common/assets (ref #135)

The square build script shipped remote-ui/common/python/ but skipped
remote-ui/common/assets/. secubox_common.icons.load_module_icon resolves
icons at /var/www/common/assets/icons/ — when that path is missing on the
deployed image, every module pod falls back to a first-letter placeholder.

The round build script already does this at line 925; bringing square to
parity. Fails the build (exit 2) if no *-48.png icons land — same
shape as the existing python-package guard right above.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>

* fixup(square): install secubox-otg-gadget.sh to /usr/local/sbin (ref #135)

The square build script enables secubox-otg-gadget.service but never copies
the composer script to /usr/local/sbin/. On boot the service ExecStarts a
missing file → fails silently → the Pi 4B's USB-C bus stays unconfigured →
MOCHAbin/host see no enumeration (zero dmesg events, xhci setup timeouts).

The round build copies it at build-eye-remote-image.sh:618; bringing square
to parity. The script itself lives in remote-ui/common/shell/, already
shared between the two images.

Hardware-confirmed: Pi 4B booted and rendered the dashboard but MOCHAbin
got no USB events whatsoever on either a hub-deep port or a direct port,
across cable swaps. Root cause was the missing composer, not cabling.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>

---------

Co-authored-by: CyberMind-FR <gandalf@Gk2.net>
Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-15 13:26:41 +02:00
..
common Round image: drop dead ifupdown config, give secubox sudo, fix misleading OTG comment (closes #139) (#143) 2026-05-15 13:26:32 +02:00
round Feature/135 converge round square dashboards into re (#140) 2026-05-15 13:26:41 +02:00
square Feature/135 converge round square dashboards into re (#140) 2026-05-15 13:26:41 +02:00
README.md feat(remote-ui): Phase 1 — extract common/ shared core (ref #127) 2026-05-14 05:59:40 +02:00

SecuBox-DEB — Remote UI

Interfaces utilisateur déportées pour SecuBox.


Modules

Module Description Hardware
common/ Shared core (JS/CSS/icons/shell) consumed by round/ + square/ hardware-independent
round/ Eye Remote Dashboard HyperPixel 2.1 Round + Pi Zero W
square/ Planned: dual-pane kiosk (round UI + native right column) Pi 4B / Pi 400 + 7" 800×480 (issue #127)

Round Edition

Dashboard kiosk circulaire 480×480 pour monitoring SecuBox.

Features

  • 6 anneaux de status (AUTH, WALL, BOOT, MIND, ROOT, MESH)
  • Transport OTG prioritaire, WiFi fallback
  • Mode simulation intégré
  • USB gadget composite (ECM + ACM + mass_storage)

Documentation

Voir round/README.md pour la documentation complète.


Build Scripts

Script Description
round/build-eye-remote-image.sh Build image Pi Zero W
round/build-storage-img.sh Build storage ESPRESSObin
round/install_zerow.sh Flash et config SD
round/deploy.sh Déployer dashboard

Pipeline complet

# Build complet (depuis racine du repo)
sudo bash build-eye-remote-full.sh

Cela exécute :

  1. Build des packages SecuBox (.deb)
  2. Build de storage.img ESPRESSObin
  3. Build de l'image Pi Zero W

Architecture

remote-ui/
├── round/                      ← Eye Remote Dashboard
│   ├── agent/                  ← Agent multi-SecuBox (v2.0)
│   ├── files/                  ← Fichiers système à installer
│   ├── host-install/           ← Scripts côté host SecuBox
│   ├── scripts/                ← Utilitaires
│   ├── build-eye-remote-image.sh
│   ├── build-storage-img.sh
│   ├── deploy.sh
│   ├── install_zerow.sh
│   ├── CLAUDE.md              ← Instructions Claude Code
│   └── README.md              ← Documentation complète
└── README.md                  ← Ce fichier

Planned Modules

Module Status Description
square/ Planned Dashboard rectangulaire 800×480
web/ Planned WebUI responsive
console/ Planned TUI ncurses

See Also


Author

Gerald KERMA devel@cybermind.fr