Trouble installing cylc-8.1.0?

Has anyone run into an issue where installing cylc-flow via conda-forge hangs? I’ve run into this issue on a couple of machines now, where I get the following:

(cylc810) [bcash@cola1 ~]$ conda install -c conda-forge cylc-flow
Collecting package metadata (current_repodata.json): done
Solving environment: failed with initial frozen solve. Retrying with flexible solve.
Solving environment: failed with repodata from current_repodata.json, will retry with next repodata source.
Collecting package metadata (repodata.json): done
Solving environment: /

… and then it just stays in Solving environment until the conda process runs out of memory and/or is killed. Another member of our group tried installing as well, all into new clean environments, without success.

Hi @bencash,

Yes, unfortunately the conda environment solver seems to be really (and increasingly?) slow.

I just tried it myself and quit after waiting 30 mins.

You should use the new fast solver mamba:

$ conda create -n cylc8
$ conda activate cylc8
$ conda install -c conda-forge mamba
$ time mamba install -c conda-forge cylc-flow cylc-uiserver
real    0m50.282s
user    0m17.975s
sys     0m2.604s

$ cylc version

That took 50 seconds including solve, download, and install :tada:

I’ll suggest to the team that we update our installation instructions to include this advice.



I faced the same issue: from /var/log/messages

Jan 27 12:05:37 cylc8dr kernel: Out of memory: Kill process 8340 (conda) score 827 or sacrifice child
Jan 27 12:05:37 cylc8dr kernel: Killed process 8340 (conda), UID 0, total-vm:10735864kB, anon-rss:7044044kB, file-rss:0kB, shmem-rss:0kB

Installing and using Mamba does the trick but installing Mamba required conda-forge be specified as below:

[root@cylc8dr ~]# conda install mamba
Collecting package metadata: done
Solving environment: failed

PackagesNotFoundError: The following packages are not available from current channels:

  • mamba

Current channels:

  • main/linux-64
  • /pkgs/main/noarch
  • /pkgs/free/linux-64
  • /pkgs/free/noarch
  • /pkgs/r/linux-64
  • /pkgs/r/noarch

(removed https to avoid detection as links)

To search for alternate channels that may provide the conda package you’re
looking for, navigate to

and use the search bar at the top of the page.

[root@cylc8dr ~]# conda install -c conda-forge mamba
Collecting package metadata: done
Solving environment: done

Rest of the steps are same.

Thanks very much for that @kumarv !

You’re right. I’ll go back and correct the original post, to avoid confusing feature readers.

Hello - This approach has stopped working for us:

(clean_test) login3.frontera(1017)$ mamba install -c conda-forge cylc-flow cylc-uiserver

                  __    __    __    __
                 /  \  /  \  /  \  /  \
                /    \/    \/    \/    \
              /  / \   / \   / \   / \  \____
             /  /   \_/   \_/   \_/   \    o \__,
            / _/                       \_____/  `

        mamba (1.3.0) supported by @QuantStack


Looking for: ['cylc-flow', 'cylc-uiserver']

conda-forge/linux-64                                        Using cache
conda-forge/noarch                                          Using cache
pkgs/r/noarch                                                 No change
pkgs/r/linux-64                                               No change
pkgs/main/noarch                                   818.9kB @   2.2MB/s  0.4s
pkgs/main/linux-64                                   5.2MB @   4.0MB/s  1.4s

Pinned packages:
  - python 3.11.*

Could not solve for environment specs
Encountered problems while solving:
  - package cylc-flow-8.1.0-pyhb6b8b6f_0 requires cylc-flow-base 8.1.0 pyhd8ed1ab_0, but none of the providers can be installed

The environment can't be solved, aborting the operation

This :point_up: is the problem. Off the top of my head, Cylc currently requires Python 3.7 to 3.9 (or possibly 3.10?).

I hit this myself the other day. I think it was to do with installing mamba first, without specifying the Python version. A “pinned” package means conda (and mamba) can’t change the version when solving the environment.

But you can force it, something like this:

$ mamba install python==3.9   # downgrade Python
$ mamba install cylc-flow cylc-uiserver  # should now work

(Sorry for the pain!)

Yep, this is it. We just got this to work on our group call by forcing 3.9 - I was on my way here to say we had fixed it when I saw this. :slight_smile:

1 Like

BTW, @oliver.sanders has informed me that the mamba library can be used directly from conda now, rather than as a separate application:


cylc-flow 8.1 does support up to Python 3.10, however if you are using cylc-uiserver 1.2 for the web GUI, that only supports up to Python 3.9