1{ lib
2, stdenv
3, fetchPypi
4, buildPythonPackage
5, isPy3k
6, mock
7, pytestCheckHook
8, cloudpickle
9, pyinotify
10, macfsevents
11}:
12
13buildPythonPackage rec {
14 pname = "doit";
15 version = "0.33.1";
16
17 disabled = !isPy3k;
18
19 src = fetchPypi {
20 inherit pname version;
21 sha256 = "37c3b35c2151647b968b2af24481112b2f813c30f695366db0639d529190a143";
22 };
23
24 propagatedBuildInputs = [ cloudpickle ]
25 ++ lib.optional stdenv.isLinux pyinotify
26 ++ lib.optional stdenv.isDarwin macfsevents;
27
28 # hangs on darwin
29 doCheck = !stdenv.isDarwin;
30
31 checkInputs = [ mock pytestCheckHook ];
32
33 disabledTests = [
34 # depends on doit-py, which has a circular dependency on doit
35 "test___main__.py"
36 ];
37
38 meta = with lib; {
39 homepage = "https://pydoit.org/";
40 description = "A task management & automation tool";
41 license = licenses.mit;
42 longDescription = ''
43 doit is a modern open-source build-tool written in python
44 designed to be simple to use and flexible to deal with complex
45 work-flows. It is specially suitable for building and managing
46 custom work-flows where there is no out-of-the-box solution
47 available.
48 '';
49 maintainers = with maintainers; [ pSub ];
50 };
51}