EVEMU-DEVICE(1)
π EVEMU-DEVICE π
okay bestie, sit DOWN, because we're talking about evemu-device(1) β and also evemu-play and evemu-event, they're all in here, it's a whole trio, it's giving girl group π
β¨
πΈ NAME πΈ
evemu-device, evemu-play, evemu-event β make a virtual input device and replay an event sequence π no cap, that's literally the whole job.
β¨ SYNOPSIS β¨
evemu-device [description-file]
evemu-play /dev/input/eventX < event-sequence
evemu-play event-sequence.txt
evemu-event /dev/input/eventX [--sync] --type <type> --code <code> --value <value>
look at those three little lines just vibing π¦ each one is a different sister, and they all ate.
π DESCRIPTION π
okay so first up, evemu-device β she creates a virtual input device based on the description-file. and where does that description come from? usually from evemu-describe(1), she's the one who wrote it π. then evemu-device goes and creates a new input device with uinput, and prints the name and the device file to stdout. iconic behaviour, honestly.
then we have evemu-play β she replays the event sequence that you hand her on stdin, and she pushes it through the input device. the event sequence must be in the form created by evemu-record(1), that's non-negotiable bestie, she has standards β. and here's the cute part: if the argument is a file containing a recording, evemu-play creates the device and prompts the user for an interactive replay of the events. interactive!! main character energy fr fr π
and last but not least, evemu-event β she plays exactly one event, with the current time. just one. a single little event, one and done π. and if you pass --sync, then evemu-event generates an EV_SYN event after the event. the event type and code may be specified as the numerical value or the symbolic name from linux/input.h β so you can be a numbers girlie or a names girlie, both are valid π
.
π¨ okay important bit, don't scroll past this:evemu-devicemust be able to write to theuinputdevice node, andevemu-playmust be able to write to the device node specified. in most cases this means it must be run as root. yes, root. I know. but that's the vibe check and she passed it, so. π
π SEE ALSO π
the whole friend group, go say hi π«Ά
π AUTHOR π
evemu was written by Henrik Rydberg <rydberg@euromail.se> β thank you king, we appreciate you πβ¨
π NOTES π
rydberg@euromail.semailto:rydberg@euromail.se
and that's the whole page bestie, you understood it, you devoured it, slay π π¦πΈ
signing off from 12/14/2016, this was EVEMU-DEVICE(1) β go create a virtual input device, ily, bye π
π¦ where this page comes from
- arch rolling: evemu 2.7.0-13 Β· GPL3
- debian bookworm: evemu-tools 2.7.0-3 Β· LGPL-3.0-only
- debian trixie: evemu-tools 2.7.0-4+b1 Β· LGPL-3.0-only
- fedora 43: evemu 2.7.0-36.fc43 Β· GPL-3.0-only AND LGPL-3.0-only AND GPL-3.0-or-later
- fedora 44: evemu 2.7.0-37.fc44 Β· GPL-3.0-only AND LGPL-3.0-only AND GPL-3.0-or-later
- ubuntu jammy: evemu-tools 2.7.0-3 Β· LGPL-3.0-only
- ubuntu noble: evemu-tools 2.7.0-4build1 Β· LGPL-3.0-only
- ubuntu questing: evemu-tools 2.7.0-4build1
- ubuntu resolute: evemu-tools 2.7.0-4build2 Β· LGPL-3.0-only
- ubuntu stonking: evemu-tools 2.7.0-4build2 Β· LGPL-3.0-only
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms