redxtech / xremap-flake

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

What this is

This is a Nix flake that installs and configures xremap.

Flake allows running xremap as a system-wide service and as a user service (controlled by services.xremap.serviceMode option).

Flake implements xremap features that allow specifying per-application remapping. Following combinations are tested:

Scenario No features KDE Sway Gnome X11 Hyprland
System ✔️ ✖️ ✔️* ✖️ ✔️ ✖️**
User ✔️ ✔️ ✔️ ✔️ ✔️

✔️ – tested, works ✖️ – not implemented ❓ – not tested

*: Sway system mode requires restarting the system service after user logs in for the service to pick up the Sway socket.

**: Hyprland feature can be enabled, but the service cannot find a socket

How to use

TL;DR:

  1. Import one of this flake's modules (xremap-flake.nixosModules.default or xremap-flake.homeManagerModules.default)
  2. (optional) configure xremap for your DE (services.xremap.withWlroots/withX11/etc., see HOWTO)
  3. Configure xremap binds in services.xremap.config

See HOWTO for more information and sample configs.

Developemnt

The nix flake comes with a few VM presets that can be used to test some of the combinations. To run a specific VM:

nix run '.#nixosConfigurations.hyprland-user-dev.config.system.build.vm

where hyprland-user-dev is the name of the nixosConfiguration you want to launch

About

License:MIT License


Languages

Language:Nix 100.0%