Skip to content
Snippets Groups Projects
Commit 528a8359 authored by Dani Beltrán's avatar Dani Beltrán Committed by Eleni Mathioulaki
Browse files

add/update spack packages for several BioBBs and their dependencies

parent 235bac59
No related branches found
No related tags found
3 merge requests!349create new experimental release,!346Update spack packages for several BioBBs and their dependencies,!341Added/Updated spack packages for several BioBBs and their dependenciesMaster
Showing
with 245 additions and 24 deletions
from spack import *
class Acpype(PythonPackage):
"""A tool based in Python to use Antechamber to generate topologies for chemical
compounds and to interface with others python applications like CCPN and ARIA"""
# Homepage and download url
homepage = "https://github.com/alanwilter/acpype"
git = 'https://github.com/alanwilter/acpype.git'
# Set the gitlab accounts of this package maintainers
maintainers = ['dbeltran']
# Versions
version('2022.7.21', branch='master')
# Dependencies
depends_on('python@3.8:', type=('build', 'run'))
depends_on('ambertools')
depends_on('openbabel')
depends_on('py-poetry-core')
from spack import *
class Ambertools (CMakePackage):
"""AmberTools is a free, useful standalone package and a prerequisite for installing Amber itself.
The AmberTools suite is free of charge, and its components are mostly released under the GNU General Public License (GPL).
A few components are included that are in the public domain or which have other, open-source, licenses.
The libsander and libpbsa libraries use the LGPL license."""
# Set the homepage and download url
homepage = "https://ambermd.org/AmberTools.php"
url = "https://ambermd.org/downloads/AmberTools22jlmrcc.tar.bz2"
# Set the gitlab accounts of this package maintainers
maintainers = ['dbeltran', 'elmath']
version('22jlmrcc', sha256='1571d4e0f7d45b2a71dce5999fa875aea8c90ee219eb218d7916bf30ea229121')
# Dependencies
depends_on("flex", type="build") # This is necessary for sure (experimentally tested)
depends_on("bison", type="build") # This is necessary for sure (experimentally tested)
depends_on("tcsh", type="build")
depends_on("zlib", type=("build", "run"))
depends_on("bzip2", type=("build", "run"))
depends_on("blas", type=("build", "run"))
depends_on("lapack", type=("build", "run"))
depends_on("arpack-ng", type=("build", "run"))
depends_on("netcdf-c", type=("build", "run"))
depends_on("netcdf-fortran", type=("build", "run"))
depends_on("fftw", type=("build", "run"))
depends_on("readline", type=("build", "run"))
depends_on("netlib-xblas~plain_blas", type=("build", "run"))
# specific variants needed for boost - from the build log "Could NOT find Boost (missing: thread system program_options iostreams regex timer chrono filesystem graph)"
depends_on("boost+thread+system+program_options+iostreams+regex+timer+chrono+filesystem+graph", type=("build", "run"))
# Python dependencies
# WARNING: If a python 3.8 version is already installed in spack then the '+tkinter' variant makes spack ignore the version
# WARNING: Spack may try to install the preferred python version (i.e. python 3.10.8)
# WARNING: The soultion is uninstall python and reinstall with this variant
depends_on('python@3.8: +tkinter', type=('build', 'run'))
depends_on("py-numpy", type=("build", "run"))
depends_on("py-matplotlib", type=("build", "run"))
depends_on("py-scipy", type=("build", "run"))
def cmake_args(self):
# Translated from ambertools build/run_cmake script
# We also add the TRUST_SYSTEM_LIBS argument that is mentioned in the ambertools CMake guide
# https://ambermd.org/pmwiki/pmwiki.php/Main/CMake-Guide-to-Options
args = [
self.define("COMPILER", "GNU"),
self.define("MPI", False),
self.define("CUDA", False),
self.define("INSTALL_TESTS", True),
self.define("DOWNLOAD_MINICONDA", False),
self.define("TRUST_SYSTEM_LIBS", True),
# This is to avoid the x11 (X11_Xext_LIB) error
# It is equivalent to the '-noX11' flag accoridng to the docs:
# https://ambermd.org/pmwiki/pmwiki.php/Main/CMake-Common-Options
self.define("BUILD_GUI", False)
]
return args
def setup_run_environment(self, env):
env.set("AMBER_PREFIX", self.prefix)
env.set("AMBERHOME", self.prefix)
def setup_build_environment(self, env):
env.set("AMBER_PREFIX", self.prefix)
env.set("AMBERHOME", self.prefix)
@run_after('install')
@on_package_attributes(run_tests=True)
def check_install(self):
make("test.serial")
# temporarily copy netcdf.h header file to netcdf-fortran/include to pass the Ambertools cmake check (quickest fix, will probably cause problems, needs to change)
@run_before("cmake")
def fix_check(self):
cp = Executable("cp")
cp(self.spec["netcdf-c"].headers.directories[0]+"/netcdf.h", self.spec["netcdf-fortran"].headers.directories[0])
from spack import *
class BiobbAnalysis(PythonPackage):
"""Biobb_analysis is the Biobb module collection to perform analysis
of molecular dynamics simulations"""
# Homepage and download url
homepage = "https://github.com/bioexcel/biobb_analysis"
git = 'https://github.com/bioexcel/biobb_analysis.git'
# Set the gitlab accounts of this package maintainers
maintainers = ['dbeltran']
# Versions
version('4.0.1', branch='master')
# Dependencies
depends_on('python@3.8:', type=('build', 'run'))
depends_on('biobb-common')
depends_on('gromacs')
depends_on('ambertools')
from spack import *
class BiobbChemistry(PythonPackage):
"""Biobb_chemistry is the Biobb module collection to perform chemistry
over molecular dynamics simulations."""
# Homepage and download url
homepage = "https://github.com/bioexcel/biobb_chemistry"
git = 'https://github.com/bioexcel/biobb_chemistry.git'
# Set the gitlab accounts of this package maintainers
maintainers = ['dbeltran']
# Versions
version('4.0.0', branch='master')
# Dependencies
depends_on('python@3.8:', type=('build', 'run'))
depends_on('biobb-common')
depends_on('openbabel')
depends_on('ambertools')
depends_on('acpype')
# Copyright 2013-2023 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
from spack import *
class BiobbCommon(PythonPackage):
......@@ -11,17 +5,17 @@ class BiobbCommon(PythonPackage):
# Homepage and download url
homepage = "https://github.com/bioexcel/biobb_common"
url = "https://github.com/bioexcel/biobb_common/archive/refs/tags/v3.8.1.tar.gz"
git = 'https://github.com/bioexcel/biobb_common.git'
# Set the gitlab accounts of this package maintainers
maintainers = ['dbeltran']
# Versions
version('3.8.1', sha256='b6c939c1445ea2f8282e491e0414cc15f4934466ca24ecd77e24cef2e7df49e4')
version('4.0.0', branch='master')
# Dependencies
depends_on('python@3.8:')
depends_on('py-setuptools', type=('build'))
depends_on('py-setuptools')
depends_on('python@3.8:', type=('build', 'run'))
depends_on('py-pyyaml', type=('build', 'run'))
depends_on('py-requests', type=('build', 'run'))
depends_on('py-biopython@1.78:1.80', type=('build', 'run'))
# Copyright 2013-2023 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
from spack import *
class BiobbGromacs(PythonPackage):
......@@ -12,15 +6,12 @@ class BiobbGromacs(PythonPackage):
# Homepage and download url
homepage = "https://github.com/bioexcel/biobb_gromacs"
url = "https://github.com/bioexcel/biobb_gromacs/archive/refs/tags/v3.8.1.tar.gz"
maintainers = ['dbeltran']
git = 'https://github.com/bioexcel/biobb_gromacs.git'
# Versions
version('3.8.1', sha256='6da49b691b14a8bcf7ffca08c898fe9affd258ca2f8c7be4981df840a6907efa')
version('4.0.0', branch='master')
# Dependencies
depends_on('python@3.8:')
depends_on('py-setuptools', type=('build'))
depends_on('biobb-common@3.8.1', type=('build', 'run'), when='@3.8.1')
depends_on('python@3.8:', type=('build', 'run'))
depends_on('biobb-common')
depends_on('gromacs')
from spack import *
class BiobbIo(PythonPackage):
"""Biobb_io is the Biobb module collection to fetch data to be
consumed by the rest of the Biobb building blocks"""
# Homepage and download url
homepage = "https://github.com/bioexcel/biobb_io"
git = 'https://github.com/bioexcel/biobb_io.git'
# Versions
version('4.0.0', branch='master')
# Dependencies
depends_on('biobb-common')
depends_on('python@3.8:', type=('build', 'run'))
from spack import *
class BiobbModel(PythonPackage):
"""Biobb_model is the Biobb module collection to check and model 3d structures,
create mutations or reconstruct missing atoms"""
# Homepage and download url
homepage = "https://github.com/bioexcel/biobb_model"
git = 'https://github.com/bioexcel/biobb_model.git'
# Versions
version('4.0.0', branch='master')
# Dependencies
depends_on('python@3.8:', type=('build', 'run'))
depends_on('biobb-common')
depends_on('biobb-structure-checking')
from spack import *
class BiobbStructureChecking(PythonPackage):
"""Biobb_structure_checking performs a checking of the quality of a
3D structure intended to facilitate the setup of molecular dynamics
simulation of protein or nucleic acids systems"""
# Homepage and download url
homepage = "https://github.com/bioexcel/biobb_structure_checking"
git = 'https://github.com/bioexcel/biobb_structure_checking.git'
# Versions
version('3.12.1', branch='master')
# Dependencies
depends_on('py-setuptools')
depends_on('python@3.8:', type=('build', 'run'))
depends_on('py-psutil', type=('build', 'run'))
depends_on('py-numpy', type=('build', 'run'))
depends_on('py-biopython@1.78:1.80', type=('build', 'run'))
from spack import *
class BiobbStructureUtils(PythonPackage):
"""Biobb_structure_utils is the Biobb module collection to modify
or extract information from a PDB structure file."""
# Homepage and download url
homepage = "https://github.com/bioexcel/biobb_structure_utils"
git = 'https://github.com/bioexcel/biobb_structure_utils.git'
# Versions
version('4.0.0', branch='master')
# Dependencies
depends_on('python@3.8:', type=('build', 'run'))
depends_on('biobb-common')
depends_on('biobb-structure-checking')
from spack import *
class Nglview(PythonPackage):
"""An IPython/Jupyter widget to interactively view molecular structures and trajectories.
Utilizes the embeddable NGL Viewer for rendering."""
# Homepage and download url
homepage = "https://github.com/nglviewer/nglview"
git = 'https://github.com/nglviewer/nglview.git'
# Set the gitlab accounts of this package maintainers
maintainers = ['dbeltran']
# Versions
version('3.0.4', branch='master')
# Dependencies
depends_on('python@3.8:', type=('build', 'run'))
depends_on('py-setuptools')
depends_on('py-jupyter-packaging')
depends_on('py-versioneer')
depends_on('py-numpy', type=('run'))
depends_on('py-ipywidgets', type=('run'))
\ No newline at end of file
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment