[game-data-packager] 276/293: quake, quake2, quake3: use symlink name as a hint for expansions

Simon McVittie smcv at debian.org
Fri Oct 14 00:12:32 UTC 2016


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 4d44ee09ffd0bd4740810a82890de76a04e22850
Author: Simon McVittie <smcv at debian.org>
Date:   Sat Jan 16 15:53:56 2016 +0000

    quake, quake2, quake3: use symlink name as a hint for expansions
    
    * quake, quake2, quake3: if launched via a symlink whose name
      contains armagon, hipnotic, etc., run the appropriate expansion pack
    * quake.desktop, quake2.desktop, quake3.desktop: run each expansion
      pack via a different symbolic link. This is a workaround for Steam
      ignoring command-line options when adding a non-Steam shortcut
      (<https://github.com/ValveSoftware/steam-for-linux/issues/3855>)
---
 debian/changelog                |  6 ++++++
 debian/quake.links              |  2 ++
 debian/quake2.lintian-overrides |  4 ++++
 debian/quake3.lintian-overrides |  3 +++
 quake-armagon.desktop           |  2 +-
 quake-dissolution.desktop       |  2 +-
 quake.6                         |  9 ++++++++-
 quake.in                        | 11 +++++++++++
 quake2-groundzero.desktop       |  2 +-
 quake2-reckoning.desktop        |  2 +-
 quake2.6                        |  9 ++++++++-
 quake2.in                       | 11 +++++++++++
 quake3-team-arena.desktop       |  2 +-
 quake3.6                        | 11 ++++++++++-
 quake3.in                       | 12 ++++++++++++
 15 files changed, 80 insertions(+), 8 deletions(-)

diff --git a/debian/changelog b/debian/changelog
index 858aced..2708fc0 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -16,6 +16,12 @@ quake (17) UNRELEASED; urgency=medium
   * d/copyright: mention the idTech4 games, and Alexandre's contributions
   * d/control: remove Suggests on quake4-pb-bin, which is disabled in
     game-data-packager to avoid CVE-2007-5248
+  * quake, quake2, quake3: if launched via a symlink whose name
+    contains armagon, hipnotic, etc., run the appropriate expansion pack
+  * quake.desktop, quake2.desktop, quake3.desktop: run each expansion
+    pack via a different symbolic link. This is a workaround for Steam
+    ignoring command-line options when adding a non-Steam shortcut
+    (<https://github.com/ValveSoftware/steam-for-linux/issues/3855>)
 
  -- Simon McVittie <smcv at debian.org>  Thu, 10 Dec 2015 00:44:21 +0100
 
diff --git a/debian/quake.links b/debian/quake.links
new file mode 100644
index 0000000..684885f
--- /dev/null
+++ b/debian/quake.links
@@ -0,0 +1,2 @@
+usr/games/quake usr/share/games/quake/quake-armagon
+usr/games/quake usr/share/games/quake/quake-dissolution
diff --git a/debian/quake2.lintian-overrides b/debian/quake2.lintian-overrides
index cd72da5..336bbfe 100644
--- a/debian/quake2.lintian-overrides
+++ b/debian/quake2.lintian-overrides
@@ -1,2 +1,6 @@
 # verbatim quote
 quake2 binary: spelling-error-in-copyright ment meant
+# these are in the -data package from game-data-packager and we have an
+# appropriate TryExec
+quake2 binary: desktop-command-not-in-package usr/share/applications/quake2-groundzero.desktop usr/share/games/quake2/quake2-groundzero
+quake2 binary: desktop-command-not-in-package usr/share/applications/quake2-reckoning.desktop usr/share/games/quake2/quake2-reckoning
diff --git a/debian/quake3.lintian-overrides b/debian/quake3.lintian-overrides
index e9bf854..d663470 100644
--- a/debian/quake3.lintian-overrides
+++ b/debian/quake3.lintian-overrides
@@ -1,2 +1,5 @@
 # verbatim quote
 quake3 binary: spelling-error-in-copyright ment meant
+# this is in the -data package from game-data-packager and we have an
+# appropriate TryExec
+quake3 binary: desktop-command-not-in-package usr/share/applications/quake3-team-arena.desktop usr/share/games/quake3-team-arena-data/quake3-team-arena
diff --git a/quake-armagon.desktop b/quake-armagon.desktop
index 387ae44..c86b2b1 100644
--- a/quake-armagon.desktop
+++ b/quake-armagon.desktop
@@ -5,6 +5,6 @@ Name=Quake: Scourge of Armagon
 Comment=Mission Pack 1 for the classic first person shooter
 Icon=quake-armagon
 TryExec=/usr/share/games/quake/hipnotic-tryexec.sh
-Exec=/usr/games/quake -hipnotic
+Exec=/usr/share/games/quake/quake-armagon
 Categories=Game;ActionGame;
 Keywords=first person shooter;fps;3d;deathmatch;hipnotic;mission pack 1;
diff --git a/quake-dissolution.desktop b/quake-dissolution.desktop
index 444a2c1..3b09feb 100644
--- a/quake-dissolution.desktop
+++ b/quake-dissolution.desktop
@@ -5,6 +5,6 @@ Name=Quake: Dissolution of Eternity
 Comment=Mission Pack 2 for the classic first person shooter
 Icon=quake-dissolution
 TryExec=/usr/share/games/quake/rogue-tryexec.sh
-Exec=/usr/games/quake -rogue
+Exec=/usr/share/games/quake/quake-dissolution
 Categories=Game;ActionGame;
 Keywords=first person shooter;fps;3d;deathmatch;rogue;mission pack 2;
diff --git a/quake.6 b/quake.6
index 987f8ed..2699e7f 100644
--- a/quake.6
+++ b/quake.6
@@ -2,7 +2,7 @@
 .\" First parameter, NAME, should be all caps
 .\" Second parameter, SECTION, should be 1-8, maybe w/ subsection
 .\" other parameters are allowed: see man(7), man(1)
-.TH QUAKE 6 "2011-06-22"
+.TH QUAKE 6 "2016-01-16"
 .\" Please adjust this date whenever revising the manpage.
 .\"
 .\" Some roff macros, for reference:
@@ -42,6 +42,13 @@ Consult the engine documentation for full details, but most engines support a
 syntax whereby engine switches are prefixed with a minus sign, and you can
 give console commands by prefixing with a plus sign.  See the examples section
 for some common cases.
+.PP
+Additionally, if \fBquake\fR is run via a symbolic link whose name contains
+\fBarmagon\fR, \fBhipnotic\fR, \fBdissolution\fR or \fBrogue\fR,
+it will play one of the Quake mission packs, \fBScourge of Armagon\fR
+(by Hipnotic Software) or \fBDissolution of Eternity\fR (by Rogue
+Entertainment). This requires that additional data files are
+installed.
 .SH OPTIONS
 These options are accepted for \fBWRAPPER-OPTIONS\fR in the
 synopsis.
diff --git a/quake.in b/quake.in
index 066ad59..ff7f4c3 100644
--- a/quake.in
+++ b/quake.in
@@ -11,6 +11,17 @@ 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
+            ;;
+    esac
+
     while [ $# -gt 0 ]; do
         case "$1" in
             -h|--help)
diff --git a/quake2-groundzero.desktop b/quake2-groundzero.desktop
index c9a76a5..20b138c 100644
--- a/quake2-groundzero.desktop
+++ b/quake2-groundzero.desktop
@@ -5,6 +5,6 @@ Name=Quake II MP2: Ground Zero
 Comment=Mission Pack 2 for the classic first person shooter
 Icon=quake2-groundzero
 TryExec=/usr/share/games/quake2/quake2-groundzero
-Exec=/usr/games/quake2 +set game rogue
+Exec=/usr/share/games/quake2/quake2-groundzero
 Categories=Game;ActionGame;
 Keywords=first person shooter;fps;3d;deathmatch;rogue entertainment;mission pack 2;
diff --git a/quake2-reckoning.desktop b/quake2-reckoning.desktop
index cf99cd4..379721a 100644
--- a/quake2-reckoning.desktop
+++ b/quake2-reckoning.desktop
@@ -5,6 +5,6 @@ Name=Quake II MP1: The Reckoning
 Comment=Mission Pack 1 for the classic first person shooter
 Icon=quake2-reckoning
 TryExec=/usr/share/games/quake2/quake2-reckoning
-Exec=/usr/games/quake2 +set game xatrix
+Exec=/usr/share/games/quake2/quake2-reckoning
 Categories=Game;ActionGame;
 Keywords=first person shooter;fps;3d;deathmatch;xatrix entertainment;mission pack 1;
diff --git a/quake2.6 b/quake2.6
index 7f2eb06..968a969 100644
--- a/quake2.6
+++ b/quake2.6
@@ -1,5 +1,5 @@
 .\"                                      Hey, EMACS: -*- nroff -*-
-.TH QUAKE2 6 "2013-09-25"
+.TH QUAKE2 6 "2016-01-16"
 .SH NAME
 quake2 \- classic first person shooter
 .SH SYNOPSIS
@@ -23,6 +23,13 @@ This wrapper script accepts a few GNU-style options.
 Any further arguments are passed to the engine unmodified.
 Consult the engine documentation for full details, but most engines support a
 syntax where you can give console commands by prefixing with a plus sign.
+.PP
+Additionally, if \fBquake2\fR is run via a symbolic link whose name
+contains \fBreckoning\fR, \fBxatrix\fR, \fBgroundzero\fR or \fBrogue\fR,
+it will play one of the Quake II mission packs, \fBThe Reckoning\fR
+(by Xatrix Entertainment) or \fBGround Zero\fR (by Rogue
+Entertainment). This requires that additional data files are
+installed.
 .SH OPTIONS
 These options are accepted for \fBWRAPPER-OPTIONS\fR in the
 synopsis.
diff --git a/quake2.in b/quake2.in
index a4d5ef1..082be9e 100644
--- a/quake2.in
+++ b/quake2.in
@@ -13,6 +13,17 @@ 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)
diff --git a/quake3-team-arena.desktop b/quake3-team-arena.desktop
index faef032..a6b717f 100644
--- a/quake3-team-arena.desktop
+++ b/quake3-team-arena.desktop
@@ -2,7 +2,7 @@
 Version=1.0
 Name=Quake III: Team Arena
 TryExec=/usr/share/games/quake3-team-arena-data/quake3-team-arena
-Exec=/usr/games/quake3 --quiet +set fs_game missionpack
+Exec=/usr/share/games/quake3-team-arena-data/quake3-team-arena --quiet
 Icon=quake3-teamarena
 Comment=Expansion pack for Quake III Arena
 Terminal=false
diff --git a/quake3.6 b/quake3.6
index ff3defb..a31fa06 100644
--- a/quake3.6
+++ b/quake3.6
@@ -1,4 +1,4 @@
-.TH QUAKE3 6 2010-10-15
+.TH QUAKE3 6 2016-01-16
 
 .SH NAME
 quake3 \- Quake III Arena client
@@ -22,6 +22,15 @@ Display a short help summary
 .TP
 \fB\-q\fR, \fB\-\-quiet\fR
 Disable all console output
+.TP
+\fB\-\-demo\fR
+Run the demo version, even if the full game is installed
+.PP
+Additionally, if \fBquake3\fR is run via a symbolic link whose name
+contains \fBteam-arena\fR or \fBteamarena\fR, it will play the expansion pack,
+\fBQuake III Team Arena\fR. This requires that additional data files are
+installed. Similarly, a symbolic link containing \fBdemo\fR is equivalent
+to the \fB\-\-demo\fR option.
 .PP
 Any console command can also be prefixed with \fB+\fR and used as a
 command-line option (press Shift+Esc to access the in-game console), including:
diff --git a/quake3.in b/quake3.in
index a645e2e..668bcb5 100644
--- a/quake3.in
+++ b/quake3.in
@@ -29,7 +29,19 @@ Usage: ${IOQ3SELF} [OPTION]...\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}

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-games/game-data-packager.git



More information about the Pkg-games-commits mailing list