I am a new Linux user and have settled on Ubuntu 24.04.3 LTS in Wayland. In Windows, I used AutoHotKey to automate the keyboard to type repetitive text strings with a hotkey e.g. pressing Alt+E to type my@email.com
I believe the solution in Linux is to install an application like dotool or ydotool and then create a custom shortcut command. The problem is I cannot get dotool and ydotool to work. I’ll document the issues I’m having with ydotool as there seems to be more awareness and support for this application.
I am following the instillation instructions here:
Everything seems to go fine until I get to this step and get the following error:
sudo systemctl enable ydotoold
Failed to enable unit: Unit file ydotoold.service does not exist.
I came across this issue which suggests it could be a permissions issue on /dev/uinput and tried to the solution provided in that post but I still can’t enable ydotoold after a reboot.
Running this command works:
ydotoold --version
v1.0.4-38-g708e96f
But I am stuck here and not sure how to troubleshoot or progress further. Any help would be appreciated, thank you!


It looks like you’re missing the ydotool.service unit file in the package. Can you check by running
dpkg -L ydotool-custom(the name of the package you chose in step 3.4)?Unit files are how services are defined in most Linux-based desktop systems, similar to services in Windows.
Thanks for the reply Hades, the output of that command is:
/.
/usr
/usr/lib
/usr/lib/systemd
/usr/lib/systemd/user
/usr/lib/systemd/user/ydotoold.service
/usr/local
/usr/local/bin
/usr/local/bin/ydotool
/usr/local/bin/ydotoold
/usr/local/share
/usr/local/share/man
/usr/local/share/man/man1
/usr/local/share/man/man1/ydotool.1.gz
/usr/local/share/man/man8
/usr/local/share/man/man8/ydotoold.8.gz
Ah okay, it’s a user unit then. Try the following:
$ systemctl --user enable ydotoold $ systemctl --user start ydotoold