SHA256
1
0
forked from pool/gdm

Accepting request 50675 from GNOME:Factory

Copy from GNOME:Factory/gdm based on submit request 50675 from user vuntz

OBS-URL: https://build.opensuse.org/request/show/50675
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/gdm?expand=0&rev=103
This commit is contained in:
OBS User autobuild 2010-10-15 14:46:24 +00:00 committed by Git OBS Bridge
commit e226c2194c
8 changed files with 254 additions and 78 deletions

View File

@ -1,29 +0,0 @@
#!/bin/bash
#
# Copyright (c) 2004-2006 SuSE
# Author: Stanislav Brabec <sbrabec@suse.cz>
type -p cmp &> /dev/null || {
echo "${0##*/}: No cmp in PATH ... skipping"
exit 0
}
r=$ROOT
DISPLAYMANAGER_PASSWORD_LESS_LOGIN="no"
test -f $r/etc/sysconfig/displaymanager || {
echo "${0##*/}: No $r/etc/sysconfig/displaymanager found."
exit 1
}
. $r/etc/sysconfig/displaymanager
# Password-less login is implemented by PAM. Do the required change.
if [ "$DISPLAYMANAGER_PASSWORD_LESS_LOGIN" = "yes" ] ; then
sed 's/^\(auth[[:space:]][[:space:]]*\)include[[:space:]]\([[:space:]]*\)common-auth/\1required\2pam_permit.so/' <$r/etc/pam.d/gdm >$r/etc/pam.d/gdm.new
else
sed 's/^\(auth[[:space:]][[:space:]]*\)required\([[:space:]][[:space:]]*\)pam_permit\.so/\1include \2common-auth/' <$r/etc/pam.d/gdm >$r/etc/pam.d/gdm.new
fi
if cmp -s $r/etc/pam.d/gdm $r/etc/pam.d/gdm.new ; then
rm $r/etc/pam.d/gdm.new
else
mv $r/etc/pam.d/gdm.new $r/etc/pam.d/gdm
fi

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:429c4d8ef0ae1a30be8f250dca36c69cf948d20f57b0114676e41adb2528d995
size 2476222

3
gdm-2.32.0.tar.bz2 Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:f47acd19ed10d6fbb37c3e2b54f5b392c7020db67f71db3f75567ead30ab2fa4
size 2477647

View File

