summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlexey Shvetsov <alexxy@gentoo.org>2018-06-08 16:01:42 +0300
committerAlexey Shvetsov <alexxy@gentoo.org>2018-06-08 16:01:42 +0300
commit5ab7460b5a2261accb020f387220e20e0b5ce49d (patch)
tree5bb24a9abbb222556920a72dc4edefc910019422
parentlicenses: add modeller (diff)
downloadgentoo-5ab7460b5a2261accb020f387220e20e0b5ce49d.tar.gz
gentoo-5ab7460b5a2261accb020f387220e20e0b5ce49d.tar.bz2
gentoo-5ab7460b5a2261accb020f387220e20e0b5ce49d.zip
sci-chemistry/modeller: Import from science overlay
Package-Manager: Portage-2.3.40, Repoman-2.3.9
-rw-r--r--sci-chemistry/modeller/Manifest1
-rw-r--r--sci-chemistry/modeller/metadata.xml8
-rw-r--r--sci-chemistry/modeller/modeller-9.20.ebuild145
3 files changed, 154 insertions, 0 deletions
diff --git a/sci-chemistry/modeller/Manifest b/sci-chemistry/modeller/Manifest
new file mode 100644
index 000000000000..0674ee130c5f
--- /dev/null
+++ b/sci-chemistry/modeller/Manifest
@@ -0,0 +1 @@
+DIST modeller-9.20.tar.gz 34909796 BLAKE2B d89c81823c4d7784a7b3d64fdb01158a973edc7d8b316c773e038ba8645797c543d5bc58c1bff5462ae5975a6c2796f4b2d500641d226c3b2281cf794cfeba8d SHA512 667edeeda0a9038258f6932b3cef22a1e9d0fe47f47bd2ac612e7bac7f23a863f5a65cfd93abfa405310e7fb7b305d53e71d6c6e930613b0dbd43b24dcd5919a
diff --git a/sci-chemistry/modeller/metadata.xml b/sci-chemistry/modeller/metadata.xml
new file mode 100644
index 000000000000..da36ecbfcd6a
--- /dev/null
+++ b/sci-chemistry/modeller/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>sci-chemistry@gentoo.org</email>
+ <name>Gentoo Chemistry Project</name>
+ </maintainer>
+</pkgmetadata>
diff --git a/sci-chemistry/modeller/modeller-9.20.ebuild b/sci-chemistry/modeller/modeller-9.20.ebuild
new file mode 100644
index 000000000000..0d29c3843f29
--- /dev/null
+++ b/sci-chemistry/modeller/modeller-9.20.ebuild
@@ -0,0 +1,145 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+PYTHON_COMPAT=( python2_7 )
+
+inherit distutils-r1 eutils multilib versionator
+
+DESCRIPTION="Homology or comparative modeling of protein three-dimensional structures"
+HOMEPAGE="http://salilab.org/modeller/"
+SRC_URI="http://salilab.org/${PN}/${PV}/${P}.tar.gz"
+
+LICENSE="modeller"
+KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux"
+IUSE="doc examples"
+SLOT="0"
+
+RESTRICT="mirror"
+
+DEPEND=">=dev-lang/swig-1.3"
+RDEPEND=""
+
+INPATH="${EPREFIX}"/opt/modeller${ver}
+
+QA_PREBUILT="/opt/*"
+
+pkg_setup() {
+ case ${ARCH} in
+ x86)
+ EXECTYPE="i386-intel8";;
+ amd64)
+ EXECTYPE="x86_64-intel8";;
+ *)
+ die "Your arch "${ARCH}" does not appear supported at this time.";;
+ esac
+}
+
+python_prepare_all(){
+ sed "s:i386-intel8:${EXECTYPE}:g" -i src/swig/setup.py || die
+ distutils-r1_python_prepare_all
+}
+
+python_compile(){
+ cd src/swig || die
+ swig -python -keyword -nodefaultctor -nodefaultdtor -noproxy modeller.i || die
+ distutils-r1_python_compile
+}
+
+python_install() {
+ cd src/swig || die
+ distutils-r1_python_install
+}
+
+python_install_all(){
+ cd "${S}" || die
+ sed \
+ -e "/^EXECUTABLE_TYPE/s:xxx:${EXECTYPE}:g" \
+ -e "/MODINSTALL/s:xxx:\"${INPATH}\":g" \
+ -i bin/modscript || die
+
+ sed -e "s;@TOPDIR\@;\"${INPATH}\";" \
+ -e "s;@EXETYPE\@;${EXECTYPE};" \
+ bin/modpy.sh.in > "${T}/modpy.sh"
+
+ insinto ${INPATH}
+ doins -r modlib
+ python_foreach_impl python_domodule modlib/modeller
+
+ insinto ${INPATH}/bin
+ doins -r bin/{lib,*top}
+
+ exeinto ${INPATH}/bin
+ doexe bin/{modscript,mod${PV}_${EXECTYPE}} "${T}"/modpy.sh
+
+ python_foreach_impl python_doscript bin/modslave.py
+ dosym ${INPATH}/bin/modscript /opt/bin/mod${PV}
+ dosym ${INPATH}/bin/modpy.sh /opt/bin/modpy.sh
+
+ exeinto ${INPATH}/lib/${EXECTYPE}/
+ doexe lib/${EXECTYPE}/lib*
+ dosym libmodeller.so.8 ${INPATH}/lib/${EXECTYPE}/libmodeller.so
+ dosym ../../${INPATH}/lib/${EXECTYPE}/libmodeller.so.8 /usr/$(get_libdir)/libmodeller.so.8
+
+ use doc && HTML_DOCS=( doc/. )
+ distutils-r1_python_install_all
+
+ if use examples; then
+ insinto /usr/share/${PN}/
+ doins -r examples
+ fi
+
+ insinto /etc/revdep-rebuild
+ cat >> "${T}"/40-${PN} <<- EOF
+ SEARCH_DIRS_MASK="${EPREFIX}/opt/modeller/lib/"
+ EOF
+ doins "${T}"/40-${PN}
+}
+
+pkg_postinst() {
+ if [[ ! -e "${INPATH}/modlib/modeller/config.py" ]]; then
+ echo install_dir = \"${INPATH}/\"> ${INPATH}/modlib/modeller/config.py
+ fi
+
+ if grep -q license ${INPATH}/modlib/modeller/config.py; then
+ einfo "A license key file is already present in ${IN_PATH}/modlib/modeller/config.py"
+ else
+ ewarn "Obtain a license Key from"
+ ewarn "http://salilab.org/modeller/registration.html"
+ ewarn "And run this before using modeller:"
+ ewarn "emerge --config =${CATEGORY}/${PF}"
+ ewarn "That way you can [re]enter your license key."
+ fi
+}
+
+pkg_postrm() {
+ ewarn "This package leaves a license Key file in ${INPATH}/modlib/modeller/config.py"
+ ewarn "that you need to remove to completely get rid of modeller."
+}
+
+pkg_config() {
+ ewarn "Your license key is NOT checked for validity here."
+ ewarn " Make sure you type it in correctly."
+ eerror "If you CTRL+C out of this, modeller will not run!"
+ while true
+ do
+ einfo "Please enter your license key:"
+ read license_key1
+ einfo "Please re-enter your license key:"
+ read license_key2
+ if [[ "$license_key1" == "" ]]
+ then
+ echo "You entered a blank license key. Try again."
+ else
+ if [[ "$license_key1" == "$license_key2" ]]
+ then
+ echo license = '"'$license_key1'"' >> "${INPATH}/modlib/modeller/config.py"
+ einfo "Thank you!"
+ break
+ else
+ eerror "Your license key entries do not match. Try again."
+ fi
+ fi
+ done
+}