A high-performance, cross-platform VNC client and server for viewing and controlling remote desktops.
sezanzeb/input-remapper
A Linux tool for remapping keys, buttons, and mouse or joystick inputs to other inputs, with macros and X11/Wayland support.
Open-source alternative to:AutoHotkey
- Stars
- 6,019
- Forks
- 234
- Open issues
- 368
- Last commit
- 15 hours ago
What is it?
Input Remapper is a Linux utility for changing how input devices behave. It can map any key, button, or axis to any other input, including keyboards, mice, gamepads, joysticks, wheels, and triggers.
Beyond simple one-to-one mappings, it supports key combinations and programmable macros, along with mouse-movement remapping. It works on both X11 and Wayland sessions, and includes a graphical interface for configuring mappings without editing files by hand.
Installation packages are available for Ubuntu, Debian, Fedora, Arch, and Void, and the project provides instructions for installing from source on other distributions.
Key features
- 01Maps any input device key, button, or axis to another input.
- 02Supports key combinations and programmable macros.
- 03Remaps mouse movement and joystick or wheel axes.
- 04Works on both X11 and Wayland.
- 05Includes a graphical interface for editing mappings.
Use cases
- Remapping a gamepad so buttons send keyboard keys in games that lack controller support.
- Assigning macros to extra mouse buttons for repetitive actions.
- Changing keyboard layouts or shortcuts on a Linux desktop.
- Adjusting joystick or wheel axes to suit a particular game or workflow.
Quick start
- 1
Install the package on Fedora
sudo dnf install input-remapper - 2
Enable and start the input-remapper service
sudo systemctl enable --now input-remapper
Things to know
- Linux only; it does not run on macOS or Windows.
- Licensed under GPL-3.0, a copyleft license that affects how derived code can be distributed.
- On other distros, installation is manual and requires global Python packages and a system service.
Topics
FAQ
- What is input-remapper?
- A Linux tool for remapping keys, buttons, and mouse or joystick inputs to other inputs, with macros and X11/Wayland support. Input Remapper is a Linux utility for changing how input devices behave. It can map any key, button, or axis to any other input, including keyboards, mice, gamepads, joysticks, wheels, and triggers.
- Is input-remapper free to use? What license does it have?
- input-remapper is open source under the GPL-3.0 license. Check the license terms before using it in commercial products.
- Is input-remapper still maintained?
- Actively maintained. The last commit to input-remapper was on Oct 21, 2026.
- What can I use input-remapper for?
- Remapping a gamepad so buttons send keyboard keys in games that lack controller support. Assigning macros to extra mouse buttons for repetitive actions. Changing keyboard layouts or shortcuts on a Linux desktop. Adjusting joystick or wheel axes to suit a particular game or workflow.
- How do I install input-remapper?
- Install the package on Fedora: sudo dnf install input-remapper Enable and start the input-remapper service: sudo systemctl enable --now input-remapper
- Where can I get input-remapper?
- The source code and installation instructions are on GitHub: https://github.com/sezanzeb/input-remapper
Summary generated by AI from the project's README. GitHub stats refresh daily.
Related projects
A free, Apache-licensed implementation of the Remote Desktop Protocol (RDP), providing a library and client applications for connecting to remote desktops.
A browser new-tab extension that shows bookmarks as a keyboard layout and binds browser commands to key combos for one-press access.
A collection of over 30 Windows utilities for customizing the desktop and speeding up everyday tasks, from window layouts to keyboard remapping.
Hyprland desktop dotfiles centered on a Material-themed Quickshell shell with an overview, AI widgets and screen tools for Wayland.
Open-source game launcher that installs and runs games from many eras and platforms by combining emulators, engine re-implementations and compatibility layers.