makima/README.md
2023-06-10 21:09:42 +02:00

38 lines
2.1 KiB
Markdown

# makima
Makima is a daemon for Linux to bind your controller's buttons to key sequences and macros.
## Features:
- Configure your keybindings through a simple TOML config file
- Bind single keys/buttons or entire macros, sequences and shortcuts
- Supports keyboard keys, mouse buttons and any other input event that's in `/usr/include/linux/input-event-codes.h`
- Move your cursor using analog sticks with adjustable sensitivity
- Hotplug to connect and disconnect your controllers whenever you want
- Connect multiple controllers at the same time so your little brother can join and close your IDE when you least expect it
- Supports wired and Bluetooth connections
- Written in Rust so it's blazingly fast or something? (it only uses 3.5 MB of RAM)
## Tested controllers:
- DualShock 2
- DualShock 3
- DualShock 4
- DualSense
- Xbox 360
- Xbox One
- Xbox Elite 2
- Stadia
- Switch Joy-Cons
## How to use:
1. Download the executable from the Releases page or compile it yourself using Cargo.
2. Pick a config file compatible with your controller(s) from the "config examples" folder and put it in `~/.config/makima`, rename it to `config.toml`.
3. Customize the keybindings to your liking. Info about the specific configs is commented inside the config files.
4. Make sure the executable has permission to be executed as a program. If not, `cd` to the directory of the executable and use `chmod +x makima`.
5. Make sure your user has access to event devices. If it doesn't, use `sudo usermod -aG input yourusername`.
6. Launch Makima and it'll automatically recognize all connected controllers.
- You can either:
- Launch it from your file manager by double clicking.
- Launch it from terminal by `cd`ing to the directory of the executable, then using `./makima`.
- Move the executable to a directory that's in PATH, then launch it using `rofi`, `dmenu` or whatever launcher you use. I personally added `~/.local/share/bin` to PATH and put all my executables there.
- Create a .desktop file and launch it from there.
- Autostart it from your window manager's config file (usually `exec /path/to/makima`).