Skip to content

mamba -> conda, github -> pypi (for linux) - #82

Merged
nextgenusfs merged 1 commit into
nextgenusfs:mainfrom
peterjc:patch-2
Aug 3, 2026
Merged

mamba -> conda, github -> pypi (for linux)#82
nextgenusfs merged 1 commit into
nextgenusfs:mainfrom
peterjc:patch-2

Conversation

@peterjc

@peterjc peterjc commented Aug 3, 2026

Copy link
Copy Markdown
Contributor

This is a suggestion.

The core dependency resolution work in mamba is now used by default in conda, so there is less reason to require the additional dependency on the mamba command line tool.

You also now have formal releases on PyPI so installing from there is preferable for tracking a known version - and as a stepping stone to having this packaged in bioconda too.

Example run:

Details
(base) $ conda create -n funannotate2 gfftk gapmm2 minimap2 miniprot snap "augustus==3.5.0" glimmerhmm diamond trnascan-se table2asn gb-io buscolite
Retrieving notices: done
Channels:
 - conda-forge
 - bioconda
 - nodefaults
Platform: linux-64
Collecting package metadata (repodata.json): done
Solving environment: done

## Package Plan ##

  environment location: /mnt/apps/users/pcock/conda/envs/funannotate2

  added / updated specs:
    - augustus==3.5.0
    - buscolite
    - diamond
    - gapmm2
    - gb-io
    - gfftk
    - glimmerhmm
    - minimap2
    - miniprot
    - snap
    - table2asn
    - trnascan-se


The following packages will be downloaded:

    package                    |            build
    ---------------------------|-----------------
    buscolite-26.6.21          |     pyhdfd78af_0         141 KB  bioconda
    gapmm2-26.5.22             |     pyhdfd78af_0          24 KB  bioconda
    gb-io-0.4.0                |  py313h63c9519_0         467 KB  bioconda
    gfftk-26.5.22              |     pyhdfd78af_0         4.5 MB  bioconda
    libcurl-8.21.0             |       hcf29cc6_1         468 KB  conda-forge
    libgcc-16.1.0              |       ha9f2e26_1         1.0 MB  conda-forge
    libgcc-ng-16.1.0           |       h69a702a_1          28 KB  conda-forge
    libgfortran-16.1.0         |       h69a702a_1          27 KB  conda-forge
    libgfortran5-16.1.0        |       h79bb938_1         2.4 MB  conda-forge
    libgomp-16.1.0             |       he0feb66_1         625 KB  conda-forge
    libstdcxx-16.1.0           |       h934c35e_1         6.3 MB  conda-forge
    libstdcxx-ng-16.1.0        |       hdf11a46_1          28 KB  conda-forge
    libzlib-1.3.2              |       h25fd6f3_3          62 KB  conda-forge
    mappy-2.31                 |  py313hfeada96_0         171 KB  bioconda
    numpy-2.5.1                |  py313hf6604e3_0         8.6 MB  conda-forge
    pip-26.2                   |     pyh145f28c_0         1.1 MB  conda-forge
    psutil-7.2.2               |  py313h54dd161_0         223 KB  conda-forge
    pyfastx-2.3.1              |  py313hfeada96_0         643 KB  bioconda
    pyhmmer-0.12.1             |  py313hd978853_0         3.1 MB  bioconda
    python-3.13.14             |h6add32d_100_cp313        35.7 MB  conda-forge
    python-edlib-1.3.9.post1   |  py313hcd54142_3          79 KB  bioconda
    table2asn-1.28.1179        |       he45da00_1        16.8 MB  bioconda
    ------------------------------------------------------------
                                           Total:        82.5 MB

