diff options
Diffstat (limited to 'nixpkgs/pkgs/development/python-modules/pyeclib/default.nix')
-rw-r--r-- | nixpkgs/pkgs/development/python-modules/pyeclib/default.nix | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/development/python-modules/pyeclib/default.nix b/nixpkgs/pkgs/development/python-modules/pyeclib/default.nix new file mode 100644 index 000000000000..2c4169ea73ca --- /dev/null +++ b/nixpkgs/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; + }; +} |