[game-data-packager] 140/293: Define and use alternatives for quake-engine
Simon McVittie
smcv at debian.org
Fri Oct 14 00:12:07 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 0b37eda964c8c54edc240c95ed70896fa583026e
Author: Simon McVittie <smcv at debian.org>
Date: Wed Jul 6 23:20:10 2011 +0100
Define and use alternatives for quake-engine
Also define quake-engine-server, but do not use it, yet.
Also specifically depend on quake-registered | quake-shareware, not
on quake-data.
---
debian/control | 6 ++++--
debian/policy.txt | 49 +++++++++++++++++++++++++++++++++++++++++++++++++
quake.sh | 2 +-
3 files changed, 54 insertions(+), 3 deletions(-)
diff --git a/debian/control b/debian/control
index b63c28a..651daa3 100644
--- a/debian/control
+++ b/debian/control
@@ -8,11 +8,13 @@ Standards-Version: 3.9.2.0
Package: quake
Architecture: all
-Depends: ${misc:Depends}, quakespasm, quake-data | game-data-packager
+Depends: ${misc:Depends},
+ quakespasm | quake-engine,
+ quake-registered | quake-shareware | game-data-packager
Recommends: x11-utils | zenity | kdebase-bin
Description: classic first person shooter
This package contains a launcher script and menu entry to play
- Quake 1 with the Quakespasm engine.
+ Quake 1 with any suitable engine.
.
To make this package useful, you will need to create and install the
non-distributable quake-registered or quake-shareware package, by using the
diff --git a/debian/policy.txt b/debian/policy.txt
new file mode 100644
index 0000000..f0587c7
--- /dev/null
+++ b/debian/policy.txt
@@ -0,0 +1,49 @@
+Debian Quake mini-policy, version 1
+===================================
+
+Alternatives
+------------
+
+quake-engine is any Quake engine that, when run with -basedir DIR
+and optionally -hipnotic or -rogue (where DIR contains at least id1/pak0.pak),
+acts as a Quake client.
+
+quake-engine-server is any Quake engine that, when run with the command-line
+option -dedicated and the options above, acts as a Quake server. (By this
+definition, almost every quake-engine could also be a quake-engine-server, but
+engines where there is a separate server build with reduced dependencies
+do not need to register their client as a potential server.)
+
+Neither quake-engine nor quake-engine-server is really meant to be run
+directly, so the alternatives go in /usr/lib/quake:
+
+update-alternatives --quiet --install /usr/lib/quake/quake-engine \
+ quake-engine /usr/bin/MYENGINE 0
+update-alternatives --quiet --install /usr/lib/quake/quake-engine-server \
+ quake-engine-server /usr/bin/MYSERVER 0
+
+Quake engines do not generally share a dot-directory, so installing a "better"
+engine would hide user configuration and save-games. Accordingly, every
+implementation of the alternatives should register with priority 0, so that
+the first engine that the user installs is considered "best" by
+update-alternatives.
+
+Virtual packages
+----------------
+
+Packages providing quake-engine must implement the quake-engine alternative.
+
+Packages providing quake-engine-server must implement the quake-engine-server
+alternative.
+
+Non-Quake games
+---------------
+
+Games that use the Quake engine (like Nexuiz or OpenQuartz) should only depend
+on quake-engine or quake-engine-server, or use the corresponding alternatives,
+if they would run acceptably well on an unmodified id Quake engine with no
+community patches or extra features (so no JPEG textures, for instance).
+
+(For instance, Nexuiz relies on features from DarkPlaces, which is its
+"official" engine, so it should depend on darkplaces directly and not rely
+on quake-engine.)
diff --git a/quake.sh b/quake.sh
index adec96d..8c0e586 100644
--- a/quake.sh
+++ b/quake.sh
@@ -3,7 +3,7 @@
# quake.sh - launcher script for quake 1
data_location=/usr/share/games/quake
-engine_path=/usr/games/quakespasm
+engine_path=/usr/lib/quake/quake-engine
no_data_msg="Missing data; see /usr/share/doc/quake/README.Debian"
main() {
--
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