about summary refs log tree commit diff
path: root/nixos
diff options
context:
space:
mode:
authorFelix Bühler2024-08-30 23:15:31 +0200
committerGitHub2024-08-30 23:15:31 +0200
commit30eba5df5538ec46ada854167701bb7c8e42956e (patch)
treea89ba8c3720d7d09395488b9b589898afcd38034 /nixos
parentb762fd2bfd8b56fb5f9125fd7335d9ddca80603f (diff)
parent3314fc72159b2e90a841c7e12efa9949ab6cfe2b (diff)
nixos/services.libinput: remove `with lib;` (#338054)
Diffstat (limited to 'nixos')
-rw-r--r--nixos/modules/services/hardware/libinput.nix143
1 files changed, 70 insertions, 73 deletions
diff --git a/nixos/modules/services/hardware/libinput.nix b/nixos/modules/services/hardware/libinput.nix
index d79055cb8d83..e8169af40637 100644
--- a/nixos/modules/services/hardware/libinput.nix
+++ b/nixos/modules/services/hardware/libinput.nix
@@ -1,14 +1,11 @@
 { config, lib, pkgs, ... }:
-
-with lib;
-
 let cfg = config.services.libinput;
 
     xorgBool = v: if v then "on" else "off";
 
     mkConfigForDevice = deviceType: {
-      dev = mkOption {
-        type = types.nullOr types.str;
+      dev = lib.mkOption {
+        type = lib.types.nullOr lib.types.str;
         default = null;
         example = "/dev/input/event0";
         description = ''
@@ -17,8 +14,8 @@ let cfg = config.services.libinput;
           '';
       };
 
-      accelProfile = mkOption {
-        type = types.enum [ "flat" "adaptive" "custom" ];
+      accelProfile = lib.mkOption {
+        type = lib.types.enum [ "flat" "adaptive" "custom" ];
         default = "adaptive";
         example = "flat";
         description = ''
@@ -36,8 +33,8 @@ let cfg = config.services.libinput;
           '';
       };
 
-      accelSpeed = mkOption {
-        type = types.nullOr types.str;
+      accelSpeed = lib.mkOption {
+        type = lib.types.nullOr lib.types.str;
         default = null;
         example = "-0.5";
         description = ''
@@ -46,8 +43,8 @@ let cfg = config.services.libinput;
           '';
       };
 
-      accelPointsFallback = mkOption {
-        type = types.nullOr (types.listOf types.number);
+      accelPointsFallback = lib.mkOption {
+        type = lib.types.nullOr (lib.types.listOf lib.types.number);
         default = null;
         example = [ 0.0 1.0 2.4 2.5 ];
         description = ''
@@ -56,8 +53,8 @@ let cfg = config.services.libinput;
           '';
       };
 
-      accelPointsMotion = mkOption {
-        type = types.nullOr (types.listOf types.number);
+      accelPointsMotion = lib.mkOption {
+        type = lib.types.nullOr (lib.types.listOf lib.types.number);
         default = null;
         example = [ 0.0 1.0 2.4 2.5 ];
         description = ''
@@ -66,8 +63,8 @@ let cfg = config.services.libinput;
           '';
       };
 
-      accelPointsScroll = mkOption {
-        type = types.nullOr (types.listOf types.number);
+      accelPointsScroll = lib.mkOption {
+        type = lib.types.nullOr (lib.types.listOf lib.types.number);
         default = null;
         example = [ 0.0 1.0 2.4 2.5 ];
         description = ''
@@ -76,8 +73,8 @@ let cfg = config.services.libinput;
           '';
       };
 
-      accelStepFallback = mkOption {
-        type = types.nullOr types.number;
+      accelStepFallback = lib.mkOption {
+        type = lib.types.nullOr lib.types.number;
         default = null;
         example = 0.1;
         description = ''
@@ -87,8 +84,8 @@ let cfg = config.services.libinput;
           '';
       };
 
-      accelStepMotion = mkOption {
-        type = types.nullOr types.number;
+      accelStepMotion = lib.mkOption {
+        type = lib.types.nullOr lib.types.number;
         default = null;
         example = 0.1;
         description = ''
@@ -98,8 +95,8 @@ let cfg = config.services.libinput;
           '';
       };
 
-      accelStepScroll = mkOption {
-        type = types.nullOr types.number;
+      accelStepScroll = lib.mkOption {
+        type = lib.types.nullOr lib.types.number;
         default = null;
         example = 0.1;
         description = ''
@@ -109,8 +106,8 @@ let cfg = config.services.libinput;
           '';
       };
 
-      buttonMapping = mkOption {
-        type = types.nullOr types.str;
+      buttonMapping = lib.mkOption {
+        type = lib.types.nullOr lib.types.str;
         default = null;
         example = "1 6 3 4 5 0 7";
         description = ''
@@ -123,8 +120,8 @@ let cfg = config.services.libinput;
           '';
       };
 
-      calibrationMatrix = mkOption {
-        type = types.nullOr types.str;
+      calibrationMatrix = lib.mkOption {
+        type = lib.types.nullOr lib.types.str;
         default = null;
         example = "0.5 0 0 0 0.8 0.1 0 0 1";
         description = ''
@@ -133,8 +130,8 @@ let cfg = config.services.libinput;
           '';
       };
 
-      clickMethod = mkOption {
-        type = types.nullOr (types.enum [ "none" "buttonareas" "clickfinger" ]);
+      clickMethod = lib.mkOption {
+        type = lib.types.nullOr (lib.types.enum [ "none" "buttonareas" "clickfinger" ]);
         default = null;
         example = "buttonareas";
         description = ''
@@ -145,14 +142,14 @@ let cfg = config.services.libinput;
           '';
       };
 
-      leftHanded = mkOption {
-        type = types.bool;
+      leftHanded = lib.mkOption {
+        type = lib.types.bool;
         default = false;
         description = "Enables left-handed button orientation, i.e. swapping left and right buttons.";
       };
 
-      middleEmulation = mkOption {
-        type = types.bool;
+      middleEmulation = lib.mkOption {
+        type = lib.types.bool;
         default = true;
         description = ''
             Enables middle button emulation. When enabled, pressing the left and right buttons
@@ -160,14 +157,14 @@ let cfg = config.services.libinput;
           '';
       };
 
-      naturalScrolling = mkOption {
-        type = types.bool;
+      naturalScrolling = lib.mkOption {
+        type = lib.types.bool;
         default = false;
         description = "Enables or disables natural scrolling behavior.";
       };
 
-      scrollButton = mkOption {
-        type = types.nullOr types.int;
+      scrollButton = lib.mkOption {
+        type = lib.types.nullOr lib.types.int;
         default = null;
         example = 1;
         description = ''
@@ -176,8 +173,8 @@ let cfg = config.services.libinput;
           '';
       };
 
-      scrollMethod = mkOption {
-        type = types.enum [ "twofinger" "edge" "button" "none" ];
+      scrollMethod = lib.mkOption {
+        type = lib.types.enum [ "twofinger" "edge" "button" "none" ];
         default = "twofinger";
         example = "edge";
         description = ''
@@ -186,8 +183,8 @@ let cfg = config.services.libinput;
           '';
       };
 
-      horizontalScrolling = mkOption {
-        type = types.bool;
+      horizontalScrolling = lib.mkOption {
+        type = lib.types.bool;
         default = true;
         description = ''
             Enables or disables horizontal scrolling. When disabled, this driver will discard any
@@ -196,8 +193,8 @@ let cfg = config.services.libinput;
           '';
       };
 
-      sendEventsMode = mkOption {
-        type = types.enum [ "disabled" "enabled" "disabled-on-external-mouse" ];
+      sendEventsMode = lib.mkOption {
+        type = lib.types.enum [ "disabled" "enabled" "disabled-on-external-mouse" ];
         default = "enabled";
         example = "disabled";
         description = ''
@@ -206,24 +203,24 @@ let cfg = config.services.libinput;
           '';
       };
 
-      tapping = mkOption {
-        type = types.bool;
+      tapping = lib.mkOption {
+        type = lib.types.bool;
         default = true;
         description = ''
             Enables or disables tap-to-click behavior.
           '';
       };
 
-      tappingButtonMap = mkOption {
-        type = types.nullOr (types.enum [ "lrm" "lmr" ]);
+      tappingButtonMap = lib.mkOption {
+        type = lib.types.nullOr (lib.types.enum [ "lrm" "lmr" ]);
         default = null;
         description = ''
           Set the button mapping for 1/2/3-finger taps to left/right/middle or left/middle/right, respectively.
         '';
       };
 
-      tappingDragLock = mkOption {
-        type = types.bool;
+      tappingDragLock = lib.mkOption {
+        type = lib.types.bool;
         default = true;
         description = ''
             Enables or disables drag lock during tapping behavior. When enabled, a finger up during tap-
@@ -232,8 +229,8 @@ let cfg = config.services.libinput;
           '';
       };
 
-      transformationMatrix = mkOption {
-        type = types.nullOr types.str;
+      transformationMatrix = lib.mkOption {
+        type = lib.types.nullOr lib.types.str;
         default = null;
         example = "0.5 0 0 0 0.8 0.1 0 0 1";
         description = ''
@@ -242,16 +239,16 @@ let cfg = config.services.libinput;
         '';
       };
 
-      disableWhileTyping = mkOption {
-        type = types.bool;
+      disableWhileTyping = lib.mkOption {
+        type = lib.types.bool;
         default = false;
         description = ''
             Disable input method while typing.
           '';
       };
 
-      additionalOptions = mkOption {
-        type = types.lines;
+      additionalOptions = lib.mkOption {
+        type = lib.types.lines;
         default = "";
         example =
         ''
@@ -269,28 +266,28 @@ let cfg = config.services.libinput;
       Identifier "libinput ${deviceType} configuration"
       MatchDriver "libinput"
       MatchIs${matchIs} "${xorgBool true}"
-      ${optionalString (cfg.${deviceType}.dev != null) ''MatchDevicePath "${cfg.${deviceType}.dev}"''}
+      ${lib.optionalString (cfg.${deviceType}.dev != null) ''MatchDevicePath "${cfg.${deviceType}.dev}"''}
       Option "AccelProfile" "${cfg.${deviceType}.accelProfile}"
-      ${optionalString (cfg.${deviceType}.accelSpeed != null) ''Option "AccelSpeed" "${cfg.${deviceType}.accelSpeed}"''}
-      ${optionalString (cfg.${deviceType}.accelPointsFallback != null) ''Option "AccelPointsFallback" "${toString cfg.${deviceType}.accelPointsFallback}"''}
-      ${optionalString (cfg.${deviceType}.accelPointsMotion != null) ''Option "AccelPointsMotion" "${toString cfg.${deviceType}.accelPointsMotion}"''}
-      ${optionalString (cfg.${deviceType}.accelPointsScroll != null) ''Option "AccelPointsScroll" "${toString cfg.${deviceType}.accelPointsScroll}"''}
-      ${optionalString (cfg.${deviceType}.accelStepFallback != null) ''Option "AccelStepFallback" "${toString cfg.${deviceType}.accelStepFallback}"''}
-      ${optionalString (cfg.${deviceType}.accelStepMotion != null) ''Option "AccelStepMotion" "${toString cfg.${deviceType}.accelStepMotion}"''}
-      ${optionalString (cfg.${deviceType}.accelStepScroll != null) ''Option "AccelStepScroll" "${toString cfg.${deviceType}.accelStepScroll}"''}
-      ${optionalString (cfg.${deviceType}.buttonMapping != null) ''Option "ButtonMapping" "${cfg.${deviceType}.buttonMapping}"''}
-      ${optionalString (cfg.${deviceType}.calibrationMatrix != null) ''Option "CalibrationMatrix" "${cfg.${deviceType}.calibrationMatrix}"''}
-      ${optionalString (cfg.${deviceType}.transformationMatrix != null) ''Option "TransformationMatrix" "${cfg.${deviceType}.transformationMatrix}"''}
-      ${optionalString (cfg.${deviceType}.clickMethod != null) ''Option "ClickMethod" "${cfg.${deviceType}.clickMethod}"''}
+      ${lib.optionalString (cfg.${deviceType}.accelSpeed != null) ''Option "AccelSpeed" "${cfg.${deviceType}.accelSpeed}"''}
+      ${lib.optionalString (cfg.${deviceType}.accelPointsFallback != null) ''Option "AccelPointsFallback" "${toString cfg.${deviceType}.accelPointsFallback}"''}
+      ${lib.optionalString (cfg.${deviceType}.accelPointsMotion != null) ''Option "AccelPointsMotion" "${toString cfg.${deviceType}.accelPointsMotion}"''}
+      ${lib.optionalString (cfg.${deviceType}.accelPointsScroll != null) ''Option "AccelPointsScroll" "${toString cfg.${deviceType}.accelPointsScroll}"''}
+      ${lib.optionalString (cfg.${deviceType}.accelStepFallback != null) ''Option "AccelStepFallback" "${toString cfg.${deviceType}.accelStepFallback}"''}
+      ${lib.optionalString (cfg.${deviceType}.accelStepMotion != null) ''Option "AccelStepMotion" "${toString cfg.${deviceType}.accelStepMotion}"''}
+      ${lib.optionalString (cfg.${deviceType}.accelStepScroll != null) ''Option "AccelStepScroll" "${toString cfg.${deviceType}.accelStepScroll}"''}
+      ${lib.optionalString (cfg.${deviceType}.buttonMapping != null) ''Option "ButtonMapping" "${cfg.${deviceType}.buttonMapping}"''}
+      ${lib.optionalString (cfg.${deviceType}.calibrationMatrix != null) ''Option "CalibrationMatrix" "${cfg.${deviceType}.calibrationMatrix}"''}
+      ${lib.optionalString (cfg.${deviceType}.transformationMatrix != null) ''Option "TransformationMatrix" "${cfg.${deviceType}.transformationMatrix}"''}
+      ${lib.optionalString (cfg.${deviceType}.clickMethod != null) ''Option "ClickMethod" "${cfg.${deviceType}.clickMethod}"''}
       Option "LeftHanded" "${xorgBool cfg.${deviceType}.leftHanded}"
       Option "MiddleEmulation" "${xorgBool cfg.${deviceType}.middleEmulation}"
       Option "NaturalScrolling" "${xorgBool cfg.${deviceType}.naturalScrolling}"
-      ${optionalString (cfg.${deviceType}.scrollButton != null) ''Option "ScrollButton" "${toString cfg.${deviceType}.scrollButton}"''}
+      ${lib.optionalString (cfg.${deviceType}.scrollButton != null) ''Option "ScrollButton" "${toString cfg.${deviceType}.scrollButton}"''}
       Option "ScrollMethod" "${cfg.${deviceType}.scrollMethod}"
       Option "HorizontalScrolling" "${xorgBool cfg.${deviceType}.horizontalScrolling}"
       Option "SendEventsMode" "${cfg.${deviceType}.sendEventsMode}"
       Option "Tapping" "${xorgBool cfg.${deviceType}.tapping}"
-      ${optionalString (cfg.${deviceType}.tappingButtonMap != null) ''Option "TappingButtonMap" "${cfg.${deviceType}.tappingButtonMap}"''}
+      ${lib.optionalString (cfg.${deviceType}.tappingButtonMap != null) ''Option "TappingButtonMap" "${cfg.${deviceType}.tappingButtonMap}"''}
       Option "TappingDragLock" "${xorgBool cfg.${deviceType}.tappingDragLock}"
       Option "DisableWhileTyping" "${xorgBool cfg.${deviceType}.disableWhileTyping}"
       ${cfg.${deviceType}.additionalOptions}
@@ -298,7 +295,7 @@ let cfg = config.services.libinput;
 in {
 
   imports =
-    (map (option: mkRenamedOptionModule ([ "services" "xserver" "libinput" option ]) [ "services" "libinput" "touchpad" option ]) [
+    (map (option: lib.mkRenamedOptionModule ([ "services" "xserver" "libinput" option ]) [ "services" "libinput" "touchpad" option ]) [
       "accelProfile"
       "accelSpeed"
       "buttonMapping"
@@ -318,15 +315,15 @@ in {
       "disableWhileTyping"
       "additionalOptions"
     ]) ++ [
-      (mkRenamedOptionModule [ "services" "xserver" "libinput" "enable" ]   [ "services" "libinput" "enable" ])
-      (mkRenamedOptionModule [ "services" "xserver" "libinput" "mouse" ]    [ "services" "libinput" "mouse" ])
-      (mkRenamedOptionModule [ "services" "xserver" "libinput" "touchpad" ] [ "services" "libinput" "touchpad" ])
+      (lib.mkRenamedOptionModule [ "services" "xserver" "libinput" "enable" ]   [ "services" "libinput" "enable" ])
+      (lib.mkRenamedOptionModule [ "services" "xserver" "libinput" "mouse" ]    [ "services" "libinput" "mouse" ])
+      (lib.mkRenamedOptionModule [ "services" "xserver" "libinput" "touchpad" ] [ "services" "libinput" "touchpad" ])
     ];
 
   options = {
 
     services.libinput = {
-      enable = mkEnableOption "libinput" // {
+      enable = lib.mkEnableOption "libinput" // {
         default = config.services.xserver.enable;
         defaultText = lib.literalExpression "config.services.xserver.enable";
       };
@@ -336,7 +333,7 @@ in {
   };
 
 
-  config = mkIf cfg.enable {
+  config = lib.mkIf cfg.enable {
 
     services.xserver.modules = [ pkgs.xorg.xf86inputlibinput ];