otter-osd shows brief overlays for volume, brightness, and lock keys. Run it as a daemon. Scripts, the bar, and compositor keybindings send commands over a UNIX socket.
Usage
Start the daemon (autostart at login):5) applies to volume and brightness commands.
Text messages are centered and wrap to fit the OSD.
When Do Not Disturb is on, popup surfaces stay hidden. Hardware commands still change volume and brightness. Run otter-notifications dnd-off to show future OSD updates again.
otter-timer and otter-rec also use otter-osd for completion notifications.
Architecture
One binary, two roles:- Daemon (no args): Connects to Wayland, opens a UNIX datagram socket, and renders overlays. Surfaces appear when needed and go away after timeout, so idle RAM stays near zero.
- Client (with args): Sends a command to the daemon and exits.
$XDG_RUNTIME_DIR/otter-shell/osd-{WAYLAND_DISPLAY}.sock
Configuration
Config file:~/.config/otter-shell/otter-osd.conf

