Commit Graph

16 Commits

Author SHA1 Message Date
33304e7b6f feat(build): Add kiosk mode + VirtualBox setup + Profile Generator architecture
VM-x64 Build Improvements:
- Enable kiosk mode by default with GRUB menu entries
- Increase image size to 8GB (5.5GB root) for full package set
- Add proper EFI boot configuration with 3 boot modes
- Pre-generate SSL certificates during build
- Add TTY2 autologin for emergency console access

VirtualBox Support:
- Add scripts/vbox-setup.sh for automated VM setup
- Add wiki/VirtualBox-Setup.md with comprehensive guide
- Support bridged, NAT, and host-only network modes
- Auto-detect network adapter for bridged mode

Architecture Documentation:
- Add docs/architecture/profile-generator.md (v0.2)
- Define tier × board × flavors resolution model
- Document 3 CLI tools: secubox-gen, secubox-build, secubox-fetch
- Add Phase 12-14 roadmap alignment for Ulule Campaign 1

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-04-29 09:16:36 +02:00
a056e4c7bc docs: Update tracking files for USB OTG ECM fix (Session 64)
- HISTORY.md: Document usb0→usb1 ECM fix for Linux hosts
- WIP.md: Mark USB OTG fix as completed v2.1.1
- TODO.md: Add P11-R17 checkbox for USB OTG fix
- Eye-Remote-Bootstrap.md: Update to v2.1.1 with fix note

The USB composite gadget creates usb0 (RNDIS) and usb1 (ECM).
Linux hosts use cdc_ether driver which maps to usb1.
Fixed by configuring only usb1 to avoid asymmetric routing.

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-04-24 08:33:44 +02:00
be4c333134 docs: Add Eye Remote v2.0.0 roadmap and tracking
- WIP.md: Add Eye Remote full integration section with checklist
- TODO.md: Add P11-R10 through P11-R16 tasks for v2.0.0
- README.md: Add version table, roadmap section, component diagram
- GitHub Issue #31 created for feature tracking

Components planned:
- secubox-eye-agent (Eye Remote side)
- secubox-eye-remote (SecuBox module)
- secubox-eye-gateway (dev emulator + fleet tool)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-04-21 08:33:54 +02:00
5f2815a2e2 docs: Update tracking files and README FAQ for v1.11.0
- TODO.md: Add P11-R09 framebuffer dashboard task
- WIP.md: Document v1.10.0 HyperPixel fix and v1.11.0 dashboard
- README.md: Add FAQ section with troubleshooting guide
  - NEON SIMD requirement for Chromium
  - Display not working troubleshooting steps
  - Service dependency order documentation
  - Required config.txt settings
  - Manual framebuffer testing instructions

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-04-21 00:19:15 +02:00
de7c215e96 docs: Mark HyperPixel display verified working after reboot
P11-R08 complete - Display persists through reboot with:
- pigpiod.service active
- hyperpixel2r-init.service active
- ST7701S LCD initialized successfully
- Framebuffer content visible

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-04-20 23:58:20 +02:00
8e819e919a fix(eye-remote): HyperPixel 2.1 Round display v1.10.0 - fixes #30
Root causes identified and fixed:

1. Wrong device tree overlay
   - Was: dtoverlay=hyperpixel4 (rectangular display)
   - Now: dtoverlay=hyperpixel2r (round display)

2. LCD init script failure on Bookworm
   - Was: RPi.GPIO using lgpio ("GPIO not allocated" errors)
   - Now: pigpio library via pigpiod daemon

Changes:
- hyperpixel2r-init: Rewritten to use pigpio instead of RPi.GPIO
- hyperpixel2r-init.service: Added pigpiod dependency
- build-eye-remote-image.sh v1.10.0:
  - Added python3-pigpio and pigpio packages
  - Fixed overlay name in config.txt
  - Removed ,disable-i2c flag
  - Added display_default_lcd=1 setting
  - Enable pigpiod.service at boot

