57 lines
1.4 KiB
Nix
57 lines
1.4 KiB
Nix
|
|
{
|
||
|
|
lib,
|
||
|
|
stdenv,
|
||
|
|
fetchurl,
|
||
|
|
curl,
|
||
|
|
hdf5,
|
||
|
|
netcdf,
|
||
|
|
eccodes,
|
||
|
|
python3,
|
||
|
|
# build, install and link to a CDI library [default=no]
|
||
|
|
enable_cdi_lib ? false,
|
||
|
|
# build a completely statically linked CDO binary
|
||
|
|
enable_all_static ? stdenv.hostPlatform.isStatic,
|
||
|
|
# Use CXX as default compiler [default=no]
|
||
|
|
enable_cxx ? false,
|
||
|
|
}:
|
||
|
|
|
||
|
|
stdenv.mkDerivation (finalAttrs: {
|
||
|
|
pname = "cdo";
|
||
|
|
version = "2.5.1";
|
||
|
|
|
||
|
|
src = fetchurl {
|
||
|
|
url = "https://code.mpimet.mpg.de/attachments/download/29864/cdo-${finalAttrs.version}.tar.gz";
|
||
|
|
hash = "sha256-QYv5HoZMv+VHw8jhUNMUGc+nFefTRVCMVZGxq9pUV9E=";
|
||
|
|
};
|
||
|
|
|
||
|
|
# Dependencies
|
||
|
|
buildInputs = [
|
||
|
|
curl
|
||
|
|
netcdf
|
||
|
|
hdf5
|
||
|
|
python3
|
||
|
|
];
|
||
|
|
|
||
|
|
configureFlags = [
|
||
|
|
"--with-netcdf=${netcdf}"
|
||
|
|
"--with-hdf5=${hdf5}"
|
||
|
|
"--with-eccodes=${eccodes}"
|
||
|
|
]
|
||
|
|
++ lib.optional enable_cdi_lib "--enable-cdi-lib"
|
||
|
|
++ lib.optional enable_all_static "--enable-all-static"
|
||
|
|
++ lib.optional enable_cxx "--enable-cxx";
|
||
|
|
|
||
|
|
meta = {
|
||
|
|
description = "Collection of command line Operators to manipulate and analyse Climate and NWP model Data";
|
||
|
|
mainProgram = "cdo";
|
||
|
|
longDescription = ''
|
||
|
|
Supported data formats are GRIB 1/2, netCDF 3/4, SERVICE, EXTRA and IEG.
|
||
|
|
There are more than 600 operators available.
|
||
|
|
'';
|
||
|
|
homepage = "https://code.mpimet.mpg.de/projects/cdo/";
|
||
|
|
license = lib.licenses.bsd3;
|
||
|
|
maintainers = [ lib.maintainers.ltavard ];
|
||
|
|
platforms = with lib.platforms; linux ++ darwin;
|
||
|
|
};
|
||
|
|
})
|