summaryrefslogtreecommitdiff
path: root/games-fps/ut2004-data
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2017-10-09 18:53:29 +0100
committerV3n3RiX <venerix@redcorelinux.org>2017-10-09 18:53:29 +0100
commit4f2d7949f03e1c198bc888f2d05f421d35c57e21 (patch)
treeba5f07bf3f9d22d82e54a462313f5d244036c768 /games-fps/ut2004-data
reinit the tree, so we can have metadata
Diffstat (limited to 'games-fps/ut2004-data')
-rw-r--r--games-fps/ut2004-data/Manifest4
-rw-r--r--games-fps/ut2004-data/metadata.xml8
-rw-r--r--games-fps/ut2004-data/ut2004-data-3186-r4.ebuild377
3 files changed, 389 insertions, 0 deletions
diff --git a/games-fps/ut2004-data/Manifest b/games-fps/ut2004-data/Manifest
new file mode 100644
index 000000000000..31bed4f30757
--- /dev/null
+++ b/games-fps/ut2004-data/Manifest
@@ -0,0 +1,4 @@
+EBUILD ut2004-data-3186-r4.ebuild 12491 SHA256 3a841528a235a67c1708c46a920a06058fd22ccccca85d195d8f2c929b2a8576 SHA512 0e5e892b1d3d307c68ebedcc8b1ec8cbe23bbd6938fdbd5793765c870a2e6d1d80afba336795915c37f12386a0161bbd0f3d2aa5c82bb1637d2f5bc32eef1794 WHIRLPOOL 73e6bd282062e95926d61807bfef280806ad96c5000932fd9f3c6a44e6ef2d667165303c3e1b4150ac29198c25f45fd5c41600f90e74646048f5bb8e36050906
+MISC ChangeLog 2574 SHA256 cb8b9fc9c4b4c169907d8b38ae67a217a6da95e6f7c19ef991c2cc73fdd48d1c SHA512 84280094bca1760f9e63ab70728c17477ea158cbcd44ff65b7919aee1ce988851160ffba3083241d122fd049d0fab81d8ed4778c6f66c404419f99600aea079d WHIRLPOOL 3b43744494996ee8a6a7f8108bc5b03b12eab1a44485b3eecba02f0c4318bcde1cf08f1c6fdf20a8446c1268908dbfcb6262e7a6349e6727159e6100908c5bd7
+MISC ChangeLog-2015 5221 SHA256 1ea1368c4ce0070157e97a99a027e3dffcf88b4b1ab42a1b65a82c64a4eefd31 SHA512 ac9f807322bde63c8ce388cf362668ede65f719d30c51473b6c6009c4464f38b965c5622131cc63e78af00b1ccda3d2252d250adec3bd9072682b4fa08d66c5d WHIRLPOOL dc11551f1e590f0d54c2e2736f2602be9376c885119d407ec9d3285717409317bdcc532f777d765f75df1d78cda872fcd5eb72592536bfafa460ae54a48c2d2f
+MISC metadata.xml 249 SHA256 943b9ce0cd072229b43569ab668dd7ec741d9dfefd942c8921dabd4490b27b0c SHA512 895577c3a805c40581da03057b94e3f28f05f23012bf350c1e3575847d1a0fe40bb044a46f909012a200d991a400f6389358a60e9c2b5bef0da01fb26f846118 WHIRLPOOL b10e21575c78e201a652c8582cd16e3f7c86b13dd20a30f4cea44066fb139440b3c186147dbaae83478f11a20b6f457a99c8b29ee1239a4caaa21eee01250088
diff --git a/games-fps/ut2004-data/metadata.xml b/games-fps/ut2004-data/metadata.xml
new file mode 100644
index 000000000000..78274e0fa550
--- /dev/null
+++ b/games-fps/ut2004-data/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer type="project">
+ <email>games@gentoo.org</email>
+ <name>Gentoo Games Project</name>
+</maintainer>
+</pkgmetadata>
diff --git a/games-fps/ut2004-data/ut2004-data-3186-r4.ebuild b/games-fps/ut2004-data/ut2004-data-3186-r4.ebuild
new file mode 100644
index 000000000000..d8cf9883ed62
--- /dev/null
+++ b/games-fps/ut2004-data/ut2004-data-3186-r4.ebuild
@@ -0,0 +1,377 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+inherit eutils unpacker cdrom portability games
+
+DESCRIPTION="Unreal Tournament 2004 - This is the data portion of UT2004"
+HOMEPAGE="http://www.unrealtournament2004.com/"
+SRC_URI=""
+
+LICENSE="ut2003"
+SLOT="0"
+KEYWORDS="amd64 x86"
+IUSE=""
+
+DEPEND="games-util/uz2unpack
+ >=app-arch/unshield-0.5-r1"
+PDEPEND="games-fps/ut2004"
+
+S=${WORKDIR}
+dir=${GAMES_PREFIX_OPT}/ut2004
+Ddir=${D}/${dir}
+
+check_dvd() {
+ # The following is a nasty mess to determine if we are installing from
+ # a DVD or from multiple CDs. Anyone feel free to submit patches to this
+ # to bugs.gentoo.org as I know it is a very ugly hack.
+
+ USE_DVD=
+ USE_ECE_DVD=
+ USE_MIDWAY_DVD=
+ USE_GERMAN_MIDWAY_DVD=
+
+ local point foo fs mnts=()
+ while read point foo fs foo ; do
+ [[ ${fs} =~ (9660|udf) ]] && mnts+=( "${point//\040/ }" )
+ done < <(get_mounts)
+
+ local r
+ for r in "${CD_ROOT}" "${CD_ROOT_1}" "${mnts[@]}" ; do
+ if [[ -n ${r} ]] ; then
+ einfo "Searching ${r}"
+ if [[ -f ${r}/AutoRunData/Unreal.ico ]] \
+ && [[ -f ${r}/Disk5/data6.cab ]] ; then
+ USE_MIDWAY_DVD=1
+ USE_DVD=1
+ elif [[ -f ${r}/autorund/unreal.ico ]] \
+ && [[ -f ${r}/disk7/data8.cab ]] ; then
+ USE_MIDWAY_DVD=1
+ USE_GERMAN_MIDWAY_DVD=1
+ USE_DVD=1
+ else
+ [[ -d ${r}/CD1 ]] && USE_DVD=1
+ [[ -d ${r}/CD7 ]] && USE_ECE_DVD=1
+ fi
+ fi
+ done
+}
+
+grabdirs() {
+ local d
+ for d in {Music,Sounds,Speech,StaticMeshes,Textures} ; do
+ local srcdir=${CDROM_ROOT}/${1}/${d}
+ # Is flexible to handle CD_ROOT vs CD_ROOT_1 mixups
+ [[ -d ${srcdir} ]] || srcdir=${CDROM_ROOT}/${d}
+ if [[ -d ${srcdir} ]] ; then
+ insinto "${dir}"
+ doins -r "${srcdir}"
+ fi
+ done
+}
+
+pkg_setup() {
+ games_pkg_setup
+
+ ewarn "This is a huge package. If you do not have at least 7GB of free"
+ ewarn "disk space in ${PORTAGE_TMPDIR} and also in ${GAMES_PREFIX_OPT}"
+ ewarn "then you should abort this installation now and free up some space."
+}
+
+src_unpack() {
+ check_dvd
+
+ if [[ ${USE_DVD} -eq 1 ]] ; then
+ if [[ ${USE_MIDWAY_DVD} -eq 1 ]] ; then
+ # Is 1 DVD, either UT2004-only or Anthology
+ if [[ ${USE_GERMAN_MIDWAY_DVD} -eq 1 ]] ; then
+ cdrom_get_cds autorund/unreal.ico
+ else
+ cdrom_get_cds AutoRunData/Unreal.ico
+ fi
+ else
+ DISK1="CD1"
+ DISK2="CD2"
+ DISK3="CD3"
+ DISK4="CD4"
+ DISK5="CD5"
+ DISK6="CD6"
+ if [[ ${USE_ECE_DVD} -eq 1 ]] ; then
+ # Editor's Choice Edition DVD
+ cdrom_get_cds \
+ ${DISK1}/System/UT2004.ini \
+ ${DISK2}/Textures/2K4Fonts.utx.uz2 \
+ ${DISK3}/Textures/ONSDeadVehicles-TX.utx.uz2 \
+ ${DISK4}/Textures/XGameShaders2004.utx.uz2 \
+ ${DISK5}/Speech/ons.xml \
+ ${DISK6}/Sounds/TauntPack.det_uax.uz2
+ else
+ # Original DVD
+ cdrom_get_cds \
+ ${DISK1}/System/UT2004.ini \
+ ${DISK2}/Textures/2K4Fonts.utx.uz2 \
+ ${DISK3}/Textures/ONSDeadVehicles-TX.utx.uz2 \
+ ${DISK4}/StaticMeshes/AlienTech.usx.uz2 \
+ ${DISK5}/Speech/ons.xml \
+ ${DISK6}/Sounds/TauntPack.det_uax.uz2
+ fi
+ fi
+ else
+ # 6 CDs
+ cdrom_get_cds \
+ System/UT2004.ini \
+ Textures/2K4Fonts.utx.uz2 \
+ Textures/ONSDeadVehicles-TX.utx.uz2 \
+ StaticMeshes/AlienTech.usx.uz2 \
+ Speech/ons.xml \
+ Sounds/TauntPack.det_uax.uz2
+ fi
+
+ if [[ ${USE_MIDWAY_DVD} -ne 1 ]] ; then
+ unpack_makeself "${CDROM_ROOT}"/linux-installer.sh
+ use x86 && unpack ./linux-x86.tar
+ use amd64 && unpack ./linux-amd64.tar
+ fi
+}
+
+src_install() {
+ local j
+
+ if [[ ${USE_MIDWAY_DVD} -eq 1 ]] ; then
+ einfo "Copying files from UT2004 Midway DVD."
+
+ if [[ -f ${CDROM_ROOT}/Manual/Manual.pdf ]] ; then
+ insinto "${dir}"/Manual
+ doins "${CDROM_ROOT}"/Manual/Manual.pdf
+ elif [[ -f ${CDROM_ROOT}/Manual.pdf ]] ; then
+ insinto "${dir}"/Manual
+ doins "${CDROM_ROOT}"/Manual.pdf
+ fi
+
+ # Symlinks for unshield. data1&2.cab are both in Disk1.
+ # unshield needs data1.hdr
+ # The Midway Anthology DVD contains up to data9.cab
+ local cabfile
+ for cabfile in "${CDROM_ROOT}"/[dD]isk*/data*.{cab,hdr} ; do
+ ln -sfn "${cabfile}" .
+ done
+
+ # The big extraction
+ einfo "Extracting from CAB files - this will take several minutes..."
+ unshield x data1.cab || die
+
+ if [[ -d 4_UT2004_Animations ]] ; then
+ # Delete the other games on the Anthology DVD
+ rm -rf {1,2,3}_Unreal* 4_UT2004_EXE Launcher_* OCXFiles
+ # Rename directories to be same as Midway UT2004-only DVD,
+ # i.e. rename "4_UT2004_Animations" to "Animations".
+ for j in 4_UT2004_* ; do
+ mv -f ${j} ${j/4_UT2004_} || die
+ done
+ fi
+
+ # The "logging" subdirectory is created by unshield.
+ rm -rf logging
+ rm -f *.{cab,hdr}
+
+ for j in Animations Benchmark ForceFeedback Help KarmaData \
+ Manual Maps Music Sounds Speech StaticMeshes \
+ System Textures Web ; do
+
+ # UT2004-only DVD has "All_*" dirs, and Anthology DVD has "*_All"
+ if [[ -d All_${j} ]] ; then
+ if [[ -d ${j} ]] ; then
+ cp -rf All_${j}/* ${j}/ || die
+ else
+ mv -f All_${j} ${j} || die
+ fi
+ fi
+ if [[ -d ${j}_All ]] ; then
+ if [[ -d ${j} ]] ; then
+ cp -rf ${j}_All/* ${j}/ || die
+ else
+ mv -f ${j}_All ${j} || die
+ fi
+ fi
+
+ if [[ -d English_${j} ]] ; then
+ if [[ -d ${j} ]] ; then
+ cp -rf English_${j}/* ${j}/ || die
+ else
+ mv -f English_${j} ${j} || die
+ fi
+ fi
+ if [[ -d ${j}_English ]] ; then
+ if [[ -d ${j} ]] ; then
+ cp -rf ${j}_English/* ${j}/ || die
+ else
+ mv -f ${j}_English ${j} || die
+ fi
+ fi
+
+ # Ensure that the directory exists
+ mkdir -p ${j}
+ done
+
+ # Rearrange directories
+ if [[ -d English_Sounds_Speech_System_Help ]] ; then
+ # http://utforums.epicgames.com/showthread.php?t=558146
+ for j in Sounds Speech System Help ; do
+ cp -rf English_Sounds_Speech_System_Help/${j}/* ${j}/ || die
+ done
+ fi
+
+ if [[ ! -d Benchmark/Stuff ]] ; then
+ mkdir -p Benchmark/Stuff || die
+ cp -f BenchmarkStuff/timedemo.txt Benchmark/Stuff || die
+ fi
+
+ if [[ ! -d System/editorres ]] ; then
+ mkdir -p System/editorres || die
+ cp -rf Systemeditorres/* System/editorres || die
+ fi
+
+ if [[ ! -d Web/images ]] ; then
+ mkdir -p Web/{images,ServerAdmin,Src} || die
+ cp -rf Webimages/* Web/images || die
+ cp -rf WebServerAdmin/* Web/ServerAdmin || die
+ cp -rf WebSrc/* Web/Src || die
+ fi
+
+ # Other languages
+ for j in Help_* Sounds_* System_* ; do
+ [[ ! -d ${j} ]] && continue
+ mv -n ${j}/* ${j/_*}/ || die
+ done
+
+ # Remove unnecessary directories
+ rm -rf Benchmark{CSVs,Logs,Results,Stuff}
+ rm -rf Systemeditorres Web{images,ServerAdmin,Src}
+ rm -rf Help_* Sounds_* Speech_* System_*
+ rm -rf \<* \[* _* All_* English_* *_All *_English
+
+ # These files are replaced later, for all installations
+ rm -f $(find . -type f -name 'DO_NOT_DELETE.ME')
+
+ # Install icon
+ if [[ -f ut2004.xpm ]] ; then
+ doicon ut2004.xpm
+ elif [[ -f Help/Unreal.ico ]] ; then
+ newicon Help/Unreal.ico ut2004.ico
+ elif [[ -f ${CDROM_ROOT}/AutoRunData/Unreal.ico ]] ; then
+ newicon "${CDROM_ROOT}"/AutoRunData/Unreal.ico ut2004.ico
+ elif [[ -f Help/Unreal.bmp ]] ; then
+ newicon Help/Unreal.bmp ut2004.bmp
+ fi
+
+ # The big install
+ einfo "Installing UT2004 directories..."
+ insinto "${dir}"
+ doins -r *
+ else
+ # Disk 1
+ einfo "Copying files from Disk 1..."
+ insinto "${dir}"
+ doins -r "${CDROM_ROOT}"/${DISK1}/{Animations,ForceFeedback,Help,KarmaData,Maps,Sounds,Web}
+ insinto "${dir}"/System
+ doins -r "${CDROM_ROOT}"/${DISK1}/System/{editorres,*.{bat,bmp,dat,det,est,frt,ini,int,itt,kot,md5,smt,tmt,u,ucl,upl,url}}
+ insinto "${dir}"/Manual
+ doins "${CDROM_ROOT}"/${DISK1}/Manual/Manual.pdf
+ insinto "${dir}"/Benchmark/Stuff
+ doins -r "${CDROM_ROOT}"/${DISK1}/Benchmark/Stuff/*
+ cdrom_load_next_cd
+
+ local diskno
+ for diskno in {2..5} ; do
+ einfo "Copying files from Disk ${diskno}..."
+ local varname="DISK${diskno}"
+ grabdirs ${!varname}
+ cdrom_load_next_cd
+ done
+
+ # Disk 6
+ einfo "Copying files from Disk 6..."
+ grabdirs "${DISK6}"
+
+ # Install extra help files
+ insinto "${dir}"/Help
+ doins README.linux Unreal.bmp UT2004_EULA.txt ut2004.xpm
+
+ doicon ut2004.xpm
+
+ # Uncompress files
+ einfo "Uncompressing files... this *will* take a while..."
+ for j in Animations Maps Sounds StaticMeshes Textures ; do
+ fperms -R u+w "${dir}/${j}" || die
+ games_ut_unpack "${Ddir}"/${j}
+ done
+ fi
+
+ # Create empty files in Benchmark
+ for j in {CSVs,Logs,Results} ;do
+ keepdir "${dir}"/Benchmark/${j}
+ done
+
+ make_wrapper ut2004 ./ut2004-bin "${dir}"/System "${dir}"/System "${dir}"
+
+ # Remove unneccessary files
+ rm -f "${Ddir}"/*.{bat,exe,EXE,int}
+ rm -f "${Ddir}"/Help/{.DS_Store,SAPI-EULA.txt}
+ rm -f "${Ddir}"/Manual/*.exe
+ rm -rf "${Ddir}"/Speech/Redist
+ rm -f "${Ddir}"/System/*.{bat,dll,exe,tar}
+ rm -f "${Ddir}"/System/{{License,Manifest}.smt,{ucc,StdOut}.log}
+ rm -f "${Ddir}"/System/{User,UT2004}.ini
+
+ # Remove file collisions with ut2004-3369-r4
+ rm -f "${Ddir}"/Animations/ONSNewTank-A.ukx
+ rm -f "${Ddir}"/Help/UT2004Logo.bmp
+ rm -f "${Ddir}"/System/{ALAudio.kot,AS-{Convoy,FallenCity,Glacier}.kot,AS-{Convoy,FallenCity,Glacier,Junkyard,Mothership,RobotFactory}.int,bonuspack.{det,est,frt},BonusPack.{int,itt,u},BR-Serenity.int}
+ rm -f "${Ddir}"/System/CTF-{AbsoluteZero,BridgeOfFate,DE-ElecFields,DoubleDammage,January,LostFaith}.int
+ rm -f "${Ddir}"/System/DM-{1on1-Albatross,1on1-Desolation,1on1-Mixer,Corrugation,IronDeity,JunkYard}.int
+ rm -f "${Ddir}"/System/{DOM-Atlantis.int,OnslaughtBP.{kot,u,ucl},OnslaughtFull.int}
+ rm -f "${Ddir}"/System/{Build.ini,CacheRecords.ucl,Core.{est,frt,kot,int,itt,u},CTF-January.kot,D3DDrv.kot,DM-1on1-Squader.kot}
+ rm -f "${Ddir}"/System/{Editor,Engine,Gameplay,GamePlay,UnrealGame,UT2k4Assault,XInterface,XPickups,xVoting,XVoting,XWeapons,XWebAdmin}.{det,est,frt,int,itt,u}
+ rm -f "${Ddir}"/System/{Fire.u,IpDrv.u,License.int,ONS-ArcticStronghold.kot}
+ rm -f "${Ddir}"/System/{OnslaughtFull,onslaughtfull,UT2k4AssaultFull}.{det,est,frt,itt,u}
+ rm -f "${Ddir}"/System/{GUI2K4,Onslaught,skaarjpack,SkaarjPack,XGame}.{det,est,frt,int,itt,kot,u}
+ rm -f "${Ddir}"/System/{Setup,Window}.{det,est,frt,int,itt,kot}
+ rm -f "${Ddir}"/System/XPlayers.{det,est,frt,int,itt}
+ rm -f "${Ddir}"/System/{UnrealEd.u,UTClassic.u,UTV2004c.u,UTV2004s.u,UWeb.u,Vehicles.kot,Vehicles.u,Xweapons.itt,UT2K4AssaultFull.int,UTV2004.kot,UTV2004s.kot}
+ rm -f "${Ddir}"/System/{XAdmin.kot,XAdmin.u,XMaps.det,XMaps.est}
+ rm -f "${Ddir}"/Textures/jwfasterfiles.utx
+ rm -f "${Ddir}"/Web/ServerAdmin/{admins_home.htm,current_bots.htm,ut2003.css,current_bots_species_group.inc}
+ rm -f "${Ddir}"/Web/ServerAdmin/ClassicUT/current_bots.htm
+ rm -f "${Ddir}"/Web/ServerAdmin/UnrealAdminPage/{adminsframe.htm,admins_home.htm,admins_menu.htm,current_bots.htm,currentframe.htm,current_menu.htm}
+ rm -f "${Ddir}"/Web/ServerAdmin/UnrealAdminPage/{defaultsframe.htm,defaults_menu.htm,footer.inc,mainmenu.htm,mainmenu_itemd.inc,rootframe.htm,UnrealAdminPage.css}
+ rm -f "${Ddir}"/Web/ServerAdmin/UT2K3Stats/{admins_home.htm,current_bots.htm,ut2003stats.css}
+
+ # Remove file collisions with ut2004-bonuspack-ece
+ rm -f "${Ddir}"/Animations/{MechaSkaarjAnims,MetalGuardAnim,NecrisAnim,ONSBPAnimations}.ukx
+ rm -f "${Ddir}"/Help/BonusPackReadme.txt
+ rm -f "${Ddir}"/Maps/ONS-{Adara,IslandHop,Tricky,Urban}.ut2
+ rm -f "${Ddir}"/Sounds/{CicadaSnds,DistantBooms,ONSBPSounds}.uax
+ rm -f "${Ddir}"/StaticMeshes/{BenMesh02,BenTropicalSM01,HourAdara,ONS-BPJW1,PC_UrbanStatic}.usx
+ rm -f "${Ddir}"/System/{ONS-Adara.int,ONS-IslandHop.int,ONS-Tricky.int,ONS-Urban.int,OnslaughtBP.int,xaplayersl3.upl}
+ rm -f "${Ddir}"/Textures/{AW-2k4XP,BenTex02,BenTropical01,BonusParticles,CicadaTex,Construction_S}.utx
+ rm -f "${Ddir}"/Textures/{HourAdaraTexor,ONSBPTextures,ONSBP_DestroyedVehicles,PC_UrbanTex,UT2004ECEPlayerSkins}.utx
+
+ # Remove file collisions with ut2004-bonuspack-mega
+ rm -f "${Ddir}"/Help/MegapackReadme.txt
+ rm -f "${Ddir}"/Maps/{AS-BP2-Acatana,AS-BP2-Jumpship,AS-BP2-Outback,AS-BP2-SubRosa,AS-BP2-Thrust}.ut2
+ rm -f "${Ddir}"/Maps/{CTF-BP2-Concentrate,CTF-BP2-Pistola,DM-BP2-Calandras,DM-BP2-GoopGod}.ut2
+ rm -f "${Ddir}"/Music/APubWithNoBeer.ogg
+ rm -f "${Ddir}"/Sounds/A_Announcer_BP2.uax
+ rm -f "${Ddir}"/StaticMeshes/{JumpShipObjects,Ty_RocketSMeshes}.usx
+ rm -f "${Ddir}"/System/{AssaultBP.u,Manifest.in{i,t},Packages.md5}
+ rm -f "${Ddir}"/Textures/{JumpShipTextures,T_Epic2k4BP2,Ty_RocketTextures}.utx
+
+ prepgamesdirs
+}
+
+pkg_postinst() {
+ games_pkg_postinst
+
+ elog "This is only the data portion of the game. To play UT2004,"
+ elog "you still need to install games-fps/ut2004."
+}