[SCM] Installer for game data files branch, quake, updated. 96ca7132050fb5efd8d92a7f7c5a374a234f002d
Jon Dowland
jmtd at debian.org
Tue Apr 5 21:05:54 UTC 2011
The following commit has been merged in the quake branch:
commit a745f905812557a6b2b3ced5bd7e4f866dea0f2e
Author: Jon Dowland <jmtd at debian.org>
Date: Tue Apr 5 21:47:14 2011 +0100
implement building the template quake .deb
diff --git a/Makefile b/Makefile
index ce6cbe1..6225d4e 100644
--- a/Makefile
+++ b/Makefile
@@ -10,6 +10,7 @@ default: $(DIRS)
make -f doom-common.mk IWAD=plutonia \
LONG="Final Doom: The Plutonia Experiment" VERSION=$(VERSION)
make -f quake3.mk LONG="Quake III Arena" VERSION=$(VERSION)
+ make -f quake.mk LONG="Quake" VERSION=$(VERSION)
make -f rott.mk VERSION=$(VERSION)
make -f doom-common.mk IWAD=heretic VERSION=$(VERSION) \
CONTROLIN=heretic/DEBIAN/control.in \
@@ -27,6 +28,7 @@ clean:
make -f doom-common.mk IWAD=plutonia \
LONG="Final Doom: The Plutonia Experiment" VERSION=$(VERSION) clean
make -f quake3.mk LONG="Quake III Arena" VERSION=$(VERSION) clean
+ make -f quake.mk LONG="Quake" VERSION=$(VERSION) clean
make -f rott.mk VERSION=$(VERSION) clean
make -f doom-common.mk IWAD=heretic VERSION=$(VERSION) \
CONTROLIN=heretic/DEBIAN/control.in \
diff --git a/quake-data/DEBIAN/control.in b/quake-data/DEBIAN/control.in
new file mode 100644
index 0000000..7786a56
--- /dev/null
+++ b/quake-data/DEBIAN/control.in
@@ -0,0 +1,16 @@
+Package: quake-data
+Version: VERSION
+Section: non-free/games
+Priority: optional
+Architecture: all
+Recommends: quake-engine
+Installed-Size: 500000
+Maintainer: Debian Games Team <pkg-games-devel at lists.alioth.debian.org>
+Description: Quake commercial data files
+ Quake requires an engine and game data to play. This package contains
+ the commercial data from id Software's game "Quake", and was generated
+ using the "game-data-packager" program from the Debian package of
+ the same name.
+ .
+ To play Quake using this data, install a package providing the
+ "quake-engine" virtual package.
diff --git a/quake3-data/copyright.in b/quake-data/copyright.in
similarity index 80%
copy from quake3-data/copyright.in
copy to quake-data/copyright.in
index 52ad291..f6036c2 100644
--- a/quake3-data/copyright.in
+++ b/quake-data/copyright.in
@@ -1,9 +1,10 @@
The PACKAGE package was generated using game-data-packager.
-Copyright (C) 2008, 2009 Jon Dowland <jmtd at debian.org>.
+Copyright © 2008-2011 Jon Dowland <jmtd at debian.org>.
-The pk3 files under "/usr/share/games/quake3" are user-supplied
+The pak files under "/usr/share/games/quake" are user-supplied
files that are not covered by the copyright or licence of this
-package; they are copyright (c) 1999 by id Software, all rights reserved.
+package; they are copyright (c) 1996 by id Software, all rights
+reserved.
The remainder of this package is covered by the following
Licence:
diff --git a/quake.mk b/quake.mk
new file mode 100644
index 0000000..1516e86
--- /dev/null
+++ b/quake.mk
@@ -0,0 +1,45 @@
+# VERSION must be supplied by caller
+
+srcdir = $(CURDIR)
+builddir = $(CURDIR)/build
+outdir = $(CURDIR)/out
+
+QUAKEDEB = $(outdir)/quake-data_$(VERSION)_all.deb
+
+$(QUAKEDEB): \
+ $(builddir)/quake-data/DEBIAN/md5sums \
+ $(builddir)/quake-data/DEBIAN/control \
+ fixperms
+ install -d $(builddir)/quake-data/usr/share/games/quake/id1
+ cd $(builddir) && \
+ if [ `id -u` -eq 0 ]; then \
+ dpkg-deb -b quake-data $@ ; \
+ else \
+ fakeroot dpkg-deb -b quake-data $@ ; \
+ fi
+
+$(builddir)/quake-data/DEBIAN/md5sums: \
+ $(builddir)/quake-data/usr/share/doc/quake-data/changelog.gz \
+ $(builddir)/quake-data/usr/share/doc/quake-data/copyright
+ install -d `dirname $@`
+ cd $(builddir)/quake-data && find usr/ -type f -print0 |\
+ xargs -0 md5sum >DEBIAN/md5sums
+
+$(builddir)/quake-data/usr/share/doc/quake-data/changelog.gz:
+ install -d `dirname $@`
+ gzip -c9 debian/changelog > $@
+
+$(builddir)/quake-data/usr/share/doc/quake-data/copyright:
+ install -d `dirname $@`
+ m4 -DPACKAGE=$(PACKAGE) quake-data/copyright.in > $@
+
+$(builddir)/quake-data/DEBIAN/control: quake-data/DEBIAN/control.in
+ install -d `dirname $@`
+ m4 -DVERSION=$(VERSION) < quake-data/DEBIAN/control.in > $@
+
+fixperms:
+ find $(builddir)/quake-data -type f -print0 | xargs -0 chmod 644
+ find $(builddir)/quake-data -type d -print0 | xargs -0 chmod 755
+
+clean:
+ rm -rf $(QUAKEDEB) $(builddir)/quake-data
diff --git a/supported/quake b/supported/quake
index 7655b88..9bcb8f2 100644
--- a/supported/quake
+++ b/supported/quake
@@ -90,10 +90,23 @@ dir_method() {
common_method
}
+DEBBASE="quake-data_${GAME_PACKAGE_VERSION}_all.deb"
+DEB="$DATADIR/$DEBBASE"
+
common_method() {
pak0sum=85fc9cee2035b66290da1e33be2ac86b
pak1sum=d76b3e5678f0b64ac74ce5e340e6a685
verify_md5sum "$pak0" "$pak0sum"
verify_md5sum "$pak1" "$pak1sum"
- die "remainder not implemented yet"
+
+ OUTFILE=`unravel "$OUTDIR"`"/$DEBBASE"
+ cp -p "$DEB" "$OUTFILE"
+
+ slipstream_permcheck "$OUTFILE"
+ slipstream_unpack "$OUTFILE"
+ slipstream_file "$pak0" "usr/share/games/quake/id1/pak0.pak"
+ slipstream_file "$pak1" "usr/share/games/quake/id1/pak1.pak"
+ slipstream_instsize
+ slipstream_repack "$OUTFILE"
+ slipstream_cleanup
}
--
Installer for game data files
More information about the Pkg-games-commits
mailing list