|
![](https://seccdn.libravatar.org/avatar/a272fb3dbdb641ef55a8e3e7e88941f01310a691b3208d70ae79484b5c7955be?s=16&d=retro) |
c751d8e |
From 5314490a7e5ce5770059363a84e13e87f3d9669c Mon Sep 17 00:00:00 2001
|
|
![](https://seccdn.libravatar.org/avatar/a90c8fc1fa6bf435277bf1a6f0e8dcfa5081a34b29502febdc7c45358f87105e?s=16&d=retro) |
650dd58 |
From: Hans de Goede <hdegoede@redhat.com>
|
|
![](https://seccdn.libravatar.org/avatar/a90c8fc1fa6bf435277bf1a6f0e8dcfa5081a34b29502febdc7c45358f87105e?s=16&d=retro) |
650dd58 |
Date: Tue, 14 Aug 2018 14:49:59 +0200
|
|
![](https://seccdn.libravatar.org/avatar/a90c8fc1fa6bf435277bf1a6f0e8dcfa5081a34b29502febdc7c45358f87105e?s=16&d=retro) |
650dd58 |
Subject: [PATCH 2/2] Fedora: Set grub boot-flags on shutdown / reboot
|
|
![](https://seccdn.libravatar.org/avatar/a90c8fc1fa6bf435277bf1a6f0e8dcfa5081a34b29502febdc7c45358f87105e?s=16&d=retro) |
650dd58 |
|
|
![](https://seccdn.libravatar.org/avatar/a90c8fc1fa6bf435277bf1a6f0e8dcfa5081a34b29502febdc7c45358f87105e?s=16&d=retro) |
650dd58 |
Fedora's grub will automatically hide the boot-menu if the previous
|
|
![](https://seccdn.libravatar.org/avatar/a90c8fc1fa6bf435277bf1a6f0e8dcfa5081a34b29502febdc7c45358f87105e?s=16&d=retro) |
650dd58 |
boot has set the boot_success flag in grub's environment. This happens
|
|
![](https://seccdn.libravatar.org/avatar/a90c8fc1fa6bf435277bf1a6f0e8dcfa5081a34b29502febdc7c45358f87105e?s=16&d=retro) |
650dd58 |
automatically 30 seconds after login.
|
|
![](https://seccdn.libravatar.org/avatar/a90c8fc1fa6bf435277bf1a6f0e8dcfa5081a34b29502febdc7c45358f87105e?s=16&d=retro) |
650dd58 |
|
|
![](https://seccdn.libravatar.org/avatar/a90c8fc1fa6bf435277bf1a6f0e8dcfa5081a34b29502febdc7c45358f87105e?s=16&d=retro) |
650dd58 |
But if the user shuts down or reboots from the system-menu before then
|
|
![](https://seccdn.libravatar.org/avatar/a90c8fc1fa6bf435277bf1a6f0e8dcfa5081a34b29502febdc7c45358f87105e?s=16&d=retro) |
650dd58 |
(e.g. directly from gdm) then the boot_success flag gets not set. If
|
|
![](https://seccdn.libravatar.org/avatar/a90c8fc1fa6bf435277bf1a6f0e8dcfa5081a34b29502febdc7c45358f87105e?s=16&d=retro) |
650dd58 |
a reboot / shutdown is initiated through gnome-session then the user
|
|
![](https://seccdn.libravatar.org/avatar/a90c8fc1fa6bf435277bf1a6f0e8dcfa5081a34b29502febdc7c45358f87105e?s=16&d=retro) |
650dd58 |
is successfully interacting with the system, so set the boot_success
|
|
![](https://seccdn.libravatar.org/avatar/a90c8fc1fa6bf435277bf1a6f0e8dcfa5081a34b29502febdc7c45358f87105e?s=16&d=retro) |
650dd58 |
flag from gnome_session for this case to fix reboot from gdm leading to
|
|
![](https://seccdn.libravatar.org/avatar/a90c8fc1fa6bf435277bf1a6f0e8dcfa5081a34b29502febdc7c45358f87105e?s=16&d=retro) |
650dd58 |
the boot-menu not being hidden.
|
|
![](https://seccdn.libravatar.org/avatar/a90c8fc1fa6bf435277bf1a6f0e8dcfa5081a34b29502febdc7c45358f87105e?s=16&d=retro) |
650dd58 |
|
|
![](https://seccdn.libravatar.org/avatar/a90c8fc1fa6bf435277bf1a6f0e8dcfa5081a34b29502febdc7c45358f87105e?s=16&d=retro) |
650dd58 |
Likewise implement ConfirmedRebootMenu handling in a Fedora specific
|
|
![](https://seccdn.libravatar.org/avatar/a90c8fc1fa6bf435277bf1a6f0e8dcfa5081a34b29502febdc7c45358f87105e?s=16&d=retro) |
650dd58 |
way (for now) by setting the menu_show_once grub bootflag in this case.
|
|
![](https://seccdn.libravatar.org/avatar/a90c8fc1fa6bf435277bf1a6f0e8dcfa5081a34b29502febdc7c45358f87105e?s=16&d=retro) |
650dd58 |
---
|
|
![](https://seccdn.libravatar.org/avatar/a90c8fc1fa6bf435277bf1a6f0e8dcfa5081a34b29502febdc7c45358f87105e?s=16&d=retro) |
650dd58 |
gnome-session/gsm-manager.c | 15 ++++++++++++++-
|
|
![](https://seccdn.libravatar.org/avatar/a90c8fc1fa6bf435277bf1a6f0e8dcfa5081a34b29502febdc7c45358f87105e?s=16&d=retro) |
650dd58 |
1 file changed, 14 insertions(+), 1 deletion(-)
|
|
![](https://seccdn.libravatar.org/avatar/a90c8fc1fa6bf435277bf1a6f0e8dcfa5081a34b29502febdc7c45358f87105e?s=16&d=retro) |
650dd58 |
|
|
![](https://seccdn.libravatar.org/avatar/a90c8fc1fa6bf435277bf1a6f0e8dcfa5081a34b29502febdc7c45358f87105e?s=16&d=retro) |
650dd58 |
diff --git a/gnome-session/gsm-manager.c b/gnome-session/gsm-manager.c
|
|
![](https://seccdn.libravatar.org/avatar/a272fb3dbdb641ef55a8e3e7e88941f01310a691b3208d70ae79484b5c7955be?s=16&d=retro) |
c751d8e |
index e0c05d82..b4d50936 100644
|
|
![](https://seccdn.libravatar.org/avatar/a90c8fc1fa6bf435277bf1a6f0e8dcfa5081a34b29502febdc7c45358f87105e?s=16&d=retro) |
650dd58 |
--- a/gnome-session/gsm-manager.c
|
|
![](https://seccdn.libravatar.org/avatar/a90c8fc1fa6bf435277bf1a6f0e8dcfa5081a34b29502febdc7c45358f87105e?s=16&d=retro) |
650dd58 |
+++ b/gnome-session/gsm-manager.c
|
|
![](https://seccdn.libravatar.org/avatar/a272fb3dbdb641ef55a8e3e7e88941f01310a691b3208d70ae79484b5c7955be?s=16&d=retro) |
c751d8e |
@@ -3842,14 +3842,27 @@ do_query_end_session_exit (GsmManager *manager)
|
|
![](https://seccdn.libravatar.org/avatar/a90c8fc1fa6bf435277bf1a6f0e8dcfa5081a34b29502febdc7c45358f87105e?s=16&d=retro) |
650dd58 |
break;
|
|
![](https://seccdn.libravatar.org/avatar/a90c8fc1fa6bf435277bf1a6f0e8dcfa5081a34b29502febdc7c45358f87105e?s=16&d=retro) |
650dd58 |
case GSM_MANAGER_LOGOUT_REBOOT:
|
|
![](https://seccdn.libravatar.org/avatar/a90c8fc1fa6bf435277bf1a6f0e8dcfa5081a34b29502febdc7c45358f87105e?s=16&d=retro) |
650dd58 |
case GSM_MANAGER_LOGOUT_REBOOT_INTERACT:
|
|
![](https://seccdn.libravatar.org/avatar/a90c8fc1fa6bf435277bf1a6f0e8dcfa5081a34b29502febdc7c45358f87105e?s=16&d=retro) |
650dd58 |
+ /*
|
|
![](https://seccdn.libravatar.org/avatar/a90c8fc1fa6bf435277bf1a6f0e8dcfa5081a34b29502febdc7c45358f87105e?s=16&d=retro) |
650dd58 |
+ * Fedora specific patch to make sure the boot-menu does not
|
|
![](https://seccdn.libravatar.org/avatar/a90c8fc1fa6bf435277bf1a6f0e8dcfa5081a34b29502febdc7c45358f87105e?s=16&d=retro) |
650dd58 |
+ * show when it is configured to auto-hide and a reboot is
|
|
![](https://seccdn.libravatar.org/avatar/a90c8fc1fa6bf435277bf1a6f0e8dcfa5081a34b29502febdc7c45358f87105e?s=16&d=retro) |
650dd58 |
+ * initiated directly from gdm.
|
|
![](https://seccdn.libravatar.org/avatar/a90c8fc1fa6bf435277bf1a6f0e8dcfa5081a34b29502febdc7c45358f87105e?s=16&d=retro) |
650dd58 |
+ */
|
|
![](https://seccdn.libravatar.org/avatar/a90c8fc1fa6bf435277bf1a6f0e8dcfa5081a34b29502febdc7c45358f87105e?s=16&d=retro) |
650dd58 |
+ system("/usr/sbin/grub2-set-bootflag boot_success");
|
|
![](https://seccdn.libravatar.org/avatar/a90c8fc1fa6bf435277bf1a6f0e8dcfa5081a34b29502febdc7c45358f87105e?s=16&d=retro) |
650dd58 |
reboot = TRUE;
|
|
![](https://seccdn.libravatar.org/avatar/a90c8fc1fa6bf435277bf1a6f0e8dcfa5081a34b29502febdc7c45358f87105e?s=16&d=retro) |
650dd58 |
break;
|
|
![](https://seccdn.libravatar.org/avatar/a90c8fc1fa6bf435277bf1a6f0e8dcfa5081a34b29502febdc7c45358f87105e?s=16&d=retro) |
650dd58 |
case GSM_MANAGER_LOGOUT_REBOOT_TO_BOOT_OPTIONS:
|
|
![](https://seccdn.libravatar.org/avatar/a90c8fc1fa6bf435277bf1a6f0e8dcfa5081a34b29502febdc7c45358f87105e?s=16&d=retro) |
650dd58 |
- /* FIXME tell bootmanager to show menu on next boot */
|
|
![](https://seccdn.libravatar.org/avatar/a90c8fc1fa6bf435277bf1a6f0e8dcfa5081a34b29502febdc7c45358f87105e?s=16&d=retro) |
650dd58 |
+ /* Fedora specific implementation to show the menu on next boot */
|
|
![](https://seccdn.libravatar.org/avatar/a90c8fc1fa6bf435277bf1a6f0e8dcfa5081a34b29502febdc7c45358f87105e?s=16&d=retro) |
650dd58 |
+ system("/usr/sbin/grub2-set-bootflag menu_show_once");
|
|
![](https://seccdn.libravatar.org/avatar/a90c8fc1fa6bf435277bf1a6f0e8dcfa5081a34b29502febdc7c45358f87105e?s=16&d=retro) |
650dd58 |
reboot = TRUE;
|
|
![](https://seccdn.libravatar.org/avatar/a90c8fc1fa6bf435277bf1a6f0e8dcfa5081a34b29502febdc7c45358f87105e?s=16&d=retro) |
650dd58 |
break;
|
|
![](https://seccdn.libravatar.org/avatar/a90c8fc1fa6bf435277bf1a6f0e8dcfa5081a34b29502febdc7c45358f87105e?s=16&d=retro) |
650dd58 |
case GSM_MANAGER_LOGOUT_SHUTDOWN:
|
|
![](https://seccdn.libravatar.org/avatar/a90c8fc1fa6bf435277bf1a6f0e8dcfa5081a34b29502febdc7c45358f87105e?s=16&d=retro) |
650dd58 |
case GSM_MANAGER_LOGOUT_SHUTDOWN_INTERACT:
|
|
![](https://seccdn.libravatar.org/avatar/a90c8fc1fa6bf435277bf1a6f0e8dcfa5081a34b29502febdc7c45358f87105e?s=16&d=retro) |
650dd58 |
+ /*
|
|
![](https://seccdn.libravatar.org/avatar/a90c8fc1fa6bf435277bf1a6f0e8dcfa5081a34b29502febdc7c45358f87105e?s=16&d=retro) |
650dd58 |
+ * Fedora specific patch to make sure the boot-menu does not
|
|
![](https://seccdn.libravatar.org/avatar/a90c8fc1fa6bf435277bf1a6f0e8dcfa5081a34b29502febdc7c45358f87105e?s=16&d=retro) |
650dd58 |
+ * show when it is configured to auto-hide and a shutdown is
|
|
![](https://seccdn.libravatar.org/avatar/a90c8fc1fa6bf435277bf1a6f0e8dcfa5081a34b29502febdc7c45358f87105e?s=16&d=retro) |
650dd58 |
+ * initiated directly from gdm.
|
|
![](https://seccdn.libravatar.org/avatar/a90c8fc1fa6bf435277bf1a6f0e8dcfa5081a34b29502febdc7c45358f87105e?s=16&d=retro) |
650dd58 |
+ */
|
|
![](https://seccdn.libravatar.org/avatar/a90c8fc1fa6bf435277bf1a6f0e8dcfa5081a34b29502febdc7c45358f87105e?s=16&d=retro) |
650dd58 |
+ system("/usr/sbin/grub2-set-bootflag boot_success");
|
|
![](https://seccdn.libravatar.org/avatar/a90c8fc1fa6bf435277bf1a6f0e8dcfa5081a34b29502febdc7c45358f87105e?s=16&d=retro) |
650dd58 |
shutdown = TRUE;
|
|
![](https://seccdn.libravatar.org/avatar/a90c8fc1fa6bf435277bf1a6f0e8dcfa5081a34b29502febdc7c45358f87105e?s=16&d=retro) |
650dd58 |
break;
|
|
![](https://seccdn.libravatar.org/avatar/a90c8fc1fa6bf435277bf1a6f0e8dcfa5081a34b29502febdc7c45358f87105e?s=16&d=retro) |
650dd58 |
default:
|
|
![](https://seccdn.libravatar.org/avatar/a90c8fc1fa6bf435277bf1a6f0e8dcfa5081a34b29502febdc7c45358f87105e?s=16&d=retro) |
650dd58 |
--
|
|
![](https://seccdn.libravatar.org/avatar/a272fb3dbdb641ef55a8e3e7e88941f01310a691b3208d70ae79484b5c7955be?s=16&d=retro) |
c751d8e |
2.23.0
|
|
![](https://seccdn.libravatar.org/avatar/a90c8fc1fa6bf435277bf1a6f0e8dcfa5081a34b29502febdc7c45358f87105e?s=16&d=retro) |
650dd58 |
|