1{ lib
2, buildPythonPackage
3, cython
4, fetchFromGitHub
5, mpi4py
6, numpy
7, precice
8, pkgconfig
9, pythonOlder
10}:
11
12buildPythonPackage rec {
13 pname = "pyprecice";
14 version = "2.5.0.4";
15 format = "setuptools";
16
17 disabled = pythonOlder "3.7";
18
19 src = fetchFromGitHub {
20 owner = "precice";
21 repo = "python-bindings";
22 rev = "refs/tags/v${version}";
23 hash = "sha256-Nau4ytOSv5WOly/hbHO2M6Rgx1ileJrzfCfNJFnwVaw=";
24 };
25
26 nativeBuildInputs = [
27 cython
28 pkgconfig
29 ];
30
31 propagatedBuildInputs = [
32 numpy
33 mpi4py
34 precice
35 ];
36
37 # Disable Test because everything depends on open mpi which requires network
38 doCheck = false;
39
40 # Do not use pythonImportsCheck because this will also initialize mpi which requires a network interface
41
42 meta = with lib; {
43 description = "Python language bindings for preCICE";
44 homepage = "https://github.com/precice/python-bindings";
45 license = licenses.lgpl3Only;
46 maintainers = with maintainers; [ Scriptkiddi ];
47 };
48}