diff options
Diffstat (limited to 'system/ivman')
-rw-r--r-- | system/ivman/README | 14 | ||||
-rw-r--r-- | system/ivman/doinst.sh | 20 | ||||
-rw-r--r-- | system/ivman/ivman.SlackBuild | 69 | ||||
-rw-r--r-- | system/ivman/ivman.info | 8 | ||||
-rw-r--r-- | system/ivman/slack-desc | 11 |
5 files changed, 122 insertions, 0 deletions
diff --git a/system/ivman/README b/system/ivman/README new file mode 100644 index 0000000000000..54d6a3bc4118a --- /dev/null +++ b/system/ivman/README @@ -0,0 +1,14 @@ +Ivman is a generic handler for HAL events. + +Originally for automounting, it can now be used to run arbitrary +commands when events or conditions occur or properties are modified on +your hardware (e.g., run a command when you close your laptop's lid, +run a command when a particular device is attached or a particular CD +is inserted, etc). + +This package requires HAL, which is also available at SlackBuilds.org. + +If combined with 'pmount' instances can also be launched per user session +(e.g., create a link to /usr/bin/ivman in ~/.kde/Autostart). When a device +is attached, Ivman will call pmount to mount the device. Otherwise +/etc/fstab are need to be there for the devices. diff --git a/system/ivman/doinst.sh b/system/ivman/doinst.sh new file mode 100644 index 0000000000000..f8bc992646fbe --- /dev/null +++ b/system/ivman/doinst.sh @@ -0,0 +1,20 @@ +#!/bin/sh + +config() { + NEW="$1" + OLD="`dirname $NEW`/`basename $NEW .new`" + # If there's no config file by that name, mv it over: + if [ ! -r $OLD ]; then + mv $NEW $OLD + elif [ "`cat $OLD | md5sum`" = "`cat $NEW | md5sum`" ]; then + # toss the redundant copy + rm $NEW + fi + # Otherwise, we leave the .new copy for the admin to consider... +} + +config etc/ivman/IvmConfigActions.xml +config etc/ivman/IvmConfigProperties.xml +config etc/ivman/IvmConfigBase.xml +config etc/ivman/IvmConfigConditions.xml + diff --git a/system/ivman/ivman.SlackBuild b/system/ivman/ivman.SlackBuild new file mode 100644 index 0000000000000..eba496f85c690 --- /dev/null +++ b/system/ivman/ivman.SlackBuild @@ -0,0 +1,69 @@ +#!/bin/sh + +# Slackware build script for ivman +# Written by Menno E. Duursma <druiloor@zonnet.nl> +# Modified by the SlackBuilds.org project + +# Exit on most errors +set -e + +PRGNAM=ivman +VERSION=0.6.14 +ARCH=${ARCH:-i486} +BUILD=${BUILD:-1} +TAG=${TAG:-_SBo} +CWD=$(pwd) +TMP=${TMP:-/tmp/SBo} +PKG=$TMP/package-$PRGNAM +OUTPUT=${OUTPUT:-/tmp} # Drop the package in /tmp + +if [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mtune=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686 -mtune=i686" +fi + +rm -rf $PKG +mkdir -p $TMP $PKG $OUTPUT +cd $TMP +rm -rf $PRGNAM-$VERSION +tar -xjvf $CWD/$PRGNAM-$VERSION.tar.bz2 +cd $PRGNAM-$VERSION +chown -R root:root . +chmod -R u+w,go+r-w,a-s . + +CFLAGS="$SLKCFLAGS" \ +CXXFLAGS="$SLKCFLAGS" \ +./configure \ + --prefix=/usr \ + --sysconfdir=/etc \ + --localstatedir=/var \ + --mandir=/usr/man \ + --enable-static=no + +make +make install-strip DESTDIR=$PKG + +# Let's not clobber the configuration files +( cd $PKG/etc/ivman + for file in * ; do + mv $file ${file}.new ; + done +) + +# Compress man pages +( cd $PKG/usr/man + find . -type f -exec gzip -9 {} \; + for i in $(find . -type l) ; do ln -s $(readlink $i).gz $i.gz ; rm $i ; done +) + +mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION +cp -a [A-Z][A-Z]* $PKG/usr/doc/$PRGNAM-$VERSION +cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild + +mkdir -p $PKG/install +cat $CWD/slack-desc > $PKG/install/slack-desc +cat $CWD/doinst.sh > $PKG/install/doinst.sh + +cd $PKG +/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.tgz diff --git a/system/ivman/ivman.info b/system/ivman/ivman.info new file mode 100644 index 0000000000000..86f8336d0312f --- /dev/null +++ b/system/ivman/ivman.info @@ -0,0 +1,8 @@ +PRGNAM="ivman" +VERSION="0.6.14" +HOMEPAGE="http://ivman.sourceforge.net/" +DOWNLOAD="http://dl.sourceforge.net/ivman/ivman-0.6.14.tar.bz2" +MD5SUM="ebef12559268e2c5ea932cbb5aaa789e" +MAINTAINER="Menno E. Duursma" +EMAIL="druiloor@zonnet.nl" +APPROVED="rworkman" diff --git a/system/ivman/slack-desc b/system/ivman/slack-desc new file mode 100644 index 0000000000000..8c783aa8ebd60 --- /dev/null +++ b/system/ivman/slack-desc @@ -0,0 +1,11 @@ +ivman: Ivman is a flexible event manager for Linux. +ivman: +ivman: Originally an automounter, it can also be used to run arbitrary +ivman: commands when certain devices are added to or removed from the +ivman: system, when properties on existing devices change, or when devices +ivman: emit conditions. Unlike gnome-volume-manager, it runs from a +ivman: console. It uses D-BUS and HAL to listen for new devices, and +ivman: uses pmount for mounting. +ivman: +ivman: Ivman was developed by Ikke and Rohan of the GNOME project team. +ivman: |