GNOME Bugzilla – Bug 645918
Autodetection for helper paths
Last modified: 2013-11-11 17:18:49 UTC
Created attachment 184437 [details] [review] Detect helper paths more correctly Currently GDM assumes the helper paths (for g-s-d, g-session, ConsoleKit and PolicyKit) are always $libexecdir. However on Debian systems libexecdir is different for each package. Ideally this should be done with pkg-config, but of these four, only g-s-d ships a .pc file.
A per-package libexecdir is a nonsense...
libexecdir is nonsense to begin with. And it’s not in the FHS. Now if you don’t want to accept patches for non-Red Hat systems, just tell me, that will save everyone a lot of time.
The patch looks a bit bad... It would be better to do one of these: 1) just be able to specify the paths of those executables directly without playing around with multiple libexecdirs 2) have the pkg-config for those other packages specify the executable path and pick it up from there 3) #1 if specified, with #2 as the default (this is clearly best)
Sounds better, indeed.
We had a dinner-time conversation about this and we realised that my suggestion is suboptimal because it drastically increases the number of build-time dependencies of gdm. Vincent has some other ideas...
(In reply to comment #5) > Vincent has some other ideas... Would Vincent tell them about us here?
I don't remember what those ideas were :-) I assume Josselin was also at the dinner, so he might remember them if Ryan doesn't either...
Hrm, maybe it could have been something related to how we start the apps with gnome-session?
So there are two independent things here: 1) consolekit goo 2) stuff defining the gnome-session For 1) I don't care what we do. consolekit is slowly going to fade away anyway, I guess. In the mean time a --with-consolekit-x11-helper=/usr/lib/ConsoleKit/ck-whatever-helper would be fine. I'd certainly rather --with-consolekit-x11-helper than --with-consolekit-libexec-dir or something though. For 2), the greeter-autostart approach sort of sucks anyway because there's duplicated files between gdm and various components. We don't do that anymore, I believe, though. Now we just ship a session file and have gnome-session figure out how to start things. we do have some overrides (for instance we override gnome-shell to start it in "gdm mode"), but I think 2) isn't so much a problem now, right? We could drop the overrides entirely and just make each occurence than needs it check if it's in a gdm session (much the way gnome-session checks if its in a gdm session).
(In reply to comment #9) > 1) consolekit goo > 2) stuff defining the gnome-session As of 3.2, only consolekit and g-s-d remain. The g-s-d process is still started by hand, we could probably also use the autostart mechanism for that.
i don't think we start g-s-d by hand. We ship a session file "gdm-shell.session" that does RequiredComponents=gnome-shell;gnome-settings-daemon; and gnome-session starts gnome-settings-daemon for us.
I think this is fixed now: http://git.gnome.org/browse/gdm/commit/?id=e24a0030f7e3ac3b3f5582ebd293036f766937ec http://git.gnome.org/browse/gdm/commit/?id=b558e17960cf44323245a7bad425c2b6ed346a63
Hi, Sorry to resurrect an old bug, but this doesn't seems to be fully fixed. I still see the following line of code in gui/simple-chooser/gdm-chooser-session.c: g_spawn_command_line_async (LIBEXECDIR "/gnome-settings-daemon", &error); It seems that the description of the 2nd patch in the previous comment was not correct and was mixing gnome-session-check-accel and gnome-settings-daemon
Created attachment 259512 [details] [review] Add configure option to specify gnome-settings-daemon location Add --with-gnome-settings-daemon-directory option to allow one to pass location for the gnome-settings-daemon executable
Review of attachment 259512 [details] [review]: I think the patch i'd rather see, is one where the chooser uses gnome-session the same way the greeter does, but i'm not going to block on that if you aren't feeling ambituous enough to do that. feel free to post a patch that changes the chooser session over to use gnome-session, or feel free to push this patch with the below change made. ::: configure.ac @@ +1104,3 @@ +AC_ARG_WITH(gnome-settings-daemon-directory, + [AC_HELP_STRING([--with-gnome-settings-daemon-directory], + [Specify the directory of gnome-settings-daemon @<:@default=libexecdir@:>@])],, the description should probably say its for the chooser only (and maybe the option should have "chooser" somewhere in it too).
This problem has been fixed in the development version. The fix will be available in the next major software release. Thank you for your bug report. From 8b858821f75cfb3428fd8a6d98b101333dd5e105 Mon Sep 17 00:00:00 2001 From: Laurent Bigonville <bigon@bigon.be> Date: Mon, 11 Nov 2013 00:05:29 +0000 Subject: Add configure option to specify gnome-settings-daemon location Add --with-gnome-settings-daemon-directory option to allow one to pass location for the gnome-settings-daemon executable used by the chooser https://bugzilla.gnome.org/show_bug.cgi?id=645918