1
0
mirror of https://github.com/NixOS/nixos-hardware synced 2024-06-28 23:48:33 +02:00
nixos-hardware/lenovo/thinkpad/z/gen2/default.nix
Mic92 e1c4bac14b Lenovo ThinkPad Z13 Gen 2 (#844)
lenovo-thinkpad-z: remove HiDPI

* lenovo-thinkpad-z: move z13 to gen1/z13, leave generic settings

* lenovo-thinkpad-z-gen2: add z13

* Update lenovo/thinkpad/z/gen2/default.nix

* Update lenovo/thinkpad/z/gen2/default.nix
2024-04-10 14:46:44 +00:00

45 lines
1.2 KiB
Nix

{ lib, pkgs, ... }:
{
imports = [
../../../../lenovo/thinkpad/z
];
# Kernel 6.4 is required for the Ryzen 7040 series
boot.kernelPackages = lib.mkIf (lib.versionOlder pkgs.linux.version "6.4") (lib.mkDefault pkgs.linuxPackages_latest);
systemd.services = {
# Modified from Arch Wiki
"touchpad-fix" = {
enable = lib.mkDefault true;
description = "I2C HID devices can fail to initialize so try to reload";
unitConfig = {
Type = "oneshot";
};
serviceConfig = {
User = "root";
};
wantedBy = [ "multi-user.target" ];
after = [ "multi-user.target" ];
script = ''
count=0
while true; do
${lib.getExe pkgs.libinput} list-devices | ${lib.getExe pkgs.gnugrep} --quiet SNSL && break
count=$((count + 1))
if test $count -ge 5; then
echo "Touchpad not read after $count attempts"
break
fi
echo "Touchpad not ready; attempt $count to reload"
${pkgs.kmod}/bin/rmmod i2c_hid_acpi
${pkgs.kmod}/bin/modprobe i2c_hid_acpi
sleep $((2 + (count * 3)))
done
'';
};
};
}