Laptop does not suspend when lid is closed

My laptop does not suspend when I close the lid. It’s a Lenovo X1C Carbon.

The lid closing is properly detected as logged by journalctl:

May 06 20:49:42 nixos systemd-logind[917]: Lid closed.
May 06 20:49:44 nixos systemd-logind[917]: Lid opened.

I set

services.logind.lidSwitch = "suspend";

I tried to suspend manually and it works fine.

systemctl suspend

Any advice?

1 Like

are you using a desktop environment? i am having an issue similar to this recently too after switching from kde to niri and haven’t had time/motivation to look into it yet

1 Like

I’m using xfce4 and it looks like it’s intercepting the logind lid events and doing its own thing. There is supposed to be a way to tell xfce4 to not do that, but so far, no luck getting it to work.

My guess is niri is trying to handle those events for you.

specifically niri has a lid open and lid closed event… they don’t trigger for me! i would throw a systemctl suspend in there if they did fire

soon my patience will run thin and i’ll spend a few minutes to look into and (hopefully quickly) resolve this, i’m sure