38 lines
2.1 KiB
Markdown
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`).
|