python312Packages.py-libnuma: init at 1.2

Changed files
+49
pkgs
development
python-modules
py-libnuma
top-level
+47
pkgs/development/python-modules/py-libnuma/default.nix
···
+
{
+
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;
+
};
+
}
+2
pkgs/top-level/python-packages.nix
···
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 { };