19

Is it possible to stop my laptop going to sleep when I close the lid?

GNOME 3.20, Fedora 24.


My laptop does not reliably wake from sleep. (It happens to be a hardware issue... I think I basically killed it while trying to replace a wifi card. But I want to keep using it for a while longer).

23

Install GNOME Tweak Tool and go to the Power section. There's an option to disable the automatic suspend on lid close.

Option details

I compared dconf before and after to find the option, but it turns out that's not how it's implemented. Instead, Tweak Tool creates ~/.config/autostart/ignore-lid-switch-tweak.desktop. The autostart is a script which effectively runs systemd-inhibit --what=handle-lid-switch. So we can see the lid close action is handled purely by systemd-logind.

Alternative route

An alternative would be to edit /etc/systemd/logind.conf to include:

HandleLidSwitch=ignore

This would work all the time, not just when your user is logged in.

  • 1
    Also described in the gnome on-line help – don_crissti Sep 2 '16 at 17:56
  • Lol. It comes up in search results (8th down)... but I was searching "disable" instead of "stop". In that case Google shows the snippet "When you close the lid of your laptop, your computer will suspend in order to save power", and nothing else. I suspect I saw that, but I didn't think it was a promising avenue of investigation! I mainly posted this question to get an answer into the Google results. At least that's worked :). google.com/search?q=gnome+stop+lid+close+suspend – sourcejedi Sep 2 '16 at 19:21
  • 4
    Editing /etc/systemd/logind.conf instead of using GNOME Tweak Tool may be better because it works even when GNOME is not running, for example when working at the console. – Francesco Turco Sep 3 '16 at 17:41
  • 1
    @Ash thanks for the report, if you want to talk about collecting more information on that, it would probably work best elsewhere e.g. a separate question on this site, or a report on the Ubuntu bug tracker. – sourcejedi Nov 4 '18 at 16:59
  • 1
    @sourcejedi I've got nvidia graphics -- which may be a big part of the problem :) – jocull Nov 9 '18 at 19:50
4

Unfortunately, the inhibitor routes didn't seem to work as advertised for me on openSUSE Tumbleweed (42.1) using GNOME. But, I had success with Systemd masking:

systemctl mask sleep.target suspend.target

To undo the mask, you can use unmask:

systemctl unmask sleep.target suspend.target
2

I had solved this issue once before, but it seems the latest versions of Fedora (I'm on Fedora 28 now), requires these two entries now, whereas before only the first one was necessary:

user$ sudo vi /etc/systemd/logind.conf

HandleLidSwitch=ignore        <---- Set both of these
HandleLidSwitchDocked=ignore  <---- to ignore lid events.

user$ sudo systemctl restart systemd-logind

EDIT: As mentioned by commenters below, you might want to just reboot after making the edits.

  • 1
    Thanks! It would be safer to reboot though. If you restart logind on a default Fedora system, your graphical X session(s) will die (same with any Wayland compositor that I know about). – sourcejedi Oct 24 '18 at 7:59
  • This worked great for me! But I would suggest just rebooting also. When I restarted systemd it got weird and I had to kill the machine anyway. – jocull Nov 9 '18 at 15:26

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.