mirror of
https://github.com/joleuger/vuinputd.git
synced 2026-07-17 16:36:03 +00:00
1.7 KiB
1.7 KiB
uinput-ioctls
uinput-ioctls provides Rust bindings and constants for the Linux uinput subsystem's ioctl interface.
It exposes ioctl_* helper functions and constants based on the Linux kernel's uinput.h, allowing you to interact with virtual input devices (keyboards, mice, gamepads, etc.) through Rust in a low-level but type-safe way.
This crate does not attempt to abstract or validate ioctl usage; it only provides constants and wrappers. Higher-level logic (such as event management or device configuration) should be built on top.
✨ Features
- Idiomatic Rust wrappers around
uinputioctl definitions. - Uses the
nixcrate for safeioctlmacros. - Includes all
UI_*constants and corresponding helper functions:ui_dev_create,ui_dev_destroyui_dev_setup,ui_abs_setupui_set_evbit,ui_set_keybit, ...ui_begin_ff_upload,ui_end_ff_upload, etc.
🧰 Example
⚠️ Requires Linux and appropriate permissions to access
/dev/uinput.
🧩 Related Crates
uinput: High-level abstraction for creating virtual input devices.nix: Provides low-level Unix system call wrappers andioctlmacros.
📜 License
Licensed under the MIT License.
👤 Author
Johannes Leupolz dev@leupolz.eu