docs: Update README v0.16.0 with 38 modules, add CHANGELOG

- README.md: Update to v0.16.0 with all 38 modules categorized
- CHANGELOG.md: Create comprehensive changelog (v0.12.0-v0.16.0)
- CLAUDE.md: Add toolchain build rules for Go/CGO packages
- secubox-tools/README.md: Add SDK vs toolchain build guidance
- TODO-ANALYSE.md: Mark completed tasks, update health score
- HISTORY.md: Document ARM64 toolchain discovery, multi-instance
- dev-status-widget.js: Update stats (38 modules, 1500 commits)

SDK builds produce LSE atomics that crash on some ARM64 CPUs.
Go/CGO packages (crowdsec, netifyd) must use full toolchain.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
CyberMind-FR 2026-01-27 10:58:48 +01:00
parent 5a4f7986ac
commit 8c062b6d60
9 changed files with 397 additions and 92 deletions

View File

@ -1,6 +1,6 @@
# SecuBox UI & Theme History # SecuBox UI & Theme History
_Last updated: 2025-12-28_ _Last updated: 2026-01-27_
1. **Unified Dashboard Refresh (2025-12-20)** 1. **Unified Dashboard Refresh (2025-12-20)**
- Dashboard received the "sh-page-header" layout, hero stats, and SecuNav top tabs. - Dashboard received the "sh-page-header" layout, hero stats, and SecuNav top tabs.
@ -24,7 +24,27 @@ _Last updated: 2025-12-28_
- Use `secubox-tools/deploy-secubox-v0.1.2.sh` for RPCD/config updates. - Use `secubox-tools/deploy-secubox-v0.1.2.sh` for RPCD/config updates.
- Always clear `/tmp/luci-*` after copying UI assets. - Always clear `/tmp/luci-*` after copying UI assets.
6. **SecuBox v0.5.0-A Polish (2025-12-29)** 6. **SecuBox v0.5.0-A Polish (2025-12-29)**
- Monitoring and Modules views drop legacy hero/filter UIs; all tabs now use SecuNav styling. - Monitoring and Modules views drop legacy hero/filter UIs; all tabs now use SecuNav styling.
- Help/Bonus page adopts the shared header, navbar entry, and chips. - Help/Bonus page adopts the shared header, navbar entry, and chips.
- Alerts buttons use `sh-btn` components; nav + title chips inherit theme colors. - Alerts buttons use `sh-btn` components; nav + title chips inherit theme colors.
7. **Multi-Instance Support (2026-01-20)**
- CrowdSec LAPI port configuration fix for multi-instance deployments.
- Streamlit and HexoJS gain multi-instance management support.
- HAProxy enhanced with instance-specific configuration.
8. **HexoJS Build & Publish Integration (2026-01-21)**
- Added LuCI interface for Gitea-based Hexo build and publish workflows.
- Automated Git operations for static site generation.
9. **ARM64 Toolchain Build Requirement (2026-01-27)**
- Discovered SIGILL crashes on ARM64 (MochaBin) due to LSE atomics in SDK-built Go binaries.
- Documented requirement: Go/CGO packages (crowdsec, netifyd) MUST use full OpenWrt toolchain.
- SDK produces binaries with LSE atomic instructions that crash on some Cortex-A72 CPUs.
- Updated CLAUDE.md, secubox-tools/README.md with toolchain build rules.
10. **Documentation Regeneration (2026-01-27)**
- README.md updated to v0.16.0 with all 38 modules categorized.
- Added build requirement table distinguishing SDK vs toolchain builds.
- secubox-tools/README.md updated to v1.1.0 with SDK vs toolchain guidance.

View File

