diff options
author | roam <roam@FreeBSD.org> | 2002-01-28 19:37:14 +0000 |
---|---|---|
committer | roam <roam@FreeBSD.org> | 2002-01-28 19:37:14 +0000 |
commit | dc286b8e42ce12d60aca53a0663a343d341ee6cf (patch) | |
tree | b62fb15c5938e492dfa3dd509d7b38e71b5f10b8 /sysutils/daemontools | |
parent | 21bcf030f0f6a9f7f14dd36bc86d40c0ba3017d7 (diff) | |
download | FreeBSD-ports-dc286b8e42ce12d60aca53a0663a343d341ee6cf.zip FreeBSD-ports-dc286b8e42ce12d60aca53a0663a343d341ee6cf.tar.gz |
Tweak the startup script so that it is *really* a FreeBSD startup
script; that is, add 'start|stop' argument processing and
the ability to actually stop the script.
Bump PORTREVISION to indicate a functionality change - or rather,
to indicate a change that actually makes this a FreeBSD port..
Final push by: Dan Langille <dan@langille.org> in a somewhat
unrelated e-mail exchange
Obtained from: a svscan SysV init script that I somehow managed
to lose the source and URL for :(
Diffstat (limited to 'sysutils/daemontools')
-rw-r--r-- | sysutils/daemontools/Makefile | 1 | ||||
-rw-r--r-- | sysutils/daemontools/files/svscan.sh.sample | 33 |
2 files changed, 31 insertions, 3 deletions
diff --git a/sysutils/daemontools/Makefile b/sysutils/daemontools/Makefile index 7bc4107..72d73f3 100644 --- a/sysutils/daemontools/Makefile +++ b/sysutils/daemontools/Makefile @@ -7,6 +7,7 @@ PORTNAME= daemontools PORTVERSION= 0.76 +PORTREVISION= 1 CATEGORIES= sysutils MASTER_SITES= http://cr.yp.to/daemontools/ \ ftp://cr.yp.to/daemontools/ diff --git a/sysutils/daemontools/files/svscan.sh.sample b/sysutils/daemontools/files/svscan.sh.sample index 8f23113..71fad0f 100644 --- a/sysutils/daemontools/files/svscan.sh.sample +++ b/sysutils/daemontools/files/svscan.sh.sample @@ -1,6 +1,12 @@ #!/bin/sh -# Surely advice you to enable some of the below +if ! PREFIX=$(expr $0 : "\(/.*\)/etc/rc\.d/$(basename $0)\$"); then + echo "$0: Cannot determine the PREFIX" >&2 + exit 1 +fi + +# It would really, really be a Good Thing(tm) +# for you to enable some of the below # control variables and the apropriate ulimit. # These are only examples. # Furthermore, you should think about additional @@ -31,5 +37,26 @@ #ulimit -s ${MINSEGMENT} #ulimit -u ${MAXCHILD} -exec /bin/csh -cf '/usr/local/bin/svscan /var/service |& '\ -'/usr/local/bin/readproctitle service errors: ................................................................................................................................................................................................................................................................................................................................................................................................................ &' +KILLALL=/usr/bin/killall +SVC=${PREFIX}/bin/svc +SVPROC=svscan +SVSCAN=$PREFIX/bin/svscan +READPROCTITLE=$PREFIX/bin/readproctitle +SVDIR=/var/service + +case "$1" in + start) + echo -n " svscan" + exec env PATH=$PREFIX/sbin:$PREFIX/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:$PATH /bin/csh -cf "$SVSCAN $SVDIR |& $READPROCTITLE service errors: ................................................................................................................................................................................................................................................................................................................................................................................................................ &" > /dev/null + ;; + + stop) + echo -n " svscan: " + $KILLALL $SVPROC + $SVC -dx $SVDIR/* $SVDIR/*/log + ;; + + *) + echo "Usage: $0 start | stop" + ;; +esac |