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:
commit
e226c2194c
@ -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
|
|
@ -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
3
gdm-2.32.0.tar.bz2
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:f47acd19ed10d6fbb37c3e2b54f5b392c7020db67f71db3f75567ead30ab2fa4
|
||||||
|
size 2477647
|
@ -1803,7 +1803,7 @@ Index: gdm-2.29.5/gui/simple-greeter/gdm-greeter-panel.c
|
|||||||
panel->priv->geometry.width = -1;
|
panel->priv->geometry.width = -1;
|
||||||
panel->priv->geometry.height = -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)) {
|
||||||
+ panel->priv->show_domain = FALSE;
|
+ 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_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_INCLUDE "greeter/Include"
|
||||||
#define GDM_KEY_EXCLUDE "greeter/Exclude"
|
#define GDM_KEY_EXCLUDE "greeter/Exclude"
|
||||||
#define GDM_KEY_INCLUDE_ALL "greeter/IncludeAll"
|
#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.orig/common/gdm-settings-system-backend.c
|
||||||
+++ gdm-2.29.5/common/gdm-settings-system-backend.c
|
+++ gdm-2.29.5/common/gdm-settings-system-backend.c
|
||||||
@@ -44,11 +44,11 @@
|
@@ -44,11 +44,11 @@
|
||||||
#define SYSCONFIG_AUTOLOGIN_KEY "DISPLAYMANAGER_AUTOLOGIN"
|
#define SYSCONFIG_AUTOLOGIN_KEY "DISPLAYMANAGER_AUTOLOGIN"
|
||||||
#define SYSCONFIG_TCP_OPEN_KEY "DISPLAYMANAGER_XSERVER_TCP_PORT_6000_OPEN"
|
#define SYSCONFIG_TCP_OPEN_KEY "DISPLAYMANAGER_XSERVER_TCP_PORT_6000_OPEN"
|
||||||
#define SYSCONFIG_XDMCP_KEY "DISPLAYMANAGER_REMOTE_ACCESS"
|
#define SYSCONFIG_XDMCP_KEY "DISPLAYMANAGER_REMOTE_ACCESS"
|
||||||
+#define SYSCONFIG_AD_KEY "DISPLAYMANAGER_AD_INTEGRATION"
|
+#define SYSCONFIG_AD_KEY "DISPLAYMANAGER_AD_INTEGRATION"
|
||||||
/* Keys from sysconfig that have no equivalent in GDM:
|
/* Keys from sysconfig that have no equivalent in GDM:
|
||||||
* - DISPLAYMANAGER_ROOT_LOGIN_REMOTE
|
* - DISPLAYMANAGER_ROOT_LOGIN_REMOTE
|
||||||
* - DISPLAYMANAGER_STARTS_XSERVER (we always have a local display manager,
|
* - 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");
|
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) {
|
+ if (priv->dirty_show_domain) {
|
||||||
+ val = g_strdup (priv->set_show_domain ? "true" : "false");
|
+ val = g_strdup (priv->set_show_domain ? "true" : "false");
|
||||||
+ } else {
|
+ } else {
|
||||||
@ -2248,7 +2248,7 @@ Index: gdm-2.29.5/common/gdm-settings-system-backend.c
|
|||||||
} else if (!strcasecmp (key, GDM_KEY_XDMCP_ENABLE)) {
|
} else if (!strcasecmp (key, GDM_KEY_XDMCP_ENABLE)) {
|
||||||
priv->set_xdmcp = value_to_boolean (value);
|
priv->set_xdmcp = value_to_boolean (value);
|
||||||
GDM_SETTINGS_SYSTEM_BACKEND (backend)->priv->dirty_xdmcp = TRUE;
|
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);
|
+ priv->set_show_domain = value_to_boolean (value);
|
||||||
+ GDM_SETTINGS_SYSTEM_BACKEND (backend)->priv->dirty_show_domain = TRUE;
|
+ GDM_SETTINGS_SYSTEM_BACKEND (backend)->priv->dirty_show_domain = TRUE;
|
||||||
} else {
|
} 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.orig/data/gdm.schemas.in.in
|
||||||
+++ gdm-2.29.5/data/gdm.schemas.in.in
|
+++ gdm-2.29.5/data/gdm.schemas.in.in
|
||||||
@@ -61,6 +61,11 @@
|
@@ -61,6 +61,12 @@
|
||||||
</schema>
|
</schema>
|
||||||
|
|
||||||
<schema>
|
<schema>
|
||||||
+ <key>greeter/ShowDomain</key>
|
+ <!-- SUSE-specific -->
|
||||||
|
+ <key>greeter/SUSEShowDomain</key>
|
||||||
+ <signature>b</signature>
|
+ <signature>b</signature>
|
||||||
+ <default>false</default>
|
+ <default>false</default>
|
||||||
+ </schema>
|
+ </schema>
|
||||||
|
163
gdm-passwordless-login.patch
Normal file
163
gdm-passwordless-login.patch
Normal 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);
|
||||||
|
}
|
||||||
|
|
@ -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.32.0.orig/common/Makefile.am
|
||||||
+++ gdm-2.29.4/common/Makefile.am
|
+++ gdm-2.32.0/common/Makefile.am
|
||||||
@@ -84,6 +84,8 @@ libgdmcommon_la_SOURCES = \
|
@@ -82,6 +82,8 @@ libgdmcommon_la_SOURCES = \
|
||||||
gdm-settings-backend.h \
|
gdm-settings-backend.h \
|
||||||
gdm-settings-desktop-backend.c \
|
gdm-settings-desktop-backend.c \
|
||||||
gdm-settings-desktop-backend.h \
|
gdm-settings-desktop-backend.h \
|
||||||
@ -11,7 +11,7 @@ Index: gdm-2.29.4/common/Makefile.am
|
|||||||
gdm-settings-keys.h \
|
gdm-settings-keys.h \
|
||||||
gdm-settings-utils.h \
|
gdm-settings-utils.h \
|
||||||
gdm-settings-utils.c \
|
gdm-settings-utils.c \
|
||||||
@@ -91,6 +93,8 @@ libgdmcommon_la_SOURCES = \
|
@@ -89,6 +91,8 @@ libgdmcommon_la_SOURCES = \
|
||||||
gdm-settings-direct.h \
|
gdm-settings-direct.h \
|
||||||
gdm-settings-client.h \
|
gdm-settings-client.h \
|
||||||
gdm-settings-client.c \
|
gdm-settings-client.c \
|
||||||
@ -20,11 +20,11 @@ Index: gdm-2.29.4/common/Makefile.am
|
|||||||
gdm-log.h \
|
gdm-log.h \
|
||||||
gdm-log.c \
|
gdm-log.c \
|
||||||
gdm-md5.h \
|
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
|
--- /dev/null
|
||||||
+++ gdm-2.29.4/common/gdm-settings-system-backend.c
|
+++ gdm-2.32.0/common/gdm-settings-system-backend.c
|
||||||
@@ -0,0 +1,348 @@
|
@@ -0,0 +1,349 @@
|
||||||
+/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*-
|
+/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*-
|
||||||
+ *
|
+ *
|
||||||
+ * Copyright (C) 2008 Hans Petter Jansson <hpj@copyleft.no>
|
+ * 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-marshal.h"
|
||||||
+#include "gdm-log.h"
|
+#include "gdm-log.h"
|
||||||
+
|
+
|
||||||
+#define SYSCONFIG_AUTOLOGIN_KEY "DISPLAYMANAGER_AUTOLOGIN"
|
+#define SYSCONFIG_AUTOLOGIN_KEY "DISPLAYMANAGER_AUTOLOGIN"
|
||||||
+#define SYSCONFIG_TCP_OPEN_KEY "DISPLAYMANAGER_XSERVER_TCP_PORT_6000_OPEN"
|
+#define SYSCONFIG_TCP_OPEN_KEY "DISPLAYMANAGER_XSERVER_TCP_PORT_6000_OPEN"
|
||||||
+#define SYSCONFIG_XDMCP_KEY "DISPLAYMANAGER_REMOTE_ACCESS"
|
+#define SYSCONFIG_XDMCP_KEY "DISPLAYMANAGER_REMOTE_ACCESS"
|
||||||
+/* Keys from sysconfig that have no equivalent in GDM:
|
+/* Keys from sysconfig that have no equivalent in GDM:
|
||||||
+ * - DISPLAYMANAGER_ROOT_LOGIN_REMOTE
|
+ * - DISPLAYMANAGER_ROOT_LOGIN_REMOTE
|
||||||
+ * - DISPLAYMANAGER_STARTS_XSERVER (we always have a local display manager,
|
+ * - DISPLAYMANAGER_STARTS_XSERVER (we always have a local display manager,
|
||||||
+ * see gdm_manager_constructor())
|
+ * see gdm_manager_constructor())
|
||||||
|
+ * - DISPLAYMANAGER_PASSWORD_LESS_LOGIN
|
||||||
+ * - DISPLAYMANAGER_AD_INTEGRATION
|
+ * - DISPLAYMANAGER_AD_INTEGRATION
|
||||||
+ * - DISPLAYMANAGER_SHUTDOWN (handled by ConsoleKit)
|
+ * - 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);
|
+ 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
|
--- /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 @@
|
@@ -0,0 +1,56 @@
|
||||||
+/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*-
|
+/* -*- 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
|
+G_END_DECLS
|
||||||
+
|
+
|
||||||
+#endif /* __GDM_SETTINGS_SYSTEM_BACKEND_H */
|
+#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.32.0.orig/common/gdm-settings.c
|
||||||
+++ gdm-2.29.4/common/gdm-settings.c
|
+++ gdm-2.32.0/common/gdm-settings.c
|
||||||
@@ -41,6 +41,7 @@
|
@@ -41,6 +41,7 @@
|
||||||
#include "gdm-settings-glue.h"
|
#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);
|
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
|
--- /dev/null
|
||||||
+++ gdm-2.29.4/common/gdm-sysconfig.c
|
+++ gdm-2.32.0/common/gdm-sysconfig.c
|
||||||
@@ -0,0 +1,481 @@
|
@@ -0,0 +1,481 @@
|
||||||
+/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*-
|
+/* -*- 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);
|
+ g_strfreev (lines);
|
||||||
+ return result;
|
+ return result;
|
||||||
+}
|
+}
|
||||||
Index: gdm-2.29.4/common/gdm-sysconfig.h
|
Index: gdm-2.32.0/common/gdm-sysconfig.h
|
||||||
===================================================================
|
===================================================================
|
||||||
--- /dev/null
|
--- /dev/null
|
||||||
+++ gdm-2.29.4/common/gdm-sysconfig.h
|
+++ gdm-2.32.0/common/gdm-sysconfig.h
|
||||||
@@ -0,0 +1,43 @@
|
@@ -0,0 +1,43 @@
|
||||||
+/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*-
|
+/* -*- 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
|
+G_END_DECLS
|
||||||
+
|
+
|
||||||
+#endif /* __GDM_SYSCONFIG_H */
|
+#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.32.0.orig/data/gdm.conf-custom.in
|
||||||
+++ gdm-2.29.4/data/gdm.conf-custom.in
|
+++ gdm-2.32.0/data/gdm.conf-custom.in
|
||||||
@@ -1,4 +1,7 @@
|
@@ -1,4 +1,7 @@
|
||||||
# GDM configuration storage
|
# GDM configuration storage
|
||||||
+#
|
+#
|
||||||
|
35
gdm.changes
35
gdm.changes
@ -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
|
Wed Sep 22 14:26:23 CEST 2010 - vuntz@opensuse.org
|
||||||
|
|
||||||
|
31
gdm.spec
31
gdm.spec
@ -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.
|
# Copyright (c) 2010 SUSE LINUX Products GmbH, Nuernberg, Germany.
|
||||||
#
|
#
|
||||||
@ -41,14 +41,12 @@ BuildRequires: xorg-x11-server-extra
|
|||||||
BuildRequires: zenity
|
BuildRequires: zenity
|
||||||
License: GPLv2+
|
License: GPLv2+
|
||||||
Group: System/GUI/GNOME
|
Group: System/GUI/GNOME
|
||||||
Version: 2.31.92
|
Version: 2.32.0
|
||||||
Release: 1
|
Release: 1
|
||||||
Summary: The GNOME 2.x Display Manager
|
Summary: The GNOME 2.x Display Manager
|
||||||
Source: %{name}-%{version}.tar.bz2
|
Source: %{name}-%{version}.tar.bz2
|
||||||
Source1: gdm.pamd
|
Source1: gdm.pamd
|
||||||
Source2: gdm-autologin.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
|
# 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
|
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
|
# 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
|
Patch7: gdm-suse-xsession.patch
|
||||||
# PATCH-FIX-OPENSUSE gdm-sysconfig-settings.patch bnc432360 hpj@novell.com -- Read autologin options from /etc/sysconfig/displaymanager
|
# PATCH-FIX-OPENSUSE gdm-sysconfig-settings.patch bnc432360 hpj@novell.com -- Read autologin options from /etc/sysconfig/displaymanager
|
||||||
Patch8: gdm-sysconfig-settings.patch
|
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)
|
# 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)
|
# 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
|
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.
|
# 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
|
%patch6 -p1
|
||||||
%patch7 -p1
|
%patch7 -p1
|
||||||
%patch8 -p1
|
%patch8 -p1
|
||||||
#%patch9 -p1
|
%patch9 -p1
|
||||||
|
#%patch10 -p1
|
||||||
%patch15 -p1
|
%patch15 -p1
|
||||||
%patch18 -p1
|
%patch18 -p1
|
||||||
%patch20 -p1
|
%patch20 -p1
|
||||||
@ -181,16 +182,12 @@ autoreconf -f -i
|
|||||||
%find_gconf_schemas
|
%find_gconf_schemas
|
||||||
# Remove wrapper, it is not needed.
|
# Remove wrapper, it is not needed.
|
||||||
mv $RPM_BUILD_ROOT%{_sbindir}/gdm-binary $RPM_BUILD_ROOT%{_sbindir}/gdm
|
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
|
mkdir -p $RPM_BUILD_ROOT/etc/pam.d
|
||||||
cp %{S:1} $RPM_BUILD_ROOT/etc/pam.d/gdm
|
cp %{S:1} $RPM_BUILD_ROOT/etc/pam.d/gdm
|
||||||
cp %{S:2} $RPM_BUILD_ROOT/etc/pam.d/gdm-autologin
|
cp %{S:2} $RPM_BUILD_ROOT/etc/pam.d/gdm-autologin
|
||||||
# Install PostLogin script.
|
# Install PostLogin script.
|
||||||
mv $RPM_BUILD_ROOT%{_sysconfdir}/gdm/PostLogin/Default.sample $RPM_BUILD_ROOT%{_sysconfdir}/gdm/PostLogin/Default
|
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}/log/gdm
|
||||||
mkdir -p $RPM_BUILD_ROOT{_localstatedir}/run/gdm
|
mkdir -p $RPM_BUILD_ROOT{_localstatedir}/run/gdm
|
||||||
%find_lang %{name}
|
%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
|
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
|
%preun -f %{name}.schemas_preun
|
||||||
|
|
||||||
@ -242,14 +248,13 @@ fi
|
|||||||
%{_libexecdir}/gdm/gdm-*
|
%{_libexecdir}/gdm/gdm-*
|
||||||
%exclude %{_libexecdir}/gdm/gdm-user-switch-applet
|
%exclude %{_libexecdir}/gdm/gdm-user-switch-applet
|
||||||
%attr(750,gdm,gdm) %dir %{_localstatedir}/lib/gdm
|
%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}/log/gdm
|
||||||
%attr(750,gdm,gdm) %dir %{_localstatedir}/lib/gdm/.gconf.mandatory
|
%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.mandatory/%gconf-tree.xml
|
||||||
%attr(640,gdm,gdm) %{_localstatedir}/lib/gdm/.gconf.path
|
%attr(640,gdm,gdm) %{_localstatedir}/lib/gdm/.gconf.path
|
||||||
%dir %{_localstatedir}/cache/gdm
|
%dir %{_localstatedir}/cache/gdm
|
||||||
%config /etc/pam.d/*
|
%config /etc/pam.d/*
|
||||||
/sbin/conf.d/SuSEconfig.gdm
|
|
||||||
%config %{_sysconfdir}/dbus-1/system.d/gdm.conf
|
%config %{_sysconfdir}/dbus-1/system.d/gdm.conf
|
||||||
|
|
||||||
%files branding-upstream
|
%files branding-upstream
|
||||||
|
Loading…
x
Reference in New Issue
Block a user