Re: configure scripts and packaging (gconf, scrollkeeper, etc)



On Wed, 2005-02-02 at 18:29 +0000, Mark McLoughlin wrote:
> On Wed, 2005-02-02 at 10:48 +0100, Jan de Groot wrote:
> > When packaging gnome stuff with make DESTDIR=$somedir/pkg install, many
> > packages are updating my scrollkeeper database, installing a mime
> > database, updating my freedesktop.org desktop-database specs, register
> > gconf schema files, etc on my local system.
> > Almost every package has a --disable-schemas-install option, but half of
> > them are hardly working, because the conditional is set in the
> > Makefiles, but never used after that.
> 
> 	Send patches for the packages that ignore the Makefile conditional. The
> ones that don't have the configure option just need AM_GCONF_SOURCE_2 in
> their configure.in.
> 
> 	In Fedora, we just use $GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL instead
> of --disable-schemas-install.

This variable makes gconftool-2 ignore the --makefile-(un)install-rule
or whatever we call in pos_tinstall and pre_remove? 

> 
> > Another thing is the scrollkeeper database: there is no option to
> > disable scrollkeeper database generation, which results in a nice and
> > shiny updated scrollkeeper database on your host system, or with gnome
> > source tarballs updated with new automake, a nice and shiny scrollkeeper
> > database included in your package. Currently I wreck out the
> > scrollkeeper things with some find and sed functions from the
> > Makefile.in before I run ./configure.
> 
> 	We do:
> 
> rm -rf $RPM_BUILD_ROOT%{_localstatedir}/scrollkeeper
> 
> 	and then run scrollkeeper-update in the post install script.
> 
> 	A nicer way of doing this wouldn't be hard to implement with a bit of
> scrollkeeper hacking.

In archlinux we build a package with fakeroot, and find out that we
have .omf files. Then we put this in the build scripts:

find . -name Makefile.in -exec sed -i -e 's/-scrollkeeper-update.*//' {}
\;
  if [ -f omf.make ]; then
    sed -i -e 's/-scrollkeeper-update.*//' omf.make
  fi

This makes sure no scrollkeeper-update is run. I am happy this part is
consistent in every gnome tarball.

> > Same as for update-mime-database and update-desktop-database: I have to
> > define the variable to /bin/true to skip generation on packages that do
> > generate these databases. I have only seen one or two packages that
> > allow to disable the database stuff.
> 
> 	Yeah, seems like no-one has addressed this issue either yet. In Fedora
> we're doing the same trick as with scrollkeeper.
> 
> > It would be nice to have consistency across the gnome buildscripts used
> > in the various source tarballs, the current stuff is not foolproof as it
> > is now.
> 
> 	It would indeed be nice, perhaps a single environment variable like
> GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL which gconftool-2,
> scrollkeeper-update, update-desktop-database etc. would all key off?
> 
> Cheers,
> Mark.
> 




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