summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'games-fps/quake2-data/quake2-data-3.20.ebuild')
-rw-r--r--games-fps/quake2-data/quake2-data-3.20.ebuild87
1 files changed, 87 insertions, 0 deletions
diff --git a/games-fps/quake2-data/quake2-data-3.20.ebuild b/games-fps/quake2-data/quake2-data-3.20.ebuild
new file mode 100644
index 000000000000..4bac1cd90392
--- /dev/null
+++ b/games-fps/quake2-data/quake2-data-3.20.ebuild
@@ -0,0 +1,87 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=2
+inherit unpacker eutils cdrom games
+
+DESCRIPTION="iD Software's Quake 2 ... the data files"
+HOMEPAGE="http://www.idsoftware.com/"
+SRC_URI="mirror://idsoftware/quake2/q2-${PV}-x86-full-ctf.exe"
+
+LICENSE="Q2EULA"
+SLOT="0"
+KEYWORDS="~alpha amd64 ~ia64 ppc sparc x86 ~x86-fbsd"
+IUSE="videos"
+
+DEPEND="app-arch/unzip"
+RDEPEND=""
+
+S=${WORKDIR}
+
+pkg_setup() {
+ games_pkg_setup
+ if has_version "games-fps/quake2-demodata[symlink]" ; then
+ eerror "The symlink for the demo data conflicts with the cdinstall data"
+ die "Unmerge games-fps/quake2-demodata to remove the conflict"
+ fi
+}
+
+src_unpack() {
+ export CDROM_NAME_SET=("Existing Install" "Ultimate Quake Edition" "Quake2 CD" "Quake4 Bonus DVD")
+ cdrom_get_cds baseq2:Install/patch:Install:Movies
+ # The .exe is just a self-extracting .zip
+ unpack_zip ${A}
+}
+
+src_install() {
+ dodoc DOCS/* 3.20_Changes.txt
+ newdoc ctf/readme.txt ctf-readme.txt
+ case ${CDROM_SET} in
+ 0) dohtml -r "${CDROM_ROOT}"/Install/DOCS/quake2_manual/* ;;
+ 1) dohtml -r "${CDROM_ROOT}"/Install/Docs/quake2_manual/* ;;
+ 2) dohtml -r "${CDROM_ROOT}"/Install/DOCS/quake2_manual/* ;;
+ 3) dodoc "${CDROM_ROOT}"/Docs/* ;;
+ esac
+
+ local baseq2_cdpath
+ case ${CDROM_SET} in
+ 0) baseq2_cdpath=${CDROM_ROOT}/baseq2;;
+ 1) baseq2_cdpath=${CDROM_ROOT}/Install/Data/baseq2;;
+ 2) baseq2_cdpath=${CDROM_ROOT}/Install/Data/baseq2;;
+ 3) baseq2_cdpath=${CDROM_ROOT}/setup/Data/baseq2;;
+ esac
+
+ dodir "${GAMES_DATADIR}"/quake2/baseq2
+
+ if use videos ; then
+ insinto "${GAMES_DATADIR}"/quake2/baseq2/video
+ doins "${baseq2_cdpath}"/video/* || die "doins videos"
+ fi
+
+ insinto "${GAMES_DATADIR}"/quake2/baseq2
+ doins "${baseq2_cdpath}"/pak0.pak || die "couldnt grab pak0.pak"
+ doins baseq2/*.pak || die "couldnt grab release paks"
+ doins baseq2/maps.lst || die "couldnt grab maps.lst"
+ dodir "${GAMES_DATADIR}"/quake2/baseq2/players
+ cp -R "${baseq2_cdpath}"/players/* baseq2/players/* \
+ "${D}/${GAMES_DATADIR}"/quake2/baseq2/players/ || die "couldnt grab player models"
+
+ for mod in ctf rogue xatrix ; do
+ if [[ -d ${baseq2_cdpath}/../${mod} ]] ; then
+ if use videos && [[ -d ${baseq2_cdpath}/../${mod}/video ]] ; then
+ insinto "${GAMES_DATADIR}"/quake2/${mod}/video
+ doins "${baseq2_cdpath}"/../${mod}/video/* 2>/dev/null
+ fi
+ if [[ -n $(ls "${baseq2_cdpath}"/../${mod}/*.pak 2>/dev/null) ]] ; then
+ insinto "${GAMES_DATADIR}"/quake2/${mod}
+ doins "${baseq2_cdpath}"/../${mod}/*.pak || die "doins ${mod} pak"
+ fi
+ fi
+ done
+
+ insinto "${GAMES_DATADIR}"/quake2/ctf
+ doins ctf/*.{cfg,ico,pak} || die "couldnt grab ctf"
+
+ prepgamesdirs
+}