oxidekeys

Crates.iooxidekeys
lib.rsoxidekeys
version0.1.1
created_at2025-09-20 16:18:29.33199+00
updated_at2025-09-20 19:41:55.9132+00
descriptionA utility to give you agency over your keyboards
homepage
repository
max_upload_size
id1847912
size49,849
Matthew Wilding (mbwilding)

documentation

README

OxideKeys

Overview

A utility to give you agency over your keyboards. Utilizes uinput for virtualizing the keyboards.

  • Remapping: Remap keys
  • Dual function keys: tap, hold remapping on a single key, overlap causes hold without delay times
  • Layers: Hold a key and remap to anything
  • Home-Row Mods: Allows setting home-row keys to be modifier keys on hold, time based

Install

cargo install --locked oxidekeys

Setup

sudo usermod -aG input $USER
echo 'KERNEL=="uinput", MODE="0660", GROUP="input"' | sudo tee /etc/udev/rules.d/99-uinput.rules > /dev/null
echo uinput | sudo tee /etc/modules-load.d/uinput.conf > /dev/null

Config

Default config location: ~/.config/oxidekeys/config.yml

You can also change the hrm_term per key, if not specified, it uses the global hrm_term.

Commit count: 0

cargo fmt