at 23.05-pre 1.4 kB view raw
1{ lib 2, stdenv 3, fetchPypi 4, buildPythonPackage 5, importlib-metadata 6, isPy3k 7, mock 8, pytestCheckHook 9, cloudpickle 10, pyinotify 11, macfsevents 12, toml 13, doit-py 14, pyflakes 15, configclass 16, mergedict 17}: 18 19let doit = buildPythonPackage rec { 20 pname = "doit"; 21 version = "0.36.0"; 22 23 disabled = !isPy3k; 24 25 src = fetchPypi { 26 inherit pname version; 27 sha256 = "sha256-cdB8zJUUyyL+WdmJmVd2ZeqrV+FvZE0EM2rgtLriNLw="; 28 }; 29 30 propagatedBuildInputs = [ 31 cloudpickle 32 importlib-metadata 33 toml 34 ] ++ lib.optional stdenv.isLinux pyinotify 35 ++ lib.optional stdenv.isDarwin macfsevents; 36 37 checkInputs = [ 38 configclass 39 doit-py 40 mergedict 41 mock 42 pyflakes 43 pytestCheckHook 44 ]; 45 46 # escape infinite recursion with doit-py 47 doCheck = false; 48 49 passthru.tests = { 50 # hangs on darwin 51 check = doit.overridePythonAttrs (_: { doCheck = !stdenv.isDarwin; }); 52 }; 53 54 pythonImportsCheck = [ "doit" ]; 55 56 meta = with lib; { 57 homepage = "https://pydoit.org/"; 58 description = "A task management & automation tool"; 59 license = licenses.mit; 60 longDescription = '' 61 doit is a modern open-source build-tool written in python 62 designed to be simple to use and flexible to deal with complex 63 work-flows. It is specially suitable for building and managing 64 custom work-flows where there is no out-of-the-box solution 65 available. 66 ''; 67 maintainers = with maintainers; [ pSub ]; 68 }; 69 70}; in doit