nanoporetech / pomoxis

Analysis components from Oxford Nanopore Research
Other
94 stars 23 forks source link

Installing with Conda issues (unlisted dependencies). Git clone issue #19

Closed LarsDu closed 5 years ago

LarsDu commented 6 years ago

I am interested in using the package in Conda rather than virtualenv and there does not appear to be a working Conda package available.

The HCC Conda package on the Anaconda Cloud is missing numerous dependencies, some of which I have listed here.

bioconda minimap2
bioconda racon
bioconda samtools
bioconda bwa
bioconda miniasm
bioconda porechop
bioconda watchdog-wms

bioconda pysam
anaconda pandas
msgpack-python
bioconda mappy
conda-forge matplotlib
conda-forge sphinx_rtd_theme
bioconda bcftools

Are there any plans for an official Conda package or Docker image?

cjw85 commented 6 years ago

Pomoxis is provided as a source distribution only through github, all python requirements are listed in the requirements.txt, and third party binaries are included as submodules. A list of required system libraries is present in the README. There are no currently plans to create a conda package.

Having said that, most of the installation is handled in the usual way by setuptools (the only non-trivial part is compilation and inclusion of the third party binaries). My understanding of conda is that it wouldn't be difficult for someone to create a conda recipe from the existing build, maybe someone over at bioconda-recipes can do this.

thomcuddihy commented 5 years ago

Having a stand-alone pip package for pomoxis that uses the environment paths for binaries might be an idea. Include a subroutine to test for presence of binaries and versions if required. I find this approach is much easier to deploy and doesn't rely on the user compiling stuff.

cjw85 commented 5 years ago

@thomcuddihy Thank you for this. We have made the setup.py script more friendly to other packaging environments. You now must opt-in to copying binaries into the build; simply running setup.py in the usual way will install only the python components of pomoxis (and the shell scripts).

Based on your notes we have added a conda target to the Makefile which will construct a conda environment using conda packages as much as possible. Hopefully this will make installation easier for more users. We do not typically use conda ourselves, so this has had minimal testing.

cjw85 commented 5 years ago

Pomoxis is now available on bioconda.

We will endeavour to keep this up-to-date with the github and pypi releases.