summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'games-rpg')
-rw-r--r--games-rpg/arx-fatalis-data/Manifest2
-rw-r--r--games-rpg/arx-fatalis-data/arx-fatalis-data-1.21-r4.ebuild92
-rw-r--r--games-rpg/arx-fatalis-data/metadata.xml19
3 files changed, 113 insertions, 0 deletions
diff --git a/games-rpg/arx-fatalis-data/Manifest b/games-rpg/arx-fatalis-data/Manifest
new file mode 100644
index 0000000..e663a4b
--- /dev/null
+++ b/games-rpg/arx-fatalis-data/Manifest
@@ -0,0 +1,2 @@
+DIST ArxFatalis_1.21_MULTILANG.exe 9064611 BLAKE2B 42a81491ff470843a80bd6f801a1d8d5b1295603c3b6ec759f545d6fed9530b64ca684b772735f92187eb4eb613b12f68ce7d0491a157123578476b835bb40eb SHA512 885260c6173ee5f2d6d6072bcfd14d085f11b997a0ce45cbdee9a347612e96da13477ef7d71b9c015fb02f2e47bdfb968a2aa89b0c92e9327abbd75b724e47c2
+DIST setup_arx_fatalis_2.0.0.7.exe 525046992 BLAKE2B 558bffc8f4a0096761a9b1c8003b8127480bf03b1198b943dfe3c0bc8c6b9642275f86f5f4e9c6bbc2211bf48e38bebef634b24196b48d1d5520abf75254033f SHA512 08be7870d02ed6da8cedceb652906ea169eedcb44497a4517ef6a42d9db37403b5146b9e5a3a628a465f23088b0c09d958719e05454dcbb5ac12225c32d35942
diff --git a/games-rpg/arx-fatalis-data/arx-fatalis-data-1.21-r4.ebuild b/games-rpg/arx-fatalis-data/arx-fatalis-data-1.21-r4.ebuild
new file mode 100644
index 0000000..3884741
--- /dev/null
+++ b/games-rpg/arx-fatalis-data/arx-fatalis-data-1.21-r4.ebuild
@@ -0,0 +1,92 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+
+CDROM_OPTIONAL="yes"
+inherit eutils cdrom check-reqs
+
+DESCRIPTION="Arx Fatalis data files"
+HOMEPAGE="https://www.arkane-studios.com/uk/arx.php"
+SRC_URI="cdinstall? ( https://cdn.bethsoft.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 bindist 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 your DISTDIR directory."
+}
+
+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 /usr/share/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}"' - {} \;
+}
diff --git a/games-rpg/arx-fatalis-data/metadata.xml b/games-rpg/arx-fatalis-data/metadata.xml
new file mode 100644
index 0000000..5890880
--- /dev/null
+++ b/games-rpg/arx-fatalis-data/metadata.xml
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>proxy-maint@gentoo.org</email>
+ <name>Proxy Maintainers</name>
+ </maintainer>
+ <maintainer type="person">
+ <email>daniel@constexpr.org</email>
+ <name>Daniel Scharrer</name>
+ </maintainer>
+ <maintainer type="project">
+ <email>games@gentoo.org</email>
+ <name>Gentoo Games Project</name>
+ </maintainer>
+ <use>
+ <flag name="gog">Extract the data from the GOG.com installer.</flag>
+ </use>
+</pkgmetadata>