From f3c02f27d2bfbd4f44bfe7095159add5333f5b83 Mon Sep 17 00:00:00 2001 From: Gaetan Lepage Date: Thu, 28 May 2026 12:41:17 +0000 Subject: [PATCH] python3Packages.aistore: init at 1.25.0 --- .../python-modules/aistore/default.nix | 111 ++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 + 2 files changed, 113 insertions(+) create mode 100644 pkgs/development/python-modules/aistore/default.nix diff --git a/pkgs/development/python-modules/aistore/default.nix b/pkgs/development/python-modules/aistore/default.nix new file mode 100644 index 000000000000..206a1b725451 --- /dev/null +++ b/pkgs/development/python-modules/aistore/default.nix @@ -0,0 +1,111 @@ +{ + lib, + buildPythonPackage, + fetchPypi, + + # build-system + hatchling, + + # dependencies + braceexpand, + cloudpickle, + humanize, + msgspec, + overrides, + packaging, + pydantic, + python-dateutil, + pyyaml, + requests, + tenacity, + urllib3, + xxhash, + + # optional-dependencies + # botocore: + wrapt, + # etl: + aiofiles, + fastapi, + flask, + gunicorn, + httpx, + uvicorn, + # mcp: + mcp, + # pytorch: + alive-progress, + torch, + torchdata, + webdataset, +}: + +buildPythonPackage (finalAttrs: { + pname = "aistore"; + version = "1.25.0"; + pyproject = true; + __structuredAttrs = true; + + # Tags on GitHub do not match + src = fetchPypi { + inherit (finalAttrs) pname version; + hash = "sha256-aslNCRSV7QKgvvDuUQPgcbUyUDdGP2kC4ryFu6IVYYE="; + }; + + build-system = [ + hatchling + ]; + + dependencies = [ + braceexpand + cloudpickle + humanize + msgspec + overrides + packaging + pydantic + python-dateutil + pyyaml + requests + tenacity + urllib3 + xxhash + ]; + + optional-dependencies = { + botocore = [ + wrapt + ]; + etl = [ + aiofiles + fastapi + flask + gunicorn + httpx + uvicorn + ]; + mcp = [ + mcp + ]; + pytorch = [ + alive-progress + torch + torchdata + webdataset + ]; + }; + + pythonImportsCheck = [ "aistore" ]; + + # No tests in the Pypi archive + doCheck = false; + + meta = { + description = "Client-side APIs to access and utilize clusters, buckets, and objects on AIStore"; + homepage = "https://aistore.nvidia.com"; + downloadPage = "https://github.com/NVIDIA/aistore/tree/main/python/aistore/sdk"; + changelog = "https://github.com/NVIDIA/aistore/blob/main/python/CHANGELOG.md"; + license = lib.licenses.mit; + maintainers = with lib.maintainers; [ GaetanLepage ]; + }; +}) diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index cbf531436b00..9cbd730c2751 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -618,6 +618,8 @@ self: super: with self; { airtouch5py = callPackage ../development/python-modules/airtouch5py { }; + aistore = callPackage ../development/python-modules/aistore { }; + aistudio-sdk = callPackage ../development/python-modules/aistudio-sdk { }; ajpy = callPackage ../development/python-modules/ajpy { };