From ae4623b2961cef70dfc449b68e51d32a812908d6 Mon Sep 17 00:00:00 2001
From: Fabian Affolter <mail@fabian-affolter.ch>
Date: Tue, 28 Jun 2022 17:22:23 +0200
Subject: [PATCH] python310Packages.niapy: init at 2.0.2

---
 .../python-modules/niapy/default.nix          | 47 +++++++++++++++++++
 pkgs/top-level/python-packages.nix            |  2 +
 2 files changed, 49 insertions(+)
 create mode 100644 pkgs/development/python-modules/niapy/default.nix

diff --git a/pkgs/development/python-modules/niapy/default.nix b/pkgs/development/python-modules/niapy/default.nix
new file mode 100644
index 000000000000..b83091cc1dad
--- /dev/null
+++ b/pkgs/development/python-modules/niapy/default.nix
@@ -0,0 +1,47 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, matplotlib
+, numpy
+, openpyxl
+, pandas
+, pytestCheckHook
+, pythonOlder
+}:
+
+buildPythonPackage rec {
+  pname = "niapy";
+  version = "2.0.2";
+  format = "setuptools";
+
+  disabled = pythonOlder "3.7";
+
+  src = fetchFromGitHub {
+    owner = "NiaOrg";
+    repo = "NiaPy";
+    rev = version;
+    hash = "sha256-b/0TEO27fPuoPzkNBCwgUqBG+8htOR2ipFikpqjYdnM=";
+  };
+
+  propagatedBuildInputs = [
+    matplotlib
+    numpy
+    openpyxl
+    pandas
+  ];
+
+  checkInputs = [
+    pytestCheckHook
+  ];
+
+  pythonImportsCheck = [
+    "niapy"
+  ];
+
+  meta = with lib; {
+    description = "Micro framework for building nature-inspired algorithms";
+    homepage = "https://niapy.org/";
+    license = licenses.mit;
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix
index 1a652fa48d6d..fdf47d2490d1 100644
--- a/pkgs/top-level/python-packages.nix
+++ b/pkgs/top-level/python-packages.nix
@@ -5807,6 +5807,8 @@ in {
     enablePython = true; # ... and its Python bindings
   })).python;
 
+  niapy = callPackage ../development/python-modules/niapy { };
+
   nibabel = callPackage ../development/python-modules/nibabel { };
 
   nidaqmx = callPackage ../development/python-modules/nidaqmx { };