From 8c4dc33e29023f52dd358ca213317805f6d2374c Mon Sep 17 00:00:00 2001 From: Anton Date: Thu, 13 Jun 2024 12:09:52 -0600 Subject: [PATCH] Add docker + update setup --- files/docker/Dockerfile | 44 +++ files/docker/env/Pangenomics_Global.yml | 418 ++++++++++++++++++++++ files/docker/env/TDA.yml | 288 +++++++++++++++ files/docker/env/anvio-7.1.yml | 280 +++++++++++++++ files/docker/env/ncbi-genome-download.yml | 44 +++ files/docker/env/rgi.yml | 221 ++++++++++++ setup.md | 246 +++++++------ 7 files changed, 1433 insertions(+), 108 deletions(-) create mode 100644 files/docker/Dockerfile create mode 100644 files/docker/env/Pangenomics_Global.yml create mode 100644 files/docker/env/TDA.yml create mode 100644 files/docker/env/anvio-7.1.yml create mode 100644 files/docker/env/ncbi-genome-download.yml create mode 100644 files/docker/env/rgi.yml diff --git a/files/docker/Dockerfile b/files/docker/Dockerfile new file mode 100644 index 0000000..ce44628 --- /dev/null +++ b/files/docker/Dockerfile @@ -0,0 +1,44 @@ +FROM ubuntu:focal + +# Set up prefix for conda +ENV CONDA_DIR=/miniconda3 +ENV LANG=C.UTF-8 LC_ALL=C.UTF-8 +ENV PATH=${CONDA_DIR}/bin:${PATH} + +# Copy environment definitions and database loading script +COPY env/*.yml /tmp/ + +# Install required system packages +RUN apt-get update > /dev/null && \ + apt-get install --no-install-recommends --yes \ + wget bzip2 ca-certificates tree git tini zip unzip ncbi-blast+ \ + > /dev/null && \ + apt-get clean && \ + rm -rf /var/lib/apt/lists/* && \ + # Install conda + wget --no-hsts --quiet -O /tmp/miniconda.sh https://repo.anaconda.com/miniconda/Miniconda3-py39_24.4.0-0-Linux-x86_64.sh && \ + /bin/bash /tmp/miniconda.sh -b -p ${CONDA_DIR} && \ + rm /tmp/miniconda.sh && \ + conda clean --tarballs --index-cache --packages --yes && \ + find ${CONDA_DIR} -follow -type f -name '*.a' -delete && \ + find ${CONDA_DIR} -follow -type f -name '*.pyc' -delete && \ + conda clean --force-pkgs-dirs --all --yes && \ + echo ". ${CONDA_DIR}/etc/profile.d/conda.sh && conda activate base" >> /etc/skel/.bashrc && \ + echo ". ${CONDA_DIR}/etc/profile.d/conda.sh && conda activate base" >> ~/.bashrc && \ + # Set a faster dependency solver and add necessary channels + conda config --set solver libmamba && \ + conda config --add channels conda-forge && \ + conda config --add channels bioconda && \ + conda update --quiet --yes --all && \ + # Create environments + find /tmp/ -name '*.yml' | xargs -I {} conda env create --quiet --yes --file {} && \ + # Clean up + conda clean --quiet --yes -all && \ + rm /tmp/*.yml + +# Find this file here: https://zenodo.org/records/11374283 +ADD panworkshop-databases.tgz / + +WORKDIR /root +ENTRYPOINT ["tini", "--"] +CMD [ "/bin/bash" ] diff --git a/files/docker/env/Pangenomics_Global.yml b/files/docker/env/Pangenomics_Global.yml new file mode 100644 index 0000000..5f3f076 --- /dev/null +++ b/files/docker/env/Pangenomics_Global.yml @@ -0,0 +1,418 @@ +name: Pangenomics_Global +channels: + - bioconda + - conda-forge + - defaults +dependencies: + - _libgcc_mutex=0.1=conda_forge + - _openmp_mutex=4.5=2_gnu + - _r-mutex=1.0.1=anacondar_1 + - alsa-lib=1.2.11=hd590300_1 + - aragorn=1.2.41=h031d066_2 + - archspec=0.2.3=pyhd8ed1ab_0 + - aria2=1.37.0=h347180d_1 + - aws-c-auth=0.7.22=h96bc93b_2 + - aws-c-cal=0.6.14=h88a6e22_1 + - aws-c-common=0.9.19=h4ab18f5_0 + - aws-c-compression=0.2.18=h83b837d_6 + - aws-c-event-stream=0.4.2=ha47c788_12 + - aws-c-http=0.8.1=h29d6fba_17 + - aws-c-io=0.14.8=h21d4f22_5 + - aws-c-mqtt=0.10.4=h759edc4_4 + - aws-c-s3=0.5.9=h594631b_3 + - aws-c-sdkutils=0.1.16=h83b837d_2 + - aws-checksums=0.1.18=h83b837d_6 + - aws-crt-cpp=0.26.9=he3a8b3b_0 + - aws-sdk-cpp=1.11.329=hba8bd5f_3 + - binutils_impl_linux-64=2.40=ha1999f0_1 + - blast=2.15.0=pl5321h6f7f691_1 + - blosc=1.21.5=hc2324a3_1 + - bokeh=3.4.1=pyhd8ed1ab_0 + - bwidget=1.9.14=ha770c72_1 + - bzip2=1.0.8=hd590300_5 + - c-ares=1.28.1=hd590300_0 + - c-blosc2=2.14.4=hb4ffafa_1 + - ca-certificates=2024.2.2=hbcca054_0 + - cairo=1.18.0=h3faef2a_0 + - cogtriangles=2012.04=h4ac6f70_2 + - colorama=0.4.6=pyhd8ed1ab_0 + - colorlover=0.3.0=py_0 + - contourpy=1.2.1=py310hd41b1e2_0 + - curl=8.8.0=he654da7_0 + - diamond=2.1.9=h43eeafb_0 + - entrez-direct=21.6=he881be0_0 + - expat=2.6.2=h59595ed_0 + - font-ttf-dejavu-sans-mono=2.37=hab24e00_0 + - font-ttf-inconsolata=3.000=h77eed37_0 + - font-ttf-source-code-pro=2.038=h77eed37_0 + - font-ttf-ubuntu=0.83=h77eed37_2 + - fontconfig=2.14.2=h14ed4e7_0 + - fonts-conda-ecosystem=1=0 + - fonts-conda-forge=1=0 + - freetype=2.12.1=h267a509_2 + - fribidi=1.0.10=h36c2ea0_0 + - gawk=5.3.0=ha916aea_0 + - gcc_impl_linux-64=13.2.0=h9eb54c0_7 + - get_homologues=3.6.2=hdfd78af_0 + - gettext=0.22.5=h59595ed_2 + - gettext-tools=0.22.5=h59595ed_2 + - gflags=2.2.2=he1b5a44_1004 + - gfortran_impl_linux-64=13.2.0=h738fc78_7 + - giflib=5.2.2=hd590300_0 + - glog=0.7.0=hed5481d_0 + - gmp=6.3.0=h59595ed_1 + - gmpy2=2.1.5=py310hc7909c9_1 + - graphite2=1.3.13=h59595ed_1003 + - gxx_impl_linux-64=13.2.0=h2a599c4_7 + - harfbuzz=8.5.0=hfac3d4d_0 + - hdf5=1.14.3=nompi_h4f84152_101 + - hmmer=3.4=hdbdd923_1 + - icu=73.2=h59595ed_0 + - infernal=1.1.5=pl5321h031d066_1 + - jinja2=3.1.4=pyhd8ed1ab_0 + - kernel-headers_linux-64=2.6.32=he073ed8_17 + - keyutils=1.6.1=h166bdaf_0 + - krb5=1.21.2=h659d440_0 + - lcms2=2.16=hb7c19ff_0 + - ld_impl_linux-64=2.40=hf3520f5_1 + - lerc=4.0.0=h27087fc_0 + - libabseil=20240116.2=cxx17_h59595ed_0 + - libaec=1.1.3=h59595ed_0 + - libarrow=14.0.2=hcb6531f_24_cpu + - libarrow-acero=14.0.2=hbabe93e_24_cpu + - libarrow-dataset=14.0.2=hbabe93e_24_cpu + - libarrow-substrait=14.0.2=he4f5ca8_24_cpu + - libasprintf=0.22.5=h661eb56_2 + - libasprintf-devel=0.22.5=h661eb56_2 + - libblas=3.9.0=22_linux64_openblas + - libbrotlicommon=1.1.0=hd590300_1 + - libbrotlidec=1.1.0=hd590300_1 + - libbrotlienc=1.1.0=hd590300_1 + - libcblas=3.9.0=22_linux64_openblas + - libcrc32c=1.1.2=h9c3ff4c_0 + - libcups=2.3.3=h4637d8d_4 + - libcurl=8.8.0=hca28451_0 + - libdeflate=1.20=hd590300_0 + - libedit=3.1.20191231=he28a2e2_2 + - libev=4.33=hd590300_2 + - libevent=2.1.12=hf998b51_1 + - libexpat=2.6.2=h59595ed_0 + - libffi=3.4.2=h7f98852_5 + - libgcc-devel_linux-64=13.2.0=hceb6213_107 + - libgcc-ng=13.2.0=h77fa898_7 + - libgd=2.3.3=h119a65a_9 + - libgettextpo=0.22.5=h59595ed_2 + - libgettextpo-devel=0.22.5=h59595ed_2 + - libgfortran-ng=13.2.0=h69a702a_7 + - libgfortran5=13.2.0=hca663fb_7 + - libglib=2.80.2=hf974151_0 + - libgomp=13.2.0=h77fa898_7 + - libgoogle-cloud=2.24.0=h2736e30_0 + - libgoogle-cloud-storage=2.24.0=h3d9a0c8_0 + - libgrpc=1.62.2=h15f2491_0 + - libiconv=1.17=hd590300_2 + - libidn2=2.3.7=hd590300_0 + - libjpeg-turbo=3.0.0=hd590300_1 + - liblapack=3.9.0=22_linux64_openblas + - libnghttp2=1.58.0=h47da74e_1 + - libnsl=2.0.1=hd590300_0 + - libopenblas=0.3.27=pthreads_h413a1c8_0 + - libparquet=14.0.2=hacf5a1f_24_cpu + - libpng=1.6.43=h2797004_0 + - libprotobuf=4.25.3=h08a7969_0 + - libre2-11=2023.09.01=h5a48ba9_2 + - libsanitizer=13.2.0=h6ddb7a1_7 + - libsqlite=3.45.3=h2797004_0 + - libssh2=1.11.0=h0841786_0 + - libstdcxx-devel_linux-64=13.2.0=hceb6213_107 + - libstdcxx-ng=13.2.0=hc0a3c3a_7 + - libthrift=0.19.0=hb90f79a_1 + - libtiff=4.6.0=h1dd3fc0_3 + - libunistring=0.9.10=h7f98852_0 + - libutf8proc=2.8.0=h166bdaf_0 + - libuuid=2.38.1=h0b41bf4_0 + - libwebp=1.4.0=h2c329e2_0 + - libwebp-base=1.4.0=hd590300_0 + - libxcb=1.15=h0b41bf4_0 + - libxcrypt=4.4.36=hd590300_1 + - libxml2=2.12.7=hc051c1a_0 + - libzlib=1.2.13=hd590300_5 + - lz4-c=1.9.4=hcb278e6_0 + - lzo=2.10=hd590300_1001 + - mafft=7.525=h031d066_1 + - make=4.3=hd18ef5c_1 + - markupsafe=2.1.5=py310h2372a71_0 + - mcl=22.282=pl5321h031d066_1 + - mmseqs2=15.6f452=pl5321h6a68c12_2 + - mpc=1.3.1=hfe3b2da_0 + - mpfr=4.2.1=h9458935_1 + - ncbi-vdb=3.1.1=h4ac6f70_0 + - ncurses=6.5=h59595ed_0 + - networkx=3.3=pyhd8ed1ab_1 + - nlopt=2.7.1=py310h236f06b_5 + - nomkl=1.0=h5ca1d4c_0 + - numexpr=2.10.0=py310h3ea09b0_100 + - numpy=1.26.4=py310hb13e2d6_0 + - openjdk=22.0.1=hb622114_0 + - openjpeg=2.5.2=h488ebb8_0 + - openssl=3.3.0=h4ab18f5_3 + - orc=2.0.1=h17fec99_1 + - packaging=24.0=pyhd8ed1ab_0 + - pandas=2.2.2=py310hf9f9076_1 + - pandoc=3.2=ha770c72_0 + - pango=1.52.2=ha41ecd1_0 + - pcre=8.45=h9c3ff4c_0 + - pcre2=10.43=hcad00b1_0 + - perl=5.32.1=7_hd590300_perl5 + - perl-archive-tar=2.40=pl5321hdfd78af_0 + - perl-carp=1.38=pl5321hdfd78af_4 + - perl-common-sense=3.75=pl5321hdfd78af_0 + - perl-compress-raw-bzip2=2.201=pl5321h87f3376_1 + - perl-compress-raw-zlib=2.105=pl5321h87f3376_0 + - perl-encode=3.19=pl5321hec16e2b_1 + - perl-exporter=5.72=pl5321hdfd78af_2 + - perl-exporter-tiny=1.002002=pl5321hdfd78af_0 + - perl-extutils-makemaker=7.70=pl5321hd8ed1ab_0 + - perl-gd=2.76=pl5321h5b5514e_1 + - perl-io-compress=2.201=pl5321hdbdd923_2 + - perl-io-zlib=1.14=pl5321hdfd78af_0 + - perl-json=4.10=pl5321hdfd78af_0 + - perl-json-xs=2.34=pl5321h4ac6f70_6 + - perl-list-moreutils=0.430=pl5321hdfd78af_0 + - perl-list-moreutils-xs=0.430=pl5321h031d066_2 + - perl-parent=0.236=pl5321hdfd78af_2 + - perl-pathtools=3.75=pl5321hec16e2b_3 + - perl-scalar-list-utils=1.62=pl5321hec16e2b_1 + - perl-types-serialiser=1.01=pl5321hdfd78af_0 + - phylip=3.697=h470a237_0 + - pillow=10.3.0=py310hf73ecf8_0 + - pip=24.0=pyhd8ed1ab_0 + - pixman=0.43.2=h59595ed_0 + - plotly=5.22.0=pyhd8ed1ab_0 + - ppanggolin=2.0.5=py310h4b81fae_0 + - pthread-stubs=0.4=h36c2ea0_1001 + - py-cpuinfo=9.0.0=pyhd8ed1ab_0 + - pyrodigal=3.4.1=py310h4b81fae_0 + - pytables=3.9.2=py310hd76cd5d_2 + - python=3.10.14=hd12c33a_0_cpython + - python-dateutil=2.9.0=pyhd8ed1ab_0 + - python-tzdata=2024.1=pyhd8ed1ab_0 + - python_abi=3.10=4_cp310 + - pytz=2024.1=pyhd8ed1ab_0 + - pyyaml=6.0.1=py310h2372a71_1 + - r-abind=1.4_5=r43hc72bb7e_1005 + - r-ape=5.8=r43h08d816e_0 + - r-arrow=14.0.1=r43h59595ed_0 + - r-assertthat=0.2.1=r43hc72bb7e_4 + - r-backports=1.5.0=r43hb1dbf0f_0 + - r-base=4.3.3=hf0d99cb_1 + - r-base64enc=0.1_3=r43h57805ef_1006 + - r-bit=4.0.5=r43h57805ef_1 + - r-bit64=4.0.5=r43h57805ef_2 + - r-bitops=1.0_7=r43h57805ef_2 + - r-boot=1.3_30=r43hc72bb7e_0 + - r-broom=1.0.6=r43hc72bb7e_0 + - r-bslib=0.7.0=r43hc72bb7e_0 + - r-cachem=1.1.0=r43hb1dbf0f_0 + - r-car=3.1_2=r43hc72bb7e_1 + - r-cardata=3.0_5=r43hc72bb7e_2 + - r-caret=6.0_94=r43h57805ef_1 + - r-catools=1.18.2=r43ha503ecb_2 + - r-cellranger=1.1.0=r43hc72bb7e_1006 + - r-class=7.3_22=r43h57805ef_1 + - r-cli=3.6.2=r43ha503ecb_0 + - r-clipr=0.8.0=r43hc72bb7e_2 + - r-clock=0.7.0=r43ha503ecb_1 + - r-cluster=2.1.6=r43h61816a4_0 + - r-codetools=0.2_20=r43hc72bb7e_0 + - r-colorspace=2.1_0=r43h57805ef_1 + - r-conquer=1.3.3=r43h08d816e_2 + - r-corrplot=0.92=r43hc72bb7e_2 + - r-cowplot=1.1.3=r43hc72bb7e_0 + - r-cpp11=0.4.7=r43hc72bb7e_0 + - r-crayon=1.5.2=r43hc72bb7e_2 + - r-crosstalk=1.2.1=r43hc72bb7e_0 + - r-curl=5.1.0=r43hf9611b0_0 + - r-data.table=1.15.2=r43h029312a_0 + - r-dendextend=1.17.1=r43hc72bb7e_1 + - r-diagram=1.6.5=r43ha770c72_2 + - r-digest=0.6.35=r43ha503ecb_0 + - r-dplyr=1.1.4=r43ha503ecb_0 + - r-dt=0.33=r43hc72bb7e_0 + - r-e1071=1.7_14=r43ha503ecb_0 + - r-ellipse=0.5.0=r43hc72bb7e_0 + - r-ellipsis=0.3.2=r43h57805ef_2 + - r-emmeans=1.10.2=r43hc72bb7e_0 + - r-estimability=1.5=r43hc72bb7e_0 + - r-evaluate=0.23=r43hc72bb7e_0 + - r-factoextra=1.0.7=r43hc72bb7e_3 + - r-factominer=2.10=r43h57805ef_0 + - r-fansi=1.0.6=r43h57805ef_0 + - r-farver=2.1.2=r43ha18555a_0 + - r-fastmap=1.2.0=r43ha18555a_0 + - r-flashclust=1.01_2=r43h61816a4_1008 + - r-fontawesome=0.5.2=r43hc72bb7e_0 + - r-forcats=1.0.0=r43hc72bb7e_1 + - r-foreach=1.5.2=r43hc72bb7e_2 + - r-foreign=0.8_86=r43h57805ef_0 + - r-fs=1.6.4=r43ha18555a_0 + - r-future=1.33.2=r43h785f33e_0 + - r-future.apply=1.11.2=r43hc72bb7e_0 + - r-generics=0.1.3=r43hc72bb7e_2 + - r-ggplot2=3.5.1=r43hc72bb7e_0 + - r-ggpubr=0.6.0=r43hc72bb7e_1 + - r-ggrepel=0.9.5=r43ha503ecb_0 + - r-ggsci=3.1.0=r43hc72bb7e_0 + - r-ggsignif=0.6.4=r43hc72bb7e_1 + - r-globals=0.16.3=r43hc72bb7e_0 + - r-glue=1.7.0=r43h57805ef_0 + - r-gower=1.0.1=r43h57805ef_1 + - r-gplots=3.1.3.1=r43hc72bb7e_0 + - r-gridextra=2.3=r43hc72bb7e_1005 + - r-gtable=0.3.5=r43hc72bb7e_0 + - r-gtools=3.9.5=r43h57805ef_0 + - r-hardhat=1.3.1=r43hc72bb7e_0 + - r-haven=2.5.4=r43ha503ecb_0 + - r-highr=0.11=r43hc72bb7e_0 + - r-hms=1.1.3=r43hc72bb7e_1 + - r-htmltools=0.5.8.1=r43ha503ecb_0 + - r-htmlwidgets=1.6.4=r43hc72bb7e_1 + - r-httpuv=1.6.15=r43ha503ecb_0 + - r-ipred=0.9_14=r43h57805ef_1 + - r-isoband=0.2.7=r43ha503ecb_2 + - r-iterators=1.0.14=r43hc72bb7e_2 + - r-jquerylib=0.1.4=r43hc72bb7e_2 + - r-jsonlite=1.8.8=r43h57805ef_0 + - r-kernsmooth=2.23_24=r43hc2011d3_0 + - r-knitr=1.46=r43hc72bb7e_0 + - r-labeling=0.4.3=r43hc72bb7e_0 + - r-later=1.3.2=r43ha503ecb_0 + - r-lattice=0.22_6=r43h57805ef_0 + - r-lava=1.7.3=r43hc72bb7e_0 + - r-lazyeval=0.2.2=r43h57805ef_4 + - r-leaps=3.1=r43h61816a4_4 + - r-lifecycle=1.0.4=r43hc72bb7e_0 + - r-listenv=0.9.1=r43hc72bb7e_0 + - r-lme4=1.1_35.3=r43ha503ecb_0 + - r-lubridate=1.9.3=r43h57805ef_0 + - r-magrittr=2.0.3=r43h57805ef_2 + - r-maptools=1.1_8=r43h57805ef_0 + - r-mass=7.3_60=r43h57805ef_1 + - r-matrix=1.6_5=r43h316c678_0 + - r-matrixmodels=0.5_3=r43hc72bb7e_0 + - r-matrixstats=1.3.0=r43h57805ef_0 + - r-memoise=2.0.1=r43hc72bb7e_2 + - r-mgcv=1.9_1=r43h316c678_0 + - r-mime=0.12=r43h57805ef_2 + - r-minqa=1.2.7=r43h4a74c7a_0 + - r-modelmetrics=1.2.2.2=r43ha503ecb_3 + - r-multcompview=0.1_10=r43hc72bb7e_0 + - r-munsell=0.5.1=r43hc72bb7e_0 + - r-mvtnorm=1.2_5=r43hc29710b_0 + - r-nlme=3.1_164=r43h61816a4_0 + - r-nloptr=2.0.3=r43hcf54a89_2 + - r-nnet=7.3_19=r43h57805ef_1 + - r-numderiv=2016.8_1.1=r43hc72bb7e_5 + - r-parallelly=1.37.1=r43h57805ef_0 + - r-pbkrtest=0.5.2=r43hc72bb7e_1 + - r-pillar=1.9.0=r43hc72bb7e_1 + - r-pkgconfig=2.0.3=r43hc72bb7e_3 + - r-plyr=1.8.9=r43ha503ecb_0 + - r-polynom=1.4_1=r43hc72bb7e_2 + - r-prettyunits=1.2.0=r43hc72bb7e_0 + - r-proc=1.18.5=r43ha503ecb_0 + - r-prodlim=2023.08.28=r43ha503ecb_0 + - r-progress=1.2.3=r43hc72bb7e_0 + - r-progressr=0.14.0=r43hc72bb7e_0 + - r-promises=1.3.0=r43ha503ecb_0 + - r-proxy=0.4_27=r43h57805ef_2 + - r-purrr=1.0.2=r43h57805ef_0 + - r-quantreg=5.97=r43hd9ac46e_0 + - r-r.methodss3=1.8.2=r43hc72bb7e_2 + - r-r.oo=1.26.0=r43hc72bb7e_0 + - r-r.utils=2.12.3=r43hc72bb7e_0 + - r-r6=2.5.1=r43hc72bb7e_2 + - r-rappdirs=0.3.3=r43h57805ef_2 + - r-rcolorbrewer=1.1_3=r43h785f33e_2 + - r-rcpp=1.0.12=r43h7df8631_0 + - r-rcpparmadillo=0.12.8.3.0=r43h58a4165_0 + - r-rcppeigen=0.3.4.0.0=r43h08d816e_0 + - r-readr=2.1.5=r43ha503ecb_0 + - r-readxl=1.4.3=r43ha5c9fba_0 + - r-recipes=1.0.10=r43hc72bb7e_0 + - r-rematch=2.0.0=r43hc72bb7e_0 + - r-reshape2=1.4.4=r43ha503ecb_3 + - r-rio=1.1.0=r43hc72bb7e_0 + - r-rlang=1.1.3=r43ha503ecb_0 + - r-rmarkdown=2.27=r43hc72bb7e_0 + - r-rpart=4.1.23=r43h57805ef_0 + - r-rstatix=0.7.2=r43hc72bb7e_1 + - r-sass=0.4.9=r43ha503ecb_0 + - r-scales=1.3.0=r43hc72bb7e_0 + - r-scatterplot3d=0.3_44=r43h785f33e_1 + - r-shape=1.4.6.1=r43ha770c72_0 + - r-sp=2.1_4=r43hb1dbf0f_0 + - r-sparsem=1.81=r43h61816a4_2 + - r-squarem=2021.1=r43hc72bb7e_2 + - r-stringi=1.8.4=r43hbd1cc82_0 + - r-stringr=1.5.1=r43h785f33e_0 + - r-survival=3.6_4=r43hb1dbf0f_0 + - r-tibble=3.2.1=r43h57805ef_2 + - r-tidyr=1.3.1=r43ha503ecb_0 + - r-tidyselect=1.2.1=r43hc72bb7e_0 + - r-timechange=0.3.0=r43ha503ecb_0 + - r-timedate=4032.109=r43hc72bb7e_0 + - r-tinytex=0.51=r43hc72bb7e_0 + - r-tzdb=0.4.0=r43ha503ecb_1 + - r-utf8=1.2.4=r43h57805ef_0 + - r-vctrs=0.6.5=r43ha503ecb_0 + - r-viridis=0.6.5=r43hc72bb7e_0 + - r-viridislite=0.4.2=r43hc72bb7e_1 + - r-vroom=1.6.5=r43ha503ecb_0 + - r-withr=3.0.0=r43hc72bb7e_0 + - r-writexl=1.5.0=r43h57805ef_0 + - r-xfun=0.44=r43ha18555a_0 + - r-xtable=1.8_4=r43hc72bb7e_5 + - r-yaml=2.3.8=r43h57805ef_0 + - re2=2023.09.01=h7f4b329_2 + - readline=8.2=h8228510_1 + - s2n=1.4.15=he19d79f_0 + - scipy=1.13.1=py310h93e2701_0 + - sed=4.8=he412f7d_0 + - setuptools=70.0.0=pyhd8ed1ab_0 + - six=1.16.0=pyh6c4a22f_0 + - snappy=1.2.0=hdb0a2a9_1 + - sysroot_linux-64=2.12=he073ed8_17 + - tenacity=8.3.0=pyhd8ed1ab_0 + - tk=8.6.13=noxft_h4845f30_101 + - tktable=2.10=h0c5db8f_5 + - tornado=6.4=py310h2372a71_0 + - tqdm=4.66.4=pyhd8ed1ab_0 + - tzdata=2024a=h0c530f3_0 + - wget=1.21.4=hda4d442_0 + - wheel=0.43.0=pyhd8ed1ab_1 + - xorg-fixesproto=5.0=h7f98852_1002 + - xorg-inputproto=2.3.2=h7f98852_1002 + - xorg-kbproto=1.0.7=h7f98852_1002 + - xorg-libice=1.1.1=hd590300_0 + - xorg-libsm=1.2.4=h7391055_0 + - xorg-libx11=1.8.9=h8ee46fc_0 + - xorg-libxau=1.0.11=hd590300_0 + - xorg-libxdmcp=1.1.3=h7f98852_0 + - xorg-libxext=1.3.4=h0b41bf4_2 + - xorg-libxfixes=5.0.3=h7f98852_1004 + - xorg-libxi=1.7.10=h7f98852_0 + - xorg-libxrender=0.9.11=hd590300_0 + - xorg-libxt=1.3.0=hd590300_1 + - xorg-libxtst=1.2.3=h7f98852_1002 + - xorg-recordproto=1.14.2=h7f98852_1002 + - xorg-renderproto=0.11.1=h7f98852_1002 + - xorg-xextproto=7.3.0=h0b41bf4_1003 + - xorg-xproto=7.0.31=h7f98852_1007 + - xyzservices=2024.4.0=pyhd8ed1ab_0 + - xz=5.2.6=h166bdaf_0 + - yaml=0.2.5=h7f98852_2 + - zlib=1.2.13=hd590300_5 + - zlib-ng=2.0.7=h0b41bf4_0 + - zstd=1.5.6=ha6fb4c9_0 +prefix: /miniconda3/envs/Pangenomics_Global diff --git a/files/docker/env/TDA.yml b/files/docker/env/TDA.yml new file mode 100644 index 0000000..3422d41 --- /dev/null +++ b/files/docker/env/TDA.yml @@ -0,0 +1,288 @@ +name: TDA +channels: +- conda-forge +dependencies: +- _libgcc_mutex=0.1=conda_forge +- _openmp_mutex=4.5=2_gnu +- alsa-lib=1.2.12=h4ab18f5_0 +- anyio=4.4.0=pyhd8ed1ab_0 +- argon2-cffi=23.1.0=pyhd8ed1ab_0 +- argon2-cffi-bindings=21.2.0=py312h98912ed_4 +- arrow=1.3.0=pyhd8ed1ab_0 +- asttokens=2.4.1=pyhd8ed1ab_0 +- async-lru=2.0.4=pyhd8ed1ab_0 +- attr=2.5.1=h166bdaf_1 +- attrs=23.2.0=pyh71513ae_0 +- babel=2.14.0=pyhd8ed1ab_0 +- beautifulsoup4=4.12.3=pyha770c72_0 +- bleach=6.1.0=pyhd8ed1ab_0 +- brotli=1.1.0=hd590300_1 +- brotli-bin=1.1.0=hd590300_1 +- brotli-python=1.1.0=py312h30efb56_1 +- bzip2=1.0.8=hd590300_5 +- ca-certificates=2024.6.2=hbcca054_0 +- cached-property=1.5.2=hd8ed1ab_1 +- cached_property=1.5.2=pyha770c72_1 +- cairo=1.18.0=h3faef2a_0 +- certifi=2024.6.2=pyhd8ed1ab_0 +- cffi=1.16.0=py312hf06ca03_0 +- charset-normalizer=3.3.2=pyhd8ed1ab_0 +- comm=0.2.2=pyhd8ed1ab_0 +- contourpy=1.2.1=py312h8572e83_0 +- cycler=0.12.1=pyhd8ed1ab_0 +- dbus=1.13.6=h5008d03_3 +- debugpy=1.8.1=py312h30efb56_0 +- decorator=5.1.1=pyhd8ed1ab_0 +- defusedxml=0.7.1=pyhd8ed1ab_0 +- entrypoints=0.4=pyhd8ed1ab_0 +- exceptiongroup=1.2.0=pyhd8ed1ab_2 +- executing=2.0.1=pyhd8ed1ab_0 +- expat=2.6.2=h59595ed_0 +- font-ttf-dejavu-sans-mono=2.37=hab24e00_0 +- font-ttf-inconsolata=3.000=h77eed37_0 +- font-ttf-source-code-pro=2.038=h77eed37_0 +- font-ttf-ubuntu=0.83=h77eed37_2 +- fontconfig=2.14.2=h14ed4e7_0 +- fonts-conda-ecosystem=1=0 +- fonts-conda-forge=1=0 +- fonttools=4.53.0=py312h9a8786e_0 +- fqdn=1.5.1=pyhd8ed1ab_0 +- freetype=2.12.1=h267a509_2 +- gettext=0.22.5=h59595ed_2 +- gettext-tools=0.22.5=h59595ed_2 +- glib=2.80.2=hf974151_0 +- glib-tools=2.80.2=hb6ce0ca_0 +- gmp=6.3.0=h59595ed_1 +- graphite2=1.3.13=h59595ed_1003 +- gst-plugins-base=1.24.4=h9ad1361_0 +- gstreamer=1.24.4=haf2f30d_0 +- gudhi=3.9.0=py312h5851972_6 +- h11=0.14.0=pyhd8ed1ab_0 +- h2=4.1.0=pyhd8ed1ab_0 +- harfbuzz=8.5.0=hfac3d4d_0 +- hpack=4.0.0=pyh9f0ad1d_0 +- httpcore=1.0.5=pyhd8ed1ab_0 +- httpx=0.27.0=pyhd8ed1ab_0 +- hyperframe=6.0.1=pyhd8ed1ab_0 +- icu=73.2=h59595ed_0 +- idna=3.7=pyhd8ed1ab_0 +- importlib-metadata=7.1.0=pyha770c72_0 +- importlib_metadata=7.1.0=hd8ed1ab_0 +- importlib_resources=6.4.0=pyhd8ed1ab_0 +- ipykernel=6.29.4=pyh3099207_0 +- ipython=8.25.0=pyh707e725_0 +- ipywidgets=8.1.3=pyhd8ed1ab_0 +- isoduration=20.11.0=pyhd8ed1ab_0 +- jedi=0.19.1=pyhd8ed1ab_0 +- jinja2=3.1.4=pyhd8ed1ab_0 +- joblib=1.4.2=pyhd8ed1ab_0 +- json5=0.9.25=pyhd8ed1ab_0 +- jsonpointer=3.0.0=py312h7900ff3_0 +- jsonschema=4.22.0=pyhd8ed1ab_0 +- jsonschema-specifications=2023.12.1=pyhd8ed1ab_0 +- jsonschema-with-format-nongpl=4.22.0=pyhd8ed1ab_0 +- jupyter=1.0.0=pyhd8ed1ab_10 +- jupyter-lsp=2.2.5=pyhd8ed1ab_0 +- jupyter_client=8.6.2=pyhd8ed1ab_0 +- jupyter_console=6.6.3=pyhd8ed1ab_0 +- jupyter_core=5.7.2=py312h7900ff3_0 +- jupyter_events=0.10.0=pyhd8ed1ab_0 +- jupyter_server=2.14.1=pyhd8ed1ab_0 +- jupyter_server_terminals=0.5.3=pyhd8ed1ab_0 +- jupyterlab=4.2.2=pyhd8ed1ab_0 +- jupyterlab_pygments=0.3.0=pyhd8ed1ab_1 +- jupyterlab_server=2.27.2=pyhd8ed1ab_0 +- jupyterlab_widgets=3.0.11=pyhd8ed1ab_0 +- keyutils=1.6.1=h166bdaf_0 +- kiwisolver=1.4.5=py312h8572e83_1 +- krb5=1.21.2=h659d440_0 +- lame=3.100=h166bdaf_1003 +- lcms2=2.16=hb7c19ff_0 +- ld_impl_linux-64=2.40=hf3520f5_3 +- lerc=4.0.0=h27087fc_0 +- libasprintf=0.22.5=h661eb56_2 +- libasprintf-devel=0.22.5=h661eb56_2 +- libblas=3.9.0=22_linux64_openblas +- libboost=1.84.0=hba137d9_3 +- libbrotlicommon=1.1.0=hd590300_1 +- libbrotlidec=1.1.0=hd590300_1 +- libbrotlienc=1.1.0=hd590300_1 +- libcap=2.69=h0f662aa_0 +- libcblas=3.9.0=22_linux64_openblas +- libclang-cpp15=15.0.7=default_h127d8a8_5 +- libclang13=18.1.7=default_h087397f_0 +- libcups=2.3.3=h4637d8d_4 +- libdeflate=1.20=hd590300_0 +- libedit=3.1.20191231=he28a2e2_2 +- libevent=2.1.12=hf998b51_1 +- libexpat=2.6.2=h59595ed_0 +- libffi=3.4.2=h7f98852_5 +- libflac=1.4.3=h59595ed_0 +- libgcc-ng=13.2.0=h77fa898_8 +- libgcrypt=1.10.3=hd590300_0 +- libgettextpo=0.22.5=h59595ed_2 +- libgettextpo-devel=0.22.5=h59595ed_2 +- libgfortran-ng=13.2.0=h69a702a_8 +- libgfortran5=13.2.0=h3d2ce59_8 +- libglib=2.80.2=hf974151_0 +- libgomp=13.2.0=h77fa898_8 +- libgpg-error=1.49=h4f305b6_0 +- libiconv=1.17=hd590300_2 +- libjpeg-turbo=3.0.0=hd590300_1 +- liblapack=3.9.0=22_linux64_openblas +- libllvm15=15.0.7=hb3ce162_4 +- libllvm18=18.1.7=hb77312f_0 +- libnsl=2.0.1=hd590300_0 +- libogg=1.3.4=h7f98852_1 +- libopenblas=0.3.27=pthreads_h413a1c8_0 +- libopus=1.3.1=h7f98852_1 +- libpng=1.6.43=h2797004_0 +- libpq=16.3=ha72fbe1_0 +- libsndfile=1.2.2=hc60ed4a_1 +- libsodium=1.0.18=h36c2ea0_1 +- libsqlite=3.46.0=hde9e2c9_0 +- libstdcxx-ng=13.2.0=hc0a3c3a_8 +- libsystemd0=255=h3516f8a_1 +- libtiff=4.6.0=h1dd3fc0_3 +- libuuid=2.38.1=h0b41bf4_0 +- libvorbis=1.3.7=h9c3ff4c_0 +- libwebp-base=1.4.0=hd590300_0 +- libxcb=1.15=h0b41bf4_0 +- libxcrypt=4.4.36=hd590300_1 +- libxkbcommon=1.7.0=h662e7e4_0 +- libxml2=2.12.7=hc051c1a_1 +- libzlib=1.3.1=h4ab18f5_1 +- lz4-c=1.9.4=hcb278e6_0 +- markupsafe=2.1.5=py312h98912ed_0 +- matplotlib=3.8.4=py312h7900ff3_2 +- matplotlib-base=3.8.4=py312h20ab3a6_2 +- matplotlib-inline=0.1.7=pyhd8ed1ab_0 +- mistune=3.0.2=pyhd8ed1ab_0 +- mpfr=4.2.1=h9458935_1 +- mpg123=1.32.6=h59595ed_0 +- munkres=1.1.4=pyh9f0ad1d_0 +- mysql-common=8.3.0=hf1915f5_4 +- mysql-libs=8.3.0=hca2cd23_4 +- nbclient=0.10.0=pyhd8ed1ab_0 +- nbconvert=7.16.4=hd8ed1ab_1 +- nbconvert-core=7.16.4=pyhd8ed1ab_1 +- nbconvert-pandoc=7.16.4=hd8ed1ab_1 +- nbformat=5.10.4=pyhd8ed1ab_0 +- ncurses=6.5=h59595ed_0 +- nest-asyncio=1.6.0=pyhd8ed1ab_0 +- networkx=3.3=pyhd8ed1ab_1 +- notebook=7.2.1=pyhd8ed1ab_0 +- notebook-shim=0.2.4=pyhd8ed1ab_0 +- nspr=4.35=h27087fc_0 +- nss=3.100=hca3bf56_0 +- numpy=1.26.4=py312heda63a1_0 +- openjpeg=2.5.2=h488ebb8_0 +- openssl=3.3.1=h4ab18f5_0 +- overrides=7.7.0=pyhd8ed1ab_0 +- packaging=24.1=pyhd8ed1ab_0 +- pandas=2.2.2=py312h1d6d2e6_1 +- pandoc=3.2=ha770c72_0 +- pandocfilters=1.5.0=pyhd8ed1ab_0 +- parso=0.8.4=pyhd8ed1ab_0 +- patsy=0.5.6=pyhd8ed1ab_0 +- pcre2=10.43=hcad00b1_0 +- pexpect=4.9.0=pyhd8ed1ab_0 +- pickleshare=0.7.5=py_1003 +- pillow=10.3.0=py312hdcec9eb_0 +- pip=24.0=pyhd8ed1ab_0 +- pixman=0.43.2=h59595ed_0 +- pkgutil-resolve-name=1.3.10=pyhd8ed1ab_1 +- platformdirs=4.2.2=pyhd8ed1ab_0 +- plotly=5.22.0=pyhd8ed1ab_0 +- ply=3.11=pyhd8ed1ab_2 +- prometheus_client=0.20.0=pyhd8ed1ab_0 +- prompt-toolkit=3.0.47=pyha770c72_0 +- prompt_toolkit=3.0.47=hd8ed1ab_0 +- psutil=5.9.8=py312h98912ed_0 +- pthread-stubs=0.4=h36c2ea0_1001 +- ptyprocess=0.7.0=pyhd3deb0d_0 +- pulseaudio-client=17.0=hb77b528_0 +- pure_eval=0.2.2=pyhd8ed1ab_0 +- pycparser=2.22=pyhd8ed1ab_0 +- pygments=2.18.0=pyhd8ed1ab_0 +- pyparsing=3.1.2=pyhd8ed1ab_0 +- pyqt=5.15.9=py312h949fe66_5 +- pyqt5-sip=12.12.2=py312h30efb56_5 +- pysocks=1.7.1=pyha2e5f31_6 +- python=3.12.3=hab00c5b_0_cpython +- python-dateutil=2.9.0=pyhd8ed1ab_0 +- python-fastjsonschema=2.19.1=pyhd8ed1ab_0 +- python-json-logger=2.0.7=pyhd8ed1ab_0 +- python-tzdata=2024.1=pyhd8ed1ab_0 +- python_abi=3.12=4_cp312 +- pytz=2024.1=pyhd8ed1ab_0 +- pyyaml=6.0.1=py312h98912ed_1 +- pyzmq=26.0.3=py312h8fd38d8_0 +- qt-main=5.15.8=hc9dc06e_21 +- qtconsole-base=5.5.2=pyha770c72_0 +- qtpy=2.4.1=pyhd8ed1ab_0 +- readline=8.2=h8228510_1 +- referencing=0.35.1=pyhd8ed1ab_0 +- requests=2.32.3=pyhd8ed1ab_0 +- rfc3339-validator=0.1.4=pyhd8ed1ab_0 +- rfc3986-validator=0.1.1=pyh9f0ad1d_0 +- rpds-py=0.18.1=py312h4413252_0 +- scikit-learn=1.5.0=py312h1fcc3ea_1 +- scipy=1.13.1=py312hc2bc53b_0 +- seaborn=0.13.2=hd8ed1ab_2 +- seaborn-base=0.13.2=pyhd8ed1ab_2 +- send2trash=1.8.3=pyh0d859eb_0 +- setuptools=70.0.0=pyhd8ed1ab_0 +- sip=6.7.12=py312h30efb56_0 +- six=1.16.0=pyh6c4a22f_0 +- sniffio=1.3.1=pyhd8ed1ab_0 +- soupsieve=2.5=pyhd8ed1ab_1 +- stack_data=0.6.2=pyhd8ed1ab_0 +- statsmodels=0.14.2=py312h085067d_0 +- tenacity=8.3.0=pyhd8ed1ab_0 +- terminado=0.18.1=pyh0d859eb_0 +- threadpoolctl=3.5.0=pyhc1e730c_0 +- tinycss2=1.3.0=pyhd8ed1ab_0 +- tk=8.6.13=noxft_h4845f30_101 +- toml=0.10.2=pyhd8ed1ab_0 +- tomli=2.0.1=pyhd8ed1ab_0 +- tornado=6.4.1=py312h9a8786e_0 +- traitlets=5.14.3=pyhd8ed1ab_0 +- types-python-dateutil=2.9.0.20240316=pyhd8ed1ab_0 +- typing-extensions=4.12.2=hd8ed1ab_0 +- typing_extensions=4.12.2=pyha770c72_0 +- typing_utils=0.1.0=pyhd8ed1ab_0 +- tzdata=2024a=h0c530f3_0 +- uri-template=1.3.0=pyhd8ed1ab_0 +- urllib3=2.2.1=pyhd8ed1ab_0 +- wcwidth=0.2.13=pyhd8ed1ab_0 +- webcolors=24.6.0=pyhd8ed1ab_0 +- webencodings=0.5.1=pyhd8ed1ab_2 +- websocket-client=1.8.0=pyhd8ed1ab_0 +- wheel=0.43.0=pyhd8ed1ab_1 +- widgetsnbextension=4.0.11=pyhd8ed1ab_0 +- xcb-util=0.4.0=hd590300_1 +- xcb-util-image=0.4.0=h8ee46fc_1 +- xcb-util-keysyms=0.4.0=h8ee46fc_1 +- xcb-util-renderutil=0.3.9=hd590300_1 +- xcb-util-wm=0.4.1=h8ee46fc_1 +- xkeyboard-config=2.42=h4ab18f5_0 +- xorg-kbproto=1.0.7=h7f98852_1002 +- xorg-libice=1.1.1=hd590300_0 +- xorg-libsm=1.2.4=h7391055_0 +- xorg-libx11=1.8.9=h8ee46fc_0 +- xorg-libxau=1.0.11=hd590300_0 +- xorg-libxdmcp=1.1.3=h7f98852_0 +- xorg-libxext=1.3.4=h0b41bf4_2 +- xorg-libxrender=0.9.11=hd590300_0 +- xorg-renderproto=0.11.1=h7f98852_1002 +- xorg-xextproto=7.3.0=h0b41bf4_1003 +- xorg-xf86vidmodeproto=2.3.1=h7f98852_1002 +- xorg-xproto=7.0.31=h7f98852_1007 +- xz=5.2.6=h166bdaf_0 +- yaml=0.2.5=h7f98852_2 +- zeromq=4.3.5=h75354e8_4 +- zipp=3.19.2=pyhd8ed1ab_0 +- zlib=1.3.1=h4ab18f5_1 +- zstd=1.5.6=ha6fb4c9_0 +prefix: /miniconda3/envs/anvio-7.1 diff --git a/files/docker/env/anvio-7.1.yml b/files/docker/env/anvio-7.1.yml new file mode 100644 index 0000000..a11c646 --- /dev/null +++ b/files/docker/env/anvio-7.1.yml @@ -0,0 +1,280 @@ +name: anvio-7.1 +channels: + - bioconda + - conda-forge + - defaults +dependencies: + - _libgcc_mutex=0.1=conda_forge + - _openmp_mutex=4.5=2_gnu + - _r-mutex=1.0.1=anacondar_1 + - _sysroot_linux-64_curr_repodata_hack=3=h69a702a_14 + - binutils_impl_linux-64=2.36.1=h193b22a_2 + - binutils_linux-64=2.36=hf3e587d_33 + - bioconductor-qvalue=2.22.0=r40hdfd78af_1 + - blast=2.15.0=pl5321h6f7f691_1 + - boost=1.70.0=py36h9de70de_1 + - boost-cpp=1.70.0=h7b93d67_3 + - bowtie2=2.3.5=py36he860b03_0 + - bwa=0.7.18=he4a0461_0 + - bwidget=1.9.14=ha770c72_1 + - bzip2=1.0.8=hd590300_5 + - c-ares=1.28.1=hd590300_0 + - ca-certificates=2024.2.2=hbcca054_0 + - cairo=1.16.0=h9f066cc_1006 + - centrifuge=1.0.4.1=hdcf5f25_0 + - curl=7.76.1=h979ede3_1 + - diamond=2.1.9=h43eeafb_0 + - entrez-direct=21.6=he881be0_0 + - expat=2.6.2=h59595ed_0 + - fastani=1.32=he1c1bb9_0 + - fasttree=2.1.11=h031d066_3 + - fontconfig=2.14.2=h14ed4e7_0 + - freetype=2.12.1=h267a509_2 + - fribidi=1.0.10=h36c2ea0_0 + - gcc_impl_linux-64=7.5.0=habd7529_20 + - gcc_linux-64=7.5.0=h47867f9_33 + - gettext=0.22.5=h59595ed_2 + - gettext-tools=0.22.5=h59595ed_2 + - gfortran_impl_linux-64=7.5.0=h56cb351_20 + - gfortran_linux-64=7.5.0=h78c8a43_33 + - glib=2.66.3=h58526e2_0 + - graphite2=1.3.13=h59595ed_1003 + - gsl=2.6=he838d99_2 + - gxx_impl_linux-64=7.5.0=hd0bb8aa_20 + - gxx_linux-64=7.5.0=h555fc39_33 + - harfbuzz=2.7.2=ha5b49bf_1 + - hmmer=3.4=hdbdd923_1 + - htslib=1.9=h244ad75_9 + - icu=67.1=he1b5a44_0 + - infernal=1.1.5=pl5321h031d066_1 + - iqtree=2.3.4=h21ec9f0_0 + - jpeg=9e=h0b41bf4_3 + - kernel-headers_linux-64=3.10.0=h4a8ded7_14 + - krb5=1.17.2=h926e7f8_0 + - ld_impl_linux-64=2.36.1=hea4e1c9_2 + - libasprintf=0.22.5=h661eb56_2 + - libasprintf-devel=0.22.5=h661eb56_2 + - libblas=3.9.0=13_linux64_openblas + - libcblas=3.9.0=13_linux64_openblas + - libcurl=7.76.1=hc4aaa36_1 + - libdeflate=1.20=hd590300_0 + - libedit=3.1.20191231=h46ee950_2 + - libev=4.33=hd590300_2 + - libexpat=2.6.2=h59595ed_0 + - libffi=3.2.1=he1b5a44_1007 + - libgcc-devel_linux-64=7.5.0=hda03d7c_20 + - libgcc-ng=13.2.0=h77fa898_7 + - libgettextpo=0.22.5=h59595ed_2 + - libgettextpo-devel=0.22.5=h59595ed_2 + - libgfortran-ng=7.5.0=h14aa051_20 + - libgfortran4=7.5.0=h14aa051_20 + - libglib=2.66.3=hbe7bbb4_0 + - libgomp=13.2.0=h77fa898_7 + - libiconv=1.17=hd590300_2 + - libidn2=2.3.7=hd590300_0 + - liblapack=3.9.0=13_linux64_openblas + - libnghttp2=1.51.0=hdcd2b5c_0 + - libopenblas=0.3.18=hf726d26_0 + - libpng=1.6.43=h2797004_0 + - libsqlite=3.45.3=h2797004_0 + - libssh2=1.10.0=haa6b8db_3 + - libstdcxx-devel_linux-64=7.5.0=hb016644_20 + - libstdcxx-ng=13.2.0=hc0a3c3a_7 + - libtiff=4.2.0=hbd63e13_2 + - libunistring=0.9.10=h7f98852_0 + - libuuid=2.38.1=h0b41bf4_0 + - libwebp-base=1.4.0=hd590300_0 + - libxcb=1.16=hd590300_0 + - libxcrypt=4.4.36=hd590300_1 + - libxml2=2.9.10=h68273f3_2 + - libzlib=1.2.13=hd590300_5 + - llvm-openmp=8.0.1=hc9558a2_0 + - lz4-c=1.9.3=h9c3ff4c_1 + - make=4.3=hd18ef5c_1 + - mcl=22.282=pl5321h031d066_1 + - megahit=1.2.9=h43eeafb_5 + - muscle=3.8.1551=h7d875b9_6 + - ncbi-vdb=3.1.1=h4ac6f70_0 + - ncurses=6.1=hf484d3e_1002 + - numpy=1.19.5=py36hfc0c790_2 + - openmp=8.0.1=0 + - openssl=1.1.1w=hd590300_0 + - pandoc=2.19.2=h32600fe_2 + - pango=1.42.4=h69149e4_5 + - pcre=8.45=h9c3ff4c_0 + - pcre2=10.35=h032f7d1_2 + - perl=5.32.1=7_hd590300_perl5 + - perl-archive-tar=2.40=pl5321hdfd78af_0 + - perl-carp=1.38=pl5321hdfd78af_4 + - perl-common-sense=3.75=pl5321hdfd78af_0 + - perl-compress-raw-bzip2=2.201=pl5321h87f3376_1 + - perl-compress-raw-zlib=2.105=pl5321h87f3376_0 + - perl-encode=3.19=pl5321hec16e2b_1 + - perl-exporter=5.72=pl5321hdfd78af_2 + - perl-exporter-tiny=1.002002=pl5321hdfd78af_0 + - perl-extutils-makemaker=7.70=pl5321hd8ed1ab_0 + - perl-io-compress=2.201=pl5321hdbdd923_2 + - perl-io-zlib=1.14=pl5321hdfd78af_0 + - perl-json=4.10=pl5321hdfd78af_0 + - perl-json-xs=2.34=pl5321h4ac6f70_6 + - perl-list-moreutils=0.430=pl5321hdfd78af_0 + - perl-list-moreutils-xs=0.430=pl5321h031d066_2 + - perl-parent=0.236=pl5321hdfd78af_2 + - perl-pathtools=3.75=pl5321hec16e2b_3 + - perl-scalar-list-utils=1.62=pl5321hec16e2b_1 + - perl-types-serialiser=1.01=pl5321hdfd78af_0 + - pip=21.3.1=pyhd8ed1ab_0 + - pixman=0.43.2=h59595ed_0 + - prodigal=2.6.3=h031d066_8 + - pthread-stubs=0.4=h36c2ea0_1001 + - python=3.6.10=h8356626_1011_cpython + - python_abi=3.6=2_cp36m + - r-askpass=1.1=r40hcfec24a_2 + - r-assertthat=0.2.1=r40hc72bb7e_2 + - r-backports=1.4.1=r40hcfec24a_0 + - r-base=4.0.2=he766273_1 + - r-base64enc=0.1_3=r40hcfec24a_1004 + - r-bit=4.0.4=r40hcfec24a_0 + - r-bit64=4.0.5=r40hcfec24a_0 + - r-blob=1.2.3=r40hc72bb7e_0 + - r-brio=1.1.3=r40hcfec24a_0 + - r-broom=1.0.1=r40hc72bb7e_0 + - r-bslib=0.4.0=r40hc72bb7e_0 + - r-cachem=1.0.6=r40hcfec24a_0 + - r-callr=3.7.2=r40hc72bb7e_0 + - r-cellranger=1.1.0=r40hc72bb7e_1004 + - r-cli=3.4.1=r40h7525677_0 + - r-clipr=0.8.0=r40hc72bb7e_0 + - r-colorspace=2.0_3=r40h06615bd_0 + - r-cpp11=0.4.2=r40hc72bb7e_0 + - r-crayon=1.5.1=r40hc72bb7e_0 + - r-curl=4.3.2=r40hcfec24a_0 + - r-data.table=1.14.2=r40hcfec24a_0 + - r-dbi=1.1.3=r40hc72bb7e_0 + - r-dbplyr=2.2.1=r40hc72bb7e_0 + - r-desc=1.4.2=r40hc72bb7e_0 + - r-diffobj=0.3.5=r40hcfec24a_0 + - r-digest=0.6.29=r40h03ef668_0 + - r-dplyr=1.0.10=r40h7525677_0 + - r-dtplyr=1.2.2=r40hc72bb7e_0 + - r-ellipsis=0.3.2=r40hcfec24a_0 + - r-evaluate=0.16=r40hc72bb7e_0 + - r-fansi=1.0.3=r40h06615bd_0 + - r-farver=2.1.1=r40h7525677_0 + - r-fastmap=1.1.0=r40h03ef668_0 + - r-forcats=0.5.2=r40hc72bb7e_0 + - r-fs=1.5.2=r40h7525677_1 + - r-gargle=1.2.1=r40hc72bb7e_0 + - r-generics=0.1.3=r40hc72bb7e_0 + - r-getopt=1.20.3=r40ha770c72_2 + - r-ggplot2=3.3.6=r40hc72bb7e_0 + - r-glue=1.6.2=r40h06615bd_0 + - r-googledrive=2.0.0=r40hc72bb7e_0 + - r-googlesheets4=1.0.1=r40h785f33e_0 + - r-gtable=0.3.1=r40hc72bb7e_0 + - r-haven=2.5.0=r40h7525677_0 + - r-highr=0.9=r40hc72bb7e_0 + - r-hms=1.1.2=r40hc72bb7e_0 + - r-htmltools=0.5.3=r40h7525677_0 + - r-httr=1.4.4=r40hc72bb7e_0 + - r-ids=1.0.1=r40hc72bb7e_1 + - r-isoband=0.2.5=r40h03ef668_0 + - r-jquerylib=0.1.4=r40hc72bb7e_0 + - r-jsonlite=1.8.0=r40h06615bd_0 + - r-knitr=1.40=r40hc72bb7e_0 + - r-labeling=0.4.2=r40hc72bb7e_1 + - r-lattice=0.20_45=r40hcfec24a_0 + - r-lifecycle=1.0.2=r40hc72bb7e_0 + - r-lubridate=1.8.0=r40h03ef668_0 + - r-magrittr=2.0.3=r40h06615bd_0 + - r-mass=7.3_58.1=r40h06615bd_0 + - r-matrix=1.4_1=r40h0154571_0 + - r-memoise=2.0.1=r40hc72bb7e_0 + - r-mgcv=1.8_40=r40h0154571_0 + - r-mime=0.12=r40hcfec24a_0 + - r-modelr=0.1.9=r40hc72bb7e_0 + - r-munsell=0.5.0=r40hc72bb7e_1004 + - r-nlme=3.1_150=r40h31ca83e_0 + - r-openssl=2.0.3=r40hfaab4ff_0 + - r-optparse=1.7.3=r40hc72bb7e_0 + - r-pillar=1.8.1=r40hc72bb7e_0 + - r-pkgconfig=2.0.3=r40hc72bb7e_1 + - r-pkgload=1.3.0=r40hc72bb7e_0 + - r-plyr=1.8.7=r40h7525677_0 + - r-praise=1.0.0=r40hc72bb7e_1005 + - r-prettyunits=1.1.1=r40hc72bb7e_1 + - r-processx=3.7.0=r40h06615bd_0 + - r-progress=1.2.2=r40hc72bb7e_2 + - r-ps=1.7.1=r40h06615bd_0 + - r-purrr=0.3.4=r40hcfec24a_1 + - r-r6=2.5.1=r40hc72bb7e_0 + - r-rappdirs=0.3.3=r40hcfec24a_0 + - r-rcolorbrewer=1.1_3=r40h785f33e_0 + - r-rcpp=1.0.9=r40h7525677_1 + - r-readr=2.1.2=r40h03ef668_0 + - r-readxl=1.4.1=r40hf23e330_0 + - r-rematch=1.0.1=r40hc72bb7e_1004 + - r-rematch2=2.1.2=r40hc72bb7e_1 + - r-reprex=2.0.2=r40hc72bb7e_0 + - r-reshape2=1.4.4=r40h03ef668_1 + - r-rlang=1.0.6=r40h7525677_0 + - r-rmarkdown=2.16=r40hc72bb7e_0 + - r-rprojroot=2.0.3=r40hc72bb7e_0 + - r-rstudioapi=0.14=r40hc72bb7e_0 + - r-rvest=1.0.3=r40hc72bb7e_0 + - r-sass=0.4.2=r40h7525677_0 + - r-scales=1.2.1=r40hc72bb7e_0 + - r-selectr=0.4_2=r40hc72bb7e_1 + - r-stringi=1.5.3=r40hca8494e_0 + - r-stringr=1.4.1=r40hc72bb7e_0 + - r-sys=3.4=r40hcfec24a_0 + - r-testthat=3.1.4=r40h7525677_0 + - r-tibble=3.1.8=r40h06615bd_0 + - r-tidyr=1.2.1=r40h7525677_0 + - r-tidyselect=1.1.2=r40hc72bb7e_0 + - r-tidyverse=1.3.2=r40hc72bb7e_0 + - r-tinytex=0.42=r40hc72bb7e_0 + - r-tzdb=0.3.0=r40h7525677_0 + - r-utf8=1.2.2=r40hcfec24a_0 + - r-uuid=1.1_0=r40h06615bd_0 + - r-vctrs=0.4.1=r40h7525677_0 + - r-viridislite=0.4.1=r40hc72bb7e_0 + - r-vroom=1.5.7=r40h03ef668_0 + - r-waldo=0.4.0=r40hc72bb7e_0 + - r-withr=2.5.0=r40hc72bb7e_0 + - r-xfun=0.33=r40h7525677_0 + - r-xml2=1.3.3=r40h03ef668_0 + - r-yaml=2.3.5=r40h06615bd_0 + - readline=8.0=h46ee950_1 + - samtools=1.9=h10a08f8_12 + - sed=4.8=he412f7d_0 + - setuptools=58.0.4=py36h5fab9bb_2 + - spades=3.15.5=h95f258a_1 + - sqlite=3.32.3=hcee41ef_1 + - sysroot_linux-64=2.17=h4a8ded7_14 + - tar=1.34=hb2e2bae_1 + - tbb=2019.8=hc9558a2_0 + - tk=8.6.13=noxft_h4845f30_101 + - tktable=2.10=h0c5db8f_5 + - trimal=1.4.1=h4ac6f70_9 + - trnascan-se=2.0.12=pl5321h031d066_0 + - vmatch=2.3.0=hec16e2b_5 + - wget=1.20.3=ha56f1ee_1 + - wheel=0.37.1=pyhd8ed1ab_0 + - xorg-kbproto=1.0.7=h7f98852_1002 + - xorg-libice=1.1.1=hd590300_0 + - xorg-libsm=1.2.4=h7391055_0 + - xorg-libx11=1.7.2=h7f98852_0 + - xorg-libxau=1.0.11=hd590300_0 + - xorg-libxdmcp=1.1.3=h7f98852_0 + - xorg-libxext=1.3.4=h0b41bf4_2 + - xorg-libxrender=0.9.10=h7f98852_1003 + - xorg-renderproto=0.11.1=h7f98852_1002 + - xorg-xextproto=7.3.0=h0b41bf4_1003 + - xorg-xproto=7.0.31=h7f98852_1007 + - xz=5.2.6=h166bdaf_0 + - zlib=1.2.13=hd590300_5 + - zstd=1.4.9=ha95c52a_0 + - pip: + - https://github.com/merenlab/anvio/releases/download/v7.1/anvio-7.1.tar.gz +prefix: /miniconda3/envs/anvio-7.1 diff --git a/files/docker/env/ncbi-genome-download.yml b/files/docker/env/ncbi-genome-download.yml new file mode 100644 index 0000000..a719b89 --- /dev/null +++ b/files/docker/env/ncbi-genome-download.yml @@ -0,0 +1,44 @@ +name: ncbi-genome-download +channels: + - bioconda + - conda-forge + - defaults +dependencies: + - _libgcc_mutex=0.1=conda_forge + - _openmp_mutex=4.5=2_gnu + - appdirs=1.4.4=pyh9f0ad1d_0 + - brotli-python=1.1.0=py312h30efb56_1 + - bzip2=1.0.8=hd590300_5 + - ca-certificates=2024.2.2=hbcca054_0 + - certifi=2024.2.2=pyhd8ed1ab_0 + - charset-normalizer=3.3.2=pyhd8ed1ab_0 + - colorama=0.4.6=pyhd8ed1ab_0 + - idna=3.7=pyhd8ed1ab_0 + - ld_impl_linux-64=2.40=hf3520f5_1 + - libexpat=2.6.2=h59595ed_0 + - libffi=3.4.2=h7f98852_5 + - libgcc-ng=13.2.0=h77fa898_7 + - libgomp=13.2.0=h77fa898_7 + - libnsl=2.0.1=hd590300_0 + - libsqlite=3.45.3=h2797004_0 + - libstdcxx-ng=13.2.0=hc0a3c3a_7 + - libuuid=2.38.1=h0b41bf4_0 + - libxcrypt=4.4.36=hd590300_1 + - libzlib=1.2.13=hd590300_5 + - ncbi-genome-download=0.3.3=pyh7cba7a3_0 + - ncurses=6.5=h59595ed_0 + - openssl=3.3.0=h4ab18f5_3 + - pip=24.0=pyhd8ed1ab_0 + - pysocks=1.7.1=pyha2e5f31_6 + - python=3.12.3=hab00c5b_0_cpython + - python_abi=3.12=4_cp312 + - readline=8.2=h8228510_1 + - requests=2.32.2=pyhd8ed1ab_0 + - setuptools=70.0.0=pyhd8ed1ab_0 + - tk=8.6.13=noxft_h4845f30_101 + - tqdm=4.66.4=pyhd8ed1ab_0 + - tzdata=2024a=h0c530f3_0 + - urllib3=2.2.1=pyhd8ed1ab_0 + - wheel=0.43.0=pyhd8ed1ab_1 + - xz=5.2.6=h166bdaf_0 +prefix: /miniconda3/envs/ncbi-genome-download diff --git a/files/docker/env/rgi.yml b/files/docker/env/rgi.yml new file mode 100644 index 0000000..a31a90c --- /dev/null +++ b/files/docker/env/rgi.yml @@ -0,0 +1,221 @@ +name: rgi +channels: + - bioconda + - conda-forge + - defaults +dependencies: + - _libgcc_mutex=0.1=conda_forge + - _openmp_mutex=4.5=2_gnu + - archspec=0.2.3=pyhd8ed1ab_0 + - arrow-cpp=10.0.1=h3e2b116_4_cpu + - aws-c-auth=0.6.21=hd93a3ba_3 + - aws-c-cal=0.5.20=hd3b2fe5_3 + - aws-c-common=0.8.5=h166bdaf_0 + - aws-c-compression=0.2.16=hf5f93bc_0 + - aws-c-event-stream=0.2.17=h57874a7_1 + - aws-c-http=0.7.0=h96ef541_0 + - aws-c-io=0.13.12=h57ca295_1 + - aws-c-mqtt=0.7.13=h0b5698f_12 + - aws-c-s3=0.2.1=h5d7e488_4 + - aws-c-sdkutils=0.1.7=hf5f93bc_0 + - aws-checksums=0.1.14=h6027aba_0 + - aws-crt-cpp=0.18.16=h26430d7_8 + - aws-sdk-cpp=1.9.379=h56135f1_7 + - bamtools=2.5.1=hd03093a_10 + - beautifulsoup4=4.9.3=pyhb0f4dca_0 + - bedtools=2.31.1=hf5e1c6e_1 + - biopython=1.78=py38h497a2fe_2 + - blast=2.15.0=pl5321h6f7f691_1 + - bokeh=3.1.1=pyhd8ed1ab_0 + - bowtie2=2.5.4=he20e202_0 + - brotli=1.0.9=h166bdaf_9 + - brotli-bin=1.0.9=h166bdaf_9 + - brotlipy=0.7.0=py38h01eb140_1006 + - bwa=0.7.18=he4a0461_0 + - bzip2=1.0.8=hd590300_5 + - c-ares=1.28.1=hd590300_0 + - ca-certificates=2024.2.2=hbcca054_0 + - certifi=2024.2.2=pyhd8ed1ab_0 + - cffi=1.14.4=py38ha312104_0 + - chardet=3.0.4=py38h924ce5b_1008 + - click=8.1.7=unix_pyh707e725_0 + - cloudpickle=3.0.0=pyhd8ed1ab_0 + - contourpy=1.1.1=py38h7f3f72f_1 + - cryptography=39.0.0=py38h1724139_0 + - curl=7.87.0=h6312ad2_0 + - cycler=0.12.1=pyhd8ed1ab_0 + - cytoolz=0.12.3=py38h01eb140_0 + - dask=2023.5.0=pyhd8ed1ab_0 + - dask-core=2023.5.0=pyhd8ed1ab_0 + - diamond=0.8.36=h43eeafb_7 + - distributed=2023.5.0=pyhd8ed1ab_0 + - entrez-direct=21.6=he881be0_0 + - filetype=1.2.0=pyhd8ed1ab_0 + - fonttools=4.52.1=py38hfb59056_0 + - freetype=2.12.1=h267a509_2 + - fsspec=2024.5.0=pyhff2d567_0 + - gettext=0.22.5=h59595ed_2 + - gettext-tools=0.22.5=h59595ed_2 + - gflags=2.2.2=he1b5a44_1004 + - glog=0.6.0=h6f12383_0 + - htslib=1.9=h244ad75_9 + - icu=73.2=h59595ed_0 + - idna=2.10=pyh9f0ad1d_0 + - importlib-metadata=7.1.0=pyha770c72_0 + - importlib-resources=6.4.0=pyhd8ed1ab_0 + - importlib_metadata=7.1.0=hd8ed1ab_0 + - importlib_resources=6.4.0=pyhd8ed1ab_0 + - jinja2=3.1.4=pyhd8ed1ab_0 + - keyutils=1.6.1=h166bdaf_0 + - kiwisolver=1.4.5=py38h7f3f72f_1 + - kma=1.4.14=he4a0461_1 + - krb5=1.20.1=hf9c8cef_0 + - lcms2=2.16=hb7c19ff_0 + - ld_impl_linux-64=2.40=hf3520f5_1 + - lerc=4.0.0=h27087fc_0 + - libabseil=20220623.0=cxx17_h05df665_6 + - libarrow=10.0.1=hee49ebd_4_cpu + - libasprintf=0.22.5=h661eb56_2 + - libasprintf-devel=0.22.5=h661eb56_2 + - libblas=3.9.0=20_linux64_openblas + - libbrotlicommon=1.0.9=h166bdaf_9 + - libbrotlidec=1.0.9=h166bdaf_9 + - libbrotlienc=1.0.9=h166bdaf_9 + - libcblas=3.9.0=20_linux64_openblas + - libcrc32c=1.1.2=h9c3ff4c_0 + - libcurl=7.87.0=h6312ad2_0 + - libdeflate=1.20=hd590300_0 + - libedit=3.1.20191231=h46ee950_2 + - libev=4.33=hd590300_2 + - libevent=2.1.10=h9b69904_4 + - libffi=3.2.1=he1b5a44_1007 + - libgcc-ng=13.2.0=h77fa898_7 + - libgettextpo=0.22.5=h59595ed_2 + - libgettextpo-devel=0.22.5=h59595ed_2 + - libgfortran-ng=13.2.0=h69a702a_7 + - libgfortran5=13.2.0=hca663fb_7 + - libgomp=13.2.0=h77fa898_7 + - libgoogle-cloud=2.5.0=h5d50b59_1 + - libgrpc=1.51.1=h05bd8bd_0 + - libhwloc=2.10.0=default_h5622ce7_1001 + - libiconv=1.17=hd590300_2 + - libidn2=2.3.7=hd590300_0 + - libjpeg-turbo=3.0.0=hd590300_1 + - liblapack=3.9.0=20_linux64_openblas + - libnghttp2=1.51.0=hdcd2b5c_0 + - libopenblas=0.3.25=pthreads_h413a1c8_0 + - libpng=1.6.43=h2797004_0 + - libprotobuf=3.21.12=hfc55251_2 + - libsqlite=3.45.3=h2797004_0 + - libssh2=1.10.0=haa6b8db_3 + - libstdcxx-ng=13.2.0=hc0a3c3a_7 + - libthrift=0.16.0=h491838f_2 + - libtiff=4.6.0=h1dd3fc0_3 + - libunistring=0.9.10=h7f98852_0 + - libutf8proc=2.8.0=h166bdaf_0 + - libwebp-base=1.4.0=hd590300_0 + - libxcb=1.15=h0b41bf4_0 + - libxcrypt=4.4.36=hd590300_1 + - libxml2=2.12.7=hc051c1a_0 + - libxslt=1.1.39=h76b75d6_0 + - libzlib=1.2.13=hd590300_5 + - locket=1.0.0=pyhd8ed1ab_0 + - lxml=4.6.5=py38hf1fe3a4_0 + - lz4=4.3.3=py38hdcd8cb4_0 + - lz4-c=1.9.4=hcb278e6_0 + - markupsafe=2.1.5=py38h01eb140_0 + - matplotlib-base=3.7.3=py38h58ed7fa_0 + - msgpack-python=1.0.8=py38hea7755e_0 + - munkres=1.1.4=pyh9f0ad1d_0 + - ncbi-vdb=3.1.1=h4ac6f70_0 + - ncurses=6.1=hf484d3e_1002 + - numpy=1.24.4=py38h59b608b_0 + - oligoarrayaux=3.8=hc9558a2_0 + - openjpeg=2.5.2=h488ebb8_0 + - openssl=1.1.1w=hd590300_0 + - orc=1.8.2=hfdbbad2_2 + - packaging=24.0=pyhd8ed1ab_0 + - pandas=2.0.3=py38h01efb38_1 + - parquet-cpp=1.5.1=2 + - partd=1.4.1=pyhd8ed1ab_0 + - patsy=0.5.6=pyhd8ed1ab_0 + - pcre=8.45=h9c3ff4c_0 + - perl=5.32.1=7_hd590300_perl5 + - perl-archive-tar=2.40=pl5321hdfd78af_0 + - perl-carp=1.50=pl5321hd8ed1ab_0 + - perl-common-sense=3.75=pl5321hd8ed1ab_0 + - perl-compress-raw-bzip2=2.201=pl5321h166bdaf_0 + - perl-compress-raw-zlib=2.202=pl5321h166bdaf_0 + - perl-encode=3.21=pl5321hd590300_0 + - perl-exporter=5.74=pl5321hd8ed1ab_0 + - perl-exporter-tiny=1.002002=pl5321hd8ed1ab_0 + - perl-extutils-makemaker=7.70=pl5321hd8ed1ab_0 + - perl-io-compress=2.201=pl5321hdbdd923_2 + - perl-io-zlib=1.14=pl5321hdfd78af_0 + - perl-json=4.10=pl5321hdfd78af_0 + - perl-json-xs=2.34=pl5321h4ac6f70_6 + - perl-list-moreutils=0.430=pl5321hdfd78af_0 + - perl-list-moreutils-xs=0.430=pl5321h031d066_2 + - perl-parent=0.241=pl5321hd8ed1ab_0 + - perl-pathtools=3.75=pl5321h166bdaf_0 + - perl-scalar-list-utils=1.63=pl5321h166bdaf_0 + - perl-storable=3.15=pl5321h166bdaf_0 + - perl-types-serialiser=1.01=pl5321hdfd78af_0 + - pillow=10.3.0=py38h9e66945_0 + - pip=24.0=pyhd8ed1ab_0 + - platformdirs=4.2.2=pyhd8ed1ab_0 + - pooch=1.8.1=pyhd8ed1ab_0 + - prodigal=2.6.3=h031d066_8 + - psutil=5.9.8=py38h01eb140_0 + - pthread-stubs=0.4=h36c2ea0_1001 + - pyahocorasick=2.1.0=py38h01eb140_0 + - pyarrow=10.0.1=py38hf54eea0_4_cpu + - pycparser=2.22=pyhd8ed1ab_0 + - pyfaidx=0.8.1.1=pyhdfd78af_0 + - pyopenssl=23.2.0=pyhd8ed1ab_1 + - pyparsing=3.1.2=pyhd8ed1ab_0 + - pyrodigal=2.3.0=py38he5da3d1_1 + - pysam=0.16.0.1=py38hf7546f9_3 + - pysocks=1.7.1=pyha2e5f31_6 + - python=3.8.6=h852b56e_0_cpython + - python-dateutil=2.9.0=pyhd8ed1ab_0 + - python-tzdata=2024.1=pyhd8ed1ab_0 + - python_abi=3.8=4_cp38 + - pytz=2024.1=pyhd8ed1ab_0 + - pyvcf3=1.0.3=pyhdfd78af_0 + - pyyaml=6.0.1=py38h01eb140_1 + - re2=2022.06.01=h27087fc_1 + - readline=8.0=h46ee950_1 + - requests=2.24.0=pyh9f0ad1d_0 + - rgi=6.0.3=pyha8f3691_1 + - s2n=1.3.31=hae46d1a_0 + - samtools=1.9=h10a08f8_12 + - scipy=1.10.1=py38h59b608b_3 + - seaborn=0.13.2=hd8ed1ab_2 + - seaborn-base=0.13.2=pyhd8ed1ab_2 + - setuptools=70.0.0=pyhd8ed1ab_0 + - six=1.16.0=pyh6c4a22f_0 + - snappy=1.1.10=hdb0a2a9_1 + - sortedcontainers=2.4.0=pyhd8ed1ab_0 + - soupsieve=2.5=pyhd8ed1ab_1 + - sqlite=3.40.1=h5082296_0 + - statsmodels=0.14.1=py38h7f0c24c_0 + - tbb=2021.12.0=h297d8ca_1 + - tblib=3.0.0=pyhd8ed1ab_0 + - tk=8.6.13=noxft_h4845f30_101 + - toolz=0.12.1=pyhd8ed1ab_0 + - tornado=6.4=py38h01eb140_0 + - unicodedata2=15.1.0=py38h01eb140_0 + - urllib3=1.25.11=py_0 + - wget=1.20.3=ha56f1ee_1 + - wheel=0.43.0=pyhd8ed1ab_1 + - xorg-libxau=1.0.11=hd590300_0 + - xorg-libxdmcp=1.1.3=h7f98852_0 + - xyzservices=2024.4.0=pyhd8ed1ab_0 + - xz=5.2.6=h166bdaf_0 + - yaml=0.2.5=h7f98852_2 + - zict=3.0.0=pyhd8ed1ab_0 + - zipp=3.17.0=pyhd8ed1ab_0 + - zlib=1.2.13=hd590300_5 + - zstd=1.5.6=ha6fb4c9_0 +prefix: /miniconda3/envs/rgi diff --git a/setup.md b/setup.md index 3402dd9..7a92ef0 100644 --- a/setup.md +++ b/setup.md @@ -3,75 +3,86 @@ layout: page title: Setup --- -## In a Data Carpentry Workshop -Free server access is offered upon request for workshops, and self-learners can also request temporary accounts. -Servers are provided by "The Collaborative Community for Genomic Bacterial Analysis and Practice" -and the sub-community "The Carpentries México" -For individuals choosing to follow the lessons on a different computer, step-by-step instructions -for configuring remote machines. An alternative installation with complete Conda environments is provided here. -Additionally, the Docker container aapashkov/panworkshop is available in Dockerhub and has an image of all the workshop dependencies. - -This workshop can also be run on Amazon Web Services (AWS) instances using the docker image -(a computer with all the required programs and files to which you will have access from your computer). -Except for a spreadsheet program and an internet browser, all of the command -line software and data used in the workshop are hosted on the Docker - -If you are signed up to take a Pangenomics Data Carpentry Workshop, -**you do not need to worry about setting up an AMI instance.** -The Carpentries México staff will create an instance on our local servers for you, which will be free. -This setup is true for both self-organized and centrally-organized workshops. -Your instructor will provide instructions on how to connect to the AMI instance at the workshop. - -If you are in The Carpentries-Workshop, you do not even need to install a bash terminal; -the Jupyter-Notebook terminal provided in the AMI is enough to run all the commands in the lesson. -Instead of connecting by `ssh`, users can simply use the Jupyter Notebook AMI terminal. - -This lesson requires a working spreadsheet program. -If you don't have a spreadsheet program already, you can use LibreOffice. -It's a free, open-source spreadsheet program. - -## Running the lesson by yourself (Not in a Data Carpentry Workshop) `FIXME` - -### Required software -If you are not in a Data Carpentry Workshop, the software you need is listed in the table below. **Follow the instructions in Option A *or* Option B** to have access to these programs. - - -| Software | Version | Manual | Available for | Description | -| -------- | ------------ | ------ | ------------- | ----------- | -| [Prokka](https://github.com/tseemann/prokka) | 1.14.6 | [GitHub](https://github.com/tseemann/prokka#invoking-prokka) | Linux, MacOC, Windows | Bacterial, archaeal and viral assembly annotation | -|[ncbi-genome-download](https://github.com/kblin/ncbi-genome-download) | version | [GitHub](https://github.com/kblin/ncbi-genome-download#usage) | Available for | Downloading genomes from the NCBI | -|[Anvi'o](https://anvio.org/)| version |[Pangenomics Workflow Manual](https://merenlab.org/2016/11/08/pangenomics-v2/)|Linux & MacOS| *multi-omics* analysis including Pangenomics| -|[GET_HOMOLOGUES](https://github.com/eead-csic-compbio/get_homologues)|version|[GitHuB](http://eead-csic-compbio.github.io/get_homologues/manual/)|Available for| Sequence clustering| -|[PPanGGOLiN](https://github.com/labgem/PPanGGOLiN)|version |[GitHub Wiki](https://github.com/labgem/PPanGGOLiN/wiki)|Available for| Pangenomics | -|[RGI](https://github.com/arpcard/rgi/)|6.0.3|[GitHub](https://github.com/arpcard/rgi/)|Windows, MacOS, Linux|Resistome annotation| - - -### Option A: Using the lessons with Amazon Web Services (AWS) - -Follow these [instructions on creating an Amazon instance](https://czirion.github.io/pangenomics-workshop/AMI-setup/index.html). Use the AMI `FIXME` named `FIXME` listed on the Community AMIs page. Please note that you must set your location as `N. Virginia` to access this community AMI. You can change your location in the upper right corner of the main AWS menu bar. The cost of using this AMI for a few days, with the t2.medium instance type, is very low (about USD $2.00 per user per day). Data Carpentry has *no* control over AWS pricing structure and provides this cost estimate without guarantees. Please read AWS documentation on pricing for up-to-date information. - -If you're an Instructor or Maintainer or want to contribute to these lessons, please contact us at [team@carpentries.org](mailto:team@carpentries.org), and we will start instances for you. - -In this instance, you can use the terminal available in RStudio, and users won't need -to install their own terminals or use `ssh` (see [Instructor Notes](https://czirion.github.io/pangenomics-workshop/guide/index.html)). **If, nevertheless, you -prefer that the users install their own terminals**, directions to install them are included -for each Windows, Mac OS X, and Linux below in the Option B section. For Windows, you will need to install Git Bash, PuTTY, or the Ubuntu Subsystem. - -### Option B: Following the lessons on your local machine -If you trust that your computer is powerful enough and want to have all the programs installed, you can follow all the workshops without using an -AWS remote machine. To do this, you will need to install all of the software used in the workshop and obtain a copy of the -dataset. Instructions for doing this are below. - +## In a Data Carpentry Workshop + +During a Data Carpentry Workshop, you'll be supplied with a server by CCM UNAM. +Your Instructor will provide instructions for connecting to an instance at the +workshop. You'll need an up-to-date web browser (Firefox, Safari, Chrome or +Edge), and a working spreadsheet program. If you don't have the latter, you can +install [LibreOffice](https://www.libreoffice.org/download/download-libreoffice/), +a free and open source office suite which includes a spreadsheet program called +Calc. + +## Running the lesson by yourself (Not in a Data Carpentry Workshop) + +### Required software and packages + +The following tables lists all the required software for the workshop. + +|Software|Version|Manual|Available for|Description| +|:--------|:------------|:------|:-------------|:-----------| +|[BLAST](https://blast.ncbi.nlm.nih.gov/Blast.cgi)|2.12|[BLAST Command Line Applications User Manual](https://www.ncbi.nlm.nih.gov/books/NBK279690/)|Linux, MacOS & Windows|Similarity regions identifier between biological sequences| +|[Prokka](https://github.com/tseemann/prokka)|1.14.6|[GitHub](https://github.com/tseemann/prokka#invoking-prokka)|Linux, MacOS & Windows|Bacterial, archaeal and viral assembly annotation| +|[ncbi-genome-download](https://github.com/kblin/ncbi-genome-download)|0.3.3|[GitHub](https://github.com/kblin/ncbi-genome-download#usage)|Linux, MacOS & Windows|Downloading genomes from the NCBI| +|[Anvi'o](https://anvio.org/)|7.1|[Pangenomics Workflow Manual](https://merenlab.org/2016/11/08/pangenomics-v2/)|Linux & MacOS|Multi-omics analysis including pangenomics| +|[GET_HOMOLOGUES](https://github.com/eead-csic-compbio/get_homologues)|3.6.2|[GitHub](http://eead-csic-compbio.github.io/get_homologues/manual/)|Linux, MacOS & Windows|Sequence clustering| +|[PPanGGOLiN](https://github.com/labgem/PPanGGOLiN)|2.0.5|[GitHub Wiki](https://github.com/labgem/PPanGGOLiN/wiki)|Linux & MacOS|Pangenomics| +|[RGI](https://github.com/arpcard/rgi/)|6.0.3|[GitHub](https://github.com/arpcard/rgi/)|Linux, MacOS & Windows|Resistome annotation| +|[Python](https://www.python.org/)|At least 3.7|[Python Docs](https://docs.python.org/)|Linux, MacOS & Windows|General-purpose programming language| + +You will also need the following Python packages to be available: gudhi, +jupyter, matplotlib, networkx, numpy, pandas, plotly, requests, scikit-learn, +scipy, and seaborn. + +While you could install each of these requirements manually, it is a highly +laborious process; thus we provide a ready-to-use +[Docker image](https://hub.docker.com/repository/docker/aapashkov/panworkshop) +with all of these dependencies included. A Docker **image** is a file used to +create a Docker **container**, which is an encapsulated environment storing +everything a project or software needs for it to function. Follow the +instructions of the section labeled **Option A** to learn how to set up a Docker +container for our workshop, or read the section **Option B** if you prefer to +install everything by yourself. + +### Option A: Running the Docker image + +1. If you haven't done so already, install Docker Engine or Docker Desktop on +your system by following [these instructions](https://docs.docker.com/engine/install/). +2. Next, open a terminal (in Linux and MacOS) or PowerShell (in Windows) in an +empty folder, and type the following command to start a container from our +image, replacing `NAME` with any memorable name you wish (the first time you +execute this command, it will take a while as it will download the entire +image): + ~~~ + docker run -itv $(pwd):/root --name NAME aapashkov/panworkshop + ~~~ + {: .language-bash} +3. You are now connected to the Docker container, and are ready to get started +with the workshop! Type `exit` to leave the container. If you wish to connect +back to it, please type the following two commands (replacing `NAME` with the +name you chose in step 2): + ~~~ + docker start NAME + docker attach NAME + ~~~ + {: .language-bash} +4. To delete a container after you have exited it, run this command (once again, +use the same `NAME` as from step 2): + ~~~ + docker rm NAME + ~~~ + {: .language-bash} + +### Option B: Installing dependencies manually #### **Data** -The data used in this workshop are available on Zenodo. Please read the Zenodo +The data used in this workshop is available on Zenodo. Please read the Zenodo page linked below for information about the data and access to the data files. Because this workshop works with real data, be aware that file sizes for the data are large. [![DOI](https://zenodo.org/badge/DOI/10.5281/zenodo.7620503.svg)](https://doi.org/10.5281/zenodo.7620503) More information about these data will be presented in the [first episode of the Pangenome Analysis in Prokaryotes lesson](https://paumayell.github.io/pangenomics/01-introduction/index.html). - #### **Install a Bash terminal** > ## Windows @@ -111,8 +122,7 @@ More information about these data will be presented in the [first episode of the > - The default shell is usually Bash, and there is usually no need to install anything. To see if your default shell is Bash type, echo $SHELL in a terminal and press the Enter key. If the message printed does not end with `/bash`, then your default is something else, and you can run Bash by typing `bash`. {: .solution} - -#### **Install Miniconda3** +#### Install Miniconda3 These instructions assume familiarity with the command line and with installation in general. There are different operating systems and many different versions @@ -141,61 +151,69 @@ To make a [Conda](https://conda.io/projects/conda/en/latest/index.html) environm > See the video tutorial, [installing Miniconda3 on WSL Ubuntu](https://youtu.be/owQgZoE-GrY) {: .solution} -#### **Install NCBI-genome-download** +#### Create the virtual environments + +First, make sure to set a faster dependency solver, add necessary channels, +update conda, and install BLAST into your base environment. -There are two ways to install this package. The first one is with `pip`. It is recommended to upgrade the `pip` version to the newest one. -Pip installation: ~~~ -pip install --upgrade pip -pip install . -pip install ncbi-genome-download +conda config --set solver libmamba +conda config --add channels conda-forge +conda config --add channels bioconda +conda update --quiet --yes --all +conda install --yes --name base blast=2.12 ~~~ {: .language-bash} -The other installation option is with Conda, you can refer to the website (highly recommended). -Conda installation: +Download every `.yml` file found in +[this link](https://github.com/carpentries-incubator/pangenomics-workshop/tree/gh-pages/files/docker/env) +somewhere easily accessible. These files are environment definitions for the +virtual environments to be used during the workshop. Next, open a terminal +inside the directory where you downloaded these files, and create the virtual +environments using the following command: + ~~~ -conda install -c bioconda ncbi-genome-download +for file in *.yml; do + conda env create --quiet --yes --file "$file" +done ~~~ -{: .language-bash} - +{: .language-bash} -#### **Install Prokka** +After this step, if you list your conda environments, you should expect +something like the following: -Conda installation: ~~~ -conda install -c conda-forge -c bioconda -c defaults prokka +conda env list ~~~ -{: .language-bash} -MacOS installation: +{: .language-bash} ~~~ -sudo cpan Time::Piece XML::Simple Digest::MD5 Bio::Perl -git clone https://github.com/tseemann/prokka.git $HOME/prokka -$HOME/prokka/bin/prokka --setupdb +# conda environments: +# +base * /miniconda3 +Pangenomics_Global /miniconda3/envs/Pangenomics_Global +TDA /miniconda3/envs/TDA +anvio-7.1 /miniconda3/envs/anvio-7.1 +ncbi-genome-download /miniconda3/envs/ncbi-genome-download +rgi /miniconda3/envs/rgi ~~~ -{: .language-bash} - -You can test your installation by typing `prokka` and it should display its help screen. +{: .output} +You should now perform two more steps to get up and running with your +environments. -#### **Install Anvi'o** -Options: -* Install a stable release of anvi’o on a Mac, Linux, or Windows-running computer (best option for end users). -* Use anvi’o from the active development branch (best option for developers). -* Run anvi’o through its Docker containers without any installation (best option for the lazy). +#### Download and extract databases -#### **Install RGI** - -To conda install RGI, you must install mamba in base environment. Afterwards, create a new -environment and install RGI into it using mamba: +Download the `panworkshop-databases.tgz` file from +[this Zenodo link](https://zenodo.org/records/11374283) and decompress it using +the following command: ~~~ -conda activate base -conda install mamba -mamba create -n rgi -c anaconda -c bioconda -c conda-forge rgi +tar -C / -zxf panworkshop-databases.tgz ~~~ {: .language-bash} +#### Test run RGI + Test RGI by running the following commands: ~~~ @@ -204,9 +222,10 @@ rgi main --help ~~~ {: .language-bash} -If you get an error stating *"ImportError: libffi.so.6: cannot open shared object file: No such file or directory"*, -you will have to install the `libffi6` package on your system. On Ubuntu and derivatives, you may install -it as follows: +If you get an error stating *"ImportError: libffi.so.6: cannot open shared +object file: No such file or directory"*, you will have to install the `libffi6` +package on your system. On Ubuntu and derivatives, you may install it as +follows: ~~~ wget https://mirrors.kernel.org/ubuntu/pool/main/libf/libffi/libffi6_3.2.1-8_amd64.deb @@ -217,18 +236,29 @@ rm libffi6_3.2.1-8_amd64.deb Retry test running RGI; you should not see the same error again. -## Connection to JupyterHub in CCM's servers (Notebooks and Terminal) -Open the JupyterHub server login site in a new tab with [this link](https://lab.matmor.unam.mx:8443/hub/login). -Open this [Google sheet](https://docs.google.com/spreadsheets/d/1Lg633gpV8KrUqTn34PDM8V0glAkTZpHcm4CViRRz1N0/edit#gid=1473209790) in a new tab and write your name in a user. -Use this user information to log in to the JupyterHub site that you opened in the previous step. +## Connection to JupyterHub in servers from CCM UNAM (Notebooks and Terminal) + +### User credentials + +As stated in the beginning of this page, during a workshop you'll be provided +with user credentials for servers from CCM UNAM by your Instructor. If you wish +to run the lessons by yourself, or are planning to be an Instructor of this +workshop, please contact [nselem@matmor.unam.mx](mailto:nselem@matmor.unam.mx) +in order to access the user credentials for the servers. ### Open a Bash Terminal -Click on the button "New" (upper right within the "Files" section) and choose the option "Terminal" from the drop-down menu. A new tab with a terminal will open. + +Click on the button "New" (upper right within the "Files" section) and choose +the option "Terminal" from the drop-down menu. A new tab with a terminal will +open. ### Open a Jupyter Notebook with the TDA environment -Click on the button "New" (upper right within the "Files" section) and choose the option "TDA" from the drop-down menu. A new tab with a notebook will open. -## Activating Conda environments +Click on the button "New" (upper right within the "Files" section) and choose +the option "TDA" from the drop-down menu. A new tab with a notebook will open. -To activate a Conda environment in the Terminal of JupyterHub you need to specify the absolute path of the environment: `conda activate /miniconda3/envs/my-environment-name` +### Activating Conda environments +To activate a Conda environment in the Terminal of JupyterHub you need to +specify the absolute path of the environment: +`conda activate /miniconda3/envs/my-environment-name`