Merge branch 'anaconda' into 'master'

Anaconda

See merge request Pmodules/buildblocks!2
This commit is contained in:
2019-04-09 16:01:59 +02:00
4 changed files with 93 additions and 0 deletions

24
Programming/anaconda/build Executable file
View File

@@ -0,0 +1,24 @@
#!/usr/bin/env modbuild
pbuild::add_to_group 'Programming'
source "${BUILDBLOCK_DIR}/files/config-${V_PKG}.sh"
pbuild::pre_prep() {
curl -fsSLo "$PMODULES_DISTFILESDIR/Miniconda2-${CONDA_VERSION}-Linux-x86_64.sh" \
"https://repo.anaconda.com/miniconda/Miniconda2-${CONDA_VERSION}-Linux-x86_64.sh"
}
pbuild::configure() {
:
}
pbuild::compile() {
:
}
pbuild::install() {
# Install conda
bash "$PMODULES_DISTFILESDIR/Miniconda2-${CONDA_VERSION}-Linux-x86_64.sh" \
-b -p "$PREFIX/conda"
}

View File

@@ -0,0 +1,6 @@
# version-specific settings
# Miniconda version. Defaults to "latest"
# Should match the version distributed with anaconda
CONDA_VERSION=4.5.12

View File

@@ -0,0 +1,2 @@
anaconda/2018.12 unstable

View File

@@ -0,0 +1,61 @@
#%Module1.0
module-whatis "Conda package manager and Anaconda software distribution"
module-url "https://www.anaconda.com/"
module-license "3-clause BSD License and 3rd party software licenses. https://docs.continuum.io/anaconda/eula/"
module-maintainer "Spencer Bliven <spencer.bliven@psi.ch>"
module-help "
Anaconda is a package manager, an environment manager, a Python/R data science
distribution, and a collection of over 1,500+ open source packages. Anaconda is
free and easy to install, and it offers free community support.
Conda is an open source package management system and environment management
system that runs on Windows, macOS and Linux. Conda quickly installs, runs and
updates packages and their dependencies. Conda easily creates, saves, loads and
switches between environments on your local computer. It was created for Python
programs, but it can package and distribute software for any language.
Conda as a package manager helps you find and install packages. If you need a
package that requires a different version of Python, you do not need to switch
to a different environment manager, because conda is also an environment
manager. With just a few commands, you can set up a totally separate
environment to run that different version of Python, while continuing to run
your usual version of Python in your normal environment.
This package provides the conda command (miniconda), as well as releases of the
Anaconda distribution, built against several python versions.
"
set dont-setenv { LD_LIBRARY_PATH }
# Check for supported shell types
set shelltype [module-info shelltype]
switch -- $shelltype {
"sh" {
}
default {
puts stderr "Shells of type '$shelltype' are NOT supported!"
}
}
switch [module-info mode] {
"load" {
#TODO check whether another conda version is present (conflicts)
puts stderr "Using conda from $P/$V\n"
puts stdout "source \"$PREFIX/conda/etc/profile.d/conda.sh\";\n"
# Activate base
puts stdout "conda activate;\n"
}
"unload" -
"remove" {
# Deactivate
puts stdout {while [[ "${CONDA_SHLVL:-0}" -gt 0 ]]; do conda deactivate; done;}
# Unload conda
puts stdout {unset $(set|sed -rn 's/^(_?conda[a-z_]*).*$/\1/pI');}
}
}