lucapinello / CRISPResso

Software pipeline for the analysis of CRISPR-Cas9 genome editing outcomes from sequencing data
Other
131 stars 55 forks source link

Make installing of external dependencies optional #25

Closed jrderuiter closed 6 years ago

jrderuiter commented 6 years ago

Currently it is not possible to install CRISPResso without the external dependencies if these are not yet in the current PATH. This makes it difficult to install CRISPResso in a conda environment, where the external dependencies are installed as part of the environment (which is not yet active and therefore not detectable by the CRISPResso setup.py script.

I would propose to separate the installation of the external tools from the setup.py script, as I think that setup.py should not be responsible for installing the external dependencies to start with. If you would like to facilitate the installation of external tools, I would either provide instructions to do so or provide a separate script for installing the dependencies (or ideally both).

jrderuiter commented 6 years ago

In case it helps, this is the conda environment definition that I'm trying to use:

name: crispresso
channels:
  - bioconda
  - conda-forge
dependencies:
  - python =2.7
  - flash
  - emboss
  - trimmomatic

  - numpy >=1.9
  - pandas >=0.15
  - matplotlib >=1.3.1
  - seaborn >=0.7.1

  - pip
  - pip:
    - git+https://github.com/jrderuiter/CRISPResso.git@no-install-deps

It works fine with my fork of CRISPResso, which skips the dependency installation.

lucapinello commented 6 years ago

Hey Julian,

I have already created a conda recipe to fix this, but still need to update the docs:

i. Download and install Anaconda Python 2.7 (or miniconda2) following the instruction at this link: http://continuum.io/downloads.

ii. Open a terminal and type:

conda config --add channels r
conda config --add channels defaults
conda config --add channels conda-forge
conda config --add channels bioconda

conda install CRISPResso 

iii. Close the terminal and open a new one, this will set the PATH variable. Now you are ready to use the command line version of CRISPResso.

iv. If you have installed an old version of CRISPResso, please remove it with the following command to avoid conflicts:

rm -Rf /home/user/CRISPResso_dependencies

Thanks for reporting this!