From aed9e602157236e31c0381827f0a5ed76d35f543a77e54adfea4d792a5ff8120 Mon Sep 17 00:00:00 2001 From: Dominique Leuenberger Date: Wed, 6 May 2020 16:21:38 +0000 Subject: [PATCH] Accepting request 800434 from GNOME:Next New stable rel, now with new Requires. Still maintain that we should let this one wait a day or 2 more OBS-URL: https://build.opensuse.org/request/show/800434 OBS-URL: https://build.opensuse.org/package/show/GNOME:Factory/gdm?expand=0&rev=454 --- _service | 2 +- gdm-3.34.1.obscpio | 3 - gdm-3.36.2.obscpio | 3 + gdm-Use-pkg-config-for-keyutils.patch | 37 ------ ...on-to-disable-starting-X-server-as-u.patch | 16 +-- gdm-default-wm.patch | 6 +- gdm-disable-wayland-on-mgag200-chipsets.patch | 8 +- gdm-initial-setup-hardening.patch | 12 +- gdm-look-for-session-based-on-pid-first.patch | 124 ------------------ gdm-suse-xsession.patch | 24 ++-- gdm-switch-to-tty1.patch | 6 +- gdm-switch-user-tty7.patch | 10 +- gdm-sysconfig-settings.patch | 34 ++--- gdm-xauthlocalhostname.patch | 39 +++--- gdm.changes | 19 +++ gdm.obsinfo | 6 +- gdm.spec | 9 +- 17 files changed, 108 insertions(+), 250 deletions(-) delete mode 100644 gdm-3.34.1.obscpio create mode 100644 gdm-3.36.2.obscpio delete mode 100644 gdm-Use-pkg-config-for-keyutils.patch delete mode 100644 gdm-look-for-session-based-on-pid-first.patch diff --git a/_service b/_service index 3ebe00e..49a85de 100644 --- a/_service +++ b/_service @@ -2,7 +2,7 @@ git https://gitlab.gnome.org/GNOME/gdm.git - refs/tags/3.34.1 + 3.36.2 @PARENT_TAG@ diff --git a/gdm-3.34.1.obscpio b/gdm-3.34.1.obscpio deleted file mode 100644 index 30d9bc8..0000000 --- a/gdm-3.34.1.obscpio +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:6767010dfa403267b0a2dd8242932cbbb7891da13b310e7cfbec79a34076b5e1 -size 7456269 diff --git a/gdm-3.36.2.obscpio b/gdm-3.36.2.obscpio new file mode 100644 index 0000000..ed86957 --- /dev/null +++ b/gdm-3.36.2.obscpio @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:844427040b949f6500b882bf51979a9369424758aa98973fa05ae3d9f1024d81 +size 7168013 diff --git a/gdm-Use-pkg-config-for-keyutils.patch b/gdm-Use-pkg-config-for-keyutils.patch deleted file mode 100644 index 6ac4091..0000000 --- a/gdm-Use-pkg-config-for-keyutils.patch +++ /dev/null @@ -1,37 +0,0 @@ -From 141f8bc24401db636c4b1a9dd991c68d7b3282f0 Mon Sep 17 00:00:00 2001 -From: Debarshi Ray -Date: Fri, 31 Jan 2020 19:27:02 +0100 -Subject: [PATCH] configure: Use pkg-config to look for keyutils - -Support for pkg-config was added to keyutils somewhat recently in -November 2018 [1], whereas the keyutils dependency was originally added -in August 2016 in commit 31ed6f2b3f1ab45ae07aad41c13a51ba91fd159d. - -[1] Keyutils commit d4d758a04616b770 - https://git.kernel.org/pub/scm/linux/kernel/git/dhowells/keyutils.git/commit/?id=d4d758a04616b770 - -https://gitlab.gnome.org/GNOME/gdm/merge_requests/91 ---- - configure.ac | 9 ++++----- - 1 file changed, 4 insertions(+), 5 deletions(-) - -Index: gdm-3.34.1/configure.ac -=================================================================== ---- gdm-3.34.1.orig/configure.ac -+++ gdm-3.34.1/configure.ac -@@ -532,11 +532,10 @@ if test "x$supports_pam_extensions" = "x - AC_DEFINE(SUPPORTS_PAM_EXTENSIONS, 1, [Define if PAM supports GDMs custom extensions]) - fi - --AC_CHECK_LIB(keyutils, keyctl_read, [ -- AC_DEFINE(HAVE_KEYUTILS, 1, [Define if have keyutils]) -- KEYUTILS_LIBS="-lkeyutils" -- KEYUTILS_CFLAGS="" --]) -+PKG_CHECK_MODULES([KEYUTILS], -+ [libkeyutils], -+ [AC_DEFINE([HAVE_KEYUTILS], [1], [Define if have keyutils])], -+ [true]) - AC_SUBST(KEYUTILS_LIBS) - AC_SUBST(KEYUTILS_CFLAGS) - diff --git a/gdm-add-runtime-option-to-disable-starting-X-server-as-u.patch b/gdm-add-runtime-option-to-disable-starting-X-server-as-u.patch index 7f7628d..7286f7e 100644 --- a/gdm-add-runtime-option-to-disable-starting-X-server-as-u.patch +++ b/gdm-add-runtime-option-to-disable-starting-X-server-as-u.patch @@ -9,10 +9,10 @@ X server will be started under root. The same way as if gdm was built with This allows system to run X server under root if and only-if necessary. --- -Index: gdm-3.34.1/daemon/gdm-local-display-factory.c +Index: gdm-3.36.2/daemon/gdm-local-display-factory.c =================================================================== ---- gdm-3.34.1.orig/daemon/gdm-local-display-factory.c -+++ gdm-3.34.1/daemon/gdm-local-display-factory.c +--- gdm-3.36.2.orig/daemon/gdm-local-display-factory.c ++++ gdm-3.36.2/daemon/gdm-local-display-factory.c @@ -231,11 +231,12 @@ gdm_local_display_factory_create_transie g_debug ("GdmLocalDisplayFactory: Creating transient display"); @@ -48,10 +48,10 @@ Index: gdm-3.34.1/daemon/gdm-local-display-factory.c display = gdm_local_display_new (); if (session_type != NULL) { g_object_set (G_OBJECT (display), "session-type", session_type, NULL); -Index: gdm-3.34.1/daemon/gdm-session.c +Index: gdm-3.36.2/daemon/gdm-session.c =================================================================== ---- gdm-3.34.1.orig/daemon/gdm-session.c -+++ gdm-3.34.1/daemon/gdm-session.c +--- gdm-3.36.2.orig/daemon/gdm-session.c ++++ gdm-3.36.2/daemon/gdm-session.c @@ -373,7 +373,11 @@ get_system_session_dirs (GdmSession *sel #ifdef ENABLE_WAYLAND_SUPPORT if (!self->ignore_wayland) { @@ -65,7 +65,7 @@ Index: gdm-3.34.1/daemon/gdm-session.c for (i = 0; system_data_dirs[i]; i++) { gchar *dir = g_build_filename (system_data_dirs[i], "wayland-sessions", NULL); -@@ -3315,8 +3319,10 @@ gdm_session_get_display_mode (GdmSession +@@ -3325,8 +3329,10 @@ gdm_session_get_display_mode (GdmSession * right now. It will die with an error if logind devices * are paused when handed out. */ @@ -78,7 +78,7 @@ Index: gdm-3.34.1/daemon/gdm-session.c #ifdef ENABLE_WAYLAND_SUPPORT /* Wayland sessions are for now assumed to run in a -@@ -3327,7 +3333,6 @@ gdm_session_get_display_mode (GdmSession +@@ -3337,7 +3343,6 @@ gdm_session_get_display_mode (GdmSession } #endif return GDM_SESSION_DISPLAY_MODE_REUSE_VT; diff --git a/gdm-default-wm.patch b/gdm-default-wm.patch index 742e29e..6c2d5c3 100644 --- a/gdm-default-wm.patch +++ b/gdm-default-wm.patch @@ -1,7 +1,7 @@ -Index: gdm-3.31.91/daemon/gdm-session.c +Index: gdm-3.36.2/daemon/gdm-session.c =================================================================== ---- gdm-3.31.91.orig/daemon/gdm-session.c 2019-02-21 20:44:22.000000000 +0100 -+++ gdm-3.31.91/daemon/gdm-session.c 2019-02-27 07:46:21.417932330 +0100 +--- gdm-3.36.2.orig/daemon/gdm-session.c ++++ gdm-3.36.2/daemon/gdm-session.c @@ -43,6 +43,8 @@ #include #include diff --git a/gdm-disable-wayland-on-mgag200-chipsets.patch b/gdm-disable-wayland-on-mgag200-chipsets.patch index a393081..297b284 100644 --- a/gdm-disable-wayland-on-mgag200-chipsets.patch +++ b/gdm-disable-wayland-on-mgag200-chipsets.patch @@ -1,8 +1,8 @@ -Index: gdm-3.34.1/data/61-gdm.rules.in +Index: gdm-3.36.2/data/61-gdm.rules.in =================================================================== ---- gdm-3.34.1.orig/data/61-gdm.rules.in -+++ gdm-3.34.1/data/61-gdm.rules.in -@@ -4,3 +4,12 @@ ATTR{vendor}=="0x1013", ATTR{device}=="0 +--- gdm-3.36.2.orig/data/61-gdm.rules.in ++++ gdm-3.36.2/data/61-gdm.rules.in +@@ -2,3 +2,12 @@ ATTR{vendor}=="0x19e5", ATTR{device}=="0x1711", RUN+="@libexecdir@/gdm-disable-wayland" # disable Wayland when using the proprietary nvidia driver DRIVER=="nvidia", RUN+="@libexecdir@/gdm-disable-wayland" diff --git a/gdm-initial-setup-hardening.patch b/gdm-initial-setup-hardening.patch index a12836b..698a995 100644 --- a/gdm-initial-setup-hardening.patch +++ b/gdm-initial-setup-hardening.patch @@ -1,7 +1,7 @@ -Index: b/daemon/gdm-display.c +Index: gdm-3.36.2/daemon/gdm-display.c =================================================================== ---- a/daemon/gdm-display.c 2019-10-07 16:56:30.000000000 +0800 -+++ b/daemon/gdm-display.c 2019-10-11 18:32:02.962410140 +0800 +--- gdm-3.36.2.orig/daemon/gdm-display.c ++++ gdm-3.36.2/daemon/gdm-display.c @@ -1523,12 +1523,12 @@ can_create_environment (const char *sess return session_exists; } @@ -27,10 +27,10 @@ Index: b/daemon/gdm-display.c return FALSE; } -Index: b/daemon/gdm-manager.c +Index: gdm-3.36.2/daemon/gdm-manager.c =================================================================== ---- a/daemon/gdm-manager.c 2019-10-07 16:56:30.000000000 +0800 -+++ b/daemon/gdm-manager.c 2019-10-11 18:32:26.370601206 +0800 +--- gdm-3.36.2.orig/daemon/gdm-manager.c ++++ gdm-3.36.2/daemon/gdm-manager.c @@ -62,7 +62,7 @@ #define GDM_MANAGER_DISPLAYS_PATH GDM_DBUS_PATH "/Displays" diff --git a/gdm-look-for-session-based-on-pid-first.patch b/gdm-look-for-session-based-on-pid-first.patch deleted file mode 100644 index 8d791e3..0000000 --- a/gdm-look-for-session-based-on-pid-first.patch +++ /dev/null @@ -1,124 +0,0 @@ -From 32646105196ed7a687f3684b69ea544dd01d2ade Mon Sep 17 00:00:00 2001 -From: Benjamin Berg -Date: Thu, 23 Jan 2020 14:32:38 +0100 -Subject: [PATCH] manager: Try looking up session based on PID first - -Unfortunately, GDM may be running multiple greeters, and each greeter is -currently using the same user. So while in a lot of setups each user -should only have one graphical session and also only one DBus session -bus, this is not true for the gdm greeter. - -Lacking another solution (e.g. separate users), we need to be able to -correctly lookup the session information for all greeter instances. We -can do so by using sd_pid_get_session and using this information is safe -if it does return something. - -See: #526 ---- - common/gdm-common.c | 30 ++++++++++++++++++++++++++---- - common/gdm-common.h | 7 ++++--- - daemon/gdm-manager.c | 2 +- - libgdm/gdm-user-switching.c | 2 +- - 4 files changed, 32 insertions(+), 9 deletions(-) - -diff --git a/common/gdm-common.c b/common/gdm-common.c -index 41bdb389..b8de7555 100644 ---- a/common/gdm-common.c -+++ b/common/gdm-common.c -@@ -497,7 +497,7 @@ goto_login_session (GDBusConnection *connection, - * since the data allocated is from libsystemd-logind, which - * does not use GLib's g_malloc (). */ - -- if (!gdm_find_display_session_for_uid (getuid (), &our_session, &local_error)) { -+ if (!gdm_find_display_session (0, getuid (), &our_session, &local_error)) { - g_propagate_prefixed_error (error, local_error, _("Could not identify the current session: ")); - - return FALSE; -@@ -898,16 +898,38 @@ _systemd_session_is_active (const char *session_id) - } - - gboolean --gdm_find_display_session_for_uid (const uid_t uid, -- char **out_session_id, -- GError **error) -+gdm_find_display_session (GPid pid, -+ const uid_t uid, -+ char **out_session_id, -+ GError **error) - { - char *local_session_id = NULL; - g_auto(GStrv) sessions = NULL; - int n_sessions; -+ int res; - - g_return_val_if_fail (out_session_id != NULL, FALSE); - -+ /* First try to look up the session using the pid. We need this -+ * at least for the greeter, because it currently runs multiple -+ * sessions under the same user. -+ * See also commit 2b52d8933c8ab38e7ee83318da2363d00d8c5581 -+ * which added an explicit dbus-run-session for all but seat0. -+ */ -+ res = sd_pid_get_session (pid, &local_session_id); -+ if (res >= 0) { -+ g_debug ("GdmCommon: Found session %s for PID %d, using", local_session_id, pid); -+ -+ *out_session_id = g_strdup (local_session_id); -+ free (local_session_id); -+ -+ return TRUE; -+ } else { -+ if (res != -ENODATA) -+ g_warning ("GdmCommon: Failed to retrieve session information for pid %d: %s", -+ pid, strerror (-res)); -+ } -+ - g_debug ("Finding a graphical session for user %d", uid); - - n_sessions = sd_uid_get_sessions (uid, -diff --git a/common/gdm-common.h b/common/gdm-common.h -index 5c3fe137..001b70c1 100644 ---- a/common/gdm-common.h -+++ b/common/gdm-common.h -@@ -51,9 +51,10 @@ int gdm_wait_on_and_disown_pid (int pid, - int gdm_signal_pid (int pid, - int signal); - --gboolean gdm_find_display_session_for_uid (const uid_t uid, -- char **out_session_id, -- GError **error); -+gboolean gdm_find_display_session (GPid pid, -+ const uid_t uid, -+ char **out_session_id, -+ GError **error); - - gboolean gdm_get_pwent_for_name (const char *name, - struct passwd **pwentp); -diff --git a/daemon/gdm-manager.c b/daemon/gdm-manager.c -index 907eca37..d8dfa843 100644 ---- a/daemon/gdm-manager.c -+++ b/daemon/gdm-manager.c -@@ -501,7 +501,7 @@ get_display_and_details_for_bus_sender (GdmManager *self, - goto out; - } - -- ret = gdm_find_display_session_for_uid (caller_uid, &session_id, &error); -+ ret = gdm_find_display_session (pid, caller_uid, &session_id, &error); - - if (!ret) { - g_debug ("GdmManager: Unable to find display session for uid %d: %s", -diff --git a/libgdm/gdm-user-switching.c b/libgdm/gdm-user-switching.c -index 3a33fcbb..20235fd8 100644 ---- a/libgdm/gdm-user-switching.c -+++ b/libgdm/gdm-user-switching.c -@@ -203,7 +203,7 @@ goto_login_session (GDBusConnection *connection, - /* Note that we mostly use free () here, instead of g_free () - * since the data allocated is from libsystemd-logind, which - * does not use GLib's g_malloc (). */ -- if (!gdm_find_display_session_for_uid (getuid (), &our_session, &local_error)) { -+ if (!gdm_find_display_session (0, getuid (), &our_session, &local_error)) { - g_propagate_prefixed_error (error, local_error, _("Could not identify the current session: ")); - - return FALSE; --- -2.26.2 diff --git a/gdm-suse-xsession.patch b/gdm-suse-xsession.patch index d8a9452..b27ad83 100644 --- a/gdm-suse-xsession.patch +++ b/gdm-suse-xsession.patch @@ -1,7 +1,7 @@ -Index: gdm-3.34.1/data/Init.in +Index: gdm-3.36.2/data/Init.in =================================================================== ---- gdm-3.34.1.orig/data/Init.in -+++ gdm-3.34.1/data/Init.in +--- gdm-3.36.2.orig/data/Init.in ++++ gdm-3.36.2/data/Init.in @@ -1,4 +1,9 @@ #!/bin/sh + @@ -12,10 +12,10 @@ Index: gdm-3.34.1/data/Init.in # Stolen from the debian kdm setup, aren't I sneaky # Plus a lot of fun stuff added # -George -Index: gdm-3.34.1/data/PostSession.in +Index: gdm-3.36.2/data/PostSession.in =================================================================== ---- gdm-3.34.1.orig/data/PostSession.in -+++ gdm-3.34.1/data/PostSession.in +--- gdm-3.36.2.orig/data/PostSession.in ++++ gdm-3.36.2/data/PostSession.in @@ -1,3 +1,7 @@ #!/bin/sh @@ -24,10 +24,10 @@ Index: gdm-3.34.1/data/PostSession.in +fi + exit 0 -Index: gdm-3.34.1/data/Xsession.in +Index: gdm-3.36.2/data/Xsession.in =================================================================== ---- gdm-3.34.1.orig/data/Xsession.in -+++ gdm-3.34.1/data/Xsession.in +--- gdm-3.36.2.orig/data/Xsession.in ++++ gdm-3.36.2/data/Xsession.in @@ -1,4 +1,9 @@ #!@XSESSION_SHELL@ + @@ -38,10 +38,10 @@ Index: gdm-3.34.1/data/Xsession.in # # This is SORT OF LIKE an X session, but not quite. You get a command as the # first argument (it could be multiple words, so run it with "eval"). As a -Index: gdm-3.34.1/data/PreSession.in +Index: gdm-3.36.2/data/PreSession.in =================================================================== ---- gdm-3.34.1.orig/data/PreSession.in -+++ gdm-3.34.1/data/PreSession.in +--- gdm-3.36.2.orig/data/PreSession.in ++++ gdm-3.36.2/data/PreSession.in @@ -6,4 +6,8 @@ # # Note that output goes into the .xsession-errors file for easy debugging diff --git a/gdm-switch-to-tty1.patch b/gdm-switch-to-tty1.patch index 59ef248..b7d7727 100644 --- a/gdm-switch-to-tty1.patch +++ b/gdm-switch-to-tty1.patch @@ -1,7 +1,7 @@ -Index: gdm-3.34.1/daemon/main.c +Index: gdm-3.36.2/daemon/main.c =================================================================== ---- gdm-3.34.1.orig/daemon/main.c -+++ gdm-3.34.1/daemon/main.c +--- gdm-3.36.2.orig/daemon/main.c ++++ gdm-3.36.2/daemon/main.c @@ -61,6 +61,31 @@ static GdmSettings *settings = static uid_t gdm_uid = -1; static gid_t gdm_gid = -1; diff --git a/gdm-switch-user-tty7.patch b/gdm-switch-user-tty7.patch index bf073f0..83fa048 100644 --- a/gdm-switch-user-tty7.patch +++ b/gdm-switch-user-tty7.patch @@ -8,11 +8,11 @@ Closes #532 daemon/gdm-session-worker.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) -Index: gdm-3.34.1/daemon/gdm-session-worker.c +Index: gdm-3.36.2/daemon/gdm-session-worker.c =================================================================== ---- gdm-3.34.1.orig/daemon/gdm-session-worker.c -+++ gdm-3.34.1/daemon/gdm-session-worker.c -@@ -2201,7 +2201,7 @@ set_up_for_new_vt (GdmSessionWorker *wor +--- gdm-3.36.2.orig/daemon/gdm-session-worker.c ++++ gdm-3.36.2/daemon/gdm-session-worker.c +@@ -2209,7 +2209,7 @@ set_up_for_new_vt (GdmSessionWorker *wor return FALSE; } @@ -20,4 +20,4 @@ Index: gdm-3.34.1/daemon/gdm-session-worker.c + if (strcmp (worker->priv->service, "gdm-launch-environment") == 0) { session_vt = GDM_INITIAL_VT; } else { - if (ioctl(fd, VT_OPENQRY, &session_vt) < 0) { + diff --git a/gdm-sysconfig-settings.patch b/gdm-sysconfig-settings.patch index 43f3999..7ef9b6f 100644 --- a/gdm-sysconfig-settings.patch +++ b/gdm-sysconfig-settings.patch @@ -1,7 +1,7 @@ -Index: gdm-3.34.1/common/Makefile.am +Index: gdm-3.36.2/common/Makefile.am =================================================================== ---- gdm-3.34.1.orig/common/Makefile.am -+++ gdm-3.34.1/common/Makefile.am +--- gdm-3.36.2.orig/common/Makefile.am ++++ gdm-3.36.2/common/Makefile.am @@ -45,11 +45,15 @@ libgdmcommon_la_SOURCES = \ gdm-settings-backend.h \ gdm-settings-desktop-backend.c \ @@ -18,10 +18,10 @@ Index: gdm-3.34.1/common/Makefile.am gdm-log.h \ gdm-log.c \ $(NULL) -Index: gdm-3.34.1/common/gdm-settings-system-backend.c +Index: gdm-3.36.2/common/gdm-settings-system-backend.c =================================================================== --- /dev/null -+++ gdm-3.34.1/common/gdm-settings-system-backend.c ++++ gdm-3.36.2/common/gdm-settings-system-backend.c @@ -0,0 +1,369 @@ +/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*- + * @@ -392,10 +392,10 @@ Index: gdm-3.34.1/common/gdm-settings-system-backend.c + + return GDM_SETTINGS_BACKEND (object); +} -Index: gdm-3.34.1/common/gdm-settings-system-backend.h +Index: gdm-3.36.2/common/gdm-settings-system-backend.h =================================================================== --- /dev/null -+++ gdm-3.34.1/common/gdm-settings-system-backend.h ++++ gdm-3.36.2/common/gdm-settings-system-backend.h @@ -0,0 +1,56 @@ +/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*- + * @@ -453,10 +453,10 @@ Index: gdm-3.34.1/common/gdm-settings-system-backend.h +G_END_DECLS + +#endif /* __GDM_SETTINGS_SYSTEM_BACKEND_H */ -Index: gdm-3.34.1/common/gdm-settings.c +Index: gdm-3.36.2/common/gdm-settings.c =================================================================== ---- gdm-3.34.1.orig/common/gdm-settings.c -+++ gdm-3.34.1/common/gdm-settings.c +--- gdm-3.36.2.orig/common/gdm-settings.c ++++ gdm-3.36.2/common/gdm-settings.c @@ -38,6 +38,7 @@ #include "gdm-settings.h" @@ -474,10 +474,10 @@ Index: gdm-3.34.1/common/gdm-settings.c backend = gdm_settings_desktop_backend_new (GDM_RUNTIME_CONF); if (backend) settings->backends = g_list_prepend (settings->backends, backend); -Index: gdm-3.34.1/common/gdm-sysconfig.c +Index: gdm-3.36.2/common/gdm-sysconfig.c =================================================================== --- /dev/null -+++ gdm-3.34.1/common/gdm-sysconfig.c ++++ gdm-3.36.2/common/gdm-sysconfig.c @@ -0,0 +1,484 @@ +/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*- + * @@ -963,10 +963,10 @@ Index: gdm-3.34.1/common/gdm-sysconfig.c + g_strfreev (lines); + return result; +} -Index: gdm-3.34.1/common/gdm-sysconfig.h +Index: gdm-3.36.2/common/gdm-sysconfig.h =================================================================== --- /dev/null -+++ gdm-3.34.1/common/gdm-sysconfig.h ++++ gdm-3.36.2/common/gdm-sysconfig.h @@ -0,0 +1,43 @@ +/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*- + * @@ -1011,10 +1011,10 @@ Index: gdm-3.34.1/common/gdm-sysconfig.h +G_END_DECLS + +#endif /* __GDM_SYSCONFIG_H */ -Index: gdm-3.34.1/data/gdm.conf-custom.in +Index: gdm-3.36.2/data/gdm.conf-custom.in =================================================================== ---- gdm-3.34.1.orig/data/gdm.conf-custom.in -+++ gdm-3.34.1/data/gdm.conf-custom.in +--- gdm-3.36.2.orig/data/gdm.conf-custom.in ++++ gdm-3.36.2/data/gdm.conf-custom.in @@ -1,4 +1,7 @@ # GDM configuration storage +# diff --git a/gdm-xauthlocalhostname.patch b/gdm-xauthlocalhostname.patch index 9eeb6b7..ea603a7 100644 --- a/gdm-xauthlocalhostname.patch +++ b/gdm-xauthlocalhostname.patch @@ -1,6 +1,7 @@ -diff -urp gdm-3.33.90.orig/common/gdm-common.c gdm-3.33.90/common/gdm-common.c ---- gdm-3.33.90.orig/common/gdm-common.c 2019-08-13 14:42:23.000000000 -0500 -+++ gdm-3.33.90/common/gdm-common.c 2019-08-31 20:49:56.456485182 -0500 +Index: gdm-3.36.2/common/gdm-common.c +=================================================================== +--- gdm-3.36.2.orig/common/gdm-common.c ++++ gdm-3.36.2/common/gdm-common.c @@ -631,6 +631,8 @@ gdm_get_script_environment (const char * if (display_hostname) { @@ -10,7 +11,7 @@ diff -urp gdm-3.33.90.orig/common/gdm-common.c gdm-3.33.90/common/gdm-common.c } /* Runs as root */ -@@ -952,3 +954,14 @@ gdm_find_display_session_for_uid (const +@@ -974,3 +976,14 @@ gdm_find_display_session (GPid pi return TRUE; } @@ -25,10 +26,11 @@ diff -urp gdm-3.33.90.orig/common/gdm-common.c gdm-3.33.90/common/gdm-common.c + return g_strdup ("localhost"); + } +} -diff -urp gdm-3.33.90.orig/common/gdm-common.h gdm-3.33.90/common/gdm-common.h ---- gdm-3.33.90.orig/common/gdm-common.h 2019-08-13 14:42:23.000000000 -0500 -+++ gdm-3.33.90/common/gdm-common.h 2019-08-31 20:49:56.460485202 -0500 -@@ -65,6 +65,7 @@ char *gdm_generate_random_bytes +Index: gdm-3.36.2/common/gdm-common.h +=================================================================== +--- gdm-3.36.2.orig/common/gdm-common.h ++++ gdm-3.36.2/common/gdm-common.h +@@ -66,6 +66,7 @@ char *gdm_generate_random_bytes gboolean gdm_get_login_window_session_id (const char *seat_id, char **session_id); gboolean gdm_goto_login_session (GError **error); @@ -36,9 +38,10 @@ diff -urp gdm-3.33.90.orig/common/gdm-common.h gdm-3.33.90/common/gdm-common.h GPtrArray *gdm_get_script_environment (const char *username, const char *display_name, -diff -urp gdm-3.33.90.orig/daemon/gdm-display-access-file.c gdm-3.33.90/daemon/gdm-display-access-file.c ---- gdm-3.33.90.orig/daemon/gdm-display-access-file.c 2019-08-02 14:44:35.000000000 -0500 -+++ gdm-3.33.90/daemon/gdm-display-access-file.c 2019-08-31 20:49:56.460485202 -0500 +Index: gdm-3.36.2/daemon/gdm-display-access-file.c +=================================================================== +--- gdm-3.36.2.orig/daemon/gdm-display-access-file.c ++++ gdm-3.36.2/daemon/gdm-display-access-file.c @@ -441,13 +441,10 @@ _get_auth_info_for_display (GdmDisplayAc * * https://bugs.freedesktop.org/show_bug.cgi?id=43425 @@ -56,9 +59,10 @@ diff -urp gdm-3.33.90.orig/daemon/gdm-display-access-file.c gdm-3.33.90/daemon/g } else { *family = FamilyWild; gdm_display_get_remote_hostname (display, address, NULL); -diff -urp gdm-3.33.90.orig/daemon/gdm-launch-environment.c gdm-3.33.90/daemon/gdm-launch-environment.c ---- gdm-3.33.90.orig/daemon/gdm-launch-environment.c 2019-08-13 20:37:16.000000000 -0500 -+++ gdm-3.33.90/daemon/gdm-launch-environment.c 2019-08-31 20:49:56.460485202 -0500 +Index: gdm-3.36.2/daemon/gdm-launch-environment.c +=================================================================== +--- gdm-3.36.2.orig/daemon/gdm-launch-environment.c ++++ gdm-3.36.2/daemon/gdm-launch-environment.c @@ -216,6 +216,11 @@ build_launch_environment (GdmLaunchEnvir g_hash_table_insert (hash, g_strdup ("GDM_SEAT_ID"), g_strdup (seat_id)); } @@ -71,9 +75,10 @@ diff -urp gdm-3.33.90.orig/daemon/gdm-launch-environment.c gdm-3.33.90/daemon/gd g_hash_table_insert (hash, g_strdup ("RUNNING_UNDER_GDM"), g_strdup ("true")); return hash; -diff -urp gdm-3.33.90.orig/daemon/gdm-session.c gdm-3.33.90/daemon/gdm-session.c ---- gdm-3.33.90.orig/daemon/gdm-session.c 2019-08-31 20:49:31.756354259 -0500 -+++ gdm-3.33.90/daemon/gdm-session.c 2019-08-31 20:49:56.464485224 -0500 +Index: gdm-3.36.2/daemon/gdm-session.c +=================================================================== +--- gdm-3.36.2.orig/daemon/gdm-session.c ++++ gdm-3.36.2/daemon/gdm-session.c @@ -2683,6 +2683,14 @@ set_up_session_environment (GdmSession * } } diff --git a/gdm.changes b/gdm.changes index ae29ea3..8538aa7 100644 --- a/gdm.changes +++ b/gdm.changes @@ -1,3 +1,22 @@ +------------------------------------------------------------------- +Mon May 4 20:34:09 UTC 2020 - Bjørn Lie + +- Update to version 3.36.2: + + Fixes for when GDM isn't started on its configured initial VT. + + Don't hardcode path to plymouth. + + keyutils has a .pc file so use it. + + Chrome remote desktop fix. + + Always use separate session bus for greeter sessions. + + This runs dbus-run-session, so the binary needs to be + available. + + Updated translations. +- Drop patches fixed upstream: + + gdm-look-for-session-based-on-pid-first.patch + + gdm-Use-pkg-config-for-keyutils.patch +- Rebase patches with quilt. +- Add %{_bindir}/dbus-run-session Requires: New runtime dependency. + Needed to ensure the dbus-run-session binary is present. + ------------------------------------------------------------------- Sun Apr 26 09:42:29 UTC 2020 - Yifan Jiang diff --git a/gdm.obsinfo b/gdm.obsinfo index c72bb42..e2fbce4 100644 --- a/gdm.obsinfo +++ b/gdm.obsinfo @@ -1,5 +1,5 @@ name: gdm -version: 3.34.1 -mtime: 1570438590 -commit: 80e010198217284d3cf52e8b334862a80b00cbd1 +version: 3.36.2 +mtime: 1588623085 +commit: 02c42c1ca84bc28928618b773c12f2cea67ed71e diff --git a/gdm.spec b/gdm.spec index 89471d2..c92d8e1 100644 --- a/gdm.spec +++ b/gdm.spec @@ -21,7 +21,7 @@ %define enable_split_authentication 0 Name: gdm -Version: 3.34.1 +Version: 3.36.2 Release: 0 Summary: The GNOME Display Manager License: GPL-2.0-or-later @@ -65,10 +65,6 @@ Patch13: gdm-s390-not-require-g-s-d_wacom.patch Patch14: gdm-switch-user-tty7.patch # PATCH-FIX-UPSTREAM gdm-disable-wayland-on-mgag200-chipsets.patch bsc#1162888 glgo#GNOME/mutter#57 qkzhu@suse.com -- Disable Wayland on mgag200 chipsets Patch15: gdm-disable-wayland-on-mgag200-chipsets.patch -# PATCH-FIX-UPSTREAM gdm-look-for-session-based-on-pid-first.patch bsc#1159950 glgo#GNOME/gdm#526 yfjiang@suse.com -- Look for session based on pid first, then fall back to the uid based approach -Patch16: gdm-look-for-session-based-on-pid-first.patch -# PATCH-FIX-UPSTREAM gdm-Use-pkg-config-for-keyutils.patch -- configure: Use pkg-config to look for keyutils -Patch17: gdm-Use-pkg-config-for-keyutils.patch ### NOTE: Keep please SLE-only patches at bottom (starting on 1000). # PATCH-FIX-SLE gdm-disable-gnome-initial-setup.patch bnc#1067976 qzhao@suse.com -- Disable gnome-initial-setup runs before gdm, g-i-s will only serve for CJK people to choose the input-method after login. @@ -108,6 +104,7 @@ BuildRequires: pkgconfig(xdmcp) BuildRequires: pkgconfig(xi) BuildRequires: pkgconfig(xinerama) BuildRequires: pkgconfig(xrandr) +Requires: %{_bindir}/dbus-run-session Requires: %{name}-branding = %{version} Requires: gdmflexiserver Requires: gnome-session-core @@ -226,8 +223,6 @@ cp %{SOURCE8} . %endif %patch14 -p1 %patch15 -p1 -%patch16 -p1 -%patch17 -p1 # SLE and Leap only patches start at 1000 %if 0%{?sle_version}