QIIME2 for Apple Silicon

There seems to be a decent amount of conflicting and out of date information about how to make QIIME2 work for apple silicon. I have not been able to get the current build of QIIIME2 to work on my M1 MacBook via Miniconda. After executing:

CONDA_SUBDIR=osx-64 conda env create -n qiime2-amplicon-2024.5 --file https://data.qiime2.org/distro/amplicon/qiime2-amplicon-2024.5-py39-osx-conda.yml
conda activate qiime2-amplicon-2024.5
conda config --env --set subdir osx-64

I am met with:

EnvironmentNameNotFound: Could not find conda environment: qiime2-amplicon-2024.5

I have seen a few posts about this already but I am curious if there has been any changes in the past few years.

Where is the most up to date guide on how to troubleshoot this?

Thank you!

2 Likes

Hello Tino,

Welcome to the forums!

It looks like already found the current docs for installing Qiime2: Natively installing QIIME 2 — QIIME 2 2024.5.0 documentation

We include support for Apple Silicon M1 osx-arm64 using Rosetta 2, which didn't work for you.

Posting here is the best way to get help!

This error is related to the 2nd line conda activate...
When you run the first line CONDA_SUBDIR=osx-64 conda env create... what do you see?

Can you rerun that first line and post the full output? I suspect something went wrong at this first step.

2 Likes

Hi Colin,

thanks for helping me out with this. This is my input and output of the first line of the install code:

(base) s.d.@eduroam-169-233-141-247 ~ % CONDA_SUBDIR=osx-64 conda env create -n qiime2-amplicon-2024.5 --file https://data.qiime2.org/distro/amplicon/qiime2-amplicon-2024.5-py39-osx-conda.yml
Channels:

  • (this is the link to the package 2024.5 but the forum doesn't like new users posting links)
  • bioconda
  • conda-forge
  • defaults
    Platform: osx-64
    Collecting package metadata (repodata.json): done
    Solving environment: failed
    Channels:
  • (this is the link to the package 2024.5 but the forum doesn't like new users posting links)
  • bioconda
  • conda-forge
  • defaults
    Platform: osx-64
    Collecting package metadata (repodata.json): done
    Solving environment: failed

LibMambaUnsatisfiableError: Encountered problems while solving:

  • package bleach-6.1.0-pyhd8ed1ab_0 is excluded by strict repo priority
  • package c-ares-1.33.1-h44e7173_0 is excluded by strict repo priority
  • package glpk-5.0-h3cb5acd_0 is excluded by strict repo priority
  • package jq-1.7.1-h10d778d_0 is excluded by strict repo priority
  • package libdeflate-1.20-h49d49c5_0 is excluded by strict repo priority
  • package perl-carp-1.50-pl5321hd8ed1ab_0 is excluded by strict repo priority
  • package perl-compress-raw-zlib-2.202-pl5321h775f41a_0 is excluded by strict repo priority
  • package perl-encode-3.21-pl5321h10d778d_0 is excluded by strict repo priority
  • package perl-exporter-5.74-pl5321hd8ed1ab_0 is excluded by strict repo priority
  • package perl-extutils-makemaker-7.70-pl5321hd8ed1ab_0 is excluded by strict repo priority
  • package perl-parent-0.241-pl5321hd8ed1ab_0 is excluded by strict repo priority
  • package perl-scalar-list-utils-1.63-pl5321h775f41a_0 is excluded by strict repo priority
  • package argh-0.31.3-pyhd8ed1ab_0 is excluded by strict repo priority
  • nothing provides r 3.2.2* needed by r-jsonlite-0.9.19-r3.2.2_0
  • package yq-3.4.3-pyhd8ed1ab_0 requires xmltodict >=0.11.0, but none of the providers can be installed
  • package paramiko-3.4.1-pyhd8ed1ab_0 requires pynacl >=1.5, but none of the providers can be installed
  • package ncbi-datasets-pylib-16.6.1-pyhdfd78af_0 requires urllib3 1.26.*, but none of the providers can be installed
  • package deblur-1.1.1-pyhdfd78af_0 requires scikit-bio >=0.5.0, but none of the providers can be installed
  • nothing provides r 3.2.2* needed by r-magrittr-1.5-r3.2.2_0
  • nothing provides r 3.2.2* needed by r-abind-1.4.3-r3.2.2_0
  • nothing provides r 3.2.2* needed by r-digest-0.6.9-r3.2.2_0
  • package bioconductor-phyloseq-1.46.0-r43hdfd78af_0 requires r-ade4 >=1.7-4, but none of the providers can be installed
  • nothing provides r 3.2.2* needed by r-bit64-0.9_5-r3.2.2_0
  • package biom-format-2.1.15-py39hdc70f33_0 is excluded by strict repo priority
  • package biopython-1.84-py39hded5825_0 is excluded by strict repo priority
  • package libffi-3.4.2-hecd8cb5_6 is excluded by strict repo priority
  • package munkres-1.1.4-py_0 is excluded by strict repo priority
  • package r-bh-1.84.0_0-r44hc72bb7e_1 is excluded by strict repo priority
  • package r-bit-4.0.5-r44h6b9d099_2 is excluded by strict repo priority
  • package r-checkmate-2.3.2-r44h6b9d099_0 is excluded by strict repo priority
  • package r-data.table-1.15.2-r43he044350_0 is excluded by strict repo priority
  • package r-deldir-2.0_4-r44h9612530_1 is excluded by strict repo priority
  • package r-dorng-1.8.6-r43h142f84f_0 is excluded by strict repo priority
  • package r-e1071-1.7_14-r44h25d921d_1 is excluded by strict repo priority
  • package r-fnn-1.1.4.1-r44hc83a2cd_0 is excluded by strict repo priority
  • package r-futile.logger-1.4.3-r43h6115d3f_0 is excluded by strict repo priority
  • package r-futile.options-1.0.1-r43h142f84f_0 is excluded by strict repo priority
  • package r-ggrepel-0.9.5-r44h25d921d_1 is excluded by strict repo priority
  • package r-htmltools-0.5.8.1-r44h25d921d_1 is excluded by strict repo priority
  • package r-hwriter-1.3.2.1-r43h142f84f_0 is excluded by strict repo priority
  • package r-jpeg-0.1_10-r44hca239e8_6 is excluded by strict repo priority
  • package r-knitr-1.48-r44hc72bb7e_0 is excluded by strict repo priority
  • package r-lambda.r-1.2.4-r43h142f84f_0 is excluded by strict repo priority
  • package r-matrixstats-1.4.0-r44h199b6f9_0 is excluded by strict repo priority
  • package r-optparse-1.7.5-r44hc72bb7e_1 is excluded by strict repo priority
  • package r-permute-0.9_7-r43h142f84f_0 is excluded by strict repo priority
  • package r-pheatmap-1.0.12-r43h142f84f_0 is excluded by strict repo priority
  • package r-png-0.1_8-r44h9a19d2a_2 is excluded by strict repo priority
  • package r-prettyunits-1.2.0-r43h142f84f_0 is excluded by strict repo priority
  • package r-progress-1.2.3-r44hc72bb7e_1 is excluded by strict repo priority
  • package r-proxy-0.4_27-r44h6b9d099_3 is excluded by strict repo priority
  • package r-rappdirs-0.3.3-r44h6b9d099_3 is excluded by strict repo priority
  • package r-rcppparallel-5.1.9-r44hc83a2cd_1 is excluded by strict repo priority
  • package r-rcpptoml-0.2.2-r44h25d921d_2 is excluded by strict repo priority
  • package r-readr-2.1.5-r44h25d921d_1 is excluded by strict repo priority
  • package r-rematch2-2.1.2-r43h142f84f_0 is excluded by strict repo priority
  • package r-rmarkdown-2.28-r44hc72bb7e_0 is excluded by strict repo priority
  • package r-rtsne-0.17-r44h3eeea24_1 is excluded by strict repo priority
  • package r-scales-1.3.0-r44hc72bb7e_1 is excluded by strict repo priority
  • package r-snow-0.4_4-r43h142f84f_0 is excluded by strict repo priority
  • package r-stringr-1.5.1-r44h785f33e_1 is excluded by strict repo priority
  • package r-tibble-3.2.1-r44h6b9d099_3 is excluded by strict repo priority
  • package r-vegan-2.6_8-r44hb92d44b_0 is excluded by strict repo priority
  • package r-viridis-0.6.5-r44hc72bb7e_1 is excluded by strict repo priority
  • package r-yaml-2.3.10-r44h6b9d099_0 is excluded by strict repo priority
  • package simplejson-3.19.3-py39hded5825_0 is excluded by strict repo priority
  • package tqdm-4.66.5-py39h20db666_0 is excluded by strict repo priority
  • nothing provides __win needed by xopen-2.0.2-pyh7428d3b_1
  • package emperor-1.0.4-py39h6e9494a_3 is excluded by strict repo priority
  • nothing provides _python_rc needed by python-3.13.0rc1-h3ec566f_100_cp313

Looks like I am missing a ton of stuff! Thanks for your help.

After some more reading the issue seems to be that I did not input:

conda config --set channel_priority flexible

it seems like this is the solution I needed!

5 Likes

It does look like some of the issue was on our end, we've got conda-forge and bioconda backwards in that environment list. So that would explain why you had to drop the channel priority to flexible.
Great job sleuthing @tinoracha!

We should ideally be able to solve with strict in future releases. cc @lizgehret (I think we've fixed this recently already).

5 Likes