From a2d8ad655ee584dde6c5bc60611a84a3bc85e908 Mon Sep 17 00:00:00 2001 From: Bas Ploeger Date: Sat, 2 Apr 2022 22:00:49 +0200 Subject: [PATCH] apcupsd: add powerfail logic at shutdown --- srcpkgs/apcupsd/files/apcupsd-powerfail.sh | 9 +++++++++ srcpkgs/apcupsd/files/apcupsd/run | 7 ++++++- srcpkgs/apcupsd/template | 3 ++- 3 files changed, 17 insertions(+), 2 deletions(-) create mode 100644 srcpkgs/apcupsd/files/apcupsd-powerfail.sh diff --git a/srcpkgs/apcupsd/files/apcupsd-powerfail.sh b/srcpkgs/apcupsd/files/apcupsd-powerfail.sh new file mode 100644 index 00000000000000..8798e855b3802a --- /dev/null +++ b/srcpkgs/apcupsd/files/apcupsd-powerfail.sh @@ -0,0 +1,9 @@ +PWRFAILDIR=$( grep -e ^PWRFAILDIR /etc/apcupsd/apcupsd.conf | cut -d ' ' -f 2 ) +PWRFAILDIR=${PWRFAILDIR:=/etc/apcupsd} + +if [ -f "${PWRFAILDIR}/powerfail" ]; then + echo + echo "APCUPSD will now power off the UPS" + echo + /etc/apcupsd/apccontrol killpower +fi diff --git a/srcpkgs/apcupsd/files/apcupsd/run b/srcpkgs/apcupsd/files/apcupsd/run index e570f226c90a8a..06b4cad37f7351 100644 --- a/srcpkgs/apcupsd/files/apcupsd/run +++ b/srcpkgs/apcupsd/files/apcupsd/run @@ -1,4 +1,9 @@ #!/bin/sh exec 2>&1 -[ -r conf] && . ./conf + +PWRFAILDIR=$( grep -e ^PWRFAILDIR /etc/apcupsd/apcupsd.conf | cut -d ' ' -f 2 ) +PWRFAILDIR=${PWRFAILDIR:=/etc/apcupsd} +rm -f "${PWRFAILDIR}/powerfail" + +[ -r conf ] && . ./conf exec apcupsd -b ${OPTS} diff --git a/srcpkgs/apcupsd/template b/srcpkgs/apcupsd/template index ba1394b2d9d073..5b7c1404589fb9 100644 --- a/srcpkgs/apcupsd/template +++ b/srcpkgs/apcupsd/template @@ -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 }