This is the initial import of the new nwn ebuild which goes with the new nwn-data...
authorChris Gianelloni <wolf31o2@gentoo.org>
Fri, 17 Nov 2006 20:02:08 +0000 (20:02 +0000)
committerChris Gianelloni <wolf31o2@gentoo.org>
Fri, 17 Nov 2006 20:02:08 +0000 (20:02 +0000)
Package-Manager: portage-2.1.2_rc1-r6

games-rpg/nwn/ChangeLog
games-rpg/nwn/files/digest-nwn-1.68-r1 [new file with mode: 0644]
games-rpg/nwn/nwn-1.68-r1.ebuild [new file with mode: 0644]

index 66a341e2e1dbbe043a15ce31458005fb1c5ff6ca..28e8012f474b4f2348b0f1a2e0772cbd25ed7c31 100644 (file)
@@ -1,6 +1,14 @@
 # ChangeLog for games-rpg/nwn
 # Copyright 2000-2006 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/games-rpg/nwn/ChangeLog,v 1.50 2006/10/06 22:10:03 wolf31o2 Exp $
+# $Header: /var/cvsroot/gentoo-x86/games-rpg/nwn/ChangeLog,v 1.51 2006/11/17 20:02:08 wolf31o2 Exp $
+
+*nwn-1.68-r1 (17 Nov 2006)
+
+  17 Nov 2006; Chris Gianelloni <wolf31o2@gentoo.org> +nwn-1.68-r1.ebuild:
+  This is the initial import of the new nwn ebuild which goes with the new
+  nwn-data ebuild. Between the two, this should resolve quite a few bugs, as
+  mentioned on the nwn-data ChangeLog. I still plan on adding more support,
+  but this should be a good start.
 
   06 Oct 2006; Chris Gianelloni <wolf31o2@gentoo.org> nwn-1.68.ebuild:
   Removed virtual/x11 from dependencies.
