about summary refs log tree commit diff
path: root/nixpkgs/nixos/modules/hardware/uinput.nix
blob: 15fa66b8d83c5e407411e89c2eb20080f7d41be9 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
{ config, pkgs, lib, ... }:

let
  cfg = config.hardware.uinput;
in {
  options.hardware.uinput = {
    enable = lib.mkEnableOption (lib.mdDoc "uinput support");
  };

  config = lib.mkIf cfg.enable {
    boot.kernelModules = [ "uinput" ];

    users.groups.uinput = {};

    services.udev.extraRules = ''
      SUBSYSTEM=="misc", KERNEL=="uinput", MODE="0660", GROUP="uinput", OPTIONS+="static_node=uinput"
    '';
  };
}