Commit Graph

18 Commits

Author SHA1 Message Date
eebc84d0b9 fix(zigbee2mqtt): Fix adapter type, config format, and add MQTT dependency
The z2m 2.x breaking changes required three fixes discovered during
live deployment testing on the router:
- Adapter renamed from `ezsp` to `ember` in zigbee-herdsman 4.0.0
- Config format needs `version: 4` and nested `homeassistant.enabled`
- Start script needs `ZIGBEE2MQTT_DATA` env var for correct config path
- Add `mosquitto-nossl` as package dependency (MQTT broker required)
- Direct `/dev/ttyUSB0` passthrough works; socat TCP bridge does not

Also updates project planning files (HISTORY.md, TODO.md, WIP.md,
CLAUDE.md) and rebuilds bonus feed with latest IPKs.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-04 19:29:59 +01:00
acd7e87e56 chore(bonus-feed): Rebuild feed with zigbee2mqtt LXC and device-intel fixes
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-04 18:33:18 +01:00
eab2e5d159 chore(bonus-feed): Rebuild feed with jellyfin ipk and latest fixes
Includes rebuilt packages with RPCD function wrapper fix, crowdsec
decisions fix, and new secubox-app-jellyfin package.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-04 18:07:54 +01:00
b32a0c222b chore(bonus-feed): Rebuild all feed packages with latest fixes
Includes device-intel, dns-provider, crowdsec-dashboard, and jellyfin
packages plus updated Packages index.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-04 17:07:19 +01:00
297917e79a feat(jellyfin): Add secubox-app-jellyfin and luci-app-jellyfin packages
Docker-based Jellyfin media server with UCI config (port, image, media
paths, GPU transcoding), procd init, jellyfinctl CLI, and LuCI frontend
with status/config/logs view.

Also adds Punk Exposure Engine architectural README documenting the
Peek/Poke/Emancipate service exposure model and DNS provider API
roadmap. CLAUDE.md updated with architectural directive.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-04 14:50:59 +01:00
c4c829a593 fix(master-link): Suppress p2p-mesh.sh stdout noise from sourced libraries
Use >/dev/null 2>&1 instead of just 2>/dev/null when sourcing
master-link.sh and calling chain_add_block, mesh_init, peer_add,
factory_trust_peer, and gossip_sync to prevent p2p-mesh.sh usage
text and block hashes from corrupting CGI JSON responses.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-03 06:38:11 +01:00
b2f0e23c32 fix(simplex): Use LXC configured path and skip existing rootfs download
- Read LXC path from /etc/lxc/lxc.conf instead of hardcoding /var/lib/lxc
  (OpenWrt uses /srv/lxc by default)
- Skip Alpine rootfs download if file already exists in /tmp

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-03 05:07:44 +01:00
d238e05098 chore(feed): Update build artifacts with WAF autoban stats UI
- luci-app-crowdsec-dashboard: WAF threats/bans stats on overview
- luci-app-mitmproxy: Auto-ban statistics card

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-02 16:21:10 +01:00
449d5bb96e chore(feed): Update build artifacts for mitmproxy v0.5.0-r21
- secubox-app-mitmproxy: Sensitivity-based auto-ban system
- luci-app-mitmproxy: Updated frontend
- luci-app-crowdsec-dashboard: Ban button on alerts page

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-02 16:04:49 +01:00
f6ab1fc6c5 chore(feed): Update build artifacts for crowdsec-dashboard v0.7.0-r32
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-02 11:23:44 +01:00
a9086b1d21 chore(feed): Update build artifacts for crowdsec-dashboard v0.7.0-r31
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-02 10:58:07 +01:00
27c5900f53 chore(feed): Update build artifacts for v0.18.2
Updated package indices and IPK files for secubox-feed.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-02 10:48:10 +01:00
ed7184f45f fix(dnsguard): Fix subshell issues in provider lookup methods
Replace pipe-to-while loops with grep/cut to avoid subshell variable
scope issues in method_status, method_get_providers, and method_set_provider.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-02 07:15:38 +01:00
906c3e8988 chore(feed): Update package feed with latest builds
Updated packages:
- luci-app-ollama: KISS UI rewrite
- luci-app-secubox-netdiag: Temperature monitoring and port mode controls
- secubox-core, secubox-p2p: Latest versions
- All other packages rebuilt with current SDK

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-01 09:50:14 +01:00
948b8776d8 fix(crowdsec-dashboard): Fix nav paths in all view files
Change nav paths from services/crowdsec to security/crowdsec in alerts,
bouncers, decisions, and settings views to match the new menu location.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-01 09:21:16 +01:00
6e247800a4 fix(metablogizer): Remove incorrect expect clauses from API declarations
The RPCD returns data directly without wrapping in a 'result' object,
but api.js was using expect: { result: {} } which caused empty data
in the UI (0 sites shown instead of 6).

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-01 08:13:49 +01:00
163364843e feat(metablogizer): KISS UI redesign with backend status
- Replace overview.js with dashboard.js using standard cbi-* classes
- Add api.js module for RPC declarations
- Show port, runtime, backend_running status in sites table
- Add sync_config, discover_vhosts, import_vhost RPC methods
- Update ACL with new method permissions
- Menu: Sites -> Dashboard

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-01 08:06:22 +01:00
280c6a08d9 fix(streamlit): Remove null text in app description display
When an app has no description, return empty string instead of null
to prevent "null" text from being rendered in the instances table.

Also: secubox-p2p bumped to v0.6.0-r3 with catalog fix.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-01 07:13:27 +01:00