#!/bin/sh argv0=$(basename "${0}") err() { if [ "${1}" != "-x" ]; then printf "%s: " "${argv0}" else shift fi for line in "${@}"; do echo "${line}" >&2 done exit 1 } invalid_use() { [ "${1}" = "-h" ] && err -x "Try '${argv0} -h' for help." err "Invalid usage" "Try '${argv0} -h' for help." } check_program() { command -v "${1}" > /dev/null 2>&1 && return 0 [ -n "${2}" ] && err "${2}" err "${1} must be installed" } run() { relstat=0 if [ "${1}" = "--reload-status" ];then relstat=1 shift fi if ${1}; then [ -n "${2}" ] && echo "${2}" else [ -n "${3}" ] && err "${3}" exit 1 fi if [ "${relstat}" -eq 1 ]; then slreload || echo "Warning: Failed to reload slstatus" >&2 fi exit 0 }