From 2050d668af9e9eb2f20aa42c2f27eb0e3c7d182d Mon Sep 17 00:00:00 2001 From: "C. McEnroe" Date: Thu, 13 Aug 2020 20:38:34 -0400 Subject: Add tentative implementation of spawn(8) --- spawn.sh | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 spawn.sh diff --git a/spawn.sh b/spawn.sh new file mode 100644 index 0000000..052a7fd --- /dev/null +++ b/spawn.sh @@ -0,0 +1,34 @@ +#!/bin/sh +set -eu + +die() { + echo "${0}:" "$@" >&2 + exit 1 +} + +: ${SPAWND_PIPE:=/var/run/spawnd.pipe} + +while getopts 'c:' opt; do + case "${opt}" in + (c) SPAWND_PIPE=$OPTARG;; + (?) exit 1;; + esac +done +shift $((OPTIND - 1)) + +if ! [ -p "${SPAWND_PIPE}" ]; then + die "${SPAWND_PIPE} is not a named pipe" +fi + +[ $# -lt 1 ] && die 'action required' +[ $# -lt 2 ] && die 'service name required' + +action=$(echo "${1}" | tr 'A-Z' 'a-z') +for valid in start stop restart status $(kill -l | tr 'A-Z' 'a-z'); do + [ "${action}" = "${valid}" ] && break +done +if [ "${action}" != "${valid}" ]; then + die "${action} is not a valid action or signal" +fi + +echo "$@" > "${SPAWND_PIPE}" -- cgit 1.4.1 /src/log/home/.inputrc?showmsg=1&follow=1'>log tree commit diff
path: root/home/.inputrc (unfollow)
Commit message (Collapse)Author
2017-09-05Pass final NULL to execlpJune McEnroe
2017-09-05Add watch.cJune McEnroe
2017-09-02Remove Scala highlightingJune McEnroe
2017-08-31Fix Linux console Tarmak 3June McEnroe
Wow oops.
2017-08-31Use Tarmak 3 on Linux consoleJune McEnroe
2017-08-25Install ddateJune McEnroe
2017-08-19Move nethack options to envJune McEnroe
2017-08-17Remove scala syntax fileJune McEnroe
2017-08-06Add wakeJune McEnroe
That payload can appear anywhere within an ethernet frame. Wake-on-LAN is funny.
2017-08-04Use $() in install.shJune McEnroe
Something gave me the impression that sh did not like this, but it's specified by POSIX.
2017-08-02Create Code Tarmak 3 layoutJune McEnroe
2017-07-31Add tupJune McEnroe
2017-07-31Use designated initializer for hnel tableJune McEnroe
I did not know this syntax worked!
2017-07-30Add juneJune McEnroe
2017-07-30Play nethack as ValkyrieJune McEnroe
2017-07-28Add toggle to hnelJune McEnroe
2017-07-28Install slJune McEnroe
2017-07-25Add up, supJune McEnroe
2017-07-24Autopickup ringsJune McEnroe
2017-07-24Name dogJune McEnroe
2017-07-23Add nethackrcJune McEnroe
2017-07-23Remove useless setuid in briJune McEnroe
Don't you think it would be better if the setuid bit only gave you permission to do it and didn't do it for you?
2017-07-23Clean up hnel a tiny bitJune McEnroe
2017-07-21Set window size in hnelJune McEnroe
2017-07-21Add hnelJune McEnroe
2017-07-19chmod 600 in dtchJune McEnroe