The following NEW packages will be INSTALLED:

  _openmp_mutex      conda-forge/linux-64::_openmp_mutex-4.5-20_gnu
  _x86_64-microarch~ conda-forge/noarch::_x86_64-microarch-level-3-3_zen3
  augustus           bioconda/linux-64::augustus-3.5.0-pl5321h9716f88_9
  backports.zstd     conda-forge/linux-64::backports.zstd-1.6.0-py313h18e8e13_0
  bamtools           bioconda/linux-64::bamtools-2.5.3-he132191_0
  biopython          conda-forge/linux-64::biopython-1.87-py313h07c4f96_0
  boost-cpp          conda-forge/linux-64::boost-cpp-1.85.0-h3c6214e_4
  brotli-python      conda-forge/linux-64::brotli-python-1.2.0-py313hf159716_1
  buscolite          bioconda/noarch::buscolite-26.6.21-pyhdfd78af_0
  bzip2              conda-forge/linux-64::bzip2-1.0.8-hda65f42_9
  c-ares             conda-forge/linux-64::c-ares-1.34.8-hb03c661_0
  ca-certificates    conda-forge/noarch::ca-certificates-2026.7.22-hbd8a1cb_0
  cdbtools           bioconda/linux-64::cdbtools-0.99-h077b44d_12
  certifi            conda-forge/noarch::certifi-2026.7.22-pyhd8ed1ab_0
  charset-normalizer conda-forge/noarch::charset-normalizer-3.4.9-pyhd8ed1ab_0
  diamond            bioconda/linux-64::diamond-2.2.4-he361c42_0
  gapmm2             bioconda/noarch::gapmm2-26.5.22-pyhdfd78af_0
  gb-io              bioconda/linux-64::gb-io-0.4.0-py313h63c9519_0
  gfftk              bioconda/noarch::gfftk-26.5.22-pyhdfd78af_0
  glimmerhmm         bioconda/linux-64::glimmerhmm-3.0.4-pl5321h503566f_10
  gmp                conda-forge/linux-64::gmp-6.3.0-hac33072_2
  gsl                conda-forge/linux-64::gsl-2.8-hbf7d49c_1
  h2                 conda-forge/noarch::h2-4.4.0-pyhcf101f3_0
  hpack              conda-forge/noarch::hpack-4.2.0-pyhd8ed1ab_0
  htslib             bioconda/linux-64::htslib-1.23.1-h633afcb_0
  hyperframe         conda-forge/noarch::hyperframe-6.1.0-pyhd8ed1ab_0
  icu                conda-forge/linux-64::icu-75.1-he02047a_0
  idna               conda-forge/noarch::idna-3.18-pyhcf101f3_0
  infernal           bioconda/linux-64::infernal-1.1.5-pl5321h7b50bb2_4
  jsoncpp            conda-forge/linux-64::jsoncpp-1.9.6-hf42df4d_1
  k8                 bioconda/linux-64::k8-1.2-he8db53b_6
  kernel-headers_li~ conda-forge/noarch::kernel-headers_linux-64-5.14.0-he073ed8_3
  keyutils           conda-forge/linux-64::keyutils-1.6.3-hb9d3cd8_0
  krb5               conda-forge/linux-64::krb5-1.22.2-hbde042b_1
  ld_impl_linux-64   conda-forge/linux-64::ld_impl_linux-64-2.46.1-default_hbd61a6d_102
  libamd             conda-forge/linux-64::libamd-3.3.3-haaf9dc3_7100102
  libblas            conda-forge/linux-64::libblas-3.11.0-8_h4a7cf45_openblas
  libboost           conda-forge/linux-64::libboost-1.85.0-h0ccab89_4
  libboost-devel     conda-forge/linux-64::libboost-devel-1.85.0-h00ab1b0_4
  libboost-headers   conda-forge/linux-64::libboost-headers-1.85.0-ha770c72_4
  libbtf             conda-forge/linux-64::libbtf-2.3.2-h32481e8_7100102
  libcamd            conda-forge/linux-64::libcamd-3.3.3-h32481e8_7100102
  libcblas           conda-forge/linux-64::libcblas-3.11.0-8_h0358290_openblas
  libccolamd         conda-forge/linux-64::libccolamd-3.3.4-h32481e8_7100102
  libcholmod         conda-forge/linux-64::libcholmod-5.3.1-h59ddab4_7100102
  libcolamd          conda-forge/linux-64::libcolamd-3.3.4-h32481e8_7100102
  libcurl            conda-forge/linux-64::libcurl-8.21.0-hcf29cc6_1
  libcxsparse        conda-forge/linux-64::libcxsparse-4.4.1-h32481e8_7100102
  libdeflate         conda-forge/linux-64::libdeflate-1.25-h17f619e_0
  libedit            conda-forge/linux-64::libedit-3.1.20250104-pl5321h7949ede_0
  libev              conda-forge/linux-64::libev-4.33-hd590300_2
  libexpat           conda-forge/linux-64::libexpat-2.8.1-hecca717_1
  libffi             conda-forge/linux-64::libffi-3.5.2-h3435931_0
  libgcc             conda-forge/linux-64::libgcc-16.1.0-ha9f2e26_1
  libgcc-ng          conda-forge/linux-64::libgcc-ng-16.1.0-h69a702a_1
  libgfortran        conda-forge/linux-64::libgfortran-16.1.0-h69a702a_1
  libgfortran5       conda-forge/linux-64::libgfortran5-16.1.0-h79bb938_1
  libgomp            conda-forge/linux-64::libgomp-16.1.0-he0feb66_1
  libiconv           conda-forge/linux-64::libiconv-1.18-h3b78370_2
  libklu             conda-forge/linux-64::libklu-2.3.5-hf24d653_7100102
  liblapack          conda-forge/linux-64::liblapack-3.11.0-8_h47877c9_openblas
  libldl             conda-forge/linux-64::libldl-3.3.2-h32481e8_7100102
  liblzma            conda-forge/linux-64::liblzma-5.8.3-hb03c661_0
  liblzma-devel      conda-forge/linux-64::liblzma-devel-5.8.3-hb03c661_0
  libmpdec           conda-forge/linux-64::libmpdec-4.0.0-hb03c661_1
  libnghttp2         conda-forge/linux-64::libnghttp2-1.68.1-h877daf1_0
  libopenblas        conda-forge/linux-64::libopenblas-0.3.33-pthreads_h94d23a6_0
  libopenssl-static  conda-forge/linux-64::libopenssl-static-3.6.3-hb03c661_0
  libparu            conda-forge/linux-64::libparu-1.0.0-h17147ab_7100102
  libpng             conda-forge/linux-64::libpng-1.6.58-h421ea60_0
  librbio            conda-forge/linux-64::librbio-4.3.4-h32481e8_7100102
  libspex            conda-forge/linux-64::libspex-3.2.3-had10066_7100102
  libspqr            conda-forge/linux-64::libspqr-4.3.4-h852d39f_7100102
  libsqlite          conda-forge/linux-64::libsqlite-3.53.4-h0c1763c_0
  libssh2            conda-forge/linux-64::libssh2-1.11.1-hcf80075_0
  libstdcxx          conda-forge/linux-64::libstdcxx-16.1.0-h934c35e_1
  libstdcxx-ng       conda-forge/linux-64::libstdcxx-ng-16.1.0-hdf11a46_1
  libsuitesparsecon~ conda-forge/linux-64::libsuitesparseconfig-7.10.1-h92d6892_7100102
  libumfpack         conda-forge/linux-64::libumfpack-6.3.5-heb53515_7100102
  libuuid            conda-forge/linux-64::libuuid-2.42.2-h5347b49_0
  libxcrypt          conda-forge/linux-64::libxcrypt-4.4.36-hd590300_1
  libzlib            conda-forge/linux-64::libzlib-1.3.2-h25fd6f3_3
  lp_solve           conda-forge/linux-64::lp_solve-5.5.2.11-hd590300_0
  mappy              bioconda/linux-64::mappy-2.31-py313hfeada96_0
  metis              conda-forge/linux-64::metis-5.1.0-hd0bcaf9_1007
  minimap2           bioconda/linux-64::minimap2-2.31-h118bc1c_0
  miniprot           bioconda/linux-64::miniprot-0.18-h577a1d6_0
  mpfr               conda-forge/linux-64::mpfr-4.2.2-he0a73b1_0
  mysql-connector-c  conda-forge/linux-64::mysql-connector-c-6.1.11-h659d440_1008
  natsort            conda-forge/noarch::natsort-8.4.0-pyhcf101f3_2
  ncurses            conda-forge/linux-64::ncurses-6.6-hdb14827_0
  numpy              conda-forge/linux-64::numpy-2.5.1-py313hf6604e3_0
  openssl            conda-forge/linux-64::openssl-3.6.3-h35e630c_0
  packaging          conda-forge/noarch::packaging-26.2-pyhc364b38_0
  perl               conda-forge/linux-64::perl-5.32.1-7_hd590300_perl5
  perl-app-cpanminus conda-forge/noarch::perl-app-cpanminus-1.7048-pl5321hd8ed1ab_0
  perl-carp          conda-forge/noarch::perl-carp-1.50-pl5321hd8ed1ab_0
  perl-class-method~ conda-forge/linux-64::perl-class-method-modifiers-2.13-pl5321ha770c72_0
  perl-constant      conda-forge/noarch::perl-constant-1.33-pl5321hd8ed1ab_0
  perl-dbi           conda-forge/linux-64::perl-dbi-1.651-pl5321hb03c661_0
  perl-exporter      conda-forge/noarch::perl-exporter-5.74-pl5321hd8ed1ab_0
  perl-extutils-mak~ conda-forge/noarch::perl-extutils-makemaker-7.70-pl5321hd8ed1ab_0
  perl-file-path     conda-forge/noarch::perl-file-path-2.18-pl5321hd8ed1ab_0
  perl-file-temp     conda-forge/noarch::perl-file-temp-0.2304-pl5321hd8ed1ab_0
  perl-file-which    conda-forge/noarch::perl-file-which-1.24-pl5321hd8ed1ab_0
  perl-inc-latest    conda-forge/linux-64::perl-inc-latest-0.500-pl5321ha770c72_0
  perl-module-build  conda-forge/linux-64::perl-module-build-0.4234-pl5321ha770c72_1
  perl-moo           conda-forge/linux-64::perl-moo-2.005004-pl5321ha770c72_0
  perl-parallel-for~ bioconda/noarch::perl-parallel-forkmanager-2.04-pl5321hdfd78af_0
  perl-parent        conda-forge/noarch::perl-parent-0.243-pl5321hd8ed1ab_0
  perl-role-tiny     conda-forge/linux-64::perl-role-tiny-2.002004-pl5321ha770c72_0
  perl-scalar-list-~ conda-forge/linux-64::perl-scalar-list-utils-1.70-pl5321hb03c661_0
  perl-storable      conda-forge/linux-64::perl-storable-3.15-pl5321hb9d3cd8_2
  perl-sub-quote     conda-forge/linux-64::perl-sub-quote-2.006006-pl5321ha770c72_0
  perl-test-fatal    conda-forge/linux-64::perl-test-fatal-0.016-pl5321ha770c72_0
  perl-try-tiny      conda-forge/linux-64::perl-try-tiny-0.31-pl5321ha770c72_0
  perl-yaml          bioconda/noarch::perl-yaml-1.30-pl5321hdfd78af_0
  pip                conda-forge/noarch::pip-26.2-pyh145f28c_0
  psutil             conda-forge/linux-64::psutil-7.2.2-py313h54dd161_0
  pyfastx            bioconda/linux-64::pyfastx-2.3.1-py313hfeada96_0
  pyhmmer            bioconda/linux-64::pyhmmer-0.12.1-py313hd978853_0
  pysocks            conda-forge/noarch::pysocks-1.7.1-pyha55dd90_7
  python             conda-forge/linux-64::python-3.13.14-h6add32d_100_cp313
  python-edlib       bioconda/linux-64::python-edlib-1.3.9.post1-py313hcd54142_3
  python_abi         conda-forge/noarch::python_abi-3.13-8_cp313
  readline           conda-forge/linux-64::readline-8.3-h853b02a_0
  requests           conda-forge/noarch::requests-2.34.2-pyhcf101f3_0
  samtools           bioconda/linux-64::samtools-1.23.1-ha83d96e_0
  snap               bioconda/linux-64::snap-2017_03_01-h7b50bb2_0
  sqlite             conda-forge/linux-64::sqlite-3.53.4-hbc0de68_0
  suitesparse        conda-forge/linux-64::suitesparse-7.10.1-ha0f6916_7100102
  sysroot_linux-64   conda-forge/noarch::sysroot_linux-64-2.34-h087de78_3
  table2asn          bioconda/linux-64::table2asn-1.28.1179-he45da00_1
  tar                conda-forge/linux-64::tar-1.35-h3b78370_0
  tk                 conda-forge/linux-64::tk-8.6.13-noxft_hd70dff1_3
  trnascan-se        bioconda/linux-64::trnascan-se-2.0.13-pl5321hab16a5f_0
  tzdata             conda-forge/noarch::tzdata-2026c-h151e31d_0
  ucsc-fatotwobit    bioconda/linux-64::ucsc-fatotwobit-482-hdc0a859_0
  ucsc-twobitinfo    bioconda/linux-64::ucsc-twobitinfo-482-hdc0a859_0
  urllib3            conda-forge/noarch::urllib3-2.7.0-pyhd8ed1ab_0
  xz                 conda-forge/linux-64::xz-5.8.3-ha02ee65_0
  xz-gpl-tools       conda-forge/linux-64::xz-gpl-tools-5.8.3-ha02ee65_0
  xz-tools           conda-forge/linux-64::xz-tools-5.8.3-hb03c661_0
  zstd               conda-forge/linux-64::zstd-1.5.7-hb78ec9c_6


