From 3d0ab76d81f7ee46e873f33d4f55e0b278cec598 Mon Sep 17 00:00:00 2001 From: oddlama Date: Sat, 29 Jul 2023 13:28:30 +0200 Subject: [PATCH 1/3] mxnet: fix darwin build --- pkgs/applications/science/math/mxnet/default.nix | 1 - 1 file changed, 1 deletion(-) diff --git a/pkgs/applications/science/math/mxnet/default.nix b/pkgs/applications/science/math/mxnet/default.nix index 1e7af371c509..d65de87d8eb9 100644 --- a/pkgs/applications/science/math/mxnet/default.nix +++ b/pkgs/applications/science/math/mxnet/default.nix @@ -56,7 +56,6 @@ stdenv.mkDerivation rec { env.NIX_CFLAGS_COMPILE = toString [ # Needed with GCC 12 - "-Wno-error=maybe-uninitialized" "-Wno-error=uninitialized" ]; From 2e83201310d56b30f8dd23d5f1ad7c7bd96cf16c Mon Sep 17 00:00:00 2001 From: oddlama Date: Sat, 29 Jul 2023 13:28:48 +0200 Subject: [PATCH 2/3] python310Packages.mxnet: add numpy >=1.24 compatibility patch --- pkgs/development/python-modules/mxnet/default.nix | 3 +++ 1 file changed, 3 insertions(+) diff --git a/pkgs/development/python-modules/mxnet/default.nix b/pkgs/development/python-modules/mxnet/default.nix index a9e778bdd8c6..8b386a425a0e 100644 --- a/pkgs/development/python-modules/mxnet/default.nix +++ b/pkgs/development/python-modules/mxnet/default.nix @@ -20,6 +20,9 @@ buildPythonPackage { doCheck = !isPy3k; postPatch = '' + # Required to support numpy >=1.24 where np.bool is removed in favor of just bool + substituteInPlace python/mxnet/numpy/utils.py \ + --replace "bool = onp.bool" "bool = bool" substituteInPlace python/setup.py \ --replace "graphviz<0.9.0," "graphviz" ''; From 3f0083ba39df1f16a5f54c7fcfc26f2a10f02fe8 Mon Sep 17 00:00:00 2001 From: oddlama Date: Sat, 29 Jul 2023 13:28:59 +0200 Subject: [PATCH 3/3] python310Packages.insightface: init at 0.7.3 --- .../python-modules/insightface/default.nix | 77 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 + 2 files changed, 79 insertions(+) create mode 100644 pkgs/development/python-modules/insightface/default.nix diff --git a/pkgs/development/python-modules/insightface/default.nix b/pkgs/development/python-modules/insightface/default.nix new file mode 100644 index 000000000000..6d5c4a66239c --- /dev/null +++ b/pkgs/development/python-modules/insightface/default.nix @@ -0,0 +1,77 @@ +{ lib +, albumentations +, buildPythonPackage +, cython +, easydict +, fetchPypi +, insightface +, matplotlib +, mxnet +, numpy +, onnx +, onnxruntime +, opencv4 +, prettytable +, pythonOlder +, scikit-image +, scikit-learn +, tensorboard +, testers +, tqdm +}: + +buildPythonPackage rec { + pname = "insightface"; + version = "0.7.3"; + format = "setuptools"; + + disabled = pythonOlder "3.8"; + + src = fetchPypi { + inherit pname version; + hash = "sha256-8ZH3GWEuuzcBj0GTaBRQBUTND4bm/NZ2wCPzVMZo3fc="; + }; + + nativeBuildInputs = [ + cython + ]; + + propagatedBuildInputs = [ + easydict + matplotlib + mxnet + numpy + onnx + onnxruntime + opencv4 + scikit-learn + scikit-image + tensorboard + tqdm + albumentations + prettytable + ]; + + pythonImportsCheck = [ + "insightface" + "insightface.app" + "insightface.data" + ]; + + passthru.tests.version = testers.testVersion { + package = insightface; + command = "insightface-cli --help"; + # Doesn't support --version but we still want to make sure the cli is executable + # and returns the help output + version = "help"; + }; + + doCheck = false; # Upstream has no tests + + meta = with lib; { + description = "State-of-the-art 2D and 3D Face Analysis Project"; + homepage = "https://github.com/deepinsight/insightface"; + license = licenses.mit; + maintainers = with maintainers; [ oddlama ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 088b79d86c37..8a061f8e2b50 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -5111,6 +5111,8 @@ self: super: with self; { insegel = callPackage ../development/python-modules/insegel { }; + insightface = callPackage ../development/python-modules/insightface { }; + installer = callPackage ../development/python-modules/installer { }; insteon-frontend-home-assistant = callPackage ../development/python-modules/insteon-frontend-home-assistant { };