This is an automated email from the git hooks/post-receive script. smcv pushed a commit to branch master in repository game-data-packager.
commit c779d048666d0772fa43be739750c54b317d8cab Author: Simon McVittie <[email protected]> Date: Fri Oct 14 22:13:41 2016 +0100 Run game servers using the Python launcher --- Makefile | 93 ++++++------------------ debian/control | 5 ++ debian/etqw-server.install | 3 + debian/etqw-server.service | 2 +- debian/etqw.install | 1 + debian/game-data-packager-runtime.install | 11 ++- debian/quake-server.install | 3 + debian/quake.install | 1 + debian/quake2-server.install | 3 + debian/quake2.install | 1 + debian/quake3-server.install | 3 + debian/quake3.install | 1 + debian/quake4-server.install | 5 +- debian/quake4-server.service | 2 +- debian/quake4.install | 1 + runtime/launch-etqw-dedicated.yaml.in | 16 +++++ runtime/launch-quake-server.yaml.in | 32 +++++++++ runtime/launch-quake2-server.yaml.in | 29 ++++++++ runtime/launch-quake3-server.yaml.in | 48 +++++++++++++ runtime/launch-quake4-dedicated.yaml.in | 16 +++++ runtime/quake.in | 87 ----------------------- runtime/quake2.in | 95 ------------------------- runtime/quake3.in | 109 ---------------------------- runtime/quake4.in | 113 ------------------------------ 24 files changed, 200 insertions(+), 480 deletions(-) diff --git a/Makefile b/Makefile index 5ffdfd2..4c40a08 100644 --- a/Makefile +++ b/Makefile @@ -38,14 +38,6 @@ launcher_desktops := \ quake_layer_sizes = 16 22 32 48 256 -quake_text = \ - out/quake-server \ - out/quake2-server \ - out/quake3-server \ - out/quake4-dedicated \ - out/etqw-dedicated \ - $(NULL) - quake_icons = \ out/24/quake.png \ out/24/quake-armagon.png \ @@ -75,7 +67,7 @@ quake_icons = \ $(NULL) default: $(png) $(svgz) $(json_from_data) $(launcher_json) \ - $(copyright) $(dot_in) $(desktop) $(quake_text) $(quake_icons) \ + $(copyright) $(dot_in) $(desktop) $(quake_icons) \ out/bash_completion out/changelog.gz \ out/game-data-packager out/vfs.zip out/memento-mori-2.svg @@ -190,64 +182,6 @@ out/48/quake3-team-arena.png: out/256/quake3-team-arena.png Makefile out/CACHEDI install -d out/48 convert -resize 48x48 $< $@ -out/quake2-server: runtime/quake2.in out/CACHEDIR.TAG - sed -e 's/@self@/quake2-server/g' \ - -e 's/@role@/dedicated server/g' \ - -e 's/@options@/+set dedicated 1/g' \ - -e 's/@alternative@/quake2-engine-server/g' \ - < $< > $@ - chmod +x $@ - -out/quake-server: runtime/quake.in out/CACHEDIR.TAG - sed -e 's/@self@/quake-server/g' \ - -e 's/@role@/server/g' \ - -e 's/@options@/-dedicated/g' \ - -e 's/@alternative@/quake-engine-server/g' \ - < $< > $@ - chmod +x $@ - -out/quake3-server: runtime/quake3.in Makefile out/CACHEDIR.TAG - sed \ - -e 's!@IOQ3BINARY@!ioq3ded!' \ - -e 's!@IOQ3SELF@!quake3-server!' \ - -e 's!@IOQ3ROLE@!server!' \ - < $< > $@ - chmod +x $@ - -out/quake4-dedicated: runtime/quake4.in Makefile out/CACHEDIR.TAG - sed \ - -e 's!@id@!quake4!' \ - -e 's!@icon@!/usr/share/icons/hicolor/48x48/apps/quake4.png!' \ - -e 's!@longname@!Quake 4!' \ - -e 's!@shortname@!Quake 4!' \ - -e 's!@binary@!q4ded.x86!' \ - -e 's!@smpbinary@!!' \ - -e 's!@self@!quake4-dedicated!' \ - -e 's!@role@!server!' \ - -e 's!@pkglibdir@!/usr/lib/quake4!' \ - -e 's!@paks@!pak001 pak021 pak022 zpak_english!' \ - -e 's!@basegame@!q4base!' \ - -e 's!@dotdir@!quake4!' \ - < $< > $@ - chmod +x $@ - -out/etqw-dedicated: runtime/quake4.in Makefile out/CACHEDIR.TAG - sed \ - -e 's!@id@!etqw!' \ - -e 's!@icon@!/usr/share/pixmaps/etqw.png!' \ - -e 's!@longname@!Enemy Territory: Quake Wars!' \ - -e 's!@shortname@!ETQW!' \ - -e 's!@binary@!etqwded.x86!' \ - -e 's!@smpbinary@!!' \ - -e 's!@self@!etqw-dedicated!' \ - -e 's!@role@!server!' \ - -e 's!@pkglibdir@!/usr/lib/etqw!' \ - -e 's!@paks@!pak008 game000 pak000 zpak_english000!' \ - -e 's!@basegame@!base!' \ - -e 's!@dotdir@!etqw!' \ - < $< > $@ - chmod +x $@ - out/tmp/recolour-dissolution.svg: data/quake1+2.svg Makefile out/CACHEDIR.TAG install -d out/tmp sed -e 's/#c17d11/#999984/' \ @@ -438,6 +372,21 @@ install: install -m0644 runtime/confirm-binary-only.txt $(DESTDIR)$(runtimedir)/ install -m0644 runtime/missing-data.txt $(DESTDIR)$(runtimedir)/ install -m0644 $(launcher_json) $(DESTDIR)$(runtimedir)/ + install -d $(DESTDIR)${gamedatadir}/quake/ + install -m644 out/installed-version.py $(DESTDIR)${gamedatadir}/quake/gdp_launcher_version.py + install -m755 runtime/gdp_launcher_base.py $(DESTDIR)${gamedatadir}/quake/quake-server + install -d $(DESTDIR)${gamedatadir}/quake2/ + install -m644 out/installed-version.py $(DESTDIR)${gamedatadir}/quake2/gdp_launcher_version.py + install -m755 runtime/gdp_launcher_base.py $(DESTDIR)${gamedatadir}/quake2/quake2-server + install -d $(DESTDIR)${gamedatadir}/quake3/ + install -m644 out/installed-version.py $(DESTDIR)${gamedatadir}/quake3/gdp_launcher_version.py + install -m755 runtime/gdp_launcher_base.py $(DESTDIR)${gamedatadir}/quake3/quake3-server + install -d $(DESTDIR)${gamedatadir}/quake4/ + install -m644 out/installed-version.py $(DESTDIR)${gamedatadir}/quake4/gdp_launcher_version.py + install -m755 runtime/gdp_launcher_base.py $(DESTDIR)${gamedatadir}/quake4/quake4-dedicated + install -d $(DESTDIR)${libdir}/etqw/ + install -m644 out/installed-version.py $(DESTDIR)${libdir}/etqw/gdp_launcher_version.py + install -m755 runtime/gdp_launcher_base.py $(DESTDIR)${libdir}/etqw/etqw-dedicated install -d $(DESTDIR)/etc/apparmor.d/ install -m0644 etc/apparmor.d/* $(DESTDIR)/etc/apparmor.d/ @@ -462,15 +411,15 @@ install: install -m0644 out/doom-common.png $(DESTDIR)/usr/share/pixmaps/doom2-masterlevels.png install -d $(DESTDIR)$(bindir) ln -s ${runtimedir}/gdp-launcher $(DESTDIR)$(bindir)/quake - install -m755 out/quake-server $(DESTDIR)$(bindir) + ln -s ${gamedatadir}/quake/quake-server $(DESTDIR)$(bindir)/ ln -s ${runtimedir}/gdp-launcher $(DESTDIR)$(bindir)/quake2 - install -m755 out/quake2-server $(DESTDIR)$(bindir) + ln -s ${gamedatadir}/quake2/quake2-server $(DESTDIR)$(bindir)/ ln -s ${runtimedir}/gdp-launcher $(DESTDIR)$(bindir)/quake3 - install -m755 out/quake3-server $(DESTDIR)$(bindir) + ln -s ${gamedatadir}/quake3/quake3-server $(DESTDIR)$(bindir)/ ln -s ${runtimedir}/gdp-launcher $(DESTDIR)$(bindir)/quake4 - install -m755 out/quake4-dedicated $(DESTDIR)$(bindir) + ln -s ${gamedatadir}/quake4/quake4-dedicated $(DESTDIR)$(bindir)/ ln -s ${runtimedir}/gdp-launcher $(DESTDIR)$(bindir)/etqw - install -m755 out/etqw-dedicated $(DESTDIR)$(bindir) + ln -s ${libdir}/etqw/etqw-dedicated $(DESTDIR)$(bindir)/ install -d $(DESTDIR)$(datadir)/applications install -m644 out/etqw.desktop $(DESTDIR)$(datadir)/applications install -m644 out/quake*.desktop $(DESTDIR)$(datadir)/applications diff --git a/debian/control b/debian/control index 70dbd13..8051d61 100644 --- a/debian/control +++ b/debian/control @@ -257,6 +257,7 @@ Depends: etqw-data | game-data-packager (>= 44), lsb-base (>= 3.0-6), ${misc:Depends}, + ${python3:Depends}, Recommends: systemd-sysv, Suggests: @@ -355,6 +356,7 @@ Depends: quake-registered | quake-shareware | game-data-packager, quakespasm | quake-engine-server, ${misc:Depends}, + ${python3:Depends}, Description: classic first person shooter - server and init script This package contains a launcher script and init script to run a Quake 1 server automatically, with any suitable engine. @@ -399,6 +401,7 @@ Depends: quake2-full-data | quake2-demo-data | game-data-packager (>= 34), yamagi-quake2-core | quake2-engine-server, ${misc:Depends}, + ${python3:Depends}, Suggests: quake2-groundzero-data, quake2-reckoning-data, @@ -446,6 +449,7 @@ Depends: lsb-base (>= 3.0-6), quake3-data | game-data-packager (>= 23), ${misc:Depends}, + ${python3:Depends}, Recommends: game-data-packager (>= 39), Suggests: @@ -488,6 +492,7 @@ Depends: quake4-bin | game-data-packager (>= 43), quake4-data | quake4-censored-de-data | game-data-packager (>= 43), ${misc:Depends}, + ${python3:Depends}, Recommends: systemd-sysv, Description: dedicated server for Quake 4 diff --git a/debian/etqw-server.install b/debian/etqw-server.install index 73d0ec5..e5897ce 100644 --- a/debian/etqw-server.install +++ b/debian/etqw-server.install @@ -1,3 +1,6 @@ runtime/README.etqw-data usr/share/doc/etqw-server usr/games/etqw-dedicated +usr/lib/etqw/etqw-dedicated +usr/lib/etqw/gdp_launcher_version.py +usr/share/games/game-data-packager-runtime/launch-etqw-dedicated.json usr/share/man/man6/etqw-dedicated.6 diff --git a/debian/etqw-server.service b/debian/etqw-server.service index 1db3c2d..e0142da 100644 --- a/debian/etqw-server.service +++ b/debian/etqw-server.service @@ -8,7 +8,7 @@ Type=simple User=etqw-server Environment=DAEMON_OPTS= EnvironmentFile=-/etc/default/etqw-server -ExecStart=/usr/games/etqw-dedicated $DAEMON_OPTS +exec etc/etqw-server/server.cfg +ExecStart=/usr/games/etqw-dedicated --allow-binary-only $DAEMON_OPTS +exec etc/etqw-server/server.cfg Restart=on-failure RestartPreventExitStatus=72 # hardening diff --git a/debian/etqw.install b/debian/etqw.install index 572ca84..f6ab735 100644 --- a/debian/etqw.install +++ b/debian/etqw.install @@ -1,3 +1,4 @@ usr/games/etqw usr/share/applications/etqw.desktop +usr/share/games/game-data-packager-runtime/launch-etqw.json usr/share/man/man6/etqw.6 diff --git a/debian/game-data-packager-runtime.install b/debian/game-data-packager-runtime.install index ef85934..45babd1 100644 --- a/debian/game-data-packager-runtime.install +++ b/debian/game-data-packager-runtime.install @@ -1,6 +1,15 @@ debian/tmp/etc/apparmor.d usr/games/doom2-masterlevels usr/share/applications/doom2-masterlevels.desktop -usr/share/games/game-data-packager-runtime +usr/share/games/game-data-packager-runtime/confirm-binary-only.txt +usr/share/games/game-data-packager-runtime/gdp-launcher +usr/share/games/game-data-packager-runtime/gdp_launcher_base.py +usr/share/games/game-data-packager-runtime/gdp_launcher_version.py +usr/share/games/game-data-packager-runtime/gdp-openurl +usr/share/games/game-data-packager-runtime/launch-unreal-gold.json +usr/share/games/game-data-packager-runtime/launch-unreal.json +usr/share/games/game-data-packager-runtime/missing-data.txt +usr/share/games/game-data-packager-runtime/unreal-gold.desktop +usr/share/games/game-data-packager-runtime/unreal.desktop usr/share/man/man6/doom2-masterlevels.6 usr/share/pixmaps/doom2-masterlevels.png diff --git a/debian/quake-server.install b/debian/quake-server.install index 866f3cd..d096a4d 100644 --- a/debian/quake-server.install +++ b/debian/quake-server.install @@ -1,4 +1,7 @@ debian/[email protected] lib/systemd/system debian/q1/server.cfg /etc/quake-server usr/games/quake-server +usr/share/games/game-data-packager-runtime/launch-quake-server.json +usr/share/games/quake/gdp_launcher_version.py +usr/share/games/quake/quake-server usr/share/man/man6/quake-server.6 diff --git a/debian/quake.install b/debian/quake.install index 5fd5efd..38ead5d 100644 --- a/debian/quake.install +++ b/debian/quake.install @@ -1,6 +1,7 @@ usr/games/quake usr/share/applications/quake-*.desktop usr/share/applications/quake.desktop +usr/share/games/game-data-packager-runtime/launch-quake.json usr/share/icons/hicolor/*/apps/quake-*.png usr/share/icons/hicolor/*/apps/quake-*.svg usr/share/icons/hicolor/*/apps/quake.png diff --git a/debian/quake2-server.install b/debian/quake2-server.install index 50a1614..5e1181c 100644 --- a/debian/quake2-server.install +++ b/debian/quake2-server.install @@ -2,4 +2,7 @@ debian/q2/debian_server.cfg /etc/quake2-server debian/q2/demo/debian_server.cfg /etc/quake2-server/demo debian/[email protected] lib/systemd/system usr/games/quake2-server +usr/share/games/game-data-packager-runtime/launch-quake2-server.json +usr/share/games/quake2/gdp_launcher_version.py +usr/share/games/quake2/quake2-server usr/share/man/man6/quake2-server.6 diff --git a/debian/quake2.install b/debian/quake2.install index 31b8a0d..d09319d 100644 --- a/debian/quake2.install +++ b/debian/quake2.install @@ -1,5 +1,6 @@ usr/games/quake2 usr/share/applications/quake2*.desktop +usr/share/games/game-data-packager-runtime/launch-quake2.json usr/share/icons/hicolor/*/apps/quake2*.png usr/share/icons/hicolor/*/apps/quake2*.svg usr/share/man/man6/quake2.6 diff --git a/debian/quake3-server.install b/debian/quake3-server.install index 03702e7..0539a71 100644 --- a/debian/quake3-server.install +++ b/debian/quake3-server.install @@ -2,4 +2,7 @@ debian/q3/server.cfg etc/quake3-server debian/[email protected] lib/systemd/system runtime/README.quake3-data usr/share/doc/quake3-server usr/games/quake3-server +usr/share/games/game-data-packager-runtime/launch-quake3-server.json +usr/share/games/quake3/gdp_launcher_version.py +usr/share/games/quake3/quake3-server usr/share/man/man6/quake3-server.6 diff --git a/debian/quake3.install b/debian/quake3.install index f0814ef..892c225 100644 --- a/debian/quake3.install +++ b/debian/quake3.install @@ -1,4 +1,5 @@ usr/games/quake3 usr/share/applications/quake3*.desktop +usr/share/games/game-data-packager-runtime/launch-quake3.json usr/share/icons/hicolor/*/apps/quake3*.png usr/share/man/man6/quake3.6 diff --git a/debian/quake4-server.install b/debian/quake4-server.install index b1b5bec..bb6a147 100644 --- a/debian/quake4-server.install +++ b/debian/quake4-server.install @@ -1,5 +1,8 @@ debian/apparmor.d/usr.lib.quake4.q4ded.x86 etc/apparmor.d debian/q4/server.cfg etc/quake4-server -runtime/README.quake4-data usr/share/doc/quake3-server +runtime/README.quake4-data usr/share/doc/quake4-server usr/games/quake4-dedicated +usr/share/games/game-data-packager-runtime/launch-quake4-dedicated.json +usr/share/games/quake4/gdp_launcher_version.py +usr/share/games/quake4/quake4-dedicated usr/share/man/man6/quake4-dedicated.6 diff --git a/debian/quake4-server.service b/debian/quake4-server.service index 4ad3056..466480a 100644 --- a/debian/quake4-server.service +++ b/debian/quake4-server.service @@ -8,7 +8,7 @@ Type=simple User=quake4-server Environment=DAEMON_OPTS= EnvironmentFile=-/etc/default/quake4-server -ExecStart=/usr/games/quake4-dedicated $DAEMON_OPTS +exec etc/quake4-server/server.cfg +ExecStart=/usr/games/quake4-dedicated --allow-binary-only $DAEMON_OPTS +exec etc/quake4-server/server.cfg Restart=on-failure RestartPreventExitStatus=72 # hardening diff --git a/debian/quake4.install b/debian/quake4.install index 05e751d..43c5537 100644 --- a/debian/quake4.install +++ b/debian/quake4.install @@ -1,6 +1,7 @@ debian/apparmor.d/usr.lib.quake4.quake4.x86 etc/apparmor.d usr/games/quake4 usr/share/applications/quake4.desktop +usr/share/games/game-data-packager-runtime/launch-quake4.json usr/share/icons/hicolor/*/apps/quake4*.png usr/share/icons/hicolor/*/apps/quake4*.svg usr/share/man/man6/quake4.6 diff --git a/runtime/launch-etqw-dedicated.yaml.in b/runtime/launch-etqw-dedicated.yaml.in new file mode 100644 index 0000000..ac8bedd --- /dev/null +++ b/runtime/launch-etqw-dedicated.yaml.in @@ -0,0 +1,16 @@ +--- +binary_only: true +engine: $prefix/lib/etqw/etqwded.x86 +required_files: + - base/pak008.pk4 + - base/game000.pk4 + - base/pak000.pk4 + - base/zpak_english000.pk4 +dot_directory: ~/.etqw +base_directories: + - $prefix/lib/etqw +working_directory: $prefix/lib/etqw +library_path: + - $prefix/lib/etqw +argv: +set com_allowconsole 1 +... diff --git a/runtime/launch-quake-server.yaml.in b/runtime/launch-quake-server.yaml.in new file mode 100644 index 0000000..c7d3f1c --- /dev/null +++ b/runtime/launch-quake-server.yaml.in @@ -0,0 +1,32 @@ +--- +dot_directory: null +base_directories: + - /usr/share/games/quake +required_files: + - id1/pak0.pak +engines: + - $prefix/lib/quake/quake-engine-server + - quakespasm + - darkplaces +argv: > + -dedicated + -basedir $${base_directory} +expansions: + armagon: + aliases: hipnotic + extra_argv: > + -hipnotic + extra_required_files: + - hipnotic/pak0.pak + dissolution: + aliases: rogue + extra_argv: > + -rogue + extra_required_files: + - rogue/pak0.pak + dopa: + extra_argv: > + -game dopa + extra_required_files: + - dopa/pak0.pak +... diff --git a/runtime/launch-quake2-server.yaml.in b/runtime/launch-quake2-server.yaml.in new file mode 100644 index 0000000..e74f65f --- /dev/null +++ b/runtime/launch-quake2-server.yaml.in @@ -0,0 +1,29 @@ +--- +dot_directory: null +base_directories: + - /usr/share/games/quake2 +required_files: + - baseq2/pak0.pak +engines: + - $prefix/lib/quake2/quake2-engine-server + - $prefix/lib/yamagi-quake2/quake2-server + - yquake2-server +argv: > + +set dedicated 1 + +set basedir $${base_directory} +expansions: + reckoning: + aliases: xatrix + extra_argv: > + +set game xatrix + extra_required_files: + - xatrix/pak0.pak + groundzero: + aliases: rogue + extra_argv: > + +set game rogue + extra_required_files: + - rogue/pak0.pak +demo: + base_directories: + - /usr/share/games/quake2-demo diff --git a/runtime/launch-quake3-server.yaml.in b/runtime/launch-quake3-server.yaml.in new file mode 100644 index 0000000..9492762 --- /dev/null +++ b/runtime/launch-quake3-server.yaml.in @@ -0,0 +1,48 @@ +--- +dot_directory: ~/.q3a +engines: + - $prefix/lib/ioquake3/ioq3ded + - ioq3ded +argv: > + +set fs_basepath $assets/quake3 +base_directories: + - $assets/quake3-data +required_files: + - baseq3/pak0.pk3 + - baseq3/pak1.pk3 + - baseq3/pak2.pk3 + - baseq3/pak3.pk3 + - baseq3/pak4.pk3 + - baseq3/pak5.pk3 + - baseq3/pak6.pk3 + - baseq3/pak7.pk3 + - baseq3/pak8.pk3 +expansions: + team-arena: + symlink_into_dot_directory: + - missionpack + aliases: teamarena + base_directories: + - $assets/quake3-data + - $assets/quake3-team-arena-data + extra_argv: > + +set fs_game missionpack +set fs_basepath /usr/lib/quake3/ta + extra_required_files: + - missionpack/pak0.pk3 + - missionpack/pak1.pk3 + - missionpack/pak2.pk3 + - missionpack/pak3.pk3 +demo: + dot_directory: ~/.q3ademo + base_directories: + - $prefix/lib/quake3/demo + required_files: + - demoq3/pak0.pk3 + argv: > + +set com_homepath .q3ademo + +set com_basegame demoq3 + +set sv_pure 0 + +set vm_ui 0 + +set vm_cgame 0 + +set vm_game 0 + +set fs_basepath $${base_directory} diff --git a/runtime/launch-quake4-dedicated.yaml.in b/runtime/launch-quake4-dedicated.yaml.in new file mode 100644 index 0000000..04c8d86 --- /dev/null +++ b/runtime/launch-quake4-dedicated.yaml.in @@ -0,0 +1,16 @@ +--- +binary_only: true +engine: $prefix/lib/quake4/q4ded.x86 +required_files: + - q4base/pak001.pk4 + - q4base/pak021.pk4 + - q4base/pak022.pk4 + - q4base/zpak_english.pk4 +dot_directory: ~/.quake4 +base_directories: + - $prefix/lib/quake4 +working_directory: $prefix/lib/quake4 +library_path: + - $prefix/lib/quake4 +argv: +set com_allowconsole 1 +... diff --git a/runtime/quake.in b/runtime/quake.in deleted file mode 100644 index 0ae7af7..0000000 --- a/runtime/quake.in +++ /dev/null @@ -1,87 +0,0 @@ -#! /bin/sh - -# quake.sh - launcher script for quake 1 - -self="@self@" -role="@role@" -options="@options@" -data_location=/usr/share/games/quake -engine_path=/usr/lib/quake/@alternative@ -no_data_title="Quake" -no_data_msg="Missing data; see /usr/share/doc/${self}/README.Debian" - -main() { - case "$(basename "$0")" in - (*armagon*|*hipnotic*) - set _ "$@" -hipnotic - shift - ;; - (*dissolution*|*rogue*) - set _ "$@" -rogue - shift - ;; - (*dopa*) - set _ "$@" -game dopa - shift - ;; - esac - - while [ $# -gt 0 ]; do - case "$1" in - -h|--help) - show_help - exit 2 - ;; - -v|--version) - show_version - exit 2 - ;; - --engine) - engine_path="$2" - shift - ;; - --engine=*) - engine_path="$1" - engine_path="${engine_path#--engine=}" - ;; - *) - break - ;; - esac - - shift - done - - if ! [ -f "${data_location}/id1/pak0.pak" ]; then - if test "${role}" = server; then - echo "$no_data_msg" >&2 - exit 72 # EX_OSFILE - else - exec "$data_location"/need-data.sh "$no_data_title" "$no_data_msg" - fi - fi - - exec ${engine_path} -basedir ${data_location} ${options} "$@" -} - -show_help() { - echo "Usage: ${self} [-h|--help] [-v|--version] [ARG1] [ARG2] ..." - echo "Launch Quake ${role}." - echo - echo "This script supports these options:" - echo " -h, --help show this help information" - echo " -v, --version show version information" - echo " --engine BINARY use BINARY as the Quake engine, e.g." - echo " quake --engine=/usr/games/darkplaces" - echo - echo "Any further arguments will be passed directly to the Quake engine." -} - -show_version() { - echo "Debian Quake 1 wrapper script" - echo "Please consult your apt database for the version number of this script." - echo "Looking for data at: '$data_location'" - echo "Using engine: '$engine_path'" -} - -main "$@" diff --git a/runtime/quake2.in b/runtime/quake2.in deleted file mode 100644 index 082be9e..0000000 --- a/runtime/quake2.in +++ /dev/null @@ -1,95 +0,0 @@ -#! /bin/sh - -# @self@ - launcher script for Quake II @role@ - -self="@self@" -role="@role@" -options="@options@" -data_location=/usr/share/games/quake2 -engine_path=/usr/lib/quake2/@alternative@ -no_data_title="Quake II" -no_data_msg="Missing data; see /usr/share/doc/${self}/README.Debian" - -use_data_location="$data_location" - -main() { - case "$(basename "$0")" in - (*reckoning*|*xatrix*) - set _ "$@" +set game xatrix - shift - ;; - (*groundzero*|*rogue*) - set _ "$@" +set game rogue - shift - ;; - esac - - while [ $# -gt 0 ]; do - case "$1" in - -h|--help) - show_help - exit 2 - ;; - -v|--version) - show_version - exit 2 - ;; - --engine) - engine_path="$2" - shift - ;; - --engine=*) - engine_path="$1" - engine_path="${engine_path#--engine=}" - ;; - --demo) - use_data_location="$data_location-demo" - ;; - *) - break - ;; - esac - - shift - done - - if ! [ -f "${use_data_location}/baseq2/pak0.pak" ]; then - # try to fall back to the demo data - might work? - use_data_location="$data_location-demo" - fi - - if ! [ -f "${use_data_location}/baseq2/pak0.pak" ]; then - if test "${role}" = server; then - echo "$no_data_msg" >&2 - exit 72 # EX_OSFILE - else - exec "$data_location"/need-data.sh "$no_data_title" "$no_data_msg" - fi - fi - - exec ${engine_path} ${options} +set basedir "$use_data_location" "$@" -} - -show_help() { - echo "Usage: ${self} [-h|--help] [-v|--version] [ARG1] [ARG2] ..." - echo "Launch Quake II ${role}." - echo - echo "This script supports these options:" - echo " -h, --help show this help information" - echo " -v, --version show version information" - echo " --engine BINARY use BINARY as the Quake II engine, e.g." - echo " quake2 --engine=/usr/lib/yagami-quake2/quake2" - echo " --demo use the demo data, even if the full game is" - echo " also installed" - echo - echo "Any further arguments will be passed directly to the engine." -} - -show_version() { - echo "Debian Quake II wrapper script" - echo "Please consult your apt database for the version number of this script." - echo "Looking for data at: '$data_location'" - echo "Using engine: '$engine_path'" -} - -main "$@" diff --git a/runtime/quake3.in b/runtime/quake3.in deleted file mode 100644 index 09e73d3..0000000 --- a/runtime/quake3.in +++ /dev/null @@ -1,109 +0,0 @@ -#!/bin/sh - -# quake3 or quake3-server or whatever -IOQ3SELF=@IOQ3SELF@ -# "server" or "client" -IOQ3ROLE=@IOQ3ROLE@ -# ioquake3 or ioq3ded -IOQ3BINARY=@IOQ3BINARY@ -# q3a or openarena -IOQ3DOTDIR=q3a - -ENGINE="/usr/lib/ioquake3/${IOQ3BINARY}" - -BASEGAME="baseq3" -BASEPATH="/usr/share/games/quake3" -DEBUGGER="$QUAKE3_DEBUGGER" -DEMO= -PAKS="0 1 2 3 4 5 6 7 8" -QUIET= - -EXCUSE="\ -Quake III Arena ${IOQ3ROLE} wrapper for Debian\n\ -\n\ -Usage: ${IOQ3SELF} [OPTION]...\n\ -\n\ - -h, --help\t\tDisplay this help\n\ - -q, --quiet\t\tDisable console output\n\ - +<internal command>\tPass commands to the engine\n" - -CVARS="+set com_standalone 0" - -case "$(basename "$0")" in - (*team-arena*|*teamarena*) - set _ "$@" +set fs_game missionpack - shift - ;; - (*demo*) - set _ --demo "$@" - shift - ;; -esac - -while [ "$1" != "" ]; do - - case "$1" in - -h|--help) - echo ${EXCUSE} - exit 0 - ;; - -q|--quiet) - CVARS="$CVARS +set ttycon 0" - QUIET=1 - ;; - --demo) - BASEPATH="/usr/lib/quake3/demo" - DEMO=1 - ;; - *) - break - ;; - esac - shift -done - -if [ -n "$DEMO" ]; then - BASEPATH="/usr/lib/quake3/demo" -elif [ -e "/usr/lib/quake3/ta/missionpack/pak0.pk3" ]; then - BASEPATH="/usr/lib/quake3/ta" -elif [ -e "/usr/lib/quake3/base/baseq3/pak0.pk3" ]; then - BASEPATH="/usr/lib/quake3/base" -elif [ -e "$BASEPATH/baseq3/pak0.pk3" ]; then - : -elif [ -e "/usr/lib/quake3/demo/demoq3/pak0.pk3" ]; then - BASEPATH="/usr/lib/quake3/demo" - DEMO=1 -fi - -if [ -n "$DEMO" ]; then - CVARS="$CVARS +set com_homepath .q3ademo +set com_basegame demoq3" - CVARS="$CVARS +set sv_pure 0 +set vm_ui 0 +set vm_cgame 0 +set vm_game 0" - paks="0" - basegame=demoq3 -fi - -CVARS="$CVARS +set fs_basepath $BASEPATH" - -# sanity check: the engine doesn't cope well with missing data -for i in $paks; do - if test -f $BASEPATH/$basegame/pak$i.pk3; then - : - else - if test "$IOQ3ROLE" = client; then - $BASEPATH/need-data.sh "Quake III Arena" "`cat $BASEPATH/README.quake3-data`" - else - echo "Quake III Arena data missing, see /usr/share/doc/quake3-server/README.quake3-data" - fi - exit 72 # EX_OSFILE - fi -done - -if test "z$QUIET" = z1; then - exec >/dev/null 2>&1; -fi - -if test -n "$QUAKE3_BACKTRACE"; then - exec gdb -return-child-result -batch -ex run -ex 'thread apply all bt full' -ex kill -ex quit --args ${ENGINE} ${CVARS} "$@" -else - exec ${DEBUGGER} ${ENGINE} ${CVARS} "$@" -fi diff --git a/runtime/quake4.in b/runtime/quake4.in deleted file mode 100644 index c87c329..0000000 --- a/runtime/quake4.in +++ /dev/null @@ -1,113 +0,0 @@ -#!/bin/sh - -# Quake 4 or Enemy Territory: Quake Wars -longname="@longname@" -# Quake 4 or ETQW -shortname="@shortname@" -# quake4 or etqw -id="@id@" -# quake4, etqw or *-dedicated -self="@self@" -# client or server -role="@role@" -# *.x86 (not SMP) -binary="@binary@" -# quake4smp.x86 or etqw-rthread.x86 -smpbinary="@smpbinary@" -# q4base or base -basegame="@basegame@" -# required packages -paks="@paks@" -# absolute path to icon -icon="@icon@" -# ~/.quake4 or ~/.etqwcl or ~/.etqw -dotdir="${HOME}/.@dotdir@" - -pkglibdir="/usr/lib/${id}" - -help() { - cat <<EOF -${longname} ${role} wrapper for Debian - -Usage: ${self} [OPTION]... - - -h, --help\t\tDisplay this help -EOF - - if [ -n "${smpbinary}" ] && [ -x "${pkglibdir}/${smpbinary}" ]; then - cat <<EOF - --smp\t\tUse the multi-threaded version of the client -EOF - fi - - cat <<EOF - +<internal command>\tPass idTech4 console commands to the engine -EOF -} - -while [ "$1" != "" ]; do - case "$1" in - -h|--help) - help - exit 0 - ;; - --smp) - if [ -n "${smpbinary}" ] && [ -x "${pkglibdir}/${smpbinary}" ]; then - binary="${smpbinary}" - fi - ;; - *) - break - ;; - esac - shift -done - -# sanity check: the engine doesn't cope well with missing data -for i in ${paks}; do - if [ -f $pkglibdir/$basegame/$i.pk4 ]; then - : - else - if [ "$role" = client ]; then - $pkglibdir/need-data.sh "${longname}" "$(cat $pkglibdir/README.${id}-data)" - else - echo "${shortname} data missing, see /usr/share/doc/${id}-server/README.${id}-data" - fi - exit 72 # EX_OSFILE - fi -done - -cvars="+set com_allowconsole 1" - -# Quake 4 expects to run in its installation directory -cd "$pkglibdir" - -if test -n "$QUAKE4_BACKTRACE"; then - set gdb -return-child-result -batch \ - -ex run -ex 'thread apply all bt full' -ex kill -ex quit \ - --args "${pkglibdir}/${binary}" ${cvars} \ - "$@" -else - set _ ${QUAKE4_DEBUGGER} "${pkglibdir}/${binary}" ${cvars} "$@" - shift -fi - -# The SMP binary needs a modified bundled copy of SDL. We don't set this -# environment variable until after going through confirm-binary-only.sh, -# so that we can't accidentally load sourceless binaries. -set \ - env LD_LIBRARY_PATH="${pkglibdir}${LD_LIBRARY_PATH:+":${LD_LIBRARY_PATH}"}" \ - "$@" - -if [ "${role}" = "client" ]; then - exec "${pkglibdir}/confirm-binary-only.sh" \ - --icon "${icon}" \ - --dotdir "${dotdir}" \ - --text-file "${pkglibdir}/README.${id}-bin" \ - --title "${longname}" \ - -- "$@" -else - exec "$@" -fi - -# vim:set sw=2 sts=2 et: -- 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 [email protected] http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/pkg-games-commits

