1{ 2 lib, 3 stdenv, 4 buildPythonPackage, 5 fetchPypi, 6 python, 7 pypaInstallHook, 8 wheelUnpackHook, 9 grpcio, 10}: 11 12let 13 pythonVersionNoDot = builtins.replaceStrings [ "." ] [ "" ] python.pythonVersion; 14 systemToPlatform = { 15 "aarch64-linux" = "manylinux_2_17_aarch64.manylinux2014_aarch64"; 16 "x86_64-linux" = "manylinux_2_17_x86_64.manylinux2014_x86_64"; 17 "aarch64-darwin" = "macosx_11_0_universal2"; 18 "x86_64-darwin" = "macosx_11_0_universal2"; 19 }; 20 21 hashes = { 22 "39-x86_64-linux" = "sha256-uGbsxSHGfYVzRiy1YEkQMkJi2yPLdSj3fe3adp1WjP0="; 23 "310-x86_64-linux" = "sha256-1SO/1lpB3aRWisxFlt8K5lwFEOiDXjC4iQRai77L+8E="; 24 "311-x86_64-linux" = "sha256-99VdM1fAcuiblReWL5I8+H0psCKR00HYZr/wRGT7nd8="; 25 "312-x86_64-linux" = "sha256-bbggF4rGDrXOpSegreFHgK0H/z7xaR9hb7z6SYp7nlU="; 26 "313-x86_64-linux" = "sha256-M9/t7JgIjh7yiZeEq9K2tGQ4oLneVhXf0rUfL8p09Tg="; 27 "39-aarch64-linux" = "sha256-wuEncCbqWdqO72zovzHrmb34on73eaQgFBmQZdUnwkE="; 28 "310-aarch64-linux" = "sha256-uLHEEPcVakctNT428pNlaq0yKDpvMLynDP2lDobiebA="; 29 "311-aarch64-linux" = "sha256-d2A4mKP4Dlnm6J31wPyAHg8d5MjFF4wcREe5FVFeayU="; 30 "312-aarch64-linux" = "sha256-aW295fQogAjaVK6saHhduKsVsncIv4BsfRW6qHlyb3g="; 31 "313-aarch64-linux" = "sha256-mloW8TGkBJWXqO6xOqHhra3ZXuGQWf6dEGSrkdD0sb0="; 32 "39-darwin" = "sha256-uU9RGo5glYOPp8nEYqj4c1TB3Xa1KwrNWMqNDpJsSjY="; 33 "310-darwin" = "sha256-80U0geHKJLVhhmvHayXWHWaV9ifJjWtR9mbwCUDfPu0="; 34 "311-darwin" = "sha256-kM2YVzPa22QgIRV4zP4kcvTE8al/RW0Oo6lyxJl3JxU="; 35 "312-darwin" = "sha256-t4qbP5wqE8cgkvN+vG6zOeS+s5+U/GjmbeeHytIo9/o="; 36 "313-darwin" = "sha256-ds2kj87miODVUE8Lrjuzz8L+2HxaQ7jTxGQF0/Odrpg="; 37 }; 38in 39buildPythonPackage rec { 40 pname = "clarifai-protocol"; 41 version = "0.0.14"; 42 pyproject = false; 43 44 src = fetchPypi { 45 pname = "clarifai_protocol"; 46 inherit version; 47 format = "wheel"; 48 python = "cp${pythonVersionNoDot}"; 49 abi = "cp${pythonVersionNoDot}"; 50 dist = "cp${pythonVersionNoDot}"; 51 platform = systemToPlatform.${stdenv.hostPlatform.system} or (throw "unsupported system"); 52 hash = 53 if stdenv.hostPlatform.isDarwin then 54 hashes."${pythonVersionNoDot}-darwin" 55 else 56 hashes."${pythonVersionNoDot}-${stdenv.hostPlatform.system}" 57 or (throw "unsupported system/python version combination"); 58 }; 59 60 nativeBuildInputs = [ 61 pypaInstallHook 62 wheelUnpackHook 63 ]; 64 65 dependencies = [ grpcio ]; 66 67 # require clarifai and it causes a circular import 68 dontUsePythonImportsCheck = true; 69 70 # no tests 71 doCheck = false; 72 73 meta = { 74 description = "Clarifai Python Runner Protocol"; 75 homepage = "https://pypi.org/project/clarifai-protocol"; 76 license = lib.licenses.asl20; 77 sourceProvenance = [ lib.sourceTypes.binaryNativeCode ]; 78 maintainers = with lib.maintainers; [ natsukium ]; 79 }; 80}