Installation
Open a terminal
window and navigate to the folder where you want to
install HADDOCK3; for example: software
. The current installation
instructions are local and will affect only your user.
Before starting with the installation of HADDOCK3, make sure to properly install CNS. If you have installed a previous version of HADDOCK, you may already have a suitable version of CNS. Please do check your CNS installation before proceeding.
1. Clone this repository:
Mind the --recursive
flag when cloning!
git clone --recursive https://github.com/haddocking/haddock3.git
Go to the haddock3 directory
cd haddock3
and type the following commands to first install the FCC source code provided
cd src/fcc/src
chmod u+x Makefile
make
cd -
Then, follow the same logic to install the fast-rmsdmatrix source code
cd src/fast-rmsdmatrix/src
chmod u+x Makefile
make fast-rmsdmatrix
cd -
By the end of the above commands, you should be back to the haddock3 main folder.
2 Create a virtual environment with Python 3.9+ and install dependencies:
You can use Python’s venv
or conda
depending on your choice.
Commands are provided below:
with venv
virtualenv venv --python=3.9
source venv/bin/activate
pip install -r requirements.txt
with conda
conda create -n haddock3 python=3.9
conda activate haddock3
pip install -r requirements.txt
3. Install the HADDOCK3 package and command line clients
python setup.py develop --no-deps
Of note, here we are still using the depreacted setup.py
command due to HPC, GRID and LOCAL compabilities with CNS.
4. Make a CNS binary shortcut to the expected path:
mkdir -p bin/
# on mac
ln -s /PATH/TO/cns_solve_1.3/mac-intel-darwin/source/cns_solve-2206031450.exe bin/cns
# on linux
ln -s /PATH/TO/cns_solve_1.3/intel-x86_64bit-linux/source/cns_solve-2002171359.exe bin/cns
As long as you have the (haddock3)
python environment activated, you can
navigate away from the haddock3 installation folder. You can run
HADDOCK3 from anywhere. To run HADDOCK3, follow the usage
guidelines.
5. Keep your installation up to date
Navigate to the haddock3 installation folder (the one you cloned from
GitHub). Ensure you have the (haddock3)
python environment activated.
Please keep in mind that HADDOCK3, as well as its
dependencies, are under active development.
If the updating processing fails, it is safest to reinstall
from scratch. Always refer to the latest installation guidelines.
# if you used `venv`
source venv/bin/activate
# if you used `conda`
conda activate haddock3
Afterwards:
# pull the latest source code from our repository to your computer
git pull
# update the dependencies by running:
pip install -r requirements.txt --upgrade
# ensure all command-lines clients are installed
python setup.py develop --no-deps
Of note, here we are still using the depreacted setup.py
command due to HPC, GRID and LOCAL compabilities with CNS.
6. (Optional) Install MPI libraries if you intend to run HADDOCK3 with MPI
To use the mpi implementation of haddock3 you must have mpi4py installed in the (haddock3)
python environment, and OpenMPI in the host system.
$ pip install mpi4py
# or
$ conda install -c conda-forge mpi4py
Later, you can find here instructions on how to run HADDOCK3 with MPI.
Installing third-party packages
HADDOCK3 can integrate third-party software in its workflows. We are not responsible for the proper installation of such packages, but we help you install them. Below, you will find a list of all third-party packages HADDOCK3 can use and guidelines for their proper installation.
lightdock
To install lightdock follow the instructions on the project’s website. Remember to install it under the same Python environment you created for HADDOCK3. If you have any doubts, please let us know.
gdock
Clone the latest version:
cd some-folder
git clone https://github.com/rvhonorato/gdock.git
Install Python3+ dependencies
pip install deap scipy mgzip biopython
Set
GDOCK_PATH
export GDOCK_PATH=some-folder
Important: These are not the full gdock
installation
instructions as only the model generation is used here. Please check the
repository page for more
information.