diff --git a/games-rpg/nwn/files/digest-nwn-1.68-r1 b/games-rpg/nwn/files/digest-nwn-1.68-r1
new file mode 100644 (file)
index 0000000..993f1fc
--- /dev/null
@@ -0,0 +1,60 @@
+MD5 73f4304a5c2afd016d656baa0e1f4d12 English_linuxclient168_orig.tar.gz 130569338
+RMD160 0622599a07c113ae69fed80416f7a6f16e9e715e English_linuxclient168_orig.tar.gz 130569338
+SHA256 03687bff0469cb08a7e5a14316e076a6bfe698121ccee4e2116f0bf119988092 English_linuxclient168_orig.tar.gz 130569338
+MD5 daa21d8ffa0b6007348d2339d0b22fe7 English_linuxclient168_xp1.tar.gz 134673662
+RMD160 5e9227ad86c183f90666b4ef10378227a0e1193a English_linuxclient168_xp1.tar.gz 134673662
+SHA256 e78716a83add4980674f86fd648d374b6086365620bde478b678edfdd4e7e82c English_linuxclient168_xp1.tar.gz 134673662
+MD5 59da99ffee12be8c1308b510055e5abf English_linuxclient168_xp2.tar.gz 120144829
+RMD160 22619133360c1283db268b0b3adbf16548716ccc English_linuxclient168_xp2.tar.gz 120144829
+SHA256 b8d69ad68c3e3ddf2332176ffd1494682bd9f9d254531720327a62be44e1ac2c English_linuxclient168_xp2.tar.gz 120144829
+MD5 23e1a995f71a1ac2dcfad1a34aa3ad09 French_linuxclient168_orig.tar.gz 131090499
+RMD160 10965e3c88d917e483618bfc8f827f51dd46c5b1 French_linuxclient168_orig.tar.gz 131090499
+SHA256 f32ed5a759a0a6b49d8f9ef39e313d49a8931725c0d5a61d3a8737d125902315 French_linuxclient168_orig.tar.gz 131090499
+MD5 389fbc5743aaabc82aa211922927a4fc French_linuxclient168_xp1.tar.gz 151199720
+RMD160 acb98760067cbc4674662d03ba78c9085cceccab French_linuxclient168_xp1.tar.gz 151199720
+SHA256 b9f8fe388519bc824bd2b0198a6c51b93d8a3534d16718b164b6c983fea08f9a French_linuxclient168_xp1.tar.gz 151199720
+MD5 83af9f06cc1bbe38d5cb90fe2da6a1a6 French_linuxclient168_xp2.tar.gz 133316339
+RMD160 10e5b126dde805ac89b15d85c4eea983f85f462b French_linuxclient168_xp2.tar.gz 133316339
+SHA256 7cc11a8cc7a613714c8d01c42b061baad874001da479db1d26903f494894e98a French_linuxclient168_xp2.tar.gz 133316339
+MD5 30567f7a39f36aaddc3c335716305548 German_linuxclient168_orig.tar.gz 131790824
+RMD160 589b2fe6c7e8ae27efb9187e8aacf42a65a70cdd German_linuxclient168_orig.tar.gz 131790824
+SHA256 d0850968fe68cdabfa3138810387dd4be0bf4338173dc02a46cd5ed7c4348b45 German_linuxclient168_orig.tar.gz 131790824
+MD5 d0741b1e37a869484cf4d5f7ba0cf50a German_linuxclient168_xp1.tar.gz 152951618
+RMD160 9d52520cbf92272dfdb8a53671cdc0f9aa68735d German_linuxclient168_xp1.tar.gz 152951618
+SHA256 11e0b929547860309007298e1851d368d445b7dc8ceab17cece33d51342bfdd8 German_linuxclient168_xp1.tar.gz 152951618
+MD5 e47d8643988af4d43e2725f0b9734ec0 German_linuxclient168_xp2.tar.gz 134425276
+RMD160 d466c589b64dd83e2a7ab5e8ebe45b5fb663d8aa German_linuxclient168_xp2.tar.gz 134425276
+SHA256 5d8fe43b751dd9372f45a1193cbf21da04b99fa5c735e5286d7306cf325f796d German_linuxclient168_xp2.tar.gz 134425276
+MD5 2eb3716fb70f148fc57a7bd931c3b155 Italian_linuxclient168_orig.tar.gz 132705873
+RMD160 226e49198f24f6e56b05d5646b211905b39a0283 Italian_linuxclient168_orig.tar.gz 132705873
+SHA256 650235b4ac464f7bdc873aaf8404ec51deef6e8a7c780a9bb237782c1575f95b Italian_linuxclient168_orig.tar.gz 132705873
+MD5 82903cf0124cd3111b61db22adcdee3c Italian_linuxclient168_xp1.tar.gz 143425395
+RMD160 b2709e89a0badec58cb8919fe8c6e3e0270a1481 Italian_linuxclient168_xp1.tar.gz 143425395
+SHA256 52da3063290f564c64905b0806201ad9623a62d99f38adae39e3eb0f5970eb94 Italian_linuxclient168_xp1.tar.gz 143425395
+MD5 70f12632e4309888320f092f3052248d Italian_linuxclient168_xp2.tar.gz 133867117
+RMD160 8e0ca0e29c7b6ac5ed20fb64cb88b569e3383e28 Italian_linuxclient168_xp2.tar.gz 133867117
+SHA256 8a8f87034ccda517e2c69dea61f6fe799a0e1ef5ced6eab2081980da988f49d8 Italian_linuxclient168_xp2.tar.gz 133867117
+MD5 a6c3504fd522ada191801ea89cb5451d NWNEnglish1.68dialog.zip 3186122
+RMD160 eb23337ae316de96b73b1ab9140cf576b8736d36 NWNEnglish1.68dialog.zip 3186122
+SHA256 6f68f7472b9be078f6a5b57e77308310c914ab3a5fd91d265f903e9daf53d4bb NWNEnglish1.68dialog.zip 3186122
+MD5 73a853355b78c84b0e7283f7e5a8d28d NWNFrench1.68dialog.zip 6770835
+RMD160 a7dfce3025c93bb2eeb110742df8eee59a11347c NWNFrench1.68dialog.zip 6770835
+SHA256 64f5fbb14cc8d0232eeaa36c452081bf5fdbc5ea81e58d8868c92ae86ee6a838 NWNFrench1.68dialog.zip 6770835
+MD5 0ea0eed536c7a145311471e66f89d3d3 NWNGerman1.68dialog.zip 7229687
+RMD160 7ccf79ff3ae799d246402fa916446bd413f0a31b NWNGerman1.68dialog.zip 7229687
+SHA256 063bff4857f5f70dad98312129d43e047470de6144f011890949731f2071073b NWNGerman1.68dialog.zip 7229687
+MD5 97faed117645621c8919385c55de084b NWNItalian1.68dialog.zip 6731492
+RMD160 9f198cb9af840dba4d4a6735070aca0ad8db770a NWNItalian1.68dialog.zip 6731492
+SHA256 95ab20460c2761602aaf94f2b021ce698e8e4f122f3c1fd1ea8ad349fb3b5842 NWNItalian1.68dialog.zip 6731492
+MD5 0246b8ea94d59f751f7131ae87d4dbd1 NWNSpanish1.68dialog.zip 6705882
+RMD160 fd205ec81119bb410705019871f40f222bec86a1 NWNSpanish1.68dialog.zip 6705882
+SHA256 c6bd32e2156cd424598c8771b4cc2ca6ec97ecaffb29850412345b8b1a70bf7f NWNSpanish1.68dialog.zip 6705882
+MD5 9db994445ecf3465e93e19f65e7cf13e Spanish_linuxclient168_orig.tar.gz 132704890
+RMD160 699c5bdf5b020a91f3f1b86f961ae3416a62bd0d Spanish_linuxclient168_orig.tar.gz 132704890
+SHA256 01bfd907735a69112fc1847e82269ed2a3d00760a9906dd24819269e53173f13 Spanish_linuxclient168_orig.tar.gz 132704890
+MD5 ce396843a1403a9ba61c7ccb57222b87 Spanish_linuxclient168_xp1.tar.gz 143415370
+RMD160 897b862f8baa392e733413f847a5e2ebabd17bbf Spanish_linuxclient168_xp1.tar.gz 143415370
+SHA256 c74faed185b87a0f187f4e1bcf873ec3810a1fd8dba026b81bcf421e1ca121d9 Spanish_linuxclient168_xp1.tar.gz 143415370
+MD5 04719199f69f19277f5c068826eee72c Spanish_linuxclient168_xp2.tar.gz 133862305
+RMD160 25d36239aa9bb3e685f24c3e031128bbcbd1d1d6 Spanish_linuxclient168_xp2.tar.gz 133862305
+SHA256 b4d4efb0eb5d3395e42e665b518f3cec19c690b0f7f57783ecaa2e6aa8b70a5e Spanish_linuxclient168_xp2.tar.gz 133862305
diff --git a/games-rpg/nwn/nwn-1.68-r1.ebuild b/games-rpg/nwn/nwn-1.68-r1.ebuild
new file mode 100644 (file)
index 0000000..b020a01
--- /dev/null
@@ -0,0 +1,263 @@
+# Copyright 1999-2006 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/games-rpg/nwn/nwn-1.68-r1.ebuild,v 1.1 2006/11/17 20:02:08 wolf31o2 Exp $
+
+inherit eutils games
+
+MY_PV=${PV//.}
+PATCH_URL_BASE=http://files.bioware.com/neverwinternights/updates/linux/${MY_PV}
+DIALOG_URL_BASE=http://nwdownloads.bioware.com/neverwinternights/patch/dialog
+PACKAGE_NAME=_linuxclient${MY_PV}_orig.tar.gz
+SOU_NAME=_linuxclient${MY_PV}_xp1.tar.gz
+HOU_NAME=_linuxclient${MY_PV}_xp2.tar.gz
+
+DESCRIPTION="role-playing game set in a huge medieval fantasy world of Dungeons
+and Dragons"
+HOMEPAGE="http://nwn.bioware.com/downloads/linuxclient.html"
+SRC_URI="linguas_fr? (
+               ${PATCH_URL_BASE}/French${PACKAGE_NAME}
+               ${DIALOG_URL_BASE}/french/NWNFrench${PV}dialog.zip
+               sou? ( ${PATCH_URL_BASE}/French${SOU_NAME} )
+               hou? ( ${PATCH_URL_BASE}/French${HOU_NAME} ) )
+       linguas_it? (
+               ${PATCH_URL_BASE}/Italian${PACKAGE_NAME}
+               ${DIALOG_URL_BASE}/italian/NWNItalian${PV}dialog.zip
+               sou? ( ${PATCH_URL_BASE}/Italian${SOU_NAME} )
+               hou? ( ${PATCH_URL_BASE}/Italian${HOU_NAME} ) )
+       linguas_en? (
+               ${PATCH_URL_BASE}/English${PACKAGE_NAME}
+               ${DIALOG_URL_BASE}/english/NWNEnglish${PV}dialog.zip
+               sou? ( ${PATCH_URL_BASE}/English${SOU_NAME} )
+               hou? ( ${PATCH_URL_BASE}/English${HOU_NAME} ) )
+       linguas_es? (
+               ${PATCH_URL_BASE}/Spanish${PACKAGE_NAME}
+               ${DIALOG_URL_BASE}/spanish/NWNSpanish${PV}dialog.zip
+               sou? ( ${PATCH_URL_BASE}/Spanish${SOU_NAME} )
+               hou? ( ${PATCH_URL_BASE}/Spanish${HOU_NAME} ) )
+       linguas_de? (
+               ${PATCH_URL_BASE}/German${PACKAGE_NAME}
+               ${DIALOG_URL_BASE}/german/NWNGerman${PV}dialog.zip
+               sou? ( ${PATCH_URL_BASE}/German${SOU_NAME} )
+               hou? ( ${PATCH_URL_BASE}/German${HOU_NAME} ) )
+       !linguas_en? (
+               !linguas_es? (
+                       !linguas_de? (
+                               !linguas_fr? (
+                                       !linguas_it? (
+               ${PATCH_URL_BASE}/English${PACKAGE_NAME}
+               ${DIALOG_URL_BASE}/english/NWNEnglish${PV}dialog.zip
+               sou? ( ${PATCH_URL_BASE}/English${SOU_NAME} )
+               hou? ( ${PATCH_URL_BASE}/English${HOU_NAME} ) ) ) ) ) )"
+
+LICENSE="NWN-EULA"
+SLOT="0"
+KEYWORDS="-* ~amd64 ~x86"
+IUSE="sou hou nowin"
+RESTRICT="mirror strip"
+
+RDEPEND=">=games-rpg/nwn-data-1.29-r1
+       virtual/opengl
+       >=media-libs/libsdl-1.2.5
+       x86? (
+               =virtual/libstdc++-3.3
+               x11-libs/libXext
+               x11-libs/libX11 )
+       amd64? (
+               app-emulation/emul-linux-x86-baselibs
+               app-emulation/emul-linux-x86-compat
+               app-emulation/emul-linux-x86-xlibs )"
+DEPEND="app-arch/unzip"
+
+S=${WORKDIR}/nwn
+
+GAMES_LICENSE_CHECK="yes"
+dir=${GAMES_PREFIX_OPT}/${PN}
+Ddir=${D}/${dir}
+
+die_from_busted_nwn-data() {
+       local use=$*
+       ewarn "You must emerge games-rpg/nwn-data with USE=$use.  You can fix this"
+       ewarn "by doing the following:"
+       echo
+       elog "mkdir -p /etc/portage"
+       elog "echo 'games-rpg/nwn-data $use' >> /etc/portage/package.use"
+       elog "emerge --oneshot games-rpg/nwn-data"
+       die "nwn-data requires USE=$use"
+}
+
+die_from_busted_linguas_nwn-data() {
+       local use=$*
+       ewarn "You must emerge games-rpg/nwn-data with LINGUAS=${use/linguas_/}."
+       ewarn "You can fix this by doing the following:"
+       echo
+       elog "mkdir -p /etc/portage"
+       elog "echo 'games-rpg/nwn-data $use' >> /etc/portage/package.use"
+       elog "emerge --oneshot games-rpg/nwn-data"
+       die "nwn-data requires LINGUAS='$use'"
+}
+
+pkg_setup() {
+       games_pkg_setup
+       if use sou
+       then
+               built_with_use games-rpg/nwn-data sou || die_from_busted_nwn-data sou
+       fi
+       if use hou
+       then
+               built_with_use games-rpg/nwn-data hou || die_from_busted_nwn-data hou
+       fi
+
+       strip-linguas de en es fr it
+#      currentlocale=""
+#      for i in ${LINGUAS}
+#      do
+#              case ${i} in
+#                      de)
+#                              if [ ! -e "${dir}"/.metadata/linguas_de ]
+#                              then
+#                                      use nowin && die_from_busted_linguas_nwn-data linguas_de
+#                              fi
+#                              currentlocale=de
+#                              ;;
+#                      en)
+#                              if [ ! -e "${dir}"/.metadata/linguas_en ]
+#                              then
+#                                      use nowin && die_from_busted_linguas_nwn-data linguas_en
+#                              fi
+#                              currentlocale=en
+#                              ;;
+#                      es)
+#                              if [ ! -e "${dir}"/.metadata/linguas_es ]
+#                              then
+#                                      use nowin && die_from_busted_linguas_nwn-data linguas_es
+#                              fi
+#                              currentlocale=es
+#                              ;;
+#                      fr)
+#                              if [ ! -e "${dir}"/.metadata/linguas_fr ]
+#                              then
+#                                      use nowin && die_from_busted_linguas_nwn-data linguas_fr
+#                              fi
+#                              currentlocale=fr
+#                              ;;
+#                      it)
+#                              if [ ! -e "${dir}"/.metadata/linguas_it ]
+#                              then
+#                                      use nowin && die_from_busted_linguas_nwn-data linguas_it
+#                              fi
+#                              currentlocale=it
+#                              ;;
+#              esac
+#      done
+}
+
+src_unpack() {
+       mkdir -p "${S}"
+       cd "${S}"
+       AA=""
+       mkdir -p .metadata
+       for a in ${A}
+       do
+               if [ -n "${a/*dialog*}" ]
+               then
+                       currentlocale=""
+                       if [ -z "${a/*German*/}" ]
+                       then
+                               currentlocale=de
+                       elif [ -z "${a/*English*/}" ]
+                       then
+                               currentlocale=en
+                       elif [ -z "${a/*Spanish*/}" ]
+                       then
+                               currentlocale=es
+                       elif [ -z "${a/*Italian*/}" ]
+                       then
+                               currentlocale=it
+                       elif [ -z "${a/*French*/}" ]
+                       then
+                               currentlocale=fr
+                       fi
+                       if [ -n "$currentlocale" ]
+                       then
+                               (touch ".metadata/linguas_${currentlocale}" &&
+                               mkdir -p "${currentlocale}" &&
+                               cd "${currentlocale}" &&
+                               unpack "${a}" ) || die "unpack ${a}"
+                       fi
+               fi
+       done
+       use sou && (
+       for a in ${A}
+       do
+               if [ -z "${a/*$SOU_NAME}" ]
+               then
+                       rm -f data/patch.bif patch.key && unpack ${a}
+               fi
+       done )
+       use hou && (
+       for a in ${A}
+       do
+               if [ -z "${a/*$HOU_NAME}" ]
+               then
+                       rm -f data/patch.bif patch.key data/xp1patch.bif xp1patch.key \
+                               override/* && unpack ${a}
+               fi
+       done )
+       for a in ${A}
+       do
+               if [ -z "${a/*dialog*}" ]
+               then
+                       currentlocale=""
+                       if [ -z "${a/*German*/}" ]
+                       then
+                               currentlocale=de
+                       elif [ -z "${a/*English*/}" ]
+                       then
+                               currentlocale=en
+                       elif [ -z "${a/*Spanish*/}" ]
+                       then
+                               currentlocale=es
+                       elif [ -z "${a/*Italian*/}" ]
+                       then
+                               currentlocale=it
+                       elif [ -z "${a/*French*/}" ]
+                       then
+                               currentlocale=fr
+                       fi
+                       if [ -n "$currentlocale" ]
+                       then
+                               (cd "${currentlocale}" ; unpack ${a} )
+                       fi
+               fi
+       done
+}
+
+src_install() {
+       dodir "${dir}"
+       exeinto "${dir}"
+       doexe "${FILESDIR}"/fixinstall
+       sed -i \
+               -e "s:GENTOO_USER:${GAMES_USER}:" \
+               -e "s:GENTOO_GROUP:${GAMES_GROUP}:" \
+               -e "s:GENTOO_DIR:${GAMES_PREFIX_OPT}:" \
+               "${Ddir}"/fixinstall || die "sed"
+       if use hou || use sou
+       then
+               sed -i \
+                       -e "s:nwmain patch.key:nwmain:" \
+                       "${Ddir}"/fixinstall || die "sed"
+       fi
+       fperms ug+x "${dir}"/fixinstall || die "perms"
+       mv "${S}"/* ${Ddir}
+       mv "${S}"/.metadata "${Ddir}"
+       games_make_wrapper nwn ./nwn "${dir}" "${dir}"
+       make_desktop_entry nwn "Neverwinter Nights"
+       prepgamesdirs
+}
+
+pkg_postinst() {
+       games_pkg_postinst
+       einfo "The NWN linux client is now installed."
+       einfo "Proceed with the following step in order to get it working:"
+       einfo "Run ${dir}/fixinstall as root"
+}