[BLFS Trac] #2172: XDG Base Directory Issues

Luca liliana.perossa at fastwebnet.it
Thu Jan 25 22:30:46 PST 2007


Dan Nicholson ha scritto:
> 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?
>
>   
> 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.
>
> --
> Dan
>   
Hi Dan.

No, it's not a trac problem, it's a problem on the system I'm now on...
In current BLFS-SVN book (looking at now) it is said to install 
libxfce4util with "./configure --prefix=/usr"; installed XFce-4.2.3.2, 
XFce-4.3beta and XFce-4.4 as per the book with some minor adjustments; 
in /etc/xdg hierarchy we find {autostart, menus,Thunar, xfce, 
xfce4-session} dirs and ksysguarddrc file. To make the session start I 
needed to install as per the book and then add the XDG* export (since 
XDG_CONFIG_DIRS is exported by default to /usr/share) or installing 
libxfce4util with "--sysconfdir=/etc" - tried both ways.
Actually in my profile the XDG* environment is set as following:

XDG_DATA_DIRS=/opt/gnome-2.14.2/share:/opt-kde-3.5.2/share:/opt/kde-3.5.4/share::/opt/kde-3.5.5/share:/opt/gnome-2.16.0/share:/opt/wine/share
XDG_CONFIG_DIRS=/etc/gnome/2.14.2/xdg:/etc/kde/xdg:/etc/gnome/2.16.0/xdg
export XDG_DATA_DIRS XDG_CONFIG_DIRS


which worked with both older versions and newer (notice the fact the I 
exported no-more /etc/xdg).
I confirm you that XDG_CONFIG_DIRS should be changed to "/etc/xdg" (to 
make it work with old version).
Don't worry about the multiple kde and gnome versions, I actually have 
Kde-3.5.2/3.5.4/3.5.5  (in a separate environment Kde-4.0 second 
developer snapshot - numbered as 3.80.2) and Gnome-2.14.2/2.16.0, with 
wrappers for the multiple choice and working as expected but I actually 
have only XFce-4.4 version installed.
Luca



More information about the blfs-book mailing list