From b1775fcbbb84c3ffb6e78bf53d30a1714f3c72a1 Mon Sep 17 00:00:00 2001 From: malteneuss Date: Sun, 12 Apr 2026 23:42:07 +0200 Subject: [PATCH 1/3] python3Packages.datasets_3: init at 3.6.0 Add an older version necessary for open-webui local transformers text-to-speech (TTS) --- .../development/python-modules/datasets/3.nix | 85 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 + 2 files changed, 87 insertions(+) create mode 100644 pkgs/development/python-modules/datasets/3.nix diff --git a/pkgs/development/python-modules/datasets/3.nix b/pkgs/development/python-modules/datasets/3.nix new file mode 100644 index 000000000000..c8afbe89da5f --- /dev/null +++ b/pkgs/development/python-modules/datasets/3.nix @@ -0,0 +1,85 @@ +{ + lib, + buildPythonPackage, + fetchFromGitHub, + # build-system + setuptools, + + # dependencies + dill, + filelock, + fsspec, + httpx, + huggingface-hub, + multiprocess, + numpy, + pandas, + pyarrow, + pyyaml, + requests, + tqdm, + xxhash, +}: +buildPythonPackage (finalAttrs: { + pname = "datasets"; + version = "3.6.0"; + pyproject = true; + + src = fetchFromGitHub { + owner = "huggingface"; + repo = "datasets"; + tag = finalAttrs.version; + hash = "sha256-/xhu0cDKfCEwrp9IzKd0+AeQky1198f9sba/pdutvAk="; + }; + + build-system = [ + setuptools + ]; + + dependencies = [ + dill + filelock + fsspec + httpx + huggingface-hub + multiprocess + numpy + pandas + pyarrow + pyyaml + requests + tqdm + xxhash + ] + ++ fsspec.optional-dependencies.http; + + pythonRelaxDeps = [ + # https://github.com/huggingface/datasets/blob/a256b85cbc67aa3f0e75d32d6586afc507cf535b/setup.py#L117 + # "pin until dill has official support for determinism" + "dill" + # https://github.com/huggingface/datasets/blob/4.5.0/setup.py#L127 + "multiprocess" + # https://github.com/huggingface/datasets/blob/4.5.0/setup.py#L130 + "fsspec" + ]; + + # Tests require pervasive internet access + doCheck = false; + + # Module import will attempt to create a cache directory + postFixup = "export HF_MODULES_CACHE=$TMPDIR"; + + pythonImportsCheck = [ "datasets" ]; + + meta = { + description = "Open-access datasets and evaluation metrics for natural language processing"; + mainProgram = "datasets-cli"; + homepage = "https://github.com/huggingface/datasets"; + changelog = "https://github.com/huggingface/datasets/releases/tag/${finalAttrs.src.tag}"; + license = lib.licenses.asl20; + maintainers = with lib.maintainers; [ + osbm + malteneuss + ]; + }; +}) diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 91208e3b4e53..05e3a4e23216 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -3624,6 +3624,8 @@ self: super: with self; { datasets = callPackage ../development/python-modules/datasets { }; + datasets_3 = callPackage ../development/python-modules/datasets/3.nix { }; + datasette = callPackage ../development/python-modules/datasette { }; datasette-publish-fly = callPackage ../development/python-modules/datasette-publish-fly { }; From 95f01459d93ffb64e79cc9658aa82dadc08330b3 Mon Sep 17 00:00:00 2001 From: Malte Neuss Date: Mon, 13 Apr 2026 22:40:30 +0200 Subject: [PATCH 2/3] python3Packages.datasets: Use finalAttrs instead of rec --- pkgs/development/python-modules/datasets/default.nix | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/pkgs/development/python-modules/datasets/default.nix b/pkgs/development/python-modules/datasets/default.nix index 9d40ebea0107..c6e3c172f8a5 100644 --- a/pkgs/development/python-modules/datasets/default.nix +++ b/pkgs/development/python-modules/datasets/default.nix @@ -20,7 +20,7 @@ tqdm, xxhash, }: -buildPythonPackage rec { +buildPythonPackage (finalAttrs: { pname = "datasets"; version = "4.5.0"; pyproject = true; @@ -28,7 +28,7 @@ buildPythonPackage rec { src = fetchFromGitHub { owner = "huggingface"; repo = "datasets"; - tag = version; + tag = finalAttrs.version; hash = "sha256-K8JqIbYz3ZfT1t1h5dRGCo9kBQp0E+kElqzaw2InaOI="; }; @@ -75,8 +75,8 @@ buildPythonPackage rec { description = "Open-access datasets and evaluation metrics for natural language processing"; mainProgram = "datasets-cli"; homepage = "https://github.com/huggingface/datasets"; - changelog = "https://github.com/huggingface/datasets/releases/tag/${src.tag}"; + changelog = "https://github.com/huggingface/datasets/releases/tag/${finalAttrs.src.tag}"; license = lib.licenses.asl20; maintainers = with lib.maintainers; [ osbm ]; }; -} +}) From b13c4240604d351efa6e0e779ba4518b5e1a3776 Mon Sep 17 00:00:00 2001 From: Malte Neuss Date: Tue, 14 Apr 2026 21:43:35 +0200 Subject: [PATCH 3/3] open-webui: Add datasets_3 dependency local transformers text-to-speech (TTS --- pkgs/by-name/op/open-webui/package.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/pkgs/by-name/op/open-webui/package.nix b/pkgs/by-name/op/open-webui/package.nix index a991041d96ed..1988207236b8 100644 --- a/pkgs/by-name/op/open-webui/package.nix +++ b/pkgs/by-name/op/open-webui/package.nix @@ -110,6 +110,7 @@ python3Packages.buildPythonApplication (finalAttrs: { chardet chromadb cryptography + datasets_3 ddgs docx2txt einops