Martin Weinelt ae4a1a485a
treewide: add explicit format attribute for Python packages
If a Python package does not come with either `format` or `pyproject` we
consider it a setuptools build, that calls `setup.py` directly, which is
deprecated.

This change, as a first step, migrates a large chunk of these packages to
set setuptools as their explicit format

This is so we can unify the problem space for the next step of the
migration.
2025-07-02 05:56:47 +02:00

49 lines
962 B
Nix

{
lib,
buildPythonPackage,
fetchPypi,
isPy3k,
numpy,
scipy,
matplotlib,
pytestCheckHook,
}:
buildPythonPackage rec {
pname = "nimfa";
version = "1.4.0";
format = "setuptools";
setuptools = true;
src = fetchPypi {
inherit pname version;
hash = "sha256-Oc/yuGhW0Dyoo9nDhZgDTs8adowyX9OnKLuerbjGuRk=";
};
dependencies = [
numpy
scipy
];
nativeCheckInputs = [
matplotlib
pytestCheckHook
];
postPatch = ''
substituteInPlace setup.py \
--replace-fail "import imp" "" \
--replace-fail "os.path.exists('.git')" "True" \
--replace-fail "GIT_REVISION = git_version()" "GIT_REVISION = 'v${version}'"
'';
doCheck = !isPy3k; # https://github.com/marinkaz/nimfa/issues/42
meta = {
description = "Nonnegative matrix factorization library";
homepage = "http://nimfa.biolab.si";
license = lib.licenses.bsd3;
maintainers = with lib.maintainers; [ ashgillman ];
};
}