summary refs log tree commit diff stats
path: root/modules/hardware/thinkpad.nix
diff options
context:
space:
mode:
authorAlan Pearce2017-09-23 13:59:19 +0200
committerAlan Pearce2017-09-23 14:10:26 +0200
commit0f2c55992677e78d5d2908d0648e410ef9b27436 (patch)
treeb2a3432e15dd9af506c317af608ea69721979a41 /modules/hardware/thinkpad.nix
parent496b4ed379afe7f1e0563243a0a5efe0857fe3bb (diff)
downloadnixos-configuration-0f2c55992677e78d5d2908d0648e410ef9b27436.tar.lz
nixos-configuration-0f2c55992677e78d5d2908d0648e410ef9b27436.tar.zst
nixos-configuration-0f2c55992677e78d5d2908d0648e410ef9b27436.zip
Organise modules into folders
Diffstat (limited to 'modules/hardware/thinkpad.nix')
-rw-r--r--modules/hardware/thinkpad.nix36
1 files changed, 36 insertions, 0 deletions
diff --git a/modules/hardware/thinkpad.nix b/modules/hardware/thinkpad.nix
new file mode 100644
index 0000000..1e97f06
--- /dev/null
+++ b/modules/hardware/thinkpad.nix
@@ -0,0 +1,36 @@
+{ config, pkgs, ... }:
+
+{ boot.kernelModules = [ "tp_smapi" ];
+  boot.blacklistedKernelModules = [ "thinkpad_ec" ];
+  boot.extraModulePackages = with config.boot.kernelPackages; [
+    # acpi_call
+    tp_smapi
+  ];
+
+  hardware.trackpoint = {
+    enable = true;
+    emulateWheel = true;
+  };
+
+  services.thinkfan = {
+    enable = true;
+    sensor = "/sys/class/thermal/thermal_zone0/temp";
+  };
+
+  services.tlp = {
+    enable = true;
+    extraConfig = ''
+      # Newer Thinkpads have a battery firmware
+      # it conflicts with TLP if stop thresholds are set
+      START_CHARGE_THRESH_BAT0=70
+      STOP_CHARGE_THRESH_BAT0=80
+      START_CHARGE_THRESH_BAT1=70
+      STOP_CHARGE_THRESH_BAT1=80
+    '';
+  };
+
+  imports = [
+    ./bare-metal.nix
+    ./laptop.nix
+  ];
+}