1{ gevent
2, buildPythonPackage
3, fetchFromGitHub
4, hostname
5, pytest
6, python
7, stdenv
8}:
9
10buildPythonPackage rec {
11 pname = "ruffus";
12 version = "2.8.1";
13
14 src = fetchFromGitHub {
15 owner = "cgat-developers";
16 repo = pname;
17 rev = "v${version}";
18 sha256 = "1gyabqafq4s2sy0prh3k1m8859shzjmfxr7fimx10liflvki96a9";
19 };
20
21 propagatedBuildInputs = [ gevent ];
22
23 postPatch = ''
24 sed -i -e 's|/bin/bash|${stdenv.shell}|' ruffus/test/Makefile
25 sed -i -e 's|\tpytest|\t${pytest}/bin/pytest|' ruffus/test/Makefile
26 sed -i -e 's|\tpython|\t${python.interpreter}|' ruffus/test/Makefile
27 sed -i -e 's|/usr/bin/env bash|${stdenv.shell}|' ruffus/test/run_all_unit_tests.cmd
28 sed -i -e 's|python3|${python.interpreter}|' ruffus/test/run_all_unit_tests3.cmd
29 sed -i -e 's|python %s|${python.interpreter} %s|' ruffus/test/test_drmaa_wrapper_run_job_locally.py
30 '';
31
32 makefile = "ruffus/test/Makefile";
33
34 checkInputs = [
35 gevent
36 hostname
37 pytest
38 ];
39
40 checkPhase = ''
41 export HOME=$TMPDIR
42 cd ruffus/test
43 make all PYTEST_OPTIONS="-q --disable-warnings"
44 '';
45
46 meta = with stdenv.lib; {
47 description = "Light-weight Python Computational Pipeline Management";
48 homepage = "http://www.ruffus.org.uk";
49 license = licenses.mit;
50 maintainers = [ maintainers.kiwi ];
51 };
52}
53