auto-suspend can't be disabled when GDM is active
With GNOME 3.28, system automatically suspends after 20 minutes. That can be adjusted/disabled in system settings - however, it only applies to that particular user session. When GDM is the active screen, the system still suspends after 20 minutes, and there's no way to configure that. That affects e.g. the following use cases:
a) fast user switching - see gnome-settings-daemon#18 (closed) for a detailed description
b) sharing files - if you start your computer just to access your files remotely (i.e. presenting your wedding pictures on your living room laptop/TV from your desktop in study room), there's no reason to log in - but it means your system will auto-suspend
c) working over ssh - starting the system either locally or remotely just to connect over ssh means your system will get suspended in 20 minutes regardless of your activity in ssh console. This also applies e.g. when debugging graphical login failures.
d) and probably many more
Version-Release number of selected component (if applicable):
gnome-shell-3.28.0-1.fc28.x86_64
mutter-3.28.0-1.fc28.x86_64
gnome-settings-daemon-3.28.0-1.fc28.x86_64
gdm-3.28.0-1.fc28.x86_64
How reproducible: always
Steps to Reproduce:
- disable auto-suspend in your GNOME settings
- log out to GDM
- see system suspend after 20 minutes
- try to find a way how to disable that (I currently don't know the solution to this, it's definitely not easy and straightforward)
The downstream report for this: https://bugzilla.redhat.com/show_bug.cgi?id=1558485
Bastien said this is a gnome-control-center issue in gnome-settings-daemon#18 (closed) , that's why I file it here. He says:
It's working as designed, gnome-control-center changes the current user's defaults.
which is exactly the problem, it only changes a per-user setting, but doesn't allow to change the global setting. So auto-suspend is effectively forced on and can't be disabled by users (in certain situations, like in GDM).
Also
I don't see how GDM suspending after 20 minutes is a problem here.
I simply don't agree with this. Are you really writing a system where user has no choice in this?
My proposed solution on Fedora desktop list:
The solution could be either to implement it as a global system-wide option that only admin users can set and it applies system-wide (all users, gdm), or keep it as a per-user option but allow admin users to configure the global value as well (the same way regional settings can be set for the "logging screen"). Even the same paradigm as with regional settings can be used (which I'm not very fond of, but whatever) - when there's only a single user configured on the system, the option looks like local, but affects the whole system, and when multiple users are configured, it splits into local and global option.