diff options
author | Victor Lowther <victor.lowther@gmail.com> | 2010-04-11 14:59:50 -0500 |
---|---|---|
committer | Victor Lowther <victor.lowther@gmail.com> | 2010-04-11 14:59:50 -0500 |
commit | c66c6f15f1ef15741842b4e573bcd9dfb28a7528 (patch) | |
tree | 57bab7f282a12292dbd2d1aa7a8ecb38f70d50de /src | |
parent | 68104102c9d1659183fc0ad998274602802c6b41 (diff) |
Create a pm-utils local service command for distros that do not have one.
Diffstat (limited to 'src')
-rw-r--r-- | src/Makefile.am | 2 | ||||
-rw-r--r-- | src/service | 33 |
2 files changed, 34 insertions, 1 deletions
diff --git a/src/Makefile.am b/src/Makefile.am index 1ca2bda..c89c852 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -10,7 +10,7 @@ pm_pmu_SOURCES = pm-pmu.c pm_reset_swap_SOURCES = pm-reset-swap.c -pm_bin_SCRIPTS = pm-action +pm_bin_SCRIPTS = pm-action service bin_SCRIPTS = pm-is-supported diff --git a/src/service b/src/service new file mode 100644 index 0000000..4714417 --- /dev/null +++ b/src/service @@ -0,0 +1,33 @@ +#!/bin/sh + +REL="/etc/slackware-release /etc/slackware-version + /etc/arch-release" + +svc="/etc/init.d/$1" + +exists() { [ -x "$svc" ]; } +start() { "$svc" start; } +stop() { "$svc" stop; } +status() { "$svc" status; } + + +for rel in $REL; do + [ -f "$rel" ] || continue + case $rel in + *slackware*) svc="/etc/rc.d/rc.$1";; + *arch*) svc="/etc/rc.d/$1" + status() { [ -e "/var/run/daemons/$1" ] && echo "$1 running"; } + ;; + esac + break +done + +exists || { echo "$1: unrecognized service or non-LSB Linux distro"; exit 1; } + +case $2 in + start|stop|status) "$2" ;; + restart) stop; start ;; + *) echo "$2: Unrecognized service command" + exit 1 ;; +esac +
\ No newline at end of file |