From 30eec0749db176db2e2780e21f0e137365e177e7b119e0a3b6008c1aae5e00c2 Mon Sep 17 00:00:00 2001 From: Dominique Leuenberger Date: Wed, 17 Oct 2012 20:23:09 +0000 Subject: [PATCH] Accepting request 138391 from home:dimstar:branches:GNOME:Factory Update to 3.6.1 OBS-URL: https://build.opensuse.org/request/show/138391 OBS-URL: https://build.opensuse.org/package/show/GNOME:Factory/gdm?expand=0&rev=222 --- gdm-3.6.0.tar.xz | 3 --- gdm-3.6.1.tar.xz | 3 +++ gdm-passwordless-login.patch | 30 +++++++++++++++--------------- gdm.changes | 17 +++++++++++++++++ gdm.spec | 27 +++++++++++++++++++++++++-- gdmflexiserver-wrapper | 8 ++++++++ 6 files changed, 68 insertions(+), 20 deletions(-) delete mode 100644 gdm-3.6.0.tar.xz create mode 100644 gdm-3.6.1.tar.xz create mode 100644 gdmflexiserver-wrapper diff --git a/gdm-3.6.0.tar.xz b/gdm-3.6.0.tar.xz deleted file mode 100644 index 87328d5..0000000 --- a/gdm-3.6.0.tar.xz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:ea63736fc8f7234aca442f4e99b3ba9cc29dce5e464ed93f7bf7eb8c49abd60b -size 1627064 diff --git a/gdm-3.6.1.tar.xz b/gdm-3.6.1.tar.xz new file mode 100644 index 0000000..b4269f9 --- /dev/null +++ b/gdm-3.6.1.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:aff69dde55e11b540145002c95cf966cd16376910283b385520431ced10c5031 +size 1627088 diff --git a/gdm-passwordless-login.patch b/gdm-passwordless-login.patch index c6eea8c..a7a2e9a 100644 --- a/gdm-passwordless-login.patch +++ b/gdm-passwordless-login.patch @@ -1,7 +1,7 @@ -Index: gdm-3.5.91/common/gdm-settings-system-backend.c +Index: gdm-3.6.1/common/gdm-settings-system-backend.c =================================================================== ---- gdm-3.5.91.orig/common/gdm-settings-system-backend.c -+++ gdm-3.5.91/common/gdm-settings-system-backend.c +--- gdm-3.6.1.orig/common/gdm-settings-system-backend.c ++++ gdm-3.6.1/common/gdm-settings-system-backend.c @@ -43,11 +43,11 @@ #define SYSCONFIG_AUTOLOGIN_KEY "DISPLAYMANAGER_AUTOLOGIN" #define SYSCONFIG_TCP_OPEN_KEY "DISPLAYMANAGER_XSERVER_TCP_PORT_6000_OPEN" @@ -78,10 +78,10 @@ Index: gdm-3.5.91/common/gdm-settings-system-backend.c } else { g_set_error (error, GDM_SETTINGS_BACKEND_ERROR, GDM_SETTINGS_BACKEND_ERROR_KEY_NOT_FOUND, "Key not found"); return FALSE; -Index: gdm-3.5.91/common/gdm-settings-keys.h +Index: gdm-3.6.1/common/gdm-settings-keys.h =================================================================== ---- gdm-3.5.91.orig/common/gdm-settings-keys.h -+++ gdm-3.5.91/common/gdm-settings-keys.h +--- gdm-3.6.1.orig/common/gdm-settings-keys.h ++++ gdm-3.6.1/common/gdm-settings-keys.h @@ -33,6 +33,7 @@ G_BEGIN_DECLS #define GDM_KEY_TIMED_LOGIN_USER "daemon/TimedLogin" #define GDM_KEY_TIMED_LOGIN_DELAY "daemon/TimedLoginDelay" @@ -90,11 +90,11 @@ Index: gdm-3.5.91/common/gdm-settings-keys.h #define GDM_KEY_DEBUG "debug/Enable" -Index: gdm-3.5.91/data/gdm.schemas.in.in +Index: gdm-3.6.1/data/gdm.schemas.in.in =================================================================== ---- gdm-3.5.91.orig/data/gdm.schemas.in.in -+++ gdm-3.5.91/data/gdm.schemas.in.in -@@ -52,6 +52,12 @@ +--- gdm-3.6.1.orig/data/gdm.schemas.in.in ++++ gdm-3.6.1/data/gdm.schemas.in.in +@@ -58,6 +58,12 @@ b false @@ -106,11 +106,11 @@ Index: gdm-3.5.91/data/gdm.schemas.in.in + - debug/Enable -Index: gdm-3.5.91/daemon/gdm-session.c + security/DisallowTCP +Index: gdm-3.6.1/daemon/gdm-session.c =================================================================== ---- gdm-3.5.91.orig/daemon/gdm-session.c -+++ gdm-3.5.91/daemon/gdm-session.c +--- gdm-3.6.1.orig/daemon/gdm-session.c ++++ gdm-3.6.1/daemon/gdm-session.c @@ -55,6 +55,9 @@ #include "gdm-session-worker-glue.h" #include "gdm-common.h" @@ -121,7 +121,7 @@ Index: gdm-3.5.91/daemon/gdm-session.c #define GDM_SESSION_DBUS_ERROR_CANCEL "org.gnome.DisplayManager.Session.Error.Cancel" #define GDM_SESSION_DBUS_OBJECT_PATH "/org/gnome/DisplayManager/Session" -@@ -1222,6 +1225,15 @@ gdm_session_handle_client_begin_verifica +@@ -1228,6 +1231,15 @@ gdm_session_handle_client_begin_verifica GdmSession *self) { GdmSessionConversation *conversation; diff --git a/gdm.changes b/gdm.changes index 0d8f155..77287f4 100644 --- a/gdm.changes +++ b/gdm.changes @@ -1,3 +1,20 @@ +------------------------------------------------------------------- +Tue Oct 16 07:10:36 UTC 2012 - dimstar@opensuse.org + +- Update to version 3.6.1: + + Various InitialSetup fixes + + ignore pam info messages for automatic logins + + unlock fixes + + user switching fix on consolekit systems + + be more robust against empty user shells/home dirs + + create program session log file as root instead of after setuid + + properly reload gdm.schemas on SIGHUP + + bring back gdmflexiserver + + Updated translations. +- Reintroduce gdmflexiserver subpackage and gdmflexiserver-wrapper + source that were dropped with 3.5.90: gdmflexiserver was + re-introduced as gnome-screensaver depends on it. + ------------------------------------------------------------------- Tue Sep 25 19:01:14 UTC 2012 - dimstar@opensuse.org diff --git a/gdm.spec b/gdm.spec index 13fc5ab..ae614b1 100644 --- a/gdm.spec +++ b/gdm.spec @@ -24,7 +24,7 @@ %define enable_split_authentication 0 Name: gdm -Version: 3.6.0 +Version: 3.6.1 Release: 0 Summary: The GNOME Display Manager License: GPL-2.0+ @@ -36,6 +36,8 @@ Source2: gdm-autologin.pamd Source3: gdm-launch-environment.pamd Source6: gdm-fingerprint.pamd Source7: gdm-smartcard.pamd +# gdmflexiserver wrapper, to enable other display managers to abuse the gdmflexiserver namespace (like lightdm) +Source4: gdmflexiserver-wrapper # /etc/xinit.d/xdm integration script Source5: X11-displaymanager-gdm # PATCH-FIX-OPENSUSE gdm-is-not-unstable-unless.patch vuntz@opensuse.org -- Make gdm think it's never running a development version unless SUSE_ENABLE_UNSTABLE_CHECK is set. This disables fatal warnings as well as abusive log @@ -94,6 +96,7 @@ Requires: %{name}-branding = %{version} %if ! %{with_systemd} Requires: ConsoleKit-x11 %endif +Requires: gdmflexiserver Requires: gnome-session-core Requires: klogd Requires: xorg-x11-server-extra @@ -202,6 +205,18 @@ providing graphical log-ins and managing local and remote displays. This package provides the upstream default configuration for gdm. +%package -n gdmflexiserver +Summary: Gdmflexiserver Compatibility Wrapper for Display Managers +Group: System/GUI/GNOME +Suggests: gdm +BuildArch: noarch + +%description -n gdmflexiserver +The gdmflexiserver tool interacts with the display manager to +enable fast user switching. This package contains a wrapper that +selects the correct gdmflexiserver implementatoin, based on the +running display manager. + %lang_package %prep %setup -q @@ -280,7 +295,10 @@ ln -s gdm $RPM_BUILD_ROOT/etc/pam.d/gdm-password ## Install other files # Install PostLogin script. mv $RPM_BUILD_ROOT%{_sysconfdir}/gdm/PostLogin/Default.sample $RPM_BUILD_ROOT%{_sysconfdir}/gdm/PostLogin/Default -# Install /etc/xinit.d/xdm integration script +# Move gdmflexiserver to libexecdir and replace it with the compatibility wrapper +mv $RPM_BUILD_ROOT%{_bindir}/gdmflexiserver $RPM_BUILD_ROOT%{_libexecdir}/gdm/gdmflexiserver +install -m 755 %{SOURCE4} $RPM_BUILD_ROOT%{_bindir}/gdmflexiserver +#Install /etc/xinit.d/xdm integration script install -D -m 644 %{SOURCE5} %{buildroot}%{_libexecdir}/X11/displaymanagers/gdm # Install other files mkdir -p $RPM_BUILD_ROOT%{_localstatedir}/log/gdm @@ -358,6 +376,7 @@ dconf update %{_datadir}/pixmaps/*.png %dir %{_libexecdir}/gdm %{_libexecdir}/gdm/gdm-* +%{_libexecdir}/gdm/gdmflexiserver %attr(750,gdm,gdm) %dir %{_localstatedir}/lib/gdm %ghost %attr(751,gdm,gdm) %dir %{_localstatedir}/run/gdm %attr(750,gdm,gdm) %dir %{_localstatedir}/log/gdm @@ -431,6 +450,10 @@ dconf update %defattr(-,root,root) %config(noreplace) %{_sysconfdir}/gdm/custom.conf +%files -n gdmflexiserver +%defattr(-,root,root) +%{_bindir}/gdmflexiserver + %files lang -f %{name}.lang %changelog diff --git a/gdmflexiserver-wrapper b/gdmflexiserver-wrapper new file mode 100644 index 0000000..3943b69 --- /dev/null +++ b/gdmflexiserver-wrapper @@ -0,0 +1,8 @@ +#!/bin/sh + +if test ! -x "${GDMFLEXISERVER:-/usr/lib/gdm/gdmflexiserver}"; then + echo "No gdmflexiserver implementation found. Maybe install gdm?" >&2 + exit 1 +else + exec "${GDMFLEXISERVER:-/usr/lib/gdm/gdmflexiserver}" +fi