v0.2.1-beta Program and daemon for using any midi controller as a macro pad on Linux.
β See Midirun Config for GUI configuration tool!
- Support for Wayland and X11
yay -Syy midirun
# Logout and login to apply user group
sudo usermod -aG input $USER
sudo pacman -S rtmidi tomlplusplus gcc cmake
sudo dnf install rtmidi-devel tomlplusplus-devel meson
sudo apt update
sudo apt install librtmidi-dev meson
git clone https://github.com/JackMechem/MidiRun.git
cd MidiRun
meson setup build
meson compile -C build
meson install -C build
MidiRun needs read and write access to /dev/uinput to simulate key strokes. This script creates a udev rule and gives users in the input group read and write access to /dev/uinput.
./create_udev_rule.sh
# Logout and login to apply user group
sudo usermod -aG input $USER
midirun -h
midirun --list-io
# OR
midirun -lio
midirun -ln 2 # Replace the 2 with what ever port you are using
OR
midirun --listen 2 # Replace the 2 with what ever port you are using
systemctl --user enable midirun
systemctl --user start midirun
midirun
midirun -c /path/to/config.toml
# or
midirun --config /path/to/config.toml
~/.config/midirun/config.toml
β For GUI config tool see midirun-config (recomended)
The config section only contains the input port.
To find the input port, see the listing io section.
[config]
inputPort = 2 # The port of your input device
The mapping section is composed of an array of tables named mapping.
[[mapping]]
name = "Top Left Button"
byte0 = 144
byte1 = 38
key = [2, 3, 4] # Key codes can be found with showkey --keycode
