From c1fe6a13f1dd59afff23c1e0c3d5725fc987a182 Mon Sep 17 00:00:00 2001 From: daspk04 Date: Mon, 15 Dec 2025 18:25:23 +0700 Subject: [PATCH] python3Packages.xclim: init at 0.59.1 --- .../python-modules/xclim/default.nix | 99 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 + 2 files changed, 101 insertions(+) create mode 100644 pkgs/development/python-modules/xclim/default.nix diff --git a/pkgs/development/python-modules/xclim/default.nix b/pkgs/development/python-modules/xclim/default.nix new file mode 100644 index 000000000000..aa6ba7aecd2e --- /dev/null +++ b/pkgs/development/python-modules/xclim/default.nix @@ -0,0 +1,99 @@ +{ + lib, + buildPythonPackage, + fetchFromGitHub, + + # build-system + flit, + setuptools, + + # dependencies + boltons, + bottleneck, + cf-xarray, + cftime, + click, + dask, + filelock, + jsonpickle, + numba, + packaging, + pandas, + pint, + platformdirs, + pooch, + pyarrow, + pyyaml, + scikit-learn, + scipy, + statsmodels, + xarray, + yamale, + + # test + versionCheckHook, +}: +buildPythonPackage rec { + pname = "xclim"; + version = "0.59.1"; + pyproject = true; + + src = fetchFromGitHub { + owner = "Ouranosinc"; + repo = "xclim"; + tag = "v${version}"; + hash = "sha256-n9HJoIHLyLWxrgCuDZDQ9dcW7frgEA/LoYqnTEBLqD8="; + }; + + build-system = [ + flit + setuptools + ]; + + dependencies = [ + boltons + bottleneck + cf-xarray + cftime + click + dask + filelock + jsonpickle + numba + packaging + pandas + pint + platformdirs + pooch + pyarrow + pyyaml + scikit-learn + scipy + statsmodels + xarray + yamale + ]; + + # No python test hooks has been added as all tests seems to be relying on network data + # https://github.com/Ouranosinc/xclim/blob/e8ce9bf37083832517afb3375acc853191782d8f/tests/conftest.py#L314 + nativeCheckInputs = [ + versionCheckHook + ]; + + versionCheckProgramArg = "--version"; + + pythonImportsCheck = [ + "xclim" + "xclim.ensembles" + "xclim.indices" + ]; + + meta = { + description = "Operational Python library supporting climate services, based on xarray"; + homepage = "https://github.com/Ouranosinc/xclim"; + changelog = "https://github.com/Ouranosinc/xclim/releases/tag/${src.tag}"; + license = lib.licenses.asl20; + maintainers = with lib.maintainers; [ daspk04 ]; + mainProgram = "xclim"; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 434a4fc41ee5..29e20f4349c2 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -20653,6 +20653,8 @@ self: super: with self; { xcffib = callPackage ../development/python-modules/xcffib { }; + xclim = callPackage ../development/python-modules/xclim { }; + xdg = callPackage ../development/python-modules/xdg { }; xdg-base-dirs = callPackage ../development/python-modules/xdg-base-dirs { };