Set the show, the rundown and the banned list
Three things the desk shows come from the control plane’s settings (ADR-0102): the show’s heading, the rundown and the callers banned before. The Schedule tab and the chat’s moderation log do not fill them yet (planned), so they are settings. The schedule does choose the slate’s picture for the show on air (Video in the desk).
Set them
Section titled “Set them”-
Open the control plane’s settings file,
control.toml(Settings). -
Add a
[studio]table:[studio]show = "The Morning Kettle"[[studio.rundown]]at = "10:00"title = "News"detail = "hard post"hard_post = truekey = "F2"[[studio.rundown]]at = "10:06"title = "Weather"detail = "Eilidh reads"[[studio.banned]]identity = "tavish"date = "2026-09-12"reason = "Abuse on air" -
Restart the control plane.
The desk now heads the stage with the show, lists what is coming up and back-times to the next hard post.
| Key | What it does |
|---|---|
show |
heads the stage (desk.stage), the rundown and the screener’s status line; empty, they say No show set |
[[studio.rundown]] |
one row each in desk.rundown, at its time: at as HH:MM or HH:MM:SS, today; title, and detail under it |
hard_post = true |
the clock (desk.clock) back-times to the first such row ahead |
key |
the cart key the row needs, shown beside it |
[[studio.banned]] |
a caller who joins with that identity shows BANNED BEFORE on the screener, with the date (YYYY-MM-DD) and the reason |
listener_delay_ms |
how far behind the studio listeners hear, not counting the profanity delay: 15000 (15 s) by default, shown under the clock as set, not measured (ADR-0103) |


The rundown’s times are read on the station’s clock, in the time zone of the computer that runs the studio app.
With the Compose bundle, Quadlets or Cloudron
Section titled “With the Compose bundle, Quadlets or Cloudron”The packages write control.toml themselves, and none of them takes [studio] from its settings file:
- Compose (
weavesignal.sh) writes it from thecontrolsettings incompose.yamlwhenever the station starts;.envhas no key for the show. - Quadlets (
deploy/quadlets/generate.sh) write it as a file,config/controlunder the output folder. Add[studio]there and restart the control plane’s unit; generating the units again overwrites it. - Cloudron writes it on every start, and
weavesignal.envhas no key for the show.
So on Compose and Cloudron the desk shows No show set, an empty rundown and no banned list in 1.0.0.
Text and images CC BY-SA 4.0; code samples AGPL-3.0-only, as the code is. Licences.