modules: hardware: add mx-ergo
This adds the ability to scroll using the ball, which is way better.
This commit is contained in:
parent
e7723d5275
commit
a5d63dcf65
|
@ -5,6 +5,7 @@
|
|||
imports = [
|
||||
./bluetooth.nix
|
||||
./ergodox.nix
|
||||
./mx-ergo.nix
|
||||
./networking.nix
|
||||
./sound.nix
|
||||
./upower.nix
|
||||
|
|
26
modules/hardware/mx-ergo.nix
Normal file
26
modules/hardware/mx-ergo.nix
Normal file
|
@ -0,0 +1,26 @@
|
|||
# Hold down the `next page` button to scroll using the ball
|
||||
{ config, lib, ... }:
|
||||
let
|
||||
cfg = config.my.hardware.mx-ergo;
|
||||
in
|
||||
{
|
||||
options.my.hardware.mx-ergo = with lib; {
|
||||
enable = mkEnableOption "MX Ergo configuration";
|
||||
};
|
||||
|
||||
config = lib.mkIf cfg.enable {
|
||||
services.xserver = {
|
||||
# This section must be *after* the one configured by `libinput`
|
||||
# for the `ScrollMethod` configuration to not be overriden
|
||||
inputClassSections = lib.mkAfter [
|
||||
''
|
||||
Identifier "MX Ergo scroll button configuration"
|
||||
MatchProduct "MX Ergo"
|
||||
MatchIsPointer "on"
|
||||
Option "ScrollMethod" "button"
|
||||
Option "ScrollButton" "9"
|
||||
''
|
||||
];
|
||||
};
|
||||
};
|
||||
}
|
Loading…
Reference in a new issue