• Support
  • Power button action - shutdown

Hello!

First of all, to all maintainers, THANK YOU! for maintaining this great OS, really.

Now on to business, I'm on Solus budgie and I've found that if the power button action is set to shutdown, it won't do anything, it used to show the shutdown prompt and with a second press, it actually did the shutdown. My guess is something kinda broke with a gnome update.

I've tested it with 2 different machines (desktop and laptop) with the same result. It's no big deal and i don't know if this is on purpose but i just wanted to let you know.

    Same issue here. Thanks for reporting e-vallejo

    CPU: Quad Core AMD Ryzen 5 2500U with Radeon Vega Mobile Gfx (-MT MCP-) speed/min/max: 1366/1600/2000 MHz 
    Kernel: 5.5.11-151.current x86_64 Up: 3h 57m Mem: 1859.4/15002.6 MiB (12.4%) Storage: 238.47 GiB (11.6% used) Procs: 240 
    Shell: bash 5.0.11 inxi: 3.0.37 

    I've experienced it, too, after the last update.
    Yet, as it has happened before I couldn't be bothered to report it - it had gone away after some time so I hope it will eventually vanish this time, too.
    (Mind you, there are three people who I've convinced SOLUS to be the best choice of OS for them so if they should ask why the heck their power button doesn't work the way it used to I would love to be able to give a valid reply!)
    Devs, you're listening?

    If you go to Settings > Power, what does it say for both "Power Button Action" and "Automatic Suspend" for you?

    Can you also run this in the terminal and paste the output?

    gsettings get org.gnome.settings-daemon.plugins.power 'power-button-action'

      tomocafe
      It says:
      AUTOMATIC SUSPEND: Off
      POWER BUTTON ACTION: Turn off/Shutdown (OS is in German: Ausschalten)
      The command gives me this: 'interactive'

      I usually have mine set to Suspend, but I tried setting it to Power Off and it works as you described, bringing up the shutdown confirmation dialog.

      FWIW, when I dumped the gsettings, I got interactive.

        tomocafe
        Yes, it's the settings for the interactive dialogue that I want to get. I didn't change anything for months before the last update, it used to work, so the settings should still work I guess.

        Can you run Settings with verbose messages in the terminal and paste the output?

        gnome-control-center -v

        Set "Power Button Action" to "Suspend" and then back to "Power Off".

          tomocafe
          My output of the last command:
          (process:3041): Gtk-CRITICAL **: 22:40:37.841: gtk_style_context_add_provider_for_screen: assertion 'GDK_IS_SCREEN (screen)' failed

            tomocafe
            When should I "Set "Power Button Action" to "Suspend" and then back to "Power Off"."?
            Haven't done that yet.

              SOLUSfiddler
              That message is normal. You should see more messages than that. Did you use the -v flag?

              SOLUSfiddler
              In this order:

              1. In terminal, launch settings in verbose mode: gnome-control-center -v
              2. Set Power Button Action to Suspend
              3. Set Power Button Action to Power Off
              4. Close Settings

              Then you should see some debug messages in the terminal.

                tomocafe
                I see, changing the settings WHILST the terminal is open!

                This is the output:
                (process:3594): Gtk-CRITICAL **: 22:50:03.976: gtk_style_context_add_provider_for_screen: assertion 'GDK_IS_SCREEN (screen)' failed
                22:50:04.0346 GLib: DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created
                22:50:04.0361 cc-object-storage: DEBUG: Finished creating D-Bus proxy for CcObjectStorage::dbus-proxy(org.gnome.SettingsDaemon.Power,/org/gnome/SettingsDaemon/Power,org.gnome.SettingsDaemon.Power.Screen)
                22:50:04.0361 cc-object-storage: DEBUG: Adding object GDBusProxy (CcObjectStorage::dbus-proxy(org.gnome.SettingsDaemon.Power,/org/gnome/SettingsDaemon/Power,org.gnome.SettingsDaemon.Power.Screen) → 0x14c2e20) to the storage
                22:50:04.0361 power-cc-panel: DEBUG: ALS enabled: on
                22:50:04.0361 cc-object-storage: DEBUG: Finished creating D-Bus proxy for CcObjectStorage::dbus-proxy(org.gnome.SettingsDaemon.Power,/org/gnome/SettingsDaemon/Power,org.gnome.SettingsDaemon.Power.Keyboard)
                22:50:04.0361 cc-object-storage: DEBUG: Adding object GDBusProxy (CcObjectStorage::dbus-proxy(org.gnome.SettingsDaemon.Power,/org/gnome/SettingsDaemon/Power,org.gnome.SettingsDaemon.Power.Keyboard) → 0x7f6704008560) to the storage
                22:50:04.0362 diagnostics-cc-panel: DEBUG: ABRT vanished
                22:50:04.0362 power-cc-panel: DEBUG: ALS enabled: on
                (gnome-control-center:3594): dconf-DEBUG: 22:50:11.365: change_fast
                (gnome-control-center:3594): dconf-DEBUG: 22:50:11.365: change_notify: /org/gnome/settings-daemon/plugins/power/power-button-action
                22:50:11.0366 power-cc-panel: DEBUG: ALS enabled: on
                (gnome-control-center:3594): dconf-DEBUG: 22:50:15.178: change_fast
                (gnome-control-center:3594): dconf-DEBUG: 22:50:15.179: change_notify: /org/gnome/settings-daemon/plugins/power/power-button-action
                22:50:15.0179 power-cc-panel: DEBUG: ALS enabled: on

                Some other tests to run:

                dmesg | grep -i button

                In your terminal, give the command xev. Don't move the mouse / press any keys. Then press your power button as you watch the terminal. Did anything change when you pressed the power button? If not, the system is not reading your power button press.

                  tomocafe
                  I entered dmesg | grep -i button.
                  Output:
                  [ 4.159768] input: Sleep Button as /devices/LNXSYSTM:00/LNXSYBUS:00/PNP0C0E:00/input/input3
                  [ 4.164040] ACPI: Sleep Button [SLPB]
                  [ 4.164107] input: Power Button as /devices/LNXSYSTM:00/LNXPWRBN:00/input/input4
                  [ 4.166549] ACPI: Power Button [PWRF]
                  [ 4.302429] input: ThinkPad Extra Buttons as /devices/platform/thinkpad_acpi/input/input6
                  [ 5.616309] psmouse serio2: trackpoint: IBM TrackPoint firmware: 0x0e, buttons: 3/3

                  The I entered xev, but it wasn't accepted:
                  bash: xev: Kommando nicht gefunden.
                  (Means "command not found")

                    SOLUSfiddler You can get it with sudo eopkg it xev. But I see you are using ThinkPad. I remember that it takes a full second of pushing the power button for it to send the event signal. Silly question, but are you pushing the button long enough?

                      tomocafe
                      Will try the new command in a second.
                      Do I have to push the power button for as long as it would take to give me the shutdown confirmation dialogue?
                      Is that what you mean?
                      (I'm using a Thinkpad W530, yes!)

                      tomocafe
                      I downloaded and installed xev, then pressed the power button whilst watching the open terminal.
                      I kept the button pressed (nothing happened in the terminal) until the system was powered off.
                      What now?

                        SOLUSfiddler Err, sorry. Maybe you held it a bit too long. Try a quick push. If nothing shows up in the terminal, try for 1 second, but not too much longer. If you hold it down it probably does a force shutdown.

                          tomocafe
                          OK, I ran xev, this is the output of then pressing the power button for about one second:

                          MappingNotify event, serial 38, synthetic NO, window 0x0,
                          request MappingKeyboard, first_keycode 8, count 248

                          FocusOut event, serial 38, synthetic NO, window 0x3400001,
                          mode NotifyGrab, detail NotifyAncestor

                          FocusIn event, serial 39, synthetic NO, window 0x3400001,
                          mode NotifyUngrab, detail NotifyAncestor

                          KeymapNotify event, serial 39, synthetic NO, window 0x0,
                          keys: 92 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

                          0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

                            tomocafe Below is my output:

                            elcobi@hp-pavilion ~ $ gnome-control-center -v
                            
                            (process:7956): Gtk-CRITICAL **: 11:11:19.791: gtk_style_context_add_provider_for_screen: assertion 'GDK_IS_SCREEN (screen)' failed
                            11:11:20.0202                      GLib:    DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created
                            11:11:20.0219         cc-object-storage:    DEBUG: Finished creating D-Bus proxy for CcObjectStorage::dbus-proxy(org.gnome.SettingsDaemon.Power,/org/gnome/SettingsDaemon/Power,org.gnome.SettingsDaemon.Power.Keyboard)
                            11:11:20.0219         cc-object-storage:    DEBUG: Adding object GDBusProxy (CcObjectStorage::dbus-proxy(org.gnome.SettingsDaemon.Power,/org/gnome/SettingsDaemon/Power,org.gnome.SettingsDaemon.Power.Keyboard) → 0xf8e640) to the storage
                            11:11:20.0219         cc-object-storage:    DEBUG: Finished creating D-Bus proxy for CcObjectStorage::dbus-proxy(org.gnome.SettingsDaemon.Power,/org/gnome/SettingsDaemon/Power,org.gnome.SettingsDaemon.Power.Screen)
                            11:11:20.0219         cc-object-storage:    DEBUG: Adding object GDBusProxy (CcObjectStorage::dbus-proxy(org.gnome.SettingsDaemon.Power,/org/gnome/SettingsDaemon/Power,org.gnome.SettingsDaemon.Power.Screen) → 0x7f9dac008cf0) to the storage
                            11:11:20.0219            power-cc-panel:    DEBUG: ALS enabled: on
                            11:11:20.0220      diagnostics-cc-panel:    DEBUG: ABRT vanished
                            11:11:20.0221            power-cc-panel:    DEBUG: ALS enabled: on
                            (gnome-control-center:7956): dconf-DEBUG: 11:11:27.424: change_fast
                            (gnome-control-center:7956): dconf-DEBUG: 11:11:27.424: change_notify: /org/gnome/settings-daemon/plugins/power/power-button-action
                            11:11:27.0424            power-cc-panel:    DEBUG: ALS enabled: on
                            (gnome-control-center:7956): dconf-DEBUG: 11:11:33.649: change_fast
                            (gnome-control-center:7956): dconf-DEBUG: 11:11:33.650: change_notify: /org/gnome/settings-daemon/plugins/power/power-button-action
                            11:11:33.0650            power-cc-panel:    DEBUG: ALS enabled: on
                            (gnome-control-center:7956): dconf-DEBUG: 11:11:36.480: unwatch_fast: "/org/gnome/desktop/session/" (active: 1, establishing: 0)
                            (gnome-control-center:7956): dconf-DEBUG: 11:11:36.483: unwatch_fast: "/org/gnome/settings-daemon/plugins/power/" (active: 1, establishing: 0)
                            (gnome-control-center:7956): dconf-DEBUG: 11:11:36.488: unwatch_fast: "/org/gnome/control-center/" (active: 1, establishing: 0)
                            (gnome-control-center:7956): dconf-DEBUG: 11:11:36.488: sync
                            11:11:36.0489         cc-object-storage:    DEBUG: Destroying cached objects