Smarty77
Smarty77

Reputation: 1358

Cloning environment with micromamba

It seems micromamba is missing a clone environment option, or is it just named differently?

If mamba is missing clone option, what is the reason for that?

Upvotes: 9

Views: 11903

Answers (2)

Hind Sagar Biswas
Hind Sagar Biswas

Reputation: 600

Yeah, It does not have a cloning option yet

Minor Update

the command to create the environment failed with micromamba version 1.4.9, use the --file flag,

micromamba env create --name newenv --file oldenv.yaml

-- comment by gkaf

It's simply because it is designed as a lightweight, fast, and minimal version of mamba. The clone environment is a relatively complex feature, and it was not considered to be essential for the core functionality of micromamba.

Solution

There is a roundabout way though. As per what I know, you can export the current env as yaml and run micromamba env create to create a env from the yaml file.

Export the contents of the existing environment to a YAML file.

micromamba env export -n oldenv > oldenv.yaml

Create a new environment from the YAML file.

micromamba env create -n newenv -f oldenv.yaml

This should work, notify if it doesn't.

Upvotes: 14

Hugh Liu
Hugh Liu

Reputation: 31

Same as Hind Sagar Biswas, micromamba does not provide env clone option yet.

To be honest, I think the simplest method is just copy the entire env folder under envs, like cp -r ~/micromamba/envs/$OLD ~/micromamba/envs/$NEW. After copying, you can see the new env from micromamba env list.

I've tried this approach, and although it seems intuitive and doesn't make sense, it's worked fine so far.

(After understanding how conda organizes files, maybe I can figure out why this works.)


Supplement:

Nowadays(Jun, 2024), I think that it is just a simple way to backup current env instead a good clone approach. Run head -n 1 $(which pip3), and you will know how your binary tools downloaded by pip to locate current env.

Upvotes: 2

Related Questions