Merge pull request #44058 from borisbabic/feature/choose-trackpoint-device
trackpoint: Make the device name configurable
This commit is contained in:
commit
66793d9284
@ -55,6 +55,15 @@ with lib;
|
|||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
|
||||||
|
device = mkOption {
|
||||||
|
default = "TPPS/2 IBM TrackPoint";
|
||||||
|
type = types.str;
|
||||||
|
description = ''
|
||||||
|
The device name of the trackpoint. You can check with xinput.
|
||||||
|
Some newer devices (example x1c6) use "TPPS/2 Elan TrackPoint".
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
};
|
};
|
||||||
@ -68,12 +77,12 @@ with lib;
|
|||||||
(mkIf cfg.enable {
|
(mkIf cfg.enable {
|
||||||
services.udev.extraRules =
|
services.udev.extraRules =
|
||||||
''
|
''
|
||||||
ACTION=="add|change", SUBSYSTEM=="input", ATTR{name}=="TPPS/2 IBM TrackPoint", ATTR{device/speed}="${toString cfg.speed}", ATTR{device/sensitivity}="${toString cfg.sensitivity}"
|
ACTION=="add|change", SUBSYSTEM=="input", ATTR{name}=="${cfg.device}", ATTR{device/speed}="${toString cfg.speed}", ATTR{device/sensitivity}="${toString cfg.sensitivity}"
|
||||||
'';
|
'';
|
||||||
|
|
||||||
system.activationScripts.trackpoint =
|
system.activationScripts.trackpoint =
|
||||||
''
|
''
|
||||||
${config.systemd.package}/bin/udevadm trigger --attr-match=name="TPPS/2 IBM TrackPoint"
|
${config.systemd.package}/bin/udevadm trigger --attr-match=name="${cfg.device}"
|
||||||
'';
|
'';
|
||||||
})
|
})
|
||||||
|
|
||||||
@ -81,7 +90,7 @@ with lib;
|
|||||||
services.xserver.inputClassSections =
|
services.xserver.inputClassSections =
|
||||||
[''
|
[''
|
||||||
Identifier "Trackpoint Wheel Emulation"
|
Identifier "Trackpoint Wheel Emulation"
|
||||||
MatchProduct "${if cfg.fakeButtons then "PS/2 Generic Mouse" else "ETPS/2 Elantech TrackPoint|Elantech PS/2 TrackPoint|TPPS/2 IBM TrackPoint|DualPoint Stick|Synaptics Inc. Composite TouchPad / TrackPoint|ThinkPad USB Keyboard with TrackPoint|USB Trackpoint pointing device|Composite TouchPad / TrackPoint"}"
|
MatchProduct "${if cfg.fakeButtons then "PS/2 Generic Mouse" else "ETPS/2 Elantech TrackPoint|Elantech PS/2 TrackPoint|TPPS/2 IBM TrackPoint|DualPoint Stick|Synaptics Inc. Composite TouchPad / TrackPoint|ThinkPad USB Keyboard with TrackPoint|USB Trackpoint pointing device|Composite TouchPad / TrackPoint|${cfg.device}"}"
|
||||||
MatchDevicePath "/dev/input/event*"
|
MatchDevicePath "/dev/input/event*"
|
||||||
Option "EmulateWheel" "true"
|
Option "EmulateWheel" "true"
|
||||||
Option "EmulateWheelButton" "2"
|
Option "EmulateWheelButton" "2"
|
||||||
|
Loading…
Reference in New Issue
Block a user