====== Anaconda on DARWIN ====== $ vpkg_versions anaconda Available versions in package (* = default version): [/opt/shared/valet/2.1/etc/anaconda.vpkg_yaml] anaconda Open Enterprise Python * 5.3.1:python2 Anaconda Python2 5.3.1:python3 Anaconda Python3 2020.11:python3 Anaconda Python3 (Python 2 deprecated) 2022.05:python3 Anaconda Python3 (Python 2 deprecated) 2023.03:python3 Anaconda Python3 (Python 2 deprecated) 2024.02:python3 Anaconda Python3 (Python 2 deprecated) See [[software:anaconda:darwin#Recipes|Recipes]] for examples of building virtual environments for specific packages. ===== Virtual Environment ==== If you are going to follow the instructions for creating an Anaconda virtual environment on DARWIN consider using a slight modification to the documentation provided by each software package and use VALET to load the proper version of Anaconda for Python 2 or Python 3, specify a path in your home (''$HOME'') or workgroup (''$WORKDIR'') directory not in the system path for Anaconda, and also ignore the warnings to update ''conda'' as it is building your virtual environment. See the example below which creates a virtual Anaconda environment based on Python 3 for FEniCS called ''fenicsproject'' in the ''traine'' home directory and installs all the fenics packages and mshr. Once the environment is created, then a simple interactive test is done on a compute node via the ''devel'' partition to verify the new ''fenicsproject'' Anaconda environment is working properly. [traine@login00 ~]$ vpkg_devrequire anaconda/2024.02:python3 Adding package `anaconda/2024.02:python3` to your environment [traine@login00 ~]$ conda create -p ~/fenicsproject -c conda-forge fenics fenics-dijitso fenics-dolfin fenics-ffc fenics-fiat fenics-libdolfin fenics-ufl mshr Retrieving notices: ...working... done Channels: - conda-forge - defaults Platform: linux-64 Collecting package metadata (repodata.json): done Solving environment: done ## Package Plan ## environment location: /home/1201/fenicsproject added / updated specs: - fenics - fenics-dijitso - fenics-dolfin - fenics-ffc - fenics-fiat - fenics-libdolfin - fenics-ufl - mshr The following packages will be downloaded: ... ... ... Proceed ([y]/n)? y Preparing transaction: done Verifying transaction: done Executing transaction: done ... ... ... # # To activate this environment, use: # > conda activate /home/1201/fenicsproject # # To deactivate an active environment, use: # > conda deactivate # [traine@login00 ~]$ workgroup -g it_css [(it_css:traine)@login00 ~]$ salloc --partition=idle salloc: Pending job allocation 5275439 salloc: job 5275439 queued and waiting for resources salloc: job 5275439 has been allocated resources salloc: Granted job allocation 5275439 salloc: Waiting for resource configuration salloc: Nodes r1n00 are ready for job [traine@r1n00 ~]$ vpkg_devrequire anaconda/2024.02:python3 Adding package `anaconda/2024.02:python3` to your environment [traine@r1n00 ~]$ conda activate ~/fenicsproject (/home/1201/fenicsproject) [traine@r1n00 ~]$ python3 -c "import mshr" (/home/1201/fenicsproject) [traine@r1n00 ~]$ conda deactivate [traine@r1n00 ~]$ exit logout salloc: Relinquishing job allocation 5275439 [(it_css:traine)@login00 ~]$ ===== Recipes ==== Examples documented as recipes to be used for specific installations including using a ''workgroup'' directory as well as creating VALET packages for these environments and job scripts setup for batch runs, but can also perhaps help others in solving similar installation dilemmas. * [[technical:recipes:pyqt5-in-virtualenv|Building PyQt5 in a Python Virtual Environment]] * [[technical:recipes:jupyter-notebook| Building a Jupyter Notebook Python Virtual Environment]] * [[technical:recipes:keras-in-virtualenv|Keras Python Virtual Environment]] * Gurobi Python Virtual Environments * [[software:gurobi:caviness#serial-or-threaded-python-environment|Gurobi Python Threaded and Serial]] * [[software:gurobi:caviness#mpi-python-environment|Gurobi Python MPI]] * [[technical:recipes:emcee-in-virtualenv|Python Virtualenv: emcee and pyKLIP]] * [[technical:recipes:mpi4py-in-virtualenv|Building Python Virtual Environments with mpi4py]] * [[technical:recipes:tensorflow-in-virtualenv|Building a TensorFlow Python Virtual Environment]] * [[technical:recipes:openmm|Building an OpenMM Python Virtual Environment]]