1{ 2 lib, 3 buildPythonPackage, 4 fetchFromGitHub, 5 kitchen, 6 packaging, 7 poetry-core, 8 poetry-dynamic-versioning, 9 python-dateutil, 10 pythonOlder, 11 pythonRelaxDepsHook, 12 pytz, 13 taskwarrior, 14}: 15 16buildPythonPackage rec { 17 pname = "taskw-ng"; 18 version = "0.2.6"; 19 pyproject = true; 20 21 disabled = pythonOlder "3.8"; 22 23 src = fetchFromGitHub { 24 owner = "bergercookie"; 25 repo = "taskw-ng"; 26 rev = "refs/tags/v${version}"; 27 hash = "sha256-tlidTt0TzWnvfajYiIfvRv7OfakHY6zWAicmAwq/Z8w="; 28 }; 29 30 pythonRelaxDeps = [ 31 "packaging" 32 "pytz" 33 ]; 34 35 build-system = [ 36 poetry-core 37 poetry-dynamic-versioning 38 ]; 39 40 nativeBuildInputs = [ pythonRelaxDepsHook ]; 41 42 propagatedBuildInputs = [ 43 kitchen 44 packaging 45 python-dateutil 46 pytz 47 ]; 48 49 checkInputs = [ taskwarrior ]; 50 51 # TODO: doesn't pass because `can_use` fails and `task --version` seems not to be answering. 52 # pythonImportsCheck = [ "taskw_ng" ]; 53 54 meta = with lib; { 55 description = "Module to interact with the Taskwarrior API"; 56 homepage = "https://github.com/bergercookie/taskw-ng"; 57 changelog = "https://github.com/bergercookie/taskw-ng/blob/${src.rev}/CHANGELOG.rst"; 58 license = licenses.gpl3Plus; 59 maintainers = with maintainers; [ raitobezarius ]; 60 }; 61}