@ -1803,7 +1803,7 @@ Index: gdm-2.29.5/gui/simple-greeter/gdm-greeter-panel.c
panel->priv->geometry.width = -1;
panel->priv->geometry.height = -1;
+ if (!gdm_settings_client_get_boolean (GDM_KEY_SHOW_DOMAIN,
+ if (!gdm_settings_client_get_boolean (GDM_KEY_SUSE_SHOW_DOMAIN,
+ &panel->priv->show_domain)) {
+ panel->priv->show_domain = FALSE;
+ }
@ -2170,7 +2170,7 @@ Index: gdm-2.29.5/common/gdm-settings-keys.h
#define GDM_KEY_DEBUG "debug/Enable"
+#define GDM_KEY_SHOW_DOMAIN "greeter/ShowDomain"
+#define GDM_KEY_SUSE_SHOW_DOMAIN "greeter/SUSEShowDomain"
#define GDM_KEY_INCLUDE "greeter/Include"
#define GDM_KEY_EXCLUDE "greeter/Exclude"
#define GDM_KEY_INCLUDE_ALL "greeter/IncludeAll"
@ -2179,10 +2179,10 @@ Index: gdm-2.29.5/common/gdm-settings-system-backend.c
--- gdm-2.29.5.orig/common/gdm-settings-system-backend.c
+++ gdm-2.29.5/common/gdm-settings-system-backend.c
@@ -44,11 +44,11 @@
#define SYSCONFIG_AUTOLOGIN_KEY "DISPLAYMANAGER_AUTOLOGIN"
#define SYSCONFIG_TCP_OPEN_KEY "DISPLAYMANAGER_XSERVER_TCP_PORT_6000_OPEN"
#define SYSCONFIG_XDMCP_KEY "DISPLAYMANAGER_REMOTE_ACCESS"
+#define SYSCONFIG_AD_KEY "DISPLAYMANAGER_AD_INTEGRATION"
#define SYSCONFIG_AUTOLOGIN_KEY "DISPLAYMANAGER_AUTOLOGIN"
#define SYSCONFIG_TCP_OPEN_KEY "DISPLAYMANAGER_XSERVER_TCP_PORT_6000_OPEN"
#define SYSCONFIG_XDMCP_KEY "DISPLAYMANAGER_REMOTE_ACCESS"
+#define SYSCONFIG_AD_KEY "DISPLAYMANAGER_AD_INTEGRATION"
/* Keys from sysconfig that have no equivalent in GDM:
* - DISPLAYMANAGER_ROOT_LOGIN_REMOTE
* - DISPLAYMANAGER_STARTS_XSERVER (we always have a local display manager,
@ -2210,7 +2210,7 @@ Index: gdm-2.29.5/common/gdm-settings-system-backend.c
val = g_strdup (xdmcp ? "true" : "false");
}
}
+ } else if (!strcasecmp (key, GDM_KEY_SHOW_DOMAIN)) {
+ } else if (!strcasecmp (key, GDM_KEY_SUSE_SHOW_DOMAIN)) {
+ if (priv->dirty_show_domain) {
+ val = g_strdup (priv->set_show_domain ? "true" : "false");
+ } else {
@ -2248,7 +2248,7 @@ Index: gdm-2.29.5/common/gdm-settings-system-backend.c
} else if (!strcasecmp (key, GDM_KEY_XDMCP_ENABLE)) {
priv->set_xdmcp = value_to_boolean (value);
GDM_SETTINGS_SYSTEM_BACKEND (backend)->priv->dirty_xdmcp = TRUE;
+ } else if (!strcasecmp (key, GDM_KEY_SHOW_DOMAIN)) {
+ } else if (!strcasecmp (key, GDM_KEY_SUSE_SHOW_DOMAIN)) {
+ priv->set_show_domain = value_to_boolean (value);
+ GDM_SETTINGS_SYSTEM_BACKEND (backend)->priv->dirty_show_domain = TRUE;
} else {
@ -2258,11 +2258,12 @@ Index: gdm-2.29.5/data/gdm.schemas.in.in
===================================================================
--- gdm-2.29.5.orig/data/gdm.schemas.in.in
+++ gdm-2.29.5/data/gdm.schemas.in.in
@@ -61,6 +61,11 @@
@@ -61,6 +61,12 @@
</schema>
<schema>
+ <key>greeter/ShowDomain</key>
+ <!-- SUSE-specific -->
+ <key>greeter/SUSEShowDomain</key>
+ <signature>b</signature>
+ <default>false</default>
+ </schema>

View File

@ -0,0 +1,163 @@
Index: gdm-2.32.0/common/gdm-settings-system-backend.c
===================================================================
--- gdm-2.32.0.orig/common/gdm-settings-system-backend.c
+++ gdm-2.32.0/common/gdm-settings-system-backend.c
@@ -44,11 +44,11 @@
#define SYSCONFIG_AUTOLOGIN_KEY "DISPLAYMANAGER_AUTOLOGIN"
#define SYSCONFIG_TCP_OPEN_KEY "DISPLAYMANAGER_XSERVER_TCP_PORT_6000_OPEN"
#define SYSCONFIG_XDMCP_KEY "DISPLAYMANAGER_REMOTE_ACCESS"
+#define SYSCONFIG_PASSWORDLESS_KEY "DISPLAYMANAGER_PASSWORD_LESS_LOGIN"
/* Keys from sysconfig that have no equivalent in GDM:
* - DISPLAYMANAGER_ROOT_LOGIN_REMOTE
* - DISPLAYMANAGER_STARTS_XSERVER (we always have a local display manager,
* see gdm_manager_constructor())
- * - DISPLAYMANAGER_PASSWORD_LESS_LOGIN
* - DISPLAYMANAGER_AD_INTEGRATION
* - DISPLAYMANAGER_SHUTDOWN (handled by ConsoleKit)
*/
@@ -66,12 +66,14 @@ struct GdmSettingsSystemBackendPrivate
gboolean dirty_autologin_user;
gboolean dirty_tcp_open;
gboolean dirty_xdmcp;
+ gboolean dirty_passwordless;
gchar *set_autologin_user;
gboolean set_autologin_enabled;
gboolean set_tcp_open;
gboolean set_xdmcp;
+ gboolean set_passwordless;
};
static void gdm_settings_system_backend_class_init (GdmSettingsSystemBackendClass *klass);
@@ -141,6 +143,16 @@ gdm_settings_system_backend_get_value (G
val = g_strdup (xdmcp ? "true" : "false");
}
}
+ } else if (!strcasecmp (key, GDM_KEY_SUSE_PASSWORDLESS_LOGIN_ENABLE)) {
+ if (priv->dirty_passwordless) {
+ val = g_strdup (priv->set_passwordless ? "true" : "false");
+ } else {
+ gboolean passwordless;
+
+ if (gdm_sysconfig_get_value_boolean ((const gchar **) priv->lines, SYSCONFIG_PASSWORDLESS_KEY, &passwordless)) {
+ val = g_strdup (passwordless ? "true" : "false");
+ }
+ }
} else {
g_set_error (error, GDM_SETTINGS_BACKEND_ERROR, GDM_SETTINGS_BACKEND_ERROR_KEY_NOT_FOUND, "Key not found");
goto out;
@@ -201,6 +213,12 @@ save_settings (GdmSettingsSystemBackend
backend->priv->set_xdmcp ? "yes" : "no");
}
+ if (backend->priv->dirty_passwordless) {
+ if (!gdm_sysconfig_set_value_boolean (backend->priv->lines, SYSCONFIG_PASSWORDLESS_KEY, backend->priv->set_passwordless))
+ g_warning ("Unable to set key %s to '%s'.", SYSCONFIG_PASSWORDLESS_KEY,
+ backend->priv->set_passwordless ? "yes" : "no");
+ }
+
if (!gdm_sysconfig_save_file (backend->priv->filename, backend->priv->lines))
g_warning ("Unable to save settings to %s.", backend->priv->filename);
@@ -209,6 +227,7 @@ save_settings (GdmSettingsSystemBackend
backend->priv->dirty_autologin_user = FALSE;
backend->priv->dirty_tcp_open = FALSE;
backend->priv->dirty_xdmcp = FALSE;
+ backend->priv->dirty_passwordless = FALSE;
}
static gboolean
@@ -276,6 +295,9 @@ gdm_settings_system_backend_set_value (G
} else if (!strcasecmp (key, GDM_KEY_XDMCP_ENABLE)) {
priv->set_xdmcp = value_to_boolean (value);
GDM_SETTINGS_SYSTEM_BACKEND (backend)->priv->dirty_xdmcp = TRUE;
+ } else if (!strcasecmp (key, GDM_KEY_SUSE_PASSWORDLESS_LOGIN_ENABLE)) {
+ priv->set_passwordless = value_to_boolean (value);
+ GDM_SETTINGS_SYSTEM_BACKEND (backend)->priv->dirty_passwordless = TRUE;
} else {
g_set_error (error, GDM_SETTINGS_BACKEND_ERROR, GDM_SETTINGS_BACKEND_ERROR_KEY_NOT_FOUND, "Key not found");
return FALSE;
Index: gdm-2.32.0/common/gdm-settings-keys.h
===================================================================
--- gdm-2.32.0.orig/common/gdm-settings-keys.h
+++ gdm-2.32.0/common/gdm-settings-keys.h
@@ -32,6 +32,7 @@ G_BEGIN_DECLS
#define GDM_KEY_TIMED_LOGIN_ENABLE "daemon/TimedLoginEnable"
#define GDM_KEY_TIMED_LOGIN_USER "daemon/TimedLogin"
#define GDM_KEY_TIMED_LOGIN_DELAY "daemon/TimedLoginDelay"
+#define GDM_KEY_SUSE_PASSWORDLESS_LOGIN_ENABLE "daemon/SUSEPasswordlessEnable"
#define GDM_KEY_DEBUG "debug/Enable"
Index: gdm-2.32.0/data/gdm.schemas.in.in
===================================================================
--- gdm-2.32.0.orig/data/gdm.schemas.in.in
+++ gdm-2.32.0/data/gdm.schemas.in.in
@@ -47,6 +47,12 @@
<signature>i</signature>
<default>30</default>
</schema>
+ <schema>
+ <!-- SUSE-specific -->
+ <key>daemon/SUSEPasswordlessEnable</key>
+ <signature>b</signature>
+ <default>false</default>
+ </schema>
<schema>
<key>debug/Enable</key>
Index: gdm-2.32.0/daemon/gdm-factory-slave.c
===================================================================
--- gdm-2.32.0.orig/daemon/gdm-factory-slave.c
+++ gdm-2.32.0/daemon/gdm-factory-slave.c
@@ -44,6 +44,9 @@
#include "gdm-common.h"
+#include "gdm-settings-client.h"
+#include "gdm-settings-keys.h"
+
#include "gdm-factory-slave.h"
#include "gdm-factory-slave-glue.h"
@@ -406,9 +409,16 @@ on_greeter_begin_verification_for_user (
const char *username,
GdmFactorySlave *slave)
{
+ gboolean passwordless;
+
+ if (!gdm_settings_client_get_boolean (GDM_KEY_SUSE_PASSWORDLESS_LOGIN_ENABLE,
+ &passwordless)) {
+ passwordless = FALSE;
+ }
+
g_debug ("GdmFactorySlave: begin verification for user");
gdm_session_setup_for_user (GDM_SESSION (slave->priv->session),
- "gdm",
+ passwordless ? "gdm-autologin" : "gdm",
username);
}
Index: gdm-2.32.0/daemon/gdm-simple-slave.c
===================================================================
--- gdm-2.32.0.orig/daemon/gdm-simple-slave.c
+++ gdm-2.32.0/daemon/gdm-simple-slave.c
@@ -837,9 +837,16 @@ on_greeter_begin_verification_for_user (
const char *username,
GdmSimpleSlave *slave)
{
+ gboolean passwordless;
+
+ if (!gdm_settings_client_get_boolean (GDM_KEY_SUSE_PASSWORDLESS_LOGIN_ENABLE,
+ &passwordless)) {
+ passwordless = FALSE;
+ }
+
g_debug ("GdmSimpleSlave: begin verification");
gdm_session_setup_for_user (GDM_SESSION (slave->priv->session),
- "gdm",
+ passwordless ? "gdm-autologin" : "gdm",
username);
}

View File

@ -1,8 +1,8 @@
Index: gdm-2.29.4/common/Makefile.am
Index: gdm-2.32.0/common/Makefile.am
===================================================================
--- gdm-2.29.4.orig/common/Makefile.am
+++ gdm-2.29.4/common/Makefile.am
@@ -84,6 +84,8 @@ libgdmcommon_la_SOURCES = \
--- gdm-2.32.0.orig/common/Makefile.am
+++ gdm-2.32.0/common/Makefile.am
@@ -82,6 +82,8 @@ libgdmcommon_la_SOURCES = \
gdm-settings-backend.h \
gdm-settings-desktop-backend.c \
gdm-settings-desktop-backend.h \
@ -11,7 +11,7 @@ Index: gdm-2.29.4/common/Makefile.am
gdm-settings-keys.h \
gdm-settings-utils.h \
gdm-settings-utils.c \
@@ -91,6 +93,8 @@ libgdmcommon_la_SOURCES = \
@@ -89,6 +91,8 @@ libgdmcommon_la_SOURCES = \
gdm-settings-direct.h \
gdm-settings-client.h \
gdm-settings-client.c \
@ -20,11 +20,11 @@ Index: gdm-2.29.4/common/Makefile.am
gdm-log.h \
gdm-log.c \
gdm-md5.h \
Index: gdm-2.29.4/common/gdm-settings-system-backend.c
Index: gdm-2.32.0/common/gdm-settings-system-backend.c
===================================================================
--- /dev/null
+++ gdm-2.29.4/common/gdm-settings-system-backend.c
@@ -0,0 +1,348 @@
+++ gdm-2.32.0/common/gdm-settings-system-backend.c
@@ -0,0 +1,349 @@
+/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*-
+ *
+ * Copyright (C) 2008 Hans Petter Jansson <hpj@copyleft.no>
@ -68,13 +68,14 @@ Index: gdm-2.29.4/common/gdm-settings-system-backend.c
+#include "gdm-marshal.h"
+#include "gdm-log.h"
+
+#define SYSCONFIG_AUTOLOGIN_KEY "DISPLAYMANAGER_AUTOLOGIN"
+#define SYSCONFIG_TCP_OPEN_KEY "DISPLAYMANAGER_XSERVER_TCP_PORT_6000_OPEN"
+#define SYSCONFIG_XDMCP_KEY "DISPLAYMANAGER_REMOTE_ACCESS"
+#define SYSCONFIG_AUTOLOGIN_KEY "DISPLAYMANAGER_AUTOLOGIN"
+#define SYSCONFIG_TCP_OPEN_KEY "DISPLAYMANAGER_XSERVER_TCP_PORT_6000_OPEN"
+#define SYSCONFIG_XDMCP_KEY "DISPLAYMANAGER_REMOTE_ACCESS"
+/* Keys from sysconfig that have no equivalent in GDM:
+ * - DISPLAYMANAGER_ROOT_LOGIN_REMOTE
+ * - DISPLAYMANAGER_STARTS_XSERVER (we always have a local display manager,
+ * see gdm_manager_constructor())
+ * - DISPLAYMANAGER_PASSWORD_LESS_LOGIN
+ * - DISPLAYMANAGER_AD_INTEGRATION
+ * - DISPLAYMANAGER_SHUTDOWN (handled by ConsoleKit)
+ */
@ -373,10 +374,10 @@ Index: gdm-2.29.4/common/gdm-settings-system-backend.c
+
+ return GDM_SETTINGS_BACKEND (object);
+}
Index: gdm-2.29.4/common/gdm-settings-system-backend.h
Index: gdm-2.32.0/common/gdm-settings-system-backend.h
===================================================================
--- /dev/null
+++ gdm-2.29.4/common/gdm-settings-system-backend.h
+++ gdm-2.32.0/common/gdm-settings-system-backend.h
@@ -0,0 +1,56 @@
+/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*-
+ *
@ -434,10 +435,10 @@ Index: gdm-2.29.4/common/gdm-settings-system-backend.h
+G_END_DECLS
+
+#endif /* __GDM_SETTINGS_SYSTEM_BACKEND_H */
Index: gdm-2.29.4/common/gdm-settings.c
Index: gdm-2.32.0/common/gdm-settings.c
===================================================================
--- gdm-2.29.4.orig/common/gdm-settings.c
+++ gdm-2.29.4/common/gdm-settings.c
--- gdm-2.32.0.orig/common/gdm-settings.c
+++ gdm-2.32.0/common/gdm-settings.c
@@ -41,6 +41,7 @@
#include "gdm-settings-glue.h"
@ -565,10 +566,10 @@ Index: gdm-2.29.4/common/gdm-settings.c
G_OBJECT_CLASS (gdm_settings_parent_class)->finalize (object);
}
Index: gdm-2.29.4/common/gdm-sysconfig.c
Index: gdm-2.32.0/common/gdm-sysconfig.c
===================================================================
--- /dev/null
+++ gdm-2.29.4/common/gdm-sysconfig.c
+++ gdm-2.32.0/common/gdm-sysconfig.c
@@ -0,0 +1,481 @@
+/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*-
+ *
@ -1051,10 +1052,10 @@ Index: gdm-2.29.4/common/gdm-sysconfig.c
+ g_strfreev (lines);
+ return result;
+}
Index: gdm-2.29.4/common/gdm-sysconfig.h
Index: gdm-2.32.0/common/gdm-sysconfig.h
===================================================================
--- /dev/null
+++ gdm-2.29.4/common/gdm-sysconfig.h
+++ gdm-2.32.0/common/gdm-sysconfig.h
@@ -0,0 +1,43 @@
+/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*-
+ *
@ -1099,10 +1100,10 @@ Index: gdm-2.29.4/common/gdm-sysconfig.h
+G_END_DECLS
+
+#endif /* __GDM_SYSCONFIG_H */
Index: gdm-2.29.4/data/gdm.conf-custom.in
Index: gdm-2.32.0/data/gdm.conf-custom.in
===================================================================
--- gdm-2.29.4.orig/data/gdm.conf-custom.in
+++ gdm-2.29.4/data/gdm.conf-custom.in
--- gdm-2.32.0.orig/data/gdm.conf-custom.in
+++ gdm-2.32.0/data/gdm.conf-custom.in
@@ -1,4 +1,7 @@
# GDM configuration storage
+#

