diff --git a/0001-Add-support-for-new-ConfirmedRebootToBootOptions-sig.patch b/0001-Add-support-for-new-ConfirmedRebootToBootOptions-sig.patch index 1ff6a6e..4044718 100644 --- a/0001-Add-support-for-new-ConfirmedRebootToBootOptions-sig.patch +++ b/0001-Add-support-for-new-ConfirmedRebootToBootOptions-sig.patch @@ -22,48 +22,43 @@ this for the distro's chosen bootloader. I will start a discussion on systemd-devel to come up with a distro / bootloader agnostic interface for this. --- - gnome-session/gsm-manager.c | 28 ++++++++++++++++++++++++++++ - gnome-session/gsm-shell.c | 10 ++++++++++ - gnome-session/gsm-shell.h | 7 ++++--- - 3 files changed, 42 insertions(+), 3 deletions(-) - diff --git a/gnome-session/gsm-manager.c b/gnome-session/gsm-manager.c -index 6eeea4a6..e0f190a1 100644 +index 6839a02..a915785 100644 --- a/gnome-session/gsm-manager.c +++ b/gnome-session/gsm-manager.c -@@ -109,6 +109,7 @@ typedef enum +@@ -117,6 +117,7 @@ typedef enum GSM_MANAGER_LOGOUT_NONE, GSM_MANAGER_LOGOUT_LOGOUT, GSM_MANAGER_LOGOUT_REBOOT, -+ GSM_MANAGER_LOGOUT_REBOOT_TO_BOOT_OPTIONS, ++ GSM_MANAGER_LOGOUT_REBOOT_TO_BOOT_OPTIONS, GSM_MANAGER_LOGOUT_REBOOT_INTERACT, GSM_MANAGER_LOGOUT_SHUTDOWN, GSM_MANAGER_LOGOUT_SHUTDOWN_INTERACT, -@@ -165,6 +166,7 @@ struct GsmManagerPrivate +@@ -176,6 +177,7 @@ struct GsmManagerPrivate guint shell_end_session_dialog_confirmed_logout_id; guint shell_end_session_dialog_confirmed_shutdown_id; guint shell_end_session_dialog_confirmed_reboot_id; -+ guint shell_end_session_dialog_confirmed_reboot_to_boot_options_id; ++ guint shell_end_session_dialog_confirmed_reboot_to_boot_options_id; }; enum { -@@ -478,6 +480,7 @@ gsm_manager_quit (GsmManager *manager) +@@ -490,6 +492,7 @@ gsm_manager_quit (GsmManager *manager) gsm_quit (); break; case GSM_MANAGER_LOGOUT_REBOOT: -+ case GSM_MANAGER_LOGOUT_REBOOT_TO_BOOT_OPTIONS: ++ case GSM_MANAGER_LOGOUT_REBOOT_TO_BOOT_OPTIONS: case GSM_MANAGER_LOGOUT_REBOOT_INTERACT: gsm_system_complete_shutdown (manager->priv->system); - break; -@@ -1138,6 +1141,7 @@ end_session_or_show_shell_dialog (GsmManager *manager) + gsm_quit (); +@@ -1161,6 +1164,7 @@ end_session_or_show_shell_dialog (GsmManager *manager) type = GSM_SHELL_END_SESSION_DIALOG_TYPE_LOGOUT; break; case GSM_MANAGER_LOGOUT_REBOOT: -+ case GSM_MANAGER_LOGOUT_REBOOT_TO_BOOT_OPTIONS: ++ case GSM_MANAGER_LOGOUT_REBOOT_TO_BOOT_OPTIONS: case GSM_MANAGER_LOGOUT_REBOOT_INTERACT: type = GSM_SHELL_END_SESSION_DIALOG_TYPE_RESTART; break; -@@ -3324,6 +3328,12 @@ disconnect_shell_dialog_signals (GsmManager *manager) +@@ -3455,6 +3459,12 @@ disconnect_shell_dialog_signals (GsmManager *manager) manager->priv->shell_end_session_dialog_confirmed_reboot_id = 0; } @@ -76,7 +71,7 @@ index 6eeea4a6..e0f190a1 100644 if (manager->priv->shell_end_session_dialog_open_failed_id != 0) { g_signal_handler_disconnect (manager->priv->shell, manager->priv->shell_end_session_dialog_open_failed_id); -@@ -3386,6 +3396,14 @@ on_shell_end_session_dialog_confirmed_reboot (GsmShell *shell, +@@ -3517,6 +3527,14 @@ on_shell_end_session_dialog_confirmed_reboot (GsmShell *shell, disconnect_shell_dialog_signals (manager); } @@ -91,7 +86,7 @@ index 6eeea4a6..e0f190a1 100644 static void connect_shell_dialog_signals (GsmManager *manager) { -@@ -3421,6 +3439,12 @@ connect_shell_dialog_signals (GsmManager *manager) +@@ -3552,6 +3570,12 @@ connect_shell_dialog_signals (GsmManager *manager) "end-session-dialog-confirmed-reboot", G_CALLBACK (on_shell_end_session_dialog_confirmed_reboot), manager); @@ -104,7 +99,7 @@ index 6eeea4a6..e0f190a1 100644 } static void -@@ -3694,6 +3718,10 @@ do_query_end_session_exit (GsmManager *manager) +@@ -3825,6 +3849,10 @@ do_query_end_session_exit (GsmManager *manager) case GSM_MANAGER_LOGOUT_REBOOT_INTERACT: reboot = TRUE; break; @@ -116,14 +111,14 @@ index 6eeea4a6..e0f190a1 100644 case GSM_MANAGER_LOGOUT_SHUTDOWN_INTERACT: shutdown = TRUE; diff --git a/gnome-session/gsm-shell.c b/gnome-session/gsm-shell.c -index 04cfa2f5..d727232d 100644 +index 04cfa2f..ac2a157 100644 --- a/gnome-session/gsm-shell.c +++ b/gnome-session/gsm-shell.c @@ -69,6 +69,7 @@ enum { END_SESSION_DIALOG_CONFIRMED_LOGOUT, END_SESSION_DIALOG_CONFIRMED_SHUTDOWN, END_SESSION_DIALOG_CONFIRMED_REBOOT, -+ END_SESSION_DIALOG_CONFIRMED_REBOOT_TO_BOOT_OPTIONS, ++ END_SESSION_DIALOG_CONFIRMED_REBOOT_TO_BOOT_OPTIONS, NUMBER_OF_SIGNALS }; @@ -146,12 +141,12 @@ index 04cfa2f5..d727232d 100644 { "Canceled", END_SESSION_DIALOG_CANCELED }, { "ConfirmedLogout", END_SESSION_DIALOG_CONFIRMED_LOGOUT }, { "ConfirmedReboot", END_SESSION_DIALOG_CONFIRMED_REBOOT }, -+ { "ConfirmedRebootToBootOptions", END_SESSION_DIALOG_CONFIRMED_REBOOT_TO_BOOT_OPTIONS }, ++ { "ConfirmedRebootToBootOptions", END_SESSION_DIALOG_CONFIRMED_REBOOT_TO_BOOT_OPTIONS }, { "ConfirmedShutdown", END_SESSION_DIALOG_CONFIRMED_SHUTDOWN }, { NULL, -1 } }; diff --git a/gnome-session/gsm-shell.h b/gnome-session/gsm-shell.h -index e236493a..b1cdd457 100644 +index e236493..b1cdd45 100644 --- a/gnome-session/gsm-shell.h +++ b/gnome-session/gsm-shell.h @@ -64,9 +64,10 @@ struct _GsmShellClass @@ -168,6 +163,3 @@ index e236493a..b1cdd457 100644 }; --- -2.19.0 - diff --git a/0001-check-accelerated-gles-Use-eglGetPlatformDisplay-EXT.patch b/0001-check-accelerated-gles-Use-eglGetPlatformDisplay-EXT.patch index 6763654..e8e85ae 100644 --- a/0001-check-accelerated-gles-Use-eglGetPlatformDisplay-EXT.patch +++ b/0001-check-accelerated-gles-Use-eglGetPlatformDisplay-EXT.patch @@ -8,14 +8,12 @@ can't guess correctly. Be explicit. Signed-off-by: Adam Jackson --- - .../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 +index 6a4463d..e05d49f 100644 --- a/tools/gnome-session-check-accelerated-gles-helper.c +++ b/tools/gnome-session-check-accelerated-gles-helper.c -@@ -34,11 +34,43 @@ +@@ -38,11 +38,43 @@ #include #include #include @@ -32,25 +30,25 @@ index 2a38d9e..472d1ad 100644 + 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"); ++ PFNEGLGETPLATFORMDISPLAYEXTPROC get_platform_display = ++ (void *) eglGetProcAddress ("eglGetPlatformDisplay"); + -+ if (get_platform_display) -+ dpy = get_platform_display (EGL_PLATFORM_X11_KHR, native, NULL); ++ if (get_platform_display) ++ dpy = get_platform_display (EGL_PLATFORM_X11_KHR, native, NULL); + -+ if (dpy) -+ return dpy; ++ if (dpy) ++ return dpy; + } + + if (g_strstr_len (client_exts, -1, "EGL_EXT_platform_base")) { -+ PFNEGLGETPLATFORMDISPLAYEXTPROC get_platform_display = -+ (void *) eglGetProcAddress ("eglGetPlatformDisplayEXT"); ++ PFNEGLGETPLATFORMDISPLAYEXTPROC get_platform_display = ++ (void *) eglGetProcAddress ("eglGetPlatformDisplayEXT"); + -+ if (get_platform_display) -+ dpy = get_platform_display (EGL_PLATFORM_X11_KHR, native, NULL); ++ if (get_platform_display) ++ dpy = get_platform_display (EGL_PLATFORM_X11_KHR, native, NULL); + -+ if (dpy) -+ return dpy; ++ if (dpy) ++ return dpy; + } + + return eglGetDisplay ((EGLNativeDisplayType) native); @@ -59,17 +57,14 @@ index 2a38d9e..472d1ad 100644 static char * get_gles_renderer (void) { -@@ -67,7 +99,9 @@ get_gles_renderer (void) +@@ -71,7 +103,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); ++ egl_dpy = get_display (display); + if (!egl_dpy) { g_warning ("eglGetDisplay() failed"); goto out; --- -2.9.3 - diff --git a/gnome-session-3.30.1.tar.xz b/gnome-session-3.30.1.tar.xz deleted file mode 100644 index 1018536..0000000 Binary files a/gnome-session-3.30.1.tar.xz and /dev/null differ diff --git a/gnome-session-3.38.0.tar.xz b/gnome-session-3.38.0.tar.xz new file mode 100644 index 0000000..acf97cc Binary files /dev/null and b/gnome-session-3.38.0.tar.xz differ diff --git a/gnome-session.spec b/gnome-session.spec index 83b9ed9..0d0d2c7 100644 --- a/gnome-session.spec +++ b/gnome-session.spec @@ -1,10 +1,10 @@ Name: gnome-session Summary: Session Management Tools for the GNOME Desktop -Version: 3.30.1 -Release: 4 +Version: 3.38.0 +Release: 1 License: GPLv2+ URL: http://www.gnome.org -Source0: http://download.gnome.org/sources/%{name}/3.30/%{name}-%{version}.tar.xz +Source0: http://download.gnome.org/sources/%{name}/3.38/%{name}-%{version}.tar.xz Patch0001: 0001-check-accelerated-gles-Use-eglGetPlatformDisplay-EXT.patch Patch0002: 0001-Add-support-for-new-ConfirmedRebootToBootOptions-sig.patch @@ -20,9 +20,9 @@ Requires: dconf dbus-x11 system-logos control-center-filesystem gnome-shell Requires: xorg-x11-server-Xorg%{?_isa} Requires: xorg-x11-server-Xwayland%{?_isa} -Obsoletes: %{name}-xsession = %{version}-%{release} +Obsoletes: %{name}-xsession < %{version}-%{release} Provides: %{name}-xsession = %{version}-%{release} -Obsoletes: %{name}-wayland-session = %{version}-%{release} +Obsoletes: %{name}-wayland-session < %{version}-%{release} Provides: %{name}-wayland-session = %{version}-%{release} %description @@ -54,6 +54,8 @@ sed -i 's/idm[0-9]\{5,32\}\"/idm123456789123456\"/g' $(find -name %{name}.html) %{_datadir}/GConf/gsettings/%{name}.convert %{_datadir}/xsessions/* %{_datadir}/wayland-sessions/* +%{_userunitdir}/gnome-session* +%{_userunitdir}/gnome-launched-.scope.d/ %files help %doc AUTHORS NEWS README @@ -64,6 +66,11 @@ sed -i 's/idm[0-9]\{5,32\}\"/idm123456789123456\"/g' $(find -name %{name}.html) %postun -p /sbin/ldconfig %changelog +* Mon May 31 2021 weijin deng - 3.38.0-1 +- Upgrade to 3.38.0 +- Update Version, Release, Source0, Obsoletes +- Modify patches, update stage 'files' + * Fri Apr 3 2020 chenli - 3.30.1-4 - modify spec