[arch-projects] any interest?: initcpio cleanup_hook function
Matthew Monaco
dgbaley27 at 0x01b.net
Thu Mar 15 21:12:22 EDT 2012
This has *not* been tested. I just wanted to see if there'd be any interest.
"cleanup_hook" is run in the reverse order of run_hooks, if available.
This would be useful to the dropbear hook in AUR. I know systemd is killing off
processes automatically, but even if initcpio/initscripts started doing this,
dropbear still sets up a network interface. Unlike the net hook, dropbear's
setup is meant to be undone.
diff --git i/init w/init
index 1f5f865..e9a6924 100644
--- i/init
+++ w/init
@@ -43,33 +43,48 @@ fi
if [ -e "/hooks" ]; then
for h in ${HOOKS}; do
TST=""
eval "TST=\$hook_${h}"
if [ "${TST}" != "disabled" ]; then
run_hook () { msg "${h}: no run function defined"; }
if [ -e "/hooks/${h}" ]; then
. /hooks/${h}
msg ":: Running Hook [${h}]"
run_hook
fi
fi
done
+
+ for h in $(echo -n "${HOOKS} " | tac -s' '); do
+ TST=""
+ eval "TST=\$hook_${h}"
+ if [ "${TST}" != "disabled" ]; then
+ unset cleanup_hook
+ if [ -e "/hooks/${h}" ]; then
+ . /hooks/${h}
+ if [ "$(type -t foo 2>/dev/null)" == function ]; then
+ msg ":: Running Hook Cleanup [${h}]"
+ cleanup_hook
+ fi
+ fi
+ fi
+ done
fi
# honor the old behavior of break=y as a synonym for break=premount
More information about the arch-projects
mailing list