View File

@ -1,3 +1,38 @@
-------------------------------------------------------------------
Fri Oct 8 13:38:23 CEST 2010 - vuntz@opensuse.org
- Rework the way we handle passwordless logins:
+ Stop using SuSEconfig for this. Since this is the last thing
that was done in SuSEconfig.gdm, drop SuSEconfig.gdm.
+ Add gdm-passwordless-login.patch: we now directly look at the
DISPLAYMANAGER_PASSWORD_LESS_LOGIN option in
/etc/sysconfig/displaymanager, and use the gdm-autologin pam
service for authentication when we want passwordless logins.
+ On upgrades, we make sure that /etc/pam.d/gdm does not contain
the old way to handle DISPLAYMANAGER_PASSWORD_LESS_LOGIN: if
/sbin/conf.d/SuSEconfig.gdm exists and if /etc/pam.d/gdm
contains pam_permit.so, then we have an old package which used
the old way. We move /etc/pam.d/gdm to /etc/pam.d/gdm.rpmold to
make sure we get back the right pam configuration.
- Update gdm-domain-logon.patch a bit: even though it's not
applied because the patch needs to be rebased, a few things could
be cleaned up. The most visible part is that we prefix the
configuration key with SUSE to clearly show it's SUSE-specific.
- Update gdm-sysconfig-settings.patch a tiny bit to make
gdm-passwordless-login.patch easier.
-------------------------------------------------------------------
Mon Sep 27 20:29:08 CEST 2010 - vuntz@opensuse.org
- Update to version 2.32.0:
+ Updated translations.
-------------------------------------------------------------------
Mon Sep 27 05:59:41 UTC 2010 - aj@suse.de
- Mark /var/run/gdm as ghost in case that /var/run is on tmpfs.
gdm creates the directory itself.
-------------------------------------------------------------------
Wed Sep 22 14:26:23 CEST 2010 - vuntz@opensuse.org

