Re: GSettings and you



On Wed, 2010-04-21 at 09:20 -0400, Matthias Clasen wrote:
> On Wed, Apr 21, 2010 at 4:26 AM, Richard Hughes <hughsient gmail com> wrote:
> > On 20 April 2010 15:45, Bastien Nocera <hadess hadess net> wrote:
> >> GSettings. Here are a couple of notes (in addition to some questions
> >> from Richard who was porting gnome-color-manager):
> >
> > Some more questions:
> >
> > 1. The Gio /usr/lib/pkgconfig/gio-2.0.pc file has this:
> >
> > giomoduledir=${libdir}/gio/modules
> > gsettingsschemadir=${prefix}/share/glib-2.0/schemas
> >
> > And yet when you do:
> >
> > pkg-config --variable gsettingsschemadir gio-2.0
> >
> > you get:
> >
> > /usr/share/glib-2.0/schemas
> >
> > (i.e. the ${prefix} is substituted out, rather than being left to the
> > configure to substitute itself with the correct value)
> >
> > This breaks "make distcheck" pretty hard.
> 
> This is gio telling you where it will look for installed schemas, so
> not expanding prefix would not make any sense. You should certainly
> prepend $DESTDIR. But, since gsettings is using XDG_DATA_DIRS anyway,
> we should probably scrap the variable altogether and just
> use $DESTDIR$(prefix)/glib-2.0/schemas. It is then up to people to set
> XDG_DATA_DIRS matching that prefix at runtime.

Yes please. This is the same kind of distcheck breaking that we
had with ScrollKeeper. It's why we have --disable-scrollkeeper
in gnome-doc-utils, and why every module has this:

DISTCHECK_CONFIGURE_FLAGS = --disable-scrollkeeper

I assumed from the pkg-config variable that GSettings only looked
in the single directory. But since it's using XDG_DATA_DIRS, we
should just have packages install to glib-2.0/schemas in their
own datadir. If people want to use wonky prefixes, they have to
set XDG_DATA_DIRS. They have to do it already anyway for a bunch
of other things to work.

--
Shaun




[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]