diff --git a/sysutils/upsd/Makefile b/sysutils/upsd/Makefile new file mode 100644 index 00000000000..63a95fa08ec --- /dev/null +++ b/sysutils/upsd/Makefile @@ -0,0 +1,30 @@ +# New ports collection makefile for: upsd +# Version required: 2.0.1.6 +# Date created: 22 Nov 1999 +# Whom: Kevin Lo +# +# $OpenBSD: Makefile,v 1.1.1.1 1999/11/22 04:08:04 kevlo Exp $ +# + +DISTNAME= upsd-2.0.1.6 +PKGNAME= upsd-2.0 +CATEGORIES= sysutils +MASTER_SITES= ftp://www.ww.net/pub/wildwind/upsd/ \ + http://www.cre8tivegroup.com/ \ + ftp://ftp.sw.ru/pub/unix/upsd/ + +MAINTAINER= kevlo@openbsd.org + +WRKSRC= ${WRKDIR}/upsd-2.0 + +pre-build: + @${MV} ${WRKSRC}/config.h ${WRKSRC}/conf.h.orig + @${SED} -e "s!@prefix@!${PREFIX}!g" ${WRKSRC}/conf.h.orig > ${WRKSRC}/conf.h + +post-install: + if [ ! -f ${PREFIX}/etc/upsd.conf ] ; then \ + ${INSTALL} -c -o ${BINOWN} -g ${BINGRP} -m 644 \ + ${FILESDIR}/upsd.conf ${PREFIX}/etc/upsd.conf; \ + fi + +.include diff --git a/sysutils/upsd/files/md5 b/sysutils/upsd/files/md5 new file mode 100644 index 00000000000..5c93a2b6fc5 --- /dev/null +++ b/sysutils/upsd/files/md5 @@ -0,0 +1,3 @@ +MD5 (upsd-2.0.1.6.tar.gz) = 98e46c6f86a87cb441931e1e4bf355c5 +RMD160 (upsd-2.0.1.6.tar.gz) = 4671d842282408a64757298347ace3ee934cd921 +SHA1 (upsd-2.0.1.6.tar.gz) = 3806fdbc9e7e2f9d05a4715782aafb167da3faba diff --git a/sysutils/upsd/files/upsd.conf b/sysutils/upsd/files/upsd.conf new file mode 100644 index 00000000000..39183650f78 --- /dev/null +++ b/sysutils/upsd/files/upsd.conf @@ -0,0 +1,100 @@ +# $OpenBSD: upsd.conf,v 1.1.1.1 1999/11/22 04:08:05 kevlo Exp $ +# +# UPS Daemon +# The Wild Wind Communications, 1995, 1996 +# +# See file LICENSE for the distribution terms of this software. +# + +ups "smart-ups" (230) proto "apc-smart" { + device "/dev/cua00" + speed 2400 + read-timeout 2 + write-block-size 1 + write-block-delay 50 + queue-size 64 +} + +every 5 { # check events every 5 seconds + nop +} + +on "initialize" != "SM" { + poll "initialize" + after 60 every 60 { + log emerg "Cannot put the UPS into smart mode!" + } +} + +every 600 { + tune "high-transfer-point" 264 + tune "low-transfer-point" 196 + tune "line-alarm" "0" + tune "line-sensitivity" "L" + tune "low-batteries-duration" 2 + tune "nominal-voltage" 220 + tune "shutdown-delay" 20 + tune "wakeup-batteries-capacity" 25 + tune "wakeup-delay" 0 +# tune "batteries-replaced" "01/01/77" +# tune "label" "WildWind" +} + +every 300 { # poll the UPS + poll "last-test" +# poll "light-test" + poll "line-frequency" + poll "line-maxvac" + poll "line-minvac" + poll "line-voltage" + poll "load" + poll "recharge" + poll "temperature" + poll "vdc" + poll "voltage" + + log notice "last test: %last-test%, light test: %light-test%" + log notice "frequency: %line-frequency%, maxvac: %line-maxvac%, minvac: %line-minvac%, voltage: %line-voltage%" + log notice "load: %load%, recharge: %recharge%, temp: %temperature%, vdc: %vdc%, output voltage: %voltage%" + + on "load" > 95 { + log alert "UPS load is too high: %load%" + } +} + +on "line-fail" { + log emerg "*** ALERT! Source power line failed, save your work! ***" +} + +on "line-fail" after 30 { + log emerg "*** ALERT! System shutdown in 30 seconds, LOGOUT NOW! ***" +} + +on "line-restore" { + log emerg "Source power line restored, you may continue your work." +} + +on "line-fail" after 60 { + log emerg "*** ALERT! THE SYSTEM IS SHUTTING DOWN! ***" + + poll "shutdown" + poll "shutdown" + poll "power-test" + poll "power-test" + poll "shutdown" + poll "shutdown" + + sleep 2 + + exec "/sbin/halt &" + + poll "power-test" + poll "shutdown" + poll "power-test" + poll "shutdown" + poll "power-test" + poll "shutdown" + poll "power-test" + + sleep 1000 # let us wait peacefully +} diff --git a/sysutils/upsd/patches/patch-aa b/sysutils/upsd/patches/patch-aa new file mode 100644 index 00000000000..cefc70eb501 --- /dev/null +++ b/sysutils/upsd/patches/patch-aa @@ -0,0 +1,12 @@ +--- Makefile.orig Mon Feb 23 17:32:56 1998 ++++ Makefile Mon Feb 23 17:33:50 1998 +@@ -8,8 +8,7 @@ + + PROG= upsd + +-BINDIR= /usr/local/sbin +-MANDIR= /usr/local/share/man ++BINDIR= ${PREFIX}/sbin + NOMAN= noway + + #DEBUG= -g -DDEBUG diff --git a/sysutils/upsd/patches/patch-ab b/sysutils/upsd/patches/patch-ab new file mode 100644 index 00000000000..c86395b570f --- /dev/null +++ b/sysutils/upsd/patches/patch-ab @@ -0,0 +1,11 @@ +--- config.h.orig Mon Feb 23 17:50:34 1998 ++++ config.h Mon Feb 23 17:50:49 1998 +@@ -8,7 +8,7 @@ + */ + + #ifndef DEBUG +-#define _PATH_UPSD_CONF "/etc/upsd.conf" ++#define _PATH_UPSD_CONF "@prefix@/etc/upsd.conf" + #define _PATH_UPSD_PID "/var/run/upsd.pid" + #else + #define _PATH_UPSD_CONF "sample/upsd.conf" diff --git a/sysutils/upsd/patches/patch-ac b/sysutils/upsd/patches/patch-ac new file mode 100644 index 00000000000..1b1899a6a95 --- /dev/null +++ b/sysutils/upsd/patches/patch-ac @@ -0,0 +1,9 @@ +--- upsd.h.orig Fri Jul 3 13:52:01 1998 ++++ upsd.h Fri Jul 3 13:52:21 1998 +@@ -206,5 +206,5 @@ + + #define TERMINATE kill(getpid(), SIGTERM) + +-#include "config.h" ++#include "conf.h" + #include "proto.h" diff --git a/sysutils/upsd/patches/patch-ad b/sysutils/upsd/patches/patch-ad new file mode 100644 index 00000000000..d4677deeb4d --- /dev/null +++ b/sysutils/upsd/patches/patch-ad @@ -0,0 +1,32 @@ +--- apc.c.orig Fri Aug 2 23:44:22 1996 ++++ apc.c Tue Dec 8 16:59:03 1998 +@@ -164,12 +164,12 @@ + } + if((r->type & T_TYPE) == T_BINARY) { + if(!bcmp(v1.val.binary, v0.val.binary, r->size)) { +- syslog(LOG_WARNING, "apc_tune: toggle wraparound"); ++ syslog(LOG_WARNING, "apc_tune: toggle wraparound register %s", r->name); + return 1; + } + } else { + if(v1.val.number == v0.val.number) { +- syslog(LOG_WARNING, "apc_tune: toggle wraparound"); ++ syslog(LOG_WARNING, "apc_tune: toggle wraparound register %s", r->name); + return 1; + } + } +--- apc_static.c.orig Fri Aug 2 23:44:23 1996 ++++ apc_static.c Tue Dec 8 16:56:57 1998 +@@ -91,9 +91,12 @@ + {SMART_LOWBATDUR, {number: 7}}, + {SMART_LOWBATDUR, {number: 10}}, + ++ /* several models accept different values here */ + {SMART_WAKEUPBCAP, {number: 0}}, + {SMART_WAKEUPBCAP, {number: 10}}, ++ {SMART_WAKEUPBCAP, {number: 15}}, + {SMART_WAKEUPBCAP, {number: 25}}, ++ {SMART_WAKEUPBCAP, {number: 50}}, + {SMART_WAKEUPBCAP, {number: 90}}, + {SMART_WAKEUPBCAP, {number: 100}}, + diff --git a/sysutils/upsd/pkg/COMMENT b/sysutils/upsd/pkg/COMMENT new file mode 100644 index 00000000000..441e71ef2cc --- /dev/null +++ b/sysutils/upsd/pkg/COMMENT @@ -0,0 +1 @@ +APC Smart UPS Monitoring Daemon diff --git a/sysutils/upsd/pkg/DESCR b/sysutils/upsd/pkg/DESCR new file mode 100644 index 00000000000..bbbc0361575 --- /dev/null +++ b/sysutils/upsd/pkg/DESCR @@ -0,0 +1,3 @@ +upsd is a daemon with flexible configuration which lets you to +shutdown your system properly when source power line fails and +measure its frequency, voltage etc diff --git a/sysutils/upsd/pkg/PLIST b/sysutils/upsd/pkg/PLIST new file mode 100644 index 00000000000..61a9fdb79e4 --- /dev/null +++ b/sysutils/upsd/pkg/PLIST @@ -0,0 +1,2 @@ +etc/upsd.conf +sbin/upsd