evremap is a free keyboard input remapper for Linux systems, including Wayland, X11, and the Linux console. It works at the evdev layer, taking exclusive access to a selected input device and sending changed input through a virtual output device. A TOML configuration selects a device by name and can add its physical identifier when names overlap. Rules support dual-role keys, allowing a tap and a hold to produce different outputs, such as Escape on tap and Ctrl while held. Combination mappings can turn Alt plus an arrow into Page Up, Page Down, Home, or End, and can emit one or more output keys. Dual-role rules run first, followed by remaps in file order. The command-line tool lists devices and keys. The project includes service guidance for systemd, runit, and OpenRC, plus a pointer to Evremap-GUI. Building uses libevdev development packages, pkg-config, and cargo build --release. Running requires root or suitable evdev and uinput permissions.
Who it is for
evremap suits Linux users who need system-wide keyboard changes under Wayland, X11, or the console. It is aimed at people comfortable with TOML configuration, device permissions, and command-line setup.
What is good
- Works across Wayland, X11, and Linux console
- Supports tap-versus-hold dual-role keys
- Maps combinations to one or more output keys
- Lists devices and keys from the command line
- Includes systemd, runit, and OpenRC guidance
What to know first
- Requires exclusive access to an input device
- Needs root or evdev and uinput permissions
- Building requires development packages and Cargo
- Keypress command execution is not implemented
Verdict
evremap provides detailed, system-wide Linux remapping with dual-role and combination rules. Its permission, build, and configuration requirements make it better suited to technically experienced users.
Compared on keyboard and mouse customization software
- Free plan
- Yes
- Supported operating systems
- linux

