From 7bf5df751821ca5c44dcf3014dced97d35402c01 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sandro=20J=C3=A4ckel?= Date: Thu, 7 Oct 2021 16:53:30 +0200 Subject: [PATCH] python39Packages.pyeclib: init at 1.6.0 --- .../python-modules/pyeclib/default.nix | 35 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 ++ 2 files changed, 37 insertions(+) create mode 100644 pkgs/development/python-modules/pyeclib/default.nix diff --git a/pkgs/development/python-modules/pyeclib/default.nix b/pkgs/development/python-modules/pyeclib/default.nix new file mode 100644 index 000000000000..2c4169ea73ca --- /dev/null +++ b/pkgs/development/python-modules/pyeclib/default.nix @@ -0,0 +1,35 @@ +{ lib, buildPythonPackage, fetchPypi, liberasurecode, six }: + +buildPythonPackage rec { + pname = "pyeclib"; + version = "1.6.0"; + + src = fetchPypi { + inherit pname version; + sha256 = "sha256-gBHjHuia5/uZymkWZgyH4BCEZqmWK9SXowAQIJdOO7E="; + }; + + postPatch = '' + # patch dlopen call + substituteInPlace src/c/pyeclib_c/pyeclib_c.c \ + --replace "liberasurecode.so" "${liberasurecode}/lib/liberasurecode.so" + ''; + + preBuild = '' + # required for the custom find_library function in setup.py + export LD_LIBRARY_PATH="${lib.makeLibraryPath [ liberasurecode ]}" + ''; + + buildInputs = [ liberasurecode ]; + + checkInputs = [ six ]; + + pythonImportsCheck = [ "pyeclib" ]; + + meta = with lib; { + description = "This library provides a simple Python interface for implementing erasure codes."; + homepage = "https://github.com/openstack/pyeclib"; + license = licenses.bsd2; + maintainers = teams.openstack.members; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index d7da64784785..58b39b97d8b3 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -6194,6 +6194,8 @@ in { pyechonest = callPackage ../development/python-modules/pyechonest { }; + pyeclib = callPackage ../development/python-modules/pyeclib { }; + pyeconet = callPackage ../development/python-modules/pyeconet { }; pyedimax = callPackage ../development/python-modules/pyedimax { };