commit: 9812ce5b8dc22fe36cc7bf75cf6e62db204ece3d Author: William Hubbs <w.d.hubbs <AT> gmail <DOT> com> AuthorDate: Mon Jul 10 23:23:01 2017 +0000 Commit: William Hubbs <williamh <AT> gentoo <DOT> org> CommitDate: Mon Jul 10 23:36:24 2017 +0000 URL: https://gitweb.gentoo.org/proj/openrc.git/commit/?id=9812ce5b
fix halt wrapper so it is sysvinit compatible This makes the halt wrapper sysvinit compatible. It ignores several command line switches which are not currently implemented; however, those can be implemented if we need to do so. This fixes https://github.com/openrc/openrc/issues/146. scripts/halt.in | 23 ++++++++++++++++++++++- 1 file changed, 22 insertions(+), 1 deletion(-) diff --git a/scripts/halt.in b/scripts/halt.in index 68b13be1..257cc2a7 100644 --- a/scripts/halt.in +++ b/scripts/halt.in @@ -1,3 +1,24 @@ #!@SHELL@ -exec @SBINDIR@/openrc-shutdown --halt "$@" +option_arg= +poweroff_arg= +while getopts :nwdfiph opt; do + case "$opt" in + n) ;; + w) poweroff_arg=--write-only ;; + d) option_arg=--no-write ;; + f) ;; + i) ;; + p) poweroff_arg=--poweroff ;; + [?]) printf "%s\n" "${0##*/}: invalid command line option" >&2 + exit 1 + ;; + esac +done +shift $((OPTIND-1)) + +if [ -z "${poweroff_arg}" ]; then + poweroff_arg=--poweroff +fi + +exec @SBINDIR@/openrc-shutdown ${option_arg} ${poweroff_arg} "$@"