OpenRiot v7.9.21 — Clipmenud Ate Your Keystrokes
“The clipboard had everything. Every keystroke. On the way in.” — The OpenRiot Crew, discovering that clipmenud’s XFixes polling was dropping keyboard events in flight
Release Overview
v7.9.21 is a stability release. The root cause of intermittent missing keystrokes — a problem that had been blamed on i3, Polybar, picom, and operator error — was finally identified: clipmenud. XFixes-based clipboard monitoring was competing with the X event queue, and losing key-press events under moderate load. Disabling it restored full input fidelity.
Secondary improvements: Polybar module intervals were staggered to coprime values so no two modules ever fire simultaneously, and the rightmost module group (screenrec, settings, power, lock) was recolored from purple to cyan-dim for better visual harmony.
Keyboard Input Loss Fix
Every system update would re-enable clipmenud via the exec
--no-startup-id clipmenud line in i3 config — even though the
comment above it said “disabled.” The comment is now accurate
and the line is properly commented out. No more lost keystrokes.
Polybar Timing Cleanup
All scripted module intervals were set to coprime values so two modules never execute at the same tick:
| Module | Before | After |
|---|---|---|
all (workspaces + title) |
3s | 4s |
screenrec |
2s | 7s |
volume |
31s | 29s |
network-eth |
33s | 37s |
battery |
32s | 34s |
nzbget |
30s | 26s |
No visually perceptible latency change — the goal was eliminating simultaneous fork-exec spikes, not reducing polling frequency.
Visual Tweak
The rightmost module group — screenrec (idle/recording),
settings, power, lock — was using purple (#A78BFA). Changed
to cyan-dim (#5a95b8), a greyed-down cyan that reads clearly
at 28px height without competing with the teal, sky, and blue
modules in the same bar.
🧾 Files Changed
| File | Change |
|---|---|
config/i3/config |
clipmenud exec commented out; |
| comment: “suspected” → “confirmed” | |
polybar/config.ini.tmpl |
intervals 3→4, 2→7, 31→29, |
| 33→37, 32→34, 30→26; purple→cyan-dim | |
assets/migrate.webp |
Updated Migrate UI screenshot |
🗣️ Final Words
“We tried everything. Xrender. GLX. Picom. i3 bindings. Every compositor flag. Every XKB setting. And the whole time, it was the clipboard manager eating your typing.” — The OpenRiot Crew, having now earned their X11 input subsystem PhD at 3 in the morning, on an OpenBSD laptop