1{ 2 lib, 3 buildPythonPackage, 4 fetchFromGitHub, 5 cffi, 6 packaging, 7 pytestCheckHook, 8 pytest-mock, 9 pythonOlder, 10 R, 11 rPackages, 12 setuptools, 13 setuptools-scm, 14 six, 15}: 16 17buildPythonPackage rec { 18 pname = "rchitect"; 19 version = "0.4.7"; 20 pyproject = true; 21 22 disabled = pythonOlder "3.9"; 23 24 src = fetchFromGitHub { 25 owner = "randy3k"; 26 repo = pname; 27 tag = "v${version}"; 28 hash = "sha256-M7OWDo3mEEOYtjIpzPIpzPMBtv2TZJKJkSfHczZYS8Y="; 29 }; 30 31 postPatch = '' 32 substituteInPlace setup.py \ 33 --replace '"pytest-runner"' "" 34 ''; 35 36 build-system = [ 37 setuptools 38 setuptools-scm 39 ]; 40 41 propagatedBuildInputs = [ 42 cffi 43 six 44 packaging 45 ] ++ (with rPackages; [ reticulate ]); 46 47 nativeCheckInputs = [ 48 pytestCheckHook 49 pytest-mock 50 R 51 ]; 52 53 preCheck = '' 54 export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:${R}/lib/R/lib 55 cd $TMPDIR 56 ''; 57 58 pythonImportsCheck = [ "rchitect" ]; 59 60 meta = with lib; { 61 description = "Interoperate R with Python"; 62 homepage = "https://github.com/randy3k/rchitect"; 63 changelog = "https://github.com/randy3k/rchitect/blob/v${version}/CHANGELOG.md"; 64 license = licenses.mit; 65 maintainers = with maintainers; [ savyajha ]; 66 }; 67}