This is the future
Conda on Marvin on a per user basis, so you have total control over it. Log in and from the command line type Only ever do this once or you will get error pessages):
Either log out and back in, or type:
This will make a user specific version of conda avaible to you.
To find the package you want, search here:
or google search: - as there are multiple channels!!
We strongly advise using environments: You can do this in many ways. Please see the link for more details (here you can specifiy exact version etc ..)
The easiest usage would be: e.g.
conda create -n NAME_OF_ENV PACKAGE_TO_INSTALL
This is an example of a toold called roary
conda create -n roaryENV roary
once it has installed, you can activate the environment by typing:
conda activate roaryENV
As a lot of tools have dependencies, all the dependencies should be installed during this process. It is a good idea to keep them looked up in their own ENV, so they dont interfere with dependencies and spcific version required for other things you have installed.
To get the latest version
conda update roary
You are now ready to use this package.
conda deactivate to leave this environment.
If you want to install a specific version of a tool (use the equals sign and the version you want):
conda create -n samtools1.3 samtools=1.3
conda create -n python27 python=27
once you have this version of python installed, you can easily use (after you have activated the python env:
pip install biopython (or whatever you require)
conda and perl Firstly, perl is a pain to look after. The way the cluster has been historically set up, all perl versions and modules are different on all the nodes. The new cluster will not be like this. Therefore, we cannot install modules for every user on all the nodes. What we recommend is you having you own perl version using conda:
conda create -n perlEnv perl
conda activate perlEnv
then install the modules you want
cpan App::cpanminus cpanm Term::ReadKey
Bioperl is difficult to install. Fact. But someone has put this in coda. So lets use that:
conda create -n bioperlEnv perl-bioperl
To list all the environments you have created (you will forget the envs after a while, so name them well!!):
conda info –envs
To list all the dependencies you have within an env
conda list -n envname
For example, trinity comes with jellyfish, which can be difficult to install. Therefore some of these tools are a treasure chest of cools tools, which can save many hours and kg of pain in installation process.
To install multiple tools in one env:
conda create -n python36_bioperl python=3.6 perl-bioperl mummer scipy numpy biopython matplotlib
You can activate multiple conda envs, they have preference as the latest is used first in you path:
conda activate trinityenv conda activate python27 conda activate python36
in this example, a simple python command will use the python3 version as this was the last to be activated, if you want python 2. You have to specifiy python2. The perl will be the one in the monster python36 env i created. But jelly fish will be from the trinity env. Make sense?
installing packages: https://bioconda.github.io/conda-recipe_index.html
conda and samtools problems
Bascially sometimes this get installed from the wrong channel. This may happen with other tools. We havent come across this yet.
The problem will look like this if you try to use samtools:
samtools: error while loading shared libraries: libcrypto.so.1.0.0: cannot open shared object file: No such file or directory).
install from the bioconda channel: -c bioconda conda install -c bioconda samtools
or specifically the problem was found with unicycler: remove the old unicycler failed install:
conda remove --name unicyclerENV --all
remake this env from the bioconda channel:
conda create -n unicyclerENV -c bioconda unicycler
to update the base conda, if required
conda update -n base conda
conda hanging on solving environment
Can you try this please, then try re installing the beastie package.
conda config --remove channels conda-forge conda config --add channels conda-forge
if this still doesnt work try:
conda config --set channel_priority strict