Accepting request 21201 from GNOME:Factory
Copy from GNOME:Factory/gdm based on submit request 21201 from user vuntz OBS-URL: https://build.opensuse.org/request/show/21201 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/gdm?expand=0&rev=82
This commit is contained in:
parent
2848b4615f
commit
76de0e7e7f
29
gdm-default-wm.patch
Normal file
29
gdm-default-wm.patch
Normal file
@ -0,0 +1,29 @@
|
||||
Index: gdm-2.27.90/daemon/gdm-session-direct.c
|
||||
===================================================================
|
||||
--- gdm-2.27.90.orig/daemon/gdm-session-direct.c
|
||||
+++ gdm-2.27.90/daemon/gdm-session-direct.c
|
||||
@@ -47,6 +47,8 @@
|
||||
|
||||
#include <libhal.h>
|
||||
|
||||
+#include "gdm-sysconfig.h"
|
||||
+
|
||||
#include "gdm-session-direct.h"
|
||||
#include "gdm-session.h"
|
||||
#include "gdm-session-private.h"
|
||||
@@ -670,6 +672,15 @@ get_fallback_session_name (void)
|
||||
int i;
|
||||
char *name;
|
||||
|
||||
+ name = gdm_sysconfig_load_value ("/etc/sysconfig/windowmanager", "DEFAULT_WM");
|
||||
+ if (name && get_session_command_for_name (name, NULL)) {
|
||||
+ return name;
|
||||
+ }
|
||||
+
|
||||
+ if (name) {
|
||||
+ g_free (name);
|
||||
+ }
|
||||
+
|
||||
name = g_strdup ("gnome");
|
||||
if (get_session_command_for_name (name, NULL)) {
|
||||
return name;
|
75
gdm-xauthlocalhostname.patch
Normal file
75
gdm-xauthlocalhostname.patch
Normal file
@ -0,0 +1,75 @@
|
||||
Index: gdm-2.27.90/daemon/gdm-display-access-file.c
|
||||
===================================================================
|
||||
--- gdm-2.27.90.orig/daemon/gdm-display-access-file.c
|
||||
+++ gdm-2.27.90/daemon/gdm-display-access-file.c
|
||||
@@ -440,11 +440,15 @@ _get_auth_info_for_display (GdmDisplayAc
|
||||
if (is_local) {
|
||||
char localhost[HOST_NAME_MAX + 1] = "";
|
||||
*family = FamilyLocal;
|
||||
+#if 0
|
||||
if (gethostname (localhost, HOST_NAME_MAX) == 0) {
|
||||
*address = g_strdup (localhost);
|
||||
} else {
|
||||
+#endif
|
||||
*address = g_strdup ("localhost");
|
||||
+#if 0
|
||||
}
|
||||
+#endif
|
||||
} else {
|
||||
*family = FamilyWild;
|
||||
gdm_display_get_remote_hostname (display, address, NULL);
|
||||
Index: gdm-2.27.90/daemon/gdm-session-direct.c
|
||||
===================================================================
|
||||
--- gdm-2.27.90.orig/daemon/gdm-session-direct.c
|
||||
+++ gdm-2.27.90/daemon/gdm-session-direct.c
|
||||
@@ -2050,6 +2050,12 @@ setup_session_environment (GdmSessionDir
|
||||
session->priv->user_x11_authority_file);
|
||||
}
|
||||
|
||||
+ if (session->priv->display_is_local) {
|
||||
+ gdm_session_direct_set_environment_variable (session,
|
||||
+ "XAUTHLOCALHOSTNAME",
|
||||
+ "localhost");
|
||||
+ }
|
||||
+
|
||||
/* FIXME: We do this here and in the session worker. We should consolidate
|
||||
* somehow.
|
||||
*/
|
||||
Index: gdm-2.27.90/daemon/gdm-slave.c
|
||||
===================================================================
|
||||
--- gdm-2.27.90.orig/daemon/gdm-slave.c
|
||||
+++ gdm-2.27.90/daemon/gdm-slave.c
|
||||
@@ -222,6 +222,10 @@ get_script_environment (GdmSlave *slav
|
||||
g_hash_table_insert (hash, g_strdup ("REMOTE_HOST"), g_strdup (slave->priv->display_hostname));
|
||||
}
|
||||
|
||||
+ if (slave->priv->display_is_local) {
|
||||
+ g_hash_table_insert (hash, g_strdup ("XAUTHLOCALHOSTNAME"), g_strdup ("localhost"));
|
||||
+ }
|
||||
+
|
||||
/* Runs as root */
|
||||
g_hash_table_insert (hash, g_strdup ("XAUTHORITY"), g_strdup (slave->priv->display_x11_authority_file));
|
||||
g_hash_table_insert (hash, g_strdup ("DISPLAY"), g_strdup (slave->priv->display_name));
|
||||
@@ -374,6 +378,7 @@ gdm_slave_connect_to_x11_display (GdmSla
|
||||
|
||||
g_setenv ("DISPLAY", slave->priv->display_name, TRUE);
|
||||
g_setenv ("XAUTHORITY", slave->priv->display_x11_authority_file, TRUE);
|
||||
+ g_setenv ("XAUTHLOCALHOSTNAME", "localhost", TRUE);
|
||||
|
||||
sigemptyset (&mask);
|
||||
sigaddset (&mask, SIGCHLD);
|
||||
Index: gdm-2.27.90/daemon/gdm-welcome-session.c
|
||||
===================================================================
|
||||
--- gdm-2.27.90.orig/daemon/gdm-welcome-session.c
|
||||
+++ gdm-2.27.90/daemon/gdm-welcome-session.c
|
||||
@@ -315,6 +315,10 @@ get_welcome_environment (GdmWelcomeSessi
|
||||
g_hash_table_insert (hash, g_strdup ("SHELL"), g_strdup (pwent->pw_shell));
|
||||
}
|
||||
|
||||
+ if (welcome_session->priv->x11_display_is_local) {
|
||||
+ g_hash_table_remove (hash, "XAUTHLOCALHOSTNAME");
|
||||
+ g_hash_table_insert (hash, g_strdup ("XAUTHLOCALHOSTNAME"), g_strdup ("localhost"));
|
||||
+ }
|
||||
|
||||
g_hash_table_insert (hash, g_strdup ("PATH"), g_strdup (g_getenv ("PATH")));
|
||||
|
11
gdm.changes
11
gdm.changes
@ -1,3 +1,14 @@
|
||||
-------------------------------------------------------------------
|
||||
Mon Sep 28 14:25:50 CEST 2009 - vuntz@opensuse.org
|
||||
|
||||
- Add gdm-xauthlocalhostname.patch: fix non-working user session
|
||||
when the hostname changes during login. Fix shipstopper
|
||||
bnc#538064.
|
||||
- Add gdm-default-wm.patch: gdm now reads the DEFAULT_WM setting in
|
||||
/etc/sysconfig/windowmanager to know which session to use by
|
||||
default instead of always using GNOME.
|
||||
This should fix using GDM for XFCE.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Aug 25 14:03:14 CEST 2009 - vuntz@novell.com
|
||||
|
||||
|
8
gdm.spec
8
gdm.spec
@ -42,7 +42,7 @@ BuildRequires: zenity
|
||||
License: GPL v2 or later
|
||||
Group: System/GUI/GNOME
|
||||
Version: 2.27.90
|
||||
Release: 1
|
||||
Release: 2
|
||||
Summary: The GNOME 2.x Display Manager
|
||||
Source: %{name}-%{version}.tar.bz2
|
||||
Source1: gdm.pamd
|
||||
@ -78,6 +78,10 @@ Patch31: gdm-gconf-path.patch
|
||||
Patch32: gdm-keyboard-from-hal.patch
|
||||
# PATCH-FIX-OPENSUSE gdm-keyboard-from-sysconfig.patch bnc432360 bnc478083 hpj@novell.com -- Read keyboard options from sysconfig (for openSUSE <= 11.1, since keyboard layout wasn't in hal)
|
||||
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 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-OPENSUSE gdm-selinux.patch -- Small changes to make it compile fine with SELinux
|
||||
Patch60: gdm-selinux.patch
|
||||
Url: http://www.gnome.org/
|
||||
@ -146,6 +150,8 @@ gnome-patch-translation-prepare
|
||||
%else
|
||||
%patch33 -p1
|
||||
%endif
|
||||
%patch34 -p1
|
||||
%patch35 -p1
|
||||
%patch60
|
||||
# gnome-patch-translation-update
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user