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.4";
13
14 src = fetchFromGitHub {
15 owner = "cgat-developers";
16 repo = pname;
17 rev = "v${version}";
18 sha256 = "0fnzpchwwqsy5h18fs0n90s51w25n0dx0l74j0ka6lvhjl5sxn4c";
19 };
20
21 propagatedBuildInputs = [ gevent ];
22
23 checkInputs = [
24 hostname
25 pytest
26 ];
27
28 # tests very flaky & hang often on darwin
29 doCheck = !stdenv.isDarwin;
30 # test files do indeed need to be executed separately
31 checkPhase = ''
32 pushd ruffus/test
33 rm test_with_logger.py # spawns 500 processes
34 for f in test_*.py ; do
35 HOME=$TMPDIR pytest -v --disable-warnings $f
36 done
37 popd
38 '';
39 pythonImportsCheck = [ "ruffus" ];
40
41 meta = with stdenv.lib; {
42 description = "Light-weight Python Computational Pipeline Management";
43 homepage = "http://www.ruffus.org.uk";
44 license = licenses.mit;
45 maintainers = [ maintainers.kiwi ];
46 };
47}
48