diff options
Diffstat (limited to 'abs/extra/network-ups-tools')
-rw-r--r-- | abs/extra/network-ups-tools/PKGBUILD | 57 | ||||
-rw-r--r-- | abs/extra/network-ups-tools/finish.upsd | 16 | ||||
-rw-r--r-- | abs/extra/network-ups-tools/network-ups-tools.tar.gz | bin | 0 -> 1722 bytes | |||
-rw-r--r-- | abs/extra/network-ups-tools/nut-driver.service.patch | 14 | ||||
-rw-r--r-- | abs/extra/network-ups-tools/nut.install | 18 | ||||
-rw-r--r-- | abs/extra/network-ups-tools/run.upsd | 21 | ||||
-rw-r--r-- | abs/extra/network-ups-tools/upsd.init | 43 |
7 files changed, 169 insertions, 0 deletions
diff --git a/abs/extra/network-ups-tools/PKGBUILD b/abs/extra/network-ups-tools/PKGBUILD new file mode 100644 index 0000000..50afbcc --- /dev/null +++ b/abs/extra/network-ups-tools/PKGBUILD @@ -0,0 +1,57 @@ +# Maintainer: Alex Reznichenko <sa5gap@yandex.ru> +# Contributor: Roman Kyrylych <roman@archlinux.org> +# Contributor: Giuseppe Lucarelli <luk@rebelsoft.org> + +pkgname=network-ups-tools +pkgver=2.6.5 +pkgrel=2 +pkgdesc="NUT is a collection of programs for monitoring and administering UPS hardware" +arch=('i686' 'x86_64') +url="http://www.networkupstools.org/" +license=('GPL2') +depends=('openssl' 'libusb-compat') +makedepends=() +backup=(etc/ups/{ups.conf,upsd.conf,upsd.users,upsmon.conf,upssched.conf}) +install=nut.install +source=("http://www.networkupstools.org/source/2.6/nut-$pkgver.tar.gz" + 'upsd.init' 'nut-driver.service.patch') +options=('!emptydirs' '!libtool') +md5sums=('e6eac4fa04baff0d0a827d64efe81a7e' + '089ea4a56552253328d17603ff5670cc' + 'ee3aa25a08caca24f51951ee1f090c44') + +build() { + + cd $srcdir/nut-$pkgver + ./configure \ + --without-wrap \ + --with-user=ups \ + --with-group=nut \ + --with-usb \ + --prefix=/usr \ + --with-udev-dir=/usr/lib/udev \ + --with-systemdsystemunitdir=/lib/systemd/system \ + --datadir=/usr/share/ups \ + --sysconfdir=/etc/ups || return 1 + + make || return 1 + +} + +package() { + + cd $srcdir/nut-$pkgver + make DESTDIR=$pkgdir install || return 1 + + install -D -m755 $startdir/upsd.init $pkgdir/etc/rc.d/upsd || return 1 + install -D -m644 conf/ups.conf.sample $pkgdir/etc/ups/ups.conf + install -D -m640 conf/upsd.conf.sample $pkgdir/etc/ups/upsd.conf + install -D -m640 conf/upsd.users.sample $pkgdir/etc/ups/upsd.users + install -D -m640 conf/upsmon.conf.sample $pkgdir/etc/ups/upsmon.conf + install -D -m644 conf/upssched.conf.sample $pkgdir/etc/ups/upssched.conf + + # Fix systemd's nut-driver.service + cd $pkgdir + patch -p1 < ../nut-driver.service.patch + +} diff --git a/abs/extra/network-ups-tools/finish.upsd b/abs/extra/network-ups-tools/finish.upsd new file mode 100644 index 0000000..8eb335b --- /dev/null +++ b/abs/extra/network-ups-tools/finish.upsd @@ -0,0 +1,16 @@ +#!/bin/bash + +. /etc/rc.conf +. /etc/rc.d/functions + +PID=`pidof -o %PPID /usr/sbin/upsd` + stat_runit "Stopping UPSd Daemon" + /usr/bin/upsdrvctl stop &> /dev/null + /usr/sbin/upsmon -c stop &> /dev/null + [ ! -z "$PID" ] && kill $PID &> /dev/null + if [ $? -gt 0 ]; then + stat_fail + else + rm_daemon upsd + stat_done + fi diff --git a/abs/extra/network-ups-tools/network-ups-tools.tar.gz b/abs/extra/network-ups-tools/network-ups-tools.tar.gz Binary files differnew file mode 100644 index 0000000..eeb2ed6 --- /dev/null +++ b/abs/extra/network-ups-tools/network-ups-tools.tar.gz diff --git a/abs/extra/network-ups-tools/nut-driver.service.patch b/abs/extra/network-ups-tools/nut-driver.service.patch new file mode 100644 index 0000000..fec8116 --- /dev/null +++ b/abs/extra/network-ups-tools/nut-driver.service.patch @@ -0,0 +1,14 @@ +--- pkg/usr/lib/systemd/system/nut-driver.service 2012-10-15 21:50:08.216981122 +0400 ++++ pkg/usr/lib/systemd/system/nut-driver.service 2012-10-15 22:08:44.826990389 +0400 +@@ -4,7 +4,9 @@ + StopWhenUnneeded=yes + + [Service] +-ExecStart=${exec_prefix}/bin/upsdrvctl start +-ExecStop=${exec_prefix}/bin/upsdrvctl stop ++ExecStart=/usr/bin/upsdrvctl start ++ExecStop=/usr/bin/upsdrvctl stop + Type=forking + ++[Install] ++WantedBy=multi-user.target diff --git a/abs/extra/network-ups-tools/nut.install b/abs/extra/network-ups-tools/nut.install new file mode 100644 index 0000000..1eca341 --- /dev/null +++ b/abs/extra/network-ups-tools/nut.install @@ -0,0 +1,18 @@ +post_install() { + groupadd -g 55 nut &> /dev/null + useradd -u 55 -g nut -G tty -d /var/state/ups -s /bin/false ups >/dev/null 2>&1 + mkdir -p /var/state/ups/ + chmod 0770 /var/state/ups/ + chown root:nut /var/state/ups/ + chown root:nut /etc/ups/upsd.conf /etc/ups/upsd.users /etc/ups/upsmon.conf + echo ">>> Before starting your UPSd daemon, you must" + echo ">>> edit /etc/ups/ups.conf in order to set your" + echo ">>> UPS driver and port." +} + +pre_remove() { + userdel ups >/dev/null 2>&1 + groupdel nut >/dev/null 2>&1 + rm -rf /var/state/ups/ +} + diff --git a/abs/extra/network-ups-tools/run.upsd b/abs/extra/network-ups-tools/run.upsd new file mode 100644 index 0000000..83be88d --- /dev/null +++ b/abs/extra/network-ups-tools/run.upsd @@ -0,0 +1,21 @@ +#!/bin/bash + +. /etc/rc.conf +. /etc/rc.d/functions + +PID=`pidof -o %PPID /usr/sbin/upsd` + + stat_runit "Starting UPSd Daemon" + /usr/bin/upsdrvctl start &> /dev/null + [ -z "$PID" ] && /usr/sbin/upsd &>/dev/null + /usr/sbin/upsmon &>/dev/null + if [ $? -gt 0 ]; then + stat_fail + else + add_daemon upsd + stat_done + fi + + while [ -n $PID ] ; do + sleep 60 + done diff --git a/abs/extra/network-ups-tools/upsd.init b/abs/extra/network-ups-tools/upsd.init new file mode 100644 index 0000000..acdd115 --- /dev/null +++ b/abs/extra/network-ups-tools/upsd.init @@ -0,0 +1,43 @@ +#!/bin/bash + +. /etc/rc.conf +. /etc/rc.d/functions + +PID=`pidof -o %PPID /usr/sbin/upsd` +case "$1" in + start) + stat_busy "Starting UPSd Daemon" + /usr/bin/upsdrvctl start &> /dev/null + [ -z "$PID" ] && /usr/sbin/upsd &>/dev/null + /usr/sbin/upsmon &>/dev/null + if [ $? -gt 0 ]; then + stat_fail + else + add_daemon upsd + stat_done + fi + ;; + + stop) + stat_busy "Stopping UPSd Daemon" + /usr/sbin/upsmon -c stop &> /dev/null + /usr/sbin/upsd -c stop &> /dev/null + /usr/bin/upsdrvctl stop &> /dev/null + if [ $? -gt 0 ]; then + stat_fail + else + rm_daemon upsd + stat_done + fi + ;; + + restart) + $0 stop + sleep 3 + $0 start + ;; + + *) + cho "usage: $0 {start|stop|restart}" +esac +exit 0 |