1{ 2 lib, 3 buildPythonPackage, 4 fetchFromGitHub, 5 icalendar, 6 lxml, 7 pytestCheckHook, 8 python, 9 recurring-ical-events, 10 requests, 11 hatchling, 12 hatch-vcs, 13 proxy-py, 14 pyfakefs, 15 toPythonModule, 16 tzlocal, 17 vobject, 18 xandikos, 19 writableTmpDirAsHomeHook, 20}: 21 22buildPythonPackage rec { 23 pname = "caldav"; 24 version = "2.0.1"; 25 pyproject = true; 26 27 src = fetchFromGitHub { 28 owner = "python-caldav"; 29 repo = "caldav"; 30 tag = "v${version}"; 31 hash = "sha256-n7ZKTBXg66firbS34J41NrTM/PL/OrKMnS4iguRz4Ho="; 32 }; 33 34 build-system = [ 35 hatchling 36 hatch-vcs 37 ]; 38 39 dependencies = [ 40 vobject 41 lxml 42 requests 43 icalendar 44 recurring-ical-events 45 ]; 46 47 nativeCheckInputs = [ 48 proxy-py 49 pyfakefs 50 pytestCheckHook 51 tzlocal 52 (toPythonModule (xandikos.override { python3Packages = python.pkgs; })) 53 writableTmpDirAsHomeHook 54 ]; 55 56 disabledTestPaths = [ 57 "tests/test_docs.py" 58 "tests/test_examples.py" 59 ]; 60 61 pythonImportsCheck = [ "caldav" ]; 62 63 meta = with lib; { 64 description = "CalDAV (RFC4791) client library"; 65 homepage = "https://github.com/python-caldav/caldav"; 66 changelog = "https://github.com/python-caldav/caldav/blob/${src.tag}/CHANGELOG.md"; 67 license = licenses.asl20; 68 maintainers = with maintainers; [ 69 marenz 70 dotlambda 71 ]; 72 }; 73}