From 31a87c5d7a9733fd9809b273a2e8a064d427c3ce Mon Sep 17 00:00:00 2001 From: CyberMind-FR Date: Thu, 1 Jan 2026 14:59:38 +0100 Subject: [PATCH] feat(structure): reorganize luci-app packages into package/secubox/ + appstore migration MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 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 --- .claude/settings.local.json | 6 ++- .github/workflows/test-validate.yml | 20 ++++---- README.md | 26 +++++------ .../.github/workflows/build.yml | 0 .../secubox/luci-app-auth-guardian}/Makefile | 0 .../secubox/luci-app-auth-guardian}/README.md | 0 .../luci-app-auth-guardian}/demo/index.html | 0 .../resources/auth-guardian/api.js | 0 .../resources/auth-guardian/common.css | 0 .../resources/auth-guardian/dashboard.css | 0 .../resources/view/auth-guardian/bypass.js | 0 .../resources/view/auth-guardian/oauth.js | 0 .../resources/view/auth-guardian/overview.js | 0 .../resources/view/auth-guardian/sessions.js | 0 .../resources/view/auth-guardian/splash.js | 0 .../resources/view/auth-guardian/vouchers.js | 0 .../root/etc/config/authguard | 0 .../root/usr/libexec/rpcd/luci.auth-guardian | 0 .../luci/menu.d/luci-app-auth-guardian.json | 0 .../rpcd/acl.d/luci-app-auth-guardian.json | 0 .../.github/workflows/build.yml | 0 .../luci-app-bandwidth-manager}/Makefile | 0 .../luci-app-bandwidth-manager}/README.md | 0 .../demo/index.html | 0 .../resources/bandwidth-manager/api.js | 0 .../resources/bandwidth-manager/common.css | 0 .../resources/bandwidth-manager/dashboard.css | 0 .../view/bandwidth-manager/classes.js | 0 .../view/bandwidth-manager/clients.js | 0 .../resources/view/bandwidth-manager/media.js | 0 .../view/bandwidth-manager/overview.js | 0 .../view/bandwidth-manager/quotas.js | 0 .../resources/view/bandwidth-manager/rules.js | 0 .../view/bandwidth-manager/schedules.js | 0 .../view/bandwidth-manager/settings.js | 0 .../resources/view/bandwidth-manager/usage.js | 0 .../root/etc/config/bandwidth | 0 .../usr/libexec/rpcd/luci.bandwidth-manager | 0 .../menu.d/luci-app-bandwidth-manager.json | 0 .../acl.d/luci-app-bandwidth-manager.json | 0 .../.github/workflows/build.yml | 0 .../secubox/luci-app-cdn-cache}/Makefile | 0 .../secubox/luci-app-cdn-cache}/README.md | 0 .../secubox/luci-app-cdn-cache}/demo.html | 0 .../luci-static/resources/cdn-cache/api.js | 0 .../resources/cdn-cache/common.css | 0 .../resources/cdn-cache/dashboard.css | 0 .../luci-static/resources/cdn-cache/nav.js | 0 .../resources/view/cdn-cache/cache.js | 0 .../resources/view/cdn-cache/maintenance.js | 0 .../resources/view/cdn-cache/overview.js | 0 .../resources/view/cdn-cache/policies.js | 0 .../resources/view/cdn-cache/settings.js | 0 .../resources/view/cdn-cache/statistics.js | 0 .../root/etc/config/cdn-cache | 0 .../root/etc/init.d/cdn-cache | 0 .../root/etc/uci-defaults/99-cdn-cache | 0 .../root/usr/libexec/rpcd/luci.cdn-cache | 0 .../share/luci/menu.d/luci-app-cdn-cache.json | 0 .../share/rpcd/acl.d/luci-app-cdn-cache.json | 0 .../.github/workflows/build.yml | 0 .../luci-app-client-guardian}/Makefile | 0 .../luci-app-client-guardian}/README.md | 0 .../resources/client-guardian/api.js | 0 .../resources/client-guardian/common.css | 0 .../resources/client-guardian/dashboard.css | 0 .../resources/view/client-guardian/alerts.js | 0 .../resources/view/client-guardian/captive.js | 0 .../resources/view/client-guardian/clients.js | 0 .../resources/view/client-guardian/logs.js | 0 .../view/client-guardian/overview.js | 0 .../view/client-guardian/parental.js | 0 .../resources/view/client-guardian/portal.js | 0 .../view/client-guardian/settings.js | 0 .../resources/view/client-guardian/zones.js | 0 .../root/etc/config/client-guardian | 0 .../usr/libexec/rpcd/luci.client-guardian | 0 .../luci/menu.d/luci-app-client-guardian.json | 0 .../rpcd/acl.d/luci-app-client-guardian.json | 0 .../.github/workflows/build.yml | 0 .../luci-app-crowdsec-dashboard}/.gitignore | 0 .../luci-app-crowdsec-dashboard}/LICENSE | 0 .../luci-app-crowdsec-dashboard}/Makefile | 0 .../luci-app-crowdsec-dashboard}/README.md | 0 .../resources/crowdsec-dashboard/api.js | 0 .../resources/crowdsec-dashboard/common.css | 0 .../crowdsec-dashboard/dashboard.css | 0 .../view/crowdsec-dashboard/alerts.js | 0 .../view/crowdsec-dashboard/bouncers.js | 0 .../view/crowdsec-dashboard/decisions.js | 0 .../view/crowdsec-dashboard/metrics.js | 0 .../view/crowdsec-dashboard/overview.js | 0 .../view/crowdsec-dashboard/settings.js | 0 .../resources/view/crowdsec-dashboard/waf.js | 0 .../po/templates/crowdsec-dashboard.pot | 0 .../usr/libexec/rpcd/luci.crowdsec-dashboard | 0 .../menu.d/luci-app-crowdsec-dashboard.json | 0 .../acl.d/luci-app-crowdsec-dashboard.json | 0 .../secubox/luci-app-ksm-manager}/Makefile | 0 .../secubox/luci-app-ksm-manager}/README.md | 0 .../luci-static/resources/ksm-manager/api.js | 0 .../resources/ksm-manager/common.css | 0 .../resources/view/ksm-manager/audit.js | 0 .../view/ksm-manager/certificates.js | 0 .../resources/view/ksm-manager/hsm.js | 0 .../resources/view/ksm-manager/keys.js | 0 .../resources/view/ksm-manager/overview.js | 0 .../resources/view/ksm-manager/secrets.js | 0 .../resources/view/ksm-manager/settings.js | 0 .../resources/view/ksm-manager/ssh.js | 0 .../root/usr/libexec/rpcd/luci.ksm-manager | 0 .../luci/menu.d/luci-app-ksm-manager.json | 0 .../rpcd/acl.d/luci-app-ksm-manager.json | 0 .../secubox/luci-app-media-flow}/Makefile | 0 .../secubox/luci-app-media-flow}/README.md | 0 .../luci-static/resources/media-flow/api.js | 0 .../resources/media-flow/common.css | 0 .../resources/view/media-flow/alerts.js | 0 .../resources/view/media-flow/clients.js | 0 .../resources/view/media-flow/dashboard.js | 0 .../resources/view/media-flow/history.js | 0 .../resources/view/media-flow/services.js | 0 .../root/etc/config/media_flow | 0 .../root/usr/libexec/rpcd/luci.media-flow | 0 .../luci/menu.d/luci-app-media-flow.json | 0 .../share/rpcd/acl.d/luci-app-media-flow.json | 0 .../secubox/luci-app-mqtt-bridge}/Makefile | 0 .../secubox/luci-app-mqtt-bridge}/README.md | 0 .../luci-static/resources/mqtt-bridge/api.js | 0 .../resources/mqtt-bridge/common.css | 0 .../luci-static/resources/mqtt-bridge/nav.js | 0 .../resources/view/mqtt-bridge/adapters.js | 0 .../resources/view/mqtt-bridge/devices.js | 0 .../resources/view/mqtt-bridge/overview.js | 0 .../resources/view/mqtt-bridge/settings.js | 0 .../luasrc/controller/secubox/mqtt-bridge.lua | 0 .../root/etc/config/mqtt-bridge | 0 .../root/etc/init.d/mqtt-bridge | 0 .../root/usr/libexec/rpcd/luci.mqtt-bridge | 0 .../root/usr/sbin/mqtt-bridge | 0 .../root/usr/sbin/mqtt-bridge-monitor | 0 .../luci/menu.d/luci-app-mqtt-bridge.json | 0 .../usr/share/mqtt-bridge/usb-database.sh | 0 .../rpcd/acl.d/luci-app-mqtt-bridge.json | 0 .../.github/workflows/build.yml | 0 .../luci-app-netdata-dashboard}/Makefile | 0 .../luci-app-netdata-dashboard}/README.md | 0 .../resources/netdata-dashboard/api.js | 0 .../resources/netdata-dashboard/common.css | 0 .../resources/netdata-dashboard/dashboard.css | 0 .../view/netdata-dashboard/dashboard.js | 0 .../view/netdata-dashboard/network.js | 0 .../view/netdata-dashboard/processes.js | 0 .../view/netdata-dashboard/realtime.js | 0 .../view/netdata-dashboard/settings.js | 0 .../view/netdata-dashboard/system.js | 0 .../usr/libexec/rpcd/luci.netdata-dashboard | 0 .../menu.d/luci-app-netdata-dashboard.json | 0 .../acl.d/luci-app-netdata-dashboard.json | 0 .../.github/workflows/build.yml | 0 .../luci-app-netifyd-dashboard}/Makefile | 0 .../luci-app-netifyd-dashboard}/README.md | 0 .../resources/netifyd-dashboard/api.js | 0 .../resources/netifyd-dashboard/common.css | 0 .../resources/netifyd-dashboard/dashboard.css | 0 .../view/netifyd-dashboard/applications.js | 0 .../view/netifyd-dashboard/devices.js | 0 .../resources/view/netifyd-dashboard/flows.js | 0 .../view/netifyd-dashboard/overview.js | 0 .../resources/view/netifyd-dashboard/risks.js | 0 .../view/netifyd-dashboard/settings.js | 0 .../view/netifyd-dashboard/talkers.js | 0 .../view/netifyd-dashboard/wizard.js | 0 .../usr/libexec/rpcd/luci.netifyd-dashboard | 0 .../menu.d/luci-app-netifyd-dashboard.json | 0 .../acl.d/luci-app-netifyd-dashboard.json | 0 .../.github/workflows/build.yml | 0 .../luci-app-network-modes}/CODEX-v0.3.5.md | 0 .../secubox/luci-app-network-modes}/Makefile | 0 .../secubox/luci-app-network-modes}/README.md | 0 .../resources/network-modes/api.js | 0 .../resources/network-modes/common.css | 0 .../resources/network-modes/dashboard.css | 0 .../resources/network-modes/helpers.js | 0 .../view/network-modes/accesspoint.js | 0 .../resources/view/network-modes/dmz.js | 0 .../resources/view/network-modes/doublenat.js | 0 .../resources/view/network-modes/multiwan.js | 0 .../resources/view/network-modes/overview.js | 0 .../resources/view/network-modes/relay.js | 0 .../resources/view/network-modes/router.js | 0 .../resources/view/network-modes/settings.js | 0 .../resources/view/network-modes/sniffer.js | 0 .../resources/view/network-modes/travel.js | 0 .../resources/view/network-modes/vpnrelay.js | 0 .../resources/view/network-modes/wizard.js | 0 .../root/etc/config/network-modes | 0 .../root/usr/libexec/rpcd/luci.network-modes | 0 .../luci/menu.d/luci-app-network-modes.json | 0 .../rpcd/acl.d/luci-app-network-modes.json | 0 .../secubox/luci-app-secubox-bonus}/Makefile | 0 .../secubox/luci-app-secubox-bonus}/README.md | 0 .../htdocs/luci-static/secubox/CNAME | 0 .../secubox/blog/auth-guardian-setup.html | 0 .../secubox/blog/bandwidth-manager-guide.html | 0 .../secubox/blog/local-saas-vhost.html | 0 .../htdocs/luci-static/secubox/campaign.html | 0 .../htdocs/luci-static/secubox/demo-auth.html | 0 .../luci-static/secubox/demo-bandwidth.html | 0 .../luci-static/secubox/demo-cdn-cache.html | 0 .../secubox/demo-client-guardian.html | 0 .../luci-static/secubox/demo-crowdsec.html | 0 .../luci-static/secubox/demo-dev-status.html | 0 .../luci-static/secubox/demo-ksm-manager.html | 0 .../luci-static/secubox/demo-media.html | 0 .../luci-static/secubox/demo-netdata.html | 0 .../luci-static/secubox/demo-netifyd.html | 0 .../secubox/demo-network-modes.html | 0 .../luci-static/secubox/demo-secubox-hub.html | 0 .../secubox/demo-traffic-shaper.html | 0 .../luci-static/secubox/demo-vhost.html | 0 .../luci-static/secubox/demo-wireguard.html | 0 .../luci-static/secubox/dev-status-widget.js | 0 .../htdocs/luci-static/secubox/i18n.js | 0 .../htdocs/luci-static/secubox/i18n/ar.json | 0 .../luci-static/secubox/i18n/campaign.json | 0 .../htdocs/luci-static/secubox/i18n/de.json | 0 .../luci-static/secubox/i18n/demo-auth.json | 0 .../htdocs/luci-static/secubox/i18n/en.json | 0 .../htdocs/luci-static/secubox/i18n/es.json | 0 .../htdocs/luci-static/secubox/i18n/fr.json | 0 .../htdocs/luci-static/secubox/i18n/it.json | 0 .../htdocs/luci-static/secubox/i18n/ja.json | 0 .../htdocs/luci-static/secubox/i18n/nl.json | 0 .../htdocs/luci-static/secubox/i18n/pt.json | 0 .../htdocs/luci-static/secubox/i18n/ru.json | 0 .../htdocs/luci-static/secubox/i18n/zh.json | 0 .../htdocs/luci-static/secubox/index.html | 0 .../.github/workflows/build.yml | 0 .../luci-app-system-hub}/CODEX-v0.3.5.md | 0 .../secubox/luci-app-system-hub}/Makefile | 0 .../secubox/luci-app-system-hub}/README.md | 0 .../luci-static/resources/system-hub/api.js | 0 .../resources/system-hub/backup.css | 0 .../resources/system-hub/common.css | 0 .../resources/system-hub/components.css | 0 .../resources/system-hub/dashboard.css | 0 .../resources/system-hub/dev-status-widget.js | 0 .../resources/system-hub/health.css | 0 .../luci-static/resources/system-hub/logs.css | 0 .../luci-static/resources/system-hub/nav.js | 0 .../resources/system-hub/overview.css | 0 .../resources/system-hub/services.css | 0 .../resources/system-hub/theme-assets.js | 0 .../luci-static/resources/system-hub/theme.js | 0 .../resources/view/system-hub/backup.js | 0 .../view/system-hub/cdn-cache-link.js | 0 .../resources/view/system-hub/components.js | 0 .../resources/view/system-hub/dev-status.js | 0 .../resources/view/system-hub/diagnostics.js | 0 .../resources/view/system-hub/health.js | 0 .../resources/view/system-hub/logs.js | 0 .../view/system-hub/network-modes-link.js | 0 .../resources/view/system-hub/overview.js | 0 .../resources/view/system-hub/remote.js | 0 .../resources/view/system-hub/services.js | 0 .../resources/view/system-hub/settings.js | 0 .../root/etc/config/system-hub | 0 .../root/usr/libexec/rpcd/luci.system-hub | 0 .../luci/menu.d/luci-app-system-hub.json | 0 .../share/rpcd/acl.d/luci-app-system-hub.json | 0 .../tests/MANUAL_TESTS.md | 0 .../luci-app-system-hub}/tests/README.md | 0 .../tests/frontend/test-diagnostics-ui.js | 0 .../integration/test-diagnostic-workflow.sh | 0 .../tests/test-profiles.sh | 0 .../secubox/luci-app-traffic-shaper}/Makefile | 0 .../luci-app-traffic-shaper}/README.md | 0 .../resources/traffic-shaper/api.js | 0 .../resources/traffic-shaper/common.css | 0 .../resources/traffic-shaper/dashboard.css | 0 .../resources/view/traffic-shaper/classes.js | 0 .../resources/view/traffic-shaper/overview.js | 0 .../resources/view/traffic-shaper/presets.js | 0 .../resources/view/traffic-shaper/rules.js | 0 .../resources/view/traffic-shaper/stats.js | 0 .../root/etc/config/traffic-shaper | 0 .../root/usr/libexec/rpcd/luci.traffic-shaper | 0 .../luci/menu.d/luci-app-traffic-shaper.json | 0 .../rpcd/acl.d/luci-app-traffic-shaper.json | 0 .../.github/workflows/build.yml | 0 .../secubox/luci-app-vhost-manager}/Makefile | 0 .../secubox/luci-app-vhost-manager}/README.md | 0 .../luci-app-vhost-manager}/demo/index.html | 0 .../resources/vhost-manager/api.js | 0 .../resources/vhost-manager/common.css | 0 .../resources/vhost-manager/dashboard.css | 0 .../resources/vhost-manager/templates.json | 0 .../luci-static/resources/vhost-manager/ui.js | 0 .../view/vhost-manager/certificates.js | 0 .../resources/view/vhost-manager/internal.js | 0 .../resources/view/vhost-manager/logs.js | 0 .../resources/view/vhost-manager/overview.js | 0 .../resources/view/vhost-manager/redirects.js | 0 .../resources/view/vhost-manager/ssl.js | 0 .../resources/view/vhost-manager/vhosts.js | 0 .../root/etc/config/vhost | 0 .../root/etc/config/vhost_manager | 0 .../root/etc/config/vhosts | 0 .../50-luci-app-vhost-manager-migrate | 0 .../root/usr/libexec/rpcd/luci.vhost-manager | 0 .../luci/menu.d/luci-app-vhost-manager.json | 0 .../rpcd/acl.d/luci-app-vhost-manager.json | 0 .../root/usr/share/vhost-manager/README.md | 0 .../usr/share/vhost-manager/templates.json | 0 .../.github/workflows/build.yml | 0 .../luci-app-wireguard-dashboard}/Makefile | 0 .../luci-app-wireguard-dashboard}/README.md | 0 .../view/wireguard-dashboard/config.js | 0 .../view/wireguard-dashboard/overview.js | 0 .../view/wireguard-dashboard/peers.js | 0 .../view/wireguard-dashboard/qrcodes.js | 0 .../view/wireguard-dashboard/settings.js | 0 .../view/wireguard-dashboard/traffic.js | 0 .../resources/wireguard-dashboard/api.js | 0 .../resources/wireguard-dashboard/common.css | 0 .../wireguard-dashboard/dashboard.css | 0 .../usr/libexec/rpcd/luci.wireguard-dashboard | 0 .../menu.d/luci-app-wireguard-dashboard.json | 0 .../acl.d/luci-app-wireguard-dashboard.json | 0 .../secubox/luci-app-zigbee2mqtt}/Makefile | 0 .../secubox/luci-app-zigbee2mqtt}/README.md | 0 .../resources/view/zigbee2mqtt/overview.js | 0 .../luci-static/resources/zigbee2mqtt/api.js | 0 .../resources/zigbee2mqtt/common.css | 0 .../luasrc/controller/secubox/zigbee2mqtt.lua | 0 .../root/usr/libexec/rpcd/luci.zigbee2mqtt | 0 .../luci/menu.d/luci-app-zigbee2mqtt.json | 0 .../rpcd/acl.d/luci-app-zigbee2mqtt.json | 0 .../plugins/catalog/network-tweaks.json | 46 +++++++++++++++++++ .../plugins/catalog/secubox-bonus.json | 42 +++++++++++++++++ secubox-tools/fix-permissions.sh | 11 ++++- secubox-tools/quick-deploy.sh | 11 +++-- secubox-tools/validate-modules.sh | 41 +++++++++++------ 344 files changed, 159 insertions(+), 44 deletions(-) rename {luci-app-auth-guardian => package/secubox/luci-app-auth-guardian}/.github/workflows/build.yml (100%) rename {luci-app-auth-guardian => package/secubox/luci-app-auth-guardian}/Makefile (100%) rename {luci-app-auth-guardian => package/secubox/luci-app-auth-guardian}/README.md (100%) rename {luci-app-auth-guardian => package/secubox/luci-app-auth-guardian}/demo/index.html (100%) rename {luci-app-auth-guardian => package/secubox/luci-app-auth-guardian}/htdocs/luci-static/resources/auth-guardian/api.js (100%) rename {luci-app-auth-guardian => package/secubox/luci-app-auth-guardian}/htdocs/luci-static/resources/auth-guardian/common.css (100%) rename {luci-app-auth-guardian => package/secubox/luci-app-auth-guardian}/htdocs/luci-static/resources/auth-guardian/dashboard.css (100%) rename {luci-app-auth-guardian => package/secubox/luci-app-auth-guardian}/htdocs/luci-static/resources/view/auth-guardian/bypass.js (100%) rename {luci-app-auth-guardian => package/secubox/luci-app-auth-guardian}/htdocs/luci-static/resources/view/auth-guardian/oauth.js (100%) rename {luci-app-auth-guardian => package/secubox/luci-app-auth-guardian}/htdocs/luci-static/resources/view/auth-guardian/overview.js (100%) rename {luci-app-auth-guardian => package/secubox/luci-app-auth-guardian}/htdocs/luci-static/resources/view/auth-guardian/sessions.js (100%) rename {luci-app-auth-guardian => package/secubox/luci-app-auth-guardian}/htdocs/luci-static/resources/view/auth-guardian/splash.js (100%) rename {luci-app-auth-guardian => package/secubox/luci-app-auth-guardian}/htdocs/luci-static/resources/view/auth-guardian/vouchers.js (100%) rename {luci-app-auth-guardian => package/secubox/luci-app-auth-guardian}/root/etc/config/authguard (100%) rename {luci-app-auth-guardian => package/secubox/luci-app-auth-guardian}/root/usr/libexec/rpcd/luci.auth-guardian (100%) rename {luci-app-auth-guardian => package/secubox/luci-app-auth-guardian}/root/usr/share/luci/menu.d/luci-app-auth-guardian.json (100%) rename {luci-app-auth-guardian => package/secubox/luci-app-auth-guardian}/root/usr/share/rpcd/acl.d/luci-app-auth-guardian.json (100%) rename {luci-app-bandwidth-manager => package/secubox/luci-app-bandwidth-manager}/.github/workflows/build.yml (100%) rename {luci-app-bandwidth-manager => package/secubox/luci-app-bandwidth-manager}/Makefile (100%) rename {luci-app-bandwidth-manager => package/secubox/luci-app-bandwidth-manager}/README.md (100%) rename {luci-app-bandwidth-manager => package/secubox/luci-app-bandwidth-manager}/demo/index.html (100%) rename {luci-app-bandwidth-manager => package/secubox/luci-app-bandwidth-manager}/htdocs/luci-static/resources/bandwidth-manager/api.js (100%) rename {luci-app-bandwidth-manager => package/secubox/luci-app-bandwidth-manager}/htdocs/luci-static/resources/bandwidth-manager/common.css (100%) rename {luci-app-bandwidth-manager => package/secubox/luci-app-bandwidth-manager}/htdocs/luci-static/resources/bandwidth-manager/dashboard.css (100%) rename {luci-app-bandwidth-manager => package/secubox/luci-app-bandwidth-manager}/htdocs/luci-static/resources/view/bandwidth-manager/classes.js (100%) rename {luci-app-bandwidth-manager => package/secubox/luci-app-bandwidth-manager}/htdocs/luci-static/resources/view/bandwidth-manager/clients.js (100%) rename {luci-app-bandwidth-manager => package/secubox/luci-app-bandwidth-manager}/htdocs/luci-static/resources/view/bandwidth-manager/media.js (100%) rename {luci-app-bandwidth-manager => package/secubox/luci-app-bandwidth-manager}/htdocs/luci-static/resources/view/bandwidth-manager/overview.js (100%) rename {luci-app-bandwidth-manager => package/secubox/luci-app-bandwidth-manager}/htdocs/luci-static/resources/view/bandwidth-manager/quotas.js (100%) rename {luci-app-bandwidth-manager => package/secubox/luci-app-bandwidth-manager}/htdocs/luci-static/resources/view/bandwidth-manager/rules.js (100%) rename {luci-app-bandwidth-manager => package/secubox/luci-app-bandwidth-manager}/htdocs/luci-static/resources/view/bandwidth-manager/schedules.js (100%) rename {luci-app-bandwidth-manager => package/secubox/luci-app-bandwidth-manager}/htdocs/luci-static/resources/view/bandwidth-manager/settings.js (100%) rename {luci-app-bandwidth-manager => package/secubox/luci-app-bandwidth-manager}/htdocs/luci-static/resources/view/bandwidth-manager/usage.js (100%) rename {luci-app-bandwidth-manager => package/secubox/luci-app-bandwidth-manager}/root/etc/config/bandwidth (100%) rename {luci-app-bandwidth-manager => package/secubox/luci-app-bandwidth-manager}/root/usr/libexec/rpcd/luci.bandwidth-manager (100%) rename {luci-app-bandwidth-manager => package/secubox/luci-app-bandwidth-manager}/root/usr/share/luci/menu.d/luci-app-bandwidth-manager.json (100%) rename {luci-app-bandwidth-manager => package/secubox/luci-app-bandwidth-manager}/root/usr/share/rpcd/acl.d/luci-app-bandwidth-manager.json (100%) rename {luci-app-cdn-cache => package/secubox/luci-app-cdn-cache}/.github/workflows/build.yml (100%) rename {luci-app-cdn-cache => package/secubox/luci-app-cdn-cache}/Makefile (100%) rename {luci-app-cdn-cache => package/secubox/luci-app-cdn-cache}/README.md (100%) rename {luci-app-cdn-cache => package/secubox/luci-app-cdn-cache}/demo.html (100%) rename {luci-app-cdn-cache => package/secubox/luci-app-cdn-cache}/htdocs/luci-static/resources/cdn-cache/api.js (100%) rename {luci-app-cdn-cache => package/secubox/luci-app-cdn-cache}/htdocs/luci-static/resources/cdn-cache/common.css (100%) rename {luci-app-cdn-cache => package/secubox/luci-app-cdn-cache}/htdocs/luci-static/resources/cdn-cache/dashboard.css (100%) rename {luci-app-cdn-cache => package/secubox/luci-app-cdn-cache}/htdocs/luci-static/resources/cdn-cache/nav.js (100%) rename {luci-app-cdn-cache => package/secubox/luci-app-cdn-cache}/htdocs/luci-static/resources/view/cdn-cache/cache.js (100%) rename {luci-app-cdn-cache => package/secubox/luci-app-cdn-cache}/htdocs/luci-static/resources/view/cdn-cache/maintenance.js (100%) rename {luci-app-cdn-cache => package/secubox/luci-app-cdn-cache}/htdocs/luci-static/resources/view/cdn-cache/overview.js (100%) rename {luci-app-cdn-cache => package/secubox/luci-app-cdn-cache}/htdocs/luci-static/resources/view/cdn-cache/policies.js (100%) rename {luci-app-cdn-cache => package/secubox/luci-app-cdn-cache}/htdocs/luci-static/resources/view/cdn-cache/settings.js (100%) rename {luci-app-cdn-cache => package/secubox/luci-app-cdn-cache}/htdocs/luci-static/resources/view/cdn-cache/statistics.js (100%) rename {luci-app-cdn-cache => package/secubox/luci-app-cdn-cache}/root/etc/config/cdn-cache (100%) rename {luci-app-cdn-cache => package/secubox/luci-app-cdn-cache}/root/etc/init.d/cdn-cache (100%) rename {luci-app-cdn-cache => package/secubox/luci-app-cdn-cache}/root/etc/uci-defaults/99-cdn-cache (100%) rename {luci-app-cdn-cache => package/secubox/luci-app-cdn-cache}/root/usr/libexec/rpcd/luci.cdn-cache (100%) rename {luci-app-cdn-cache => package/secubox/luci-app-cdn-cache}/root/usr/share/luci/menu.d/luci-app-cdn-cache.json (100%) rename {luci-app-cdn-cache => package/secubox/luci-app-cdn-cache}/root/usr/share/rpcd/acl.d/luci-app-cdn-cache.json (100%) rename {luci-app-client-guardian => package/secubox/luci-app-client-guardian}/.github/workflows/build.yml (100%) rename {luci-app-client-guardian => package/secubox/luci-app-client-guardian}/Makefile (100%) rename {luci-app-client-guardian => package/secubox/luci-app-client-guardian}/README.md (100%) rename {luci-app-client-guardian => package/secubox/luci-app-client-guardian}/htdocs/luci-static/resources/client-guardian/api.js (100%) rename {luci-app-client-guardian => package/secubox/luci-app-client-guardian}/htdocs/luci-static/resources/client-guardian/common.css (100%) rename {luci-app-client-guardian => package/secubox/luci-app-client-guardian}/htdocs/luci-static/resources/client-guardian/dashboard.css (100%) rename {luci-app-client-guardian => package/secubox/luci-app-client-guardian}/htdocs/luci-static/resources/view/client-guardian/alerts.js (100%) rename {luci-app-client-guardian => package/secubox/luci-app-client-guardian}/htdocs/luci-static/resources/view/client-guardian/captive.js (100%) rename {luci-app-client-guardian => package/secubox/luci-app-client-guardian}/htdocs/luci-static/resources/view/client-guardian/clients.js (100%) rename {luci-app-client-guardian => package/secubox/luci-app-client-guardian}/htdocs/luci-static/resources/view/client-guardian/logs.js (100%) rename {luci-app-client-guardian => package/secubox/luci-app-client-guardian}/htdocs/luci-static/resources/view/client-guardian/overview.js (100%) rename {luci-app-client-guardian => package/secubox/luci-app-client-guardian}/htdocs/luci-static/resources/view/client-guardian/parental.js (100%) rename {luci-app-client-guardian => package/secubox/luci-app-client-guardian}/htdocs/luci-static/resources/view/client-guardian/portal.js (100%) rename {luci-app-client-guardian => package/secubox/luci-app-client-guardian}/htdocs/luci-static/resources/view/client-guardian/settings.js (100%) rename {luci-app-client-guardian => package/secubox/luci-app-client-guardian}/htdocs/luci-static/resources/view/client-guardian/zones.js (100%) rename {luci-app-client-guardian => package/secubox/luci-app-client-guardian}/root/etc/config/client-guardian (100%) rename {luci-app-client-guardian => package/secubox/luci-app-client-guardian}/root/usr/libexec/rpcd/luci.client-guardian (100%) rename {luci-app-client-guardian => package/secubox/luci-app-client-guardian}/root/usr/share/luci/menu.d/luci-app-client-guardian.json (100%) rename {luci-app-client-guardian => package/secubox/luci-app-client-guardian}/root/usr/share/rpcd/acl.d/luci-app-client-guardian.json (100%) rename {luci-app-crowdsec-dashboard => package/secubox/luci-app-crowdsec-dashboard}/.github/workflows/build.yml (100%) rename {luci-app-crowdsec-dashboard => package/secubox/luci-app-crowdsec-dashboard}/.gitignore (100%) rename {luci-app-crowdsec-dashboard => package/secubox/luci-app-crowdsec-dashboard}/LICENSE (100%) rename {luci-app-crowdsec-dashboard => package/secubox/luci-app-crowdsec-dashboard}/Makefile (100%) rename {luci-app-crowdsec-dashboard => package/secubox/luci-app-crowdsec-dashboard}/README.md (100%) rename {luci-app-crowdsec-dashboard => package/secubox/luci-app-crowdsec-dashboard}/htdocs/luci-static/resources/crowdsec-dashboard/api.js (100%) rename {luci-app-crowdsec-dashboard => package/secubox/luci-app-crowdsec-dashboard}/htdocs/luci-static/resources/crowdsec-dashboard/common.css (100%) rename {luci-app-crowdsec-dashboard => package/secubox/luci-app-crowdsec-dashboard}/htdocs/luci-static/resources/crowdsec-dashboard/dashboard.css (100%) rename {luci-app-crowdsec-dashboard => package/secubox/luci-app-crowdsec-dashboard}/htdocs/luci-static/resources/view/crowdsec-dashboard/alerts.js (100%) rename {luci-app-crowdsec-dashboard => package/secubox/luci-app-crowdsec-dashboard}/htdocs/luci-static/resources/view/crowdsec-dashboard/bouncers.js (100%) rename {luci-app-crowdsec-dashboard => package/secubox/luci-app-crowdsec-dashboard}/htdocs/luci-static/resources/view/crowdsec-dashboard/decisions.js (100%) rename {luci-app-crowdsec-dashboard => package/secubox/luci-app-crowdsec-dashboard}/htdocs/luci-static/resources/view/crowdsec-dashboard/metrics.js (100%) rename {luci-app-crowdsec-dashboard => package/secubox/luci-app-crowdsec-dashboard}/htdocs/luci-static/resources/view/crowdsec-dashboard/overview.js (100%) rename {luci-app-crowdsec-dashboard => package/secubox/luci-app-crowdsec-dashboard}/htdocs/luci-static/resources/view/crowdsec-dashboard/settings.js (100%) rename {luci-app-crowdsec-dashboard => package/secubox/luci-app-crowdsec-dashboard}/htdocs/luci-static/resources/view/crowdsec-dashboard/waf.js (100%) rename {luci-app-crowdsec-dashboard => package/secubox/luci-app-crowdsec-dashboard}/po/templates/crowdsec-dashboard.pot (100%) rename {luci-app-crowdsec-dashboard => package/secubox/luci-app-crowdsec-dashboard}/root/usr/libexec/rpcd/luci.crowdsec-dashboard (100%) rename {luci-app-crowdsec-dashboard => package/secubox/luci-app-crowdsec-dashboard}/root/usr/share/luci/menu.d/luci-app-crowdsec-dashboard.json (100%) rename {luci-app-crowdsec-dashboard => package/secubox/luci-app-crowdsec-dashboard}/root/usr/share/rpcd/acl.d/luci-app-crowdsec-dashboard.json (100%) rename {luci-app-ksm-manager => package/secubox/luci-app-ksm-manager}/Makefile (100%) rename {luci-app-ksm-manager => package/secubox/luci-app-ksm-manager}/README.md (100%) rename {luci-app-ksm-manager => package/secubox/luci-app-ksm-manager}/htdocs/luci-static/resources/ksm-manager/api.js (100%) rename {luci-app-ksm-manager => package/secubox/luci-app-ksm-manager}/htdocs/luci-static/resources/ksm-manager/common.css (100%) rename {luci-app-ksm-manager => package/secubox/luci-app-ksm-manager}/htdocs/luci-static/resources/view/ksm-manager/audit.js (100%) rename {luci-app-ksm-manager => package/secubox/luci-app-ksm-manager}/htdocs/luci-static/resources/view/ksm-manager/certificates.js (100%) rename {luci-app-ksm-manager => package/secubox/luci-app-ksm-manager}/htdocs/luci-static/resources/view/ksm-manager/hsm.js (100%) rename {luci-app-ksm-manager => package/secubox/luci-app-ksm-manager}/htdocs/luci-static/resources/view/ksm-manager/keys.js (100%) rename {luci-app-ksm-manager => package/secubox/luci-app-ksm-manager}/htdocs/luci-static/resources/view/ksm-manager/overview.js (100%) rename {luci-app-ksm-manager => package/secubox/luci-app-ksm-manager}/htdocs/luci-static/resources/view/ksm-manager/secrets.js (100%) rename {luci-app-ksm-manager => package/secubox/luci-app-ksm-manager}/htdocs/luci-static/resources/view/ksm-manager/settings.js (100%) rename {luci-app-ksm-manager => package/secubox/luci-app-ksm-manager}/htdocs/luci-static/resources/view/ksm-manager/ssh.js (100%) rename {luci-app-ksm-manager => package/secubox/luci-app-ksm-manager}/root/usr/libexec/rpcd/luci.ksm-manager (100%) rename {luci-app-ksm-manager => package/secubox/luci-app-ksm-manager}/root/usr/share/luci/menu.d/luci-app-ksm-manager.json (100%) rename {luci-app-ksm-manager => package/secubox/luci-app-ksm-manager}/root/usr/share/rpcd/acl.d/luci-app-ksm-manager.json (100%) rename {luci-app-media-flow => package/secubox/luci-app-media-flow}/Makefile (100%) rename {luci-app-media-flow => package/secubox/luci-app-media-flow}/README.md (100%) rename {luci-app-media-flow => package/secubox/luci-app-media-flow}/htdocs/luci-static/resources/media-flow/api.js (100%) rename {luci-app-media-flow => package/secubox/luci-app-media-flow}/htdocs/luci-static/resources/media-flow/common.css (100%) rename {luci-app-media-flow => package/secubox/luci-app-media-flow}/htdocs/luci-static/resources/view/media-flow/alerts.js (100%) rename {luci-app-media-flow => package/secubox/luci-app-media-flow}/htdocs/luci-static/resources/view/media-flow/clients.js (100%) rename {luci-app-media-flow => package/secubox/luci-app-media-flow}/htdocs/luci-static/resources/view/media-flow/dashboard.js (100%) rename {luci-app-media-flow => package/secubox/luci-app-media-flow}/htdocs/luci-static/resources/view/media-flow/history.js (100%) rename {luci-app-media-flow => package/secubox/luci-app-media-flow}/htdocs/luci-static/resources/view/media-flow/services.js (100%) rename {luci-app-media-flow => package/secubox/luci-app-media-flow}/root/etc/config/media_flow (100%) rename {luci-app-media-flow => package/secubox/luci-app-media-flow}/root/usr/libexec/rpcd/luci.media-flow (100%) rename {luci-app-media-flow => package/secubox/luci-app-media-flow}/root/usr/share/luci/menu.d/luci-app-media-flow.json (100%) rename {luci-app-media-flow => package/secubox/luci-app-media-flow}/root/usr/share/rpcd/acl.d/luci-app-media-flow.json (100%) rename {luci-app-mqtt-bridge => package/secubox/luci-app-mqtt-bridge}/Makefile (100%) rename {luci-app-mqtt-bridge => package/secubox/luci-app-mqtt-bridge}/README.md (100%) rename {luci-app-mqtt-bridge => package/secubox/luci-app-mqtt-bridge}/htdocs/luci-static/resources/mqtt-bridge/api.js (100%) rename {luci-app-mqtt-bridge => package/secubox/luci-app-mqtt-bridge}/htdocs/luci-static/resources/mqtt-bridge/common.css (100%) rename {luci-app-mqtt-bridge => package/secubox/luci-app-mqtt-bridge}/htdocs/luci-static/resources/mqtt-bridge/nav.js (100%) rename {luci-app-mqtt-bridge => package/secubox/luci-app-mqtt-bridge}/htdocs/luci-static/resources/view/mqtt-bridge/adapters.js (100%) rename {luci-app-mqtt-bridge => package/secubox/luci-app-mqtt-bridge}/htdocs/luci-static/resources/view/mqtt-bridge/devices.js (100%) rename {luci-app-mqtt-bridge => package/secubox/luci-app-mqtt-bridge}/htdocs/luci-static/resources/view/mqtt-bridge/overview.js (100%) rename {luci-app-mqtt-bridge => package/secubox/luci-app-mqtt-bridge}/htdocs/luci-static/resources/view/mqtt-bridge/settings.js (100%) rename {luci-app-mqtt-bridge => package/secubox/luci-app-mqtt-bridge}/luasrc/controller/secubox/mqtt-bridge.lua (100%) rename {luci-app-mqtt-bridge => package/secubox/luci-app-mqtt-bridge}/root/etc/config/mqtt-bridge (100%) rename {luci-app-mqtt-bridge => package/secubox/luci-app-mqtt-bridge}/root/etc/init.d/mqtt-bridge (100%) rename {luci-app-mqtt-bridge => package/secubox/luci-app-mqtt-bridge}/root/usr/libexec/rpcd/luci.mqtt-bridge (100%) rename {luci-app-mqtt-bridge => package/secubox/luci-app-mqtt-bridge}/root/usr/sbin/mqtt-bridge (100%) rename {luci-app-mqtt-bridge => package/secubox/luci-app-mqtt-bridge}/root/usr/sbin/mqtt-bridge-monitor (100%) rename {luci-app-mqtt-bridge => package/secubox/luci-app-mqtt-bridge}/root/usr/share/luci/menu.d/luci-app-mqtt-bridge.json (100%) rename {luci-app-mqtt-bridge => package/secubox/luci-app-mqtt-bridge}/root/usr/share/mqtt-bridge/usb-database.sh (100%) rename {luci-app-mqtt-bridge => package/secubox/luci-app-mqtt-bridge}/root/usr/share/rpcd/acl.d/luci-app-mqtt-bridge.json (100%) rename {luci-app-netdata-dashboard => package/secubox/luci-app-netdata-dashboard}/.github/workflows/build.yml (100%) rename {luci-app-netdata-dashboard => package/secubox/luci-app-netdata-dashboard}/Makefile (100%) rename {luci-app-netdata-dashboard => package/secubox/luci-app-netdata-dashboard}/README.md (100%) rename {luci-app-netdata-dashboard => package/secubox/luci-app-netdata-dashboard}/htdocs/luci-static/resources/netdata-dashboard/api.js (100%) rename {luci-app-netdata-dashboard => package/secubox/luci-app-netdata-dashboard}/htdocs/luci-static/resources/netdata-dashboard/common.css (100%) rename {luci-app-netdata-dashboard => package/secubox/luci-app-netdata-dashboard}/htdocs/luci-static/resources/netdata-dashboard/dashboard.css (100%) rename {luci-app-netdata-dashboard => package/secubox/luci-app-netdata-dashboard}/htdocs/luci-static/resources/view/netdata-dashboard/dashboard.js (100%) rename {luci-app-netdata-dashboard => package/secubox/luci-app-netdata-dashboard}/htdocs/luci-static/resources/view/netdata-dashboard/network.js (100%) rename {luci-app-netdata-dashboard => package/secubox/luci-app-netdata-dashboard}/htdocs/luci-static/resources/view/netdata-dashboard/processes.js (100%) rename {luci-app-netdata-dashboard => package/secubox/luci-app-netdata-dashboard}/htdocs/luci-static/resources/view/netdata-dashboard/realtime.js (100%) rename {luci-app-netdata-dashboard => package/secubox/luci-app-netdata-dashboard}/htdocs/luci-static/resources/view/netdata-dashboard/settings.js (100%) rename {luci-app-netdata-dashboard => package/secubox/luci-app-netdata-dashboard}/htdocs/luci-static/resources/view/netdata-dashboard/system.js (100%) rename {luci-app-netdata-dashboard => package/secubox/luci-app-netdata-dashboard}/root/usr/libexec/rpcd/luci.netdata-dashboard (100%) rename {luci-app-netdata-dashboard => package/secubox/luci-app-netdata-dashboard}/root/usr/share/luci/menu.d/luci-app-netdata-dashboard.json (100%) rename {luci-app-netdata-dashboard => package/secubox/luci-app-netdata-dashboard}/root/usr/share/rpcd/acl.d/luci-app-netdata-dashboard.json (100%) rename {luci-app-netifyd-dashboard => package/secubox/luci-app-netifyd-dashboard}/.github/workflows/build.yml (100%) rename {luci-app-netifyd-dashboard => package/secubox/luci-app-netifyd-dashboard}/Makefile (100%) rename {luci-app-netifyd-dashboard => package/secubox/luci-app-netifyd-dashboard}/README.md (100%) rename {luci-app-netifyd-dashboard => package/secubox/luci-app-netifyd-dashboard}/htdocs/luci-static/resources/netifyd-dashboard/api.js (100%) rename {luci-app-netifyd-dashboard => package/secubox/luci-app-netifyd-dashboard}/htdocs/luci-static/resources/netifyd-dashboard/common.css (100%) rename {luci-app-netifyd-dashboard => package/secubox/luci-app-netifyd-dashboard}/htdocs/luci-static/resources/netifyd-dashboard/dashboard.css (100%) rename {luci-app-netifyd-dashboard => package/secubox/luci-app-netifyd-dashboard}/htdocs/luci-static/resources/view/netifyd-dashboard/applications.js (100%) rename {luci-app-netifyd-dashboard => package/secubox/luci-app-netifyd-dashboard}/htdocs/luci-static/resources/view/netifyd-dashboard/devices.js (100%) rename {luci-app-netifyd-dashboard => package/secubox/luci-app-netifyd-dashboard}/htdocs/luci-static/resources/view/netifyd-dashboard/flows.js (100%) rename {luci-app-netifyd-dashboard => package/secubox/luci-app-netifyd-dashboard}/htdocs/luci-static/resources/view/netifyd-dashboard/overview.js (100%) rename {luci-app-netifyd-dashboard => package/secubox/luci-app-netifyd-dashboard}/htdocs/luci-static/resources/view/netifyd-dashboard/risks.js (100%) rename {luci-app-netifyd-dashboard => package/secubox/luci-app-netifyd-dashboard}/htdocs/luci-static/resources/view/netifyd-dashboard/settings.js (100%) rename {luci-app-netifyd-dashboard => package/secubox/luci-app-netifyd-dashboard}/htdocs/luci-static/resources/view/netifyd-dashboard/talkers.js (100%) rename {luci-app-netifyd-dashboard => package/secubox/luci-app-netifyd-dashboard}/htdocs/luci-static/resources/view/netifyd-dashboard/wizard.js (100%) rename {luci-app-netifyd-dashboard => package/secubox/luci-app-netifyd-dashboard}/root/usr/libexec/rpcd/luci.netifyd-dashboard (100%) rename {luci-app-netifyd-dashboard => package/secubox/luci-app-netifyd-dashboard}/root/usr/share/luci/menu.d/luci-app-netifyd-dashboard.json (100%) rename {luci-app-netifyd-dashboard => package/secubox/luci-app-netifyd-dashboard}/root/usr/share/rpcd/acl.d/luci-app-netifyd-dashboard.json (100%) rename {luci-app-network-modes => package/secubox/luci-app-network-modes}/.github/workflows/build.yml (100%) rename {luci-app-network-modes => package/secubox/luci-app-network-modes}/CODEX-v0.3.5.md (100%) rename {luci-app-network-modes => package/secubox/luci-app-network-modes}/Makefile (100%) rename {luci-app-network-modes => package/secubox/luci-app-network-modes}/README.md (100%) rename {luci-app-network-modes => package/secubox/luci-app-network-modes}/htdocs/luci-static/resources/network-modes/api.js (100%) rename {luci-app-network-modes => package/secubox/luci-app-network-modes}/htdocs/luci-static/resources/network-modes/common.css (100%) rename {luci-app-network-modes => package/secubox/luci-app-network-modes}/htdocs/luci-static/resources/network-modes/dashboard.css (100%) rename {luci-app-network-modes => package/secubox/luci-app-network-modes}/htdocs/luci-static/resources/network-modes/helpers.js (100%) rename {luci-app-network-modes => package/secubox/luci-app-network-modes}/htdocs/luci-static/resources/view/network-modes/accesspoint.js (100%) rename {luci-app-network-modes => package/secubox/luci-app-network-modes}/htdocs/luci-static/resources/view/network-modes/dmz.js (100%) rename {luci-app-network-modes => package/secubox/luci-app-network-modes}/htdocs/luci-static/resources/view/network-modes/doublenat.js (100%) rename {luci-app-network-modes => package/secubox/luci-app-network-modes}/htdocs/luci-static/resources/view/network-modes/multiwan.js (100%) rename {luci-app-network-modes => package/secubox/luci-app-network-modes}/htdocs/luci-static/resources/view/network-modes/overview.js (100%) rename {luci-app-network-modes => package/secubox/luci-app-network-modes}/htdocs/luci-static/resources/view/network-modes/relay.js (100%) rename {luci-app-network-modes => package/secubox/luci-app-network-modes}/htdocs/luci-static/resources/view/network-modes/router.js (100%) rename {luci-app-network-modes => package/secubox/luci-app-network-modes}/htdocs/luci-static/resources/view/network-modes/settings.js (100%) rename {luci-app-network-modes => package/secubox/luci-app-network-modes}/htdocs/luci-static/resources/view/network-modes/sniffer.js (100%) rename {luci-app-network-modes => package/secubox/luci-app-network-modes}/htdocs/luci-static/resources/view/network-modes/travel.js (100%) rename {luci-app-network-modes => package/secubox/luci-app-network-modes}/htdocs/luci-static/resources/view/network-modes/vpnrelay.js (100%) rename {luci-app-network-modes => package/secubox/luci-app-network-modes}/htdocs/luci-static/resources/view/network-modes/wizard.js (100%) rename {luci-app-network-modes => package/secubox/luci-app-network-modes}/root/etc/config/network-modes (100%) rename {luci-app-network-modes => package/secubox/luci-app-network-modes}/root/usr/libexec/rpcd/luci.network-modes (100%) rename {luci-app-network-modes => package/secubox/luci-app-network-modes}/root/usr/share/luci/menu.d/luci-app-network-modes.json (100%) rename {luci-app-network-modes => package/secubox/luci-app-network-modes}/root/usr/share/rpcd/acl.d/luci-app-network-modes.json (100%) rename {luci-app-secubox-bonus => package/secubox/luci-app-secubox-bonus}/Makefile (100%) rename {luci-app-secubox-bonus => package/secubox/luci-app-secubox-bonus}/README.md (100%) rename {luci-app-secubox-bonus => package/secubox/luci-app-secubox-bonus}/htdocs/luci-static/secubox/CNAME (100%) rename {luci-app-secubox-bonus => package/secubox/luci-app-secubox-bonus}/htdocs/luci-static/secubox/blog/auth-guardian-setup.html (100%) rename {luci-app-secubox-bonus => package/secubox/luci-app-secubox-bonus}/htdocs/luci-static/secubox/blog/bandwidth-manager-guide.html (100%) rename {luci-app-secubox-bonus => package/secubox/luci-app-secubox-bonus}/htdocs/luci-static/secubox/blog/local-saas-vhost.html (100%) rename {luci-app-secubox-bonus => package/secubox/luci-app-secubox-bonus}/htdocs/luci-static/secubox/campaign.html (100%) rename {luci-app-secubox-bonus => package/secubox/luci-app-secubox-bonus}/htdocs/luci-static/secubox/demo-auth.html (100%) rename {luci-app-secubox-bonus => package/secubox/luci-app-secubox-bonus}/htdocs/luci-static/secubox/demo-bandwidth.html (100%) rename {luci-app-secubox-bonus => package/secubox/luci-app-secubox-bonus}/htdocs/luci-static/secubox/demo-cdn-cache.html (100%) rename {luci-app-secubox-bonus => package/secubox/luci-app-secubox-bonus}/htdocs/luci-static/secubox/demo-client-guardian.html (100%) rename {luci-app-secubox-bonus => package/secubox/luci-app-secubox-bonus}/htdocs/luci-static/secubox/demo-crowdsec.html (100%) rename {luci-app-secubox-bonus => package/secubox/luci-app-secubox-bonus}/htdocs/luci-static/secubox/demo-dev-status.html (100%) rename {luci-app-secubox-bonus => package/secubox/luci-app-secubox-bonus}/htdocs/luci-static/secubox/demo-ksm-manager.html (100%) rename {luci-app-secubox-bonus => package/secubox/luci-app-secubox-bonus}/htdocs/luci-static/secubox/demo-media.html (100%) rename {luci-app-secubox-bonus => package/secubox/luci-app-secubox-bonus}/htdocs/luci-static/secubox/demo-netdata.html (100%) rename {luci-app-secubox-bonus => package/secubox/luci-app-secubox-bonus}/htdocs/luci-static/secubox/demo-netifyd.html (100%) rename {luci-app-secubox-bonus => package/secubox/luci-app-secubox-bonus}/htdocs/luci-static/secubox/demo-network-modes.html (100%) rename {luci-app-secubox-bonus => package/secubox/luci-app-secubox-bonus}/htdocs/luci-static/secubox/demo-secubox-hub.html (100%) rename {luci-app-secubox-bonus => package/secubox/luci-app-secubox-bonus}/htdocs/luci-static/secubox/demo-traffic-shaper.html (100%) rename {luci-app-secubox-bonus => package/secubox/luci-app-secubox-bonus}/htdocs/luci-static/secubox/demo-vhost.html (100%) rename {luci-app-secubox-bonus => package/secubox/luci-app-secubox-bonus}/htdocs/luci-static/secubox/demo-wireguard.html (100%) rename {luci-app-secubox-bonus => package/secubox/luci-app-secubox-bonus}/htdocs/luci-static/secubox/dev-status-widget.js (100%) rename {luci-app-secubox-bonus => package/secubox/luci-app-secubox-bonus}/htdocs/luci-static/secubox/i18n.js (100%) rename {luci-app-secubox-bonus => package/secubox/luci-app-secubox-bonus}/htdocs/luci-static/secubox/i18n/ar.json (100%) rename {luci-app-secubox-bonus => package/secubox/luci-app-secubox-bonus}/htdocs/luci-static/secubox/i18n/campaign.json (100%) rename {luci-app-secubox-bonus => package/secubox/luci-app-secubox-bonus}/htdocs/luci-static/secubox/i18n/de.json (100%) rename {luci-app-secubox-bonus => package/secubox/luci-app-secubox-bonus}/htdocs/luci-static/secubox/i18n/demo-auth.json (100%) rename {luci-app-secubox-bonus => package/secubox/luci-app-secubox-bonus}/htdocs/luci-static/secubox/i18n/en.json (100%) rename {luci-app-secubox-bonus => package/secubox/luci-app-secubox-bonus}/htdocs/luci-static/secubox/i18n/es.json (100%) rename {luci-app-secubox-bonus => package/secubox/luci-app-secubox-bonus}/htdocs/luci-static/secubox/i18n/fr.json (100%) rename {luci-app-secubox-bonus => package/secubox/luci-app-secubox-bonus}/htdocs/luci-static/secubox/i18n/it.json (100%) rename {luci-app-secubox-bonus => package/secubox/luci-app-secubox-bonus}/htdocs/luci-static/secubox/i18n/ja.json (100%) rename {luci-app-secubox-bonus => package/secubox/luci-app-secubox-bonus}/htdocs/luci-static/secubox/i18n/nl.json (100%) rename {luci-app-secubox-bonus => package/secubox/luci-app-secubox-bonus}/htdocs/luci-static/secubox/i18n/pt.json (100%) rename {luci-app-secubox-bonus => package/secubox/luci-app-secubox-bonus}/htdocs/luci-static/secubox/i18n/ru.json (100%) rename {luci-app-secubox-bonus => package/secubox/luci-app-secubox-bonus}/htdocs/luci-static/secubox/i18n/zh.json (100%) rename {luci-app-secubox-bonus => package/secubox/luci-app-secubox-bonus}/htdocs/luci-static/secubox/index.html (100%) rename {luci-app-system-hub => package/secubox/luci-app-system-hub}/.github/workflows/build.yml (100%) rename {luci-app-system-hub => package/secubox/luci-app-system-hub}/CODEX-v0.3.5.md (100%) rename {luci-app-system-hub => package/secubox/luci-app-system-hub}/Makefile (100%) rename {luci-app-system-hub => package/secubox/luci-app-system-hub}/README.md (100%) rename {luci-app-system-hub => package/secubox/luci-app-system-hub}/htdocs/luci-static/resources/system-hub/api.js (100%) rename {luci-app-system-hub => package/secubox/luci-app-system-hub}/htdocs/luci-static/resources/system-hub/backup.css (100%) rename {luci-app-system-hub => package/secubox/luci-app-system-hub}/htdocs/luci-static/resources/system-hub/common.css (100%) rename {luci-app-system-hub => package/secubox/luci-app-system-hub}/htdocs/luci-static/resources/system-hub/components.css (100%) rename {luci-app-system-hub => package/secubox/luci-app-system-hub}/htdocs/luci-static/resources/system-hub/dashboard.css (100%) rename {luci-app-system-hub => package/secubox/luci-app-system-hub}/htdocs/luci-static/resources/system-hub/dev-status-widget.js (100%) rename {luci-app-system-hub => package/secubox/luci-app-system-hub}/htdocs/luci-static/resources/system-hub/health.css (100%) rename {luci-app-system-hub => package/secubox/luci-app-system-hub}/htdocs/luci-static/resources/system-hub/logs.css (100%) rename {luci-app-system-hub => package/secubox/luci-app-system-hub}/htdocs/luci-static/resources/system-hub/nav.js (100%) rename {luci-app-system-hub => package/secubox/luci-app-system-hub}/htdocs/luci-static/resources/system-hub/overview.css (100%) rename {luci-app-system-hub => package/secubox/luci-app-system-hub}/htdocs/luci-static/resources/system-hub/services.css (100%) rename {luci-app-system-hub => package/secubox/luci-app-system-hub}/htdocs/luci-static/resources/system-hub/theme-assets.js (100%) rename {luci-app-system-hub => package/secubox/luci-app-system-hub}/htdocs/luci-static/resources/system-hub/theme.js (100%) rename {luci-app-system-hub => package/secubox/luci-app-system-hub}/htdocs/luci-static/resources/view/system-hub/backup.js (100%) rename {luci-app-system-hub => package/secubox/luci-app-system-hub}/htdocs/luci-static/resources/view/system-hub/cdn-cache-link.js (100%) rename {luci-app-system-hub => package/secubox/luci-app-system-hub}/htdocs/luci-static/resources/view/system-hub/components.js (100%) rename {luci-app-system-hub => package/secubox/luci-app-system-hub}/htdocs/luci-static/resources/view/system-hub/dev-status.js (100%) rename {luci-app-system-hub => package/secubox/luci-app-system-hub}/htdocs/luci-static/resources/view/system-hub/diagnostics.js (100%) rename {luci-app-system-hub => package/secubox/luci-app-system-hub}/htdocs/luci-static/resources/view/system-hub/health.js (100%) rename {luci-app-system-hub => package/secubox/luci-app-system-hub}/htdocs/luci-static/resources/view/system-hub/logs.js (100%) rename {luci-app-system-hub => package/secubox/luci-app-system-hub}/htdocs/luci-static/resources/view/system-hub/network-modes-link.js (100%) rename {luci-app-system-hub => package/secubox/luci-app-system-hub}/htdocs/luci-static/resources/view/system-hub/overview.js (100%) rename {luci-app-system-hub => package/secubox/luci-app-system-hub}/htdocs/luci-static/resources/view/system-hub/remote.js (100%) rename {luci-app-system-hub => package/secubox/luci-app-system-hub}/htdocs/luci-static/resources/view/system-hub/services.js (100%) rename {luci-app-system-hub => package/secubox/luci-app-system-hub}/htdocs/luci-static/resources/view/system-hub/settings.js (100%) rename {luci-app-system-hub => package/secubox/luci-app-system-hub}/root/etc/config/system-hub (100%) rename {luci-app-system-hub => package/secubox/luci-app-system-hub}/root/usr/libexec/rpcd/luci.system-hub (100%) rename {luci-app-system-hub => package/secubox/luci-app-system-hub}/root/usr/share/luci/menu.d/luci-app-system-hub.json (100%) rename {luci-app-system-hub => package/secubox/luci-app-system-hub}/root/usr/share/rpcd/acl.d/luci-app-system-hub.json (100%) rename {luci-app-system-hub => package/secubox/luci-app-system-hub}/tests/MANUAL_TESTS.md (100%) rename {luci-app-system-hub => package/secubox/luci-app-system-hub}/tests/README.md (100%) rename {luci-app-system-hub => package/secubox/luci-app-system-hub}/tests/frontend/test-diagnostics-ui.js (100%) rename {luci-app-system-hub => package/secubox/luci-app-system-hub}/tests/integration/test-diagnostic-workflow.sh (100%) rename {luci-app-system-hub => package/secubox/luci-app-system-hub}/tests/test-profiles.sh (100%) rename {luci-app-traffic-shaper => package/secubox/luci-app-traffic-shaper}/Makefile (100%) rename {luci-app-traffic-shaper => package/secubox/luci-app-traffic-shaper}/README.md (100%) rename {luci-app-traffic-shaper => package/secubox/luci-app-traffic-shaper}/htdocs/luci-static/resources/traffic-shaper/api.js (100%) rename {luci-app-traffic-shaper => package/secubox/luci-app-traffic-shaper}/htdocs/luci-static/resources/traffic-shaper/common.css (100%) rename {luci-app-traffic-shaper => package/secubox/luci-app-traffic-shaper}/htdocs/luci-static/resources/traffic-shaper/dashboard.css (100%) rename {luci-app-traffic-shaper => package/secubox/luci-app-traffic-shaper}/htdocs/luci-static/resources/view/traffic-shaper/classes.js (100%) rename {luci-app-traffic-shaper => package/secubox/luci-app-traffic-shaper}/htdocs/luci-static/resources/view/traffic-shaper/overview.js (100%) rename {luci-app-traffic-shaper => package/secubox/luci-app-traffic-shaper}/htdocs/luci-static/resources/view/traffic-shaper/presets.js (100%) rename {luci-app-traffic-shaper => package/secubox/luci-app-traffic-shaper}/htdocs/luci-static/resources/view/traffic-shaper/rules.js (100%) rename {luci-app-traffic-shaper => package/secubox/luci-app-traffic-shaper}/htdocs/luci-static/resources/view/traffic-shaper/stats.js (100%) rename {luci-app-traffic-shaper => package/secubox/luci-app-traffic-shaper}/root/etc/config/traffic-shaper (100%) rename {luci-app-traffic-shaper => package/secubox/luci-app-traffic-shaper}/root/usr/libexec/rpcd/luci.traffic-shaper (100%) rename {luci-app-traffic-shaper => package/secubox/luci-app-traffic-shaper}/root/usr/share/luci/menu.d/luci-app-traffic-shaper.json (100%) rename {luci-app-traffic-shaper => package/secubox/luci-app-traffic-shaper}/root/usr/share/rpcd/acl.d/luci-app-traffic-shaper.json (100%) rename {luci-app-vhost-manager => package/secubox/luci-app-vhost-manager}/.github/workflows/build.yml (100%) rename {luci-app-vhost-manager => package/secubox/luci-app-vhost-manager}/Makefile (100%) rename {luci-app-vhost-manager => package/secubox/luci-app-vhost-manager}/README.md (100%) rename {luci-app-vhost-manager => package/secubox/luci-app-vhost-manager}/demo/index.html (100%) rename {luci-app-vhost-manager => package/secubox/luci-app-vhost-manager}/htdocs/luci-static/resources/vhost-manager/api.js (100%) rename {luci-app-vhost-manager => package/secubox/luci-app-vhost-manager}/htdocs/luci-static/resources/vhost-manager/common.css (100%) rename {luci-app-vhost-manager => package/secubox/luci-app-vhost-manager}/htdocs/luci-static/resources/vhost-manager/dashboard.css (100%) rename {luci-app-vhost-manager => package/secubox/luci-app-vhost-manager}/htdocs/luci-static/resources/vhost-manager/templates.json (100%) rename {luci-app-vhost-manager => package/secubox/luci-app-vhost-manager}/htdocs/luci-static/resources/vhost-manager/ui.js (100%) rename {luci-app-vhost-manager => package/secubox/luci-app-vhost-manager}/htdocs/luci-static/resources/view/vhost-manager/certificates.js (100%) rename {luci-app-vhost-manager => package/secubox/luci-app-vhost-manager}/htdocs/luci-static/resources/view/vhost-manager/internal.js (100%) rename {luci-app-vhost-manager => package/secubox/luci-app-vhost-manager}/htdocs/luci-static/resources/view/vhost-manager/logs.js (100%) rename {luci-app-vhost-manager => package/secubox/luci-app-vhost-manager}/htdocs/luci-static/resources/view/vhost-manager/overview.js (100%) rename {luci-app-vhost-manager => package/secubox/luci-app-vhost-manager}/htdocs/luci-static/resources/view/vhost-manager/redirects.js (100%) rename {luci-app-vhost-manager => package/secubox/luci-app-vhost-manager}/htdocs/luci-static/resources/view/vhost-manager/ssl.js (100%) rename {luci-app-vhost-manager => package/secubox/luci-app-vhost-manager}/htdocs/luci-static/resources/view/vhost-manager/vhosts.js (100%) rename {luci-app-vhost-manager => package/secubox/luci-app-vhost-manager}/root/etc/config/vhost (100%) rename {luci-app-vhost-manager => package/secubox/luci-app-vhost-manager}/root/etc/config/vhost_manager (100%) rename {luci-app-vhost-manager => package/secubox/luci-app-vhost-manager}/root/etc/config/vhosts (100%) rename {luci-app-vhost-manager => package/secubox/luci-app-vhost-manager}/root/etc/uci-defaults/50-luci-app-vhost-manager-migrate (100%) rename {luci-app-vhost-manager => package/secubox/luci-app-vhost-manager}/root/usr/libexec/rpcd/luci.vhost-manager (100%) rename {luci-app-vhost-manager => package/secubox/luci-app-vhost-manager}/root/usr/share/luci/menu.d/luci-app-vhost-manager.json (100%) rename {luci-app-vhost-manager => package/secubox/luci-app-vhost-manager}/root/usr/share/rpcd/acl.d/luci-app-vhost-manager.json (100%) rename {luci-app-vhost-manager => package/secubox/luci-app-vhost-manager}/root/usr/share/vhost-manager/README.md (100%) rename {luci-app-vhost-manager => package/secubox/luci-app-vhost-manager}/root/usr/share/vhost-manager/templates.json (100%) rename {luci-app-wireguard-dashboard => package/secubox/luci-app-wireguard-dashboard}/.github/workflows/build.yml (100%) rename {luci-app-wireguard-dashboard => package/secubox/luci-app-wireguard-dashboard}/Makefile (100%) rename {luci-app-wireguard-dashboard => package/secubox/luci-app-wireguard-dashboard}/README.md (100%) rename {luci-app-wireguard-dashboard => package/secubox/luci-app-wireguard-dashboard}/htdocs/luci-static/resources/view/wireguard-dashboard/config.js (100%) rename {luci-app-wireguard-dashboard => package/secubox/luci-app-wireguard-dashboard}/htdocs/luci-static/resources/view/wireguard-dashboard/overview.js (100%) rename {luci-app-wireguard-dashboard => package/secubox/luci-app-wireguard-dashboard}/htdocs/luci-static/resources/view/wireguard-dashboard/peers.js (100%) rename {luci-app-wireguard-dashboard => package/secubox/luci-app-wireguard-dashboard}/htdocs/luci-static/resources/view/wireguard-dashboard/qrcodes.js (100%) rename {luci-app-wireguard-dashboard => package/secubox/luci-app-wireguard-dashboard}/htdocs/luci-static/resources/view/wireguard-dashboard/settings.js (100%) rename {luci-app-wireguard-dashboard => package/secubox/luci-app-wireguard-dashboard}/htdocs/luci-static/resources/view/wireguard-dashboard/traffic.js (100%) rename {luci-app-wireguard-dashboard => package/secubox/luci-app-wireguard-dashboard}/htdocs/luci-static/resources/wireguard-dashboard/api.js (100%) rename {luci-app-wireguard-dashboard => package/secubox/luci-app-wireguard-dashboard}/htdocs/luci-static/resources/wireguard-dashboard/common.css (100%) rename {luci-app-wireguard-dashboard => package/secubox/luci-app-wireguard-dashboard}/htdocs/luci-static/resources/wireguard-dashboard/dashboard.css (100%) rename {luci-app-wireguard-dashboard => package/secubox/luci-app-wireguard-dashboard}/root/usr/libexec/rpcd/luci.wireguard-dashboard (100%) rename {luci-app-wireguard-dashboard => package/secubox/luci-app-wireguard-dashboard}/root/usr/share/luci/menu.d/luci-app-wireguard-dashboard.json (100%) rename {luci-app-wireguard-dashboard => package/secubox/luci-app-wireguard-dashboard}/root/usr/share/rpcd/acl.d/luci-app-wireguard-dashboard.json (100%) rename {luci-app-zigbee2mqtt => package/secubox/luci-app-zigbee2mqtt}/Makefile (100%) rename {luci-app-zigbee2mqtt => package/secubox/luci-app-zigbee2mqtt}/README.md (100%) rename {luci-app-zigbee2mqtt => package/secubox/luci-app-zigbee2mqtt}/htdocs/luci-static/resources/view/zigbee2mqtt/overview.js (100%) rename {luci-app-zigbee2mqtt => package/secubox/luci-app-zigbee2mqtt}/htdocs/luci-static/resources/zigbee2mqtt/api.js (100%) rename {luci-app-zigbee2mqtt => package/secubox/luci-app-zigbee2mqtt}/htdocs/luci-static/resources/zigbee2mqtt/common.css (100%) rename {luci-app-zigbee2mqtt => package/secubox/luci-app-zigbee2mqtt}/luasrc/controller/secubox/zigbee2mqtt.lua (100%) rename {luci-app-zigbee2mqtt => package/secubox/luci-app-zigbee2mqtt}/root/usr/libexec/rpcd/luci.zigbee2mqtt (100%) rename {luci-app-zigbee2mqtt => package/secubox/luci-app-zigbee2mqtt}/root/usr/share/luci/menu.d/luci-app-zigbee2mqtt.json (100%) rename {luci-app-zigbee2mqtt => package/secubox/luci-app-zigbee2mqtt}/root/usr/share/rpcd/acl.d/luci-app-zigbee2mqtt.json (100%) create mode 100644 package/secubox/secubox-app/files/usr/share/secubox/plugins/catalog/network-tweaks.json create mode 100644 package/secubox/secubox-app/files/usr/share/secubox/plugins/catalog/secubox-bonus.json diff --git a/.claude/settings.local.json b/.claude/settings.local.json index d72a21a..414fd7b 100644 --- a/.claude/settings.local.json +++ b/.claude/settings.local.json @@ -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:*)" ] } } diff --git a/.github/workflows/test-validate.yml b/.github/workflows/test-validate.yml index 1dc6a82..fbca9b3 100644 --- a/.github/workflows/test-validate.yml +++ b/.github/workflows/test-validate.yml @@ -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 diff --git a/README.md b/README.md index 0f9db9e..7cbe43d 100644 --- a/README.md +++ b/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) --- diff --git a/luci-app-auth-guardian/.github/workflows/build.yml b/package/secubox/luci-app-auth-guardian/.github/workflows/build.yml similarity index 100% rename from luci-app-auth-guardian/.github/workflows/build.yml rename to package/secubox/luci-app-auth-guardian/.github/workflows/build.yml diff --git a/luci-app-auth-guardian/Makefile b/package/secubox/luci-app-auth-guardian/Makefile similarity index 100% rename from luci-app-auth-guardian/Makefile rename to package/secubox/luci-app-auth-guardian/Makefile diff --git a/luci-app-auth-guardian/README.md b/package/secubox/luci-app-auth-guardian/README.md similarity index 100% rename from luci-app-auth-guardian/README.md rename to package/secubox/luci-app-auth-guardian/README.md diff --git a/luci-app-auth-guardian/demo/index.html b/package/secubox/luci-app-auth-guardian/demo/index.html similarity index 100% rename from luci-app-auth-guardian/demo/index.html rename to package/secubox/luci-app-auth-guardian/demo/index.html diff --git a/luci-app-auth-guardian/htdocs/luci-static/resources/auth-guardian/api.js b/package/secubox/luci-app-auth-guardian/htdocs/luci-static/resources/auth-guardian/api.js similarity index 100% rename from luci-app-auth-guardian/htdocs/luci-static/resources/auth-guardian/api.js rename to package/secubox/luci-app-auth-guardian/htdocs/luci-static/resources/auth-guardian/api.js diff --git a/luci-app-auth-guardian/htdocs/luci-static/resources/auth-guardian/common.css b/package/secubox/luci-app-auth-guardian/htdocs/luci-static/resources/auth-guardian/common.css similarity index 100% rename from luci-app-auth-guardian/htdocs/luci-static/resources/auth-guardian/common.css rename to package/secubox/luci-app-auth-guardian/htdocs/luci-static/resources/auth-guardian/common.css diff --git a/luci-app-auth-guardian/htdocs/luci-static/resources/auth-guardian/dashboard.css b/package/secubox/luci-app-auth-guardian/htdocs/luci-static/resources/auth-guardian/dashboard.css similarity index 100% rename from luci-app-auth-guardian/htdocs/luci-static/resources/auth-guardian/dashboard.css rename to package/secubox/luci-app-auth-guardian/htdocs/luci-static/resources/auth-guardian/dashboard.css diff --git a/luci-app-auth-guardian/htdocs/luci-static/resources/view/auth-guardian/bypass.js b/package/secubox/luci-app-auth-guardian/htdocs/luci-static/resources/view/auth-guardian/bypass.js similarity index 100% rename from luci-app-auth-guardian/htdocs/luci-static/resources/view/auth-guardian/bypass.js rename to package/secubox/luci-app-auth-guardian/htdocs/luci-static/resources/view/auth-guardian/bypass.js diff --git a/luci-app-auth-guardian/htdocs/luci-static/resources/view/auth-guardian/oauth.js b/package/secubox/luci-app-auth-guardian/htdocs/luci-static/resources/view/auth-guardian/oauth.js similarity index 100% rename from luci-app-auth-guardian/htdocs/luci-static/resources/view/auth-guardian/oauth.js rename to package/secubox/luci-app-auth-guardian/htdocs/luci-static/resources/view/auth-guardian/oauth.js diff --git a/luci-app-auth-guardian/htdocs/luci-static/resources/view/auth-guardian/overview.js b/package/secubox/luci-app-auth-guardian/htdocs/luci-static/resources/view/auth-guardian/overview.js similarity index 100% rename from luci-app-auth-guardian/htdocs/luci-static/resources/view/auth-guardian/overview.js rename to package/secubox/luci-app-auth-guardian/htdocs/luci-static/resources/view/auth-guardian/overview.js diff --git a/luci-app-auth-guardian/htdocs/luci-static/resources/view/auth-guardian/sessions.js b/package/secubox/luci-app-auth-guardian/htdocs/luci-static/resources/view/auth-guardian/sessions.js similarity index 100% rename from luci-app-auth-guardian/htdocs/luci-static/resources/view/auth-guardian/sessions.js rename to package/secubox/luci-app-auth-guardian/htdocs/luci-static/resources/view/auth-guardian/sessions.js diff --git a/luci-app-auth-guardian/htdocs/luci-static/resources/view/auth-guardian/splash.js b/package/secubox/luci-app-auth-guardian/htdocs/luci-static/resources/view/auth-guardian/splash.js similarity index 100% rename from luci-app-auth-guardian/htdocs/luci-static/resources/view/auth-guardian/splash.js rename to package/secubox/luci-app-auth-guardian/htdocs/luci-static/resources/view/auth-guardian/splash.js diff --git a/luci-app-auth-guardian/htdocs/luci-static/resources/view/auth-guardian/vouchers.js b/package/secubox/luci-app-auth-guardian/htdocs/luci-static/resources/view/auth-guardian/vouchers.js similarity index 100% rename from luci-app-auth-guardian/htdocs/luci-static/resources/view/auth-guardian/vouchers.js rename to package/secubox/luci-app-auth-guardian/htdocs/luci-static/resources/view/auth-guardian/vouchers.js diff --git a/luci-app-auth-guardian/root/etc/config/authguard b/package/secubox/luci-app-auth-guardian/root/etc/config/authguard similarity index 100% rename from luci-app-auth-guardian/root/etc/config/authguard rename to package/secubox/luci-app-auth-guardian/root/etc/config/authguard diff --git a/luci-app-auth-guardian/root/usr/libexec/rpcd/luci.auth-guardian b/package/secubox/luci-app-auth-guardian/root/usr/libexec/rpcd/luci.auth-guardian similarity index 100% rename from luci-app-auth-guardian/root/usr/libexec/rpcd/luci.auth-guardian rename to package/secubox/luci-app-auth-guardian/root/usr/libexec/rpcd/luci.auth-guardian diff --git a/luci-app-auth-guardian/root/usr/share/luci/menu.d/luci-app-auth-guardian.json b/package/secubox/luci-app-auth-guardian/root/usr/share/luci/menu.d/luci-app-auth-guardian.json similarity index 100% rename from luci-app-auth-guardian/root/usr/share/luci/menu.d/luci-app-auth-guardian.json rename to package/secubox/luci-app-auth-guardian/root/usr/share/luci/menu.d/luci-app-auth-guardian.json diff --git a/luci-app-auth-guardian/root/usr/share/rpcd/acl.d/luci-app-auth-guardian.json b/package/secubox/luci-app-auth-guardian/root/usr/share/rpcd/acl.d/luci-app-auth-guardian.json similarity index 100% rename from luci-app-auth-guardian/root/usr/share/rpcd/acl.d/luci-app-auth-guardian.json rename to package/secubox/luci-app-auth-guardian/root/usr/share/rpcd/acl.d/luci-app-auth-guardian.json diff --git a/luci-app-bandwidth-manager/.github/workflows/build.yml b/package/secubox/luci-app-bandwidth-manager/.github/workflows/build.yml similarity index 100% rename from luci-app-bandwidth-manager/.github/workflows/build.yml rename to package/secubox/luci-app-bandwidth-manager/.github/workflows/build.yml diff --git a/luci-app-bandwidth-manager/Makefile b/package/secubox/luci-app-bandwidth-manager/Makefile similarity index 100% rename from luci-app-bandwidth-manager/Makefile rename to package/secubox/luci-app-bandwidth-manager/Makefile diff --git a/luci-app-bandwidth-manager/README.md b/package/secubox/luci-app-bandwidth-manager/README.md similarity index 100% rename from luci-app-bandwidth-manager/README.md rename to package/secubox/luci-app-bandwidth-manager/README.md diff --git a/luci-app-bandwidth-manager/demo/index.html b/package/secubox/luci-app-bandwidth-manager/demo/index.html similarity index 100% rename from luci-app-bandwidth-manager/demo/index.html rename to package/secubox/luci-app-bandwidth-manager/demo/index.html diff --git a/luci-app-bandwidth-manager/htdocs/luci-static/resources/bandwidth-manager/api.js b/package/secubox/luci-app-bandwidth-manager/htdocs/luci-static/resources/bandwidth-manager/api.js similarity index 100% rename from luci-app-bandwidth-manager/htdocs/luci-static/resources/bandwidth-manager/api.js rename to package/secubox/luci-app-bandwidth-manager/htdocs/luci-static/resources/bandwidth-manager/api.js diff --git a/luci-app-bandwidth-manager/htdocs/luci-static/resources/bandwidth-manager/common.css b/package/secubox/luci-app-bandwidth-manager/htdocs/luci-static/resources/bandwidth-manager/common.css similarity index 100% rename from luci-app-bandwidth-manager/htdocs/luci-static/resources/bandwidth-manager/common.css rename to package/secubox/luci-app-bandwidth-manager/htdocs/luci-static/resources/bandwidth-manager/common.css diff --git a/luci-app-bandwidth-manager/htdocs/luci-static/resources/bandwidth-manager/dashboard.css b/package/secubox/luci-app-bandwidth-manager/htdocs/luci-static/resources/bandwidth-manager/dashboard.css similarity index 100% rename from luci-app-bandwidth-manager/htdocs/luci-static/resources/bandwidth-manager/dashboard.css rename to package/secubox/luci-app-bandwidth-manager/htdocs/luci-static/resources/bandwidth-manager/dashboard.css diff --git a/luci-app-bandwidth-manager/htdocs/luci-static/resources/view/bandwidth-manager/classes.js b/package/secubox/luci-app-bandwidth-manager/htdocs/luci-static/resources/view/bandwidth-manager/classes.js similarity index 100% rename from luci-app-bandwidth-manager/htdocs/luci-static/resources/view/bandwidth-manager/classes.js rename to package/secubox/luci-app-bandwidth-manager/htdocs/luci-static/resources/view/bandwidth-manager/classes.js diff --git a/luci-app-bandwidth-manager/htdocs/luci-static/resources/view/bandwidth-manager/clients.js b/package/secubox/luci-app-bandwidth-manager/htdocs/luci-static/resources/view/bandwidth-manager/clients.js similarity index 100% rename from luci-app-bandwidth-manager/htdocs/luci-static/resources/view/bandwidth-manager/clients.js rename to package/secubox/luci-app-bandwidth-manager/htdocs/luci-static/resources/view/bandwidth-manager/clients.js diff --git a/luci-app-bandwidth-manager/htdocs/luci-static/resources/view/bandwidth-manager/media.js b/package/secubox/luci-app-bandwidth-manager/htdocs/luci-static/resources/view/bandwidth-manager/media.js similarity index 100% rename from luci-app-bandwidth-manager/htdocs/luci-static/resources/view/bandwidth-manager/media.js rename to package/secubox/luci-app-bandwidth-manager/htdocs/luci-static/resources/view/bandwidth-manager/media.js diff --git a/luci-app-bandwidth-manager/htdocs/luci-static/resources/view/bandwidth-manager/overview.js b/package/secubox/luci-app-bandwidth-manager/htdocs/luci-static/resources/view/bandwidth-manager/overview.js similarity index 100% rename from luci-app-bandwidth-manager/htdocs/luci-static/resources/view/bandwidth-manager/overview.js rename to package/secubox/luci-app-bandwidth-manager/htdocs/luci-static/resources/view/bandwidth-manager/overview.js diff --git a/luci-app-bandwidth-manager/htdocs/luci-static/resources/view/bandwidth-manager/quotas.js b/package/secubox/luci-app-bandwidth-manager/htdocs/luci-static/resources/view/bandwidth-manager/quotas.js similarity index 100% rename from luci-app-bandwidth-manager/htdocs/luci-static/resources/view/bandwidth-manager/quotas.js rename to package/secubox/luci-app-bandwidth-manager/htdocs/luci-static/resources/view/bandwidth-manager/quotas.js diff --git a/luci-app-bandwidth-manager/htdocs/luci-static/resources/view/bandwidth-manager/rules.js b/package/secubox/luci-app-bandwidth-manager/htdocs/luci-static/resources/view/bandwidth-manager/rules.js similarity index 100% rename from luci-app-bandwidth-manager/htdocs/luci-static/resources/view/bandwidth-manager/rules.js rename to package/secubox/luci-app-bandwidth-manager/htdocs/luci-static/resources/view/bandwidth-manager/rules.js diff --git a/luci-app-bandwidth-manager/htdocs/luci-static/resources/view/bandwidth-manager/schedules.js b/package/secubox/luci-app-bandwidth-manager/htdocs/luci-static/resources/view/bandwidth-manager/schedules.js similarity index 100% rename from luci-app-bandwidth-manager/htdocs/luci-static/resources/view/bandwidth-manager/schedules.js rename to package/secubox/luci-app-bandwidth-manager/htdocs/luci-static/resources/view/bandwidth-manager/schedules.js diff --git a/luci-app-bandwidth-manager/htdocs/luci-static/resources/view/bandwidth-manager/settings.js b/package/secubox/luci-app-bandwidth-manager/htdocs/luci-static/resources/view/bandwidth-manager/settings.js similarity index 100% rename from luci-app-bandwidth-manager/htdocs/luci-static/resources/view/bandwidth-manager/settings.js rename to package/secubox/luci-app-bandwidth-manager/htdocs/luci-static/resources/view/bandwidth-manager/settings.js diff --git a/luci-app-bandwidth-manager/htdocs/luci-static/resources/view/bandwidth-manager/usage.js b/package/secubox/luci-app-bandwidth-manager/htdocs/luci-static/resources/view/bandwidth-manager/usage.js similarity index 100% rename from luci-app-bandwidth-manager/htdocs/luci-static/resources/view/bandwidth-manager/usage.js rename to package/secubox/luci-app-bandwidth-manager/htdocs/luci-static/resources/view/bandwidth-manager/usage.js diff --git a/luci-app-bandwidth-manager/root/etc/config/bandwidth b/package/secubox/luci-app-bandwidth-manager/root/etc/config/bandwidth similarity index 100% rename from luci-app-bandwidth-manager/root/etc/config/bandwidth rename to package/secubox/luci-app-bandwidth-manager/root/etc/config/bandwidth diff --git a/luci-app-bandwidth-manager/root/usr/libexec/rpcd/luci.bandwidth-manager b/package/secubox/luci-app-bandwidth-manager/root/usr/libexec/rpcd/luci.bandwidth-manager similarity index 100% rename from luci-app-bandwidth-manager/root/usr/libexec/rpcd/luci.bandwidth-manager rename to package/secubox/luci-app-bandwidth-manager/root/usr/libexec/rpcd/luci.bandwidth-manager diff --git a/luci-app-bandwidth-manager/root/usr/share/luci/menu.d/luci-app-bandwidth-manager.json b/package/secubox/luci-app-bandwidth-manager/root/usr/share/luci/menu.d/luci-app-bandwidth-manager.json similarity index 100% rename from luci-app-bandwidth-manager/root/usr/share/luci/menu.d/luci-app-bandwidth-manager.json rename to package/secubox/luci-app-bandwidth-manager/root/usr/share/luci/menu.d/luci-app-bandwidth-manager.json diff --git a/luci-app-bandwidth-manager/root/usr/share/rpcd/acl.d/luci-app-bandwidth-manager.json b/package/secubox/luci-app-bandwidth-manager/root/usr/share/rpcd/acl.d/luci-app-bandwidth-manager.json similarity index 100% rename from luci-app-bandwidth-manager/root/usr/share/rpcd/acl.d/luci-app-bandwidth-manager.json rename to package/secubox/luci-app-bandwidth-manager/root/usr/share/rpcd/acl.d/luci-app-bandwidth-manager.json diff --git a/luci-app-cdn-cache/.github/workflows/build.yml b/package/secubox/luci-app-cdn-cache/.github/workflows/build.yml similarity index 100% rename from luci-app-cdn-cache/.github/workflows/build.yml rename to package/secubox/luci-app-cdn-cache/.github/workflows/build.yml diff --git a/luci-app-cdn-cache/Makefile b/package/secubox/luci-app-cdn-cache/Makefile similarity index 100% rename from luci-app-cdn-cache/Makefile rename to package/secubox/luci-app-cdn-cache/Makefile diff --git a/luci-app-cdn-cache/README.md b/package/secubox/luci-app-cdn-cache/README.md similarity index 100% rename from luci-app-cdn-cache/README.md rename to package/secubox/luci-app-cdn-cache/README.md diff --git a/luci-app-cdn-cache/demo.html b/package/secubox/luci-app-cdn-cache/demo.html similarity index 100% rename from luci-app-cdn-cache/demo.html rename to package/secubox/luci-app-cdn-cache/demo.html diff --git a/luci-app-cdn-cache/htdocs/luci-static/resources/cdn-cache/api.js b/package/secubox/luci-app-cdn-cache/htdocs/luci-static/resources/cdn-cache/api.js similarity index 100% rename from luci-app-cdn-cache/htdocs/luci-static/resources/cdn-cache/api.js rename to package/secubox/luci-app-cdn-cache/htdocs/luci-static/resources/cdn-cache/api.js diff --git a/luci-app-cdn-cache/htdocs/luci-static/resources/cdn-cache/common.css b/package/secubox/luci-app-cdn-cache/htdocs/luci-static/resources/cdn-cache/common.css similarity index 100% rename from luci-app-cdn-cache/htdocs/luci-static/resources/cdn-cache/common.css rename to package/secubox/luci-app-cdn-cache/htdocs/luci-static/resources/cdn-cache/common.css diff --git a/luci-app-cdn-cache/htdocs/luci-static/resources/cdn-cache/dashboard.css b/package/secubox/luci-app-cdn-cache/htdocs/luci-static/resources/cdn-cache/dashboard.css similarity index 100% rename from luci-app-cdn-cache/htdocs/luci-static/resources/cdn-cache/dashboard.css rename to package/secubox/luci-app-cdn-cache/htdocs/luci-static/resources/cdn-cache/dashboard.css diff --git a/luci-app-cdn-cache/htdocs/luci-static/resources/cdn-cache/nav.js b/package/secubox/luci-app-cdn-cache/htdocs/luci-static/resources/cdn-cache/nav.js similarity index 100% rename from luci-app-cdn-cache/htdocs/luci-static/resources/cdn-cache/nav.js rename to package/secubox/luci-app-cdn-cache/htdocs/luci-static/resources/cdn-cache/nav.js diff --git a/luci-app-cdn-cache/htdocs/luci-static/resources/view/cdn-cache/cache.js b/package/secubox/luci-app-cdn-cache/htdocs/luci-static/resources/view/cdn-cache/cache.js similarity index 100% rename from luci-app-cdn-cache/htdocs/luci-static/resources/view/cdn-cache/cache.js rename to package/secubox/luci-app-cdn-cache/htdocs/luci-static/resources/view/cdn-cache/cache.js diff --git a/luci-app-cdn-cache/htdocs/luci-static/resources/view/cdn-cache/maintenance.js b/package/secubox/luci-app-cdn-cache/htdocs/luci-static/resources/view/cdn-cache/maintenance.js similarity index 100% rename from luci-app-cdn-cache/htdocs/luci-static/resources/view/cdn-cache/maintenance.js rename to package/secubox/luci-app-cdn-cache/htdocs/luci-static/resources/view/cdn-cache/maintenance.js diff --git a/luci-app-cdn-cache/htdocs/luci-static/resources/view/cdn-cache/overview.js b/package/secubox/luci-app-cdn-cache/htdocs/luci-static/resources/view/cdn-cache/overview.js similarity index 100% rename from luci-app-cdn-cache/htdocs/luci-static/resources/view/cdn-cache/overview.js rename to package/secubox/luci-app-cdn-cache/htdocs/luci-static/resources/view/cdn-cache/overview.js diff --git a/luci-app-cdn-cache/htdocs/luci-static/resources/view/cdn-cache/policies.js b/package/secubox/luci-app-cdn-cache/htdocs/luci-static/resources/view/cdn-cache/policies.js similarity index 100% rename from luci-app-cdn-cache/htdocs/luci-static/resources/view/cdn-cache/policies.js rename to package/secubox/luci-app-cdn-cache/htdocs/luci-static/resources/view/cdn-cache/policies.js diff --git a/luci-app-cdn-cache/htdocs/luci-static/resources/view/cdn-cache/settings.js b/package/secubox/luci-app-cdn-cache/htdocs/luci-static/resources/view/cdn-cache/settings.js similarity index 100% rename from luci-app-cdn-cache/htdocs/luci-static/resources/view/cdn-cache/settings.js rename to package/secubox/luci-app-cdn-cache/htdocs/luci-static/resources/view/cdn-cache/settings.js diff --git a/luci-app-cdn-cache/htdocs/luci-static/resources/view/cdn-cache/statistics.js b/package/secubox/luci-app-cdn-cache/htdocs/luci-static/resources/view/cdn-cache/statistics.js similarity index 100% rename from luci-app-cdn-cache/htdocs/luci-static/resources/view/cdn-cache/statistics.js rename to package/secubox/luci-app-cdn-cache/htdocs/luci-static/resources/view/cdn-cache/statistics.js diff --git a/luci-app-cdn-cache/root/etc/config/cdn-cache b/package/secubox/luci-app-cdn-cache/root/etc/config/cdn-cache similarity index 100% rename from luci-app-cdn-cache/root/etc/config/cdn-cache rename to package/secubox/luci-app-cdn-cache/root/etc/config/cdn-cache diff --git a/luci-app-cdn-cache/root/etc/init.d/cdn-cache b/package/secubox/luci-app-cdn-cache/root/etc/init.d/cdn-cache similarity index 100% rename from luci-app-cdn-cache/root/etc/init.d/cdn-cache rename to package/secubox/luci-app-cdn-cache/root/etc/init.d/cdn-cache diff --git a/luci-app-cdn-cache/root/etc/uci-defaults/99-cdn-cache b/package/secubox/luci-app-cdn-cache/root/etc/uci-defaults/99-cdn-cache similarity index 100% rename from luci-app-cdn-cache/root/etc/uci-defaults/99-cdn-cache rename to package/secubox/luci-app-cdn-cache/root/etc/uci-defaults/99-cdn-cache diff --git a/luci-app-cdn-cache/root/usr/libexec/rpcd/luci.cdn-cache b/package/secubox/luci-app-cdn-cache/root/usr/libexec/rpcd/luci.cdn-cache similarity index 100% rename from luci-app-cdn-cache/root/usr/libexec/rpcd/luci.cdn-cache rename to package/secubox/luci-app-cdn-cache/root/usr/libexec/rpcd/luci.cdn-cache diff --git a/luci-app-cdn-cache/root/usr/share/luci/menu.d/luci-app-cdn-cache.json b/package/secubox/luci-app-cdn-cache/root/usr/share/luci/menu.d/luci-app-cdn-cache.json similarity index 100% rename from luci-app-cdn-cache/root/usr/share/luci/menu.d/luci-app-cdn-cache.json rename to package/secubox/luci-app-cdn-cache/root/usr/share/luci/menu.d/luci-app-cdn-cache.json diff --git a/luci-app-cdn-cache/root/usr/share/rpcd/acl.d/luci-app-cdn-cache.json b/package/secubox/luci-app-cdn-cache/root/usr/share/rpcd/acl.d/luci-app-cdn-cache.json similarity index 100% rename from luci-app-cdn-cache/root/usr/share/rpcd/acl.d/luci-app-cdn-cache.json rename to package/secubox/luci-app-cdn-cache/root/usr/share/rpcd/acl.d/luci-app-cdn-cache.json diff --git a/luci-app-client-guardian/.github/workflows/build.yml b/package/secubox/luci-app-client-guardian/.github/workflows/build.yml similarity index 100% rename from luci-app-client-guardian/.github/workflows/build.yml rename to package/secubox/luci-app-client-guardian/.github/workflows/build.yml diff --git a/luci-app-client-guardian/Makefile b/package/secubox/luci-app-client-guardian/Makefile similarity index 100% rename from luci-app-client-guardian/Makefile rename to package/secubox/luci-app-client-guardian/Makefile diff --git a/luci-app-client-guardian/README.md b/package/secubox/luci-app-client-guardian/README.md similarity index 100% rename from luci-app-client-guardian/README.md rename to package/secubox/luci-app-client-guardian/README.md diff --git a/luci-app-client-guardian/htdocs/luci-static/resources/client-guardian/api.js b/package/secubox/luci-app-client-guardian/htdocs/luci-static/resources/client-guardian/api.js similarity index 100% rename from luci-app-client-guardian/htdocs/luci-static/resources/client-guardian/api.js rename to package/secubox/luci-app-client-guardian/htdocs/luci-static/resources/client-guardian/api.js diff --git a/luci-app-client-guardian/htdocs/luci-static/resources/client-guardian/common.css b/package/secubox/luci-app-client-guardian/htdocs/luci-static/resources/client-guardian/common.css similarity index 100% rename from luci-app-client-guardian/htdocs/luci-static/resources/client-guardian/common.css rename to package/secubox/luci-app-client-guardian/htdocs/luci-static/resources/client-guardian/common.css diff --git a/luci-app-client-guardian/htdocs/luci-static/resources/client-guardian/dashboard.css b/package/secubox/luci-app-client-guardian/htdocs/luci-static/resources/client-guardian/dashboard.css similarity index 100% rename from luci-app-client-guardian/htdocs/luci-static/resources/client-guardian/dashboard.css rename to package/secubox/luci-app-client-guardian/htdocs/luci-static/resources/client-guardian/dashboard.css diff --git a/luci-app-client-guardian/htdocs/luci-static/resources/view/client-guardian/alerts.js b/package/secubox/luci-app-client-guardian/htdocs/luci-static/resources/view/client-guardian/alerts.js similarity index 100% rename from luci-app-client-guardian/htdocs/luci-static/resources/view/client-guardian/alerts.js rename to package/secubox/luci-app-client-guardian/htdocs/luci-static/resources/view/client-guardian/alerts.js diff --git a/luci-app-client-guardian/htdocs/luci-static/resources/view/client-guardian/captive.js b/package/secubox/luci-app-client-guardian/htdocs/luci-static/resources/view/client-guardian/captive.js similarity index 100% rename from luci-app-client-guardian/htdocs/luci-static/resources/view/client-guardian/captive.js rename to package/secubox/luci-app-client-guardian/htdocs/luci-static/resources/view/client-guardian/captive.js diff --git a/luci-app-client-guardian/htdocs/luci-static/resources/view/client-guardian/clients.js b/package/secubox/luci-app-client-guardian/htdocs/luci-static/resources/view/client-guardian/clients.js similarity index 100% rename from luci-app-client-guardian/htdocs/luci-static/resources/view/client-guardian/clients.js rename to package/secubox/luci-app-client-guardian/htdocs/luci-static/resources/view/client-guardian/clients.js diff --git a/luci-app-client-guardian/htdocs/luci-static/resources/view/client-guardian/logs.js b/package/secubox/luci-app-client-guardian/htdocs/luci-static/resources/view/client-guardian/logs.js similarity index 100% rename from luci-app-client-guardian/htdocs/luci-static/resources/view/client-guardian/logs.js rename to package/secubox/luci-app-client-guardian/htdocs/luci-static/resources/view/client-guardian/logs.js diff --git a/luci-app-client-guardian/htdocs/luci-static/resources/view/client-guardian/overview.js b/package/secubox/luci-app-client-guardian/htdocs/luci-static/resources/view/client-guardian/overview.js similarity index 100% rename from luci-app-client-guardian/htdocs/luci-static/resources/view/client-guardian/overview.js rename to package/secubox/luci-app-client-guardian/htdocs/luci-static/resources/view/client-guardian/overview.js diff --git a/luci-app-client-guardian/htdocs/luci-static/resources/view/client-guardian/parental.js b/package/secubox/luci-app-client-guardian/htdocs/luci-static/resources/view/client-guardian/parental.js similarity index 100% rename from luci-app-client-guardian/htdocs/luci-static/resources/view/client-guardian/parental.js rename to package/secubox/luci-app-client-guardian/htdocs/luci-static/resources/view/client-guardian/parental.js diff --git a/luci-app-client-guardian/htdocs/luci-static/resources/view/client-guardian/portal.js b/package/secubox/luci-app-client-guardian/htdocs/luci-static/resources/view/client-guardian/portal.js similarity index 100% rename from luci-app-client-guardian/htdocs/luci-static/resources/view/client-guardian/portal.js rename to package/secubox/luci-app-client-guardian/htdocs/luci-static/resources/view/client-guardian/portal.js diff --git a/luci-app-client-guardian/htdocs/luci-static/resources/view/client-guardian/settings.js b/package/secubox/luci-app-client-guardian/htdocs/luci-static/resources/view/client-guardian/settings.js similarity index 100% rename from luci-app-client-guardian/htdocs/luci-static/resources/view/client-guardian/settings.js rename to package/secubox/luci-app-client-guardian/htdocs/luci-static/resources/view/client-guardian/settings.js diff --git a/luci-app-client-guardian/htdocs/luci-static/resources/view/client-guardian/zones.js b/package/secubox/luci-app-client-guardian/htdocs/luci-static/resources/view/client-guardian/zones.js similarity index 100% rename from luci-app-client-guardian/htdocs/luci-static/resources/view/client-guardian/zones.js rename to package/secubox/luci-app-client-guardian/htdocs/luci-static/resources/view/client-guardian/zones.js diff --git a/luci-app-client-guardian/root/etc/config/client-guardian b/package/secubox/luci-app-client-guardian/root/etc/config/client-guardian similarity index 100% rename from luci-app-client-guardian/root/etc/config/client-guardian rename to package/secubox/luci-app-client-guardian/root/etc/config/client-guardian diff --git a/luci-app-client-guardian/root/usr/libexec/rpcd/luci.client-guardian b/package/secubox/luci-app-client-guardian/root/usr/libexec/rpcd/luci.client-guardian similarity index 100% rename from luci-app-client-guardian/root/usr/libexec/rpcd/luci.client-guardian rename to package/secubox/luci-app-client-guardian/root/usr/libexec/rpcd/luci.client-guardian diff --git a/luci-app-client-guardian/root/usr/share/luci/menu.d/luci-app-client-guardian.json b/package/secubox/luci-app-client-guardian/root/usr/share/luci/menu.d/luci-app-client-guardian.json similarity index 100% rename from luci-app-client-guardian/root/usr/share/luci/menu.d/luci-app-client-guardian.json rename to package/secubox/luci-app-client-guardian/root/usr/share/luci/menu.d/luci-app-client-guardian.json diff --git a/luci-app-client-guardian/root/usr/share/rpcd/acl.d/luci-app-client-guardian.json b/package/secubox/luci-app-client-guardian/root/usr/share/rpcd/acl.d/luci-app-client-guardian.json similarity index 100% rename from luci-app-client-guardian/root/usr/share/rpcd/acl.d/luci-app-client-guardian.json rename to package/secubox/luci-app-client-guardian/root/usr/share/rpcd/acl.d/luci-app-client-guardian.json diff --git a/luci-app-crowdsec-dashboard/.github/workflows/build.yml b/package/secubox/luci-app-crowdsec-dashboard/.github/workflows/build.yml similarity index 100% rename from luci-app-crowdsec-dashboard/.github/workflows/build.yml rename to package/secubox/luci-app-crowdsec-dashboard/.github/workflows/build.yml diff --git a/luci-app-crowdsec-dashboard/.gitignore b/package/secubox/luci-app-crowdsec-dashboard/.gitignore similarity index 100% rename from luci-app-crowdsec-dashboard/.gitignore rename to package/secubox/luci-app-crowdsec-dashboard/.gitignore diff --git a/luci-app-crowdsec-dashboard/LICENSE b/package/secubox/luci-app-crowdsec-dashboard/LICENSE similarity index 100% rename from luci-app-crowdsec-dashboard/LICENSE rename to package/secubox/luci-app-crowdsec-dashboard/LICENSE diff --git a/luci-app-crowdsec-dashboard/Makefile b/package/secubox/luci-app-crowdsec-dashboard/Makefile similarity index 100% rename from luci-app-crowdsec-dashboard/Makefile rename to package/secubox/luci-app-crowdsec-dashboard/Makefile diff --git a/luci-app-crowdsec-dashboard/README.md b/package/secubox/luci-app-crowdsec-dashboard/README.md similarity index 100% rename from luci-app-crowdsec-dashboard/README.md rename to package/secubox/luci-app-crowdsec-dashboard/README.md diff --git a/luci-app-crowdsec-dashboard/htdocs/luci-static/resources/crowdsec-dashboard/api.js b/package/secubox/luci-app-crowdsec-dashboard/htdocs/luci-static/resources/crowdsec-dashboard/api.js similarity index 100% rename from luci-app-crowdsec-dashboard/htdocs/luci-static/resources/crowdsec-dashboard/api.js rename to package/secubox/luci-app-crowdsec-dashboard/htdocs/luci-static/resources/crowdsec-dashboard/api.js diff --git a/luci-app-crowdsec-dashboard/htdocs/luci-static/resources/crowdsec-dashboard/common.css b/package/secubox/luci-app-crowdsec-dashboard/htdocs/luci-static/resources/crowdsec-dashboard/common.css similarity index 100% rename from luci-app-crowdsec-dashboard/htdocs/luci-static/resources/crowdsec-dashboard/common.css rename to package/secubox/luci-app-crowdsec-dashboard/htdocs/luci-static/resources/crowdsec-dashboard/common.css diff --git a/luci-app-crowdsec-dashboard/htdocs/luci-static/resources/crowdsec-dashboard/dashboard.css b/package/secubox/luci-app-crowdsec-dashboard/htdocs/luci-static/resources/crowdsec-dashboard/dashboard.css similarity index 100% rename from luci-app-crowdsec-dashboard/htdocs/luci-static/resources/crowdsec-dashboard/dashboard.css rename to package/secubox/luci-app-crowdsec-dashboard/htdocs/luci-static/resources/crowdsec-dashboard/dashboard.css diff --git a/luci-app-crowdsec-dashboard/htdocs/luci-static/resources/view/crowdsec-dashboard/alerts.js b/package/secubox/luci-app-crowdsec-dashboard/htdocs/luci-static/resources/view/crowdsec-dashboard/alerts.js similarity index 100% rename from luci-app-crowdsec-dashboard/htdocs/luci-static/resources/view/crowdsec-dashboard/alerts.js rename to package/secubox/luci-app-crowdsec-dashboard/htdocs/luci-static/resources/view/crowdsec-dashboard/alerts.js diff --git a/luci-app-crowdsec-dashboard/htdocs/luci-static/resources/view/crowdsec-dashboard/bouncers.js b/package/secubox/luci-app-crowdsec-dashboard/htdocs/luci-static/resources/view/crowdsec-dashboard/bouncers.js similarity index 100% rename from luci-app-crowdsec-dashboard/htdocs/luci-static/resources/view/crowdsec-dashboard/bouncers.js rename to package/secubox/luci-app-crowdsec-dashboard/htdocs/luci-static/resources/view/crowdsec-dashboard/bouncers.js diff --git a/luci-app-crowdsec-dashboard/htdocs/luci-static/resources/view/crowdsec-dashboard/decisions.js b/package/secubox/luci-app-crowdsec-dashboard/htdocs/luci-static/resources/view/crowdsec-dashboard/decisions.js similarity index 100% rename from luci-app-crowdsec-dashboard/htdocs/luci-static/resources/view/crowdsec-dashboard/decisions.js rename to package/secubox/luci-app-crowdsec-dashboard/htdocs/luci-static/resources/view/crowdsec-dashboard/decisions.js diff --git a/luci-app-crowdsec-dashboard/htdocs/luci-static/resources/view/crowdsec-dashboard/metrics.js b/package/secubox/luci-app-crowdsec-dashboard/htdocs/luci-static/resources/view/crowdsec-dashboard/metrics.js similarity index 100% rename from luci-app-crowdsec-dashboard/htdocs/luci-static/resources/view/crowdsec-dashboard/metrics.js rename to package/secubox/luci-app-crowdsec-dashboard/htdocs/luci-static/resources/view/crowdsec-dashboard/metrics.js diff --git a/luci-app-crowdsec-dashboard/htdocs/luci-static/resources/view/crowdsec-dashboard/overview.js b/package/secubox/luci-app-crowdsec-dashboard/htdocs/luci-static/resources/view/crowdsec-dashboard/overview.js similarity index 100% rename from luci-app-crowdsec-dashboard/htdocs/luci-static/resources/view/crowdsec-dashboard/overview.js rename to package/secubox/luci-app-crowdsec-dashboard/htdocs/luci-static/resources/view/crowdsec-dashboard/overview.js diff --git a/luci-app-crowdsec-dashboard/htdocs/luci-static/resources/view/crowdsec-dashboard/settings.js b/package/secubox/luci-app-crowdsec-dashboard/htdocs/luci-static/resources/view/crowdsec-dashboard/settings.js similarity index 100% rename from luci-app-crowdsec-dashboard/htdocs/luci-static/resources/view/crowdsec-dashboard/settings.js rename to package/secubox/luci-app-crowdsec-dashboard/htdocs/luci-static/resources/view/crowdsec-dashboard/settings.js diff --git a/luci-app-crowdsec-dashboard/htdocs/luci-static/resources/view/crowdsec-dashboard/waf.js b/package/secubox/luci-app-crowdsec-dashboard/htdocs/luci-static/resources/view/crowdsec-dashboard/waf.js similarity index 100% rename from luci-app-crowdsec-dashboard/htdocs/luci-static/resources/view/crowdsec-dashboard/waf.js rename to package/secubox/luci-app-crowdsec-dashboard/htdocs/luci-static/resources/view/crowdsec-dashboard/waf.js diff --git a/luci-app-crowdsec-dashboard/po/templates/crowdsec-dashboard.pot b/package/secubox/luci-app-crowdsec-dashboard/po/templates/crowdsec-dashboard.pot similarity index 100% rename from luci-app-crowdsec-dashboard/po/templates/crowdsec-dashboard.pot rename to package/secubox/luci-app-crowdsec-dashboard/po/templates/crowdsec-dashboard.pot diff --git a/luci-app-crowdsec-dashboard/root/usr/libexec/rpcd/luci.crowdsec-dashboard b/package/secubox/luci-app-crowdsec-dashboard/root/usr/libexec/rpcd/luci.crowdsec-dashboard similarity index 100% rename from luci-app-crowdsec-dashboard/root/usr/libexec/rpcd/luci.crowdsec-dashboard rename to package/secubox/luci-app-crowdsec-dashboard/root/usr/libexec/rpcd/luci.crowdsec-dashboard diff --git a/luci-app-crowdsec-dashboard/root/usr/share/luci/menu.d/luci-app-crowdsec-dashboard.json b/package/secubox/luci-app-crowdsec-dashboard/root/usr/share/luci/menu.d/luci-app-crowdsec-dashboard.json similarity index 100% rename from luci-app-crowdsec-dashboard/root/usr/share/luci/menu.d/luci-app-crowdsec-dashboard.json rename to package/secubox/luci-app-crowdsec-dashboard/root/usr/share/luci/menu.d/luci-app-crowdsec-dashboard.json diff --git a/luci-app-crowdsec-dashboard/root/usr/share/rpcd/acl.d/luci-app-crowdsec-dashboard.json b/package/secubox/luci-app-crowdsec-dashboard/root/usr/share/rpcd/acl.d/luci-app-crowdsec-dashboard.json similarity index 100% rename from luci-app-crowdsec-dashboard/root/usr/share/rpcd/acl.d/luci-app-crowdsec-dashboard.json rename to package/secubox/luci-app-crowdsec-dashboard/root/usr/share/rpcd/acl.d/luci-app-crowdsec-dashboard.json diff --git a/luci-app-ksm-manager/Makefile b/package/secubox/luci-app-ksm-manager/Makefile similarity index 100% rename from luci-app-ksm-manager/Makefile rename to package/secubox/luci-app-ksm-manager/Makefile diff --git a/luci-app-ksm-manager/README.md b/package/secubox/luci-app-ksm-manager/README.md similarity index 100% rename from luci-app-ksm-manager/README.md rename to package/secubox/luci-app-ksm-manager/README.md diff --git a/luci-app-ksm-manager/htdocs/luci-static/resources/ksm-manager/api.js b/package/secubox/luci-app-ksm-manager/htdocs/luci-static/resources/ksm-manager/api.js similarity index 100% rename from luci-app-ksm-manager/htdocs/luci-static/resources/ksm-manager/api.js rename to package/secubox/luci-app-ksm-manager/htdocs/luci-static/resources/ksm-manager/api.js diff --git a/luci-app-ksm-manager/htdocs/luci-static/resources/ksm-manager/common.css b/package/secubox/luci-app-ksm-manager/htdocs/luci-static/resources/ksm-manager/common.css similarity index 100% rename from luci-app-ksm-manager/htdocs/luci-static/resources/ksm-manager/common.css rename to package/secubox/luci-app-ksm-manager/htdocs/luci-static/resources/ksm-manager/common.css diff --git a/luci-app-ksm-manager/htdocs/luci-static/resources/view/ksm-manager/audit.js b/package/secubox/luci-app-ksm-manager/htdocs/luci-static/resources/view/ksm-manager/audit.js similarity index 100% rename from luci-app-ksm-manager/htdocs/luci-static/resources/view/ksm-manager/audit.js rename to package/secubox/luci-app-ksm-manager/htdocs/luci-static/resources/view/ksm-manager/audit.js diff --git a/luci-app-ksm-manager/htdocs/luci-static/resources/view/ksm-manager/certificates.js b/package/secubox/luci-app-ksm-manager/htdocs/luci-static/resources/view/ksm-manager/certificates.js similarity index 100% rename from luci-app-ksm-manager/htdocs/luci-static/resources/view/ksm-manager/certificates.js rename to package/secubox/luci-app-ksm-manager/htdocs/luci-static/resources/view/ksm-manager/certificates.js diff --git a/luci-app-ksm-manager/htdocs/luci-static/resources/view/ksm-manager/hsm.js b/package/secubox/luci-app-ksm-manager/htdocs/luci-static/resources/view/ksm-manager/hsm.js similarity index 100% rename from luci-app-ksm-manager/htdocs/luci-static/resources/view/ksm-manager/hsm.js rename to package/secubox/luci-app-ksm-manager/htdocs/luci-static/resources/view/ksm-manager/hsm.js diff --git a/luci-app-ksm-manager/htdocs/luci-static/resources/view/ksm-manager/keys.js b/package/secubox/luci-app-ksm-manager/htdocs/luci-static/resources/view/ksm-manager/keys.js similarity index 100% rename from luci-app-ksm-manager/htdocs/luci-static/resources/view/ksm-manager/keys.js rename to package/secubox/luci-app-ksm-manager/htdocs/luci-static/resources/view/ksm-manager/keys.js diff --git a/luci-app-ksm-manager/htdocs/luci-static/resources/view/ksm-manager/overview.js b/package/secubox/luci-app-ksm-manager/htdocs/luci-static/resources/view/ksm-manager/overview.js similarity index 100% rename from luci-app-ksm-manager/htdocs/luci-static/resources/view/ksm-manager/overview.js rename to package/secubox/luci-app-ksm-manager/htdocs/luci-static/resources/view/ksm-manager/overview.js diff --git a/luci-app-ksm-manager/htdocs/luci-static/resources/view/ksm-manager/secrets.js b/package/secubox/luci-app-ksm-manager/htdocs/luci-static/resources/view/ksm-manager/secrets.js similarity index 100% rename from luci-app-ksm-manager/htdocs/luci-static/resources/view/ksm-manager/secrets.js rename to package/secubox/luci-app-ksm-manager/htdocs/luci-static/resources/view/ksm-manager/secrets.js diff --git a/luci-app-ksm-manager/htdocs/luci-static/resources/view/ksm-manager/settings.js b/package/secubox/luci-app-ksm-manager/htdocs/luci-static/resources/view/ksm-manager/settings.js similarity index 100% rename from luci-app-ksm-manager/htdocs/luci-static/resources/view/ksm-manager/settings.js rename to package/secubox/luci-app-ksm-manager/htdocs/luci-static/resources/view/ksm-manager/settings.js diff --git a/luci-app-ksm-manager/htdocs/luci-static/resources/view/ksm-manager/ssh.js b/package/secubox/luci-app-ksm-manager/htdocs/luci-static/resources/view/ksm-manager/ssh.js similarity index 100% rename from luci-app-ksm-manager/htdocs/luci-static/resources/view/ksm-manager/ssh.js rename to package/secubox/luci-app-ksm-manager/htdocs/luci-static/resources/view/ksm-manager/ssh.js diff --git a/luci-app-ksm-manager/root/usr/libexec/rpcd/luci.ksm-manager b/package/secubox/luci-app-ksm-manager/root/usr/libexec/rpcd/luci.ksm-manager similarity index 100% rename from luci-app-ksm-manager/root/usr/libexec/rpcd/luci.ksm-manager rename to package/secubox/luci-app-ksm-manager/root/usr/libexec/rpcd/luci.ksm-manager diff --git a/luci-app-ksm-manager/root/usr/share/luci/menu.d/luci-app-ksm-manager.json b/package/secubox/luci-app-ksm-manager/root/usr/share/luci/menu.d/luci-app-ksm-manager.json similarity index 100% rename from luci-app-ksm-manager/root/usr/share/luci/menu.d/luci-app-ksm-manager.json rename to package/secubox/luci-app-ksm-manager/root/usr/share/luci/menu.d/luci-app-ksm-manager.json diff --git a/luci-app-ksm-manager/root/usr/share/rpcd/acl.d/luci-app-ksm-manager.json b/package/secubox/luci-app-ksm-manager/root/usr/share/rpcd/acl.d/luci-app-ksm-manager.json similarity index 100% rename from luci-app-ksm-manager/root/usr/share/rpcd/acl.d/luci-app-ksm-manager.json rename to package/secubox/luci-app-ksm-manager/root/usr/share/rpcd/acl.d/luci-app-ksm-manager.json diff --git a/luci-app-media-flow/Makefile b/package/secubox/luci-app-media-flow/Makefile similarity index 100% rename from luci-app-media-flow/Makefile rename to package/secubox/luci-app-media-flow/Makefile diff --git a/luci-app-media-flow/README.md b/package/secubox/luci-app-media-flow/README.md similarity index 100% rename from luci-app-media-flow/README.md rename to package/secubox/luci-app-media-flow/README.md diff --git a/luci-app-media-flow/htdocs/luci-static/resources/media-flow/api.js b/package/secubox/luci-app-media-flow/htdocs/luci-static/resources/media-flow/api.js similarity index 100% rename from luci-app-media-flow/htdocs/luci-static/resources/media-flow/api.js rename to package/secubox/luci-app-media-flow/htdocs/luci-static/resources/media-flow/api.js diff --git a/luci-app-media-flow/htdocs/luci-static/resources/media-flow/common.css b/package/secubox/luci-app-media-flow/htdocs/luci-static/resources/media-flow/common.css similarity index 100% rename from luci-app-media-flow/htdocs/luci-static/resources/media-flow/common.css rename to package/secubox/luci-app-media-flow/htdocs/luci-static/resources/media-flow/common.css diff --git a/luci-app-media-flow/htdocs/luci-static/resources/view/media-flow/alerts.js b/package/secubox/luci-app-media-flow/htdocs/luci-static/resources/view/media-flow/alerts.js similarity index 100% rename from luci-app-media-flow/htdocs/luci-static/resources/view/media-flow/alerts.js rename to package/secubox/luci-app-media-flow/htdocs/luci-static/resources/view/media-flow/alerts.js diff --git a/luci-app-media-flow/htdocs/luci-static/resources/view/media-flow/clients.js b/package/secubox/luci-app-media-flow/htdocs/luci-static/resources/view/media-flow/clients.js similarity index 100% rename from luci-app-media-flow/htdocs/luci-static/resources/view/media-flow/clients.js rename to package/secubox/luci-app-media-flow/htdocs/luci-static/resources/view/media-flow/clients.js diff --git a/luci-app-media-flow/htdocs/luci-static/resources/view/media-flow/dashboard.js b/package/secubox/luci-app-media-flow/htdocs/luci-static/resources/view/media-flow/dashboard.js similarity index 100% rename from luci-app-media-flow/htdocs/luci-static/resources/view/media-flow/dashboard.js rename to package/secubox/luci-app-media-flow/htdocs/luci-static/resources/view/media-flow/dashboard.js diff --git a/luci-app-media-flow/htdocs/luci-static/resources/view/media-flow/history.js b/package/secubox/luci-app-media-flow/htdocs/luci-static/resources/view/media-flow/history.js similarity index 100% rename from luci-app-media-flow/htdocs/luci-static/resources/view/media-flow/history.js rename to package/secubox/luci-app-media-flow/htdocs/luci-static/resources/view/media-flow/history.js diff --git a/luci-app-media-flow/htdocs/luci-static/resources/view/media-flow/services.js b/package/secubox/luci-app-media-flow/htdocs/luci-static/resources/view/media-flow/services.js similarity index 100% rename from luci-app-media-flow/htdocs/luci-static/resources/view/media-flow/services.js rename to package/secubox/luci-app-media-flow/htdocs/luci-static/resources/view/media-flow/services.js diff --git a/luci-app-media-flow/root/etc/config/media_flow b/package/secubox/luci-app-media-flow/root/etc/config/media_flow similarity index 100% rename from luci-app-media-flow/root/etc/config/media_flow rename to package/secubox/luci-app-media-flow/root/etc/config/media_flow diff --git a/luci-app-media-flow/root/usr/libexec/rpcd/luci.media-flow b/package/secubox/luci-app-media-flow/root/usr/libexec/rpcd/luci.media-flow similarity index 100% rename from luci-app-media-flow/root/usr/libexec/rpcd/luci.media-flow rename to package/secubox/luci-app-media-flow/root/usr/libexec/rpcd/luci.media-flow diff --git a/luci-app-media-flow/root/usr/share/luci/menu.d/luci-app-media-flow.json b/package/secubox/luci-app-media-flow/root/usr/share/luci/menu.d/luci-app-media-flow.json similarity index 100% rename from luci-app-media-flow/root/usr/share/luci/menu.d/luci-app-media-flow.json rename to package/secubox/luci-app-media-flow/root/usr/share/luci/menu.d/luci-app-media-flow.json diff --git a/luci-app-media-flow/root/usr/share/rpcd/acl.d/luci-app-media-flow.json b/package/secubox/luci-app-media-flow/root/usr/share/rpcd/acl.d/luci-app-media-flow.json similarity index 100% rename from luci-app-media-flow/root/usr/share/rpcd/acl.d/luci-app-media-flow.json rename to package/secubox/luci-app-media-flow/root/usr/share/rpcd/acl.d/luci-app-media-flow.json diff --git a/luci-app-mqtt-bridge/Makefile b/package/secubox/luci-app-mqtt-bridge/Makefile similarity index 100% rename from luci-app-mqtt-bridge/Makefile rename to package/secubox/luci-app-mqtt-bridge/Makefile diff --git a/luci-app-mqtt-bridge/README.md b/package/secubox/luci-app-mqtt-bridge/README.md similarity index 100% rename from luci-app-mqtt-bridge/README.md rename to package/secubox/luci-app-mqtt-bridge/README.md diff --git a/luci-app-mqtt-bridge/htdocs/luci-static/resources/mqtt-bridge/api.js b/package/secubox/luci-app-mqtt-bridge/htdocs/luci-static/resources/mqtt-bridge/api.js similarity index 100% rename from luci-app-mqtt-bridge/htdocs/luci-static/resources/mqtt-bridge/api.js rename to package/secubox/luci-app-mqtt-bridge/htdocs/luci-static/resources/mqtt-bridge/api.js diff --git a/luci-app-mqtt-bridge/htdocs/luci-static/resources/mqtt-bridge/common.css b/package/secubox/luci-app-mqtt-bridge/htdocs/luci-static/resources/mqtt-bridge/common.css similarity index 100% rename from luci-app-mqtt-bridge/htdocs/luci-static/resources/mqtt-bridge/common.css rename to package/secubox/luci-app-mqtt-bridge/htdocs/luci-static/resources/mqtt-bridge/common.css diff --git a/luci-app-mqtt-bridge/htdocs/luci-static/resources/mqtt-bridge/nav.js b/package/secubox/luci-app-mqtt-bridge/htdocs/luci-static/resources/mqtt-bridge/nav.js similarity index 100% rename from luci-app-mqtt-bridge/htdocs/luci-static/resources/mqtt-bridge/nav.js rename to package/secubox/luci-app-mqtt-bridge/htdocs/luci-static/resources/mqtt-bridge/nav.js diff --git a/luci-app-mqtt-bridge/htdocs/luci-static/resources/view/mqtt-bridge/adapters.js b/package/secubox/luci-app-mqtt-bridge/htdocs/luci-static/resources/view/mqtt-bridge/adapters.js similarity index 100% rename from luci-app-mqtt-bridge/htdocs/luci-static/resources/view/mqtt-bridge/adapters.js rename to package/secubox/luci-app-mqtt-bridge/htdocs/luci-static/resources/view/mqtt-bridge/adapters.js diff --git a/luci-app-mqtt-bridge/htdocs/luci-static/resources/view/mqtt-bridge/devices.js b/package/secubox/luci-app-mqtt-bridge/htdocs/luci-static/resources/view/mqtt-bridge/devices.js similarity index 100% rename from luci-app-mqtt-bridge/htdocs/luci-static/resources/view/mqtt-bridge/devices.js rename to package/secubox/luci-app-mqtt-bridge/htdocs/luci-static/resources/view/mqtt-bridge/devices.js diff --git a/luci-app-mqtt-bridge/htdocs/luci-static/resources/view/mqtt-bridge/overview.js b/package/secubox/luci-app-mqtt-bridge/htdocs/luci-static/resources/view/mqtt-bridge/overview.js similarity index 100% rename from luci-app-mqtt-bridge/htdocs/luci-static/resources/view/mqtt-bridge/overview.js rename to package/secubox/luci-app-mqtt-bridge/htdocs/luci-static/resources/view/mqtt-bridge/overview.js diff --git a/luci-app-mqtt-bridge/htdocs/luci-static/resources/view/mqtt-bridge/settings.js b/package/secubox/luci-app-mqtt-bridge/htdocs/luci-static/resources/view/mqtt-bridge/settings.js similarity index 100% rename from luci-app-mqtt-bridge/htdocs/luci-static/resources/view/mqtt-bridge/settings.js rename to package/secubox/luci-app-mqtt-bridge/htdocs/luci-static/resources/view/mqtt-bridge/settings.js diff --git a/luci-app-mqtt-bridge/luasrc/controller/secubox/mqtt-bridge.lua b/package/secubox/luci-app-mqtt-bridge/luasrc/controller/secubox/mqtt-bridge.lua similarity index 100% rename from luci-app-mqtt-bridge/luasrc/controller/secubox/mqtt-bridge.lua rename to package/secubox/luci-app-mqtt-bridge/luasrc/controller/secubox/mqtt-bridge.lua diff --git a/luci-app-mqtt-bridge/root/etc/config/mqtt-bridge b/package/secubox/luci-app-mqtt-bridge/root/etc/config/mqtt-bridge similarity index 100% rename from luci-app-mqtt-bridge/root/etc/config/mqtt-bridge rename to package/secubox/luci-app-mqtt-bridge/root/etc/config/mqtt-bridge diff --git a/luci-app-mqtt-bridge/root/etc/init.d/mqtt-bridge b/package/secubox/luci-app-mqtt-bridge/root/etc/init.d/mqtt-bridge similarity index 100% rename from luci-app-mqtt-bridge/root/etc/init.d/mqtt-bridge rename to package/secubox/luci-app-mqtt-bridge/root/etc/init.d/mqtt-bridge diff --git a/luci-app-mqtt-bridge/root/usr/libexec/rpcd/luci.mqtt-bridge b/package/secubox/luci-app-mqtt-bridge/root/usr/libexec/rpcd/luci.mqtt-bridge similarity index 100% rename from luci-app-mqtt-bridge/root/usr/libexec/rpcd/luci.mqtt-bridge rename to package/secubox/luci-app-mqtt-bridge/root/usr/libexec/rpcd/luci.mqtt-bridge diff --git a/luci-app-mqtt-bridge/root/usr/sbin/mqtt-bridge b/package/secubox/luci-app-mqtt-bridge/root/usr/sbin/mqtt-bridge similarity index 100% rename from luci-app-mqtt-bridge/root/usr/sbin/mqtt-bridge rename to package/secubox/luci-app-mqtt-bridge/root/usr/sbin/mqtt-bridge diff --git a/luci-app-mqtt-bridge/root/usr/sbin/mqtt-bridge-monitor b/package/secubox/luci-app-mqtt-bridge/root/usr/sbin/mqtt-bridge-monitor similarity index 100% rename from luci-app-mqtt-bridge/root/usr/sbin/mqtt-bridge-monitor rename to package/secubox/luci-app-mqtt-bridge/root/usr/sbin/mqtt-bridge-monitor diff --git a/luci-app-mqtt-bridge/root/usr/share/luci/menu.d/luci-app-mqtt-bridge.json b/package/secubox/luci-app-mqtt-bridge/root/usr/share/luci/menu.d/luci-app-mqtt-bridge.json similarity index 100% rename from luci-app-mqtt-bridge/root/usr/share/luci/menu.d/luci-app-mqtt-bridge.json rename to package/secubox/luci-app-mqtt-bridge/root/usr/share/luci/menu.d/luci-app-mqtt-bridge.json diff --git a/luci-app-mqtt-bridge/root/usr/share/mqtt-bridge/usb-database.sh b/package/secubox/luci-app-mqtt-bridge/root/usr/share/mqtt-bridge/usb-database.sh similarity index 100% rename from luci-app-mqtt-bridge/root/usr/share/mqtt-bridge/usb-database.sh rename to package/secubox/luci-app-mqtt-bridge/root/usr/share/mqtt-bridge/usb-database.sh diff --git a/luci-app-mqtt-bridge/root/usr/share/rpcd/acl.d/luci-app-mqtt-bridge.json b/package/secubox/luci-app-mqtt-bridge/root/usr/share/rpcd/acl.d/luci-app-mqtt-bridge.json similarity index 100% rename from luci-app-mqtt-bridge/root/usr/share/rpcd/acl.d/luci-app-mqtt-bridge.json rename to package/secubox/luci-app-mqtt-bridge/root/usr/share/rpcd/acl.d/luci-app-mqtt-bridge.json diff --git a/luci-app-netdata-dashboard/.github/workflows/build.yml b/package/secubox/luci-app-netdata-dashboard/.github/workflows/build.yml similarity index 100% rename from luci-app-netdata-dashboard/.github/workflows/build.yml rename to package/secubox/luci-app-netdata-dashboard/.github/workflows/build.yml diff --git a/luci-app-netdata-dashboard/Makefile b/package/secubox/luci-app-netdata-dashboard/Makefile similarity index 100% rename from luci-app-netdata-dashboard/Makefile rename to package/secubox/luci-app-netdata-dashboard/Makefile diff --git a/luci-app-netdata-dashboard/README.md b/package/secubox/luci-app-netdata-dashboard/README.md similarity index 100% rename from luci-app-netdata-dashboard/README.md rename to package/secubox/luci-app-netdata-dashboard/README.md diff --git a/luci-app-netdata-dashboard/htdocs/luci-static/resources/netdata-dashboard/api.js b/package/secubox/luci-app-netdata-dashboard/htdocs/luci-static/resources/netdata-dashboard/api.js similarity index 100% rename from luci-app-netdata-dashboard/htdocs/luci-static/resources/netdata-dashboard/api.js rename to package/secubox/luci-app-netdata-dashboard/htdocs/luci-static/resources/netdata-dashboard/api.js diff --git a/luci-app-netdata-dashboard/htdocs/luci-static/resources/netdata-dashboard/common.css b/package/secubox/luci-app-netdata-dashboard/htdocs/luci-static/resources/netdata-dashboard/common.css similarity index 100% rename from luci-app-netdata-dashboard/htdocs/luci-static/resources/netdata-dashboard/common.css rename to package/secubox/luci-app-netdata-dashboard/htdocs/luci-static/resources/netdata-dashboard/common.css diff --git a/luci-app-netdata-dashboard/htdocs/luci-static/resources/netdata-dashboard/dashboard.css b/package/secubox/luci-app-netdata-dashboard/htdocs/luci-static/resources/netdata-dashboard/dashboard.css similarity index 100% rename from luci-app-netdata-dashboard/htdocs/luci-static/resources/netdata-dashboard/dashboard.css rename to package/secubox/luci-app-netdata-dashboard/htdocs/luci-static/resources/netdata-dashboard/dashboard.css diff --git a/luci-app-netdata-dashboard/htdocs/luci-static/resources/view/netdata-dashboard/dashboard.js b/package/secubox/luci-app-netdata-dashboard/htdocs/luci-static/resources/view/netdata-dashboard/dashboard.js similarity index 100% rename from luci-app-netdata-dashboard/htdocs/luci-static/resources/view/netdata-dashboard/dashboard.js rename to package/secubox/luci-app-netdata-dashboard/htdocs/luci-static/resources/view/netdata-dashboard/dashboard.js diff --git a/luci-app-netdata-dashboard/htdocs/luci-static/resources/view/netdata-dashboard/network.js b/package/secubox/luci-app-netdata-dashboard/htdocs/luci-static/resources/view/netdata-dashboard/network.js similarity index 100% rename from luci-app-netdata-dashboard/htdocs/luci-static/resources/view/netdata-dashboard/network.js rename to package/secubox/luci-app-netdata-dashboard/htdocs/luci-static/resources/view/netdata-dashboard/network.js diff --git a/luci-app-netdata-dashboard/htdocs/luci-static/resources/view/netdata-dashboard/processes.js b/package/secubox/luci-app-netdata-dashboard/htdocs/luci-static/resources/view/netdata-dashboard/processes.js similarity index 100% rename from luci-app-netdata-dashboard/htdocs/luci-static/resources/view/netdata-dashboard/processes.js rename to package/secubox/luci-app-netdata-dashboard/htdocs/luci-static/resources/view/netdata-dashboard/processes.js diff --git a/luci-app-netdata-dashboard/htdocs/luci-static/resources/view/netdata-dashboard/realtime.js b/package/secubox/luci-app-netdata-dashboard/htdocs/luci-static/resources/view/netdata-dashboard/realtime.js similarity index 100% rename from luci-app-netdata-dashboard/htdocs/luci-static/resources/view/netdata-dashboard/realtime.js rename to package/secubox/luci-app-netdata-dashboard/htdocs/luci-static/resources/view/netdata-dashboard/realtime.js diff --git a/luci-app-netdata-dashboard/htdocs/luci-static/resources/view/netdata-dashboard/settings.js b/package/secubox/luci-app-netdata-dashboard/htdocs/luci-static/resources/view/netdata-dashboard/settings.js similarity index 100% rename from luci-app-netdata-dashboard/htdocs/luci-static/resources/view/netdata-dashboard/settings.js rename to package/secubox/luci-app-netdata-dashboard/htdocs/luci-static/resources/view/netdata-dashboard/settings.js diff --git a/luci-app-netdata-dashboard/htdocs/luci-static/resources/view/netdata-dashboard/system.js b/package/secubox/luci-app-netdata-dashboard/htdocs/luci-static/resources/view/netdata-dashboard/system.js similarity index 100% rename from luci-app-netdata-dashboard/htdocs/luci-static/resources/view/netdata-dashboard/system.js rename to package/secubox/luci-app-netdata-dashboard/htdocs/luci-static/resources/view/netdata-dashboard/system.js diff --git a/luci-app-netdata-dashboard/root/usr/libexec/rpcd/luci.netdata-dashboard b/package/secubox/luci-app-netdata-dashboard/root/usr/libexec/rpcd/luci.netdata-dashboard similarity index 100% rename from luci-app-netdata-dashboard/root/usr/libexec/rpcd/luci.netdata-dashboard rename to package/secubox/luci-app-netdata-dashboard/root/usr/libexec/rpcd/luci.netdata-dashboard diff --git a/luci-app-netdata-dashboard/root/usr/share/luci/menu.d/luci-app-netdata-dashboard.json b/package/secubox/luci-app-netdata-dashboard/root/usr/share/luci/menu.d/luci-app-netdata-dashboard.json similarity index 100% rename from luci-app-netdata-dashboard/root/usr/share/luci/menu.d/luci-app-netdata-dashboard.json rename to package/secubox/luci-app-netdata-dashboard/root/usr/share/luci/menu.d/luci-app-netdata-dashboard.json diff --git a/luci-app-netdata-dashboard/root/usr/share/rpcd/acl.d/luci-app-netdata-dashboard.json b/package/secubox/luci-app-netdata-dashboard/root/usr/share/rpcd/acl.d/luci-app-netdata-dashboard.json similarity index 100% rename from luci-app-netdata-dashboard/root/usr/share/rpcd/acl.d/luci-app-netdata-dashboard.json rename to package/secubox/luci-app-netdata-dashboard/root/usr/share/rpcd/acl.d/luci-app-netdata-dashboard.json diff --git a/luci-app-netifyd-dashboard/.github/workflows/build.yml b/package/secubox/luci-app-netifyd-dashboard/.github/workflows/build.yml similarity index 100% rename from luci-app-netifyd-dashboard/.github/workflows/build.yml rename to package/secubox/luci-app-netifyd-dashboard/.github/workflows/build.yml diff --git a/luci-app-netifyd-dashboard/Makefile b/package/secubox/luci-app-netifyd-dashboard/Makefile similarity index 100% rename from luci-app-netifyd-dashboard/Makefile rename to package/secubox/luci-app-netifyd-dashboard/Makefile diff --git a/luci-app-netifyd-dashboard/README.md b/package/secubox/luci-app-netifyd-dashboard/README.md similarity index 100% rename from luci-app-netifyd-dashboard/README.md rename to package/secubox/luci-app-netifyd-dashboard/README.md diff --git a/luci-app-netifyd-dashboard/htdocs/luci-static/resources/netifyd-dashboard/api.js b/package/secubox/luci-app-netifyd-dashboard/htdocs/luci-static/resources/netifyd-dashboard/api.js similarity index 100% rename from luci-app-netifyd-dashboard/htdocs/luci-static/resources/netifyd-dashboard/api.js rename to package/secubox/luci-app-netifyd-dashboard/htdocs/luci-static/resources/netifyd-dashboard/api.js diff --git a/luci-app-netifyd-dashboard/htdocs/luci-static/resources/netifyd-dashboard/common.css b/package/secubox/luci-app-netifyd-dashboard/htdocs/luci-static/resources/netifyd-dashboard/common.css similarity index 100% rename from luci-app-netifyd-dashboard/htdocs/luci-static/resources/netifyd-dashboard/common.css rename to package/secubox/luci-app-netifyd-dashboard/htdocs/luci-static/resources/netifyd-dashboard/common.css diff --git a/luci-app-netifyd-dashboard/htdocs/luci-static/resources/netifyd-dashboard/dashboard.css b/package/secubox/luci-app-netifyd-dashboard/htdocs/luci-static/resources/netifyd-dashboard/dashboard.css similarity index 100% rename from luci-app-netifyd-dashboard/htdocs/luci-static/resources/netifyd-dashboard/dashboard.css rename to package/secubox/luci-app-netifyd-dashboard/htdocs/luci-static/resources/netifyd-dashboard/dashboard.css diff --git a/luci-app-netifyd-dashboard/htdocs/luci-static/resources/view/netifyd-dashboard/applications.js b/package/secubox/luci-app-netifyd-dashboard/htdocs/luci-static/resources/view/netifyd-dashboard/applications.js similarity index 100% rename from luci-app-netifyd-dashboard/htdocs/luci-static/resources/view/netifyd-dashboard/applications.js rename to package/secubox/luci-app-netifyd-dashboard/htdocs/luci-static/resources/view/netifyd-dashboard/applications.js diff --git a/luci-app-netifyd-dashboard/htdocs/luci-static/resources/view/netifyd-dashboard/devices.js b/package/secubox/luci-app-netifyd-dashboard/htdocs/luci-static/resources/view/netifyd-dashboard/devices.js similarity index 100% rename from luci-app-netifyd-dashboard/htdocs/luci-static/resources/view/netifyd-dashboard/devices.js rename to package/secubox/luci-app-netifyd-dashboard/htdocs/luci-static/resources/view/netifyd-dashboard/devices.js diff --git a/luci-app-netifyd-dashboard/htdocs/luci-static/resources/view/netifyd-dashboard/flows.js b/package/secubox/luci-app-netifyd-dashboard/htdocs/luci-static/resources/view/netifyd-dashboard/flows.js similarity index 100% rename from luci-app-netifyd-dashboard/htdocs/luci-static/resources/view/netifyd-dashboard/flows.js rename to package/secubox/luci-app-netifyd-dashboard/htdocs/luci-static/resources/view/netifyd-dashboard/flows.js diff --git a/luci-app-netifyd-dashboard/htdocs/luci-static/resources/view/netifyd-dashboard/overview.js b/package/secubox/luci-app-netifyd-dashboard/htdocs/luci-static/resources/view/netifyd-dashboard/overview.js similarity index 100% rename from luci-app-netifyd-dashboard/htdocs/luci-static/resources/view/netifyd-dashboard/overview.js rename to package/secubox/luci-app-netifyd-dashboard/htdocs/luci-static/resources/view/netifyd-dashboard/overview.js diff --git a/luci-app-netifyd-dashboard/htdocs/luci-static/resources/view/netifyd-dashboard/risks.js b/package/secubox/luci-app-netifyd-dashboard/htdocs/luci-static/resources/view/netifyd-dashboard/risks.js similarity index 100% rename from luci-app-netifyd-dashboard/htdocs/luci-static/resources/view/netifyd-dashboard/risks.js rename to package/secubox/luci-app-netifyd-dashboard/htdocs/luci-static/resources/view/netifyd-dashboard/risks.js diff --git a/luci-app-netifyd-dashboard/htdocs/luci-static/resources/view/netifyd-dashboard/settings.js b/package/secubox/luci-app-netifyd-dashboard/htdocs/luci-static/resources/view/netifyd-dashboard/settings.js similarity index 100% rename from luci-app-netifyd-dashboard/htdocs/luci-static/resources/view/netifyd-dashboard/settings.js rename to package/secubox/luci-app-netifyd-dashboard/htdocs/luci-static/resources/view/netifyd-dashboard/settings.js diff --git a/luci-app-netifyd-dashboard/htdocs/luci-static/resources/view/netifyd-dashboard/talkers.js b/package/secubox/luci-app-netifyd-dashboard/htdocs/luci-static/resources/view/netifyd-dashboard/talkers.js similarity index 100% rename from luci-app-netifyd-dashboard/htdocs/luci-static/resources/view/netifyd-dashboard/talkers.js rename to package/secubox/luci-app-netifyd-dashboard/htdocs/luci-static/resources/view/netifyd-dashboard/talkers.js diff --git a/luci-app-netifyd-dashboard/htdocs/luci-static/resources/view/netifyd-dashboard/wizard.js b/package/secubox/luci-app-netifyd-dashboard/htdocs/luci-static/resources/view/netifyd-dashboard/wizard.js similarity index 100% rename from luci-app-netifyd-dashboard/htdocs/luci-static/resources/view/netifyd-dashboard/wizard.js rename to package/secubox/luci-app-netifyd-dashboard/htdocs/luci-static/resources/view/netifyd-dashboard/wizard.js diff --git a/luci-app-netifyd-dashboard/root/usr/libexec/rpcd/luci.netifyd-dashboard b/package/secubox/luci-app-netifyd-dashboard/root/usr/libexec/rpcd/luci.netifyd-dashboard similarity index 100% rename from luci-app-netifyd-dashboard/root/usr/libexec/rpcd/luci.netifyd-dashboard rename to package/secubox/luci-app-netifyd-dashboard/root/usr/libexec/rpcd/luci.netifyd-dashboard diff --git a/luci-app-netifyd-dashboard/root/usr/share/luci/menu.d/luci-app-netifyd-dashboard.json b/package/secubox/luci-app-netifyd-dashboard/root/usr/share/luci/menu.d/luci-app-netifyd-dashboard.json similarity index 100% rename from luci-app-netifyd-dashboard/root/usr/share/luci/menu.d/luci-app-netifyd-dashboard.json rename to package/secubox/luci-app-netifyd-dashboard/root/usr/share/luci/menu.d/luci-app-netifyd-dashboard.json diff --git a/luci-app-netifyd-dashboard/root/usr/share/rpcd/acl.d/luci-app-netifyd-dashboard.json b/package/secubox/luci-app-netifyd-dashboard/root/usr/share/rpcd/acl.d/luci-app-netifyd-dashboard.json similarity index 100% rename from luci-app-netifyd-dashboard/root/usr/share/rpcd/acl.d/luci-app-netifyd-dashboard.json rename to package/secubox/luci-app-netifyd-dashboard/root/usr/share/rpcd/acl.d/luci-app-netifyd-dashboard.json diff --git a/luci-app-network-modes/.github/workflows/build.yml b/package/secubox/luci-app-network-modes/.github/workflows/build.yml similarity index 100% rename from luci-app-network-modes/.github/workflows/build.yml rename to package/secubox/luci-app-network-modes/.github/workflows/build.yml diff --git a/luci-app-network-modes/CODEX-v0.3.5.md b/package/secubox/luci-app-network-modes/CODEX-v0.3.5.md similarity index 100% rename from luci-app-network-modes/CODEX-v0.3.5.md rename to package/secubox/luci-app-network-modes/CODEX-v0.3.5.md diff --git a/luci-app-network-modes/Makefile b/package/secubox/luci-app-network-modes/Makefile similarity index 100% rename from luci-app-network-modes/Makefile rename to package/secubox/luci-app-network-modes/Makefile diff --git a/luci-app-network-modes/README.md b/package/secubox/luci-app-network-modes/README.md similarity index 100% rename from luci-app-network-modes/README.md rename to package/secubox/luci-app-network-modes/README.md diff --git a/luci-app-network-modes/htdocs/luci-static/resources/network-modes/api.js b/package/secubox/luci-app-network-modes/htdocs/luci-static/resources/network-modes/api.js similarity index 100% rename from luci-app-network-modes/htdocs/luci-static/resources/network-modes/api.js rename to package/secubox/luci-app-network-modes/htdocs/luci-static/resources/network-modes/api.js diff --git a/luci-app-network-modes/htdocs/luci-static/resources/network-modes/common.css b/package/secubox/luci-app-network-modes/htdocs/luci-static/resources/network-modes/common.css similarity index 100% rename from luci-app-network-modes/htdocs/luci-static/resources/network-modes/common.css rename to package/secubox/luci-app-network-modes/htdocs/luci-static/resources/network-modes/common.css diff --git a/luci-app-network-modes/htdocs/luci-static/resources/network-modes/dashboard.css b/package/secubox/luci-app-network-modes/htdocs/luci-static/resources/network-modes/dashboard.css similarity index 100% rename from luci-app-network-modes/htdocs/luci-static/resources/network-modes/dashboard.css rename to package/secubox/luci-app-network-modes/htdocs/luci-static/resources/network-modes/dashboard.css diff --git a/luci-app-network-modes/htdocs/luci-static/resources/network-modes/helpers.js b/package/secubox/luci-app-network-modes/htdocs/luci-static/resources/network-modes/helpers.js similarity index 100% rename from luci-app-network-modes/htdocs/luci-static/resources/network-modes/helpers.js rename to package/secubox/luci-app-network-modes/htdocs/luci-static/resources/network-modes/helpers.js diff --git a/luci-app-network-modes/htdocs/luci-static/resources/view/network-modes/accesspoint.js b/package/secubox/luci-app-network-modes/htdocs/luci-static/resources/view/network-modes/accesspoint.js similarity index 100% rename from luci-app-network-modes/htdocs/luci-static/resources/view/network-modes/accesspoint.js rename to package/secubox/luci-app-network-modes/htdocs/luci-static/resources/view/network-modes/accesspoint.js diff --git a/luci-app-network-modes/htdocs/luci-static/resources/view/network-modes/dmz.js b/package/secubox/luci-app-network-modes/htdocs/luci-static/resources/view/network-modes/dmz.js similarity index 100% rename from luci-app-network-modes/htdocs/luci-static/resources/view/network-modes/dmz.js rename to package/secubox/luci-app-network-modes/htdocs/luci-static/resources/view/network-modes/dmz.js diff --git a/luci-app-network-modes/htdocs/luci-static/resources/view/network-modes/doublenat.js b/package/secubox/luci-app-network-modes/htdocs/luci-static/resources/view/network-modes/doublenat.js similarity index 100% rename from luci-app-network-modes/htdocs/luci-static/resources/view/network-modes/doublenat.js rename to package/secubox/luci-app-network-modes/htdocs/luci-static/resources/view/network-modes/doublenat.js diff --git a/luci-app-network-modes/htdocs/luci-static/resources/view/network-modes/multiwan.js b/package/secubox/luci-app-network-modes/htdocs/luci-static/resources/view/network-modes/multiwan.js similarity index 100% rename from luci-app-network-modes/htdocs/luci-static/resources/view/network-modes/multiwan.js rename to package/secubox/luci-app-network-modes/htdocs/luci-static/resources/view/network-modes/multiwan.js diff --git a/luci-app-network-modes/htdocs/luci-static/resources/view/network-modes/overview.js b/package/secubox/luci-app-network-modes/htdocs/luci-static/resources/view/network-modes/overview.js similarity index 100% rename from luci-app-network-modes/htdocs/luci-static/resources/view/network-modes/overview.js rename to package/secubox/luci-app-network-modes/htdocs/luci-static/resources/view/network-modes/overview.js diff --git a/luci-app-network-modes/htdocs/luci-static/resources/view/network-modes/relay.js b/package/secubox/luci-app-network-modes/htdocs/luci-static/resources/view/network-modes/relay.js similarity index 100% rename from luci-app-network-modes/htdocs/luci-static/resources/view/network-modes/relay.js rename to package/secubox/luci-app-network-modes/htdocs/luci-static/resources/view/network-modes/relay.js diff --git a/luci-app-network-modes/htdocs/luci-static/resources/view/network-modes/router.js b/package/secubox/luci-app-network-modes/htdocs/luci-static/resources/view/network-modes/router.js similarity index 100% rename from luci-app-network-modes/htdocs/luci-static/resources/view/network-modes/router.js rename to package/secubox/luci-app-network-modes/htdocs/luci-static/resources/view/network-modes/router.js diff --git a/luci-app-network-modes/htdocs/luci-static/resources/view/network-modes/settings.js b/package/secubox/luci-app-network-modes/htdocs/luci-static/resources/view/network-modes/settings.js similarity index 100% rename from luci-app-network-modes/htdocs/luci-static/resources/view/network-modes/settings.js rename to package/secubox/luci-app-network-modes/htdocs/luci-static/resources/view/network-modes/settings.js diff --git a/luci-app-network-modes/htdocs/luci-static/resources/view/network-modes/sniffer.js b/package/secubox/luci-app-network-modes/htdocs/luci-static/resources/view/network-modes/sniffer.js similarity index 100% rename from luci-app-network-modes/htdocs/luci-static/resources/view/network-modes/sniffer.js rename to package/secubox/luci-app-network-modes/htdocs/luci-static/resources/view/network-modes/sniffer.js diff --git a/luci-app-network-modes/htdocs/luci-static/resources/view/network-modes/travel.js b/package/secubox/luci-app-network-modes/htdocs/luci-static/resources/view/network-modes/travel.js similarity index 100% rename from luci-app-network-modes/htdocs/luci-static/resources/view/network-modes/travel.js rename to package/secubox/luci-app-network-modes/htdocs/luci-static/resources/view/network-modes/travel.js diff --git a/luci-app-network-modes/htdocs/luci-static/resources/view/network-modes/vpnrelay.js b/package/secubox/luci-app-network-modes/htdocs/luci-static/resources/view/network-modes/vpnrelay.js similarity index 100% rename from luci-app-network-modes/htdocs/luci-static/resources/view/network-modes/vpnrelay.js rename to package/secubox/luci-app-network-modes/htdocs/luci-static/resources/view/network-modes/vpnrelay.js diff --git a/luci-app-network-modes/htdocs/luci-static/resources/view/network-modes/wizard.js b/package/secubox/luci-app-network-modes/htdocs/luci-static/resources/view/network-modes/wizard.js similarity index 100% rename from luci-app-network-modes/htdocs/luci-static/resources/view/network-modes/wizard.js rename to package/secubox/luci-app-network-modes/htdocs/luci-static/resources/view/network-modes/wizard.js diff --git a/luci-app-network-modes/root/etc/config/network-modes b/package/secubox/luci-app-network-modes/root/etc/config/network-modes similarity index 100% rename from luci-app-network-modes/root/etc/config/network-modes rename to package/secubox/luci-app-network-modes/root/etc/config/network-modes diff --git a/luci-app-network-modes/root/usr/libexec/rpcd/luci.network-modes b/package/secubox/luci-app-network-modes/root/usr/libexec/rpcd/luci.network-modes similarity index 100% rename from luci-app-network-modes/root/usr/libexec/rpcd/luci.network-modes rename to package/secubox/luci-app-network-modes/root/usr/libexec/rpcd/luci.network-modes diff --git a/luci-app-network-modes/root/usr/share/luci/menu.d/luci-app-network-modes.json b/package/secubox/luci-app-network-modes/root/usr/share/luci/menu.d/luci-app-network-modes.json similarity index 100% rename from luci-app-network-modes/root/usr/share/luci/menu.d/luci-app-network-modes.json rename to package/secubox/luci-app-network-modes/root/usr/share/luci/menu.d/luci-app-network-modes.json diff --git a/luci-app-network-modes/root/usr/share/rpcd/acl.d/luci-app-network-modes.json b/package/secubox/luci-app-network-modes/root/usr/share/rpcd/acl.d/luci-app-network-modes.json similarity index 100% rename from luci-app-network-modes/root/usr/share/rpcd/acl.d/luci-app-network-modes.json rename to package/secubox/luci-app-network-modes/root/usr/share/rpcd/acl.d/luci-app-network-modes.json diff --git a/luci-app-secubox-bonus/Makefile b/package/secubox/luci-app-secubox-bonus/Makefile similarity index 100% rename from luci-app-secubox-bonus/Makefile rename to package/secubox/luci-app-secubox-bonus/Makefile diff --git a/luci-app-secubox-bonus/README.md b/package/secubox/luci-app-secubox-bonus/README.md similarity index 100% rename from luci-app-secubox-bonus/README.md rename to package/secubox/luci-app-secubox-bonus/README.md diff --git a/luci-app-secubox-bonus/htdocs/luci-static/secubox/CNAME b/package/secubox/luci-app-secubox-bonus/htdocs/luci-static/secubox/CNAME similarity index 100% rename from luci-app-secubox-bonus/htdocs/luci-static/secubox/CNAME rename to package/secubox/luci-app-secubox-bonus/htdocs/luci-static/secubox/CNAME diff --git a/luci-app-secubox-bonus/htdocs/luci-static/secubox/blog/auth-guardian-setup.html b/package/secubox/luci-app-secubox-bonus/htdocs/luci-static/secubox/blog/auth-guardian-setup.html similarity index 100% rename from luci-app-secubox-bonus/htdocs/luci-static/secubox/blog/auth-guardian-setup.html rename to package/secubox/luci-app-secubox-bonus/htdocs/luci-static/secubox/blog/auth-guardian-setup.html diff --git a/luci-app-secubox-bonus/htdocs/luci-static/secubox/blog/bandwidth-manager-guide.html b/package/secubox/luci-app-secubox-bonus/htdocs/luci-static/secubox/blog/bandwidth-manager-guide.html similarity index 100% rename from luci-app-secubox-bonus/htdocs/luci-static/secubox/blog/bandwidth-manager-guide.html rename to package/secubox/luci-app-secubox-bonus/htdocs/luci-static/secubox/blog/bandwidth-manager-guide.html diff --git a/luci-app-secubox-bonus/htdocs/luci-static/secubox/blog/local-saas-vhost.html b/package/secubox/luci-app-secubox-bonus/htdocs/luci-static/secubox/blog/local-saas-vhost.html similarity index 100% rename from luci-app-secubox-bonus/htdocs/luci-static/secubox/blog/local-saas-vhost.html rename to package/secubox/luci-app-secubox-bonus/htdocs/luci-static/secubox/blog/local-saas-vhost.html diff --git a/luci-app-secubox-bonus/htdocs/luci-static/secubox/campaign.html b/package/secubox/luci-app-secubox-bonus/htdocs/luci-static/secubox/campaign.html similarity index 100% rename from luci-app-secubox-bonus/htdocs/luci-static/secubox/campaign.html rename to package/secubox/luci-app-secubox-bonus/htdocs/luci-static/secubox/campaign.html diff --git a/luci-app-secubox-bonus/htdocs/luci-static/secubox/demo-auth.html b/package/secubox/luci-app-secubox-bonus/htdocs/luci-static/secubox/demo-auth.html similarity index 100% rename from luci-app-secubox-bonus/htdocs/luci-static/secubox/demo-auth.html rename to package/secubox/luci-app-secubox-bonus/htdocs/luci-static/secubox/demo-auth.html diff --git a/luci-app-secubox-bonus/htdocs/luci-static/secubox/demo-bandwidth.html b/package/secubox/luci-app-secubox-bonus/htdocs/luci-static/secubox/demo-bandwidth.html similarity index 100% rename from luci-app-secubox-bonus/htdocs/luci-static/secubox/demo-bandwidth.html rename to package/secubox/luci-app-secubox-bonus/htdocs/luci-static/secubox/demo-bandwidth.html diff --git a/luci-app-secubox-bonus/htdocs/luci-static/secubox/demo-cdn-cache.html b/package/secubox/luci-app-secubox-bonus/htdocs/luci-static/secubox/demo-cdn-cache.html similarity index 100% rename from luci-app-secubox-bonus/htdocs/luci-static/secubox/demo-cdn-cache.html rename to package/secubox/luci-app-secubox-bonus/htdocs/luci-static/secubox/demo-cdn-cache.html diff --git a/luci-app-secubox-bonus/htdocs/luci-static/secubox/demo-client-guardian.html b/package/secubox/luci-app-secubox-bonus/htdocs/luci-static/secubox/demo-client-guardian.html similarity index 100% rename from luci-app-secubox-bonus/htdocs/luci-static/secubox/demo-client-guardian.html rename to package/secubox/luci-app-secubox-bonus/htdocs/luci-static/secubox/demo-client-guardian.html diff --git a/luci-app-secubox-bonus/htdocs/luci-static/secubox/demo-crowdsec.html b/package/secubox/luci-app-secubox-bonus/htdocs/luci-static/secubox/demo-crowdsec.html similarity index 100% rename from luci-app-secubox-bonus/htdocs/luci-static/secubox/demo-crowdsec.html rename to package/secubox/luci-app-secubox-bonus/htdocs/luci-static/secubox/demo-crowdsec.html diff --git a/luci-app-secubox-bonus/htdocs/luci-static/secubox/demo-dev-status.html b/package/secubox/luci-app-secubox-bonus/htdocs/luci-static/secubox/demo-dev-status.html similarity index 100% rename from luci-app-secubox-bonus/htdocs/luci-static/secubox/demo-dev-status.html rename to package/secubox/luci-app-secubox-bonus/htdocs/luci-static/secubox/demo-dev-status.html diff --git a/luci-app-secubox-bonus/htdocs/luci-static/secubox/demo-ksm-manager.html b/package/secubox/luci-app-secubox-bonus/htdocs/luci-static/secubox/demo-ksm-manager.html similarity index 100% rename from luci-app-secubox-bonus/htdocs/luci-static/secubox/demo-ksm-manager.html rename to package/secubox/luci-app-secubox-bonus/htdocs/luci-static/secubox/demo-ksm-manager.html diff --git a/luci-app-secubox-bonus/htdocs/luci-static/secubox/demo-media.html b/package/secubox/luci-app-secubox-bonus/htdocs/luci-static/secubox/demo-media.html similarity index 100% rename from luci-app-secubox-bonus/htdocs/luci-static/secubox/demo-media.html rename to package/secubox/luci-app-secubox-bonus/htdocs/luci-static/secubox/demo-media.html diff --git a/luci-app-secubox-bonus/htdocs/luci-static/secubox/demo-netdata.html b/package/secubox/luci-app-secubox-bonus/htdocs/luci-static/secubox/demo-netdata.html similarity index 100% rename from luci-app-secubox-bonus/htdocs/luci-static/secubox/demo-netdata.html rename to package/secubox/luci-app-secubox-bonus/htdocs/luci-static/secubox/demo-netdata.html diff --git a/luci-app-secubox-bonus/htdocs/luci-static/secubox/demo-netifyd.html b/package/secubox/luci-app-secubox-bonus/htdocs/luci-static/secubox/demo-netifyd.html similarity index 100% rename from luci-app-secubox-bonus/htdocs/luci-static/secubox/demo-netifyd.html rename to package/secubox/luci-app-secubox-bonus/htdocs/luci-static/secubox/demo-netifyd.html diff --git a/luci-app-secubox-bonus/htdocs/luci-static/secubox/demo-network-modes.html b/package/secubox/luci-app-secubox-bonus/htdocs/luci-static/secubox/demo-network-modes.html similarity index 100% rename from luci-app-secubox-bonus/htdocs/luci-static/secubox/demo-network-modes.html rename to package/secubox/luci-app-secubox-bonus/htdocs/luci-static/secubox/demo-network-modes.html diff --git a/luci-app-secubox-bonus/htdocs/luci-static/secubox/demo-secubox-hub.html b/package/secubox/luci-app-secubox-bonus/htdocs/luci-static/secubox/demo-secubox-hub.html similarity index 100% rename from luci-app-secubox-bonus/htdocs/luci-static/secubox/demo-secubox-hub.html rename to package/secubox/luci-app-secubox-bonus/htdocs/luci-static/secubox/demo-secubox-hub.html diff --git a/luci-app-secubox-bonus/htdocs/luci-static/secubox/demo-traffic-shaper.html b/package/secubox/luci-app-secubox-bonus/htdocs/luci-static/secubox/demo-traffic-shaper.html similarity index 100% rename from luci-app-secubox-bonus/htdocs/luci-static/secubox/demo-traffic-shaper.html rename to package/secubox/luci-app-secubox-bonus/htdocs/luci-static/secubox/demo-traffic-shaper.html diff --git a/luci-app-secubox-bonus/htdocs/luci-static/secubox/demo-vhost.html b/package/secubox/luci-app-secubox-bonus/htdocs/luci-static/secubox/demo-vhost.html similarity index 100% rename from luci-app-secubox-bonus/htdocs/luci-static/secubox/demo-vhost.html rename to package/secubox/luci-app-secubox-bonus/htdocs/luci-static/secubox/demo-vhost.html diff --git a/luci-app-secubox-bonus/htdocs/luci-static/secubox/demo-wireguard.html b/package/secubox/luci-app-secubox-bonus/htdocs/luci-static/secubox/demo-wireguard.html similarity index 100% rename from luci-app-secubox-bonus/htdocs/luci-static/secubox/demo-wireguard.html rename to package/secubox/luci-app-secubox-bonus/htdocs/luci-static/secubox/demo-wireguard.html diff --git a/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 similarity index 100% rename from luci-app-secubox-bonus/htdocs/luci-static/secubox/dev-status-widget.js rename to package/secubox/luci-app-secubox-bonus/htdocs/luci-static/secubox/dev-status-widget.js diff --git a/luci-app-secubox-bonus/htdocs/luci-static/secubox/i18n.js b/package/secubox/luci-app-secubox-bonus/htdocs/luci-static/secubox/i18n.js similarity index 100% rename from luci-app-secubox-bonus/htdocs/luci-static/secubox/i18n.js rename to package/secubox/luci-app-secubox-bonus/htdocs/luci-static/secubox/i18n.js diff --git a/luci-app-secubox-bonus/htdocs/luci-static/secubox/i18n/ar.json b/package/secubox/luci-app-secubox-bonus/htdocs/luci-static/secubox/i18n/ar.json similarity index 100% rename from luci-app-secubox-bonus/htdocs/luci-static/secubox/i18n/ar.json rename to package/secubox/luci-app-secubox-bonus/htdocs/luci-static/secubox/i18n/ar.json diff --git a/luci-app-secubox-bonus/htdocs/luci-static/secubox/i18n/campaign.json b/package/secubox/luci-app-secubox-bonus/htdocs/luci-static/secubox/i18n/campaign.json similarity index 100% rename from luci-app-secubox-bonus/htdocs/luci-static/secubox/i18n/campaign.json rename to package/secubox/luci-app-secubox-bonus/htdocs/luci-static/secubox/i18n/campaign.json diff --git a/luci-app-secubox-bonus/htdocs/luci-static/secubox/i18n/de.json b/package/secubox/luci-app-secubox-bonus/htdocs/luci-static/secubox/i18n/de.json similarity index 100% rename from luci-app-secubox-bonus/htdocs/luci-static/secubox/i18n/de.json rename to package/secubox/luci-app-secubox-bonus/htdocs/luci-static/secubox/i18n/de.json diff --git a/luci-app-secubox-bonus/htdocs/luci-static/secubox/i18n/demo-auth.json b/package/secubox/luci-app-secubox-bonus/htdocs/luci-static/secubox/i18n/demo-auth.json similarity index 100% rename from luci-app-secubox-bonus/htdocs/luci-static/secubox/i18n/demo-auth.json rename to package/secubox/luci-app-secubox-bonus/htdocs/luci-static/secubox/i18n/demo-auth.json diff --git a/luci-app-secubox-bonus/htdocs/luci-static/secubox/i18n/en.json b/package/secubox/luci-app-secubox-bonus/htdocs/luci-static/secubox/i18n/en.json similarity index 100% rename from luci-app-secubox-bonus/htdocs/luci-static/secubox/i18n/en.json rename to package/secubox/luci-app-secubox-bonus/htdocs/luci-static/secubox/i18n/en.json diff --git a/luci-app-secubox-bonus/htdocs/luci-static/secubox/i18n/es.json b/package/secubox/luci-app-secubox-bonus/htdocs/luci-static/secubox/i18n/es.json similarity index 100% rename from luci-app-secubox-bonus/htdocs/luci-static/secubox/i18n/es.json rename to package/secubox/luci-app-secubox-bonus/htdocs/luci-static/secubox/i18n/es.json diff --git a/luci-app-secubox-bonus/htdocs/luci-static/secubox/i18n/fr.json b/package/secubox/luci-app-secubox-bonus/htdocs/luci-static/secubox/i18n/fr.json similarity index 100% rename from luci-app-secubox-bonus/htdocs/luci-static/secubox/i18n/fr.json rename to package/secubox/luci-app-secubox-bonus/htdocs/luci-static/secubox/i18n/fr.json diff --git a/luci-app-secubox-bonus/htdocs/luci-static/secubox/i18n/it.json b/package/secubox/luci-app-secubox-bonus/htdocs/luci-static/secubox/i18n/it.json similarity index 100% rename from luci-app-secubox-bonus/htdocs/luci-static/secubox/i18n/it.json rename to package/secubox/luci-app-secubox-bonus/htdocs/luci-static/secubox/i18n/it.json diff --git a/luci-app-secubox-bonus/htdocs/luci-static/secubox/i18n/ja.json b/package/secubox/luci-app-secubox-bonus/htdocs/luci-static/secubox/i18n/ja.json similarity index 100% rename from luci-app-secubox-bonus/htdocs/luci-static/secubox/i18n/ja.json rename to package/secubox/luci-app-secubox-bonus/htdocs/luci-static/secubox/i18n/ja.json diff --git a/luci-app-secubox-bonus/htdocs/luci-static/secubox/i18n/nl.json b/package/secubox/luci-app-secubox-bonus/htdocs/luci-static/secubox/i18n/nl.json similarity index 100% rename from luci-app-secubox-bonus/htdocs/luci-static/secubox/i18n/nl.json rename to package/secubox/luci-app-secubox-bonus/htdocs/luci-static/secubox/i18n/nl.json diff --git a/luci-app-secubox-bonus/htdocs/luci-static/secubox/i18n/pt.json b/package/secubox/luci-app-secubox-bonus/htdocs/luci-static/secubox/i18n/pt.json similarity index 100% rename from luci-app-secubox-bonus/htdocs/luci-static/secubox/i18n/pt.json rename to package/secubox/luci-app-secubox-bonus/htdocs/luci-static/secubox/i18n/pt.json diff --git a/luci-app-secubox-bonus/htdocs/luci-static/secubox/i18n/ru.json b/package/secubox/luci-app-secubox-bonus/htdocs/luci-static/secubox/i18n/ru.json similarity index 100% rename from luci-app-secubox-bonus/htdocs/luci-static/secubox/i18n/ru.json rename to package/secubox/luci-app-secubox-bonus/htdocs/luci-static/secubox/i18n/ru.json diff --git a/luci-app-secubox-bonus/htdocs/luci-static/secubox/i18n/zh.json b/package/secubox/luci-app-secubox-bonus/htdocs/luci-static/secubox/i18n/zh.json similarity index 100% rename from luci-app-secubox-bonus/htdocs/luci-static/secubox/i18n/zh.json rename to package/secubox/luci-app-secubox-bonus/htdocs/luci-static/secubox/i18n/zh.json diff --git a/luci-app-secubox-bonus/htdocs/luci-static/secubox/index.html b/package/secubox/luci-app-secubox-bonus/htdocs/luci-static/secubox/index.html similarity index 100% rename from luci-app-secubox-bonus/htdocs/luci-static/secubox/index.html rename to package/secubox/luci-app-secubox-bonus/htdocs/luci-static/secubox/index.html diff --git a/luci-app-system-hub/.github/workflows/build.yml b/package/secubox/luci-app-system-hub/.github/workflows/build.yml similarity index 100% rename from luci-app-system-hub/.github/workflows/build.yml rename to package/secubox/luci-app-system-hub/.github/workflows/build.yml diff --git a/luci-app-system-hub/CODEX-v0.3.5.md b/package/secubox/luci-app-system-hub/CODEX-v0.3.5.md similarity index 100% rename from luci-app-system-hub/CODEX-v0.3.5.md rename to package/secubox/luci-app-system-hub/CODEX-v0.3.5.md diff --git a/luci-app-system-hub/Makefile b/package/secubox/luci-app-system-hub/Makefile similarity index 100% rename from luci-app-system-hub/Makefile rename to package/secubox/luci-app-system-hub/Makefile diff --git a/luci-app-system-hub/README.md b/package/secubox/luci-app-system-hub/README.md similarity index 100% rename from luci-app-system-hub/README.md rename to package/secubox/luci-app-system-hub/README.md diff --git a/luci-app-system-hub/htdocs/luci-static/resources/system-hub/api.js b/package/secubox/luci-app-system-hub/htdocs/luci-static/resources/system-hub/api.js similarity index 100% rename from luci-app-system-hub/htdocs/luci-static/resources/system-hub/api.js rename to package/secubox/luci-app-system-hub/htdocs/luci-static/resources/system-hub/api.js diff --git a/luci-app-system-hub/htdocs/luci-static/resources/system-hub/backup.css b/package/secubox/luci-app-system-hub/htdocs/luci-static/resources/system-hub/backup.css similarity index 100% rename from luci-app-system-hub/htdocs/luci-static/resources/system-hub/backup.css rename to package/secubox/luci-app-system-hub/htdocs/luci-static/resources/system-hub/backup.css diff --git a/luci-app-system-hub/htdocs/luci-static/resources/system-hub/common.css b/package/secubox/luci-app-system-hub/htdocs/luci-static/resources/system-hub/common.css similarity index 100% rename from luci-app-system-hub/htdocs/luci-static/resources/system-hub/common.css rename to package/secubox/luci-app-system-hub/htdocs/luci-static/resources/system-hub/common.css diff --git a/luci-app-system-hub/htdocs/luci-static/resources/system-hub/components.css b/package/secubox/luci-app-system-hub/htdocs/luci-static/resources/system-hub/components.css similarity index 100% rename from luci-app-system-hub/htdocs/luci-static/resources/system-hub/components.css rename to package/secubox/luci-app-system-hub/htdocs/luci-static/resources/system-hub/components.css diff --git a/luci-app-system-hub/htdocs/luci-static/resources/system-hub/dashboard.css b/package/secubox/luci-app-system-hub/htdocs/luci-static/resources/system-hub/dashboard.css similarity index 100% rename from luci-app-system-hub/htdocs/luci-static/resources/system-hub/dashboard.css rename to package/secubox/luci-app-system-hub/htdocs/luci-static/resources/system-hub/dashboard.css diff --git a/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 similarity index 100% rename from luci-app-system-hub/htdocs/luci-static/resources/system-hub/dev-status-widget.js rename to package/secubox/luci-app-system-hub/htdocs/luci-static/resources/system-hub/dev-status-widget.js diff --git a/luci-app-system-hub/htdocs/luci-static/resources/system-hub/health.css b/package/secubox/luci-app-system-hub/htdocs/luci-static/resources/system-hub/health.css similarity index 100% rename from luci-app-system-hub/htdocs/luci-static/resources/system-hub/health.css rename to package/secubox/luci-app-system-hub/htdocs/luci-static/resources/system-hub/health.css diff --git a/luci-app-system-hub/htdocs/luci-static/resources/system-hub/logs.css b/package/secubox/luci-app-system-hub/htdocs/luci-static/resources/system-hub/logs.css similarity index 100% rename from luci-app-system-hub/htdocs/luci-static/resources/system-hub/logs.css rename to package/secubox/luci-app-system-hub/htdocs/luci-static/resources/system-hub/logs.css diff --git a/luci-app-system-hub/htdocs/luci-static/resources/system-hub/nav.js b/package/secubox/luci-app-system-hub/htdocs/luci-static/resources/system-hub/nav.js similarity index 100% rename from luci-app-system-hub/htdocs/luci-static/resources/system-hub/nav.js rename to package/secubox/luci-app-system-hub/htdocs/luci-static/resources/system-hub/nav.js diff --git a/luci-app-system-hub/htdocs/luci-static/resources/system-hub/overview.css b/package/secubox/luci-app-system-hub/htdocs/luci-static/resources/system-hub/overview.css similarity index 100% rename from luci-app-system-hub/htdocs/luci-static/resources/system-hub/overview.css rename to package/secubox/luci-app-system-hub/htdocs/luci-static/resources/system-hub/overview.css diff --git a/luci-app-system-hub/htdocs/luci-static/resources/system-hub/services.css b/package/secubox/luci-app-system-hub/htdocs/luci-static/resources/system-hub/services.css similarity index 100% rename from luci-app-system-hub/htdocs/luci-static/resources/system-hub/services.css rename to package/secubox/luci-app-system-hub/htdocs/luci-static/resources/system-hub/services.css diff --git a/luci-app-system-hub/htdocs/luci-static/resources/system-hub/theme-assets.js b/package/secubox/luci-app-system-hub/htdocs/luci-static/resources/system-hub/theme-assets.js similarity index 100% rename from luci-app-system-hub/htdocs/luci-static/resources/system-hub/theme-assets.js rename to package/secubox/luci-app-system-hub/htdocs/luci-static/resources/system-hub/theme-assets.js diff --git a/luci-app-system-hub/htdocs/luci-static/resources/system-hub/theme.js b/package/secubox/luci-app-system-hub/htdocs/luci-static/resources/system-hub/theme.js similarity index 100% rename from luci-app-system-hub/htdocs/luci-static/resources/system-hub/theme.js rename to package/secubox/luci-app-system-hub/htdocs/luci-static/resources/system-hub/theme.js diff --git a/luci-app-system-hub/htdocs/luci-static/resources/view/system-hub/backup.js b/package/secubox/luci-app-system-hub/htdocs/luci-static/resources/view/system-hub/backup.js similarity index 100% rename from luci-app-system-hub/htdocs/luci-static/resources/view/system-hub/backup.js rename to package/secubox/luci-app-system-hub/htdocs/luci-static/resources/view/system-hub/backup.js diff --git a/luci-app-system-hub/htdocs/luci-static/resources/view/system-hub/cdn-cache-link.js b/package/secubox/luci-app-system-hub/htdocs/luci-static/resources/view/system-hub/cdn-cache-link.js similarity index 100% rename from luci-app-system-hub/htdocs/luci-static/resources/view/system-hub/cdn-cache-link.js rename to package/secubox/luci-app-system-hub/htdocs/luci-static/resources/view/system-hub/cdn-cache-link.js diff --git a/luci-app-system-hub/htdocs/luci-static/resources/view/system-hub/components.js b/package/secubox/luci-app-system-hub/htdocs/luci-static/resources/view/system-hub/components.js similarity index 100% rename from luci-app-system-hub/htdocs/luci-static/resources/view/system-hub/components.js rename to package/secubox/luci-app-system-hub/htdocs/luci-static/resources/view/system-hub/components.js diff --git a/luci-app-system-hub/htdocs/luci-static/resources/view/system-hub/dev-status.js b/package/secubox/luci-app-system-hub/htdocs/luci-static/resources/view/system-hub/dev-status.js similarity index 100% rename from luci-app-system-hub/htdocs/luci-static/resources/view/system-hub/dev-status.js rename to package/secubox/luci-app-system-hub/htdocs/luci-static/resources/view/system-hub/dev-status.js diff --git a/luci-app-system-hub/htdocs/luci-static/resources/view/system-hub/diagnostics.js b/package/secubox/luci-app-system-hub/htdocs/luci-static/resources/view/system-hub/diagnostics.js similarity index 100% rename from luci-app-system-hub/htdocs/luci-static/resources/view/system-hub/diagnostics.js rename to package/secubox/luci-app-system-hub/htdocs/luci-static/resources/view/system-hub/diagnostics.js diff --git a/luci-app-system-hub/htdocs/luci-static/resources/view/system-hub/health.js b/package/secubox/luci-app-system-hub/htdocs/luci-static/resources/view/system-hub/health.js similarity index 100% rename from luci-app-system-hub/htdocs/luci-static/resources/view/system-hub/health.js rename to package/secubox/luci-app-system-hub/htdocs/luci-static/resources/view/system-hub/health.js diff --git a/luci-app-system-hub/htdocs/luci-static/resources/view/system-hub/logs.js b/package/secubox/luci-app-system-hub/htdocs/luci-static/resources/view/system-hub/logs.js similarity index 100% rename from luci-app-system-hub/htdocs/luci-static/resources/view/system-hub/logs.js rename to package/secubox/luci-app-system-hub/htdocs/luci-static/resources/view/system-hub/logs.js diff --git a/luci-app-system-hub/htdocs/luci-static/resources/view/system-hub/network-modes-link.js b/package/secubox/luci-app-system-hub/htdocs/luci-static/resources/view/system-hub/network-modes-link.js similarity index 100% rename from luci-app-system-hub/htdocs/luci-static/resources/view/system-hub/network-modes-link.js rename to package/secubox/luci-app-system-hub/htdocs/luci-static/resources/view/system-hub/network-modes-link.js diff --git a/luci-app-system-hub/htdocs/luci-static/resources/view/system-hub/overview.js b/package/secubox/luci-app-system-hub/htdocs/luci-static/resources/view/system-hub/overview.js similarity index 100% rename from luci-app-system-hub/htdocs/luci-static/resources/view/system-hub/overview.js rename to package/secubox/luci-app-system-hub/htdocs/luci-static/resources/view/system-hub/overview.js diff --git a/luci-app-system-hub/htdocs/luci-static/resources/view/system-hub/remote.js b/package/secubox/luci-app-system-hub/htdocs/luci-static/resources/view/system-hub/remote.js similarity index 100% rename from luci-app-system-hub/htdocs/luci-static/resources/view/system-hub/remote.js rename to package/secubox/luci-app-system-hub/htdocs/luci-static/resources/view/system-hub/remote.js diff --git a/luci-app-system-hub/htdocs/luci-static/resources/view/system-hub/services.js b/package/secubox/luci-app-system-hub/htdocs/luci-static/resources/view/system-hub/services.js similarity index 100% rename from luci-app-system-hub/htdocs/luci-static/resources/view/system-hub/services.js rename to package/secubox/luci-app-system-hub/htdocs/luci-static/resources/view/system-hub/services.js diff --git a/luci-app-system-hub/htdocs/luci-static/resources/view/system-hub/settings.js b/package/secubox/luci-app-system-hub/htdocs/luci-static/resources/view/system-hub/settings.js similarity index 100% rename from luci-app-system-hub/htdocs/luci-static/resources/view/system-hub/settings.js rename to package/secubox/luci-app-system-hub/htdocs/luci-static/resources/view/system-hub/settings.js diff --git a/luci-app-system-hub/root/etc/config/system-hub b/package/secubox/luci-app-system-hub/root/etc/config/system-hub similarity index 100% rename from luci-app-system-hub/root/etc/config/system-hub rename to package/secubox/luci-app-system-hub/root/etc/config/system-hub diff --git a/luci-app-system-hub/root/usr/libexec/rpcd/luci.system-hub b/package/secubox/luci-app-system-hub/root/usr/libexec/rpcd/luci.system-hub similarity index 100% rename from luci-app-system-hub/root/usr/libexec/rpcd/luci.system-hub rename to package/secubox/luci-app-system-hub/root/usr/libexec/rpcd/luci.system-hub diff --git a/luci-app-system-hub/root/usr/share/luci/menu.d/luci-app-system-hub.json b/package/secubox/luci-app-system-hub/root/usr/share/luci/menu.d/luci-app-system-hub.json similarity index 100% rename from luci-app-system-hub/root/usr/share/luci/menu.d/luci-app-system-hub.json rename to package/secubox/luci-app-system-hub/root/usr/share/luci/menu.d/luci-app-system-hub.json diff --git a/luci-app-system-hub/root/usr/share/rpcd/acl.d/luci-app-system-hub.json b/package/secubox/luci-app-system-hub/root/usr/share/rpcd/acl.d/luci-app-system-hub.json similarity index 100% rename from luci-app-system-hub/root/usr/share/rpcd/acl.d/luci-app-system-hub.json rename to package/secubox/luci-app-system-hub/root/usr/share/rpcd/acl.d/luci-app-system-hub.json diff --git a/luci-app-system-hub/tests/MANUAL_TESTS.md b/package/secubox/luci-app-system-hub/tests/MANUAL_TESTS.md similarity index 100% rename from luci-app-system-hub/tests/MANUAL_TESTS.md rename to package/secubox/luci-app-system-hub/tests/MANUAL_TESTS.md diff --git a/luci-app-system-hub/tests/README.md b/package/secubox/luci-app-system-hub/tests/README.md similarity index 100% rename from luci-app-system-hub/tests/README.md rename to package/secubox/luci-app-system-hub/tests/README.md diff --git a/luci-app-system-hub/tests/frontend/test-diagnostics-ui.js b/package/secubox/luci-app-system-hub/tests/frontend/test-diagnostics-ui.js similarity index 100% rename from luci-app-system-hub/tests/frontend/test-diagnostics-ui.js rename to package/secubox/luci-app-system-hub/tests/frontend/test-diagnostics-ui.js diff --git a/luci-app-system-hub/tests/integration/test-diagnostic-workflow.sh b/package/secubox/luci-app-system-hub/tests/integration/test-diagnostic-workflow.sh similarity index 100% rename from luci-app-system-hub/tests/integration/test-diagnostic-workflow.sh rename to package/secubox/luci-app-system-hub/tests/integration/test-diagnostic-workflow.sh diff --git a/luci-app-system-hub/tests/test-profiles.sh b/package/secubox/luci-app-system-hub/tests/test-profiles.sh similarity index 100% rename from luci-app-system-hub/tests/test-profiles.sh rename to package/secubox/luci-app-system-hub/tests/test-profiles.sh diff --git a/luci-app-traffic-shaper/Makefile b/package/secubox/luci-app-traffic-shaper/Makefile similarity index 100% rename from luci-app-traffic-shaper/Makefile rename to package/secubox/luci-app-traffic-shaper/Makefile diff --git a/luci-app-traffic-shaper/README.md b/package/secubox/luci-app-traffic-shaper/README.md similarity index 100% rename from luci-app-traffic-shaper/README.md rename to package/secubox/luci-app-traffic-shaper/README.md diff --git a/luci-app-traffic-shaper/htdocs/luci-static/resources/traffic-shaper/api.js b/package/secubox/luci-app-traffic-shaper/htdocs/luci-static/resources/traffic-shaper/api.js similarity index 100% rename from luci-app-traffic-shaper/htdocs/luci-static/resources/traffic-shaper/api.js rename to package/secubox/luci-app-traffic-shaper/htdocs/luci-static/resources/traffic-shaper/api.js diff --git a/luci-app-traffic-shaper/htdocs/luci-static/resources/traffic-shaper/common.css b/package/secubox/luci-app-traffic-shaper/htdocs/luci-static/resources/traffic-shaper/common.css similarity index 100% rename from luci-app-traffic-shaper/htdocs/luci-static/resources/traffic-shaper/common.css rename to package/secubox/luci-app-traffic-shaper/htdocs/luci-static/resources/traffic-shaper/common.css diff --git a/luci-app-traffic-shaper/htdocs/luci-static/resources/traffic-shaper/dashboard.css b/package/secubox/luci-app-traffic-shaper/htdocs/luci-static/resources/traffic-shaper/dashboard.css similarity index 100% rename from luci-app-traffic-shaper/htdocs/luci-static/resources/traffic-shaper/dashboard.css rename to package/secubox/luci-app-traffic-shaper/htdocs/luci-static/resources/traffic-shaper/dashboard.css diff --git a/luci-app-traffic-shaper/htdocs/luci-static/resources/view/traffic-shaper/classes.js b/package/secubox/luci-app-traffic-shaper/htdocs/luci-static/resources/view/traffic-shaper/classes.js similarity index 100% rename from luci-app-traffic-shaper/htdocs/luci-static/resources/view/traffic-shaper/classes.js rename to package/secubox/luci-app-traffic-shaper/htdocs/luci-static/resources/view/traffic-shaper/classes.js diff --git a/luci-app-traffic-shaper/htdocs/luci-static/resources/view/traffic-shaper/overview.js b/package/secubox/luci-app-traffic-shaper/htdocs/luci-static/resources/view/traffic-shaper/overview.js similarity index 100% rename from luci-app-traffic-shaper/htdocs/luci-static/resources/view/traffic-shaper/overview.js rename to package/secubox/luci-app-traffic-shaper/htdocs/luci-static/resources/view/traffic-shaper/overview.js diff --git a/luci-app-traffic-shaper/htdocs/luci-static/resources/view/traffic-shaper/presets.js b/package/secubox/luci-app-traffic-shaper/htdocs/luci-static/resources/view/traffic-shaper/presets.js similarity index 100% rename from luci-app-traffic-shaper/htdocs/luci-static/resources/view/traffic-shaper/presets.js rename to package/secubox/luci-app-traffic-shaper/htdocs/luci-static/resources/view/traffic-shaper/presets.js diff --git a/luci-app-traffic-shaper/htdocs/luci-static/resources/view/traffic-shaper/rules.js b/package/secubox/luci-app-traffic-shaper/htdocs/luci-static/resources/view/traffic-shaper/rules.js similarity index 100% rename from luci-app-traffic-shaper/htdocs/luci-static/resources/view/traffic-shaper/rules.js rename to package/secubox/luci-app-traffic-shaper/htdocs/luci-static/resources/view/traffic-shaper/rules.js diff --git a/luci-app-traffic-shaper/htdocs/luci-static/resources/view/traffic-shaper/stats.js b/package/secubox/luci-app-traffic-shaper/htdocs/luci-static/resources/view/traffic-shaper/stats.js similarity index 100% rename from luci-app-traffic-shaper/htdocs/luci-static/resources/view/traffic-shaper/stats.js rename to package/secubox/luci-app-traffic-shaper/htdocs/luci-static/resources/view/traffic-shaper/stats.js diff --git a/luci-app-traffic-shaper/root/etc/config/traffic-shaper b/package/secubox/luci-app-traffic-shaper/root/etc/config/traffic-shaper similarity index 100% rename from luci-app-traffic-shaper/root/etc/config/traffic-shaper rename to package/secubox/luci-app-traffic-shaper/root/etc/config/traffic-shaper diff --git a/luci-app-traffic-shaper/root/usr/libexec/rpcd/luci.traffic-shaper b/package/secubox/luci-app-traffic-shaper/root/usr/libexec/rpcd/luci.traffic-shaper similarity index 100% rename from luci-app-traffic-shaper/root/usr/libexec/rpcd/luci.traffic-shaper rename to package/secubox/luci-app-traffic-shaper/root/usr/libexec/rpcd/luci.traffic-shaper diff --git a/luci-app-traffic-shaper/root/usr/share/luci/menu.d/luci-app-traffic-shaper.json b/package/secubox/luci-app-traffic-shaper/root/usr/share/luci/menu.d/luci-app-traffic-shaper.json similarity index 100% rename from luci-app-traffic-shaper/root/usr/share/luci/menu.d/luci-app-traffic-shaper.json rename to package/secubox/luci-app-traffic-shaper/root/usr/share/luci/menu.d/luci-app-traffic-shaper.json diff --git a/luci-app-traffic-shaper/root/usr/share/rpcd/acl.d/luci-app-traffic-shaper.json b/package/secubox/luci-app-traffic-shaper/root/usr/share/rpcd/acl.d/luci-app-traffic-shaper.json similarity index 100% rename from luci-app-traffic-shaper/root/usr/share/rpcd/acl.d/luci-app-traffic-shaper.json rename to package/secubox/luci-app-traffic-shaper/root/usr/share/rpcd/acl.d/luci-app-traffic-shaper.json diff --git a/luci-app-vhost-manager/.github/workflows/build.yml b/package/secubox/luci-app-vhost-manager/.github/workflows/build.yml similarity index 100% rename from luci-app-vhost-manager/.github/workflows/build.yml rename to package/secubox/luci-app-vhost-manager/.github/workflows/build.yml diff --git a/luci-app-vhost-manager/Makefile b/package/secubox/luci-app-vhost-manager/Makefile similarity index 100% rename from luci-app-vhost-manager/Makefile rename to package/secubox/luci-app-vhost-manager/Makefile diff --git a/luci-app-vhost-manager/README.md b/package/secubox/luci-app-vhost-manager/README.md similarity index 100% rename from luci-app-vhost-manager/README.md rename to package/secubox/luci-app-vhost-manager/README.md diff --git a/luci-app-vhost-manager/demo/index.html b/package/secubox/luci-app-vhost-manager/demo/index.html similarity index 100% rename from luci-app-vhost-manager/demo/index.html rename to package/secubox/luci-app-vhost-manager/demo/index.html diff --git a/luci-app-vhost-manager/htdocs/luci-static/resources/vhost-manager/api.js b/package/secubox/luci-app-vhost-manager/htdocs/luci-static/resources/vhost-manager/api.js similarity index 100% rename from luci-app-vhost-manager/htdocs/luci-static/resources/vhost-manager/api.js rename to package/secubox/luci-app-vhost-manager/htdocs/luci-static/resources/vhost-manager/api.js diff --git a/luci-app-vhost-manager/htdocs/luci-static/resources/vhost-manager/common.css b/package/secubox/luci-app-vhost-manager/htdocs/luci-static/resources/vhost-manager/common.css similarity index 100% rename from luci-app-vhost-manager/htdocs/luci-static/resources/vhost-manager/common.css rename to package/secubox/luci-app-vhost-manager/htdocs/luci-static/resources/vhost-manager/common.css diff --git a/luci-app-vhost-manager/htdocs/luci-static/resources/vhost-manager/dashboard.css b/package/secubox/luci-app-vhost-manager/htdocs/luci-static/resources/vhost-manager/dashboard.css similarity index 100% rename from luci-app-vhost-manager/htdocs/luci-static/resources/vhost-manager/dashboard.css rename to package/secubox/luci-app-vhost-manager/htdocs/luci-static/resources/vhost-manager/dashboard.css diff --git a/luci-app-vhost-manager/htdocs/luci-static/resources/vhost-manager/templates.json b/package/secubox/luci-app-vhost-manager/htdocs/luci-static/resources/vhost-manager/templates.json similarity index 100% rename from luci-app-vhost-manager/htdocs/luci-static/resources/vhost-manager/templates.json rename to package/secubox/luci-app-vhost-manager/htdocs/luci-static/resources/vhost-manager/templates.json diff --git a/luci-app-vhost-manager/htdocs/luci-static/resources/vhost-manager/ui.js b/package/secubox/luci-app-vhost-manager/htdocs/luci-static/resources/vhost-manager/ui.js similarity index 100% rename from luci-app-vhost-manager/htdocs/luci-static/resources/vhost-manager/ui.js rename to package/secubox/luci-app-vhost-manager/htdocs/luci-static/resources/vhost-manager/ui.js diff --git a/luci-app-vhost-manager/htdocs/luci-static/resources/view/vhost-manager/certificates.js b/package/secubox/luci-app-vhost-manager/htdocs/luci-static/resources/view/vhost-manager/certificates.js similarity index 100% rename from luci-app-vhost-manager/htdocs/luci-static/resources/view/vhost-manager/certificates.js rename to package/secubox/luci-app-vhost-manager/htdocs/luci-static/resources/view/vhost-manager/certificates.js diff --git a/luci-app-vhost-manager/htdocs/luci-static/resources/view/vhost-manager/internal.js b/package/secubox/luci-app-vhost-manager/htdocs/luci-static/resources/view/vhost-manager/internal.js similarity index 100% rename from luci-app-vhost-manager/htdocs/luci-static/resources/view/vhost-manager/internal.js rename to package/secubox/luci-app-vhost-manager/htdocs/luci-static/resources/view/vhost-manager/internal.js diff --git a/luci-app-vhost-manager/htdocs/luci-static/resources/view/vhost-manager/logs.js b/package/secubox/luci-app-vhost-manager/htdocs/luci-static/resources/view/vhost-manager/logs.js similarity index 100% rename from luci-app-vhost-manager/htdocs/luci-static/resources/view/vhost-manager/logs.js rename to package/secubox/luci-app-vhost-manager/htdocs/luci-static/resources/view/vhost-manager/logs.js diff --git a/luci-app-vhost-manager/htdocs/luci-static/resources/view/vhost-manager/overview.js b/package/secubox/luci-app-vhost-manager/htdocs/luci-static/resources/view/vhost-manager/overview.js similarity index 100% rename from luci-app-vhost-manager/htdocs/luci-static/resources/view/vhost-manager/overview.js rename to package/secubox/luci-app-vhost-manager/htdocs/luci-static/resources/view/vhost-manager/overview.js diff --git a/luci-app-vhost-manager/htdocs/luci-static/resources/view/vhost-manager/redirects.js b/package/secubox/luci-app-vhost-manager/htdocs/luci-static/resources/view/vhost-manager/redirects.js similarity index 100% rename from luci-app-vhost-manager/htdocs/luci-static/resources/view/vhost-manager/redirects.js rename to package/secubox/luci-app-vhost-manager/htdocs/luci-static/resources/view/vhost-manager/redirects.js diff --git a/luci-app-vhost-manager/htdocs/luci-static/resources/view/vhost-manager/ssl.js b/package/secubox/luci-app-vhost-manager/htdocs/luci-static/resources/view/vhost-manager/ssl.js similarity index 100% rename from luci-app-vhost-manager/htdocs/luci-static/resources/view/vhost-manager/ssl.js rename to package/secubox/luci-app-vhost-manager/htdocs/luci-static/resources/view/vhost-manager/ssl.js diff --git a/luci-app-vhost-manager/htdocs/luci-static/resources/view/vhost-manager/vhosts.js b/package/secubox/luci-app-vhost-manager/htdocs/luci-static/resources/view/vhost-manager/vhosts.js similarity index 100% rename from luci-app-vhost-manager/htdocs/luci-static/resources/view/vhost-manager/vhosts.js rename to package/secubox/luci-app-vhost-manager/htdocs/luci-static/resources/view/vhost-manager/vhosts.js diff --git a/luci-app-vhost-manager/root/etc/config/vhost b/package/secubox/luci-app-vhost-manager/root/etc/config/vhost similarity index 100% rename from luci-app-vhost-manager/root/etc/config/vhost rename to package/secubox/luci-app-vhost-manager/root/etc/config/vhost diff --git a/luci-app-vhost-manager/root/etc/config/vhost_manager b/package/secubox/luci-app-vhost-manager/root/etc/config/vhost_manager similarity index 100% rename from luci-app-vhost-manager/root/etc/config/vhost_manager rename to package/secubox/luci-app-vhost-manager/root/etc/config/vhost_manager diff --git a/luci-app-vhost-manager/root/etc/config/vhosts b/package/secubox/luci-app-vhost-manager/root/etc/config/vhosts similarity index 100% rename from luci-app-vhost-manager/root/etc/config/vhosts rename to package/secubox/luci-app-vhost-manager/root/etc/config/vhosts diff --git a/luci-app-vhost-manager/root/etc/uci-defaults/50-luci-app-vhost-manager-migrate b/package/secubox/luci-app-vhost-manager/root/etc/uci-defaults/50-luci-app-vhost-manager-migrate similarity index 100% rename from luci-app-vhost-manager/root/etc/uci-defaults/50-luci-app-vhost-manager-migrate rename to package/secubox/luci-app-vhost-manager/root/etc/uci-defaults/50-luci-app-vhost-manager-migrate diff --git a/luci-app-vhost-manager/root/usr/libexec/rpcd/luci.vhost-manager b/package/secubox/luci-app-vhost-manager/root/usr/libexec/rpcd/luci.vhost-manager similarity index 100% rename from luci-app-vhost-manager/root/usr/libexec/rpcd/luci.vhost-manager rename to package/secubox/luci-app-vhost-manager/root/usr/libexec/rpcd/luci.vhost-manager diff --git a/luci-app-vhost-manager/root/usr/share/luci/menu.d/luci-app-vhost-manager.json b/package/secubox/luci-app-vhost-manager/root/usr/share/luci/menu.d/luci-app-vhost-manager.json similarity index 100% rename from luci-app-vhost-manager/root/usr/share/luci/menu.d/luci-app-vhost-manager.json rename to package/secubox/luci-app-vhost-manager/root/usr/share/luci/menu.d/luci-app-vhost-manager.json diff --git a/luci-app-vhost-manager/root/usr/share/rpcd/acl.d/luci-app-vhost-manager.json b/package/secubox/luci-app-vhost-manager/root/usr/share/rpcd/acl.d/luci-app-vhost-manager.json similarity index 100% rename from luci-app-vhost-manager/root/usr/share/rpcd/acl.d/luci-app-vhost-manager.json rename to package/secubox/luci-app-vhost-manager/root/usr/share/rpcd/acl.d/luci-app-vhost-manager.json diff --git a/luci-app-vhost-manager/root/usr/share/vhost-manager/README.md b/package/secubox/luci-app-vhost-manager/root/usr/share/vhost-manager/README.md similarity index 100% rename from luci-app-vhost-manager/root/usr/share/vhost-manager/README.md rename to package/secubox/luci-app-vhost-manager/root/usr/share/vhost-manager/README.md diff --git a/luci-app-vhost-manager/root/usr/share/vhost-manager/templates.json b/package/secubox/luci-app-vhost-manager/root/usr/share/vhost-manager/templates.json similarity index 100% rename from luci-app-vhost-manager/root/usr/share/vhost-manager/templates.json rename to package/secubox/luci-app-vhost-manager/root/usr/share/vhost-manager/templates.json diff --git a/luci-app-wireguard-dashboard/.github/workflows/build.yml b/package/secubox/luci-app-wireguard-dashboard/.github/workflows/build.yml similarity index 100% rename from luci-app-wireguard-dashboard/.github/workflows/build.yml rename to package/secubox/luci-app-wireguard-dashboard/.github/workflows/build.yml diff --git a/luci-app-wireguard-dashboard/Makefile b/package/secubox/luci-app-wireguard-dashboard/Makefile similarity index 100% rename from luci-app-wireguard-dashboard/Makefile rename to package/secubox/luci-app-wireguard-dashboard/Makefile diff --git a/luci-app-wireguard-dashboard/README.md b/package/secubox/luci-app-wireguard-dashboard/README.md similarity index 100% rename from luci-app-wireguard-dashboard/README.md rename to package/secubox/luci-app-wireguard-dashboard/README.md diff --git a/luci-app-wireguard-dashboard/htdocs/luci-static/resources/view/wireguard-dashboard/config.js b/package/secubox/luci-app-wireguard-dashboard/htdocs/luci-static/resources/view/wireguard-dashboard/config.js similarity index 100% rename from luci-app-wireguard-dashboard/htdocs/luci-static/resources/view/wireguard-dashboard/config.js rename to package/secubox/luci-app-wireguard-dashboard/htdocs/luci-static/resources/view/wireguard-dashboard/config.js diff --git a/luci-app-wireguard-dashboard/htdocs/luci-static/resources/view/wireguard-dashboard/overview.js b/package/secubox/luci-app-wireguard-dashboard/htdocs/luci-static/resources/view/wireguard-dashboard/overview.js similarity index 100% rename from luci-app-wireguard-dashboard/htdocs/luci-static/resources/view/wireguard-dashboard/overview.js rename to package/secubox/luci-app-wireguard-dashboard/htdocs/luci-static/resources/view/wireguard-dashboard/overview.js diff --git a/luci-app-wireguard-dashboard/htdocs/luci-static/resources/view/wireguard-dashboard/peers.js b/package/secubox/luci-app-wireguard-dashboard/htdocs/luci-static/resources/view/wireguard-dashboard/peers.js similarity index 100% rename from luci-app-wireguard-dashboard/htdocs/luci-static/resources/view/wireguard-dashboard/peers.js rename to package/secubox/luci-app-wireguard-dashboard/htdocs/luci-static/resources/view/wireguard-dashboard/peers.js diff --git a/luci-app-wireguard-dashboard/htdocs/luci-static/resources/view/wireguard-dashboard/qrcodes.js b/package/secubox/luci-app-wireguard-dashboard/htdocs/luci-static/resources/view/wireguard-dashboard/qrcodes.js similarity index 100% rename from luci-app-wireguard-dashboard/htdocs/luci-static/resources/view/wireguard-dashboard/qrcodes.js rename to package/secubox/luci-app-wireguard-dashboard/htdocs/luci-static/resources/view/wireguard-dashboard/qrcodes.js diff --git a/luci-app-wireguard-dashboard/htdocs/luci-static/resources/view/wireguard-dashboard/settings.js b/package/secubox/luci-app-wireguard-dashboard/htdocs/luci-static/resources/view/wireguard-dashboard/settings.js similarity index 100% rename from luci-app-wireguard-dashboard/htdocs/luci-static/resources/view/wireguard-dashboard/settings.js rename to package/secubox/luci-app-wireguard-dashboard/htdocs/luci-static/resources/view/wireguard-dashboard/settings.js diff --git a/luci-app-wireguard-dashboard/htdocs/luci-static/resources/view/wireguard-dashboard/traffic.js b/package/secubox/luci-app-wireguard-dashboard/htdocs/luci-static/resources/view/wireguard-dashboard/traffic.js similarity index 100% rename from luci-app-wireguard-dashboard/htdocs/luci-static/resources/view/wireguard-dashboard/traffic.js rename to package/secubox/luci-app-wireguard-dashboard/htdocs/luci-static/resources/view/wireguard-dashboard/traffic.js diff --git a/luci-app-wireguard-dashboard/htdocs/luci-static/resources/wireguard-dashboard/api.js b/package/secubox/luci-app-wireguard-dashboard/htdocs/luci-static/resources/wireguard-dashboard/api.js similarity index 100% rename from luci-app-wireguard-dashboard/htdocs/luci-static/resources/wireguard-dashboard/api.js rename to package/secubox/luci-app-wireguard-dashboard/htdocs/luci-static/resources/wireguard-dashboard/api.js diff --git a/luci-app-wireguard-dashboard/htdocs/luci-static/resources/wireguard-dashboard/common.css b/package/secubox/luci-app-wireguard-dashboard/htdocs/luci-static/resources/wireguard-dashboard/common.css similarity index 100% rename from luci-app-wireguard-dashboard/htdocs/luci-static/resources/wireguard-dashboard/common.css rename to package/secubox/luci-app-wireguard-dashboard/htdocs/luci-static/resources/wireguard-dashboard/common.css diff --git a/luci-app-wireguard-dashboard/htdocs/luci-static/resources/wireguard-dashboard/dashboard.css b/package/secubox/luci-app-wireguard-dashboard/htdocs/luci-static/resources/wireguard-dashboard/dashboard.css similarity index 100% rename from luci-app-wireguard-dashboard/htdocs/luci-static/resources/wireguard-dashboard/dashboard.css rename to package/secubox/luci-app-wireguard-dashboard/htdocs/luci-static/resources/wireguard-dashboard/dashboard.css diff --git a/luci-app-wireguard-dashboard/root/usr/libexec/rpcd/luci.wireguard-dashboard b/package/secubox/luci-app-wireguard-dashboard/root/usr/libexec/rpcd/luci.wireguard-dashboard similarity index 100% rename from luci-app-wireguard-dashboard/root/usr/libexec/rpcd/luci.wireguard-dashboard rename to package/secubox/luci-app-wireguard-dashboard/root/usr/libexec/rpcd/luci.wireguard-dashboard diff --git a/luci-app-wireguard-dashboard/root/usr/share/luci/menu.d/luci-app-wireguard-dashboard.json b/package/secubox/luci-app-wireguard-dashboard/root/usr/share/luci/menu.d/luci-app-wireguard-dashboard.json similarity index 100% rename from luci-app-wireguard-dashboard/root/usr/share/luci/menu.d/luci-app-wireguard-dashboard.json rename to package/secubox/luci-app-wireguard-dashboard/root/usr/share/luci/menu.d/luci-app-wireguard-dashboard.json diff --git a/luci-app-wireguard-dashboard/root/usr/share/rpcd/acl.d/luci-app-wireguard-dashboard.json b/package/secubox/luci-app-wireguard-dashboard/root/usr/share/rpcd/acl.d/luci-app-wireguard-dashboard.json similarity index 100% rename from luci-app-wireguard-dashboard/root/usr/share/rpcd/acl.d/luci-app-wireguard-dashboard.json rename to package/secubox/luci-app-wireguard-dashboard/root/usr/share/rpcd/acl.d/luci-app-wireguard-dashboard.json diff --git a/luci-app-zigbee2mqtt/Makefile b/package/secubox/luci-app-zigbee2mqtt/Makefile similarity index 100% rename from luci-app-zigbee2mqtt/Makefile rename to package/secubox/luci-app-zigbee2mqtt/Makefile diff --git a/luci-app-zigbee2mqtt/README.md b/package/secubox/luci-app-zigbee2mqtt/README.md similarity index 100% rename from luci-app-zigbee2mqtt/README.md rename to package/secubox/luci-app-zigbee2mqtt/README.md diff --git a/luci-app-zigbee2mqtt/htdocs/luci-static/resources/view/zigbee2mqtt/overview.js b/package/secubox/luci-app-zigbee2mqtt/htdocs/luci-static/resources/view/zigbee2mqtt/overview.js similarity index 100% rename from luci-app-zigbee2mqtt/htdocs/luci-static/resources/view/zigbee2mqtt/overview.js rename to package/secubox/luci-app-zigbee2mqtt/htdocs/luci-static/resources/view/zigbee2mqtt/overview.js diff --git a/luci-app-zigbee2mqtt/htdocs/luci-static/resources/zigbee2mqtt/api.js b/package/secubox/luci-app-zigbee2mqtt/htdocs/luci-static/resources/zigbee2mqtt/api.js similarity index 100% rename from luci-app-zigbee2mqtt/htdocs/luci-static/resources/zigbee2mqtt/api.js rename to package/secubox/luci-app-zigbee2mqtt/htdocs/luci-static/resources/zigbee2mqtt/api.js diff --git a/luci-app-zigbee2mqtt/htdocs/luci-static/resources/zigbee2mqtt/common.css b/package/secubox/luci-app-zigbee2mqtt/htdocs/luci-static/resources/zigbee2mqtt/common.css similarity index 100% rename from luci-app-zigbee2mqtt/htdocs/luci-static/resources/zigbee2mqtt/common.css rename to package/secubox/luci-app-zigbee2mqtt/htdocs/luci-static/resources/zigbee2mqtt/common.css diff --git a/luci-app-zigbee2mqtt/luasrc/controller/secubox/zigbee2mqtt.lua b/package/secubox/luci-app-zigbee2mqtt/luasrc/controller/secubox/zigbee2mqtt.lua similarity index 100% rename from luci-app-zigbee2mqtt/luasrc/controller/secubox/zigbee2mqtt.lua rename to package/secubox/luci-app-zigbee2mqtt/luasrc/controller/secubox/zigbee2mqtt.lua diff --git a/luci-app-zigbee2mqtt/root/usr/libexec/rpcd/luci.zigbee2mqtt b/package/secubox/luci-app-zigbee2mqtt/root/usr/libexec/rpcd/luci.zigbee2mqtt similarity index 100% rename from luci-app-zigbee2mqtt/root/usr/libexec/rpcd/luci.zigbee2mqtt rename to package/secubox/luci-app-zigbee2mqtt/root/usr/libexec/rpcd/luci.zigbee2mqtt diff --git a/luci-app-zigbee2mqtt/root/usr/share/luci/menu.d/luci-app-zigbee2mqtt.json b/package/secubox/luci-app-zigbee2mqtt/root/usr/share/luci/menu.d/luci-app-zigbee2mqtt.json similarity index 100% rename from luci-app-zigbee2mqtt/root/usr/share/luci/menu.d/luci-app-zigbee2mqtt.json rename to package/secubox/luci-app-zigbee2mqtt/root/usr/share/luci/menu.d/luci-app-zigbee2mqtt.json diff --git a/luci-app-zigbee2mqtt/root/usr/share/rpcd/acl.d/luci-app-zigbee2mqtt.json b/package/secubox/luci-app-zigbee2mqtt/root/usr/share/rpcd/acl.d/luci-app-zigbee2mqtt.json similarity index 100% rename from luci-app-zigbee2mqtt/root/usr/share/rpcd/acl.d/luci-app-zigbee2mqtt.json rename to package/secubox/luci-app-zigbee2mqtt/root/usr/share/rpcd/acl.d/luci-app-zigbee2mqtt.json diff --git a/package/secubox/secubox-app/files/usr/share/secubox/plugins/catalog/network-tweaks.json b/package/secubox/secubox-app/files/usr/share/secubox/plugins/catalog/network-tweaks.json new file mode 100644 index 0000000..d3ee947 --- /dev/null +++ b/package/secubox/secubox-app/files/usr/share/secubox/plugins/catalog/network-tweaks.json @@ -0,0 +1,46 @@ +{ + "id": "network-tweaks", + "name": "Network Tweaks", + "category": "networking", + "runtime": "native", + "maturity": "mature", + "description": "Network optimization and performance tweaking tools for DNS, hosts synchronization, and VHost discovery.", + "source": { + "homepage": "https://github.com/gkerma/secubox-openwrt", + "github": "https://github.com/gkerma/secubox-openwrt/tree/master/package/secubox/luci-app-network-tweaks" + }, + "packages": ["luci-app-network-tweaks"], + "capabilities": ["dns-management", "hosts-sync", "vhost-discovery", "network-impact"], + "requirements": { + "arch": ["arm64", "armv7", "x86_64", "mipsel"], + "min_ram_mb": 64, + "min_storage_mb": 10 + }, + "hardware": { + "usb": false, + "serial": false + }, + "network": { + "inbound_ports": [], + "protocols": ["dns", "http"], + "outbound_only": false + }, + "privileges": { + "needs_usb": false, + "needs_serial": false, + "needs_net_admin": true + }, + "update": { + "strategy": "opkg" + }, + "wizard": { + "steps": [ + "enable_sync", + "configure_dnsmasq", + "configure_hosts" + ] + }, + "profiles": { + "recommended": ["home", "office", "lab", "smb"] + } +} diff --git a/package/secubox/secubox-app/files/usr/share/secubox/plugins/catalog/secubox-bonus.json b/package/secubox/secubox-app/files/usr/share/secubox/plugins/catalog/secubox-bonus.json new file mode 100644 index 0000000..94b337b --- /dev/null +++ b/package/secubox/secubox-app/files/usr/share/secubox/plugins/catalog/secubox-bonus.json @@ -0,0 +1,42 @@ +{ + "id": "secubox-bonus", + "name": "SecuBox Documentation & Demos", + "category": "documentation", + "runtime": "native", + "maturity": "stable", + "description": "Official SecuBox documentation hub with interactive module demonstrations, setup guides, and marketing materials. Includes 16 module demos and multilingual support (13 languages).", + "source": { + "homepage": "https://github.com/gkerma/secubox-openwrt", + "github": "https://github.com/gkerma/secubox-openwrt/tree/master/luci-app-secubox-bonus" + }, + "packages": ["luci-app-secubox-bonus"], + "capabilities": ["documentation", "demos", "i18n", "marketing"], + "requirements": { + "arch": ["arm64", "armv7", "x86_64", "mipsel"], + "min_ram_mb": 32, + "min_storage_mb": 1 + }, + "hardware": { + "usb": false, + "serial": false + }, + "network": { + "inbound_ports": [], + "protocols": ["http"], + "outbound_only": true + }, + "privileges": { + "needs_usb": false, + "needs_serial": false, + "needs_net_admin": false + }, + "update": { + "strategy": "opkg" + }, + "wizard": { + "steps": [] + }, + "profiles": { + "recommended": ["home", "office", "lab", "smb"] + } +} diff --git a/secubox-tools/fix-permissions.sh b/secubox-tools/fix-permissions.sh index 5265d54..40d2641 100755 --- a/secubox-tools/fix-permissions.sh +++ b/secubox-tools/fix-permissions.sh @@ -56,6 +56,12 @@ echo "SecuBox Permission Fix" echo "========================================" echo "" +# Helper function to collect all luci-app directories +get_luci_apps() { + find . -maxdepth 1 -type d -name 'luci-app-*' 2>/dev/null + find package/secubox -maxdepth 1 -type d -name 'luci-app-*' 2>/dev/null +} + # Fix local permissions if [ "$LOCAL_MODE" = true ]; then echo -e "${BLUE}━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━${NC}" @@ -67,7 +73,8 @@ if [ "$LOCAL_MODE" = true ]; then CSS_FIXED=0 JS_FIXED=0 - for module_dir in luci-app-*/; do + while IFS= read -r module_dir; do + [[ ! -d "$module_dir" ]] && continue module_name=$(basename "$module_dir") # Fix RPCD scripts (must be executable: 755) @@ -108,7 +115,7 @@ if [ "$LOCAL_MODE" = true ]; then fi done < <(find "$htdocs_dir" -name "*.js" -type f 2>/dev/null) fi - done + done < <(get_luci_apps) echo "" echo -e "${GREEN}Local Permissions Fixed:${NC}" diff --git a/secubox-tools/quick-deploy.sh b/secubox-tools/quick-deploy.sh index 3913206..695e9d7 100755 --- a/secubox-tools/quick-deploy.sh +++ b/secubox-tools/quick-deploy.sh @@ -221,7 +221,10 @@ verify_remote() { } collect_luci_apps() { - find . -maxdepth 1 -type d -name 'luci-app-*' | LC_ALL=C sort + { + find . -maxdepth 1 -type d -name 'luci-app-*' + find package/secubox -maxdepth 1 -type d -name 'luci-app-*' 2>/dev/null + } | LC_ALL=C sort } list_luci_apps() { @@ -339,9 +342,9 @@ deploy_profile_theme() { "luci-app-secubox/htdocs/luci-static/resources/secubox/theme.js:/www/luci-static/resources/secubox/" "luci-app-secubox/htdocs/luci-static/resources/secubox/secubox.css:/www/luci-static/resources/secubox/" "luci-app-secubox/htdocs/luci-static/resources/view/secubox/dashboard.js:/www/luci-static/resources/view/secubox/" - "luci-app-system-hub/htdocs/luci-static/resources/system-hub/theme.js:/www/luci-static/resources/system-hub/" - "luci-app-system-hub/htdocs/luci-static/resources/system-hub/dashboard.css:/www/luci-static/resources/system-hub/" - "luci-app-system-hub/htdocs/luci-static/resources/view/system-hub/overview.js:/www/luci-static/resources/view/system-hub/" + "package/secubox/luci-app-system-hub/htdocs/luci-static/resources/system-hub/theme.js:/www/luci-static/resources/system-hub/" + "package/secubox/luci-app-system-hub/htdocs/luci-static/resources/system-hub/dashboard.css:/www/luci-static/resources/system-hub/" + "package/secubox/luci-app-system-hub/htdocs/luci-static/resources/view/system-hub/overview.js:/www/luci-static/resources/view/system-hub/" ) remote_exec "mkdir -p /usr/libexec/rpcd /usr/share/rpcd/acl.d /www/luci-static/resources/secubox /www/luci-static/resources/view/secubox /www/luci-static/resources/system-hub /www/luci-static/resources/view/system-hub /www/luci-static/resources/secubox-theme" local -a backup_targets=() diff --git a/secubox-tools/validate-modules.sh b/secubox-tools/validate-modules.sh index d6c86c6..1cde2ce 100755 --- a/secubox-tools/validate-modules.sh +++ b/secubox-tools/validate-modules.sh @@ -15,6 +15,12 @@ NC='\033[0m' # No Color ERRORS=0 WARNINGS=0 +# Helper function to collect all luci-app directories +get_luci_apps() { + find . -maxdepth 1 -type d -name 'luci-app-*' 2>/dev/null + find package/secubox -maxdepth 1 -type d -name 'luci-app-*' 2>/dev/null +} + echo "========================================" echo "SecuBox Module Validation" echo "========================================" @@ -43,7 +49,8 @@ echo "1. Validating RPCD script names vs ubus objects" echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━" echo "" -for module_dir in luci-app-*/; do +while IFS= read -r module_dir; do + [[ ! -d "$module_dir" ]] && continue module_name=$(basename "$module_dir") echo "Checking $module_name..." @@ -85,7 +92,7 @@ for module_dir in luci-app-*/; do warn "$module_name: No RPCD directory found" fi echo "" -done +done < <(get_luci_apps) # Check 2: Menu paths must match actual view file locations echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━" @@ -93,7 +100,8 @@ echo "2. Validating menu paths vs view file locations" echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━" echo "" -for module_dir in luci-app-*/; do +while IFS= read -r module_dir; do + [[ ! -d "$module_dir" ]] && continue module_name=$(basename "$module_dir") menu_file="$module_dir/root/usr/share/luci/menu.d/${module_name}.json" @@ -123,7 +131,7 @@ for module_dir in luci-app-*/; do done echo "" fi -done +done < <(get_luci_apps) # Check 3: View files must have corresponding menu entries echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━" @@ -131,7 +139,8 @@ echo "3. Validating view files have menu entries" echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━" echo "" -for module_dir in luci-app-*/; do +while IFS= read -r module_dir; do + [[ ! -d "$module_dir" ]] && continue module_name=$(basename "$module_dir") view_dir="$module_dir/htdocs/luci-static/resources/view" menu_file="$module_dir/root/usr/share/luci/menu.d/${module_name}.json" @@ -156,7 +165,7 @@ for module_dir in luci-app-*/; do set -e echo "" fi -done +done < <(get_luci_apps) # Check 4: RPCD scripts must be executable echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━" @@ -164,7 +173,8 @@ echo "4. Validating RPCD script permissions" echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━" echo "" -for module_dir in luci-app-*/; do +while IFS= read -r module_dir; do + [[ ! -d "$module_dir" ]] && continue module_name=$(basename "$module_dir") rpcd_dir="$module_dir/root/usr/libexec/rpcd" @@ -178,7 +188,7 @@ for module_dir in luci-app-*/; do fi done fi -done +done < <(get_luci_apps) echo "" # Check 5: JSON files must be valid @@ -187,7 +197,8 @@ echo "5. Validating JSON syntax" echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━" echo "" -for module_dir in luci-app-*/; do +while IFS= read -r module_dir; do + [[ ! -d "$module_dir" ]] && continue module_name=$(basename "$module_dir") # Check menu JSON @@ -209,7 +220,7 @@ for module_dir in luci-app-*/; do error "$module_name: acl.d JSON is INVALID" fi fi -done +done < <(get_luci_apps) echo "" # Check 6: Verify ubus object naming convention @@ -218,7 +229,8 @@ echo "6. Validating ubus object naming convention" echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━" echo "" -for module_dir in luci-app-*/; do +while IFS= read -r module_dir; do + [[ ! -d "$module_dir" ]] && continue module_name=$(basename "$module_dir") # Extract ubus object names from JavaScript @@ -236,7 +248,7 @@ for module_dir in luci-app-*/; do fi done fi -done +done < <(get_luci_apps) echo "" # Check 7: htdocs files must have correct permissions (644 for web server) @@ -247,7 +259,8 @@ echo "" PERMISSION_ERRORS=0 -for module_dir in luci-app-*/; do +while IFS= read -r module_dir; do + [[ ! -d "$module_dir" ]] && continue module_name=$(basename "$module_dir") htdocs_dir="$module_dir/htdocs" @@ -280,7 +293,7 @@ for module_dir in luci-app-*/; do fi done < <(find "$htdocs_dir" -name "*.js" -type f 2>/dev/null) fi -done +done < <(get_luci_apps) if [ $PERMISSION_ERRORS -gt 0 ]; then echo ""