# $Id$ PNAME="gconf" PVER="3.2.6" PBUILD="r2" PCAT="gnome-base" DESCRIPTION="GConf is a 'registry' system, a library applications can use to store key-value pairs persistently." HOMEPAGE="http://www.gnome.org/" DEPEND=">= dev-libs/glib2-2.36 >= dev-libs/libxml2-2.7 >= gnome-base/orbit-2.14.19 >= x11-libs/gtk3+-3.8 >= sys-apps/dbus-1.6 >= dev-libs/dbus-glib-0.100 >= net-nds/libldap-2.4.31 >= sys-apps/polkit-0.111" SDEPEND=">= dev-util/pkgconfig-0.25 >= dev-util/intltool-0.41 >= dev-libs/gobject-introspection-1.36" # include kill_gconf() in mage file SPECIAL_FUNCTIONS="kill_gconf" SRCFILE="GConf-${PVER}.tar.xz" SRCDIR="${BUILDDIR}/GConf-${PVER}" sminclude mtools gnome2 SRC_URI=( gnome://GConf/${PVER%.*}/${SRCFILE} mirror://${PNAME}/${SRCFILE} ) UP2DATE="updatecmd_gnome GConf" src_compile() { cd ${SRCDIR} # defaults-service needs polkit gn2_configure \ --enable-gtk \ --with-gtk=3.0 \ --enable-gsettings-backend \ --with-openldap \ --enable-defaults-service \ --enable-introspection \ || die mmake || die } src_install() { cd ${SRCDIR} gn2_src_install || die # needed directories to run gconf minstalldir /etc/gconf/gconf.xml.mandatory || die minstalldir /etc/gconf/gconf.xml.defaults || die } kill_gconf() { # this function will kill all running gconfd that could be causing troubles if [ -x /usr/bin/gconftool ] then /usr/bin/gconftool --shutdown fi if [ -x /usr/bin/gconftool-1 ] then /usr/bin/gconftool-1 --shutdown fi if [ -x /usr/bin/gconftool-2 ] then /usr/bin/gconftool-2 --shutdown fi return 0 } preinstall() { kill_gconf # install -d /etc/env.d # echo 'CONFIG_PROTECT_MASK="/etc/gconf"' > /etc/env.d/50gconf install -d ${MROOT}/root/.gconfd } postinstall() { # gconf specific: kill_gconf # change the permissions to avoid some gconf bugs echo "changing permissions for gconf dirs" find ${MROOT}/etc/gconf/ -type d -exec chmod ugo+rx "{}" \; echo "changing permissions for gconf files" find ${MROOT}/etc/gconf/ -type f -exec chmod ugo+r "{}" \; # disable scrollkeeper SCROLLKEEPER_UPDATE="0" gn2_postinstall }