This is an automated email from the git hooks/post-receive script. smcv pushed a commit to branch quake in repository game-data-packager.
commit 3ae15ecd412733effd2f6f29577c62330f0aab69 Author: Simon McVittie <s...@debian.org> Date: Mon Jan 26 12:03:03 2015 +0000 Document the new server setup --- debian/q3/server.cfg | 12 ++++- debian/quake-server.NEWS | 20 +++++++ debian/quake-server.README.Debian | 63 ++++++++++++---------- debian/quake2-server.NEWS | 17 ++++++ debian/quake2-server.README.Debian | 85 ++++++++++++++++++++---------- debian/quake3-server.NEWS | 21 ++++++++ debian/quake3-server.README.Debian | 105 +++++++++++++++++++++++++------------ 7 files changed, 232 insertions(+), 91 deletions(-) diff --git a/debian/q3/server.cfg b/debian/q3/server.cfg index 44cf164..8b7fd9b 100644 --- a/debian/q3/server.cfg +++ b/debian/q3/server.cfg @@ -3,8 +3,13 @@ // The Quake III Arena data includes some more elaborate examples: // // apt-get install unzip -// unzip /usr/share/games/quake3/baseq3/pak0.pk3 \ +// unzip /usr/lib/quake3/base/baseq3/pak0.pk3 \ // ctf.config ffa.config teamplay.config tourney.config gamecycle.config +// +// and if you have Quake III: Team Arena (see README.Debian), +// +// unzip /usr/lib/quake3/ta/missionpack/pak0.pk3 \ +// small_maps.cfg large_maps.cfg terrain_maps.cfg // set dedicated to 2 (default is 1) to advertise your server in the global // server list @@ -15,7 +20,7 @@ // You can use the exec command to run one of the example configurations // mentioned above or your own configuration file placed in -// /var/games/quake3-server/.q3a/baseq3, or comment out this line and +// /var/games/quake3-server/INSTANCE.q3a/baseq3, or comment out this line and // add your own configuration below exec ffa.config @@ -24,6 +29,9 @@ exec ffa.config // 1 = tournament 1-on-1 // 3 = team deathmatch // 4 = CTF +// 5 = one-flag CTF (Team Arena only) +// 6 = Obelisk (Team Arena only) +// 7 = Harvester (Team Arena only) //g_gametype 0 // Start this map first diff --git a/debian/quake-server.NEWS b/debian/quake-server.NEWS new file mode 100644 index 0000000..db91d36 --- /dev/null +++ b/debian/quake-server.NEWS @@ -0,0 +1,20 @@ +quake-server (10) experimental; urgency=medium + + quake-server configuration has changed significantly in this version. + + The DAEMON_OPTS variable in /etc/default/quake-server no longer + contains a configurable "+exec" command. /etc/quake-server/server.cfg + will always be executed in addition to whatever is specified in + DAEMON_OPTS, and the default DAEMON_OPTS is now empty. + + The START_DAEMON variable in /etc/default/quake-server is no longer + supported. If quake-server was previously disabled via START_DAEMON, + upgrading to this version will run "update-rc.d quake-server disable" + to disable it in the correct way. + + systemd users can now enable additional instances of the server, + quake-server@INSTANCE.service, which use /etc/default/quake-server@INSTANCE + and /etc/quake-server/INSTANCE.cfg instead. + See /usr/share/doc/quake-server/README.Debian for details. + + -- Simon McVittie <s...@debian.org> Fri, 23 Jan 2015 09:42:55 +0000 diff --git a/debian/quake-server.README.Debian b/debian/quake-server.README.Debian index 7ed4760..1629daf 100644 --- a/debian/quake-server.README.Debian +++ b/debian/quake-server.README.Debian @@ -15,8 +15,8 @@ including the sizes and checksums of the required files. The shareware episode of Quake is freely downloadable and can also be packaged using game-data-packager. -Running the server via the init script --------------------------------------- +Running one server instance +--------------------------- By default, quake-server adds a user under which to run the dedicated server (quake-server) and sets it up to be run by an init script in the conventional @@ -36,6 +36,9 @@ For compatibility with older versions of the quake-server package, debian_server.cfg in the engine's search path is also a symlink to etc/quake-server/server.cfg. +To set command-line options, such as the network port or the mission pack +to play, set DAEMON_OPTS in /etc/default/quake-server. + The server can be managed in the usual way, e.g. via service(8) and update-rc.d(8) commands like @@ -46,28 +49,34 @@ and update-rc.d(8) commands like which should work for all of Debian's supported init systems. -Running the server with cron and screen ---------------------------------------- - -One alternative way to run the server is to run it in a screen(1) session -from a cron @reboot action. This can be used to run multiple instances -of the server; you'll need to set a different port number on each server after -the first, and it's safest to give each server a unique home directory so they -don't overwrite each other's configuration files. - -To do this, you could put something like this in the quake-server user's -crontab (don't break the long lines!): - - @reboot screen -d -m -S ffa env HOME=/var/games/quake-server/ffa /usr/games/quake-server +exec ffa.config - @reboot screen -d -m -S ctf env HOME=/var/games/quake-server/ctf /usr/games/quake-server -port 54321 +exec ctf.config - -or in /etc/crontab or a file in /etc/cron.d: - - @reboot quake-server screen -d -m -S ffa env HOME=/var/games/quake-server/ffa /usr/games/quake-server +exec ffa.config - @reboot quake-server screen -d -m -S ctf env HOME=/var/games/quake-server/ctf /usr/games/quake-server -port 54321 +exec ctf.config - -If you do that, you can access the servers' consoles by attaching a screen -session to them: - - sudo -u quake-server screen -r ffa - sudo -u quake-server screen -r ctf +Running multiple server instances with systemd +---------------------------------------------- + +Under systemd, quake-server supports additional instances of the server, +so you can run servers with different game modes, mods or mission packs. + +Each instance quake-server@INSTANCE.service has configuration and state in +/var/games/quake-server/INSTANCE.home/.quakespasm (or similar), and will +execute /etc/quake-server/INSTANCE.cfg on startup. + +To set command-line options, such as the network port or the mission pack +to play, you can create /etc/default/quake-server@INSTANCE +or a systemd "drop-in" file, and set DAEMON_OPTS there. Setting a +unique port for each server is required. + +The instance name "debian_server" cannot be used without disabling and +stopping quake2-server.service, since it shares its configuration with that +service. + +For instance, these shell commands (as root) would set up a Mission Pack 1 +server on port 26010: + + cat > /etc/default/quake-server@hipnotic + DAEMON_OPTS="-port 26010 -hipnotic" + EOF + cat > /etc/quake-server/hipnotic.cfg <<EOF + map hipdm1 + EOF + systemctl daemon-reload + systemctl enable quake-server@hipnotic.service + systemctl start quake-server@hipnotic.service diff --git a/debian/quake2-server.NEWS b/debian/quake2-server.NEWS new file mode 100644 index 0000000..0c4147a --- /dev/null +++ b/debian/quake2-server.NEWS @@ -0,0 +1,17 @@ +quake2-server (10) experimental; urgency=medium + + quake2-server configuration has changed significantly in this version. + + The DAEMON_OPTS variable in /etc/default/quake2-server no longer + contains a configurable "+exec" command. Either + /etc/quake2-server/debian_server.cfg or + /etc/quake2-server/demo/debian_server.cfg + will always be executed in addition to whatever is specified in + DAEMON_OPTS, and the default DAEMON_OPTS is now empty. + + systemd users can now enable additional instances of the server, + quake2-server@INSTANCE.service, which use /etc/default/quake2-server@INSTANCE + and /etc/quake2-server/INSTANCE.cfg instead. + See /usr/share/doc/quake2-server/README.Debian for details. + + -- Simon McVittie <s...@debian.org> Fri, 23 Jan 2015 09:42:55 +0000 diff --git a/debian/quake2-server.README.Debian b/debian/quake2-server.README.Debian index 832a35c..76b3dc6 100644 --- a/debian/quake2-server.README.Debian +++ b/debian/quake2-server.README.Debian @@ -16,8 +16,8 @@ including the sizes and checksums of the required files. Demo files are freely downloadable and can also be packaged using game-data-packager. -Running the server via the init script --------------------------------------- +Running one server instance +--------------------------- By default, quake2-server adds a user under which to run the dedicated server (quake2-server) and sets it up to be run by an init script in the conventional @@ -37,7 +37,9 @@ to either /etc/quake2-server/debian_server.cfg or are using the demo data or the full game. By default, the init script will execute debian_server.cfg. -For compatibility with older versions of the quake-server package, +To set options that can only be configured via the command-line, +such as game and port, set the variable DAEMON_OPTS +in /etc/default/quake2-server. The server can be managed in the usual way, e.g. via service(8) and update-rc.d(8) commands like @@ -49,28 +51,55 @@ and update-rc.d(8) commands like which should work for all of Debian's supported init systems. -Running the server with cron and screen ---------------------------------------- - -One alternative way to run the server is to run it in a screen(1) session -from a cron @reboot action. This can be used to run multiple instances -of the server; you'll need to set a different port number on each server after -the first, and it's safest to give each server a unique home directory so they -don't overwrite each other's configuration files. - -To do this, you could put something like this in the quake2-server user's -crontab (don't break the long lines!): - - @reboot screen -d -m -S ffa env HOME=/var/games/quake2-server/ffa /usr/games/quake2-server +exec ffa.config - @reboot screen -d -m -S ctf env HOME=/var/games/quake2-server/ctf /usr/games/quake2-server +set port 54321 +exec ctf.config - -or in /etc/crontab or a file in /etc/cron.d: - - @reboot quake2-server screen -d -m -S ffa env HOME=/var/games/quake2-server/ffa /usr/games/quake2-server +exec ffa.config - @reboot quake2-server screen -d -m -S ctf env HOME=/var/games/quake2-server/ctf /usr/games/quake2-server +set port 54321 +exec ctf.config - -If you do that, you can access the servers' consoles by attaching a screen -session to them: - - sudo -u quake2-server screen -r ffa - sudo -u quake2-server screen -r ctf +Running multiple server instances with systemd +---------------------------------------------- + +Under systemd, quake2-server supports additional instances of the server, +so you can run a deathmatch server and a cooperative server, +or servers with different mods or mission packs, such as a Quake II server +and a Capture the Flag server. + +Each instance quake2-server@INSTANCE.service has configuration and state in +/var/games/quake2-server/INSTANCE.home/.yq2 (or similar), and will execute +/etc/quake2-server/INSTANCE.cfg on startup. + +To set a parameter that can only be given on the command line, such as +game or port, you can create /etc/default/quake2-server@INSTANCE +or a systemd "drop-in" file, and set DAEMON_OPTS there. Setting a +unique port for each server is recommended: if you do not, each +server will try ports above its configured port until it finds one +that is not in use, so the mapping between servers and ports will be arbitrary. + +The instance name "debian_server" cannot be used without disabling and +stopping quake2-server.service, since it shares its configuration with that +service. + +For instance, these shell commands (as root) would set up a cooperative +server on port 27920 and a Capture the Flag server on port 27930: + + cat > /etc/default/quake2-server@coop + DAEMON_OPTS="+set port 27920" + EOF + cat > /etc/quake2-server/coop.cfg <<EOF + set hostname "My Co-op Server" + set coop 1 + set deathmatch 0 + set skill 2 + // no friendly fire if you use the same model as other players + set dmflags 5520 + map base1 + EOF + systemctl daemon-reload + systemctl enable quake2-server@coop.service + systemctl start quake2-server@coop.service + + cat > /etc/default/quake2-server@ctf + DAEMON_OPTS="+set port 27930 +set game ctf" + EOF + cat > /etc/quake2-server/ctf.cfg <<EOF + set hostname "My CTF Server" + exec server.cfg + EOF + systemctl daemon-reload + systemctl enable quake2-server@ctf.service + systemctl start quake2-server@ctf.service diff --git a/debian/quake3-server.NEWS b/debian/quake3-server.NEWS index c664976..140202e 100644 --- a/debian/quake3-server.NEWS +++ b/debian/quake3-server.NEWS @@ -1,3 +1,24 @@ +quake3-server (10) experimental; urgency=medium + + quake3-server configuration has changed significantly in this version. + + The DAEMON_OPTS variable in /etc/default/quake3-server no longer + contains a configurable "+exec" command. /etc/quake3-server/server.cfg + will always be executed in addition to whatever is specified in + DAEMON_OPTS, and the default DAEMON_OPTS is now empty. + + The START_DAEMON variable in /etc/default/quake3-server is no longer + supported. If quake3-server was previously disabled via START_DAEMON, + upgrading to this version will run "update-rc.d quake3-server disable" + to disable it in the correct way. + + systemd users can now enable additional instances of the server, + quake3-server@INSTANCE.service, which use /etc/default/quake3-server@INSTANCE + and /etc/quake3-server/INSTANCE.cfg instead. + See /usr/share/doc/quake3-server/README.Debian for details. + + -- Simon McVittie <s...@debian.org> Fri, 23 Jan 2015 09:42:55 +0000 + quake3-server (1.4) unstable; urgency=low In earlier Debian packaging for Quake III Arena, the quake3-server diff --git a/debian/quake3-server.README.Debian b/debian/quake3-server.README.Debian index 9e160bf..1b27b72 100644 --- a/debian/quake3-server.README.Debian +++ b/debian/quake3-server.README.Debian @@ -1,25 +1,30 @@ Quake III Arena dedicated server for Debian =========================================== -Running the server via the init script --------------------------------------- +Running one server instance +--------------------------- -The quake3-server init script runs a dedicated server as the user -"Debian-quake3". This is a simple setup suitable for running one server -on a machine; by default it will cycle through the standard +The quake3-server init script and systemd unit run a dedicated server as +the user "Debian-quake3". This is a simple setup suitable for running one +server on a machine; by default it will cycle through the standard Quake III Arena deathmatch maps. -The Debian-quake3 user's home directory is /var/games/quake3-server, so you -can find Quake III files in the /var/games/quake3-server/.q3a directory. +The Debian-quake3 user's home directory is /var/games/quake3-server, +and the equivalent of ~/.q3a for the default server is +/var/games/quake3-server/server.q3a. The /etc/quake3-server directory is symlinked into the game engine's search path as etc/quake3-server, so you can place files there and execute them with commands like "exec etc/quake3-server/ctf.cfg". By default, the init script will use etc/quake3-server/server.cfg. -For compatibility with older versions of the quake-server package, +(For compatibility with older versions of the quake-server package, debian_server.cfg in the engine's search path is also a symlink to -etc/quake3-server/server.cfg. +etc/quake3-server/server.cfg.) + +To set options that can only be configured via the command-line, +such as fs_game and net_port, set the variable DAEMON_OPTS +in /etc/default/quake3-server. The server can be managed in the usual way, e.g. via service(8) and update-rc.d(8) commands like @@ -31,28 +36,60 @@ and update-rc.d(8) commands like which should work for all of Debian's supported init systems. -Running the server with cron and screen ---------------------------------------- - -One alternative way to run the server is to run it in a screen(1) session -from a cron @reboot action. This can be used to run multiple instances -of the server; you'll need to set a different net_port on each server after -the first, and it's safest to give each server a unique fs_homepath so they -don't overwrite each other's configuration files. - -To do this, you could put something like this in the Debian-quake3 user's -crontab (don't break the long lines!): - - @reboot screen -d -m -S ffa /usr/games/quake3-server +set fs_homepath /var/games/quake3-server/ffa +exec ffa.config - @reboot screen -d -m -S ctf /usr/games/quake3-server +set fs_homepath /var/games/quake3-server/ctf +set net_port 54321 +exec ctf.config - -or in /etc/crontab or a file in /etc/cron.d: - - @reboot Debian-quake3 screen -d -m -S ffa /usr/games/quake3-server +set fs_homepath /var/games/quake3-server/ffa +exec ffa.config - @reboot Debian-quake3 screen -d -m -S ctf /usr/games/quake3-server +set fs_homepath /var/games/quake3-server/ctf +set net_port 54321 +exec ctf.config - -If you do that, you can access the servers' consoles by attaching a screen -session to them: - - sudo -u Debian-quake3 screen -r ffa - sudo -u Debian-quake3 screen -r ctf +Quake III: Team Arena and third-party mods +------------------------------------------ + +If you have the Quake III: Team Arena addon pack (the quake3-team-arena-data +package produced by game-data-packager), you can run a Team Arena server +by adding "+set fs_game missionpack" to DAEMON_OPTS. + +Similarly, to run a third-party mod such as Threewave CTF, set fs_game to +the name of the subdirectory it would use in ~/.q3a. + +Running multiple server instances with systemd +---------------------------------------------- + +Under systemd, quake3-server supports additional instances of the server, +so you can run a deathmatch server and a Capture the Flag server, or +a Quake III Arena server and a Quake III: Team Arena server. + +Each instance quake3-server@INSTANCE.service has configuration and state in +/var/games/quake3-server/INSTANCE.q3a, and will execute +/etc/quake3-server/INSTANCE.cfg on startup. + +To set a parameter that can only be given on the command line, such as +fs_game or net_port, you can create /etc/default/quake3-server@INSTANCE +or a systemd "drop-in" file, and set DAEMON_OPTS there. Setting a +unique net_port for each server is recommended: if you do not, each +server will try ports above its configured net_port until it finds one +that is not in use, so the mapping between servers and ports will be arbitrary. + +The instance name "server" cannot be used without disabling and stopping +quake3-server.service, since it shares its configuration with that +service. + +For instance, these shell commands (as root) would set up a Capture the +Flag server on port 27970 and a Team Arena server on port 27980: + + cat > /etc/default/quake3-server@ctf + DAEMON_OPTS="+set net_port 27970" + EOF + cat > /etc/quake3-server/ctf.cfg <<EOF + sv_hostname "My Capture the Flag Server" + exec ctf.config + EOF + systemctl daemon-reload + systemctl enable quake3-server@ctf.service + systemctl start quake3-server@ctf.service + + cat > /etc/default/quake3-server@ta + DAEMON_OPTS="+set net_port 27980 +set fs_game missionpack" + EOF + cat > /etc/quake3-server/ta.cfg <<EOF + sv_hostname "My Team Arena Server" + g_gametype 6 + exec large_maps.cfg + EOF + systemctl daemon-reload + systemctl enable quake3-server@ta.service + systemctl start quake3-server@ta.service -- Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-games/game-data-packager.git _______________________________________________ Pkg-games-commits mailing list Pkg-games-commits@lists.alioth.debian.org http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/pkg-games-commits