Add a udev rule (t480UsbWakeup) that arms USB remote-wakeup for a keyboard on the built-in xHCI controller (00:14.0), so pressing a key wakes the T480 from S3. The dock connects over the Thunderbolt-3 controller (3c:00.0), which powers down in S3 and cannot detect a cold replug, so dock-connected input cannot wake the machine after an unplug-triggered suspend; a built-in-port keyboard can. Match the keyboard by VID:PID since its USB bus path is unstable. Also wires up the logind lid-switch policy (suspend undocked, ignore docked) for the clamshell workflow.
32 lines
657 B
Nix
32 lines
657 B
Nix
{
|
|
self,
|
|
inputs,
|
|
...
|
|
}: {
|
|
flake.nixosConfigurations.t480 = inputs.nixpkgs.lib.nixosSystem {
|
|
modules = with self.nixosModules; [
|
|
./_hardware.nix
|
|
t480Disks
|
|
t480Configuration
|
|
desktop
|
|
# CPU microcode + integrated Intel GPU. The T480 also has an NVIDIA MX150;
|
|
# to enable it in PRIME offload mode, swap gpuIntel for gpuNvidiaPrime
|
|
# (which includes gpuIntel). Left on Intel-only by default to save power.
|
|
cpuIntel
|
|
gpuIntel
|
|
development
|
|
feishin
|
|
obsidian
|
|
discord
|
|
gaming
|
|
winbox
|
|
cad
|
|
prusa-slicer
|
|
netops
|
|
via
|
|
t480UsbWakeup
|
|
];
|
|
};
|
|
}
|
|
|