Commands

evlat signal

Set, move and clear one row of the bar from a script of your own.

evlat signal [--] ID [--label TEXT] [--progress 0…1] [--detail TEXT]
                  [--sender TEXT] [--ttl SECONDS]
                  [--waiting | --done | --failed | --clear]

Sets or clears one row, named by ID. Call it again with the same ID to move the row along.

evlat signal render --label "Render" --progress 0.4
evlat signal render --label "Render" --progress 0.8
evlat signal render --label "Render" --done

States

FlagOn the bar
(none)working: a turning ring, or a filling one with --progress.
--waitingamber: it needs you.
--donegreen: finished.
--failedred: something went wrong.
--clearThe row is removed. Takes no other flag.

Use at most one of them per call.

Flags

FlagWhat it does
IDLetters, digits, . _ -; 1–64 characters. After -- it may start with -.
--label TEXTThe row’s name, up to 80 characters. Defaults to the ID.
--detail TEXTA second line, up to 200 characters.
--sender TEXTThe tag beside the name, up to 24 characters.
--progress XA number from 0 to 1. The ring fills like a pie and stops turning.
--ttl SECONDSHow long a working or waiting row lasts without news, 0–86400. --ttl 0 removes the row.

Every call replaces the row

Evlat keeps no memory of earlier calls: each one describes the whole row. Pass the label, and anything else you want to keep, every time, not just what changed. Without --label, the row is named by its ID.

How long a row lasts

A working or waiting row lasts 900 seconds after its last call, or what --ttl says. A long job should call again before its time runs out, or pass a longer --ttl.

A done or failed row stays until you’ve seen it on the bar, for up to 12 hours after it finished, so a result that came while you were away is still there when you’re back. --clear removes it at once.

Exit code

CodeMeans
0The row was delivered, or Evlat isn’t running (nothing to deliver to).
1Evlat refused it. One line on stderr says why.
2A mistake in the command line.