diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix index d44dc276c721..1c92eb811bbf 100644 --- a/maintainers/maintainer-list.nix +++ b/maintainers/maintainer-list.nix @@ -8588,6 +8588,12 @@ githubId = 7845120; name = "Alex Martens"; }; + nialov = { + email = "nikolasovaskainen@gmail.com"; + github = "nialov"; + githubId = 47318483; + name = "Nikolas Ovaskainen"; + }; nikitavoloboev = { email = "nikita.voloboev@gmail.com"; github = "nikitavoloboev"; diff --git a/pkgs/development/python-modules/pygeos/default.nix b/pkgs/development/python-modules/pygeos/default.nix new file mode 100644 index 000000000000..57970ad2f348 --- /dev/null +++ b/pkgs/development/python-modules/pygeos/default.nix @@ -0,0 +1,48 @@ +{ lib +, buildPythonPackage +, fetchPypi +, python +, geos +, pytestCheckHook +, cython +, numpy +}: + +buildPythonPackage rec { + pname = "pygeos"; + version = "0.12.0"; + + src = fetchPypi { + inherit pname version; + sha256 = "sha256-PEFULvZ8ZgFfRDrj5uaDUDqKIh+cJPsjgPauQq7RYAo="; + }; + + nativeBuildInputs = [ + geos # for geos-config + cython + ]; + + propagatedBuildInputs = [ numpy ]; + + # The cythonized extensions are required to exist in the pygeos/ directory + # for the package to function. Therefore override of buildPhase was + # necessary. + buildPhase = '' + ${python.interpreter} setup.py build_ext --inplace + ${python.interpreter} setup.py bdist_wheel + ''; + + checkInputs = [ + pytestCheckHook + ]; + + pythonImportsCheck = [ "pygeos" ]; + + meta = with lib; { + description = "Wraps GEOS geometry functions in numpy ufuncs."; + homepage = "https://github.com/pygeos/pygeos"; + license = licenses.bsd3; + maintainers = with maintainers; [ nialov ]; + }; +} + diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 55b0ad935869..183ea8574ce4 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -6829,6 +6829,8 @@ in { pygeoip = callPackage ../development/python-modules/pygeoip { }; + pygeos = callPackage ../development/python-modules/pygeos { }; + pygetwindow = callPackage ../development/python-modules/pygetwindow { }; pygit2 = callPackage ../development/python-modules/pygit2 { };