From 5238dd92d5832789af6feb5a3a7de3cf59bd434b Mon Sep 17 00:00:00 2001 From: Conroy Cheers Date: Fri, 13 Jun 2025 18:27:05 +1000 Subject: [PATCH] python312Packages.py-libnuma: init at 1.2 --- .../python-modules/py-libnuma/default.nix | 47 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 + 2 files changed, 49 insertions(+) create mode 100644 pkgs/development/python-modules/py-libnuma/default.nix diff --git a/pkgs/development/python-modules/py-libnuma/default.nix b/pkgs/development/python-modules/py-libnuma/default.nix new file mode 100644 index 000000000000..21e2d05547e0 --- /dev/null +++ b/pkgs/development/python-modules/py-libnuma/default.nix @@ -0,0 +1,47 @@ +{ + lib, + stdenv, + buildPythonPackage, + fetchFromGitHub, + pythonOlder, + setuptools, + numactl, +}: + +buildPythonPackage rec { + pname = "py-libnuma"; + version = "1.2"; + pyproject = true; + + src = fetchFromGitHub { + owner = "eedalong"; + repo = "pynuma"; + rev = "66cab0e008b850a04cfec5c4fb3f50bf28e3d488"; + hash = "sha256-ALYCcdN5eXrVWsTRwkHCwo4xsLMs/du3mUl1xSlo5iU="; + }; + + postPatch = '' + substituteInPlace numa/__init__.py \ + --replace-fail \ + 'LIBNUMA = CDLL(find_library("numa"))' \ + 'LIBNUMA = CDLL("${numactl}/lib/libnuma${stdenv.hostPlatform.extensions.sharedLibrary}")' + ''; + + build-system = [ setuptools ]; + + dependencies = [ + numactl + ]; + + # Tests write NUMA configuration, which may be persistent until reboot. + doCheck = false; + + pythonImportsCheck = [ "numa" ]; + + meta = { + description = "Python3 Interface to numa Linux library"; + homepage = "https://github.com/eedalong/pynuma"; + platforms = lib.platforms.linux; + license = lib.licenses.mit; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 4ee283b41fc4..a702e61d513d 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -11978,6 +11978,8 @@ self: super: with self; { py-improv-ble-client = callPackage ../development/python-modules/py-improv-ble-client { }; + py-libnuma = callPackage ../development/python-modules/py-libnuma { }; + py-libzfs = callPackage ../development/python-modules/py-libzfs { }; py-lru-cache = callPackage ../development/python-modules/py-lru-cache { };