diff --git a/bluebrain/deployment/environments/applications_science.yaml b/bluebrain/deployment/environments/applications_science.yaml index ff6f2846ccf2a1..fed1d789d0d965 100644 --- a/bluebrain/deployment/environments/applications_science.yaml +++ b/bluebrain/deployment/environments/applications_science.yaml @@ -14,6 +14,7 @@ spack: - py-bluepyopt - py-bluepyparallel - py-connectome-manipulator + - py-multiscale-run - py-efel - py-synthesis-workflow - py-visual-cortex-analysis @@ -47,5 +48,6 @@ spack: - py-bluepyparallel - py-connectome-manipulator+convert - py-efel + - py-multiscale-run - py-synthesis-workflow - py-visual-cortex-analysis diff --git a/bluebrain/repo-bluebrain/packages/py-astrovascpy/package.py b/bluebrain/repo-bluebrain/packages/py-astrovascpy/package.py index 964bbc202cc6ad..7b916a9fae4c76 100644 --- a/bluebrain/repo-bluebrain/packages/py-astrovascpy/package.py +++ b/bluebrain/repo-bluebrain/packages/py-astrovascpy/package.py @@ -13,12 +13,11 @@ class PyAstrovascpy(PythonPackage): """ homepage = "https://github.com/BlueBrain/AstroVascPy" - - url = "https://github.com/BlueBrain/AstroVascPy/releases/tag/0.1" + git = "https://github.com/BlueBrain/AstroVascPy.git" maintainers("tristan0x") - version("0.1", sha256="1e9b2036e9c1ce4cb0650612c0be2e7e7b142754e1550dfbfb0b757cee4f8bdd") + version("0.1.2", tag="0.1.2") variant("vtk", default=False, description="add VTK support (mainly for visualization)") diff --git a/bluebrain/repo-bluebrain/packages/py-juliacall/package.py b/bluebrain/repo-bluebrain/packages/py-juliacall/package.py new file mode 100644 index 00000000000000..d9640c1ef1113c --- /dev/null +++ b/bluebrain/repo-bluebrain/packages/py-juliacall/package.py @@ -0,0 +1,22 @@ +# Copyright 2013-2022 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.package import * + + +class PyJuliacall(PythonPackage): + """Python and Julia in harmony.""" + + homepage = "https://github.com/JuliaPy/PythonCall.jl" + pypi = "juliacall/juliacall-0.9.15.tar.gz" + + maintainers("tristan0x") + + version("0.9.15", sha256="08163ae1290dda155cdabdccc4035a4cf0c8e361522a5b3f8e6532401b4f29cc") + + depends_on("py-wheel", type="build") + + depends_on("py-setuptools@42:", type="build") + depends_on("py-juliapkg@0.1.8:,:0.2", type=["build", "run"]) diff --git a/bluebrain/repo-bluebrain/packages/py-juliapkg/package.py b/bluebrain/repo-bluebrain/packages/py-juliapkg/package.py new file mode 100644 index 00000000000000..ef3c6ed2c97495 --- /dev/null +++ b/bluebrain/repo-bluebrain/packages/py-juliapkg/package.py @@ -0,0 +1,20 @@ +# Copyright 2013-2022 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.package import * + + +class PyJuliapkg(PythonPackage): + """Manage your Julia dependencies from Python""" + + homepage = "https://github.com/JuliaPy/pyjuliapkg" + pypi = "juliapkg/juliapkg-0.1.10.tar.gz" + + maintainers("tristan0x") + + version("0.1.10", sha256="70507318d51ac8663e856f56048764e49f5a0c4c90d81a3712d039a316369505") + + depends_on("py-setuptools", type=("build", "run")) + depends_on("py-semantic-version", type=("build", "run")) diff --git a/bluebrain/repo-bluebrain/packages/py-multiscale-run/package.py b/bluebrain/repo-bluebrain/packages/py-multiscale-run/package.py new file mode 100644 index 00000000000000..bed7719f9ebfb6 --- /dev/null +++ b/bluebrain/repo-bluebrain/packages/py-multiscale-run/package.py @@ -0,0 +1,46 @@ +# 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.package import * + + +class PyMultiscaleRun(PythonPackage): + """BBP multiscale simulation orchestrator""" + + homepage = "https://bbpgitlab.epfl.ch/-/ide/project/molsys/multiscale_run" + git = "ssh://git@bbpgitlab.epfl.ch/molsys/multiscale_run.git" + + maintainers("tristan0x") + + version("develop", branch="main") + version("0.1", tag="0.1") + + depends_on("py-setuptools", type=("build", "run")) + depends_on("py-setuptools-scm", type=("build", "run")) + + depends_on("gmsh", type=("build", "run")) + depends_on("julia", type=("build", "run")) + depends_on("neurodamus-neocortex+ngv+metabolism~~coreneuron", type=("build", "run")) + depends_on("py-astrovascpy", type=("build", "run")) + depends_on("py-bluepysnap", type=("build", "run")) + depends_on("py-diffeqpy@1.1", type=("build", "run")) + depends_on("py-jinja2", type=("build", "run")) + depends_on("py-julia", type=("build", "run")) + depends_on("py-libsonata", type=("build", "run")) + depends_on("py-mpi4py", type=("build", "run")) + depends_on("py-numpy", type=("build", "run")) + depends_on("py-pandas", type=("build", "run")) + depends_on("py-psutil", type=("build", "run")) + depends_on("py-pyyaml", type=("build", "run")) + depends_on("py-scipy", type=("build", "run")) + depends_on("py-tqdm", type=("build", "run")) + depends_on("steps@5:", type=("build", "run")) + + depends_on("py-pytest", type="test") + + @run_after("install") + @on_package_attributes(run_tests=True) + def test_install(self): + python("-m", "pytest", "tests/pytests") diff --git a/bluebrain/repo-bluebrain/packages/py-python-gnupg/package.py b/bluebrain/repo-bluebrain/packages/py-python-gnupg/package.py new file mode 100644 index 00000000000000..8e89fef01fe2e5 --- /dev/null +++ b/bluebrain/repo-bluebrain/packages/py-python-gnupg/package.py @@ -0,0 +1,21 @@ +# 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.package import * + + +class PyPythonGnupg(PythonPackage): + """A Python API for GNU Privacy Guard""" + + homepage = "https://github.com/vsajip/python-gnupg" + pypi = "python-gnupg/python-gnupg-0.5.1.tar.gz" + + maintainers("tristan0x") + + version("0.5.1", sha256="5674bad4e93876c0b0d3197e314d7f942d39018bf31e2b833f6788a6813c3fb8") + + depends_on("py-wheel@0.29.0:", type=("build")) + + depends_on("py-setuptools", type="build") diff --git a/bluebrain/repo-patches/packages/py-diffeqpy/package.py b/bluebrain/repo-patches/packages/py-diffeqpy/package.py new file mode 100644 index 00000000000000..5ccc25a2538202 --- /dev/null +++ b/bluebrain/repo-patches/packages/py-diffeqpy/package.py @@ -0,0 +1,25 @@ +# Copyright 2013-2022 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.package import * + + +class PyDiffeqpy(PythonPackage): + """Solving differential equations in Python using DifferentialEquations.jl + and the SciML Scientific Machine Learning organization""" + + homepage = "https://github.com/SciML/diffeqpy" + pypi = "diffeqpy/diffeqpy-2.3.0.tar.gz" + + maintainers("tristan0x") + + version("2.3.0", sha256="14d31321a5463a706733cc137d04e5bcf5cc22d44b6a44958ecd9972752041a1") + version("1.1.0", sha256="0ff315bf3d4345a83dc623b614e39c8365302df1cc9d36dcb8ce782d926f255b") + + depends_on("py-setuptools", type="build") + + depends_on("py-jill", when="@2:", type=("build", "run")) + depends_on("py-juliacall", when="@2:", type=("build", "run")) + depends_on("py-julia", when="@:2", type=("build", "run")) diff --git a/bluebrain/repo-patches/packages/py-jill/package.py b/bluebrain/repo-patches/packages/py-jill/package.py new file mode 100644 index 00000000000000..6d0c2894eb69ba --- /dev/null +++ b/bluebrain/repo-patches/packages/py-jill/package.py @@ -0,0 +1,28 @@ +# Copyright 2013-2022 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.package import * + + +class PyJill(PythonPackage): + """Julia Installer for Linux (and every other platform)""" + + homepage = "https://github.com/johnnychen94/jill.py" + pypi = "jill/jill-0.11.1.tar.gz" + + maintainers("tristan0x") + + version("0.11.1", sha256="fbfac07da3892672d09c489cf3be5d31ae38ac22b68ea49b147dbe79e339021b") + + depends_on("py-setuptools", type="build") + depends_on("py-poetry-core", type="build") + + depends_on("py-fire", type=("build", "run")) + depends_on("py-jsonschema", type=("build", "run")) + depends_on("py-python-gnupg", type=("build", "run")) + depends_on("py-requests", type=("build", "run")) + depends_on("py-requests-futures", type=("build", "run")) + depends_on("py-semantic-version", type=("build", "run")) + depends_on("py-wget", type=("build", "run")) diff --git a/bluebrain/repo-patches/packages/py-julia/package.py b/bluebrain/repo-patches/packages/py-julia/package.py new file mode 100644 index 00000000000000..c80e1ebe306fee --- /dev/null +++ b/bluebrain/repo-patches/packages/py-julia/package.py @@ -0,0 +1,23 @@ +# Copyright 2013-2022 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.package import * + + +class PyJulia(PythonPackage): + """python interface to julia""" + + homepage = "https://github.com/JuliaPy/pyjulia" + pypi = "julia/julia-0.6.1.tar.gz" + + maintainers("tristan0x") + + version("0.6.1", sha256="dbada3b47cb14b3e1893dae8339053e014cf09f8158f408b6a129ca4dfca1f61") + + depends_on("python@3.4:", type=("build", "run")) + + depends_on("py-setuptools", type="build") + + depends_on("julia", type=("build", "run"))