d92b3360ea
feat(repo): Add unified repo-deploy.sh and multi-arch support
...
- Add repo-deploy.sh script for staging and deploying packages
- Replicate _all.ipk packages to all 6 architectures automatically
- Add "Refresh Indexes" button to LuCI dashboard for local deployments
- Add RPCD refresh method to regenerate Packages indexes on-device
- Support architectures: aarch64_cortex-a72, aarch64_cortex-a53,
aarch64_generic, x86_64, mips_24kc, mipsel_24kc
Usage:
./secubox-tools/repo-deploy.sh stage --clean
./secubox-tools/repo-deploy.sh deploy root@192.168.255.1
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-03-19 07:48:59 +01:00
9ddf5a4e0b
fix(build): Fix 16 failed packages with missing Build/Compile and URL config
...
- Add missing 'define Build/Compile' to script-only packages:
- secubox-app-config-vault
- secubox-app-gotosocial
- secubox-app-ipblocklist
- secubox-app-ksmbd
- secubox-app-qbittorrent
- secubox-app-talk-hpb
- secubox-app-vhost-manager
- secubox-app-webtorrent
- secubox-avatar-tap
- secubox-core-users
- secubox-dpi-dual
- secubox-app-backup
- Fix luci-app-interceptor: Add missing BuildPackage call
- Fix luci-app-master-link: Correct RPCD handler filename (underscore → dash)
- Fix luci-app-config-vault: Add Build/Compile definition
- Create secubox-console Makefile (new package for remote management)
- Create secubox-app-backup cron job file
- Update secubox-app-repo: Change feed URLs from local IP (192.168.255.1:8888)
to repo.secubox.in domain with HTTPS and proper src/gz format
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-03-18 18:01:51 +01:00
c80b10f18d
feat(luci): Add provisioning and ttyd deployment UI
...
Config Vault Dashboard (overview.js):
- "Device Provisioning" card with 3 action buttons
- Provision Remote: Modal to push clone to remote node
- Serve via HTTP: Generate clone for HTTP download
- Restore All: Confirmation modal to restore all modules
- RPC calls: provision, serve_clone, restore_all
RTTY Remote Dashboard (dashboard.js):
- "Deploy ttyd to All" global button in controls
- Per-node "ttyd" button in Connected Nodes table
- Confirmation modal for bulk deployment
- Progress spinner and result display
- RPC calls: deploy_ttyd, install_remote
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-03-15 15:30:32 +01:00
e86545bd3a
feat(config-vault): Add device provisioning system
...
Implement full provisioning workflow for SecuBox device replication:
Auto-Restore:
- import-clone <file> --apply: Auto-restore all modules after import
- restore-all: Restore all modules from vault
Remote Provisioning:
- provision <node|all>: Push clone to remote nodes via RPC proxy
- Transfer clone as base64 to remote node
- Trigger import+apply on remote
First-Boot Pull:
- pull-config <master>: Pull config from master node
- HTTP download or RPC fallback
- Auto-reboot after apply, marks /etc/secubox-provisioned
HTTP Serve:
- serve-clone: Generate clone at /www/config-vault/
- Enables HTTP-based config distribution
RPCD Methods (6 new):
- restore_all, import_apply, provision
- pull_config, export_clone_b64, serve_clone
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-03-15 15:18:54 +01:00
ec4aadbaa3
feat(config-vault): Add Configuration Vault system with Gitea sync
...
New packages:
- secubox-app-config-vault: Git-based config versioning CLI (configvaultctl)
- luci-app-config-vault: KISS-themed dashboard with status rings
Features:
- 9 configuration modules (users, network, services, security, etc.)
- Auto-commit and auto-push to private Gitea repository
- Export/import clone tarballs for device provisioning
- Commit history browser with restore capability
Also adds System Hardware Report to secubox-app-reporter:
- CPU/Memory/Disk/Temperature gauges with animations
- Environmental impact card (power/kWh/CO₂ estimates)
- Health recommendations based on system metrics
- Debug log viewer with severity highlighting
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-03-13 12:49:33 +01:00