games-rpg/arx-fatalis-data: revision bump for the gog version
authorJulian Ospald <hasufell@gentoo.org>
Sun, 23 Aug 2015 19:07:35 +0000 (21:07 +0200)
committerJulian Ospald <hasufell@gentoo.org>
Sun, 23 Aug 2015 19:23:32 +0000 (21:23 +0200)
games-rpg/arx-fatalis-data/Manifest
games-rpg/arx-fatalis-data/arx-fatalis-data-1.21-r3.ebuild [new file with mode: 0644]

index 02cf79bef022c9c4b01b0d540d2405eaca6f1577..d1bfeecefeadf67e1eecd2382045d54d2f3c0085 100644 (file)
@@ -1,2 +1,3 @@
 DIST ArxFatalis_1.21_MULTILANG.exe 9064611 SHA256 97c3483a5db7ca99f5ae8001c148517eda3be4cb96d41cc4c1e42f5741456cf3 SHA512 885260c6173ee5f2d6d6072bcfd14d085f11b997a0ce45cbdee9a347612e96da13477ef7d71b9c015fb02f2e47bdfb968a2aa89b0c92e9327abbd75b724e47c2 WHIRLPOOL 1dc785f3b3e28aca928668f7bb7056db0a7ef39f803e50502f1eaf138248a2321011331366c33b4d90791265ece9a114ad7f4c090352940036c8a5bc74b15c56
 DIST setup_arx_fatalis.exe 547521812 SHA256 dc8f62e1ca731844f84f6e80efd28272708ca4c7d4085b0f0125d1f56e50d462 SHA512 4f2021657bd1c5b89d40a29fca0f77a7755e191b8b3e297bb614e557b18ad943a76eb6670f66fb7f0ae1ad92353f1988c0f3bd0c27e220a35fa38a9cdffe0970 WHIRLPOOL 6d456314751e1a2b06f3effd02c50b498e0b3966851253f338c21e2de6e221bc338e4204d13e7d77158b3cbf3dafcef4f8c4cdabcd68abe21ad3758bc149320f
+DIST setup_arx_fatalis_2.0.0.7.exe 525046992 SHA256 18b14b565ca1b37a3e3207a349c13a693f52e4d9875b17936b911690d4226f7b SHA512 08be7870d02ed6da8cedceb652906ea169eedcb44497a4517ef6a42d9db37403b5146b9e5a3a628a465f23088b0c09d958719e05454dcbb5ac12225c32d35942 WHIRLPOOL 3045487c1ce0cd83b5514d977671df615aeb1cc71a99928c95f8dedf26b42a15cfb782e1c24ef2d6c8f2a4baddac5c35733e8c88f28dc633b713ec515f56369f
diff --git a/games-rpg/arx-fatalis-data/arx-fatalis-data-1.21-r3.ebuild b/games-rpg/arx-fatalis-data/arx-fatalis-data-1.21-r3.ebuild
new file mode 100644 (file)
index 0000000..ac14fa1
--- /dev/null
@@ -0,0 +1,95 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+CDROM_OPTIONAL="yes"
+inherit eutils cdrom check-reqs games
+
+DESCRIPTION="Arx Fatalis data files"
+HOMEPAGE="http://www.arkane-studios.com/uk/arx.php"
+SRC_URI="cdinstall? ( http://download.zenimax.com/arxfatalis/patches/1.21/ArxFatalis_1.21_MULTILANG.exe )
+       gog? ( setup_arx_fatalis_2.0.0.7.exe )"
+
+LICENSE="cdinstall? ( ArxFatalis-EULA-JoWooD ) gog? ( GOG-EULA )"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="gog"
+REQUIRED_USE="^^ ( cdinstall gog )"
+RESTRICT="binchecks mirror gog? ( fetch )"
+
+RDEPEND="games-rpg/arx-libertatis"
+DEPEND="app-arch/innoextract
+       cdinstall? ( app-arch/cabextract )"
+
+CHECKREQS_DISK_BUILD="621M"
+CHECKREQS_DISK_USR="617M"
+
+S=${WORKDIR}
+
+detect_language() {
+       speech_checksum=$(find '.' -iname "speech.pak" \
+               -exec md5sum -b '{}' \; | sed "s/ .*//g")
+       if [[ -z $speech_checksum ]] ; then
+               speech_checksum=$(find '.' -iname "speech_default.pak" \
+                       -exec md5sum -b '{}' \; | sed "s/ .*//g")
+       fi
+
+       # check if the checksum is of a known localisation and set data_lang to
+       # the language string to be used with the 1.21 patch installer
+       case "$speech_checksum" in
+               '4c3fdb1f702700255924afde49081b6e') data_lang='german' ;;
+               # Bundled version of AF included with NVIDIA card
+               'ab8a93161688d793a7c78fbefd7d133e') data_lang='german' ;;
+               '4e8f962d8204bcfd79ce6f3226d6d6de') data_lang='english' ;;
+               '2f88c67ae1537919e69386d27583125b') data_lang='spanish' ;;
+               '4edf9f8c799190590b4cd52cfa5f91b1') data_lang='french' ;;
+               '81f05dea47c52d43f01c9b44dd8fe962') data_lang='italian' ;;
+               '677163bc319cd1e9aa1b53b5fb3e9402') data_lang='russian' ;;
+               '') eerror "speech*.pak not found"
+                       die "speech*.pak not found" ;;
+               *) eerror "unsupported data language - speech*.pak checksum:" \
+                       "$speech_checksum" \
+                               "please file a gentoo bug"
+                       die "unsupported data language, file a gentoo bug" ;;
+       esac
+}
+
+pkg_nofetch() {
+       einfo "Please download ${A} from your GOG.com account after buying Arx Fatalis"
+       einfo "and put it into ${DISTDIR}."
+}
+
+src_unpack() {
+       local data_lang
+
+       if use cdinstall ; then
+               cdrom_get_cds bin/Arx.ttf
+               find "${CDROM_ROOT}" -iname "setup*.cab" -exec cabextract '{}' \;
+               detect_language
+       else
+               # gog only offers english
+               data_lang="english"
+       fi
+
+       einfo "Data language: $data_lang"
+       innoextract --lowercase --language=${data_lang} \
+               "${DISTDIR}"/${A} || die
+}
+
+src_install() {
+       insinto "${GAMES_DATADIR}"/arx
+       doins -r app/{graph,misc}
+       find . -iname "*.pak" -exec doins '{}' \;
+
+       dodoc app/{manual,map}.pdf
+
+       # convert to lowercase
+       cd "${D}"
+       find . -type f -exec sh -c 'echo "${1}"
+       lower="`echo "${1}" | tr [:upper:] [:lower:]`"
+       [ "${1}" = "${lower}" ] || mv "${1}" "${lower}"' - {} \;
+
+       prepgamesdirs
+}