From ddf2884eb65fb6c6cb630c8a7cbf70f3c176a664 Mon Sep 17 00:00:00 2001 From: Doron Behar Date: Tue, 23 Jun 2026 01:29:33 +0300 Subject: [PATCH 1/4] python3Packages.cyclebane: init at 24.10.0 --- .../python-modules/cyclebane/default.nix | 62 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 + 2 files changed, 64 insertions(+) create mode 100644 pkgs/development/python-modules/cyclebane/default.nix diff --git a/pkgs/development/python-modules/cyclebane/default.nix b/pkgs/development/python-modules/cyclebane/default.nix new file mode 100644 index 000000000000..89c70942dd27 --- /dev/null +++ b/pkgs/development/python-modules/cyclebane/default.nix @@ -0,0 +1,62 @@ +{ + lib, + buildPythonPackage, + fetchFromGitHub, + + # build-system + setuptools, + setuptools-scm, + + # dependencies + networkx, + + # tests + pytestCheckHook, + numpy, + pandas, + scipp, + xarray, +}: + +buildPythonPackage (finalAttrs: { + pname = "cyclebane"; + version = "24.10.0"; + pyproject = true; + __structuredAttrs = true; + + src = fetchFromGitHub { + owner = "scipp"; + repo = "cyclebane"; + tag = finalAttrs.version; + hash = "sha256-vD/Ajym37GdsJ7iMuhao1SgX+Pd7aapc3b2oujwcopk="; + }; + + build-system = [ + setuptools + setuptools-scm + ]; + + dependencies = [ + networkx + ]; + + pythonImportsCheck = [ + "cyclebane" + ]; + + nativeCheckInputs = [ + pytestCheckHook + numpy + pandas + scipp + xarray + ]; + + meta = { + description = "Transform directed acyclic graphs using map-reduce and groupby operations"; + homepage = "https://scipp.github.io/cyclebane/"; + changelog = "https://github.com/scipp/cyclebane/releases/tag/${finalAttrs.src.tag}"; + license = lib.licenses.bsd3; + maintainers = with lib.maintainers; [ doronbehar ]; + }; +}) diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index dc673c1173f9..8555929304d9 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -3506,6 +3506,8 @@ self: super: with self; { cybox = callPackage ../development/python-modules/cybox { }; + cyclebane = callPackage ../development/python-modules/cyclebane { }; + cycler = callPackage ../development/python-modules/cycler { }; cyclonedds-python = callPackage ../development/python-modules/cyclonedds-python { }; From ef2a7804a1ca56258f9f2917d4fb55857d20cbfd Mon Sep 17 00:00:00 2001 From: Doron Behar Date: Tue, 23 Jun 2026 01:27:16 +0300 Subject: [PATCH 2/4] python3Packages.sciline: init at 25.11.1 --- .../python-modules/sciline/default.nix | 70 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 + 2 files changed, 72 insertions(+) create mode 100644 pkgs/development/python-modules/sciline/default.nix diff --git a/pkgs/development/python-modules/sciline/default.nix b/pkgs/development/python-modules/sciline/default.nix new file mode 100644 index 000000000000..f9f58da4b938 --- /dev/null +++ b/pkgs/development/python-modules/sciline/default.nix @@ -0,0 +1,70 @@ +{ + lib, + buildPythonPackage, + fetchFromGitHub, + + # build-system + setuptools, + setuptools-scm, + + # dependencies + cyclebane, + + # tests + pytestCheckHook, + pytest-randomly, + rich, + dask, + graphviz, + jsonschema, + numpy, + pandas, + pydantic, +}: + +buildPythonPackage (finalAttrs: { + pname = "sciline"; + version = "25.11.1"; + pyproject = true; + __structuredAttrs = true; + + src = fetchFromGitHub { + owner = "scipp"; + repo = "sciline"; + tag = finalAttrs.version; + hash = "sha256-BTdvPAeI7SWV8gNfXVC63YKghZOfJ9eFousOqycpTAw="; + }; + + build-system = [ + setuptools + setuptools-scm + ]; + + dependencies = [ + cyclebane + ]; + + nativeCheckInputs = [ + pytestCheckHook + pytest-randomly + dask + graphviz + jsonschema + numpy + pandas + pydantic + rich + ]; + + pythonImportsCheck = [ + "sciline" + ]; + + meta = { + description = "Build scientific pipelines for your data"; + homepage = "https://scipp.github.io/sciline/"; + changelog = "https://github.com/scipp/sciline/releases/tag/${finalAttrs.src.tag}"; + license = lib.licenses.bsd3; + maintainers = with lib.maintainers; [ doronbehar ]; + }; +}) diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 8555929304d9..ba5605e313da 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -17768,6 +17768,8 @@ self: super: with self; { scikits-odes-sundials = callPackage ../development/python-modules/scikits-odes-sundials { }; + sciline = callPackage ../development/python-modules/sciline { }; + scim2-client = callPackage ../development/python-modules/scim2-client { }; scim2-filter-parser = callPackage ../development/python-modules/scim2-filter-parser { }; From 06c60b8e0e2147ce6c28236e080802ac1e3be1c7 Mon Sep 17 00:00:00 2001 From: Doron Behar Date: Tue, 23 Jun 2026 01:23:11 +0300 Subject: [PATCH 3/4] python3Packages.scippnexus: init at 26.1.1 --- .../python-modules/scippnexus/default.nix | 58 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 + 2 files changed, 60 insertions(+) create mode 100644 pkgs/development/python-modules/scippnexus/default.nix diff --git a/pkgs/development/python-modules/scippnexus/default.nix b/pkgs/development/python-modules/scippnexus/default.nix new file mode 100644 index 000000000000..449fd04b3490 --- /dev/null +++ b/pkgs/development/python-modules/scippnexus/default.nix @@ -0,0 +1,58 @@ +{ + lib, + buildPythonPackage, + fetchFromGitHub, + + # build-system + setuptools, + setuptools-scm, + + # dependencies + h5py, + scipp, + scipy, + + # tests + pytestCheckHook, +}: + +buildPythonPackage (finalAttrs: { + pname = "scippnexus"; + version = "26.1.1"; + pyproject = true; + __structuredAttrs = true; + + src = fetchFromGitHub { + owner = "scipp"; + repo = "scippnexus"; + tag = finalAttrs.version; + hash = "sha256-sff/LZFoNOcmoVeQkuHZNGPZS9RMV8QrXIlmJiFJCeI="; + }; + + build-system = [ + setuptools + setuptools-scm + ]; + + dependencies = [ + h5py + scipp + scipy + ]; + + nativeCheckInputs = [ + pytestCheckHook + ]; + + pythonImportsCheck = [ + "scippnexus" + ]; + + meta = { + description = "H5py-like utility for NeXus files with seamless scipp integration"; + homepage = "https://scipp.github.io/scippnexus/"; + changelog = "https://github.com/scipp/scippnexus/releases/tag/${finalAttrs.src.tag}"; + license = lib.licenses.bsd3; + maintainers = with lib.maintainers; [ doronbehar ]; + }; +}) diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index ba5605e313da..90272aca7ec7 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -17782,6 +17782,8 @@ self: super: with self; { scipp = callPackage ../development/python-modules/scipp { }; + scippnexus = callPackage ../development/python-modules/scippnexus { }; + scipy = callPackage ../development/python-modules/scipy { }; scipy-stubs = callPackage ../development/python-modules/scipy-stubs { }; From 3ef8e1eaa750a109911fa851a8a414be6eaa32cd Mon Sep 17 00:00:00 2001 From: Doron Behar Date: Tue, 23 Jun 2026 01:17:16 +0300 Subject: [PATCH 4/4] python3Packages.scippneutron: init at 26.6.0 --- .../python-modules/scippneutron/default.nix | 163 ++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 + 2 files changed, 165 insertions(+) create mode 100644 pkgs/development/python-modules/scippneutron/default.nix diff --git a/pkgs/development/python-modules/scippneutron/default.nix b/pkgs/development/python-modules/scippneutron/default.nix new file mode 100644 index 000000000000..67379dc882ad --- /dev/null +++ b/pkgs/development/python-modules/scippneutron/default.nix @@ -0,0 +1,163 @@ +{ + lib, + buildPythonPackage, + fetchFromGitHub, + + # build-system + setuptools, + setuptools-scm, + + # dependencies + email-validator, + h5py, + lazy-loader, + mpltoolbox, + numpy, + plopp, + pydantic, + python-dateutil, + scipp, + scippnexus, + scipy, + + # tests + pytestCheckHook, + pooch, + hypothesis, + ipykernel, + ipympl, + psutil, + pytest-xdist, + pythreejs, + sciline, + stdenvNoCC, + curl, + cacert, +}: + +buildPythonPackage (finalAttrs: { + pname = "scippneutron"; + version = "26.6.0"; + pyproject = true; + __structuredAttrs = true; + + src = fetchFromGitHub { + owner = "scipp"; + repo = "scippneutron"; + tag = finalAttrs.version; + hash = "sha256-ZhQVOUX2LcoLtAvAos7CWfVHKfqIWtIsXeYAPbUZTV0="; + }; + + build-system = [ + setuptools + setuptools-scm + ]; + + dependencies = [ + email-validator + h5py + lazy-loader + mpltoolbox + numpy + plopp + pydantic + python-dateutil + scipp + scippnexus + scipy + ]; + + nativeCheckInputs = [ + pytestCheckHook + hypothesis + ipykernel + ipympl + pooch + psutil + pytest-xdist + pythreejs + sciline + ]; + + env = { + # See: https://github.com/scipp/scippneutron/blob/26.6.0/src/scippneutron/data/__init__.py + SCIPPNEUTRON_DATA_DIR = + let + # NOTE this might be changed by upstream in the future. + _version = "5"; + in + stdenvNoCC.mkDerivation { + name = "plopp-test-data"; + dontUnpack = true; + strictDeps = true; + __structuredAttrs = true; + nativeBuildInputs = [ + curl + ]; + configurePhase = '' + curlVersion=$(curl -V | head -1 | cut -d' ' -f2) + curl=( + curl + --location + --max-redirs 20 + --retry 3 + --retry-all-errors + --continue-at - + --disable-epsv + --cookie-jar cookies + --user-agent "curl/$curlVersion Nixpkgs" + ) + export SSL_CERT_FILE="${cacert}/etc/ssl/certs/ca-bundle.crt" + mkdir -p $out/${_version} + ''; + buildPhase = + lib.pipe + [ + "iris26176_graphite002_sqw.nxs" + "loki-at-larmor.hdf5" + "loki-at-larmor-filtered.hdf5" + "powder-event.h5" + "powder-event-filtered.h5" + "mcstas_sans.h5" + "CNCS_51936_event.nxs" + "GEM40979.raw" + "PG3_4844_calibration.h5" + "PG3_4844_event.nxs" + "PG3_4866_event.nxs" + "PG3_4871_event.nxs" + "WISH00016748.raw" + "horace_sqw_4d.sqw" + "dream_geant4_data.h5" + ] + [ + (map ( + f: + "curl \"https://public.esss.dk/groups/scipp/scippneutron/${_version}/${f}\" --output \"$out/${_version}/${f}\"" + )) + (lib.concatStringsSep "\n") + ]; + dontInstall = true; + dontFixup = true; + outputHash = "sha256-UxFphegP2VdQ7zMssAf8FQbrQqOr4+qVjcIugxz0ZxA="; + outputHashMode = "recursive"; + }; + }; + + # See . From some reason + # the whole file has to be deleted, otherwise the tests are not disabled. + preCheck = '' + rm tests/masking_tool_test.py + ''; + + pythonImportsCheck = [ + "scippneutron" + ]; + + meta = { + description = "Neutron scattering toolkit built using scipp for Data Reduction. Not facility or instrument specific"; + homepage = "https://scipp.github.io/scippneutron"; + changelog = "https://github.com/scipp/scippneutron/releases/tag/${finalAttrs.src.tag}"; + license = lib.licenses.bsd3; + maintainers = with lib.maintainers; [ doronbehar ]; + }; +}) diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 90272aca7ec7..64991aab42d8 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -17782,6 +17782,8 @@ self: super: with self; { scipp = callPackage ../development/python-modules/scipp { }; + scippneutron = callPackage ../development/python-modules/scippneutron { }; + scippnexus = callPackage ../development/python-modules/scippnexus { }; scipy = callPackage ../development/python-modules/scipy { };