Skip to content

Commit 6573f29

Browse files
committed
update installation to mamba
1 parent cfc87b2 commit 6573f29

File tree

1 file changed

+45
-47
lines changed

1 file changed

+45
-47
lines changed

_episodes/02-installation.md

Lines changed: 45 additions & 47 deletions
Original file line numberDiff line numberDiff line change
@@ -17,17 +17,17 @@ keypoints:
1717

1818
The instructions help with the installation of ESMValTool on operating systems
1919
like Linux/MacOSX/Windows.
20-
We use the [Conda](https://conda.io/projects/conda/en/latest/index.html)
20+
We use the [Mamba](https://mamba.readthedocs.io/en/latest/index.html)
2121
package manager to
2222
install the ESMValTool. Other installation methods are also available; they can
2323
be found in the
2424
[documentation](https://docs.esmvaltool.org/en/latest/quickstart/installation.html).
25-
We will first install Conda, and then ESMValTool. We end this chapter by testing
25+
We will first install Mamba, and then ESMValTool. We end this chapter by testing
2626
that the installation was successful.
2727

2828
Before we begin, here are all the possible ways in which you can use ESMValTool
29-
depending on your level of expertise or involvement with ESMvalTool and
30-
associated software such as GitHub and Conda.
29+
depending on your level of expertise or involvement with ESMValTool and
30+
associated software such as GitHub and Mamba.
3131

3232
1. If you have access to a server where ESMValTool is already installed
3333
as a module, for e.g., the [CEDA JASMIN](https://help.jasmin.ac.uk/article/4955-community-software-esmvaltool)
@@ -57,59 +57,47 @@ in the [documentation](https://docs.esmvaltool.org/en/latest/quickstart/installa
5757

5858
## Install ESMValTool on Linux/MacOSX
5959

60-
### Install Conda
60+
### Install Mamba
6161

62-
ESMValTool is distributed using [Conda](https://conda.io/).
63-
Let's check if we already have Conda installed by running:
62+
ESMValTool is distributed using [Mamba](https://mamba.readthedocs.io/en/latest/index.html)
63+
To install mamba on ``Linux`` or ``MacOSX``, follow the instructions below:
6464

65-
```bash
66-
conda list
67-
```
68-
69-
If conda is installed, we will see a list of packages.
70-
We recommend updating conda before esmvaltool installation. To do so, run:
71-
72-
```bash
73-
conda update -n base conda
74-
```
75-
76-
If conda is **not** installed, we can use Miniconda minimal installer for conda.
77-
We recommend a Python 3 based installer. For more information about installing conda,
78-
see [the conda installation documentation](https://docs.conda.io/projects/conda/en/latest/user-guide/install/index.html).
79-
80-
To install conda on ``Linux`` or ``MacOSX``, follow the instructions below:
81-
82-
1. Please download Miniconda3 at [the miniconda
83-
page](https://docs.conda.io/en/latest/miniconda.html).
84-
If you have problems with the 64 bit version in the next step(s)
85-
you can alternatively try a 32 bit version.
65+
1. Please download the installation file for the latest Mamba version [here](https://github.com/conda-forge/miniforge#mambaforge).
8666

8767
2. Next, run the installer from the place where you downloaded it:
8868

8969
On ``Linux``:
9070

9171
```bash
92-
bash Miniconda3-latest-Linux-x86_64.sh
72+
bash Mambaforge-Linux-x86_64.sh
9373
```
9474

9575
On ``MacOSX``:
9676

9777
```bash
98-
bash Miniconda3-latest-MacOSX-x86_64.sh
78+
bash Mambaforge-MacOSX-x86_64.sh
9979
```
10080

10181
3. Follow the instructions in the installer. The defaults should normally
10282
suffice.
10383

10484
4. You will need to restart your terminal for the changes to have effect.
10585

106-
5. Verify you have a working conda installation by listing all installed
107-
packages
86+
5. We recommend updating mamba before the esmvaltool installation. To do so, run:
87+
88+
```bash
89+
mamba update --name base mamba
90+
```
91+
92+
6. Verify you have a working mamba installation by:
10893

10994
```bash
110-
conda list
95+
which mamba
11196
```
11297

98+
For more information about installing mamba,
99+
see [the mamba installation documentation](https://docs.esmvaltool.org/en/latest/quickstart/installation.html#mamba-installation).
100+
113101
### Install Julia
114102

115103
Some ESMValTool diagnostics are written in the Julia programming language.
@@ -196,19 +184,32 @@ available:
196184
- `esmvaltool-python`
197185
- `esmvaltool-ncl`
198186
- `esmvaltool-r`
199-
- `esmvaltool-julia`
200187
- `esmvaltool` --> the complete package, i.e. the combination of the above.
201188
202-
For the tutorial, we will use only Python diagnostics. Thus, to install the
203-
ESMValTool-python package, run
189+
For the tutorial, we will install the complete package. Thus, to install the
190+
ESMValTool package, run
191+
192+
```bash
193+
mamba create --name esmvaltool 'python=3.9'
194+
```
195+
196+
Next, we install many of the required dependencies, including the ESMValCore package
197+
and Python, R, and NCL interpreters, into this environment by running:
198+
199+
```bash
200+
mamba env update --name esmvaltool --file environment.yml
201+
```
202+
203+
On MacOSX ESMValTool functionalities in Julia, NCL, and R are not supported. To install
204+
a Mamba environment on MacOSX, use the dedicated environment file:
204205
205206
```bash
206-
conda create -n esmvaltool -c conda-forge -c esmvalgroup esmvaltool-python
207+
mamba env create --name esmvaltool --file environment_osx.yml
207208
```
208209
209-
This will create a new [Conda
210+
This will create a new [Mamba
210211
environment](https://docs.conda.io/projects/conda/en/latest/user-guide/tasks/manage-environments.html)
211-
called `esmvaltool`, with the ESMValTool-Python package and all of its dependencies
212+
called `esmvaltool`, with the ESMValTool package and all of its dependencies
212213
installed in it.
213214
214215
@@ -221,19 +222,16 @@ installed in it.
221222
> the moment, please try again later or [raise an
222223
> issue](https://github.com/ESMValGroup/ESMValTool/issues/new/choose)
223224
> - If `Solving environment` takes more than 10 minutes, you may need to update
224-
> conda: `conda update -n base conda`
225-
> - You can help conda solve the environment by specifying
225+
> mamba: `mamba update -n base mamba`
226+
> - You can help mamba solve the environment by specifying
226227
> the python version:
227228
> ```bash
228-
> conda create -n esmvaltool -c conda-forge -c esmvalgroup esmvaltool-python python=3.8
229+
> mamba create -n esmvaltool esmvaltool python=3.8
229230
> ```
230231
> - Note that on ``MacOSX``, ``esmvaltool-python`` and
231232
> ``esmvaltool-ncl`` only work with Python 3.7. Use `python=3.7` instead of `python=3.8`.
232-
> - If you have an old conda installation you could get a `UnsatisfiableError`
233-
> message. Please install a newer version of conda and try again
234-
> - Downloads fail due to company proxy, see [conda
235-
> docs](https://docs.anaconda.com/anaconda/user-guide/tasks/proxy/) how to
236-
> resolve.
233+
> - If you have an old mamba installation you could get a `UnsatisfiableError`
234+
> message. Please install a newer version of mamba and try again
237235
>
238236
{: .callout}
239237

0 commit comments

Comments
 (0)