Proceed ([y]/n)? y


Downloading and Extracting Packages:

Preparing transaction: done
Verifying transaction: done
Executing transaction: done
#
# To activate this environment, use
#
#     $ conda activate funannotate2
#
# To deactivate an active environment, use
#
#     $ conda deactivate
(base) $  conda activate funannotate2
(funannotate2) pcock@gruffalo:~$ pip install funannotate2
Collecting funannotate2
  Downloading funannotate2-26.6.21-py3-none-any.whl.metadata (10 kB)
Collecting annorefine>=2026.2.9 (from funannotate2)
  Downloading annorefine-2026.2.22-cp313-cp313-manylinux_2_28_x86_64.whl.metadata (6.0 kB)
Requirement already satisfied: buscolite>=26.6.21 in /mnt/apps/users/pcock/conda/envs/funannotate2/lib/python3.13/site-packages (from funannotate2) (26.6.21)
Requirement already satisfied: gapmm2>=26.5.22 in /mnt/apps/users/pcock/conda/envs/funannotate2/lib/python3.13/site-packages (from funannotate2) (26.5.22)
Requirement already satisfied: gb-io>=0.3.2 in /mnt/apps/users/pcock/conda/envs/funannotate2/lib/python3.13/site-packages (from funannotate2) (0.4.0)
Requirement already satisfied: gfftk>=26.5.22 in /mnt/apps/users/pcock/conda/envs/funannotate2/lib/python3.13/site-packages (from funannotate2) (26.5.22)
Collecting json-repair (from funannotate2)
  Downloading json_repair-0.61.7-py3-none-any.whl.metadata (20 kB)
