From 8c062b6d6070e9c8b1786f8269bb6f4181d6dbd0 Mon Sep 17 00:00:00 2001 From: CyberMind-FR Date: Tue, 27 Jan 2026 10:58:48 +0100 Subject: [PATCH] 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 --- .claude/HISTORY.md | 28 ++- .codex/HISTORY.md | 18 +- CHANGELOG.md | 136 +++++++++++++ CLAUDE.md | 27 ++- README.md | 179 ++++++++++++------ TODO-ANALYSE.md | 18 +- .../luci-static/secubox/dev-status-widget.js | 24 +-- .../resources/system-hub/dev-status-widget.js | 16 +- secubox-tools/README.md | 43 ++++- 9 files changed, 397 insertions(+), 92 deletions(-) create mode 100644 CHANGELOG.md diff --git a/.claude/HISTORY.md b/.claude/HISTORY.md index 4d39c67a..bb888545 100644 --- a/.claude/HISTORY.md +++ b/.claude/HISTORY.md @@ -1,6 +1,6 @@ # SecuBox UI & Theme History -_Last updated: 2025-12-28_ +_Last updated: 2026-01-27_ 1. **Unified Dashboard Refresh (2025-12-20)** - 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. - Always clear `/tmp/luci-*` after copying UI assets. -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. - - Help/Bonus page adopts the shared header, navbar entry, and chips. +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. + - Help/Bonus page adopts the shared header, navbar entry, and chips. - 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. diff --git a/.codex/HISTORY.md b/.codex/HISTORY.md index 5dc0b105..aee6946c 100644 --- a/.codex/HISTORY.md +++ b/.codex/HISTORY.md @@ -38,5 +38,21 @@ - **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. -- **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. + +- **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. diff --git a/CHANGELOG.md b/CHANGELOG.md new file mode 100644 index 00000000..07fd66b2 --- /dev/null +++ b/CHANGELOG.md @@ -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 diff --git a/CLAUDE.md b/CLAUDE.md index 1a13d14f..2f8a08f1 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -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 ### Toolchain Usage -- Use the OpenWrt toolchain when a module requires it (native SDK packages, toolchain-bound dependencies) -- If unsure, start with `local-build.sh`; fall back to full toolchain builds when SDK cache cannot resolve dependencies +- **CRITICAL: Non-LuCI SecuBox apps MUST be built with the full OpenWrt toolchain, NOT the SDK** + - 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//compile V=s + ``` + +- LuCI apps and pure shell/Lua packages can use the SDK: + ```bash + cd secubox-tools/sdk + make package//compile V=s + # Or use local-build.sh for LuCI apps + ``` + +- If unsure, check `OPENWRT_ONLY_PACKAGES` in `secubox-tools/local-build.sh` diff --git a/README.md b/README.md index 9e1ff353..8ea4c951 100644 --- a/README.md +++ b/README.md @@ -1,15 +1,16 @@ # SecuBox - Security Suite for OpenWrt -**Version:** 0.15.3 -**Last Updated:** 2025-01-14 +**Version:** 0.16.0 +**Last Updated:** 2026-01-27 **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) [![License](https://img.shields.io/badge/License-Apache%202.0-green.svg)](LICENSE) ## 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) **Publisher:** [CyberMind.fr](https://cybermind.fr) @@ -18,48 +19,88 @@ SecuBox is a comprehensive security and network management suite for OpenWrt, pr ## SecuBox Modules -### Core +### SecuBox Core (5 modules) -| Module | Version | Status | Description | -|--------|---------|--------|-------------| -| **luci-app-secubox-portal** | 1.0.2 | Stable | Unified dashboard and navigation | -| **luci-app-system-hub** | 0.5.1 | Stable | Central system management | -| **luci-app-secubox** | 1.0.0 | Stable | SecuBox central hub | +| Module | Version | Description | +|--------|---------|-------------| +| **luci-app-secubox** | 0.7.1 | Central dashboard/Hub for all SecuBox modules | +| **luci-app-secubox-portal** | 0.7.0 | Unified entry point with tabbed navigation | +| **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 | -|--------|---------|--------|-------------| -| **luci-app-crowdsec-dashboard** | 0.7.0 | Stable | CrowdSec collaborative threat protection | -| **luci-app-netdata-dashboard** | 0.5.0 | Stable | Real-time system monitoring | -| **secubox-auth-logger** | 1.2.2 | Stable | Authentication failure logging for CrowdSec | +| Module | Version | Description | +|--------|---------|-------------| +| **luci-app-crowdsec-dashboard** | 0.7.0 | Real-time CrowdSec security monitoring | +| **luci-app-secubox-security-threats** | 1.0.0 | Unified netifyd DPI + CrowdSec intelligence | +| **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 | -|--------|---------|--------|-------------| -| **luci-app-client-guardian** | 0.4.0 | Stable | Parental controls and device management | -| **luci-app-auth-guardian** | 0.4.0 | Stable | Captive portal and authentication | -| **luci-app-network-modes** | 0.5.0 | Stable | Network configuration (router/AP/bridge) | -| **luci-app-wireguard-dashboard** | 0.5.0 | Stable | WireGuard VPN management | +| Module | Version | Description | +|--------|---------|-------------| +| **luci-app-ndpid** | 1.1.2 | nDPId deep packet inspection dashboard | +| **luci-app-secubox-netifyd** | 1.2.1 | netifyd DPI with real-time flow monitoring | -### Bandwidth & Performance +### Network & Connectivity (8 modules) -| Module | Version | Status | Description | -|--------|---------|--------|-------------| -| **luci-app-bandwidth-manager** | 0.5.0 | Stable | QoS and bandwidth quotas | -| **luci-app-traffic-shaper** | 0.4.0 | Stable | Traffic prioritization | -| **luci-app-cdn-cache** | 0.5.0 | Stable | Local cache for games and updates | -| **luci-app-media-flow** | 0.6.3 | Beta | Multimedia streaming | +| Module | Version | Description | +|--------|---------|-------------| +| **luci-app-vhost-manager** | 0.5.0 | Nginx reverse proxy with Let's Encrypt SSL | +| **luci-app-haproxy** | 1.0.0 | Load balancer with vhosts and SSL | +| **luci-app-wireguard-dashboard** | 0.7.0 | WireGuard VPN monitoring | +| **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 | -|--------|---------|--------|-------------| -| **luci-app-vhost-manager** | 0.5.0 | Stable | Virtual hosts management | -| **luci-app-mqtt-bridge** | 0.4.0 | Stable | MQTT home automation integration | -| **luci-app-ksm-manager** | 0.4.0 | Stable | Kernel memory optimization | -| **luci-app-network-tweaks** | 1.0.0 | Stable | Advanced network optimizations | +| Module | Version | Description | +|--------|---------|-------------| +| **luci-app-bandwidth-manager** | 0.5.0 | QoS rules, client quotas, SQM integration | +| **luci-app-traffic-shaper** | 0.4.0 | TC/CAKE traffic shaping | + +### 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/ -├── package/secubox/ # All SecuBox packages +├── package/secubox/ # All 38 SecuBox LuCI packages +│ ├── luci-app-secubox/ # Core hub │ ├── luci-app-secubox-portal/ -│ ├── luci-app-system-hub/ +│ ├── luci-app-secubox-admin/ │ ├── luci-app-crowdsec-dashboard/ -│ ├── luci-app-client-guardian/ -│ ├── luci-app-wireguard-dashboard/ -│ ├── luci-app-network-modes/ -│ ├── luci-app-bandwidth-manager/ -│ ├── luci-app-traffic-shaper/ -│ ├── luci-app-cdn-cache/ -│ ├── luci-app-auth-guardian/ -│ ├── luci-app-media-flow/ -│ ├── luci-app-vhost-manager/ -│ ├── luci-app-mqtt-bridge/ -│ ├── luci-app-ksm-manager/ -│ ├── luci-app-network-tweaks/ -│ ├── secubox-auth-logger/ -│ └── ... -├── secubox-tools/ # Build tools and local feed -├── docs/ # Documentation +│ ├── luci-app-secubox-netifyd/ +│ ├── luci-app-haproxy/ +│ ├── luci-app-streamlit/ +│ ├── luci-app-gitea/ +│ ├── luci-app-hexojs/ +│ └── ... (38 modules total) +├── secubox-tools/ # Build tools and local SDK +│ ├── local-build.sh # Local package builder +│ ├── validate-modules.sh # Module validation +│ ├── openwrt/ # Full toolchain (for Go/native builds) +│ └── sdk/ # OpenWrt SDK (for LuCI apps) +├── DOCS/ # Documentation +│ ├── DEVELOPMENT-GUIDELINES.md +│ ├── QUICK-START.md +│ └── VALIDATION-GUIDE.md └── .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 @@ -181,9 +243,11 @@ secubox-openwrt/ | Guide | Description | |-------|-------------| -| [DEVELOPMENT-GUIDELINES.md](./DEVELOPMENT-GUIDELINES.md) | Design System, RPCD/ubus, ACL, JavaScript | -| [QUICK-START.md](./QUICK-START.md) | Quick reference and code templates | +| [DOCS/DEVELOPMENT-GUIDELINES.md](./DOCS/DEVELOPMENT-GUIDELINES.md) | Design System, RPCD/ubus, ACL, JavaScript | +| [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 | +| [secubox-tools/README.md](./secubox-tools/README.md) | Build tools and SDK usage | ### Critical Rules @@ -191,6 +255,7 @@ secubox-openwrt/ 2. **Menu paths**: path = view file (`system-hub/overview.js`) 3. **Permissions**: RPCD=755, CSS/JS=644 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 -Apache-2.0 © 2025 CyberMind.fr +Apache-2.0 © 2024-2026 CyberMind.fr --- diff --git a/TODO-ANALYSE.md b/TODO-ANALYSE.md index 7e6bf67f..d9e74ec9 100644 --- a/TODO-ANALYSE.md +++ b/TODO-ANALYSE.md @@ -1,14 +1,22 @@ # Documentation Improvement TODO -**Version:** 1.0.0 -**Last Updated:** 2025-12-28 +**Version:** 1.1.0 +**Last Updated:** 2026-01-27 **Status:** Active -**Generated:** 2025-12-28 +**Generated:** 2025-12-28 (Updated: 2026-01-27) **Based on:** Documentation Analysis Report -**Overall Health:** 8.5/10 (Excellent) -**Status:** 📋 Planning Phase +**Overall Health:** 9.0/10 (Excellent) +**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/ --- diff --git a/package/secubox/luci-app-secubox-bonus/htdocs/luci-static/secubox/dev-status-widget.js b/package/secubox/luci-app-secubox-bonus/htdocs/luci-static/secubox/dev-status-widget.js index 476594c0..0f2e7551 100644 --- a/package/secubox/luci-app-secubox-bonus/htdocs/luci-static/secubox/dev-status-widget.js +++ b/package/secubox/luci-app-secubox-bonus/htdocs/luci-static/secubox/dev-status-widget.js @@ -118,19 +118,19 @@ const DevStatusWidget = { { 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: { - get modulesCount() { return DevStatusWidget.moduleStatus.length; }, + get modulesCount() { return DevStatusWidget.moduleStatus.length || 38; }, languagesSupported: 12, - architectures: 9, - linesOfCode: 26638, + architectures: 13, + linesOfCode: 45000, contributors: 6, - commits: 1200, - openIssues: 3, - closedIssues: 140 + commits: 1500, + openIssues: 2, + closedIssues: 180 }, - // Timeline data + // Timeline data (updated 2026-01-27) timeline: [ { phase: 'Phase 1', @@ -150,15 +150,15 @@ const DevStatusWidget = { phase: 'Phase 3', name: 'Hardware Integration', period: 'Q2 - Q4 2025', - status: 'in-progress', - progress: 80 + status: 'completed', + progress: 100 }, { phase: 'Phase 4', name: 'Beta Testing', period: 'Q1 2026', - status: 'planned', - progress: 45 + status: 'in-progress', + progress: 55 }, { phase: 'Phase 5', diff --git a/package/secubox/luci-app-system-hub/htdocs/luci-static/resources/system-hub/dev-status-widget.js b/package/secubox/luci-app-system-hub/htdocs/luci-static/resources/system-hub/dev-status-widget.js index 055f95aa..a31ef9f0 100644 --- a/package/secubox/luci-app-system-hub/htdocs/luci-static/resources/system-hub/dev-status-widget.js +++ b/package/secubox/luci-app-system-hub/htdocs/luci-static/resources/system-hub/dev-status-widget.js @@ -104,16 +104,16 @@ const DevStatusWidget = { { 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: { - get modulesCount() { return DevStatusWidget.moduleStatus.length; }, - languagesSupported: 11, + get modulesCount() { return DevStatusWidget.moduleStatus.length || 38; }, + languagesSupported: 12, architectures: 13, - linesOfCode: 15000, - contributors: 3, - commits: 450, - openIssues: 1, - closedIssues: 87 + linesOfCode: 45000, + contributors: 6, + commits: 1500, + openIssues: 2, + closedIssues: 180 }, // Timeline data diff --git a/secubox-tools/README.md b/secubox-tools/README.md index 617db988..3691bbe4 100644 --- a/secubox-tools/README.md +++ b/secubox-tools/README.md @@ -1,7 +1,7 @@ # SecuBox Development Tools -**Version:** 1.0.0 -**Last Updated:** 2025-12-28 +**Version:** 1.1.0 +**Last Updated:** 2026-01-27 **Status:** Active 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 - 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//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 # 1. Make changes to a module vim luci-app-system-hub/htdocs/luci-static/resources/view/system-hub/overview.js