mirror of
https://github.com/openwrt/packages.git
synced 2025-01-31 03:41:44 +00:00
f25f49a8b7
Even it's only cosmetic and should not affect the function of regular system, fix the name of the IPKG_INSTROOT variable. Typo was added long ago with 8400c9a6ec799. Signed-off-by: Sven Roederer <devel-sven@geroedel.de>
52 lines
1.0 KiB
Bash
Executable File
52 lines
1.0 KiB
Bash
Executable File
#!/bin/sh
|
|
#
|
|
# This is free software, licensed under the GNU General Public License v2.
|
|
# See /LICENSE for more information.
|
|
#
|
|
|
|
stop_instance() {
|
|
/etc/init.d/nut-server stop "$1"
|
|
}
|
|
|
|
shutdown_instance() {
|
|
local cfg="$1"
|
|
config_get driver "$cfg" driver "usbhid-ups"
|
|
|
|
# Only FSD if killpower was indicated
|
|
if [ -f /var/run/killpower ]; then
|
|
/lib/nut/"${driver}" -a "$cfg" -k
|
|
fi
|
|
}
|
|
|
|
do_fsd() {
|
|
if [ -f /var/run/killpower ]; then
|
|
# Only make FS readonly if we are doing an FSD
|
|
mount -o remount,ro /overlay /overlay
|
|
mount -o remount,ro / /
|
|
|
|
. ${IPKG_INSTROOT}/lib/functions.sh
|
|
|
|
if [ -f /etc/config/nut_server ]; then
|
|
config_load nut_server
|
|
|
|
# Can't FSD unless drivers are stopped
|
|
config_foreach stop_instance driver
|
|
# Driver will wait 'offdelay' before shutting down
|
|
config_foreach shutdown_instance driver
|
|
# So this can happen
|
|
rm -f /var/run/killpower
|
|
poweroff
|
|
# And just in case
|
|
sleep 120
|
|
# Uh-oh failed to poweroff UPS
|
|
reboot -f
|
|
else
|
|
poweroff
|
|
fi
|
|
else
|
|
poweroff
|
|
fi
|
|
}
|
|
|
|
do_fsd
|