commit: a14422c8c9eea0f09baae1b6d47ef9b75f3b9377 Author: Azamat H. Hackimov <azamat.hackimov <AT> gmail <DOT> com> AuthorDate: Thu Mar 19 18:49:29 2020 +0000 Commit: Azamat H. Hackimov <winterheart <AT> gentoo <DOT> ru> CommitDate: Thu Mar 19 18:49:29 2020 +0000 URL: https://gitweb.gentoo.org/proj/gamerlay.git/commit/?id=a14422c8
games-rpg/arx-fatalis-data: Save from portage Package-Manager: Portage-2.3.89, Repoman-2.3.20 RepoMan-Options: --force Signed-off-by: Azamat H. Hackimov <azamat.hackimov <AT> gmail.com> .../arx-fatalis-data-1.21-r4.ebuild | 92 ++++++++++++++++++++++ games-rpg/arx-fatalis-data/metadata.xml | 19 +++++ 2 files changed, 111 insertions(+) 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>[email protected]</email> + <name>Proxy Maintainers</name> + </maintainer> + <maintainer type="person"> + <email>[email protected]</email> + <name>Daniel Scharrer</name> + </maintainer> + <maintainer type="project"> + <email>[email protected]</email> + <name>Gentoo Games Project</name> + </maintainer> + <use> + <flag name="gog">Extract the data from the GOG.com installer.</flag> + </use> +</pkgmetadata>
