nixpkgs/nixos/modules/services/x11/hardware
Thiago Kenji Okada cd15b3a30a nixos/libinput: separate settings by mouse/touchpad
This commits deprecates `services.xserver.libinput` for multiple
settings, one for each kind of device:

- `services.xserver.libinput.mouse`
- `services.xserver.libinput.touchpad`

Looking at `man 4 libinput`, they basically have the same options so I
simply replicated them, even if some options doesn't make sense for
mouse (`tapping` for example).

With this commit this is now possible:

```nix
{
  services.xserver.libinput = {
    enable = true;
    mouse = {
      accelProfile = "flat";
    };
    touchpad = {
      naturalScrolling = true;
    };
  };
}
```

And you will have a mouse with no natural scrolling but with accel
profile flat, while touchpad will have natural scrolling but accel
profile adaptative (default).

It is possible to support more device types
(tablets/keyboards/touchscreens), but at least looking at the
libinput manual for those devices it doesn't seem that it has any
configuration options for them. They can still be configured using
`services.xserver.inputClassSections` though, and this will work now
since there is no rule by default that matches them.

Closes issue #75007, while also making configuration of mouses and
touchpads using Nix attrs possible like said in PR #73785.
2021-01-13 09:54:28 -03:00
..
cmt.nix nixos/cmt: Update error message for cmt 2019-10-01 19:43:27 +09:00
digimend.nix treewide: add types to boolean / enable options or make use of mkEnableOption 2020-04-27 09:32:01 +02:00
libinput.nix nixos/libinput: separate settings by mouse/touchpad 2021-01-13 09:54:28 -03:00
synaptics.nix Merge branch 'master' into staging 2019-09-02 23:25:24 +02:00
wacom.nix treewide: add bool type to enable options, or make use of mkEnableOption 2020-04-21 08:55:36 +02:00