Author: jmtd-guest Date: 2008-06-30 11:02:29 +0000 (Mon, 30 Jun 2008) New Revision: 7613
Modified: packages/branches/game-package/support_quake3/debian/control packages/branches/game-package/support_quake3/supported/quake3 Log: handle fetching the point release Modified: packages/branches/game-package/support_quake3/debian/control =================================================================== --- packages/branches/game-package/support_quake3/debian/control 2008-06-30 10:43:42 UTC (rev 7612) +++ packages/branches/game-package/support_quake3/debian/control 2008-06-30 11:02:29 UTC (rev 7613) @@ -9,7 +9,7 @@ Vcs-Browser: http://svn.debian.org/wsvn/pkg-games/packages/trunk/game-package/?op=log Package: game-package -Depends: fakeroot, sudo, gdebi +Depends: fakeroot, sudo, gdebi, wget Conflicts: doom-package Replaces: doom-package Architecture: all Modified: packages/branches/game-package/support_quake3/supported/quake3 =================================================================== --- packages/branches/game-package/support_quake3/supported/quake3 2008-06-30 10:43:42 UTC (rev 7612) +++ packages/branches/game-package/support_quake3/supported/quake3 2008-06-30 11:02:29 UTC (rev 7613) @@ -22,36 +22,65 @@ fi } +MIRRORFILE=/etc/quake3-mirrors +POINTFILE=linuxq3apoint-1.32b-3.x86.run + fetch_point_release() { - echo "fetch_point_release not implemented yet " >&2 - exit 1 + if [ -f ./etc/quake3-mirrors ]; then + MIRRORFILE=./etc/quake3-mirrors + fi + # XXX: take the bottom mirror. In future, have some generic + # mirror-handling code in game-package, and pick a random one + # (or offer up a choice) + mirror=`tail -n1 "$MIRRORFILE"` + + wget -O $WORKDIR/$POINTFILE $mirror/$POINTFILE } +find_pak0() { + # identify where pak0.pk3 is (underneath the CD-ROM mount-point) + # and set the relevant variable +} + +check_sums() { + POINTMD5=c71fdddccb20e8fc393d846e9c61d685 + SUM=`md5sum "$WORKDIR/$POINTFILE" | cut -d' ' -f1` + if [ "$SUM" != "$POINTMD5" ]; then + echo "error: $POINTFILE sum ($SUM) does not match expected sum" >&2 + echo "($POINTMD5)" >&2 + exit 1 + else + echo "sum is good" + fi + # TODO: also check pak0.pk3 + # TODO: roll a more advanced check_sums into the game-package-shared +} + +unpack_point() { + mkdir "$WORKDIR/unpacked" + ( + cd "$WORKDIR/unpacked" + dd if=$WORKDIR/$POINTFILE ibs=1 obs=1024 skip=8251 | + tar zx + ) + # now interested in $WORKDIR/unpacked/baseq3/pak[1-8].pk3 +} + go() { parse_args $* if [ "$NOPOINT" = "true" ] ; then fetch_point_release fi + find_pak0 + check_sums + exit 1 } # stuff imported from quake3-data postinst, to be integrated -POINTFILE=linuxq3apoint-1.32b-3.x86.run -POINTMD5=c71fdddccb20e8fc393d846e9c61d685 Q3TGZ=quake3.tar.gz BASEQ3=/usr/share/games/quake3/baseq3 # we need pak0.pk3 from the quake3 CD-ROM. It lives at # ./Quake3/baseq3/pak0.pk3 on a regular q3 cd and # ./baseq3/pak0.pk3 on a loki CD-ROM. - -# we need the point release. - wget -O $STORAGE/$POINTFILE $MIRROR/$POINTFILE -# - -# unpacking the point release: -# dd if=$STORAGE/$POINTFILE of=$STORAGE/$Q3TGZ ibs=1 obs=1024 skip=8251 > /dev/null 2>&1 -# cp $STORAGE/quake3/baseq3/pak[1-8].pk3 ... - -# mirrors -# ftp://ftp.idsoftware.com/idstuff/quake3/linux _______________________________________________ Pkg-games-commits mailing list [email protected] http://lists.alioth.debian.org/mailman/listinfo/pkg-games-commits

