diff -Naur gdm-2.26.1.orig/common/gdm-settings-keys.h gdm-2.26.1/common/gdm-settings-keys.h --- gdm-2.26.1.orig/common/gdm-settings-keys.h 2009-05-12 16:52:49.747175254 +0200 +++ gdm-2.26.1/common/gdm-settings-keys.h 2009-05-12 17:02:36.826359776 +0200 @@ -27,6 +27,7 @@ #define GDM_KEY_USER "daemon/User" #define GDM_KEY_GROUP "daemon/Group" +#define GDM_KEY_VT "daemon/VT" #define GDM_KEY_AUTO_LOGIN_ENABLE "daemon/AutomaticLoginEnable" #define GDM_KEY_AUTO_LOGIN_USER "daemon/AutomaticLogin" #define GDM_KEY_TIMED_LOGIN_ENABLE "daemon/TimedLoginEnable" diff -Naur gdm-2.26.1.orig/daemon/gdm-server.c gdm-2.26.1/daemon/gdm-server.c --- gdm-2.26.1.orig/daemon/gdm-server.c 2009-05-12 16:52:49.697174894 +0200 +++ gdm-2.26.1/daemon/gdm-server.c 2009-05-12 20:32:56.127640378 +0200 @@ -43,7 +43,9 @@ #include "gdm-common.h" #include "gdm-signal-handler.h" - +#include "gdm-settings.h" +#include "gdm-settings-direct.h" +#include "gdm-settings-keys.h" #include "gdm-server.h" extern char **environ; @@ -79,7 +81,7 @@ char *parent_display_name; char *parent_auth_file; char *chosen_hostname; - + char *vt; guint child_watch_id; }; @@ -676,7 +678,7 @@ gboolean res; /* fork X server process */ - res = gdm_server_spawn (server, NULL); + res = gdm_server_spawn (server, server->priv->vt); return res; } @@ -927,6 +929,8 @@ static void gdm_server_init (GdmServer *server) { + int vt; + gboolean has_vt; server->priv = GDM_SERVER_GET_PRIVATE (server); @@ -934,6 +938,11 @@ server->priv->command = g_strdup (X_SERVER " -br -verbose"); server->priv->log_dir = g_strdup (LOGDIR); + has_vt = gdm_settings_direct_get_int (GDM_KEY_VT, &vt); + if (has_vt) { + server->priv->vt = g_strdup_printf ("vt %d", vt); + } + add_ready_handler (server); } diff -Naur gdm-2.26.1.orig/data/gdm.schemas.in.in gdm-2.26.1/data/gdm.schemas.in.in --- gdm-2.26.1.orig/data/gdm.schemas.in.in 2009-05-12 16:52:49.703840966 +0200 +++ gdm-2.26.1/data/gdm.schemas.in.in 2009-05-12 17:03:42.806980552 +0200 @@ -23,6 +23,11 @@ @GDM_GROUPNAME@ + daemon/VT + i + 7 + + daemon/AutomaticLoginEnable b false