Toshaan Bharvani
3 years ago
commit
361a16fb66
9 changed files with 1917 additions and 0 deletions
@ -0,0 +1,49 @@ |
|||||||
|
From e3d6f1c1d342d0c74f2125ea0efa2a9669aaa8df Mon Sep 17 00:00:00 2001 |
||||||
|
From: Hans de Goede <hdegoede@redhat.com> |
||||||
|
Date: Tue, 14 Aug 2018 14:49:59 +0200 |
||||||
|
Subject: [PATCH] Fedora: Set grub boot-flags on shutdown / reboot |
||||||
|
|
||||||
|
Fedora's grub will automatically hide the boot-menu if the previous |
||||||
|
boot has set the boot_success flag in grub's environment. This happens |
||||||
|
automatically 30 seconds after login. |
||||||
|
|
||||||
|
But if the user shuts down or reboots from the system-menu before then |
||||||
|
(e.g. directly from gdm) then the boot_success flag gets not set. If |
||||||
|
a reboot / shutdown is initiated through gnome-session then the user |
||||||
|
is successfully interacting with the system, so set the boot_success |
||||||
|
flag from gnome_session for this case to fix reboot from gdm leading to |
||||||
|
the boot-menu not being hidden. |
||||||
|
--- |
||||||
|
gnome-session/gsm-manager.c | 12 ++++++++++++ |
||||||
|
1 file changed, 12 insertions(+) |
||||||
|
|
||||||
|
diff --git a/gnome-session/gsm-manager.c b/gnome-session/gsm-manager.c |
||||||
|
index 6839a02d..589efb02 100644 |
||||||
|
--- a/gnome-session/gsm-manager.c |
||||||
|
+++ b/gnome-session/gsm-manager.c |
||||||
|
@@ -3823,10 +3823,22 @@ do_query_end_session_exit (GsmManager *manager) |
||||||
|
break; |
||||||
|
case GSM_MANAGER_LOGOUT_REBOOT: |
||||||
|
case GSM_MANAGER_LOGOUT_REBOOT_INTERACT: |
||||||
|
+ /* |
||||||
|
+ * Fedora specific patch to make sure the boot-menu does not |
||||||
|
+ * show when it is configured to auto-hide and a reboot is |
||||||
|
+ * initiated directly from gdm. |
||||||
|
+ */ |
||||||
|
+ system("/usr/sbin/grub2-set-bootflag boot_success"); |
||||||
|
reboot = TRUE; |
||||||
|
break; |
||||||
|
case GSM_MANAGER_LOGOUT_SHUTDOWN: |
||||||
|
case GSM_MANAGER_LOGOUT_SHUTDOWN_INTERACT: |
||||||
|
+ /* |
||||||
|
+ * Fedora specific patch to make sure the boot-menu does not |
||||||
|
+ * show when it is configured to auto-hide and a shutdown is |
||||||
|
+ * initiated directly from gdm. |
||||||
|
+ */ |
||||||
|
+ system("/usr/sbin/grub2-set-bootflag boot_success"); |
||||||
|
shutdown = TRUE; |
||||||
|
break; |
||||||
|
default: |
||||||
|
-- |
||||||
|
2.28.0 |
||||||
|
|
@ -0,0 +1,75 @@ |
|||||||
|
From 687ec347d2fa0bca227e3a583a3a47f9bbc10bb0 Mon Sep 17 00:00:00 2001 |
||||||
|
From: Adam Jackson <ajax@redhat.com> |
||||||
|
Date: Tue, 4 Oct 2016 13:15:39 -0400 |
||||||
|
Subject: [PATCH] check-accelerated-gles: Use eglGetPlatformDisplay{,EXT} |
||||||
|
|
||||||
|
eglGetDisplay forces the implementation to guess, and in general it |
||||||
|
can't guess correctly. Be explicit. |
||||||
|
|
||||||
|
Signed-off-by: Adam Jackson <ajax@redhat.com> |
||||||
|
--- |
||||||
|
.../gnome-session-check-accelerated-gles-helper.c | 36 +++++++++++++++++++++- |
||||||
|
1 file changed, 35 insertions(+), 1 deletion(-) |
||||||
|
|
||||||
|
diff --git a/tools/gnome-session-check-accelerated-gles-helper.c b/tools/gnome-session-check-accelerated-gles-helper.c |
||||||
|
index 2a38d9e..472d1ad 100644 |
||||||
|
--- a/tools/gnome-session-check-accelerated-gles-helper.c |
||||||
|
+++ b/tools/gnome-session-check-accelerated-gles-helper.c |
||||||
|
@@ -34,11 +34,43 @@ |
||||||
|
#include <GLES2/gl2.h> |
||||||
|
#include <GLES2/gl2ext.h> |
||||||
|
#include <EGL/egl.h> |
||||||
|
+#include <EGL/eglext.h> |
||||||
|
#endif |
||||||
|
|
||||||
|
#include "gnome-session-check-accelerated-common.h" |
||||||
|
|
||||||
|
#ifdef GDK_WINDOWING_X11 |
||||||
|
+static EGLDisplay |
||||||
|
+get_display (void *native) |
||||||
|
+{ |
||||||
|
+ EGLDisplay dpy = NULL; |
||||||
|
+ const char *client_exts = eglQueryString (NULL, EGL_EXTENSIONS); |
||||||
|
+ |
||||||
|
+ if (g_strstr_len (client_exts, -1, "EGL_KHR_platform_base")) { |
||||||
|
+ PFNEGLGETPLATFORMDISPLAYEXTPROC get_platform_display = |
||||||
|
+ (void *) eglGetProcAddress ("eglGetPlatformDisplay"); |
||||||
|
+ |
||||||
|
+ if (get_platform_display) |
||||||
|
+ dpy = get_platform_display (EGL_PLATFORM_X11_KHR, native, NULL); |
||||||
|
+ |
||||||
|
+ if (dpy) |
||||||
|
+ return dpy; |
||||||
|
+ } |
||||||
|
+ |
||||||
|
+ if (g_strstr_len (client_exts, -1, "EGL_EXT_platform_base")) { |
||||||
|
+ PFNEGLGETPLATFORMDISPLAYEXTPROC get_platform_display = |
||||||
|
+ (void *) eglGetProcAddress ("eglGetPlatformDisplayEXT"); |
||||||
|
+ |
||||||
|
+ if (get_platform_display) |
||||||
|
+ dpy = get_platform_display (EGL_PLATFORM_X11_KHR, native, NULL); |
||||||
|
+ |
||||||
|
+ if (dpy) |
||||||
|
+ return dpy; |
||||||
|
+ } |
||||||
|
+ |
||||||
|
+ return eglGetDisplay ((EGLNativeDisplayType) native); |
||||||
|
+} |
||||||
|
+ |
||||||
|
static char * |
||||||
|
get_gles_renderer (void) |
||||||
|
{ |
||||||
|
@@ -67,7 +99,9 @@ get_gles_renderer (void) |
||||||
|
gdk_error_trap_push (); |
||||||
|
|
||||||
|
display = GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()); |
||||||
|
- egl_dpy = eglGetDisplay (display); |
||||||
|
+ |
||||||
|
+ egl_dpy = get_display (display); |
||||||
|
+ |
||||||
|
if (!egl_dpy) { |
||||||
|
g_warning ("eglGetDisplay() failed"); |
||||||
|
goto out; |
||||||
|
-- |
||||||
|
2.9.3 |
||||||
|
|
@ -0,0 +1,57 @@ |
|||||||
|
From 63d74edc4b112669fdce14d88d37e2dd0315ff7e Mon Sep 17 00:00:00 2001 |
||||||
|
From: Ray Strode <rstrode@redhat.com> |
||||||
|
Date: Tue, 19 Nov 2019 09:29:16 -0500 |
||||||
|
Subject: [PATCH] gnome-session: don't validate shell before using it |
||||||
|
|
||||||
|
Users sometimes set their shell to an invalid shell to prevent |
||||||
|
login from proceeding. |
||||||
|
|
||||||
|
GNOME on Wayland still allows login in these cases. |
||||||
|
|
||||||
|
This commit makes the behavior match expectations by skipping |
||||||
|
shell validity checks when deciding to run though a login shell. |
||||||
|
--- |
||||||
|
gnome-session/gnome-session.in | 5 +---- |
||||||
|
1 file changed, 1 insertion(+), 4 deletions(-) |
||||||
|
|
||||||
|
diff --git a/gnome-session/gnome-session.in b/gnome-session/gnome-session.in |
||||||
|
index ddd1a591..b4b1f8fa 100755 |
||||||
|
--- a/gnome-session/gnome-session.in |
||||||
|
+++ b/gnome-session/gnome-session.in |
||||||
|
@@ -1,32 +1,29 @@ |
||||||
|
#!/bin/sh |
||||||
|
|
||||||
|
if [ "x$XDG_SESSION_TYPE" = "xwayland" ] && |
||||||
|
[ "x$XDG_SESSION_CLASS" != "xgreeter" ] && |
||||||
|
- [ -n "$SHELL" ] && |
||||||
|
- grep -q "$SHELL" /etc/shells && |
||||||
|
- ! (echo "$SHELL" | grep -q "false") && |
||||||
|
- ! (echo "$SHELL" | grep -q "nologin"); then |
||||||
|
+ [ -n "$SHELL" ]; then |
||||||
|
if [ "$1" != '-l' ]; then |
||||||
|
exec bash -c "exec -l '$SHELL' -c '$0 -l $*'" |
||||||
|
else |
||||||
|
shift |
||||||
|
fi |
||||||
|
fi |
||||||
|
|
||||||
|
SETTING=$(G_MESSAGES_DEBUG='' gsettings get org.gnome.system.locale region) |
||||||
|
REGION=${SETTING#\'} |
||||||
|
REGION=${REGION%\'} |
||||||
|
|
||||||
|
if [ -n "$REGION" ]; then |
||||||
|
unset LC_TIME LC_NUMERIC LC_MONETARY LC_MEASUREMENT LC_PAPER |
||||||
|
|
||||||
|
if [ "$LANG" != "$REGION" ] ; then |
||||||
|
export LC_TIME=$REGION |
||||||
|
export LC_NUMERIC=$REGION |
||||||
|
export LC_MONETARY=$REGION |
||||||
|
export LC_MEASUREMENT=$REGION |
||||||
|
export LC_PAPER=$REGION |
||||||
|
fi |
||||||
|
fi |
||||||
|
|
||||||
|
exec @libexecdir@/gnome-session-binary "$@" |
||||||
|
-- |
||||||
|
2.32.0 |
||||||
|
|
@ -0,0 +1,12 @@ |
|||||||
|
--- gnome-session/data/hardware-compatibility 2012-03-21 16:30:06.269104695 -0700 |
||||||
|
+++ gnome-session/data/hardware-compatibility.new 2012-03-22 23:26:37.201967075 -0700 |
||||||
|
@@ -19,6 +19,9 @@ |
||||||
|
-Mesa DRI R[12]00[^[:digit:]] |
||||||
|
-Mesa DRI R[12]00$ |
||||||
|
|
||||||
|
+# NV30 family on Nouveau: https://bugzilla.redhat.com/show_bug.cgi?id=745202 |
||||||
|
+-Gallium .* on NV3[0-9A-F]$ |
||||||
|
+ |
||||||
|
# Old Mesa software GL renderer |
||||||
|
-software rasterizer |
||||||
|
|
@ -0,0 +1,12 @@ |
|||||||
|
diff -up gnome-session-3.6.2/data/hardware-compatibility.jx gnome-session-3.6.2/data/hardware-compatibility |
||||||
|
--- gnome-session-3.6.2/data/hardware-compatibility.jx 2012-12-10 12:43:06.000000000 -0500 |
||||||
|
+++ gnome-session-3.6.2/data/hardware-compatibility 2012-12-10 12:43:50.424352484 -0500 |
||||||
|
@@ -23,7 +23,7 @@ |
||||||
|
-Gallium .* on NV3[0-9A-F]$ |
||||||
|
|
||||||
|
# Old Mesa software GL renderer |
||||||
|
--software rasterizer |
||||||
|
+#software rasterizer |
||||||
|
|
||||||
|
# Gallium has softpipe; we explicitly enable llvmpipe |
||||||
|
-softpipe |
@ -0,0 +1,27 @@ |
|||||||
|
[Desktop Entry] |
||||||
|
Name[de]=Standard (X11 Anzeige-Server) |
||||||
|
Name[es]=Estándar (servidor gráfico X11) |
||||||
|
Name[fr]=Standard (serveur affichage X11) |
||||||
|
Name[it]=Standard (server grafico X11) |
||||||
|
Name[ja]=スタンダード (X11 ディスプレイサーバー) |
||||||
|
Name[ko]=탠다드 (X11 디스플레이 서버) |
||||||
|
Name[pt_BR]=Padrão (servidor de exibição X11) |
||||||
|
Name[ru]=Стандартный (дисплейный сервер X11) |
||||||
|
Name[zh_CN]=标准(X11 显示服务器) |
||||||
|
Name[zh_TW]=標準(X11顯示服務器) |
||||||
|
Name=Standard (X11 display server) |
||||||
|
Comment[de]=Diese Sitzung meldet Sie bei GNOME an |
||||||
|
Comment[es]=Esta sesión accede a GNOME |
||||||
|
Comment[fr]=Cette session vous connecte dans GNOME |
||||||
|
Comment[it]=Questa sessione esegue l'accesso in GNOME |
||||||
|
Comment[ja]=このセッションで GNOME にログインします |
||||||
|
Comment[ko]=이 세션을 사용하면 그놈에 로그인합니다 |
||||||
|
Comment[pt_BR]=Essa sessão o leva ao GNOME |
||||||
|
Comment[ru]=Этот сеанс позволяет вам войти в GNOME |
||||||
|
Comment[zh_CN]=此会话将您登录到 GNOME |
||||||
|
Comment[zh_TW]=這個工作階段讓您登入 GNOME |
||||||
|
Comment=This session logs you into GNOME |
||||||
|
Exec=gnome-session |
||||||
|
TryExec=gnome-session |
||||||
|
Type=Application |
||||||
|
DesktopNames=GNOME |
@ -0,0 +1,27 @@ |
|||||||
|
[Desktop Entry] |
||||||
|
Name[de]=Standard (Wayland Anzeige-Server) |
||||||
|
Name[es]=Estándar (servidor gráfico Wayland) |
||||||
|
Name[fr]=Standard (serveur affichage Wayland) |
||||||
|
Name[it]=Standard (server grafico Wayland) |
||||||
|
Name[ja]=スタンダード (Wayland ディスプレイサーバー) |
||||||
|
Name[ko]=스탠다드 (Wayland 디스플레이 서버) |
||||||
|
Name[pt_BR]=Padrão (servidor de exibição Wayland) |
||||||
|
Name[ru]=Стандартный (дисплейный сервер Wayland) |
||||||
|
Name[zh_CN]=标准(Wayland 显示服务器) |
||||||
|
Name[zh_TW]=標準(Wayland顯示服務器) |
||||||
|
Name=Standard (Wayland display server) |
||||||
|
Comment[de]=Diese Sitzung meldet Sie bei GNOME an |
||||||
|
Comment[es]=Esta sesión accede a GNOME |
||||||
|
Comment[fr]=Cette session vous connecte dans GNOME |
||||||
|
Comment[it]=Questa sessione esegue l'accesso in GNOME |
||||||
|
Comment[ja]=このセッションで GNOME にログインします |
||||||
|
Comment[ko]=이 세션을 사용하면 그놈에 로그인합니다 |
||||||
|
Comment[pt_BR]=Essa sessão o leva ao GNOME |
||||||
|
Comment[ru]=Этот сеанс позволяет вам войти в GNOME |
||||||
|
Comment[zh_CN]=此会话将您登录到 GNOME |
||||||
|
Comment[zh_TW]=這個工作階段讓您登入 GNOME |
||||||
|
Comment=This session logs you into GNOME |
||||||
|
Exec=gnome-session |
||||||
|
TryExec=gnome-session |
||||||
|
Type=Application |
||||||
|
DesktopNames=GNOME |
@ -0,0 +1,26 @@ |
|||||||
|
From 523602887f92b448b497e99bf56d0b9f1ef376f7 Mon Sep 17 00:00:00 2001 |
||||||
|
From: Kalev Lember <klember@redhat.com> |
||||||
|
Date: Mon, 6 Sep 2021 21:12:38 +0200 |
||||||
|
Subject: [PATCH] data: Require org.gnome.SettingsDaemon.Subscription |
||||||
|
|
||||||
|
Make sure the gnome-settings-daemon subman plugin gets started on |
||||||
|
session startup. |
||||||
|
--- |
||||||
|
data/meson.build | 1 + |
||||||
|
1 file changed, 1 insertion(+) |
||||||
|
|
||||||
|
diff --git a/data/meson.build b/data/meson.build |
||||||
|
index e02b80d3..1684a99e 100644 |
||||||
|
--- a/data/meson.build |
||||||
|
+++ b/data/meson.build |
||||||
|
@@ -24,6 +24,7 @@ required_components = { |
||||||
|
'org.gnome.SettingsDaemon.Sharing', |
||||||
|
'org.gnome.SettingsDaemon.Smartcard', |
||||||
|
'org.gnome.SettingsDaemon.Sound', |
||||||
|
+ 'org.gnome.SettingsDaemon.Subscription', |
||||||
|
'org.gnome.SettingsDaemon.UsbProtection', |
||||||
|
'org.gnome.SettingsDaemon.Wacom', |
||||||
|
'org.gnome.SettingsDaemon.XSettings', |
||||||
|
-- |
||||||
|
2.31.1 |
||||||
|
|
Loading…
Reference in new issue