Public bug reported: In a stock ubuntu 20.04.3, g-s-d will notify the critical action when battery is lower than warned critical threshold. The notification is "The battery is below the critical level and this computer is about to hibernate."
When hitting critical threshold, it takes "HybirdSleep" as the action. ``` 九 29 11:24:48 ubuntu-HP-ZBook-Studio-15-6-Inch-G8-Mobile-Workstation-PC systemd[1]: Reached target Sleep. 九 29 11:24:48 ubuntu-HP-ZBook-Studio-15-6-Inch-G8-Mobile-Workstation-PC systemd[1]: Starting Hybrid Suspend+Hibernate... 九 29 11:24:48 ubuntu-HP-ZBook-Studio-15-6-Inch-G8-Mobile-Workstation-PC kernel: PM: Image not found (code -22) 九 29 11:24:48 ubuntu-HP-ZBook-Studio-15-6-Inch-G8-Mobile-Workstation-PC systemd-sleep[3212]: Suspending system... 九 29 11:24:48 ubuntu-HP-ZBook-Studio-15-6-Inch-G8-Mobile-Workstation-PC kernel: PM: hibernation: hibernation entry ``` You could see the hibernation called by logind but it will fail to restore since either not enough SWAP or resume address is not specify to kernel. It confusing users about the critical actions. In UPower.conf: ``` $ tail etc/UPower.conf # reached for the batteries (UPS or laptop batteries) supplying the computer # # Possible values are: # PowerOff # Hibernate # HybridSleep # # If HybridSleep isn't available, Hibernate will be used # If Hibernate isn't available, PowerOff will be used CriticalPowerAction=HybridSleep ``` In g-s-d: ``` /* We don't make the difference between HybridSleep and Hibernate */ if (g_strcmp0 (action, "PowerOff") == 0) policy = GSD_POWER_ACTION_SHUTDOWN; else policy = GSD_POWER_ACTION_HIBERNATE; ... /* use different text for different actions */ if (policy == GSD_POWER_ACTION_HIBERNATE) { /* TRANSLATORS: computer will hibernate */ message = g_strdup (_("The battery is below the critical level and " "this computer is about to hibernate.")); ``` There are two approach if possible: 1) change "CriticalPowerAction" to "PowerOff" because the suspend to ram is almost useless when battery is in critical threshold and the suspend to disk is usually not working in default installed ubuntu. 2) have a new "GsdPowerActionType" type for "HybridSleep" to show the appropriate message but taking the same action (notify logind). --- $ dpkg -l | grep -i 'upower\|gnome-settings-daemon' ii gir1.2-upowerglib-1.0:amd64 0.99.11-1build2 amd64 GObject introspection data for upower ii gnome-settings-daemon 3.36.1-0ubuntu1.1 amd64 daemon handling the GNOME session settings ii gnome-settings-daemon-common 3.36.1-0ubuntu1.1 all daemon handling the GNOME session settings - common files ii libupower-glib3:amd64 0.99.11-1build2 amd64 abstraction for power management - shared library ii upower 0.99.11-1build2 amd64 abstraction for power managemen ** Affects: oem-priority Importance: High Assignee: jeremyszu (os369510) Status: Confirmed ** Affects: gnome-settings-daemon (Ubuntu) Importance: Undecided Status: New ** Affects: upower (Ubuntu) Importance: Undecided Status: New ** Tags: oem-priority originate-from-1911231 originate-from-1943959 stella ** Also affects: gnome-settings-daemon (Ubuntu) Importance: Undecided Status: New ** Tags added: oem-priority originate-from-1943959 stella ** Tags added: originate-from-1911231 ** Summary changed: - Hibernate is not the default action in Ubuntu when critical power + Hibernate doesn't support as the default action in Ubuntu when critical power ** Changed in: oem-priority Assignee: (unassigned) => jeremyszu (os369510) ** Changed in: oem-priority Importance: Undecided => High ** Changed in: oem-priority Status: New => Confirmed -- You received this bug notification because you are a member of Ubuntu Desktop Bugs, which is subscribed to gnome-settings-daemon in Ubuntu. https://bugs.launchpad.net/bugs/1945418 Title: Hibernate doesn't support as the default action in Ubuntu when critical power To manage notifications about this bug go to: https://bugs.launchpad.net/oem-priority/+bug/1945418/+subscriptions -- desktop-bugs mailing list desktop-bugs@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/desktop-bugs