Requirement already satisfied: mappy in /mnt/apps/users/pcock/conda/envs/funannotate2/lib/python3.13/site-packages (from funannotate2) (2.31)
Requirement already satisfied: natsort in /mnt/apps/users/pcock/conda/envs/funannotate2/lib/python3.13/site-packages (from funannotate2) (8.4.0)
Requirement already satisfied: numpy in /mnt/apps/users/pcock/conda/envs/funannotate2/lib/python3.13/site-packages (from funannotate2) (2.5.1)
Requirement already satisfied: psutil in /mnt/apps/users/pcock/conda/envs/funannotate2/lib/python3.13/site-packages (from funannotate2) (7.2.2)
Requirement already satisfied: pyfastx>=2.0.0 in /mnt/apps/users/pcock/conda/envs/funannotate2/lib/python3.13/site-packages (from funannotate2) (2.3.1)
Requirement already satisfied: pyhmmer>=0.12.0 in /mnt/apps/users/pcock/conda/envs/funannotate2/lib/python3.13/site-packages (from funannotate2) (0.12.1)
Collecting pytantan>=0.1.3 (from funannotate2)
  Downloading pytantan-0.1.4-cp311-abi3-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.metadata (50 kB)
Requirement already satisfied: requests in /mnt/apps/users/pcock/conda/envs/funannotate2/lib/python3.13/site-packages (from funannotate2) (2.34.2)
Requirement already satisfied: packaging in /mnt/apps/users/pcock/conda/envs/funannotate2/lib/python3.13/site-packages (from buscolite>=26.6.21->funannotate2) (26.2)
Requirement already satisfied: edlib in /mnt/apps/users/pcock/conda/envs/funannotate2/lib/python3.13/site-packages (from gapmm2>=26.5.22->funannotate2) (1.3.9.post1)
Collecting archspec~=0.2 (from pytantan>=0.1.3->funannotate2)
  Downloading archspec-0.2.6-py3-none-any.whl.metadata (4.4 kB)
