# $Id$ PNAME="consolekit" PVER="0.4.5" PBUILD="r4" PCATEGORIE="sys-apps" DESCRIPTION="ConsoleKit is a framework for defining and tracking users, login sessions, and seats." HOMEPAGE="http://www.freedesktop.org/wiki/Software/ConsoleKit" DEPEND=">= dev-libs/glib2-2.28 >= sys-apps/dbus-1.4 >= dev-libs/dbus-glib-0.92 >= sys-libs/pam-1.1 >= x11-libs/libX11-1.4 >= sys-libs/zlib-1.2.5 >= sys-apps/polkit-0.101" SDEPEND=">= dev-util/pkgconfig-0.25 >= dev-libs/libxslt-1.1.26" SRCFILE="ConsoleKit-${PVER}.tar.bz2" SRCDIR="${BUILDDIR}/ConsoleKit-${PVER}" sminclude mtools SRC_URI=( http://www.freedesktop.org/software/ConsoleKit/dist/${SRCFILE} mirror://${PNAME}/${SRCFILE} mirror://${PNAME}/pam-foreground-compat.ck mirror://${PNAME}/${PNAME}-0.4.1-cleanup-console-tags.patch mirror://${PNAME}/${PNAME}-0.4.1-multilib.patch ) UP2TARBALL="${PNAME}-[0-9]" UP2DATE="updatecmd_freedesktop ${PNAME}" src_prepare() { munpack ${SRCFILE} || die cd ${SRCDIR} # clean up at_console compat files (until dbus gets fixed) mpatch ${PNAME}-0.4.1-cleanup-console-tags.patch || die # fix multilib support mpatch ${PNAME}-0.4.1-multilib.patch || die mautoreconf || die } src_compile() { cd ${SRCDIR} mconfigure \ --localstatedir=/var \ --libexecdir=/usr/$(mlibdir)/ConsoleKit \ --with-dbus-services=/usr/share/dbus-1/services/ \ --disable-debug \ --disable-docbook-docs \ --enable-pam-module \ --with-pam-module-dir=/$(mlibdir)/security \ XMLTO_FLAGS="--skip-validation" \ || die mmake || die } src_install() { cd ${SRCDIR} mmake DESTDIR=${BINDIR} install || die # remove included init scripts if [[ -d ${BINDIR}/etc/rc.d ]] then rm -r ${BINDIR}/etc/rc.d || die fi # needed directories mkeepdir /usr/$(mlibdir)/ConsoleKit/run-session.d || die mkeepdir /etc/ConsoleKit/run-session.d || die mkeepdir /var/run/ConsoleKit || die mkeepdir /var/log/ConsoleKit || die # pam compat minstalldir /usr/$(mlibdir)/ConsoleKit/run-session.d || die minstallexec -s pam-foreground-compat.ck /usr/$(mlibdir)/ConsoleKit/run-session.d || die # create polkit local authority file to allow users in plugdev group to reboot the computer minstalldir /var/lib/polkit-1/localauthority/10-vendor.d || die cat > ${BINDIR}/var/lib/polkit-1/localauthority/10-vendor.d/01-org.freedesktop.consolekit.pkla << EOF [Local restart] Identity=unix-group:plugdev Action=org.freedesktop.consolekit.system.restart ResultAny=yes ResultInactive=no ResultActive=yes [Local shutdown] Identity=unix-group:plugdev Action=org.freedesktop.consolekit.system.stop ResultAny=yes ResultInactive=no ResultActive=yes [Local restart - multiple] Identity=unix-group:plugdev Action=org.freedesktop.consolekit.system.restart-multiple-users ResultAny=yes ResultInactive=no ResultActive=yes [Local shutdown - multiple] Identity=unix-group:plugdev Action=org.freedesktop.consolekit.system.stop-multiple-users ResultAny=yes ResultInactive=no ResultActive=yes EOF # docs minstalldocs AUTHORS COPYING ChangeLog HACKING NEWS README || die } preinstall() { # adds plugdev group ${MLIBDIR}/mgroupadd -o "-g 302" plugdev } postinstall() { mstartunit console-kit-daemon.service } postremove() { mstopunit console-kit-daemon.service }