Skip to content
A small script to read from libinput-debug-events and trigger key commands depending on recognized gestures.
Branch: master
Clone or download
Pull request Compare This branch is 1 commit ahead of shrugal:master.
Type Name Latest commit message Commit time
Failed to load latest commit information.
LICENSE Initial commit Dec 7, 2015 add mouse button functionality Aug 10, 2018
mousemapper.service add mouse button functionality Aug 10, 2018 add mouse button functionality Aug 10, 2018


A small script for mapping mouse buttons to keystrokes on Wayland.

I made for myself to use my mouse extra buttons for useful stuff. It's tested and works with Logitech MX Master 2S on Fedora 27 using Gnome, and works it on my old Logitech Performance MX too. It probably works on any Wayland and Any Logitech mouse (or any mouse if you edit mappings) because no other method (xdotools, xbindkeys, etc.) seemed to work.

It works by reading from libinput debug-events and triggering key events using evemu depending on the recognized button from the recognized device.

Feel free to make PRs to make it configurable or to add more mappings


These are just the default settings, you can customize them at the start of the script.

  • Forward: Move to workspace above (Super+Page up)
  • Back: Move to workspace below (Super+Page down)


The script depends on the following executables being available in your PATH:

  • libinput
  • evemu

to install those just run the following command (with root privileges):

dnf -y install libinput evemu


Run the following command (with root privileges):


Installation (start at boot)

Run the following commands (with root privileges):

cp /usr/bin/mousemapper
cp mousemapper.service /usr/lib/systemd/system/
systemctl enable mousemapper.service
You can’t perform that action at this time.