Collecting scoring-matrices~=0.3.0 (from pytantan>=0.1.3->funannotate2)
  Downloading scoring_matrices-0.3.4-cp311-abi3-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl.metadata (10 kB)
Requirement already satisfied: charset_normalizer<4,>=2 in /mnt/apps/users/pcock/conda/envs/funannotate2/lib/python3.13/site-packages (from requests->funannotate2) (3.4.9)
Requirement already satisfied: idna<4,>=2.5 in /mnt/apps/users/pcock/conda/envs/funannotate2/lib/python3.13/site-packages (from requests->funannotate2) (3.18)
Requirement already satisfied: urllib3<3,>=1.26 in /mnt/apps/users/pcock/conda/envs/funannotate2/lib/python3.13/site-packages (from requests->funannotate2) (2.7.0)
Requirement already satisfied: certifi>=2023.5.7 in /mnt/apps/users/pcock/conda/envs/funannotate2/lib/python3.13/site-packages (from requests->funannotate2) (2026.7.22)
Downloading funannotate2-26.6.21-py3-none-any.whl (164 kB)
Downloading annorefine-2026.2.22-cp313-cp313-manylinux_2_28_x86_64.whl (7.7 MB)
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 7.7/7.7 MB 6.0 MB/s  0:00:01
Downloading pytantan-0.1.4-cp311-abi3-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (283 kB)
Downloading archspec-0.2.6-py3-none-any.whl (81 kB)
Downloading scoring_matrices-0.3.4-cp311-abi3-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl (124 kB)
Downloading json_repair-0.61.7-py3-none-any.whl (50 kB)
Installing collected packages: scoring-matrices, json-repair, archspec, annorefine, pytantan, funannotate2
Successfully installed annorefine-2026.2.22 archspec-0.2.6 funannotate2-26.6.21 json-repair-0.61.7 pytantan-0.1.4 scoring-matrices-0.3.4
(funannotate2) $ funannotate2 --version
funannotate2 v26.6.21

This is a suggestion.

The core dependency resolution work in mamba is now used by default in conda, so there is less reason to require the additional dependency on the mamba command line tool.

You also now have formal releases on PyPI so installing from there is preferable for tracking a known version - and as a stepping stone to having this packaged in bioconda too.
@nextgenusfs

nextgenusfs commented Aug 3, 2026

Copy link
Copy Markdown
Owner

Thanks, took quite some time to get it to build in bioconda, thus the longer instructions remained. There is still some outstanding bug/issue in pytantan dependency -- on linux it's a non-issue as far as I know.

@nextgenusfs
nextgenusfs merged commit 64fd9ed into nextgenusfs:main Aug 3, 2026
6 checks passed
@peterjc
peterjc deleted the patch-2 branch August 3, 2026 16:53
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants