SHA256
1
0
forked from pool/gdm
OBS User autobuild 2009-10-05 23:59:04 +00:00 committed by Git OBS Bridge
parent efcb544327
commit a3595f3e08
11 changed files with 464 additions and 1831 deletions

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

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

View File

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

View File

@ -1,52 +0,0 @@
diff --git a/daemon/gdm-static-display.c b/daemon/gdm-static-display.c
index a747ee3..9605f5a 100644
--- a/daemon/gdm-static-display.c
+++ b/daemon/gdm-static-display.c
@@ -45,7 +45,7 @@
struct GdmStaticDisplayPrivate
{
- gboolean enable_timed_login;
+ gboolean first_login;
};
enum {
@@ -121,6 +121,8 @@ gdm_static_display_unmanage (GdmDisplay *display)
{
g_return_val_if_fail (GDM_IS_DISPLAY (display), FALSE);
+ GDM_STATIC_DISPLAY (display)->priv->first_login = FALSE;
+
GDM_DISPLAY_CLASS (gdm_static_display_parent_class)->unmanage (display);
return TRUE;
@@ -158,12 +160,14 @@ gdm_static_display_get_timed_login_details (GdmDisplay *display,
char **usernamep,
int *delayp)
{
- if (GDM_STATIC_DISPLAY (display)->priv->enable_timed_login) {
- GDM_DISPLAY_CLASS (gdm_static_display_parent_class)->get_timed_login_details (display, enabledp, usernamep, delayp);
- } else {
- *enabledp = FALSE;
- *usernamep = g_strdup ("");
- *delayp = 0;
+ GDM_DISPLAY_CLASS (gdm_static_display_parent_class)->get_timed_login_details (display, enabledp, usernamep, delayp);
+
+ if (!GDM_STATIC_DISPLAY (display)->priv->first_login) {
+ /* if this is autologin but not timed login, then disable
+ * autologin after the first one */
+ if (*enabledp && *delayp == 0) {
+ *enabledp = FALSE;
+ }
}
}
@@ -196,7 +200,7 @@ gdm_static_display_init (GdmStaticDisplay *static_display)
static_display->priv = GDM_STATIC_DISPLAY_GET_PRIVATE (static_display);
- static_display->priv->enable_timed_login = TRUE;
+ static_display->priv->first_login = TRUE;
}
static void

View File

@ -1,13 +0,0 @@
Index: gdm-2.28.0/daemon/gdm-slave.c
===================================================================
--- gdm-2.28.0.orig/daemon/gdm-slave.c
+++ gdm-2.28.0/daemon/gdm-slave.c
@@ -836,6 +836,8 @@ gdm_slave_parse_enriched_login (GdmSlave
} else {
return (g_strdup (username));
}
+
+ return NULL;
}
gboolean

View File

@ -1,186 +0,0 @@
From aa132a553b871a19a8d23fe8e9d93f736f2a4faf Mon Sep 17 00:00:00 2001
From: Richard Hughes <richard@hughsie.com>
Date: Mon, 28 Sep 2009 09:14:33 +0100
Subject: [PATCH] Convert gdm from using gnome-power-manager to DeviceKit-power
---
configure.ac | 7 ++
gui/simple-greeter/Makefile.am | 4 +
gui/simple-greeter/gdm-greeter-login-window.c | 84 ++++++-------------------
3 files changed, 31 insertions(+), 64 deletions(-)
diff --git a/configure.ac b/configure.ac
index 756890a..2cae1cf 100644
--- a/configure.ac
+++ b/configure.ac
@@ -51,6 +51,7 @@ LIBXKLAVIER_REQUIRED_VERSION=4.0
LIBCANBERRA_GTK_REQUIRED_VERSION=0.4
#FONTCONFIG_REQUIRED_VERSION=2.6.0
FONTCONFIG_REQUIRED_VERSION=2.5.0
+DEVKIT_POWER_REQUIRED_VERSION=008
EXTRA_COMPILE_WARNINGS(yes)
@@ -103,6 +104,12 @@ PKG_CHECK_MODULES(GCONF,
AC_SUBST(GCONF_CFLAGS)
AC_SUBST(GCONF_LIBS)
+PKG_CHECK_MODULES(DEVKIT_POWER,
+ devkit-power-gobject >= $DEVKIT_POWER_REQUIRED_VERSION
+)
+AC_SUBST(DEVKIT_POWER_CFLAGS)
+AC_SUBST(DEVKIT_POWER_LIBS)
+
PKG_CHECK_MODULES(SIMPLE_GREETER,
dbus-glib-1 >= $DBUS_GLIB_REQUIRED_VERSION
gtk+-2.0 >= $GTK_REQUIRED_VERSION
diff --git a/gui/simple-greeter/Makefile.am b/gui/simple-greeter/Makefile.am
index 8c9ae46..4c06bc3 100644
--- a/gui/simple-greeter/Makefile.am
+++ b/gui/simple-greeter/Makefile.am
@@ -18,6 +18,8 @@ AM_CPPFLAGS = \
-DSBINDIR=\""$(sbindir)"\" \
-DGDM_CACHE_DIR=\""$(localstatedir)/cache/gdm"\" \
-DAT_SPI_REGISTRYD_DIR="\"$(AT_SPI_REGISTRYD_DIR)\"" \
+ $(DEVKIT_POWER_CFLAGS) \
+ -DI_KNOW_THE_DEVICEKIT_POWER_API_IS_SUBJECT_TO_CHANGE \
$(DISABLE_DEPRECATED_CFLAGS) \
$(GTK_CFLAGS) \
$(SIMPLE_GREETER_CFLAGS) \
@@ -90,6 +92,7 @@ test_greeter_login_window_LDADD = \
libgdmuser.la \
$(COMMON_LIBS) \
$(SIMPLE_GREETER_LIBS) \
+ $(DEVKIT_POWER_LIBS) \
$(RBAC_LIBS) \
$(NULL)
@@ -324,6 +327,7 @@ gdm_simple_greeter_LDADD = \
$(SIMPLE_GREETER_LIBS) \
$(RBAC_LIBS) \
$(LIBXKLAVIER_LIBS) \
+ $(DEVKIT_POWER_LIBS) \
$(NULL)
gladedir = $(pkgdatadir)
diff --git a/gui/simple-greeter/gdm-greeter-login-window.c b/gui/simple-greeter/gdm-greeter-login-window.c
index c7ea5d6..7d4ef83 100644
--- a/gui/simple-greeter/gdm-greeter-login-window.c
+++ b/gui/simple-greeter/gdm-greeter-login-window.c
@@ -56,6 +56,8 @@
#include <dbus/dbus-glib.h>
#include <dbus/dbus-glib-lowlevel.h>
+#include <devkit-power-gobject/devicekit-power.h>
+
#include "gdm-settings-client.h"
#include "gdm-settings-keys.h"
#include "gdm-profile.h"
@@ -79,10 +81,6 @@
#define CK_SEAT_INTERFACE "org.freedesktop.ConsoleKit.Seat"
#define CK_SESSION_INTERFACE "org.freedesktop.ConsoleKit.Session"
-#define GPM_DBUS_NAME "org.freedesktop.PowerManagement"
-#define GPM_DBUS_PATH "/org/freedesktop/PowerManagement"
-#define GPM_DBUS_INTERFACE "org.freedesktop.PowerManagement"
-
#define GLADE_XML_FILE "gdm-greeter-login-window.glade"
#define KEY_GREETER_DIR "/apps/gdm/simple-greeter"
@@ -480,40 +478,15 @@ adjust_other_login_visibility(GdmGreeterLoginWindow *login_window)
static gboolean
can_suspend (GdmGreeterLoginWindow *login_window)
{
- DBusGConnection *connection;
- DBusGProxy *proxy;
- GError *error;
- gboolean ret;
- gboolean res;
-
- error = NULL;
- connection = dbus_g_bus_get (DBUS_BUS_SESSION, &error);
- if (error != NULL) {
- g_warning ("Couldn't connect to power manager: %s", error->message);
- g_error_free (error);
- return FALSE;
- }
- proxy = dbus_g_proxy_new_for_name (connection,
- GPM_DBUS_NAME,
- GPM_DBUS_PATH,
- GPM_DBUS_INTERFACE);
- ret = FALSE;
-
- res = dbus_g_proxy_call (proxy, "CanSuspend",
- &error,
- G_TYPE_INVALID,
- G_TYPE_BOOLEAN,
- &ret,
- G_TYPE_INVALID);
- if (! res) {
- if (error != NULL) {
- g_warning ("Could not ask power manager if user can suspend: %s",
- error->message);
- g_error_free (error);
- }
- ret = FALSE;
- }
+ gboolean ret;
+ DkpClient *dkp_client;
+ /* use DeviceKit-power to get data */
+ dkp_client = dkp_client_new ();
+ g_object_get (dkp_client,
+ "can-suspend", &ret,
+ NULL);
+ g_object_unref (dkp_client);
return ret;
}
@@ -655,36 +628,19 @@ do_disconnect (GdmGreeterLoginWindow *login_window)
static void
do_suspend (GdmGreeterLoginWindow *login_window)
{
- GError *error;
- DBusGConnection *connection;
- DBusGProxy *proxy;
+ gboolean ret;
+ DkpClient *dkp_client;
+ GError *error = NULL;
- g_debug ("GdmGreeterLoginWindow: Suspend button clicked");
-
- error = NULL;
- connection = dbus_g_bus_get (DBUS_BUS_SESSION, &error);
- if (error != NULL) {
+ /* use DeviceKit-power to get data */
+ dkp_client = dkp_client_new ();
+ ret = dkp_client_suspend (dkp_client, &error);
+ if (!ret) {
g_warning ("Couldn't suspend: %s", error->message);
g_error_free (error);
return;
}
- proxy = dbus_g_proxy_new_for_name (connection,
- GPM_DBUS_NAME,
- GPM_DBUS_PATH,
- GPM_DBUS_INTERFACE);
- error = NULL;
- dbus_g_proxy_call (proxy,
- "Suspend",
- &error,
- G_TYPE_INVALID,
- G_TYPE_INVALID);
- if (error != NULL) {
- g_warning ("Couldn't suspend: %s", error->message);
- g_error_free (error);
- return;
- }
-
- g_object_unref (proxy);
+ g_object_unref (dkp_client);
}
static void
--
1.6.4.4

File diff suppressed because it is too large Load Diff

View File

@ -1,19 +1,17 @@
Index: gdm-2.28.0/configure.ac
===================================================================
--- gdm-2.28.0.orig/configure.ac
+++ gdm-2.28.0/configure.ac
@@ -70,6 +70,7 @@ PKG_CHECK_MODULES(DAEMON,
diff -ur gdm-2.27.4/configure.ac gdm-2.27.4.patched//configure.ac
--- gdm-2.27.4/configure.ac 2009-07-20 04:17:17.000000000 +0200
+++ gdm-2.27.4.patched//configure.ac 2009-07-20 17:50:13.000000000 +0200
@@ -68,6 +68,7 @@
PKG_CHECK_MODULES(DAEMON,
dbus-glib-1 >= $DBUS_GLIB_REQUIRED_VERSION
gobject-2.0 >= $GLIB_REQUIRED_VERSION
gio-2.0 >= $GLIB_REQUIRED_VERSION
+ hal
)
AC_SUBST(DAEMON_CFLAGS)
AC_SUBST(DAEMON_LIBS)
Index: gdm-2.28.0/daemon/gdm-session-direct.c
===================================================================
--- gdm-2.28.0.orig/daemon/gdm-session-direct.c
+++ gdm-2.28.0/daemon/gdm-session-direct.c
diff -ur gdm-2.27.4/daemon/gdm-session-direct.c gdm-2.27.4.patched//daemon/gdm-session-direct.c
--- gdm-2.27.4/daemon/gdm-session-direct.c 2009-07-20 03:09:09.000000000 +0200
+++ gdm-2.27.4.patched//daemon/gdm-session-direct.c 2009-07-20 17:53:04.000000000 +0200
@@ -45,6 +45,8 @@
#include <dbus/dbus-glib.h>
#include <dbus/dbus-glib-lowlevel.h>
@ -23,7 +21,7 @@ Index: gdm-2.28.0/daemon/gdm-session-direct.c
#include "gdm-session-direct.h"
#include "gdm-session.h"
#include "gdm-session-private.h"
@@ -600,14 +602,66 @@ get_default_language_name (GdmSessionDir
@@ -597,14 +599,66 @@
return setlocale (LC_MESSAGES, NULL);
}
@ -93,7 +91,7 @@ Index: gdm-2.28.0/daemon/gdm-session-direct.c
}
static char *
@@ -1970,9 +2024,10 @@ setup_session_environment (GdmSessionDir
@@ -1955,9 +2009,10 @@
if (strcmp (get_layout_name (session),
get_default_layout_name (session)) == 0) {
@ -107,11 +105,10 @@ Index: gdm-2.28.0/daemon/gdm-session-direct.c
}
gdm_session_direct_set_environment_variable (session,
Index: gdm-2.28.0/daemon/gdm-session-settings.c
===================================================================
--- gdm-2.28.0.orig/daemon/gdm-session-settings.c
+++ gdm-2.28.0/daemon/gdm-session-settings.c
@@ -149,8 +149,7 @@ gdm_session_settings_set_layout_name (Gd
diff -ur gdm-2.27.4/daemon/gdm-session-settings.c gdm-2.27.4.patched//daemon/gdm-session-settings.c
--- gdm-2.27.4/daemon/gdm-session-settings.c 2009-05-19 17:18:12.000000000 +0200
+++ gdm-2.27.4.patched//daemon/gdm-session-settings.c 2009-07-20 17:50:13.000000000 +0200
@@ -149,8 +149,7 @@
{
g_return_if_fail (GDM_IS_SESSION_SETTINGS (settings));

View File

@ -1,11 +0,0 @@
Index: gdm-2.28.0/data/greeter-autostart/polkit-gnome-authentication-agent-1.desktop.in
===================================================================
--- gdm-2.28.0.orig/data/greeter-autostart/polkit-gnome-authentication-agent-1.desktop.in
+++ gdm-2.28.0/data/greeter-autostart/polkit-gnome-authentication-agent-1.desktop.in
@@ -1,5 +1,5 @@
[Desktop Entry]
Type=Application
_Name=PolicyKit Authentication Agent
-Exec=/usr/libexec/polkit-gnome-authentication-agent-1
+Exec=/usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1
OnlyShowIn=GNOME;

View File

@ -1,8 +1,8 @@
Index: gdm-2.28.0/daemon/gdm-session-worker.c
===================================================================
--- gdm-2.28.0.orig/daemon/gdm-session-worker.c
+++ gdm-2.28.0/daemon/gdm-session-worker.c
@@ -157,6 +157,9 @@ typedef int (* GdmSessionWorkerPamNewMes
diff --git a/daemon/gdm-session-worker.c b/daemon/gdm-session-worker.c
index c1ac7cf..a5de412 100644
--- a/daemon/gdm-session-worker.c
+++ b/daemon/gdm-session-worker.c
@@ -149,6 +149,9 @@ typedef int (* GdmSessionWorkerPamNewMessagesFunc) (int,
const struct pam_message **,
struct pam_response **,
gpointer);
@ -12,11 +12,10 @@ Index: gdm-2.28.0/daemon/gdm-session-worker.c
G_DEFINE_TYPE (GdmSessionWorker, gdm_session_worker, G_TYPE_OBJECT)
@@ -597,6 +600,22 @@ attempt_to_load_user_settings (GdmSessio
gdm_session_settings_load (worker->priv->user_settings,
username,
@@ -617,6 +620,21 @@ attempt_to_load_user_settings (GdmSessionWorker *worker,
passwd_entry->pw_dir,
NULL);
+
+ /* These singal handlers should be disconnected after the loading,
+ * so that gdm_session_settings_set_* APIs don't cause the emitting
+ * of Saved*NameRead D-Bus signals any more.
@ -32,6 +31,6 @@ Index: gdm-2.28.0/daemon/gdm-session-worker.c
+ g_signal_handlers_disconnect_by_func (worker->priv->user_settings,
+ G_CALLBACK (on_saved_layout_name_read),
+ worker);
seteuid (old_uid);
setegid (old_gid);
}
static void

View File

@ -1,52 +1,3 @@
-------------------------------------------------------------------
Fri Oct 2 19:33:46 CEST 2009 - vuntz@opensuse.org
- Add gdm-devkit-power.patch: gdm was using a dbus API which
doesn't exist anymore, and the right way to handle this is to use
DeviceKit-power.
- Add DeviceKit-power-devel BuildRequires for the patch.
- Add gdm-polkit-gnome-path.patch to use the correct path for the
polkit agent.
- Rebase gdm-greeter-greater-ui.patch. Fix bnc#533597.
-------------------------------------------------------------------
Fri Oct 2 17:25:38 CEST 2009 - vuntz@opensuse.org
- Make sure to package /var/cache/gdm: without it, gdm doesn't use
the configured language/layout for the user.
-------------------------------------------------------------------
Fri Oct 2 00:47:14 CEST 2009 - vuntz@opensuse.org
- Add gdm-autologin-once.patch: we don't want to autologin again
after a logout. Fix bnc#532090.
-------------------------------------------------------------------
Mon Sep 28 14:59:45 CEST 2009 - vuntz@opensuse.org
- Update to version 2.28.0:
+ GDM supports the ability to specify the automatic/timed login
user via a script via the same interface that the old GDM
supported.
+ The user's dmrc and face image files are stored in
/var/cache/gdm, so that the login process does not need to
access the user's $HOME directory before authentication. Refer
to bgo#565151.
+ Fix the login GUI options widget so the language/session/layout
choices are not reset after a failed login.
+ Fix language dialog so it does not crash if the user click's
the "OK" button when no language is selected.
+ Fix to ensure that the login dialog regains focus after the
language or layout dialogs are used.
+ The language dialog has improved logic to sort the language
names more correctly.
+ Make sure to check error variable is not NULL before
referencing it in the gdm-user-manager code.
+ Make sure to not print NULL strings since this causes crashes
on some platforms.
+ Improve documentation.
- Add gdm-build-fixes.patch to fix build.
-------------------------------------------------------------------
Mon Sep 28 14:25:50 CEST 2009 - vuntz@opensuse.org

View File

@ -1,5 +1,5 @@
#
# spec file for package gdm (Version 2.28.0)
# spec file for package gdm (Version 2.27.90)
#
# Copyright (c) 2009 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
@ -19,7 +19,6 @@
Name: gdm
BuildRequires: DeviceKit-power-devel
BuildRequires: check-devel
BuildRequires: fdupes
BuildRequires: gconf2-devel
@ -42,8 +41,8 @@ BuildRequires: xorg-x11-server-extra
BuildRequires: zenity
License: GPL v2 or later
Group: System/GUI/GNOME
Version: 2.28.0
Release: 1
Version: 2.27.90
Release: 2
Summary: The GNOME 2.x Display Manager
Source: %{name}-%{version}.tar.bz2
Source1: gdm.pamd
@ -62,11 +61,11 @@ Patch6: gdm-desktop-session-env-pam.patch
# PATCH-FIX-OPENSUSE gdm-suse-xsession.patch vuntz@novell.com -- Use the /etc/X11/xdm/* scripts
Patch7: gdm-suse-xsession.patch
# PATCH-NEEDS-REBASE gdm-domain-logon.patch hpj@novell.com -- Add UI to log in a specific domain (was: PATCH-FEATURE-SLED)
Patch8: gdm-domain-logon.patch
#Patch8: gdm-domain-logon.patch
# PATCH-FIX-OPENSUSE gdm-sysconfig-settings.patch bnc432360 hpj@novell.com -- Read autologin options from /etc/sysconfig/displaymanager
Patch13: gdm-sysconfig-settings.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-NEEDS-REBASE 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) (was PATCH-FIX-UPSTREAM)
#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.
Patch18: gdm-always-reflect-keyboard-layout.patch
# PATCH-FIX-OPENSUSE gdm-save-panel-space-on-low-resolutions.patch bnc449815 hpj@novell.com -- Hide clock and/or selector labels on low resolutions.
@ -81,16 +80,8 @@ Patch32: gdm-keyboard-from-hal.patch
Patch33: gdm-keyboard-from-sysconfig.patch
# PATCH-FIX-OPENSUSE gdm-default-wm.patch vuntz@novell.com -- Use sysconfig to know to which desktop to use by default
Patch34: gdm-default-wm.patch
# PATCH-FIX-OPENSUSE gdm-xauthlocalhostname.patch bgo555464 vuntz@novell.com -- Set XAUTHLOCALHOSTNAME to localhost for local logins to avoid issues in the session in case the hostname changes
# PATCH-FIX-OPENSUSE gdm-xauthlocalhostname.patch vuntz@novell.com -- Set XAUTHLOCALHOSTNAME to localhost for local logins to avoid issues in the session in case the hostname changes
Patch35: gdm-xauthlocalhostname.patch
# PATCH-FIX-UPSTREAM gdm-build-fixes.patch bgo596605 vuntz@novell.com -- Add missing return value
Patch36: gdm-build-fixes.patch
# PATCH-FIX-UPSTREAM gdm-autologin-once.patch bgo587606 vuntz@novell.com -- Make autologin work only once
Patch37: gdm-autologin-once.patch
# PATCH-FIX-UPSTREAM gdm-devkit-power.patch bgo596569 vuntz@opensuse.org -- Use devkit-power instead of non-existing dbus API, patch from upstream
Patch38: gdm-devkit-power.patch
# PATCH-FIX-UPSTREAM gdm-polkit-gnome-path.patch bgo597050 vuntz@opensuse.org -- Use the right patch for the polkit agent. The current patch is a quick workaround for now, until we know how upstream wants to fix this.
Patch39: gdm-polkit-gnome-path.patch
# PATCH-FIX-OPENSUSE gdm-selinux.patch -- Small changes to make it compile fine with SELinux
Patch60: gdm-selinux.patch
Url: http://www.gnome.org/
@ -149,7 +140,7 @@ gnome-patch-translation-prepare
# NEEDS-REBASE - also re-enable gnome-patch-translation-update after patch rebase
# %%patch8 -p1
%patch13 -p1
%patch15 -p1
# %%patch15 -p1
%patch18 -p1
%patch19 -p1
%patch20 -p1
@ -161,10 +152,6 @@ gnome-patch-translation-prepare
%endif
%patch34 -p1
%patch35 -p1
%patch36 -p1
%patch37 -p1
%patch38 -p1
%patch39 -p1
%patch60
# gnome-patch-translation-update
@ -258,7 +245,6 @@ fi
%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