1{ lib
2, buildPythonPackage
3, fetchPypi
4, substituteAll
5, pythonOlder
6, cudatoolkit
7, addOpenGLRunpath
8}:
9
10buildPythonPackage rec {
11 pname = "pynvml";
12 version = "11.5.0";
13 disabled = pythonOlder "3.6";
14
15 src = fetchPypi {
16 inherit pname version;
17 hash = "sha256-0CeyG5WxCIufwngRf59ht8Z/jjOnh+n4P3NfD3GsMtA=";
18 };
19
20 patches = [
21 (substituteAll {
22 src = ./0001-locate-libnvidia-ml.so.1-on-NixOS.patch;
23 inherit (addOpenGLRunpath) driverLink;
24 })
25 ];
26
27 propagatedBuildInputs = [ cudatoolkit ];
28
29 doCheck = false; # no tests in PyPi dist
30 pythonImportsCheck = [ "pynvml" "pynvml.smi" ];
31
32 meta = with lib; {
33 description = "Python bindings for the NVIDIA Management Library";
34 homepage = "https://www.nvidia.com";
35 license = licenses.bsd3;
36 maintainers = [ maintainers.bcdarwin ];
37 };
38}