GNOME Bugzilla – Bug 685509
Gconf does not work with launchd and no X server
Last modified: 2012-10-09 19:22:00 UTC
Currently gconf does not work when no X Server is present. However, an X Server is not needed to start gconfd. The problem is a certain line in gconf-internals.c that checks wether gconfd can be started, but bails out, when the DISPLAY environment variable is not set. A bug report and a patch is available at https://trac.macports.org/ticket/35653, please take a look if the patch is acceptable. The line is still present in the current master branch.
GConf 2.28 is from 2009/2010. Is this still an issue with recent versions?
Yes, I assume it is. Although I have not tested it, it is very likely, as the code that causes the bug is still unchanged in the current master branch.
could please someone confirm that this patch is acceptable so it might be applied in MacPorts?
probably okay, the dbus docs say: Launchd allocates a socket and provides the unix path to it via the variable DBUS_LAUNCHD_SESSION_BUS_SOCKET in launchd's environment. ... On the client side, the envvar DBUS_SESSION_BUS_ADDRESS can be normally used but if it's not set, launchd is queried for the session bus socket So it seems analagous enough. If you attach the patch as a git-bz formatted patch with correct author and good commit message etc, i'll push it.
Created attachment 226139 [details] [review] fix early bailout when using launchd on Mac OS X we did not check if DBUS_LAUNCHD_SESSION_BUS_SOCKET was set. If this environment variable exists, launchd will start the gconf daemon and we won't need a X server to start the daemon.
Attachment 226139 [details] pushed as 44f85b6 - fix early bailout when using launchd on Mac OS X