feat(structure): reorganize luci-app packages into package/secubox/ + appstore migration
Major structural reorganization and feature additions: ## Folder Reorganization - Move 17 luci-app-* packages to package/secubox/ (except luci-app-secubox core hub) - Update all tooling to support new structure: - secubox-tools/quick-deploy.sh: search both locations - secubox-tools/validate-modules.sh: validate both directories - secubox-tools/fix-permissions.sh: fix permissions in both locations - .github/workflows/test-validate.yml: build from both paths - Update README.md links to new package/secubox/ paths ## AppStore Migration (Complete) - Add catalog entries for all remaining luci-app packages: - network-tweaks.json: Network optimization tools - secubox-bonus.json: Documentation & demos hub - Total: 24 apps in AppStore catalog (22 existing + 2 new) - New category: 'documentation' for docs/demos/tutorials ## VHost Manager v2.0 Enhancements - Add profile activation system for Internal Services and Redirects - Implement createVHost() API wrapper for template-based deployment - Fix Virtual Hosts view rendering with proper LuCI patterns - Fix RPCD backend shell script errors (remove invalid local declarations) - Extend backend validation for nginx return directives (redirect support) - Add section_id parameter for named VHost profiles - Add Remove button to Redirects page for feature parity - Update README to v2.0 with comprehensive feature documentation ## Network Tweaks Dashboard - Close button added to component details modal Files changed: 340+ (336 renames with preserved git history) Packages affected: 19 luci-app, 2 secubox-app, 1 theme, 4 tools 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
This commit is contained in:
parent
12774589fc
commit
31a87c5d7a
@ -187,7 +187,11 @@
|
||||
"Bash(do echo \"=== $makefile ===\" grep -A15 \"define Package.*install\" \"$makefile\")",
|
||||
"Bash(ssh root@192.168.8.191:*)",
|
||||
"Bash(flatpak-spawn --host which:*)",
|
||||
"Bash(export PATH=\"$HOME/.local/bin:$PATH\")"
|
||||
"Bash(export PATH=\"$HOME/.local/bin:$PATH\")",
|
||||
"Bash(jsonfilter:*)",
|
||||
"Bash(for app in luci-app-auth-guardian luci-app-bandwidth-manager luci-app-cdn-cache luci-app-client-guardian luci-app-crowdsec-dashboard)",
|
||||
"Bash(do echo \"Moving $app...\")",
|
||||
"Bash(git mv:*)"
|
||||
]
|
||||
}
|
||||
}
|
||||
|
||||
20
.github/workflows/test-validate.yml
vendored
20
.github/workflows/test-validate.yml
vendored
@ -26,10 +26,10 @@ jobs:
|
||||
- name: Validate Makefile structure
|
||||
run: |
|
||||
echo "📋 Validating Makefile structure..."
|
||||
|
||||
|
||||
ERRORS=0
|
||||
|
||||
for makefile in luci-app-*/Makefile; do
|
||||
|
||||
for makefile in luci-app-*/Makefile package/secubox/luci-app-*/Makefile; do
|
||||
if [[ -f "$makefile" ]]; then
|
||||
PKG=$(dirname "$makefile")
|
||||
echo " 🔍 Checking $PKG..."
|
||||
@ -161,8 +161,8 @@ jobs:
|
||||
- name: Validate package structure
|
||||
run: |
|
||||
echo "📋 Validating package structure..."
|
||||
|
||||
for pkg in luci-app-*/; do
|
||||
|
||||
for pkg in luci-app-*/ package/secubox/luci-app-*/; do
|
||||
if [[ -d "$pkg" ]]; then
|
||||
echo " 📦 Checking $pkg..."
|
||||
|
||||
@ -271,7 +271,7 @@ jobs:
|
||||
- name: Copy packages
|
||||
run: |
|
||||
# IMPORTANT: Copy packages DIRECTLY into package/, not into a subdirectory
|
||||
for pkg in luci-app-*/; do
|
||||
for pkg in luci-app-*/ package/secubox/luci-app-*/; do
|
||||
if [[ -d "$pkg" && -f "${pkg}Makefile" ]]; then
|
||||
PKG_NAME=$(basename "$pkg")
|
||||
echo "📦 Copying $PKG_NAME..."
|
||||
@ -379,18 +379,18 @@ jobs:
|
||||
echo "" >> PACKAGES.md
|
||||
echo "| Package | Version | Description |" >> PACKAGES.md
|
||||
echo "|---------|---------|-------------|" >> PACKAGES.md
|
||||
|
||||
for makefile in luci-app-*/Makefile; do
|
||||
|
||||
for makefile in luci-app-*/Makefile package/secubox/luci-app-*/Makefile; do
|
||||
if [[ -f "$makefile" ]]; then
|
||||
PKG_NAME=$(grep "^PKG_NAME:=" "$makefile" | cut -d'=' -f2)
|
||||
PKG_VERSION=$(grep "^PKG_VERSION:=" "$makefile" | cut -d'=' -f2)
|
||||
PKG_TITLE=$(grep "^LUCI_TITLE:=" "$makefile" | cut -d'=' -f2- | sed 's/^[[:space:]]*//')
|
||||
|
||||
|
||||
# Fallback if LUCI_TITLE not found
|
||||
if [[ -z "$PKG_TITLE" ]]; then
|
||||
PKG_TITLE=$(grep "TITLE:=" "$makefile" | head -1 | cut -d'=' -f2- | sed 's/^[[:space:]]*//')
|
||||
fi
|
||||
|
||||
|
||||
echo "| $PKG_NAME | $PKG_VERSION | $PKG_TITLE |" >> PACKAGES.md
|
||||
fi
|
||||
done
|
||||
|
||||
26
README.md
26
README.md
@ -65,7 +65,7 @@ Central control and remote assistance dashboard for OpenWrt.
|
||||
- 📋 Unified logs from all components
|
||||
- 📅 Scheduled tasks (health reports, backups)
|
||||
|
||||
[View Details](luci-app-system-hub/README.md)
|
||||
[View Details](package/secubox/luci-app-system-hub/README.md)
|
||||
|
||||
---
|
||||
|
||||
@ -81,7 +81,7 @@ Modern dashboard for CrowdSec intrusion prevention on OpenWrt.
|
||||
- 🌍 Geographic threat visualization
|
||||
- ⚡ Auto-refresh with dark cybersecurity theme
|
||||
|
||||
[View Details](luci-app-crowdsec-dashboard/README.md)
|
||||
[View Details](package/secubox/luci-app-crowdsec-dashboard/README.md)
|
||||
|
||||
---
|
||||
|
||||
@ -95,7 +95,7 @@ System monitoring dashboard with live metrics visualization.
|
||||
- 🎨 Animated gauges and sparklines
|
||||
- 🔄 2-second auto-refresh
|
||||
|
||||
[View Details](luci-app-netdata-dashboard/README.md)
|
||||
[View Details](package/secubox/luci-app-netdata-dashboard/README.md)
|
||||
|
||||
---
|
||||
|
||||
@ -111,7 +111,7 @@ Network intelligence dashboard with DPI for OpenWrt.
|
||||
- 💻 Automatic device discovery
|
||||
- 📊 Traffic categorization (Web, Streaming, Gaming, VoIP)
|
||||
|
||||
[View Details](luci-app-netifyd-dashboard/README.md)
|
||||
[View Details](package/secubox/luci-app-netifyd-dashboard/README.md)
|
||||
|
||||
---
|
||||
|
||||
@ -127,7 +127,7 @@ Configure different network operation modes with one click.
|
||||
- 🎛️ One-click mode switching with automatic backup
|
||||
- 📊 Real-time interface and service status monitoring
|
||||
|
||||
[View Details](luci-app-network-modes/README.md)
|
||||
[View Details](package/secubox/luci-app-network-modes/README.md)
|
||||
|
||||
---
|
||||
|
||||
@ -143,7 +143,7 @@ Modern WireGuard VPN monitoring dashboard.
|
||||
- ⚙️ Configuration visualization
|
||||
- 🔒 Secure (private keys never exposed)
|
||||
|
||||
[View Details](luci-app-wireguard-dashboard/README.md)
|
||||
[View Details](package/secubox/luci-app-wireguard-dashboard/README.md)
|
||||
|
||||
---
|
||||
|
||||
@ -158,7 +158,7 @@ NAC system with captive portal, quarantine, and parental controls.
|
||||
- 👨👩👧👦 Parental controls (time limits, content filtering)
|
||||
- 🔔 SMS/Email alerts for security events
|
||||
|
||||
[View Details](luci-app-client-guardian/README.md)
|
||||
[View Details](package/secubox/luci-app-client-guardian/README.md)
|
||||
|
||||
---
|
||||
|
||||
@ -172,7 +172,7 @@ Comprehensive authentication and session management.
|
||||
- 🍪 Secure session management
|
||||
- ⏭️ MAC/IP/Domain bypass rules
|
||||
|
||||
[View Details](luci-app-auth-guardian/README.md)
|
||||
[View Details](package/secubox/luci-app-auth-guardian/README.md)
|
||||
|
||||
---
|
||||
|
||||
@ -188,7 +188,7 @@ Advanced bandwidth management with automatic media detection.
|
||||
- ⏰ Time-based scheduling (peak/off-peak)
|
||||
- 👥 Per-client statistics and controls
|
||||
|
||||
[View Details](luci-app-bandwidth-manager/README.md)
|
||||
[View Details](package/secubox/luci-app-bandwidth-manager/README.md)
|
||||
|
||||
---
|
||||
|
||||
@ -207,7 +207,7 @@ Advanced streaming and media traffic monitoring.
|
||||
- Spotify, Apple Music, Tidal
|
||||
- Zoom, Teams, Google Meet, WebEx
|
||||
|
||||
[View Details](luci-app-media-flow/README.md)
|
||||
[View Details](package/secubox/luci-app-media-flow/README.md)
|
||||
|
||||
---
|
||||
|
||||
@ -228,7 +228,7 @@ Local CDN cache proxy for bandwidth savings.
|
||||
- Static content (JS, CSS, images)
|
||||
- Configurable TTL per content type
|
||||
|
||||
[View Details](luci-app-cdn-cache/README.md)
|
||||
[View Details](package/secubox/luci-app-cdn-cache/README.md)
|
||||
|
||||
---
|
||||
|
||||
@ -242,7 +242,7 @@ USB-aware MQTT bridge for sensors and automation gear.
|
||||
- 🔐 Broker credential + retention management from the UI
|
||||
- 📁 Saves configuration snapshots for rollback
|
||||
|
||||
[View Details](luci-app-mqtt-bridge/README.md)
|
||||
[View Details](package/secubox/luci-app-mqtt-bridge/README.md)
|
||||
|
||||
---
|
||||
|
||||
@ -259,7 +259,7 @@ Virtual host and local SaaS gateway management.
|
||||
- Nextcloud, GitLab, Jellyfin
|
||||
- Home Assistant and more
|
||||
|
||||
[View Details](luci-app-vhost-manager/README.md)
|
||||
[View Details](package/secubox/luci-app-vhost-manager/README.md)
|
||||
|
||||
---
|
||||
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user