View File

@ -1,5 +1,5 @@
#
# spec file for package gdm (Version 2.31.92)
# spec file for package gdm (Version 2.32.0)
#
# Copyright (c) 2010 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
@ -41,14 +41,12 @@ BuildRequires: xorg-x11-server-extra
BuildRequires: zenity
License: GPLv2+
Group: System/GUI/GNOME
Version: 2.31.92
Version: 2.32.0
Release: 1
Summary: The GNOME 2.x Display Manager
Source: %{name}-%{version}.tar.bz2
Source1: gdm.pamd
Source2: gdm-autologin.pamd
# FIXME: See FIXME in the script.
Source3: SuSEconfig.gdm
# PATCH-FIX-UPSTREAM gdm-helper-directory.patch bgo582320 vuntz@novell.com -- Add --with-gnome-settings-daemon-directory, --with-consolekit-directory, --with-at-spi-registryd-directory
Patch1: gdm-helper-directory.patch
# 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
@ -61,8 +59,10 @@ Patch6: gdm-desktop-session-env-pam.patch
Patch7: gdm-suse-xsession.patch
# PATCH-FIX-OPENSUSE gdm-sysconfig-settings.patch bnc432360 hpj@novell.com -- Read autologin options from /etc/sysconfig/displaymanager
Patch8: gdm-sysconfig-settings.patch
# PATCH-FEATURE-OPENSUSE gdm-passwordless-login.patch vuntz@opensuse.org -- Support DISPLAYMANAGER_PASSWORD_LESS_LOGIN sysconfig option
Patch9: gdm-passwordless-login.patch
# PATCH-NEEDS-REBASE gdm-domain-logon.patch hpj@novell.com -- Add UI to log in a specific domain (was: PATCH_FEATURE-SLED bnc#627575)
Patch9: gdm-domain-logon.patch
Patch10: gdm-domain-logon.patch
# PATCH-FIX-UPSTREAM gdm-greeter-greater-ui.patch bnc436431 bgo560508 vuntz@novell.com -- Improve the layout of the greeter. Note: the patch contains a patched glade file *and* the result glade file (for reference only, in case we need to rebase the patch)
Patch15: gdm-greeter-greater-ui.patch
# PATCH-FIX-UPSTREAM gdm-always-reflect-keyboard-layout.patch bnc438159 bgo561771 hpj@novell.com -- Make keyboard selector not neglect to apply the selected keyboard in some situations.
@ -146,7 +146,8 @@ translation-update-upstream
%patch6 -p1
%patch7 -p1
%patch8 -p1
#%patch9 -p1
%patch9 -p1
#%patch10 -p1
%patch15 -p1
%patch18 -p1
%patch20 -p1
@ -181,16 +182,12 @@ autoreconf -f -i
%find_gconf_schemas
# Remove wrapper, it is not needed.
mv $RPM_BUILD_ROOT%{_sbindir}/gdm-binary $RPM_BUILD_ROOT%{_sbindir}/gdm
# Install PAM files and remove examples.
# Install PAM files.
mkdir -p $RPM_BUILD_ROOT/etc/pam.d
cp %{S:1} $RPM_BUILD_ROOT/etc/pam.d/gdm
cp %{S:2} $RPM_BUILD_ROOT/etc/pam.d/gdm-autologin
# Install PostLogin script.
mv $RPM_BUILD_ROOT%{_sysconfdir}/gdm/PostLogin/Default.sample $RPM_BUILD_ROOT%{_sysconfdir}/gdm/PostLogin/Default
# Install SuSEconfig script.
mkdir -p $RPM_BUILD_ROOT/sbin/conf.d
cp %{S:3} $RPM_BUILD_ROOT/sbin/conf.d
chmod +x $RPM_BUILD_ROOT/sbin/conf.d/SuSEconfig.gdm
mkdir -p $RPM_BUILD_ROOT{_localstatedir}/log/gdm
mkdir -p $RPM_BUILD_ROOT{_localstatedir}/run/gdm
%find_lang %{name}
@ -219,6 +216,15 @@ if test -f sbin/conf.d/SuSEconfig.gdm && grep -q gdm-autologin sbin/conf.d/SuSEc
fi
fi
fi
# Fix how DISPLAYMANAGER_PASSWORD_LESS_LOGIN is used. Before 11.4,
# /etc/pam.d/gdm was changed to use pam_permit. We don't want this anymore.
if test -f /sbin/conf.d/SuSEconfig.gdm; then
grep -q pam_permit.so /etc/pam.d/gdm
if test $? -eq 0; then
# We'll just use the file from the new package
mv /etc/pam.d/gdm /etc/pam.d/gdm.rpmold
fi
fi
%preun -f %{name}.schemas_preun
@ -242,14 +248,13 @@ fi
%{_libexecdir}/gdm/gdm-*
%exclude %{_libexecdir}/gdm/gdm-user-switch-applet
%attr(750,gdm,gdm) %dir %{_localstatedir}/lib/gdm
%attr(751,gdm,gdm) %dir %{_localstatedir}/run/gdm
%ghost %attr(751,gdm,gdm) %dir %{_localstatedir}/run/gdm
%attr(750,gdm,gdm) %dir %{_localstatedir}/log/gdm
%attr(750,gdm,gdm) %dir %{_localstatedir}/lib/gdm/.gconf.mandatory
%attr(640,gdm,gdm) %{_localstatedir}/lib/gdm/.gconf.mandatory/%gconf-tree.xml
%attr(640,gdm,gdm) %{_localstatedir}/lib/gdm/.gconf.path
%dir %{_localstatedir}/cache/gdm
%config /etc/pam.d/*
/sbin/conf.d/SuSEconfig.gdm
%config %{_sysconfdir}/dbus-1/system.d/gdm.conf
%files branding-upstream