Giter Club home page Giter Club logo

Comments (1)

begleysm avatar begleysm commented on August 22, 2024

I just recently got this working under Debian 9.

You need to install the daemonize package and create an init.d script with the following body.

NOTE: This script assumes the following:

  1. you have a user named "quake" who will run your QuakeJS server
  2. you have a working version of QuakeJS installed at /home/quake/quakejs
#!/bin/sh
#
### BEGIN INIT INFO
# Provides:		quakejs
# Required-Start:	$network
# Required-Stop:
# Default-Start:	2 3 4 5
# Default-Stop:
# Short-Description:	QuakeJS Server Daemon
### END INIT INFO

#
# /etc/init.d/quakejs
# Subsystem file for "quakejs" server
#
# chkconfig: 2345 95 05
# description: QuakeJS server daemon
#
# processname: quakejs
# pidfile: /var/run/quakejs.pid

RETVAL=0
prog="quakejs"

start() {
	echo "Starting $prog:"
	daemonize -v -p /var/run/$prog.pid -c /home/quake/quakejs -u quake /usr/bin/node build/ioq3ded.js +set fs_game baseq3 set dedicated 1 +exec server.cfg
	RETVAL=$?
	[ "$RETVAL" = 0 ] && touch /var/lock/subsys/$prog
	echo
}

stop() {
	echo "Stopping $prog:"
	killproc $prog -TERM
	RETVAL=$?
	[ "$RETVAL" = 0 ] && rm -f /var/lock/subsys/$prog
	echo
}

case "$1" in
	start)
		start
		;;
	stop)
		stop
		;;
	restart)
		stop
		sleep 3
		start
		;;
	condrestart)
		if [ -f /var/lock/subsys/$prog ] ; then
			stop
			# avoid race
			sleep 3
			start
		fi
		;;
	status)
		status $prog
		RETVAL=$?
		;;
	*)
		echo $"Usage: $0 {start|stop|restart|condrestart|status}"
		RETVAL=1
esac
exit $RETVAL

More detailed step-by-step instructions can be found here:
https://steamforge.net/wiki/index.php/How_to_setup_a_local_QuakeJS_server_under_Debian_9#Finalize_the_Setup

from quakejs.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.