docs(wiki): Update for v2.1.1 release

- Home.md: Add v2.1.1 release announcement
- Troubleshooting.md: Add API 502/pydantic fix section
- Eye-Remote.md: Add HyperPixel round dashboard documentation
- Live-USB-VirtualBox.md: Add pydantic troubleshooting
- HISTORY.md: Document Session 72 changes

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
CyberMind-FR 2026-04-28 20:57:11 +02:00
parent a697925a3f
commit fbae4a7660
5 changed files with 125 additions and 7 deletions

View File

@ -5,6 +5,53 @@
## 2026-04-28
### Session 72 — v2.1.1 Release: Build and API Fixes
**Release:** v2.1.1 — Critical fixes for VirtualBox and ESPRESSObin builds
**Issues Fixed:**
1. **Python Dependencies (Debian Bookworm Compatibility)**
- Debian ships pydantic v1, but SecuBox requires v2
- Added pip upgrade in build scripts: `pydantic>=2.0`, `fastapi>=0.100`, `uvicorn>=0.25`
- Updated `secubox-core` postinst to auto-upgrade on install
2. **CORS Headers**
- Added CORS headers to `common/nginx/secubox-proxy.conf`
- Fixes cross-origin API requests from web UI
3. **Login Endpoint Path**
- Fixed `login.html`: `/auth/login``/login`
- Affects both main and portal login pages
4. **Eye Remote Display Imports**
- Fixed `display/__init__.py` to import existing modules only
- Changed service to use `display_manager.py` instead of `main.py`
5. **Eye Remote Rainbow Dashboard**
- Icons in rainbow circle: BOOT, AUTH, WALL, ROOT, MESH, MIND
- Radar sweep syncs with targeted module glow
- Metric arcs aligned with corresponding icon colors
- Concentric rings: red (outer) → purple (inner)
**Files Modified:**
- `common/nginx/secubox-proxy.conf` — CORS headers
- `packages/secubox-core/debian/postinst` — pip upgrade
- `packages/secubox-hub/www/login.html` — endpoint fix
- `packages/secubox-hub/www/portal/login.html` — endpoint fix
- `image/build-live-usb.sh` — version constraints
- `image/build-ebin-live-usb.sh` — version constraints
- `image/multiboot/build-amd64-rootfs.sh` — pip upgrade
- `remote-ui/round/agent/display/__init__.py` — import fix
**Wiki Updated:**
- `Home.md` — v2.1.1 announcement
- `Troubleshooting.md` — API 502/auth fix section
- `Eye-Remote.md` — HyperPixel dashboard info
- `Live-USB-VirtualBox.md` — troubleshooting section
---
### Session 71 — Eye Remote Display System v2.3.0
**Feature:** Complete display state machine with fallback, splash, and radar modes

View File

@ -183,6 +183,29 @@ Access at `http://10.55.0.1:8080`:
- Boot media status
- Storage swap controls
### HyperPixel Round Display (v2.1.1+)
The Eye Remote supports the Pimoroni HyperPixel 2.1 Round (480×480) for a dedicated dashboard:
```
┌────────────────────────────────┐
│ 🔴 🟠 🟡 🟢 🔵 🟣 │ ← Rainbow icon ring
│ ╭─────╮ │
│ ╭──│TIME │──╮ │ ← Center clock
│ ╭───│DATE │───╮ │
│ ╭────│HOST │────╮ │ ← Concentric metric rings
│ ╭─────│ UP │─────╮ │ (red→purple outer→inner)
│ ╰─────╰─────╯─────╯ │
│ RADAR ⟳ │ ← Rotating radar sweep
└────────────────────────────────┘
```
**Features:**
- 6 module icons in rainbow order (BOOT, AUTH, WALL, ROOT, MESH, MIND)
- Radar sweep syncs with targeted module glow
- Metric arcs aligned with corresponding icon colors
- Concentric rings: red (outer) → purple (inner)
---
## API Reference

View File

@ -6,15 +6,21 @@ Complete security appliance solution ported from OpenWrt to Debian bookworm. Des
---
> **NEW v2.2.3 — Multi-Boot Live OS with Eye Remote Integration**
> **NEW v2.1.1 — Build and API Fixes**
>
> Dual-architecture bootable image (ARM64 + AMD64) with RAM-based execution and shared persistent storage. Boot from USB or use Pi Zero Eye Remote as USB gadget to boot ESPRESSObin/MOCHAbin.
> Critical fixes for VirtualBox and ESPRESSObin builds:
> - CORS headers for cross-origin API requests
> - Python dependencies upgraded: pydantic≥2.0, fastapi≥0.100, uvicorn≥0.25
> - Login endpoint path fixes
> - Eye Remote rainbow dashboard with radar sync
>
> **Features:**
> - Boot any ARM64 (U-Boot) or AMD64 (UEFI) system from one USB stick
> - Pi Zero presents multiboot image as USB storage for ESPRESSObin boot
> - RAM-based live execution — minimal I/O, perfect for USB gadgets
> - Shared data partition accessible from both architectures
> See [[Troubleshooting]] for details | [Download v2.1.1](https://github.com/CyberMind-FR/secubox-deb/releases/tag/v2.1.1)
---
> **Multi-Boot Live OS with Eye Remote Integration (v2.2.3)**
>
> Dual-architecture bootable image (ARM64 + AMD64) with RAM-based execution and shared persistent storage.
>
> See [[Multiboot]] for documentation | [Download v2.2.3](https://github.com/CyberMind-FR/secubox-deb/releases/tag/multiboot-v2.2.3)

View File

@ -166,6 +166,18 @@ echo "Wait 30-60 seconds for boot to complete."
## Troubleshooting
### API errors / "Invalid credentials" (v2.1.1 Fix)
If you see API 502 errors or "Invalid credentials" after login, upgrade Python packages:
```bash
ssh -p 2222 root@localhost
pip3 install --break-system-packages 'pydantic>=2.0' 'fastapi>=0.100' 'uvicorn>=0.25'
systemctl restart secubox-hub secubox-auth secubox-system
```
This issue is fixed in v2.1.1+ images.
### VM won't boot (black screen)
```bash

View File

@ -20,6 +20,36 @@ secubox-netdiag
## Common Issues
### API 502 Bad Gateway / Authentication Errors (v2.1.1 Fix)
**Symptoms:** Web UI shows "Invalid credentials", "NetworkError", or API returns 502
**Cause:** Debian bookworm ships pydantic v1, but SecuBox requires pydantic v2.
**Solutions:**
1. Upgrade Python dependencies:
```bash
pip3 install --break-system-packages 'pydantic>=2.0' 'fastapi>=0.100' 'uvicorn>=0.25'
```
2. Restart all SecuBox services:
```bash
systemctl restart secubox-hub secubox-auth secubox-system
```
3. Verify sockets are created:
```bash
ls -la /run/secubox/*.sock
```
4. Check service logs:
```bash
journalctl -u secubox-hub --no-pager -n 20
```
**Note:** This issue is fixed in v2.1.1+ builds. Upgrade your image or run the pip command above.
### Cannot Access Web UI
**Symptoms:** Browser shows connection refused or timeout