SOURCES: q3ded-gpl.init (NEW) - copied from q3ded.init but with ch...

paszczus paszczus at pld-linux.org
Sat Oct 15 11:29:14 CEST 2005


Author: paszczus                     Date: Sat Oct 15 09:29:14 2005 GMT
Module: SOURCES                       Tag: HEAD
---- Log message:
- copied from q3ded.init but with changed home directory

---- Files affected:
SOURCES:
   q3ded-gpl.init (NONE -> 1.1)  (NEW)

---- Diffs:

================================================================
Index: SOURCES/q3ded-gpl.init
diff -u /dev/null SOURCES/q3ded-gpl.init:1.1
--- /dev/null	Sat Oct 15 11:29:14 2005
+++ SOURCES/q3ded-gpl.init	Sat Oct 15 11:29:09 2005
@@ -0,0 +1,88 @@
+#!/bin/sh
+#
+# q3ded		This is the init script for starting
+#		up the Quake3 dedicated server
+#
+# chkconfig:	345 85 25
+# description:	Starts and stops the Quake3 dedicated server.
+#
+# processname:	q3ded
+
+. /etc/rc.d/init.d/functions
+. /etc/sysconfig/network
+
+if [ -f /etc/sysconfig/q3ded ]; then
+	. /etc/sysconfig/q3ded
+else
+	nls "Error: %s not found" /etc/sysconfig/q3ded
+	nls " Quake3 dedicated server can't be run."
+	exit 1
+fi
+
+if [ ! "$Q3_OPTS" ]; then
+	nls "Error: Q3_OPTS not found or is empty"
+	nls " Quake3 dedicated server can't be run."
+	exit 1
+fi
+
+if is_yes "${NETWORKING}"; then
+	if [ ! -f /var/lock/subsys/network -a "$1" != stop -a "$1" != status -a "$1" != init ]; then
+		msg_network_down "Quake3 dedicated server"
+		exit 1
+	fi
+else
+	exit 0
+fi
+
+action="$1"
+RETVAL=0
+case "$action" in
+  start)
+	if [ ! -f /var/lock/subsys/q3ded ]; then
+		msg_starting "Quake3 dedicated server"
+		if [ ! -x /usr/share/quake3-gpl/q3ded ]; then
+			fail
+			exit 1
+		fi
+		screen -A -m -d -S q3ded su - quake3 -c "cd /usr/share/quake3-gpl/ && ./q3ded ${Q3_OPTS}"
+		touch /var/lock/subsys/q3ded && ok
+	else
+		msg_already_running "Quake3 dedicated server"
+	fi
+	;;
+  stop)
+	if [ -f /var/lock/subsys/q3ded ]; then
+		msg_stopping "Quake3 dedicated server"
+		rm -f /var/lock/subsys/q3ded >/dev/null 2>&1
+		SCREEN_PID=`screen -ls | grep q3ded | awk -F . '{print $1}' | sed -e s/.//`
+		if [ ! -z "$SCREEN_PID" ]; then
+			Q3_PID=`pstree -p ${SCREEN_PID} |\
+				sed -e 's:^.*q3ded:: ; s:(:: ; s:)::'`
+			if [ ! -z "$Q3_PID" ]; then
+				kill $Q3_PID
+				RETVAL=$?
+				[ $RETVAL -eq 0 ] && ok
+			else
+				fail
+			fi
+		else
+			fail
+		fi
+	fi
+	exit 0
+	;;
+  status)
+	status q3ded
+	screen -ls | grep q3ded
+	exit $?
+	;;
+  restart|force-reload)
+	$0 stop
+	$0 start
+	;;
+  *)
+	msg_usage "$0 {start|stop|restart|force-reload|status}"
+	exit 3
+esac
+
+exit $RETVAL
================================================================



More information about the pld-cvs-commit mailing list