1{ lib 2, python 3, buildPythonPackage 4, autoPatchelfHook 5, unzip 6, cudaPackages 7}: 8 9let 10 pyVersion = "${lib.versions.major python.version}${lib.versions.minor python.version}"; 11in 12buildPythonPackage rec { 13 pname = "tensorrt"; 14 version = cudaPackages.tensorrt.version; 15 16 src = cudaPackages.tensorrt.src; 17 18 format = "wheel"; 19 # We unpack the wheel ourselves because of the odd packaging. 20 dontUseWheelUnpack = true; 21 22 nativeBuildInputs = [ 23 unzip 24 autoPatchelfHook 25 cudaPackages.autoAddOpenGLRunpathHook 26 ]; 27 28 preUnpack = '' 29 mkdir -p dist 30 tar --strip-components=2 -xf "$src" --directory=dist \ 31 "TensorRT-${version}/python/tensorrt-${version}-cp${pyVersion}-none-linux_x86_64.whl" 32 ''; 33 34 sourceRoot = "."; 35 36 buildInputs = [ 37 cudaPackages.cudnn 38 cudaPackages.tensorrt 39 ]; 40 41 pythonImportsCheck = [ 42 "tensorrt" 43 ]; 44 45 meta = with lib; { 46 description = "Python bindings for TensorRT, a high-performance deep learning interface"; 47 homepage = "https://developer.nvidia.com/tensorrt"; 48 license = licenses.unfree; 49 platforms = [ "x86_64-linux" ]; 50 maintainers = with maintainers; [ aidalgol ]; 51 }; 52}