Tested on hardware:
- GPIO pins correctly set to ALT2 (DPI function)
- ST7701S LCD initialized via software SPI
- Display shows framebuffer content

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-04-20 23:50:21 +02:00
76cd7c0d96 feat(remote-ui): Add HyperPixel 2.1 Round dashboard for RPi Zero W
Complete Remote UI implementation for SecuBox status display:

- Python/PIL dashboard with direct framebuffer rendering (no Chromium)
- KMS overlay support (vc4-kms-dpi-hyperpixel2r) - tested working
- USB OTG composite gadget (CDC-ECM + CDC-ACM) for host connection
- 6 concentric rings showing CPU, MEM, DISK, LOAD, TEMP, WiFi metrics
- Auto-start systemd service (secubox-dashboard.service)
- install_zerow.sh for SD card preparation with all fixes

Key fixes discovered during debugging:
- Use KMS overlay, not non-KMS (GPIO conflicts on Bookworm)
- Framebuffer is RGB565 (16-bit), not BGRA
- RPi OS Bookworm requires userconf file for SSH credentials
- NetworkManager ignores ifupdown; use direct IP config

Files:
- secubox_dashboard.py: PIL-based live metrics dashboard
- install_zerow.sh: SD card flasher with KMS overlay
- secubox-dashboard.service: Auto-start systemd unit
- 24 module icons (AUTH/WALL/BOOT/MIND/ROOT/MESH)

Tested on: RPi Zero W + HyperPixel 2.1 Round 480x480

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-04-15 17:54:09 +02:00
c4b5ff552b docs: Add Phase 11 TODO for kiosk versioning and auth feedback
P11-01 to P11-09: Kiosk version display, auth mode feedback, boot experience

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-04-12 17:19:32 +02:00
aa41893d4b feat: Complete Phase 8, 9, 10 - all modules done
Phase 8 (Applications): 21 modules complete
- jitsi, gotosocial, peertube, hexo, webradio, voip, simplex, torrent, newsbin

Phase 9 (System Tools): 22 modules complete
- Added READMEs for vault, cloner, vm, rtty, reporter, turn, smtp-relay

Phase 10 (Security Extensions): 10 modules complete
- Created secubox-netifyd package (DPI daemon)
- Added README for secubox-wazuh

Infrastructure fixes:
- Fixed uvicorn path in 29 service files (/usr/bin → /usr/local/bin)
- Fixed smtp-relay debian/control (Section: mail, added msmtp alternative)
- Added MODULE-COMPLIANCE.md with formal design rules
- Updated CLAUDE.md to reference compliance requirements

Total: 125 packages, all phases complete

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-04-08 14:46:58 +02:00
f71f560486 feat(phase9): Add glances, mqtt, turn, netdiag modules
Session 35 - Phase 9 System Tools (7/22 complete)

New modules:
- secubox-glances v1.0.0: System monitoring (Glances wrapper)
- secubox-mqtt v1.0.0: MQTT broker management (Mosquitto)
- secubox-turn v1.0.0: TURN/STUN server (coturn)
- secubox-netdiag v1.0.0: Network diagnostics (ping, traceroute, dns, nmap)

All modules include:
- FastAPI backend with JWT auth
- P31 Phosphor light theme frontend
- Complete Debian packaging
- nginx reverse proxy config
- Menu integration

Total packages: 65

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-04-04 07:22:12 +02:00
d3e9352722 feat(core): Add board detection and kiosk management library
- secubox_core v1.1.0: New kiosk.py module with reusable functions
  - Board detection (MOCHAbin, ESPRESSObin, x64-vm, x64-baremetal, RPi)
  - Interface classification (WAN/LAN/SFP by board type)
  - Kiosk management (status, enable, disable)
