# Install cdo with Homebrew, apt, MacPorts, Nix

Climate Data Operators. Version 2.6.3 via Homebrew; verified 2026-06-22. Also installable with debian: sudo apt install cdo.

## Install

```sh
sudo av install brew:cdo
```

Additional install commands:

### macOS

- Homebrew (100%):

```sh
brew install cdo
```

  Evidence: local Homebrew formula metadata

- MacPorts (94%):

```sh
sudo port install cdo
```

  Evidence: MacPorts ports tree: science/cdo/Portfile from https://api.github.com/repos/macports/macports-ports/git/trees/master?recursive=1

### Linux

- Debian apt (92%):

```sh
sudo apt install cdo
```

  Evidence: Debian stable package indexes: cdo from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz

- Nix (92%):

```sh
nix profile install nixpkgs#cdo
```

  Evidence: nixpkgs package indexes: pkgs/by-name/cd/cdo/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1

## Package facts

- **Package key:** brew:cdo
- **Package manager:** Homebrew
- **Version:** 2.6.3
- **Source summary:** Climate Data Operators
- **Homepage:** <https://code.mpimet.mpg.de/projects/cdo>
- **Last updated:** 2026-06-22T14:03:00-07:00
- **Generated:** 2026-08-03T19:37:03+00:00

## Executables

- cdo (alias)

## Install behavior

- Bottle: not available

## Freshness

- Page generated: 2026-08-03
- Package-manager version: 2.6.3
## Project history and usage

Climate Data Operators, or CDO, is a command-line suite for manipulating and analyzing climate and numerical weather prediction data in formats such as GRIB and NetCDF.

### Project history

The official contributors page says CDO was originally developed by Uwe Schulzweida at the Max Planck Institute for Meteorology, with the first public release available since 2003. It was inspired by earlier MPI-M and DKRZ climate-data tools, including PINGO and GRIB-Modules.

The project is now hosted under the mpim-sw group at DKRZ GitLab, with official documentation generated for CDO 2.6.3 and active releases noted on the MPI-M Redmine project page in June 2026.

### Adoption history

CDO became a standard command-line utility in climate and weather data workflows because it provides hundreds of operators over GRIB, NetCDF, SERVICE, EXTRA, and IEG data. Official docs emphasize fast processing, chaining multiple operators, and availability on Unix/Linux systems, Cygwin, and macOS.

Package-manager adoption is broad for a science CLI: Homebrew, Debian, Ubuntu, MacPorts, and Nix all package it according to the input facts, reflecting its role in reproducible climate-data pipelines.

### How it is used

Users run cdo commands to select, transform, remap, aggregate, and inspect climate model and forecast datasets. The docs highlight more than 700 operators, a simple Unix command-line interface, and support for large datasets with missing values.

### Why package nerds care

CDO is significant for package maintainers because it sits at the intersection of scientific file formats, HPC-style Unix workflows, and fast-moving climate data standards. Its packaging pulls in format libraries and exposes a stable CLI expected by scripts, notebooks, and institutional workflows.

### Timeline

- 1991: MPI-M GRIB-Modules developed, later influencing CDO's module structure.
- 1995: DKRZ develops PINGO, whose interface and operators influence CDO.
- 2003: First public CDO release available.
- 2026: Official project page lists CDO 2.6.x releases and generated 2.6.3 documentation.

### Related projects

- CDO is related to CDI, PINGO, GRIB-Modules, SCRIP, YAC, GRIB, NetCDF, and the climate-model postprocessing tools used around MPI-M and DKRZ.

### Sources

- <https://gitlab.dkrz.de/mpim-sw/cdo>
- <https://code.mpimet.mpg.de/projects/cdo>
- <https://code.mpimet.mpg.de/projects/cdo/embedded/cdo.pdf>
- <https://code.mpimet.mpg.de/projects/cdo/wiki/Cdo>
- <https://mpim-sw.gitlab-pages.dkrz.de/cdo>
- <https://formulae.brew.sh/api/formula/cdo.json>


## Security Notes

narrow executable package without higher-risk signals.

- **Geiger risk:** green / low
- narrow executable package without higher-risk signals

## Other Package-Manager Records

- Debian apt - cdo - 2.5.1-1: normalized package name match | Debian stable package indexes: cdo from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | Climate Data Operators | https://code.mpimet.mpg.de/projects/cdo
- Debian apt - libcdi-dev - 2.5.1-1: normalized package name match | Debian stable package indexes: libcdi-dev from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | Development files for the climate data interface library | https://code.mpimet.mpg.de/projects/cdo
- Debian apt - libcdi0 - 2.5.1-1: normalized package name match | Debian stable package indexes: libcdi0 from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | Climate Data Interface (cdi) library | https://code.mpimet.mpg.de/projects/cdo
- Nix - cdo: normalized package name match | nixpkgs package indexes: pkgs/by-name/cd/cdo/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1
- Ubuntu apt - cdo - 2.4.0-1build3: normalized package name match | Ubuntu 24.04 LTS package indexes: cdo from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz | Climate Data Operators | https://code.mpimet.mpg.de/projects/cdo
- Ubuntu apt - libcdi-dev - 2.4.0-1build3: normalized package name match | Ubuntu 24.04 LTS package indexes: libcdi-dev from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz | Development files for the climate data interface library | https://code.mpimet.mpg.de/projects/cdo
- Ubuntu apt - libcdi0 - 2.4.0-1build3: normalized package name match | Ubuntu 24.04 LTS package indexes: libcdi0 from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz | Climate Data Interface (cdi) library | https://code.mpimet.mpg.de/projects/cdo
- MacPorts - cdo: normalized package name match | MacPorts ports tree: science/cdo/Portfile from https://api.github.com/repos/macports/macports-ports/git/trees/master?recursive=1


## Combined YAML source

View the package source record on GitHub. [combined/cdo.yml](https://github.com/mxcl/pkgdb/blob/main/combined/cdo.yml)


## Sources

- pkg.so package database
- Geiger risk classifier
- curated package history
- pkgdb category and tag curation
- external package-manager database matches
- cross-ecosystem install command graph
