mirror of
https://github.com/CyberMind-FR/secubox-deb.git
synced 2026-07-28 21:17:36 +00:00
46 lines
2.3 KiB
Plaintext
46 lines
2.3 KiB
Plaintext
secubox-fmrelay (0.2.0-1~bookworm2) bookworm; urgency=medium
|
|
|
|
* Phase 2: Requires=secubox-core.service -> Wants= on this module's unit
|
|
(remove the hard cascade-stop when secubox-core restarts/fails).
|
|
|
|
-- Gerald KERMA <devel@cybermind.fr> Sun, 19 Jul 2026 12:00:00 +0200
|
|
|
|
secubox-fmrelay (0.1.0-1~bookworm2) bookworm; urgency=medium
|
|
|
|
* webui: hybrid-dark cyan reskin (WebUI Panel Guidelines) baked into the package.
|
|
|
|
-- Gerald KERMA <devel@cybermind.fr> Thu, 10 Jul 2026 10:00:00 +0200
|
|
|
|
secubox-fmrelay (0.1.0-1~bookworm1) bookworm; urgency=medium
|
|
|
|
* Initial release — closes #377.
|
|
* api/main.py: FastAPI on /run/secubox/fmrelay.sock with healthz /
|
|
version / status / components / access / mounts / now-playing /
|
|
start / stop. Delegates to fmrelayctl for the actual work.
|
|
* sbin/fmrelayctl: bash CTL surface following the lyrionctl pattern.
|
|
TOML config_get strips inline comments. emit_access_json returns
|
|
the real Icecast mount URL (lan) + webradio URL (public) so the
|
|
admin webui's "Open Webradio →" button can read its href from
|
|
/access at runtime (single source of truth, MODULE-GUIDELINES §4).
|
|
* sbin/secubox-fmrelay-runner: rtl_fm | ffmpeg-libmp3lame pipe to an
|
|
Icecast SOURCE mount. ffmpeg speaks icecast:// natively + handles
|
|
reconnects, much simpler than ezstream+curl.
|
|
* sbin/secubox-fmrelay-icy: separate rtl_fm @ 171kHz + redsea pipe
|
|
that POSTs RDS RT/PS as ICY metadata to Icecast2 admin endpoint.
|
|
Two rtl_fm processes share the dongle — v0.2 plan is to split a
|
|
single stream via sox tee.
|
|
* nginx/fmrelay.conf: /api/v1/fmrelay/ proxies to the unix socket;
|
|
/fmrelay/ aliases the static admin page. Both gated by
|
|
auth_request /__sbx_auth_verify per the dual-vhost MUST pattern.
|
|
* www/fmrelay/index.html: SecuBox admin with status pill, components,
|
|
access, now-playing, mounts table, manual start/stop form, and the
|
|
"Open Webradio →" button reading from /access.
|
|
* systemd/secubox-fmrelay.service: User=secubox, runs uvicorn on the
|
|
unix socket, NoNewPrivileges + ProtectHome hardening.
|
|
* conf/fmrelay.toml.example: icecast credentials + runner defaults +
|
|
webradio URL exposure.
|
|
* menu.d/72-fmrelay.json: registers under the "mesh" category with
|
|
📻 icon.
|
|
|
|
-- Gerald Kerma <devel@cybermind.fr> Sun, 24 May 2026 11:00:00 +0200
|