Skip to content

v1.0.0 — first Debian release

Latest

Choose a tag to compare

@danielrosehill danielrosehill released this 16 Apr 14:02

First packaged release.

Install

sudo apt install ./usb-button-remap_1.0.0.deb

Pulls in keyd, python3-pyqt6, python3-evdev, polkitd.

What's in the box

  • usb-button-remap — PyQt6 GUI. Scans /dev/input/*, scores each device by "is-this-a-simple-button" heuristic (key count, no mouse/tablet axes, no LEDs), optional xev-style press-to-detect, chooses target (F13 / Ctrl+Alt+Space / custom keyd expression), applies via keyd.
  • usb-button-apply <target> [--device VID:PID] [--source-key KEY] — CLI apply.
  • usb-button-toggle — flip between F13 and Ctrl+Alt+Space.
  • System config at /etc/usb-button-remap/env, keyd config at /etc/keyd/usb-button.conf.

Why keyd (vs input-remapper)

keyd is a small C daemon that grabs the physical device at evdev and emits via uinput, running as a system service from boot — mappings are live at the TTY and login screen, not just after user login. See docs/rationale.md in the repo for details.

Target use case

A cheap AliExpress single-button USB HID puck (default VID:PID 5131:2019, default source key KEY_2) used as a transcription trigger. If your device differs, the GUI or --device / --source-key args handle it.