@ -38,5 +38,21 @@
- **2025-12-29 Quick Deploy prompt fix** - **2025-12-29 Quick Deploy prompt fix**
Adjusted `prompt_select_app()` so menu output goes to stderr, preventing `--src-select` from capturing prompts along with the chosen app. Adjusted `prompt_select_app()` so menu output goes to stderr, preventing `--src-select` from capturing prompts along with the chosen app.
- **2025-12-29 System Hub theme sync** - **2025-12-29 System Hub theme sync**
`system-hub/common.css` / `dashboard.css` now listen to `data-secubox-theme`, hide the stock LuCI tab bar, and every System Hub view imports `secubox-theme` so UI matches the global toggle. `system-hub/common.css` / `dashboard.css` now listen to `data-secubox-theme`, hide the stock LuCI tab bar, and every System Hub view imports `secubox-theme` so UI matches the global toggle.
- **2026-01-20 Multi-Instance Support**
CrowdSec LAPI port fix, Streamlit/HexoJS multi-instance management.
- **2026-01-21 HexoJS Build & Publish**
Gitea workflow integration for static site builds.
- **2026-01-27 ARM64 Toolchain Build Discovery**
SIGILL crash investigation revealed Go CGO packages must use full OpenWrt toolchain.
SDK builds produce LSE atomics (casal instructions) incompatible with some Cortex-A72 CPUs.
Updated CLAUDE.md and secubox-tools/README.md with critical toolchain requirements.
- **2026-01-27 Project Documentation Update**
README.md updated to v0.16.0 with 38 modules categorized.
secubox-tools/README.md updated to v1.1.0.
Added SDK vs Toolchain build guidance throughout documentation.

136
CHANGELOG.md Normal file
View File

@ -0,0 +1,136 @@
# Changelog
All notable changes to the SecuBox project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
## [0.16.0] - 2026-01-27
### Added
- Documentation for SDK vs full toolchain build requirements
- Build requirement table in README.md distinguishing SDK and toolchain builds
- ARM64 LSE atomics compatibility notes for MochaBin/Cortex-A72
### Changed
- README.md updated with all 38 modules categorized by function
- secubox-tools/README.md updated to v1.1.0 with toolchain guidance
- CLAUDE.md updated with critical toolchain build rules
### Fixed
- Documented SIGILL crash fix for Go CGO packages on ARM64 (use full toolchain)
## [0.15.4] - 2026-01-21
### Added
- HexoJS Build & Publish LuCI interface for Gitea workflow integration
- Multi-instance management for Streamlit platform
### Fixed
- CrowdSec LAPI port configuration for multi-instance deployments
## [0.15.3] - 2026-01-14
### Added
- HAProxy enhanced instance management and ACME cron support
- Streamlit instance-specific configuration options
### Fixed
- Streamlit settings page value loading issue
## [0.15.0] - 2025-12-29
### Added
- SecuNav unified navigation component across all modules
- Theme synchronization with dark/light/cyberpunk support
- Quick Deploy tooling with profiles and verification
### Changed
- All views now call Theme.init() for consistent theming
- Monitoring menu simplified (no /overview shim)
- Dashboard, Modules, Monitoring views use SecuNav styling
### Fixed
- System Hub ACL compliance for diagnostics and remote RPC methods
- Validator improvements for cross-module LuCI menus
- CSS/JS asset permissions reset to 644
## [0.14.0] - 2025-12-28
### Added
- Theme selector with live preview in Settings
- Shared design tokens in secubox/common.css
### Changed
- Alerts page mirrors dashboard style with dynamic header chips
- Settings view adopted SecuNav tabs and shared design language
## [0.13.0] - 2025-12-24
### Changed
- Modules view with filter tabs, responsive cards, and live stats
- Monitoring view with SVG sparkline charts and auto-refresh
## [0.12.0] - 2025-12-20
### Added
- Dashboard hero stats and SecuNav top tabs
- Unified sh-page-header layout component
## Module Inventory (38 modules as of 0.16.0)
### SecuBox Core (5)
- luci-app-secubox
- luci-app-secubox-portal
- luci-app-secubox-admin
- luci-app-secubox-bonus
- luci-app-system-hub
### Security & Threat Management (9)
- luci-app-crowdsec-dashboard
- luci-app-secubox-security-threats
- luci-app-client-guardian
- luci-app-auth-guardian
- luci-app-exposure
- luci-app-tor-shield
- luci-app-mitmproxy
- luci-app-cyberfeed
- luci-app-ksm-manager
### Deep Packet Inspection (2)
- luci-app-ndpid
- luci-app-secubox-netifyd
### Network & Connectivity (8)
- luci-app-vhost-manager
- luci-app-haproxy
- luci-app-wireguard-dashboard
- luci-app-network-modes
- luci-app-network-tweaks
- luci-app-mqtt-bridge
- luci-app-cdn-cache
- luci-app-media-flow
### Bandwidth & Traffic (2)
- luci-app-bandwidth-manager
- luci-app-traffic-shaper
### Content & Web Platforms (5)
- luci-app-gitea
- luci-app-hexojs
- luci-app-metabolizer
- luci-app-magicmirror2
- luci-app-mmpm
### AI/LLM & Analytics (4)
- luci-app-localai
- luci-app-ollama
- luci-app-glances
- luci-app-netdata-dashboard
### Streaming & Data (2)
- luci-app-streamlit
- luci-app-picobrew
### IoT (1)
- luci-app-zigbee2mqtt

