apcupsd: add powerfail logic at shutdown

This implements the behavior described in the upstream documentation:
https://web.archive.org/web/20230206010908/http://www.apcupsd.org/manual/manual.html#verifying-a-source-installation

Also patch the doc/Makefile to not generate *.man.txt files which are
only needed for the MinGW platform and depend on the deprecated `col`
command.
This commit is contained in:
Bas Ploeger 2022-04-02 22:00:49 +02:00 committed by classabbyamp
parent 0e424315c2
commit e1cd0f26b0
4 changed files with 29 additions and 2 deletions

View File

@ -0,0 +1,7 @@
PWRFAILDIR="$( awk '$1 == "PWRFAILDIR" {print $2; exit}' /etc/apcupsd/apcupsd.conf )"
PWRFAILDIR="${PWRFAILDIR:-/etc/apcupsd}"
if [ -f "${PWRFAILDIR}/powerfail" ]; then
msg "Powering off the UPS with APCUPSD..."
/etc/apcupsd/apccontrol killpower
fi

View File

@ -1,4 +1,9 @@
#!/bin/sh
exec 2>&1
[ -r conf] && . ./conf
PWRFAILDIR="$( awk '$1 == "PWRFAILDIR" {print $2; exit}' /etc/apcupsd/apcupsd.conf )"
PWRFAILDIR="${PWRFAILDIR:-/etc/apcupsd}"
rm -f "${PWRFAILDIR}/powerfail"
[ -r conf ] && . ./conf
exec apcupsd -b ${OPTS}

View File

@ -0,0 +1,14 @@
Do not generate *.man.txt files at build time. The build rule depends on the
deprecated `col` command and the files are only needed for the MinGW platform.
--- a/doc/Makefile
+++ b/doc/Makefile
@@ -3,9 +3,6 @@
SUBDIRS =
include $(topdir)/autoconf/targets.mak
-all-targets: apcupsd.man.txt apcaccess.man.txt apctest.man.txt \
- apccontrol.man.txt apcupsd.conf.man.txt
-
apcupsd.man.txt: apcupsd.8
$(call MANIFY,$<,$@)
apcaccess.man.txt: apcaccess.8

View File

@ -1,7 +1,7 @@
# Template file for 'apcupsd'
pkgname=apcupsd
version=3.14.14
revision=1
revision=2
build_style=gnu-configure
configure_args="
--disable-install-distdir
@ -37,4 +37,5 @@ post_install() {
# This binary is not needed and conflicts with a binary from an other package.
rm ${DESTDIR}/usr/bin/smtp
vsv apcupsd
vinstall ${FILESDIR}/apcupsd-powerfail.sh 644 etc/runit/shutdown.d 89-apcupsd-powerfail.sh
}