diff options
Diffstat (limited to 'games-fps/quake3-bin/files')
-rw-r--r-- | games-fps/quake3-bin/files/q3ded.conf.d | 5 | ||||
-rw-r--r-- | games-fps/quake3-bin/files/q3ded.rc | 34 |
2 files changed, 39 insertions, 0 deletions
diff --git a/games-fps/quake3-bin/files/q3ded.conf.d b/games-fps/quake3-bin/files/q3ded.conf.d new file mode 100644 index 000000000000..5ecb89b6c445 --- /dev/null +++ b/games-fps/quake3-bin/files/q3ded.conf.d @@ -0,0 +1,5 @@ +# Copyright 1999-2004 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +q3_OPTS="+set com_hunkmegs 24 +set dedicated 1 +set net_port 27960 +map q3tourney2" + diff --git a/games-fps/quake3-bin/files/q3ded.rc b/games-fps/quake3-bin/files/q3ded.rc new file mode 100644 index 000000000000..1faaf0384e3b --- /dev/null +++ b/games-fps/quake3-bin/files/q3ded.rc @@ -0,0 +1,34 @@ +#!/sbin/openrc-run +# Copyright 1999-2004 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +depend() { + need net +} + +start() { + ebegin "Starting Quake3 dedicated server" + screen -A -m -d -S q3ded-bin su - games -c "q3ded-bin ${q3_OPTS}" + eend $? +} + +stop() { + ebegin "Stopping Quake3 dedicated server" + local pid=`screen -list | grep q3ded-bin | awk -F . '{print $1}' | sed -e s/.//` + if [[ -z "${pid}" ]] ; then + eend 1 "Lost screen session" + else + pid=`pstree -p ${pid} | sed -e 's:^.*q3ded-bin::'` + pid=${pid:1:${#pid}-2} + if [[ -z "${pid}" ]] ; then + eend 1 "Lost q3ded-bin session" + else + kill ${pid} + eend $? "Could not kill q3ded-bin" + fi + fi +} + +status() { + screen -list | grep q3ded-bin +} |