Problem
Each call to ydotool type (line 100 of talktype) creates a new kernel virtual input device (/dev/input/eventN). These devices are never cleaned up until reboot, so they accumulate over a session.
On systems with ydotool 0.1.8 (the version packaged in Ubuntu/Debian), there is no ydotoold daemon — each invocation creates and destroys its own uinput device, but the kernel input node persists.
Observed behavior
From journalctl on a single 16-minute session:
- 42 talktype invocations (via GNOME keyboard shortcut)
- 21 new virtual input devices created (input32 through input52), one per transcribe-and-type cycle
systemd-logind began monitoring each new device ("Watching system buttons on /dev/input/event22 (ydotool virtual device)")
ydotool warned on every invocation: ydotoold backend unavailable (may have latency+delay issues)
- Session ended with gnome-shell libinput errors and a system crash (kdump triggered)
The device accumulation is a resource leak. While it may not be the sole cause of the crash, it adds unnecessary kernel and input subsystem load that grows with each invocation.
Environment
- Ubuntu (kernel 6.17.0-14-generic), GNOME on Wayland
- ydotool 0.1.8-3build1 (no
ydotoold daemon available)
Possible fixes
- Detect missing
ydotoold and warn — check for the daemon on startup and log a warning or refuse to run
- Document
ydotoold as a requirement — add to check_deps and README
- Consider alternative typing methods — e.g.
wtype on Wayland, wl-clipboard with wl-paste, or composing via DBus
Problem
Each call to
ydotool type(line 100 oftalktype) creates a new kernel virtual input device (/dev/input/eventN). These devices are never cleaned up until reboot, so they accumulate over a session.On systems with ydotool 0.1.8 (the version packaged in Ubuntu/Debian), there is no
ydotoolddaemon — each invocation creates and destroys its own uinput device, but the kernel input node persists.Observed behavior
From
journalctlon a single 16-minute session:systemd-logindbegan monitoring each new device ("Watching system buttons on /dev/input/event22 (ydotool virtual device)")ydotoolwarned on every invocation:ydotoold backend unavailable (may have latency+delay issues)The device accumulation is a resource leak. While it may not be the sole cause of the crash, it adds unnecessary kernel and input subsystem load that grows with each invocation.
Environment
ydotoolddaemon available)Possible fixes
ydotooldand warn — check for the daemon on startup and log a warning or refuse to runydotooldas a requirement — add tocheck_depsand READMEwtypeon Wayland,wl-clipboardwithwl-paste, or composing via DBus