[BLFS Trac] #2172: XDG Base Directory Issues
dbn.lists at gmail.com
Thu Jan 25 22:07:19 PST 2007
On 1/25/07, Luca <liliana.perossa at fastwebnet.it> wrote:
> Hello (sorry for not using trac but actually I can't).
Why is that? Anything I can do to help?
> I don't remember if at that time I've specified the exact problem,
> anyway with those instrs. when I started xfce session it caused a
> mcs-manager segfault reporting literally the XDG* (needed export) -
> tried a lot of times with and without the export; I don't remember
> because I've upgraded it first to version 4.3 beta and now to version
> 4.4, anyway the segfault paragraph reported a phrase like "You need to
> export /etc/xdg in your XDG* environment".
First, I would suggest compiling libxfce4util with --sysconfdir=/etc.
However, if you haven't done that, maybe you can confirm my hunch.
Is it true that you always had XDG_CONFIG_DIRS=/usr/share?
I've looked at the source for libxfce4util in both xfce-4.2 and
xfce-4.4 now. I'll try to explain what's happening. libxfce4util is
built with a default path equivalent to XDG_CONFIG_DIRS. This is
passed to the C preprocessor through a macro called
DEFAULT_XDG_CONFIG_DIRS. The default path is
$(sysconfdir)/xdg:$(sysconfdir)/xfce4:/etc/xdg. If XDG_CONFIG_DIRS is
present in the environment, it takes precedence over the default path.
In addition, $(syscondir)/xdg is always appended to the path. So, if
$(sysconfdir) != /etc and XDG_CONFIG_DIRS != /etc/xdg, then there is
no way any xfce application will know about the configuration in
/etc/xdg. At least, that's the way it seems to me.
I'd like to know if rebuilding libxfce4util with --sysconfdir=/etc
solves the problem. In that case, it seems that you could set
XDG_CONFIG_DIRS to anything and it would still work. However, there's
currently bogus information in the book suggesting that the default
setting for XDG_CONFIG_DIRS is /usr/share. It should be /etc/xdg.
Please let me know if any of this information solves these issues. I
don't have XFCE installed, I'm just reading the source.
More information about the blfs-book