- secubox-system v1.2.0: Board Detection and Kiosk cards in UI
  - Uses secubox_core.kiosk (no code duplication)
  - New endpoints: /board, /board/detect, /board/capabilities, /kiosk/*
- secubox-hub v1.1.0: Network Mode selection on dashboard
  - Mode selector with preview and apply
  - Proxies to secubox-netmodes via Unix socket
  - New endpoints: /network_mode, /network_mode/preview, /board_summary
- secubox-portal v2.1.0: Device-specific theming
  - 7 board themes (Pro, Lite, Virtual, Server, Maker, Standard)
  - Login page dynamically adapts colors and badge
  - New endpoints: /theme, /branding

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-04-01 05:52:19 +02:00
d123ad49e8 feat(matrix): Add Matrix Synapse chat server module
- LXC-based Matrix homeserver
- User and room management
- Bridge support (Telegram, Discord, Signal, WhatsApp)
- Element web client installation
- Backup/restore functionality
- Federation support

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-03-28 10:06:55 +01:00
bacb9fc01b feat(phase8): Add LXC-based application modules
Phase 8 Applications (LXC containers, no Docker):
- secubox-ollama: AI inference with Ollama
- secubox-jellyfin: Media server
- secubox-lyrion: LMS audio streaming
- secubox-zigbee: Zigbee2MQTT gateway
- secubox-localai: LocalAI inference
- secubox-domoticz: Home automation
- secubox-photoprism: Photo management
- secubox-homeassistant: Smart home hub

All modules include:
- LXC container management (Pattern 11)
- Shared sidebar + CRT theme (Pattern 12)
- FastAPI backend with JWT auth
- Systemd service units
- Debian packaging

Patterns documented:
- Pattern 11: LXC ONLY (never Docker/Podman)
- Pattern 12: Module Web UI Requirements

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-03-28 09:41:15 +01:00
82edb92b28 Expand API documentation to cover all 48 modules
- Comprehensive API Reference with ~1000+ endpoints documented
- Organized by category: Core, Security, Network, Services, Apps, Intel
- Code examples for common operations (login, ban IP, add WG peer)
- WebSocket documentation for real-time updates
- Error handling and rate limiting info
- French (API-Reference-FR.md) and Chinese (API-Reference-ZH.md) translations
- Updated tracking files for Phase 7 Documentation completion

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-03-25 06:59:33 +01:00
d7c8cc19e9 Add secubox-repo and secubox-hardening modules, CI/CD workflows
New modules (35 total):
- secubox-repo v1.0.0: APT repository management
  - repoctl CLI for package management
  - GPG key generation and signing
  - Multi-distribution support (bookworm, trixie)
  - Web dashboard for repository status

- secubox-hardening v1.0.0: Kernel and system hardening
  - hardeningctl CLI for security management
  - Sysctl hardening (ASLR, kptr_restrict, SYN cookies)
  - Module blacklist (uncommon protocols, filesystems)
  - Security benchmark with 100% score on VM

CI/CD workflows:
- build-packages.yml: Dynamic matrix for all packages
- build-image.yml: 5 board images with compression
- publish-packages.yml: APT repo publishing
- release.yml: Unified release orchestration

APT repository scripts:
- export-secrets.sh: Export GPG/SSH keys for GitHub Actions
- local-publish.sh: Local test server
- install.sh: User installation script

Security (Phase 5):
- AppArmor profiles for all services
- Audit rules for SecuBox services
- build-all.sh for local builds

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-03-22 22:15:01 +01:00
bf1babb37c Initial commit: SecuBox-DEB migration from OpenWrt to Debian
Includes all package APIs with public dashboard endpoints:
- secubox-system: System Hub with /info, /resources, /security
- secubox-crowdsec: CrowdSec dashboard with /status, /hub, /metrics, actions
- secubox-wireguard: WireGuard VPN with /interfaces, /peers, start/stop
- secubox-netdata: Monitoring with /stats, /processes, /alerts

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-03-21 09:41:06 +01:00