20

I'm using Arch Linux + GNOME3 on desktop, and when the system starts or the user logs out, gdm displays the login screen for about 20 seconds and then turns off the display (although the computer is still running). Is it possible to disable this? I want the monitor to keep displaying the login screen "forever". I couldn't find any way to configure this.

6 Answers 6

15

That's because of the idle-delay setting. To change it you'll have to alter the corresponding dconf key (and do that as the gdm user):

  1. switch to a VT (e.g. Ctrl+Alt+F3), login as root and run:

    su - gdm -s /bin/sh
    

    to switch user to gdm.

  2. then run:

    export $(dbus-launch)
    

    and set idle delay to 0 (which translates to never):

    GSETTINGS_BACKEND=dconf gsettings set org.gnome.desktop.session idle-delay 0
    

    run exit or hit Ctrl+D to return to root account.

  3. reboot your machine or restart the display manager:

    systemctl restart gdm
    
11

Just as an expansion to don_crissti's answer:

Step 2 didn't work for me. I am on Gnome/gdm 3.28 and I don't have org.gnome.desktop.session, but this one worked for me:

GSETTINGS_BACKEND=dconf gsettings set org.gnome.settings-daemon.plugins.power sleep-inactive-ac-type 'nothing'
2
  • 2
    On Debian, you can set it up in /etc/gdm/greeter.dconf-defaults.
    – gsc
    Commented Apr 1, 2019 at 10:32
  • 4
    more recently, /etc/gdm3/greeter.dconf-defaults is the file
    – curiouser
    Commented Jan 22, 2022 at 21:04
3

Fedora, 2023-05

1. Add a specific dconf profile for the gdm user

Check /etc/dconf/profile/gdm exists. If not then add it. It contains a user-db line for the user settings, and then system-db and file-db lines for defaults:

user-db:user
system-db:gdm
file-db:/usr/share/gdm/greeter-dconf-defaults

Note that there can be multiple system-db: lines, so a enterprise environment like that at Example Corporation might choose to use a line like system-db: examplecorp-gdm for the corporate wide-settings for GDM (say setting the Example Corp logo and a login screen message equivalent to /etc/issue). Thus leaving the more typical system-db:gdm available for use by the laptop user's customisation tools.

2. Add a new directory to contain the new gdm settings

Check /etc/dconf/db/gdm.d/ exists. If not then create the directory.

3. Add the new gdm settings into a file

Add the file /etc/dconf/db/gdm.d/01-local-power containing

[org/gnome/settings-daemon/plugins/power]
sleep-inactive-ac-type='nothing'
sleep-inactive-ac-timeout=0

If you wish to alter other settings then use dconf-editor to find the setting and its allowed values, then take the "schema" value, replacing . with /, and use that as the section heading in the configuration file (the "org/gnome/settings-daemon/plugins/power" in the example above). For values which are strings, enclose the string in single quote '.

Some other common settings for the gdm user are:

[org/gnome/login-screen]
logo='/usr/local/share/pixmaps/examplecorp-logo.svg'
banner-message-enable=true
banner-message-text='Example Corporation, to Lorem Ipsum and beyond!'
[org/gnome/settings-daemon/plugins/power]
power-button-action='interactive'

4. Build the dconf database from the files

sudo dconf update then check for the presence of /etc/dconf/db/gdm.

2

Edit /etc/gdm3/greeter.dconf-defaults and customize this section to your will.

I set the sleep-inactive-ac-timeout to zero and the sleep-inactive-ac-type to "nothing".

# Automatic suspend
# =================
[org/gnome/settings-daemon/plugins/power]
# - Time inactive in seconds before suspending with AC power
#   1200=20 minutes, 0=never
sleep-inactive-ac-timeout=0
# - What to do after sleep-inactive-ac-timeout
#   'blank', 'suspend', 'shutdown', 'hibernate', 'interactive' or 'nothing'
# sleep-inactive-ac-type='suspend'
sleep-inactive-ac-type='nothing'
# - As above but when on battery
# sleep-inactive-battery-timeout=1200
# sleep-inactive-battery-type='suspend'

Then reload gdm:

systemctl reload gdm
systemctl reload gdm3

I did not get to make it with the existing answers. There is a comment about this file; for me it was the answer.

1

Adjusting the following via the dconf-editor might help fine-tune the sleep related settings:

sleep-inactive-ac-timeout
sleep-inactive-ac-type
sleep-inactive-battery-timeout
sleep-inactive-battery-type

Worth a try, in my case it was the way to get the machine to stay awake during periods of inactivity.

1
  • sed -i "s/# sleep-inactive-ac-timeout=1200/sleep-inactive-ac-timeout=0/" /etc/gdm3/greeter.dconf-defaults sed -i "s/# sleep-inactive-battery-timeout=1200/sleep-inactive-battery-timeout=0/" /etc/gdm3/greeter.dconf-defaults systemctl restart gdm3
    – diyism
    Commented Jun 11, 2022 at 11:30
1

Ive figured it out. Search up "inactive" on dconfig and change what to do when person is inactive to turn off to nothing. Make sure you do it to both of them because there is two.

2

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .