While we recommend keeping your version of QIIME 2 up to date, we recognize that QIIME 2 users sometimes may wish to install older versions of QIIME 2 - whether that be to test/replicate behavior that existed within a particular version, or to maintain version consistency across a multi-year analysis.
Our environment files (i.e. the
.yml files that you use to install a particular version of QIIME 2 - example here) are the result of conda resolving our list of internal packages and immediate dependencies into a much longer list of all package dependencies required in order for all of our QIIME 2 packages to function successfully. Conda uses an internal solver to resolve these environments. Historically, conda used an in-house solver for environment resolution - but as of their 23.10.0 release, they are now using the libmamba solver by default. These two solvers work differently to resolve environments, and thus, can provide different results.
Since we always use the latest version of conda for environment resolution, our environment files for each QIIME 2 release are a result of the particular solver used by conda at the time of that release. Because of this, it's important that you are using the appropriate conda solver for the version of QIIME 2 you are attempting to install.
In order to have flexibility in which conda solver is used in a QIIME 2 install, first make sure to run
conda update conda and ensure that you are using conda version 23.10.0 or greater (you can confirm this by running
For QIIME 2 versions older than 2023.9:
- Make sure to include the
--solver=classicparameter in your environment creation command (i.e.
conda env create... etc)
For QIIME 2 versions 2023.9 or newer:
- You can run the install command as shown in our user install docs (the
libmambasolver will be used by default, which is the correct solver for these environment files).