diff options
Diffstat (limited to 'games-fps')
-rw-r--r-- | games-fps/duke3d-data/duke3d-data-1.0-r4.ebuild | 75 |
1 files changed, 75 insertions, 0 deletions
diff --git a/games-fps/duke3d-data/duke3d-data-1.0-r4.ebuild b/games-fps/duke3d-data/duke3d-data-1.0-r4.ebuild new file mode 100644 index 000000000000..100efef9882d --- /dev/null +++ b/games-fps/duke3d-data/duke3d-data-1.0-r4.ebuild @@ -0,0 +1,75 @@ +# Copyright 1999-2018 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=5 + +CDROM_OPTIONAL="yes" +inherit eutils cdrom unpacker + +GOG_FILE="gog_duke_nukem_3d_atomic_edition_2.0.0.9.sh" +DESCRIPTION="Duke Nukem 3D data files" +HOMEPAGE="http://www.3drealms.com/" +SRC_URI="gog? ( ${GOG_FILE} )" + +LICENSE="DUKE3D gog? ( GOG-EULA )" +SLOT="0" +KEYWORDS="~amd64 ~hppa ~x86" +IUSE="gog" +REQUIRED_USE="^^ ( cdinstall gog )" +RESTRICT="mirror bindist gog? ( fetch )" + +RDEPEND="|| ( games-fps/eduke32 games-fps/duke3d )" +DEPEND="gog? ( app-arch/unzip )" + +S=${WORKDIR} + +pkg_nofetch() { + einfo "Please download ${GOG_FILE} from your GOG.com account after buying Duke Nukem 3d" + einfo "and put it into ${DISTDIR}." +} + +src_unpack() { + if use cdinstall ; then + export CDROM_NAME_SET=( + "Existing Install" + "Duke Nukem 3D CD" + "Duke Nukem 3D Atomic Edition CD" + ) + cdrom_get_cds duke3d.grp:dvd/dn3dinst/duke3d.grp:atominst/duke3d.grp + + if [[ ${CDROM_SET} -ne 0 + && ${CDROM_SET} -ne 1 + && ${CDROM_SET} -ne 2 ]] + then + die "Error locating data files."; + fi + else + unpack_zip "${DISTDIR}"/${GOG_FILE} + cd data/noarch/data || die + + # convert to lowercase + find . -type f \ + -execdir sh -c 'echo "converting ${1} to lowercase" + lower="`echo "${1}" | tr [:upper:] [:lower:]`" + [ "${1}" = "${lower}" ] || mv "${1}" "${lower}"' - {} \; + fi +} + +src_install() { + local DATAROOT + + insinto /usr/share/duke3d + + if use cdinstall ; then + case ${CDROM_SET} in + 0) DATAROOT="" ;; + 1) DATAROOT="dn3dinst/" ;; + 2) DATAROOT="atominst/" ;; + esac + + # avoid double slash + doins "${CDROM_ROOT}"/${DATAROOT}{duke3d.grp,duke.rts,game.con,user.con,demo?.dmo,defs.con} + else + doins data/noarch/data/{duke3d.grp,duke.rts,game.con,user.con,demo?.dmo,defs.con} + fi +} |