1 ydotool (Die Automatisierung für moderne Wayland-Systeme)
Während das alte xdotool unter Wayland komplett den Dienst verweigert, arbeitet ydotool auf einer tieferen Ebene: Es erstellt über einen Hintergrunddienst (ydotoold) eine virtuelle Tastatur und Maus direkt im Linux-Kernel (über das uinput-Modul). Für das System sieht es so herstellerunabhängig aus, als würde eine echte, physische Hardware-Tastatur bedient werden.
1.1 🔬 Die großen Vorteile gegenüber xdotool
- Volle Wayland-Kompatibilität:
Funktioniert absolut problemlos unter modernen Oberflächen wie GNOME, KDE Plasma (unter Wayland) oder modernen Tiling-Window-Managern (wie Sway). - Funktioniert überall:
Da es auf Kernel-Ebene ansetzt, läuft es sogar auf einer reinen Linux-Textkonsole (TTY) komplett ohne grafische Oberfläche. - Protokollunabhängig:
Es ist dem Tool völlig egal, ob die aktuelle Sitzung unter X11 oder Wayland läuft – die Befehle bleiben exakt dieselben.
1.2 🛠️ Installation und die wichtige Hintergrund-Einrichtung
Da ydotool ein sehr gefragtes Werkzeug für moderne Systeme ist, ist es in den offiziellen Paketquellen aller großen Distributionen vertreten:
1.2.1 1. Unter Debian 13 (Trixie) / Ubuntu
1.2.2 2. Unter Arch Linux / EndeavourOS
1.2.3 3. Unter Fedora Linux
1.2.4 4. Unter openSUSE (Tumbleweed / Leap)
1.3 ⚠️ Der wichtigste Stolperstein: Die Rechte-Falle!
Wenn versuchen, ydotool das erste Mal zu benutzen, stranden sie fast immer bei einer Fehlermeldung wie: „Notice: failed to connect to daemon“ oder „Permission denied“.
Die Ursache:
Da ydotool ein virtuelles Gerät im Kernel erstellt, benötigt der dazugehörige Hintergrunddienst (ydotoold) zwingend Root-Rechte. Der normale Benutzer darf darauf standardmäßig nicht zugreifen.
1.3.1 Die Lösung:
Um das Tool ohne ständiges, unsicheres sudo in eigenen Skripten nutzen zu können, muss der Hintergrunddienst gestartet und der eigene Benutzer berechtigt werden:
Den Systemdienst aktivieren und starten:
Den eigenen Benutzer zur Gruppe input hinzufügen: (Damit man Zugriff auf die virtuellen Geräte erhält)
Wichtig: Danach einmal kurz vom System ab- und wieder anmelden, damit die Gruppenrechte aktiv werden!
1.4 🚀 Die wichtigsten Befehle im Vergleich
Die Syntax unterscheidet sich leicht vom alten xdotool, ist aber schnell gelernt. Hier sind die gängigsten Praxis-Befehle:
Einen Text automatisch eintippen lassen:
Eine bestimmte Taste (z. B. die Eingabetaste) drücken:
(Hinweis: ydotool nutzt die standardisierten Linux-Keycodes. 28 steht für Enter, :1 bedeutet „Taste drücken“ und :0 bedeutet „Taste loslassen“).
Einen Mausklick simulieren (Linksklick):
(0xC0 ist der Code für die linke Maustaste).
Die Maus relativ bewegen:
(Bewegt den Mauszeiger von der aktuellen Position aus um 100 Pixel nach rechts und 50 Pixel nach unten).