From 52ffcb6cd48558837534f583a54fd2398c65add1 Mon Sep 17 00:00:00 2001 From: Federico Beffa Date: Mon, 11 Nov 2024 15:06:10 +0100 Subject: [PATCH] python3Packages.rectangle-packer: init at 2.0.2 --- .../rectangle-packer/default.nix | 46 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 + 2 files changed, 48 insertions(+) create mode 100644 pkgs/development/python-modules/rectangle-packer/default.nix diff --git a/pkgs/development/python-modules/rectangle-packer/default.nix b/pkgs/development/python-modules/rectangle-packer/default.nix new file mode 100644 index 000000000000..53a58f1246b6 --- /dev/null +++ b/pkgs/development/python-modules/rectangle-packer/default.nix @@ -0,0 +1,46 @@ +{ + lib, + buildPythonPackage, + fetchFromGitHub, + setuptools, + cython, + pytestCheckHook, +}: + +buildPythonPackage rec { + pname = "rectangle-packer"; + version = "2.0.2"; + pyproject = true; + + src = fetchFromGitHub { + owner = "Penlect"; + repo = "rectangle-packer"; + rev = version; + hash = "sha256-YsMLB9jfAC5yB8TnlY9j6ybXM2ILireOgQ8m8wYo4ts="; + }; + + build-system = [ + cython + setuptools + ]; + + postPatch = '' + substituteInPlace setup.py \ + --replace-fail 'Cython<3.0.0' 'Cython' + ''; + + pythonImportsCheck = [ "rpack" ]; + + nativeCheckInputs = [ pytestCheckHook ]; + + preCheck = '' + rm -r rpack + ''; + + meta = with lib; { + description = "Pack a set of rectangles into a bounding box with minimum area"; + homepage = "https://github.com/Penlect/rectangle-packer"; + license = licenses.mit; + maintainers = with maintainers; [ fbeffa ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 82fa2848eb79..69a70fb37512 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -13914,6 +13914,8 @@ self: super: with self; { rectpack = callPackage ../development/python-modules/rectpack { }; + rectangle-packer = callPackage ../development/python-modules/rectangle-packer { }; + recurring-ical-events = callPackage ../development/python-modules/recurring-ical-events { }; recursive-pth-loader = toPythonModule (callPackage ../development/python-modules/recursive-pth-loader { });