Slow Conda solves can block environment creation, package installs, and updates long before any files are changed. Enabling the libmamba solver tells Conda to use the newer dependency resolver for package decisions instead of the older classic solver.
Recent Conda releases already use libmamba by default, but older installations or explicit .condarc settings can still point to classic. The active value is visible through conda config and conda info, so check the current solver before changing a shared workstation or build runner.
The conda-libmamba-solver package must be present in the base environment because Conda loads solver plugins from there. conda config --set solver libmamba writes the setting to the user .condarc by default, and new Conda commands read the setting without restarting the shell.
Related: How to set Conda channel priority
Related: How to enable conda-forge in Conda
Related: How to install a package with Conda
$ conda config --show solver solver: classic
If the output already shows solver: libmamba, skip the change step and run the smoke test to confirm Conda can still solve a package request.
$ conda list --name base conda-libmamba-solver # packages in environment at /opt/conda: # # Name Version Build Channel conda-libmamba-solver 26.4.0 pyh3785b3c_0
$ conda install --name base conda-libmamba-solver
If Conda stops with CondaToSNonInteractiveError on Anaconda channels, review the listed channel URLs and accept the required Terms of Service or install the package from an approved channel before continuing.
Related: How to install a package with Conda
$ conda config --set solver libmamba
$ conda config --show solver solver: libmamba
$ conda config --show-sources ==> /home/user/.condarc <== channels: - defaults solver: libmamba
Multiple files can appear in this output. A later file or environment-specific setting can override an earlier solver value.
$ conda info
active environment : None
conda version : 26.3.2
solver : libmamba (default)
##### snipped #####
$ conda create --dry-run --name solver-smoke --override-channels --channel conda-forge zlib
Channels:
- conda-forge
Platform: linux-64
Collecting package metadata (repodata.json): done
Solving environment: done
DryRunExit: Dry run. Exiting.
## Package Plan ##
environment location: /opt/conda/envs/solver-smoke
added / updated specs:
- zlib
The following NEW packages will be INSTALLED:
libzlib conda-forge/linux-64::libzlib-1.3.2-hdc9db2a_2
zlib conda-forge/linux-64::zlib-1.3.2-hdc9db2a_2
The dry run does not create the solver-smoke environment. The explicit conda-forge channel keeps the smoke test independent of Anaconda channel Terms of Service prompts.
Related: How to enable conda-forge in Conda