python312Packages.pyprecice: cleanup and fix

+26 -14
+26 -14
pkgs/development/python-modules/pyprecice/default.nix
··· 1 1 { 2 2 lib, 3 3 buildPythonPackage, 4 - setuptools, 5 - pip, 6 - cython, 7 4 fetchFromGitHub, 5 + 6 + # build-system 7 + cython, 8 + pip, 9 + pkgconfig, 10 + setuptools, 11 + 12 + # dependencies 8 13 mpi4py, 9 14 numpy, 10 15 precice, 11 - pkgconfig, 12 - pythonOlder, 13 16 }: 14 17 15 18 buildPythonPackage rec { 16 19 pname = "pyprecice"; 17 20 version = "3.1.2"; 18 21 pyproject = true; 19 - 20 - disabled = pythonOlder "3.7"; 21 22 22 23 src = fetchFromGitHub { 23 24 owner = "precice"; ··· 26 27 hash = "sha256-/atuMJVgvY4kgvrB+LuQZmJuSK4O8TJdguC7NCiRS2Y="; 27 28 }; 28 29 29 - nativeBuildInputs = [ 30 - setuptools 31 - pip 30 + postPatch = '' 31 + substituteInPlace pyproject.toml \ 32 + --replace-fail "setuptools>=61,<72" "setuptools" \ 33 + --replace-fail "numpy<2" "numpy" 34 + ''; 35 + 36 + build-system = [ 32 37 cython 38 + pip 33 39 pkgconfig 40 + setuptools 34 41 ]; 35 42 36 - propagatedBuildInputs = [ 43 + pythonRelaxDeps = [ 44 + "numpy" 45 + ]; 46 + 47 + dependencies = [ 37 48 numpy 38 49 mpi4py 39 50 precice ··· 44 55 45 56 # Do not use pythonImportsCheck because this will also initialize mpi which requires a network interface 46 57 47 - meta = with lib; { 58 + meta = { 48 59 description = "Python language bindings for preCICE"; 49 60 homepage = "https://github.com/precice/python-bindings"; 50 - license = licenses.lgpl3Only; 51 - maintainers = with maintainers; [ Scriptkiddi ]; 61 + changelog = "https://github.com/precice/python-bindings/blob/v${version}/CHANGELOG.md"; 62 + license = lib.licenses.lgpl3Only; 63 + maintainers = with lib.maintainers; [ Scriptkiddi ]; 52 64 }; 53 65 }