[game-data-packager] 01/02: Add support for doing the Quake packages via YAML
Simon McVittie
smcv at debian.org
Sun Jan 4 18:39:07 UTC 2015
This is an automated email from the git hooks/post-receive script.
smcv pushed a commit to branch wip/quake
in repository game-data-packager.
commit 327258baf2a4482ee7e8f08faa3fe436ee4139df
Author: Simon McVittie <smcv at debian.org>
Date: Sat Jan 3 20:14:00 2015 +0000
Add support for doing the Quake packages via YAML
Music is still done via shell script: the declarative stuff doesn't
support ripping CDs yet.
---
data/quake-registered.wip | 122 ---------------------------------
data/quake.yaml | 167 ++++++++++++++++++++++++++++++++++++++++++++++
quake.mk | 12 +++-
supported/quake | 8 ++-
4 files changed, 184 insertions(+), 125 deletions(-)
diff --git a/data/quake-registered.wip b/data/quake-registered.wip
deleted file mode 100644
index 7bb5414..0000000
--- a/data/quake-registered.wip
+++ /dev/null
@@ -1,122 +0,0 @@
-%YAML 1.2
----
-# This file is not used yet: the YAML-driven code does not support
-# everything it needs. It's just a sketch of how this could look later.
-
-package: quake-registered
-demo_package: quake-shareware
-install_to: usr/share/games/quake
-
-files:
- id1/pak0.pak_106:
- install_as: id1/pak0.pak
- in_demo: true
- md5: 5906e5998fc3d896ddaf5e6a62e03abb
-
- # FIXME: is this actually any use?
- id1/pak0.pak_101:
- md5: 85fc9cee2035b66290da1e33be2ac86b
-
- id1/pak1.pak:
- install: true
- # the same in 1.06 and 1.01
- md5: d76b3e5678f0b64ac74ce5e340e6a685
-
-files:
- q101_int.1:
- provides:
- # FIXME: which one is in here?
- - id1/pak0.pak_FIXME
- - id1/pak1.pak
- requires: q101_int.2
- md5: 752f49131bb3ba832346e873c1bcfdc6
- unpack:
- format: cat
- recurse: q101_int_1+2.exe
-
- q101_int_1+2.exe:
- provides:
- # FIXME: which one is in here?
- - id1/pak0.pak_FIXME
- - id1/pak1.pak
- unpack:
- format: lha
-
- q101_int.2:
- md5: 9ed67b39020575771e29645d977c9216
-
- quake106.zip:
- provides:
- - id1/pak0.pak_106
- download:
- idstuff-mirrors:
- path: quake
- sha256: ec6c9d34b1ae0252ac0066045b6611a7919c2a0d78a3a66d9387a8f597553239
- unpack:
- format: zip
- recurse: resource.1
-
- resource.1:
- provides:
- - id1/pak0.pak_106
- unpack:
- format: lha
-
-addons:
- quake-music:
- install_to: usr/share/games/quake/id1/music
- rip_cd:
- encoding: vorbis
- filename_format: track%02d.ogg
- first_track: 2
- last_track: 9
-
- quake-armagon-music:
- install_to: usr/share/games/quake/hipnotic/music
- rip_cd:
- encoding: vorbis
- filename_format: track%02d.ogg
- first_track: 2
- last_track: 9
-
- quake-dissolution-music:
- install_to: usr/share/games/quake/rogue/music
- rip_cd:
- encoding: vorbis
- filename_format: track%02d.ogg
- first_track: 2
- last_track: 9
-
- quake-armagon:
- files:
- hipnotic/pak0.pak:
- alternatives:
- - hipnotic/pak0.pak_cd
- - hipnotic/pak0.pak_glquake_compatible
-
- hipnotic/pak0.pak_cd:
- md5: 0ab83681aaf841c4320269e02941a14a
-
- hipnotic/pak0.pak_glquake_compatible:
- # http://speeddemosarchive.com/quake/qdq/movies/sds.html
- md5: f05b7452ae725e060fb3d14f7731fb00
-
- quake-dissolution:
- files:
- rogue/pak0.pak:
- alternatives:
- - rogue/pak0.pak_cd
- - rogue/pak0.pak_steam
- - rogue/pak0.pak_both_packs_cd
-
- rogue/pak0.pak_cd:
- md5: f8898a483b131de21581656c94f3c1a4
-
- rogue/pak0.pak_steam:
- md5: f71428763229bdb373f00a547296efe3
-
- rogue/pak0.pak_both_packs_cd:
- md5: c38a4e04219c317cd1b02f386bdfe11f
-
-...
-# vim:set sw=2 sts=2 et:
diff --git a/data/quake.yaml b/data/quake.yaml
new file mode 100644
index 0000000..e6ce670
--- /dev/null
+++ b/data/quake.yaml
@@ -0,0 +1,167 @@
+%YAML 1.2
+---
+packages:
+ quake-registered:
+ type: full
+ install_to: usr/share/games/quake
+ install:
+ - id1/pak0.pak_106
+ - id1/pak1.pak
+
+ quake-shareware:
+ type: demo
+ install_to: usr/share/games/quake
+ install:
+ - id1/pak0.pak_106
+
+ quake-armagon:
+ type: expansion
+ install_files:
+ hipnotic/pak0.pak:
+ alternatives:
+ - hipnotic/pak0.pak_cd
+ - hipnotic/pak0.pak_sds_patched
+
+ quake-dissolution:
+ install_files:
+ rogue/pak0.pak:
+ alternatives:
+ - rogue/pak0.pak_cd
+ - rogue/pak0.pak_steam_20110426
+ - rogue/pak0.pak_both_packs_cd
+
+ rogue/pak0.pak_cd:
+ distinctive_name: false
+ md5: f8898a483b131de21581656c94f3c1a4
+
+ rogue/pak0.pak_steam_20110426:
+ distinctive_name: false
+ md5: f71428763229bdb373f00a547296efe3
+
+ # This is also the version available on Steam, as of 2015-01-03.
+ rogue/pak0.pak_both_packs_cd:
+ distinctive_name: false
+ md5: c38a4e04219c317cd1b02f386bdfe11f
+
+files:
+ hipnotic/pak0.pak_cd:
+ look_for:
+ - hipnotic/pak0.pak
+ distinctive_name: false
+ size: 35527205
+
+ # http://speeddemosarchive.com/quake/qdq/movies/sds.html
+ hipnotic/pak0.pak_sds_patched:
+ look_for:
+ - hipnotic/pak0.pak
+ distinctive_name: false
+
+ id1/pak0.pak_106:
+ install_as: id1/pak0.pak
+ size: 18689235
+ distinctive_name: false
+
+ id1/pak1.pak:
+ size: 34257856
+
+ # This is not actually any use to us; included for completeness only
+ id1/pak0.pak_101:
+ md5: 85fc9cee2035b66290da1e33be2ac86b
+
+ # Original Quake CD-ROMs apparently contain this.
+ q101_int.1:
+ provides:
+ - q101_int_1+2.exe
+ md5: 752f49131bb3ba832346e873c1bcfdc6
+ unpack:
+ format: cat
+ later_parts:
+ - q101_int.2
+
+ q101_int_1+2.exe:
+ # FIXME: this should also contain one of the flavours of pak0.pak.
+ # Which one is it?
+ skip_hash_matching: true
+ provides:
+ - id1/pak1.pak
+ unpack:
+ format: lha
+ unpack:
+ - id1/pak1.pak
+
+ q101_int.2:
+ md5: 9ed67b39020575771e29645d977c9216
+
+ quake106.zip:
+ provides:
+ - quake106.zip_resource.1
+ download:
+ idstuff-mirrors:
+ path: quake
+ unpack:
+ format: zip
+
+ quake106.zip_resource.1:
+ look_for:
+ - resource.1
+ provides:
+ - id1/pak0.pak_106
+ unpack:
+ format: lha
+ unpack:
+ - id1/pak0.pak
+
+# FIXME: this part isn't used yet
+music:
+ quake-music:
+ install_to: usr/share/games/quake/id1/music
+ rip_cd:
+ encoding: vorbis
+ filename_format: track%02d.ogg
+ first_track: 2
+ last_track: 9
+
+ quake-armagon-music:
+ install_to: usr/share/games/quake/hipnotic/music
+ rip_cd:
+ encoding: vorbis
+ filename_format: track%02d.ogg
+ first_track: 2
+ last_track: 9
+
+ quake-dissolution-music:
+ install_to: usr/share/games/quake/rogue/music
+ rip_cd:
+ encoding: vorbis
+ filename_format: track%02d.ogg
+ first_track: 2
+ last_track: 9
+
+md5sums: |
+ 0ab83681aaf841c4320269e02941a14a hipnotic/pak0.pak_cd
+ f05b7452ae725e060fb3d14f7731fb00 hipnotic/pak0.pak_sds_patched
+ 5906e5998fc3d896ddaf5e6a62e03abb id1/pak0.pak_106
+ d76b3e5678f0b64ac74ce5e340e6a685 id1/pak1.pak
+ c38a4e04219c317cd1b02f386bdfe11f rogue/pak0.pak_both_packs_cd
+ 8cee4d03ee092909fdb6a4f84f0c1357 quake106.zip
+ 994d127ea51ba4bae1030cb7242806aa quake106.zip_resource.1
+
+sha1sums: |
+ 1b089a41dd0cf9268668a5072acfb858a7fb8cc2 hipnotic/pak0.pak_cd
+ 36b42dc7b6313fd9cabc0be8b9e9864840929735 id1/pak0.pak_106
+ 6fd0d1643047612f41afb2001b972d830c792921 id1/pak1.pak
+ 78df8ce771d1bef5eb9da3d51c7628b11b4ae2c8 rogue/pak0.pak_both_packs_cd
+ f8a1a509b094ccdbed3c54b96f7d9b351c0898f5 quake106.zip
+ 5301abe61da5876aac74f8a112e0e66ff1ce1aea quake106.zip_resource.1
+
+
+sha256sums: |
+ 62b83569ba975015535be73407796ce0829ebcfa75a68fb29c67514649dc655f hipnotic/pak0.pak_cd
+ 35a9c55e5e5a284a159ad2a62e0e8def23d829561fe2f54eb402dbc0a9a946af id1/pak0.pak_106
+ 94e355836ec42bc464e4cbe794cfb7b5163c6efa1bcc575622bb36475bf1cf30 id1/pak1.pak
+ c3c40408f953e2de99f241dd85bf7854b69f1ae264b4e55a5657ef2ab12201a7 rogue/pak0.pak_both_packs_cd
+ ec6c9d34b1ae0252ac0066045b6611a7919c2a0d78a3a66d9387a8f597553239 quake106.zip
+ c192c9c71bee41750dd7d14c99378766d61e077977b9d13d1a457b8d9eabe34a quake106.zip_resource.1
+
+...
+# vim:set sw=2 sts=2 et:
diff --git a/quake.mk b/quake.mk
index 391f0c7..218d955 100644
--- a/quake.mk
+++ b/quake.mk
@@ -6,10 +6,10 @@ outdir = $(CURDIR)/out
QUAKEDEB = $(outdir)/$(PACKAGE)_$(VERSION)_all.deb
-ifeq ($(filter-out quake-music quake-%-music,$(PACKAGE)),)
-
all: do-$(PACKAGE)
+ifeq ($(filter-out quake-music quake-%-music,$(PACKAGE)),)
+
do-${PACKAGE}: do-common
install -m644 quake/quake-music.copyright ${outdir}/quake/${PACKAGE}.copyright
( \
@@ -30,6 +30,8 @@ clean:
else
+do-${PACKAGE}: ${QUAKEDEB} out/${PACKAGE}.control out/${PACKAGE}.copyright
+
$(QUAKEDEB): \
$(builddir)/$(PACKAGE)/DEBIAN/md5sums \
$(builddir)/$(PACKAGE)/DEBIAN/control \
@@ -75,6 +77,12 @@ $(builddir)/$(PACKAGE)/DEBIAN/control: quake-common/DEBIAN/control.in
echo Conflicts: quake-registered >> $@; \
fi
+out/${PACKAGE}.copyright: ${builddir}/${PACKAGE}/usr/share/doc/${PACKAGE}/copyright
+ install -m644 $< $@
+
+out/${PACKAGE}.control: ${builddir}/${PACKAGE}/DEBIAN/control
+ install -m644 $< $@
+
fixperms:
find $(builddir)/$(PACKAGE) -type f -print0 | xargs -0 chmod 644
find $(builddir)/$(PACKAGE) -type d -print0 | xargs -0 chmod 755
diff --git a/supported/quake b/supported/quake
index ad9618c..2fbffd5 100644
--- a/supported/quake
+++ b/supported/quake
@@ -105,7 +105,13 @@ verify_args() {
}
go() {
-
+ # Not the default because it doesn't yet support music
+ if [ -n "$GDP_PREFER_YAML" ]; then
+ . $LIBDIR/via-python
+ gdp_data_driven quake "$@"
+ return $?
+ fi
+
verify_args "$@"
case "$method" in
"guess")
--
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