Hi, You will find below a workaround to this bug. I do not know if it can be allowed in debian, because it makes liblightdm-gobject dependant to /etc/lightdm/lightdm.conf. This may not be a wanted dependency, but from my point of view, liblightdm-gobject-1-0 is quite mandatory as llightdm-gtk-greeter needs it and lightdm needs a greeter. Obviously, another configuration file can be used.
Thanks. --- lightdm-1.2.2.orig/liblightdm-gobject/Makefile.in +++ lightdm-1.2.2/liblightdm-gobject/Makefile.in @@ -317,7 +317,8 @@ liblightdm_gobject_1_la_LDFLAGS = -expor liblightdm_gobject_1_la_LIBADD = $(LIBLIGHTDM_GOBJECT_LIBS) liblightdm_gobject_1_la_CFLAGS = $(LIBLIGHTDM_GOBJECT_CFLAGS) \ $(WARN_CFLAGS) \ - -DXSESSIONS_DIR=\"$(datadir)/xsessions\" + -DXSESSIONS_DIR=\"$(datadir)/xsessions\" \ + -DCONFIG_DIR=\"$(sysconfdir)/lightdm\" mainheader_HEADERS = lightdm.h mainheaderdir = $(includedir)/lightdm-gobject-1 --- lightdm-1.2.2.orig/liblightdm-gobject/session.c +++ lightdm-1.2.2/liblightdm-gobject/session.c @@ -109,12 +109,22 @@ static void update_sessions (void) { GDir *directory; + gchar *xsessions_dir=NULL; GError *error = NULL; - + GKeyFile *key_lightdm; + if (have_sessions) return; - directory = g_dir_open (XSESSIONS_DIR, 0, &error); + key_lightdm = g_key_file_new (); + if (g_key_file_load_from_file (key_lightdm, g_build_filename (CONFIG_DIR, "lightdm.conf", NULL), + G_KEY_FILE_NONE, &error) ) + { + xsessions_dir=g_key_file_get_string (key_lightdm,"LightDM","xsessions-directory",&error); + } + g_key_file_free(key_lightdm); + g_clear_error (&error); + directory = g_dir_open (xsessions_dir?xsessions_dir:XSESSIONS_DIR, 0, &error); if (error) g_warning ("Failed to open sessions directory: %s", error->message); g_clear_error (&error); @@ -135,7 +144,7 @@ update_sessions (void) if (!g_str_has_suffix (filename, ".desktop")) continue; - path = g_build_filename (XSESSIONS_DIR, filename, NULL); + path = g_build_filename (xsessions_dir?xsessions_dir:XSESSIONS_DIR, filename, NULL); key_file = g_key_file_new (); result = g_key_file_load_from_file (key_file, path, G_KEY_FILE_NONE, &error); @@ -161,6 +170,7 @@ update_sessions (void) g_key_file_free (key_file); } + g_free(xsessions_dir); g_dir_close (directory); have_sessions = TRUE; --- lightdm-1.2.2.orig/liblightdm-gobject/Makefile.am +++ lightdm-1.2.2/liblightdm-gobject/Makefile.am @@ -4,7 +4,9 @@ liblightdm_gobject_1_la_LDFLAGS = -expor liblightdm_gobject_1_la_LIBADD = $(LIBLIGHTDM_GOBJECT_LIBS) liblightdm_gobject_1_la_CFLAGS = $(LIBLIGHTDM_GOBJECT_CFLAGS) \ $(WARN_CFLAGS) \ - -DXSESSIONS_DIR=\"$(datadir)/xsessions\" + -DXSESSIONS_DIR=\"$(datadir)/xsessions\" \ + -DCONFIG_DIR=\"$(sysconfdir)/lightdm\" + mainheader_HEADERS = lightdm.h mainheaderdir=$(includedir)/lightdm-gobject-1 -- Manuel Sabban -- To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org