Packages in the E3SM Unified conda environment

Packages in the E3SM Unified conda environment

 

This page is a catalog of the packages and versions that make up each version of the E3SM-Unified metapackage.  E3SM-Unified is intended to create a single conda environment that includes all of E3SM's analysis and diagnostics software.

The metapackage is maintained by @Xylar Asay-Davis and @Andrew Nolan .

Using the metapackage on E3SM supported machines

Please see Diagnostics and Analysis Quickstart#Accessingmetapackagesoftwarebyactivatingacondaenvironment

Installing the metapackage

To install your own version of the metapackage (typically on a machine not supported by E3SM), install miniforge3, typically for Linux and x86_64, then run the following:

conda create -n e3sm-unified -c conda-forge -c e3sm e3sm-unified python=3.13

If you plan to use MPI from conda-forge, you will want to use the mpich or openmpi builds of e3sm-unified.  For example, for mpich:

conda create -n e3sm-unified-mpich -c conda-forge -c e3sm "e3sm-unified=*=mpi_mpich_*" python=3.13

This is only appropriate on Linux and OSX laptops and workstations, as the MPI packages from conda-forge do not work on HPC.

For MacOS M1 users: the MacOS x86 distribution of mambaforge works on M1 and M2 architectures. Apple maintains “Rosetta 2” for backwards compatibility. It should be seamless to the user, but there may be a pop-up asking to install Rosetta if it is not already installed. MacOS Conda installs work better with zsh (updated bash).

Tables of metapackage content

The list of packages installed as required by E3SM (and their pinned stable version) is below. Also listed is the person in charge of maintaining the pinned version.  Contents of previous versions are also listed below.

For previous versions see: https://e3sm.atlassian.net/wiki/spaces/DOC/pages/3236233332

Current Version

e3sm-unified 1.12.0

Release candidate testing start date: 

Oct 8, 2025 

Postponing release to accommodate numerous remaining zppy tasks and removal of CDAT from PCMDI

Release date:

Nov 25, 2025 

 

Main Packages

package

version

maintainer(s)

Notes

python

>=3.11,<3.14

@Xylar Asay-Davis

Default python version (used for supported machines) will be 3.13

R

no spec

@Sinha, Eva

 

cdo

 

no spec

@Jill Chengzhu Zhang

 

cime_gen_domain

6.1.59

@Xylar Asay-Davis

@Walter Hannah feels that this should be removed and replaced with the new python version `generate_domain_files_E3SM.py` that currently lives in the E3SM repo here:
E3SM/tools/generate_domain_files/generate_domain_files_E3SM.py at master · E3SM-Project/E3SM

@Xylar Asay-Davis: This can be removed since we will have generate_domain_files_E3SM.py in the next e3sm-tools package.

chemdyg

1.1.1

@Hsiang-He Lee @Qi Tang

 

e3sm_diags

3.1.0

@Jill Chengzhu Zhang

@Tom Vo

 

e3sm_to_cmip

1.13.0

@Anthony Bartoletti @Tom Vo @Jill Chengzhu Zhang

 

e3sm-tools

3.0.2

@Xylar Asay-Davis

A set of tools useful for E3SM:

  • cube_to_target, interpinic, mksurfdata_map

  • generate_domain_files_E3SM.py

  • mkatmsrffile.py

geometric_features

1.6.1

@Xylar Asay-Davis

 

globus-cli

>=3.15.0

@Ryan Forsyth

 

ilamb

2.7.2

@Jill Chengzhu Zhang

With system MPI on compute nodes

ipython

nospec

@Jill Chengzhu Zhang

 

jupyter

nospec

@Jill Chengzhu Zhang

 

livvkit

3.2.0

@Michael Kelleher

 

mache

2.0.0

@Xylar Asay-Davis

 

moab

5.6.0

@Vijay M

With system MPI on compute nodes

mosaic

1.2.1

@Andrew Nolan

 

mpas-analysis

1.14.0

@Xylar Asay-Davis

 

mpas_tools

1.4.0

@Xylar Asay-Davis

 

nco

5.3.6

@Charlie Zender

With system MPI on compute nodes

pcmdi_metrics

4.0.1

@Jill Chengzhu Zhang

We will need a new version that drops the dependency on CDAT

squadgen

1.2.2

@Xylar Asay-Davis

 

tempest-remap

2.2.0

@Xylar Asay-Davis

With system compilers on compute nodes

tempest-extremes

2.4

@Xylar Asay-Davis
@Jill Chengzhu Zhang

With system MPI on compute nodes

uxarray

>=2024.12.0

@Jill Chengzhu Zhang

 

xcdat

0.10.1

@Tom Vo

 

zstash

1.5.0

@Ryan Forsyth

 

zppy

3.1.0

@Ryan Forsyth

 

zppy-interfaces

0.2.0

@Ryan Forsyth

 

mkdoc dependencies

package

version

maintainer(s)

 

mkdocs-material

nospec

@Naser Mahfouz

 

pymdown-extensions

nospec

@Naser Mahfouz

 

mkdocs-monorepo-plugin

nospec

@Naser Mahfouz

 

mdutils

nospec

@Naser Mahfouz

 

mkdocs-bibtex

==2.18.0

@Naser Mahfouz

 

mkdocs-redirects

nospec

@Naser Mahfouz

 

markdownlint-cli2

nospec

@Naser Mahfouz

 

Dependencies

package

version

maintainer(s)

 

blas

nospec

@Xylar Asay-Davis

 

bottleneck

nospec

@Xylar Asay-Davis

 

cartopy

>=0.17.0

@Jill Chengzhu Zhang

 

cmocean

nospec

@Xylar Asay-Davis

 

dask

2025.9.1

@Xylar Asay-Davis 

 

dogpile.cache

nospec

@Chris Golaz

 

eofs

nospec

@Luke Van Roekel

 

esmf

8.9.0

@Xylar Asay-Davis

With system MPI on compute nodes

esmpy

8.9.0

@Xylar Asay-Davis

 

f90nml

nospec

@Xylar Asay-Davis

 

ffmpeg

nospec

@Xylar Asay-Davis @Luke Van Roekel

 

genutil

8.2.1

@Jill Chengzhu Zhang

 

globus-sdk

nospec

@Ryan Forsyth

 

gsw

nospec

@Xylar Asay-Davis

 

hdf5

1.14.6

@Jill Chengzhu Zhang

@Xylar Asay-Davis

 

ipygany

nospec

@Erika Roesler

 

libnetcdf

4.9.3

@Xylar Asay-Davis

 

lxml

nospec

@Xylar Asay-Davis

 

matplotlib

3.10.6

@Jill Chengzhu Zhang

@Xylar Asay-Davis

 

metpy

nospec

@Jim Benedict

 

mpi4py

nospec

@Xylar Asay-Davis

With system MPI on compute nodes

nb_conda

nospec

@Jill Chengzhu Zhang

 

ncview

2.1.8

@Jill Chengzhu Zhang

 

ncvis

2024.01.26

@Jill Chengzhu Zhang

 

nc-time-axis

nospec

@Naser Mahfouz

Nifty package to correctly plot the time axis with xarray

netCDF4

1.7.2 nompi

@Xylar Asay-Davis

 

notebook

nospec

@Xylar Asay-Davis

We want jupyter notebooks to work…

numpy

>=2.0.0

@Xylar Asay-Davis

 

output_viewer

1.3.3

@Jill Chengzhu Zhang

@Ryan Forsyth

 

pillow

nospec