Installation ============ DROP is available on `bioconda `_ . In case the conda channel priority is set to ``strict``, it should be reset to ``flexible``: .. code-block:: bash conda config --set channel_priority true We recommend using a dedicated conda environment (here: ``drop_env``) for installing DROP. Use ``mamba`` instead of ``conda`` as it provides more reliable and faster dependency solving. .. code-block:: bash mamba create -n drop_env -c conda-forge -c bioconda drop --override-channels In the case of installation troubles, we recommend using the fixed ``DROP_.yaml`` installation file available on our `public server. `_ Install the latest version and use the full path in the following command to install the conda environment ``drop_env`` .. code-block:: bash mamba env create -f DROP_1.6.0.yaml Installation time: ~ 10min We can test whether the pipeline runs through by setting up the demo dataset in an empty directory (e.g. ``~/drop_demo``). .. code-block:: bash conda activate drop_env mkdir ~/drop_demo cd ~/drop_demo # this command will download the necessary data and pipeline files drop demo DROP is run using `snakemake `_ commands. Run time: ~25min .. code-block:: bash snakemake --cores 1 -n # dryrun snakemake --cores 1 Initialize a project -------------------- The config and sample annotation files from the demo project can be modified to be used for a new project. Alternatively, a new DROP project can be set up using ``drop init``. .. code-block:: bash cd drop init This will create an empty ``config.yaml`` file that needs to be filled according to the project data. You also need to prepare a sample annotation file. Go to :doc:`prepare` for more details. .. _otherversions: Other DROP versions ------------------- The following instructions are for users who have not used ``conda`` to install DROP previously. In order for the ``pip`` installation to take effect, you must first uninstall any previous installation using the following command. If you have not installed DROP previously, then there is no need to uninstall it. .. code-block:: bash pip uninstall drop Other versions of DROP, such as ``dev`` can be found in the `repository `_ under different branches. Make sure that the :any:`prerequisites` are installed, preferably in a conda environment. Then install the desired version (e.g. ``dev`` in this example) from GitHub using ``pip``. .. code-block:: bash pip install git+https://github.com/gagneurlab/drop.git@dev Alternatively, you can clone the desired branch of the repository and install from directory. .. code-block:: bash git clone -b dev https://github.com/gagneurlab/drop.git pip install ./drop If the package needs to be updated frequently, it is more convenient to use the ``-e`` option of ``pip``. Any new update pulled from the repository will be available without reinstall. Note, that this requires an explicit call to update any existing project (:any:`dropUpdate`). .. code-block:: bash pip install -e ./drop # update project directory cd drop update .. _prerequisites: Installation without conda -------------------------- The easiest way to ensure that all dependencies are installed is to install the bioconda package. Alternatively, DROP can be installed with ``pip``. In this case the following dependencies must be met: * Programming languages: * `python `_ >= 3.6 and `pip `_ >= 19.1 * `R `_ >= 3.6, <=4.0.2 and corresponding `bioconductor `_ version * Commandline tools: * `GNU bc `_ * `GNU wget `_ * `tabix `_ * `samtools `_ >= 1.9 * `bcftools `_ >= 1.9 * `GATK `_ >= 4.1.8 * `graphviz `_ * `pandoc `_ .. note:: If you are using an already existing R installation, make sure that the R and bioconductor versions match. Otherwise, use the newest versions of R and bioconductor. At the first invocation, all the necessary R packages will be installed. As this is a lengthy process, it might be desirable to install them in advance. .. code-block:: bash # optional Rscript /drop/installRPackages.R drop/requirementsR.txt