View File

@ -56,5 +56,28 @@ When checking if a port is listening, use this order of fallbacks:
- Use the repo sync helper scripts where available to avoid missing `root/` vs `htdocs/` payloads - Use the repo sync helper scripts where available to avoid missing `root/` vs `htdocs/` payloads
### Toolchain Usage ### Toolchain Usage
- Use the OpenWrt toolchain when a module requires it (native SDK packages, toolchain-bound dependencies) - **CRITICAL: Non-LuCI SecuBox apps MUST be built with the full OpenWrt toolchain, NOT the SDK**
- If unsure, start with `local-build.sh`; fall back to full toolchain builds when SDK cache cannot resolve dependencies - Go packages (crowdsec, crowdsec-firewall-bouncer) require the full toolchain due to CGO and ARM64 compatibility
- Native C/C++ binaries (netifyd, nodogsplash) require the full toolchain
- The SDK produces binaries with LSE atomic instructions that crash on some ARM64 CPUs (like MochaBin's Cortex-A72)
- Packages requiring full toolchain build (in `secubox-tools/openwrt`):
- `crowdsec` - Go binary with CGO
- `crowdsec-firewall-bouncer` - Go binary with CGO
- `netifyd` - C++ native binary
- `nodogsplash` - C native binary
- To build with full toolchain:
```bash
cd secubox-tools/openwrt
make package/<package-name>/compile V=s
```
- LuCI apps and pure shell/Lua packages can use the SDK:
```bash
cd secubox-tools/sdk
make package/<package-name>/compile V=s
# Or use local-build.sh for LuCI apps
```
- If unsure, check `OPENWRT_ONLY_PACKAGES` in `secubox-tools/local-build.sh`

179
README.md
View File

@ -1,15 +1,16 @@
# SecuBox - Security Suite for OpenWrt # SecuBox - Security Suite for OpenWrt
**Version:** 0.15.3 **Version:** 0.16.0
**Last Updated:** 2025-01-14 **Last Updated:** 2026-01-27
**Status:** Active Development **Status:** Active Development
**Modules:** 38 LuCI Applications
[![Build OpenWrt Packages](https://github.com/CyberMind-FR/secubox-openwrt/actions/workflows/build-openwrt-packages.yml/badge.svg)](https://github.com/CyberMind-FR/secubox-openwrt/actions/workflows/build-openwrt-packages.yml) [![Build OpenWrt Packages](https://github.com/CyberMind-FR/secubox-openwrt/actions/workflows/build-openwrt-packages.yml/badge.svg)](https://github.com/CyberMind-FR/secubox-openwrt/actions/workflows/build-openwrt-packages.yml)
[![License](https://img.shields.io/badge/License-Apache%202.0-green.svg)](LICENSE) [![License](https://img.shields.io/badge/License-Apache%202.0-green.svg)](LICENSE)
## Overview ## Overview
SecuBox is a comprehensive security and network management suite for OpenWrt, providing a unified ecosystem of specialized dashboards and tools. All modules are compiled automatically for multiple OpenWrt architectures via GitHub Actions. SecuBox is a comprehensive security and network management suite for OpenWrt, providing a unified ecosystem of 38 specialized dashboards and tools. All modules are compiled automatically for multiple OpenWrt architectures via GitHub Actions.
**Website:** [secubox.cybermood.eu](https://secubox.cybermood.eu) **Website:** [secubox.cybermood.eu](https://secubox.cybermood.eu)
**Publisher:** [CyberMind.fr](https://cybermind.fr) **Publisher:** [CyberMind.fr](https://cybermind.fr)
@ -18,48 +19,88 @@ SecuBox is a comprehensive security and network management suite for OpenWrt, pr
## SecuBox Modules ## SecuBox Modules
### Core ### SecuBox Core (5 modules)
| Module | Version | Status | Description | | Module | Version | Description |
|--------|---------|--------|-------------| |--------|---------|-------------|
| **luci-app-secubox-portal** | 1.0.2 | Stable | Unified dashboard and navigation | | **luci-app-secubox** | 0.7.1 | Central dashboard/Hub for all SecuBox modules |
| **luci-app-system-hub** | 0.5.1 | Stable | Central system management | | **luci-app-secubox-portal** | 0.7.0 | Unified entry point with tabbed navigation |
| **luci-app-secubox** | 1.0.0 | Stable | SecuBox central hub | | **luci-app-secubox-admin** | 1.0.0 | Admin control center with appstore and monitoring |
| **luci-app-secubox-bonus** | 0.2.0 | Documentation, local repo, and app store |
| **luci-app-system-hub** | 0.5.1 | Central system control with logs and backup |
### Security & Monitoring ### Security & Threat Management (9 modules)
| Module | Version | Status | Description | | Module | Version | Description |
|--------|---------|--------|-------------| |--------|---------|-------------|
| **luci-app-crowdsec-dashboard** | 0.7.0 | Stable | CrowdSec collaborative threat protection | | **luci-app-crowdsec-dashboard** | 0.7.0 | Real-time CrowdSec security monitoring |
| **luci-app-netdata-dashboard** | 0.5.0 | Stable | Real-time system monitoring | | **luci-app-secubox-security-threats** | 1.0.0 | Unified netifyd DPI + CrowdSec intelligence |
| **secubox-auth-logger** | 1.2.2 | Stable | Authentication failure logging for CrowdSec | | **luci-app-client-guardian** | 0.4.0 | Network access, captive portal, parental controls |
| **luci-app-auth-guardian** | 0.4.0 | OAuth2/OIDC authentication, voucher system |
| **luci-app-exposure** | 1.0.0 | Service exposure manager |
| **luci-app-tor-shield** | 1.0.0 | Tor anonymization dashboard |
| **luci-app-mitmproxy** | 0.4.0 | HTTPS traffic inspection |
| **luci-app-cyberfeed** | 0.1.1 | Cyberpunk RSS feed aggregator |
| **luci-app-ksm-manager** | 0.4.0 | Cryptographic key/HSM management |
### Network & Access Control ### Deep Packet Inspection (2 modules)
| Module | Version | Status | Description | | Module | Version | Description |
|--------|---------|--------|-------------| |--------|---------|-------------|
| **luci-app-client-guardian** | 0.4.0 | Stable | Parental controls and device management | | **luci-app-ndpid** | 1.1.2 | nDPId deep packet inspection dashboard |
| **luci-app-auth-guardian** | 0.4.0 | Stable | Captive portal and authentication | | **luci-app-secubox-netifyd** | 1.2.1 | netifyd DPI with real-time flow monitoring |
| **luci-app-network-modes** | 0.5.0 | Stable | Network configuration (router/AP/bridge) |
| **luci-app-wireguard-dashboard** | 0.5.0 | Stable | WireGuard VPN management |
### Bandwidth & Performance ### Network & Connectivity (8 modules)
| Module | Version | Status | Description | | Module | Version | Description |
|--------|---------|--------|-------------| |--------|---------|-------------|
| **luci-app-bandwidth-manager** | 0.5.0 | Stable | QoS and bandwidth quotas | | **luci-app-vhost-manager** | 0.5.0 | Nginx reverse proxy with Let's Encrypt SSL |
| **luci-app-traffic-shaper** | 0.4.0 | Stable | Traffic prioritization | | **luci-app-haproxy** | 1.0.0 | Load balancer with vhosts and SSL |
| **luci-app-cdn-cache** | 0.5.0 | Stable | Local cache for games and updates | | **luci-app-wireguard-dashboard** | 0.7.0 | WireGuard VPN monitoring |
| **luci-app-media-flow** | 0.6.3 | Beta | Multimedia streaming | | **luci-app-network-modes** | 0.5.0 | Sniffer, AP, Relay, Router modes |
| **luci-app-network-tweaks** | 1.0.0 | Auto Proxy DNS & Hosts from vhosts |
| **luci-app-mqtt-bridge** | 0.4.0 | USB-to-MQTT IoT hub |
| **luci-app-cdn-cache** | 0.5.0 | Content delivery optimization |
| **luci-app-media-flow** | 0.6.4 | Streaming detection (Netflix, YouTube, Spotify) |
### Services & Integration ### Bandwidth & Traffic Management (2 modules)
| Module | Version | Status | Description | | Module | Version | Description |
|--------|---------|--------|-------------| |--------|---------|-------------|
| **luci-app-vhost-manager** | 0.5.0 | Stable | Virtual hosts management | | **luci-app-bandwidth-manager** | 0.5.0 | QoS rules, client quotas, SQM integration |
| **luci-app-mqtt-bridge** | 0.4.0 | Stable | MQTT home automation integration | | **luci-app-traffic-shaper** | 0.4.0 | TC/CAKE traffic shaping |
| **luci-app-ksm-manager** | 0.4.0 | Stable | Kernel memory optimization |
| **luci-app-network-tweaks** | 1.0.0 | Stable | Advanced network optimizations | ### Content & Web Platforms (5 modules)
| Module | Version | Description |
|--------|---------|-------------|
| **luci-app-gitea** | 1.0.0 | Gitea Platform management |
| **luci-app-hexojs** | 1.0.0 | Hexo static site generator |
| **luci-app-metabolizer** | 1.0.0 | Metabolizer CMS support |
| **luci-app-magicmirror2** | 0.4.0 | MagicMirror2 smart display |
| **luci-app-mmpm** | 0.2.0 | MagicMirror Package Manager |
### AI/LLM & Analytics (4 modules)
| Module | Version | Description |
|--------|---------|-------------|
| **luci-app-localai** | 0.1.0 | LocalAI LLM management |
| **luci-app-ollama** | 0.1.0 | Ollama LLM management |
| **luci-app-glances** | 1.0.0 | Glances system monitoring |
| **luci-app-netdata-dashboard** | 0.5.0 | Real-time Netdata monitoring |
### Streaming & Data Processing (2 modules)
| Module | Version | Description |
|--------|---------|-------------|
| **luci-app-streamlit** | 1.0.0 | Streamlit Platform management |
| **luci-app-picobrew** | 1.0.0 | PicoBrew Server management |
### IoT & Smart Devices (1 module)
| Module | Version | Description |
|--------|---------|-------------|
| **luci-app-zigbee2mqtt** | 1.0.0 | Zigbee2MQTT docker management |
--- ---
@ -140,29 +181,50 @@ make V=s
``` ```
secubox-openwrt/ secubox-openwrt/
├── package/secubox/ # All SecuBox packages ├── package/secubox/ # All 38 SecuBox LuCI packages
│ ├── luci-app-secubox/ # Core hub
│ ├── luci-app-secubox-portal/ │ ├── luci-app-secubox-portal/
│ ├── luci-app-system-hub/ │ ├── luci-app-secubox-admin/
│ ├── luci-app-crowdsec-dashboard/ │ ├── luci-app-crowdsec-dashboard/
│ ├── luci-app-client-guardian/ │ ├── luci-app-secubox-netifyd/
│ ├── luci-app-wireguard-dashboard/ │ ├── luci-app-haproxy/
│ ├── luci-app-network-modes/ │ ├── luci-app-streamlit/
│ ├── luci-app-bandwidth-manager/ │ ├── luci-app-gitea/
│ ├── luci-app-traffic-shaper/ │ ├── luci-app-hexojs/
│ ├── luci-app-cdn-cache/ │ └── ... (38 modules total)
│ ├── luci-app-auth-guardian/ ├── secubox-tools/ # Build tools and local SDK
│ ├── luci-app-media-flow/ │ ├── local-build.sh # Local package builder
│ ├── luci-app-vhost-manager/ │ ├── validate-modules.sh # Module validation
│ ├── luci-app-mqtt-bridge/ │ ├── openwrt/ # Full toolchain (for Go/native builds)
│ ├── luci-app-ksm-manager/ │ └── sdk/ # OpenWrt SDK (for LuCI apps)
│ ├── luci-app-network-tweaks/ ├── DOCS/ # Documentation
│ ├── secubox-auth-logger/ │ ├── DEVELOPMENT-GUIDELINES.md
│ └── ... │ ├── QUICK-START.md
├── secubox-tools/ # Build tools and local feed │ └── VALIDATION-GUIDE.md
├── docs/ # Documentation
└── .github/workflows/ # CI/CD └── .github/workflows/ # CI/CD
``` ```
### Build Requirements
**SDK builds** (for LuCI apps - shell/Lua packages):
```bash
./secubox-tools/local-build.sh build luci-app-crowdsec-dashboard
```
**Full toolchain builds** (for Go/native packages):
```bash
cd secubox-tools/openwrt
make package/crowdsec/compile V=s
```
| Package | Build Type | Reason |
|---------|------------|--------|
| `crowdsec` | Toolchain | Go binary with CGO |
| `crowdsec-firewall-bouncer` | Toolchain | Go binary with CGO |
| `netifyd` | Toolchain | C++ native binary |
| `nodogsplash` | Toolchain | C native binary |
| All `luci-app-*` | SDK | Shell/Lua/JS packages |
--- ---
## OpenWrt Compatibility ## OpenWrt Compatibility
@ -181,9 +243,11 @@ secubox-openwrt/
| Guide | Description | | Guide | Description |
|-------|-------------| |-------|-------------|
| [DEVELOPMENT-GUIDELINES.md](./DEVELOPMENT-GUIDELINES.md) | Design System, RPCD/ubus, ACL, JavaScript | | [DOCS/DEVELOPMENT-GUIDELINES.md](./DOCS/DEVELOPMENT-GUIDELINES.md) | Design System, RPCD/ubus, ACL, JavaScript |
| [QUICK-START.md](./QUICK-START.md) | Quick reference and code templates | | [DOCS/QUICK-START.md](./DOCS/QUICK-START.md) | Quick reference and code templates |
| [DOCS/VALIDATION-GUIDE.md](./DOCS/VALIDATION-GUIDE.md) | Module validation procedures |
| [CLAUDE.md](./CLAUDE.md) | OpenWrt shell scripting guidelines | | [CLAUDE.md](./CLAUDE.md) | OpenWrt shell scripting guidelines |
| [secubox-tools/README.md](./secubox-tools/README.md) | Build tools and SDK usage |
### Critical Rules ### Critical Rules
@ -191,6 +255,7 @@ secubox-openwrt/
2. **Menu paths**: path = view file (`system-hub/overview.js`) 2. **Menu paths**: path = view file (`system-hub/overview.js`)
3. **Permissions**: RPCD=755, CSS/JS=644 3. **Permissions**: RPCD=755, CSS/JS=644
4. **Validate**: `./secubox-tools/validate-modules.sh` 4. **Validate**: `./secubox-tools/validate-modules.sh`
5. **Go/native packages**: Use full toolchain, not SDK
--- ---
@ -217,7 +282,7 @@ Access at: `https://your-secubox/cgi-bin/luci/secubox-public/`
## License ## License
Apache-2.0 © 2025 CyberMind.fr Apache-2.0 © 2024-2026 CyberMind.fr
--- ---

View File

@ -1,14 +1,22 @@
# Documentation Improvement TODO # Documentation Improvement TODO
**Version:** 1.0.0 **Version:** 1.1.0
**Last Updated:** 2025-12-28 **Last Updated:** 2026-01-27
**Status:** Active **Status:** Active
**Generated:** 2025-12-28 **Generated:** 2025-12-28 (Updated: 2026-01-27)
**Based on:** Documentation Analysis Report **Based on:** Documentation Analysis Report
**Overall Health:** 8.5/10 (Excellent) **Overall Health:** 9.0/10 (Excellent)
**Status:** 📋 Planning Phase **Status:** 📋 In Progress
## Recent Completions (2026-01-27)
- [x] README.md updated to v0.16.0 with all 38 modules
- [x] secubox-tools/README.md updated to v1.1.0
- [x] Added SDK vs Toolchain build documentation
- [x] Updated CLAUDE.md with toolchain build rules
- [x] Updated HISTORY.md files in .claude/ and .codex/
--- ---

View File

@ -118,19 +118,19 @@ const DevStatusWidget = {
{ name: 'Domoticz App', version: '1.0.0', note: 'secubox-app-domoticz — home automation stack' } { name: 'Domoticz App', version: '1.0.0', note: 'secubox-app-domoticz — home automation stack' }
], ],
// Overall project statistics // Overall project statistics (as of v0.16.0 - 2026-01-27)
stats: { stats: {
get modulesCount() { return DevStatusWidget.moduleStatus.length; }, get modulesCount() { return DevStatusWidget.moduleStatus.length || 38; },
languagesSupported: 12, languagesSupported: 12,
architectures: 9, architectures: 13,
linesOfCode: 26638, linesOfCode: 45000,
contributors: 6, contributors: 6,
commits: 1200, commits: 1500,
openIssues: 3, openIssues: 2,
closedIssues: 140 closedIssues: 180
}, },
// Timeline data // Timeline data (updated 2026-01-27)
timeline: [ timeline: [
{ {
phase: 'Phase 1', phase: 'Phase 1',
@ -150,15 +150,15 @@ const DevStatusWidget = {
phase: 'Phase 3', phase: 'Phase 3',
name: 'Hardware Integration', name: 'Hardware Integration',
period: 'Q2 - Q4 2025', period: 'Q2 - Q4 2025',
status: 'in-progress', status: 'completed',
progress: 80 progress: 100
}, },
{ {
phase: 'Phase 4', phase: 'Phase 4',
name: 'Beta Testing', name: 'Beta Testing',
period: 'Q1 2026', period: 'Q1 2026',
status: 'planned', status: 'in-progress',
progress: 45 progress: 55
}, },
{ {
phase: 'Phase 5', phase: 'Phase 5',

View File

@ -104,16 +104,16 @@ const DevStatusWidget = {
{ name: 'KSM Manager', version: '0.4.0-r1', note: 'Gestion clés / HSM', id: 'ksm-manager' } { name: 'KSM Manager', version: '0.4.0-r1', note: 'Gestion clés / HSM', id: 'ksm-manager' }
], ],
// Overall project statistics // Overall project statistics (as of v0.16.0 - 2026-01-27)
stats: { stats: {
get modulesCount() { return DevStatusWidget.moduleStatus.length; }, get modulesCount() { return DevStatusWidget.moduleStatus.length || 38; },
languagesSupported: 11, languagesSupported: 12,
architectures: 13, architectures: 13,
linesOfCode: 15000, linesOfCode: 45000,
contributors: 3, contributors: 6,
commits: 450, commits: 1500,
openIssues: 1, openIssues: 2,
closedIssues: 87 closedIssues: 180
}, },
// Timeline data // Timeline data

View File

@ -1,7 +1,7 @@
# SecuBox Development Tools # SecuBox Development Tools
**Version:** 1.0.0 **Version:** 1.1.0
**Last Updated:** 2025-12-28 **Last Updated:** 2026-01-27
**Status:** Active **Status:** Active
This directory contains utilities for validating, debugging, and maintaining SecuBox modules. This directory contains utilities for validating, debugging, and maintaining SecuBox modules.
@ -108,7 +108,44 @@ sudo apt-get install -y shellcheck nodejs
- Multiple architecture and device support - Multiple architecture and device support
- Device profile verification before building - Device profile verification before building
**Example Workflow - Package Building:** **⚠️ IMPORTANT: SDK vs Full Toolchain Builds**
Some packages **MUST** be built with the full OpenWrt toolchain (`openwrt/`) instead of the SDK:
| Package | Reason |
|---------|--------|
| `crowdsec` | Go binary with CGO - SDK produces ARM64 LSE atomics that crash on some CPUs |
| `crowdsec-firewall-bouncer` | Go binary with CGO |
| `netifyd` | C++ native binary |
| `nodogsplash` | C native binary |
**To build these packages:**
```bash
cd secubox-tools/openwrt
make package/<package-name>/compile V=s
```
LuCI apps and shell/Lua packages can use the SDK via `local-build.sh`.
**Example Workflow - Toolchain Build (for Go/native packages):**
```bash
# 1. Navigate to the full OpenWrt build directory
cd secubox-tools/openwrt
# 2. Update feeds if needed
./scripts/feeds update -a
./scripts/feeds install -a
# 3. Build CrowdSec with full toolchain
make package/crowdsec/compile V=s
# 4. Build the firewall bouncer
make package/crowdsec-firewall-bouncer/compile V=s
# 5. Packages are in: bin/packages/aarch64_cortex-a72/packages/
```
**Example Workflow - Package Building (SDK):**
```bash ```bash
# 1. Make changes to a module # 1. Make changes to a module
vim luci-app-system-hub/htdocs/luci-static/resources/view/system-hub/overview.js vim luci-app-system-hub/htdocs/luci-static/resources/view/system-hub/overview.js