robotastic/trunk-recorder:5.2.1 pinned by digest, behind the trunk-recorder compose profile, host network, /dev/bus/usb. run.sh restarts TR when the edge-node rewrites config.json and reports state for health; drb-upload.sh hands each finished call (wav, then json) to recordings/tr-inbox. README carries the GPL-3.0 source note. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
35 lines
1.5 KiB
Markdown
35 lines
1.5 KiB
Markdown
# Trunk Recorder on a DRB node (node-26#45)
|
|
|
|
Opt-in alternative to the OP25 recorder. On a node, set both in `.env`, then
|
|
`docker compose up -d`:
|
|
|
|
RECORDER_BACKEND=trunk-recorder
|
|
COMPOSE_PROFILES=trunk-recorder
|
|
|
|
Set both back (`RECORDER_BACKEND=op25`, remove `COMPOSE_PROFILES`) to return
|
|
to OP25.
|
|
|
|
- `run.sh`: supervisor that replaces the image's CMD. It restarts TR when the
|
|
edge-node rewrites `configs/trunk-recorder/config.json`, and writes
|
|
`drb-status.json` for the dashboard health check.
|
|
- `drb-upload.sh`: TR's `uploadScript`. It copies each finished call (WAV +
|
|
JSON) into `recordings/tr-inbox`, where the edge-node uploads it through the
|
|
normal spool.
|
|
|
|
## License (GPL-3.0)
|
|
|
|
Trunk Recorder is GPL-3.0. DRB runs the unmodified upstream image
|
|
`robotastic/trunk-recorder:5.2.1` (digest pinned in `docker-compose.yml`) as a
|
|
separate program. It talks to DRB only through files, a script argument list
|
|
and a local UDP socket. That makes it mere aggregation, the same position we
|
|
already hold for OP25.
|
|
|
|
Anyone we distribute a node image or device to must still be able to get the
|
|
corresponding source. Upstream source for this exact version is at
|
|
<https://github.com/TrunkRecorder/trunk-recorder/tree/v5.2.1>. If we ever ship
|
|
the TR image ourselves (mirrored to our registry, preinstalled on a sold
|
|
device), we must also offer that source directly, in writing, for three years,
|
|
or ship it alongside. Pointing to upstream alone is not enough at that point.
|
|
Any patch to TR itself makes DRB's copy a modified version, which must then be
|
|
published under GPL-3.0.
|