diff options
Diffstat (limited to 'games-fps/unreal-tournament-goty/unreal-tournament-goty-436.ebuild')
-rw-r--r-- | games-fps/unreal-tournament-goty/unreal-tournament-goty-436.ebuild | 169 |
1 files changed, 169 insertions, 0 deletions
diff --git a/games-fps/unreal-tournament-goty/unreal-tournament-goty-436.ebuild b/games-fps/unreal-tournament-goty/unreal-tournament-goty-436.ebuild new file mode 100644 index 000000000000..5bf39103557a --- /dev/null +++ b/games-fps/unreal-tournament-goty/unreal-tournament-goty-436.ebuild @@ -0,0 +1,169 @@ +# Copyright 1999-2017 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=5 + +inherit eutils unpacker cdrom games + +DESCRIPTION="Futuristic FPS (Game Of The Year edition)" +HOMEPAGE="http://www.oldunreal.com/" +SRC_URI="http://www.ut-files.com/Patches/ut-install-${PV}-GOTY.run + http://www.ut-files.com/Patches/ipdrv-${PV}-linux-08-20-02.zip -> IpDrv-${PV}-Linux-08-20-02.zip" + +LICENSE="all-rights-reserved" +SLOT="0" +KEYWORDS="x86" +IUSE="3dfx S3TC nls opengl" +RESTRICT="mirror bindist" + +DEPEND="!games-fps/unreal-tournament + app-arch/unzip +" +RDEPEND=" + opengl? ( virtual/opengl[abi_x86_32(-)] ) + x11-libs/libXext[abi_x86_32(-)] + x11-libs/libX11[abi_x86_32(-)] + x11-libs/libXau[abi_x86_32(-)] + x11-libs/libXdmcp[abi_x86_32(-)] +" + +S=${WORKDIR} + +src_unpack() { + cdrom_get_cds System/ Help/chaosut + unpack_makeself ut-install-${PV}-GOTY.run + unpack IpDrv-${PV}-Linux-08-20-02.zip +} + +src_install() { + local dir=${GAMES_PREFIX_OPT}/${PN/-goty/} + local Ddir=${D}/${dir} + dodir "${dir}" + + ########### + ### PRE ### + # System + if use 3dfx ; then + tar -zxf Glide.ini.tar.gz -C "${Ddir}" || die "install Glide ini" + else + tar -zxf OpenGL.ini.tar.gz -C "${Ddir}" || die "install OpenGL ini" + fi + tar -zxf data.tar.gz -C "${Ddir}" || die "extract System data" + + # the most important things, ucc & ut :) + exeinto "${dir}" + doexe bin/x86/{ucc,ut} || die "install ucc/ut" + sed -i -e "s:\`FindPath \$0\`:${dir}:" "${ED}/${dir}"/ucc || die + + # export some symlinks so ppl can run + dodir "${GAMES_BINDIR}" + dosym "${dir}"/ucc "${GAMES_BINDIR}"/ucc + dosym "${dir}"/ut "${GAMES_BINDIR}"/ut + ### PRE ### + ########### + + ########### + ### CD1 ### + # Help, Logs, Music, Sounds, Textures, Web + cp -rf "${CDROM_ROOT}"/{Help,Logs,Music,Textures,Web} "${Ddir}"/ || die "copy Help, Logs, Music, Textures, Web CD1" + dodir "${dir}"/Sounds + if use nls ; then + cp -rf "${CDROM_ROOT}"/Sounds/* "${Ddir}"/Sounds/ || die "copy Sounds CD1" + else + cp -rf "${CDROM_ROOT}"/Sounds/*.uax "${Ddir}"/Sounds/ || die "copy Sounds CD1" + fi + + # System + dodir "${dir}"/System + if use nls ; then + cp "${CDROM_ROOT}"/System/*.{est,frt,itt,int,u} "${Ddir}"/System/ || die "copy System data CD1" + else + cp "${CDROM_ROOT}"/System/*.{int,u} "${Ddir}"/System/ || die "copy System data CD1" + fi + + # now we uncompress the maps + einfo "Uncompressing CD1 Maps ... this may take some time" + dodir "${dir}"/Maps + cd "${Ddir}" + export HOME=${T} + export UT_DATA_PATH="${Ddir}"/System + for f in `find "${CDROM_ROOT}"/Maps/ -name '*.uz' -printf '%f '` ; do + ./ucc decompress "${CDROM_ROOT}"/Maps/${f} -nohomedir || die "uncompressing map CD1 ${f}" + mv System/${f:0:${#f}-3} Maps/ || die "copy map CD1 ${f}" + done + ### CD1 ### + ########### + + ### Have user switch cds if need be ### + cdrom_load_next_cd + + ########### + ### CD2 ### + # Help, Sounds + cp -rf "${CDROM_ROOT}"/{Help,Sounds} "${Ddir}"/ || die "copy Help, Sounds CD2" + + # S3TC Textures + if use S3TC ; then + cp -rf "${CDROM_ROOT}"/Textures "${Ddir}"/ || die "copy S3TC Textures CD2" + else + cp -rf "${CDROM_ROOT}"/Textures/{JezzTex,Jezztex2,SnowDog,chaostex{,2}}.utx "${Ddir}"/Textures/ || die "copy Textures CD2" + fi + + # System + cp -rf "${CDROM_ROOT}"/System/*.{u,int} "${Ddir}"/System/ || die "copy System CD2" + + # now we uncompress the maps + einfo "Uncompressing CD2 Maps ... this may take some time" + dodir "${dir}"/Maps + cd "${Ddir}" + export HOME=${T} + export UT_DATA_PATH="${Ddir}"/System + for f in `find "${CDROM_ROOT}"/maps/ -name '*.uz' -printf '%f '` ; do + ./ucc decompress "${CDROM_ROOT}"/maps/${f} -nohomedir || die "uncompressing map CD2 ${f}" + mv System/${f:0:${#f}-3} Maps/ || die "copy map CD2 ${f}" + done + ### CD2 ### + ########### + + ########### + ### END ### + cd "${S}" + + # Textures + tar -zxf Credits.tar.gz -C "${Ddir}" || die "extract credits texture" + # NetGamesUSA.com + tar -zxf NetGamesUSA.com.tar.gz -C "${Ddir}"/ || die "extract NetGamesUSA.com" + + # Patch UT-GOTY + cd setup.data + cp patch.dat{,.orig} || die "cp failed" + sed -e 's:sh uz-maps.sh:echo:' patch.dat.orig > patch.dat || die "sed failed" + ./bin/Linux/x86/loki_patch patch.dat "${Ddir}" || die "failed to patch" + cd "${S}" + + # now we install the IpDrv.so patch + insinto "${dir}"/System + doins IpDrv.so || die "install IpDrv.so patch" + + # install a few random files + insinto "${dir}" + doins README icon.{bmp,xpm} || die "installing random files" + + # now, since these files are coming off a cd, the times/sizes/md5sums wont + # be different ... that means portage will try to unmerge some files (!) + # we run touch on ${D} so as to make sure portage doesnt do any such thing + find "${Ddir}" -exec touch '{}' \; + ### END ### + ########### + + prepgamesdirs +} + +pkg_postinst() { + games_pkg_postinst + elog "You might want to install the bonus packs too." + elog "Many servers on the internet use them, and the" + elog "majority of players do too." + elog + elog "Just run: emerge unreal-tournament-bonuspacks" +} |