diff --git a/pkgs/development/python-modules/caldav/default.nix b/pkgs/development/python-modules/caldav/default.nix index 15c2dd2b0fe0..0d96372abfcd 100644 --- a/pkgs/development/python-modules/caldav/default.nix +++ b/pkgs/development/python-modules/caldav/default.nix @@ -1,34 +1,51 @@ { lib , buildPythonPackage -, fetchPypi -, tzlocal -, requests -, vobject +, fetchFromGitHub +, pythonOlder +, icalendar , lxml , nose +, pytz +, requests +, six +, tzlocal +, vobject }: buildPythonPackage rec { pname = "caldav"; version = "0.7.0"; - propagatedBuildInputs = [ tzlocal requests vobject lxml nose ]; - - src = fetchPypi { - inherit pname version; - sha256 = "f5982b204fcfac8598381e35e46b667542bd728009971271463f81100e6e5943"; + src = fetchFromGitHub { + owner = "python-caldav"; + repo = pname; + rev = "v${version}"; + sha256 = "0m64maiqp3k8fsgkkvdx1dlfhkc70pqig4dclq6w8ajz82czrq83"; }; - # xandikos is only a optional test dependency, not available for python3 + propagatedBuildInputs = [ six requests vobject lxml ] + ++ lib.optionals (pythonOlder "3.6") [ pytz tzlocal ]; + + checkInputs = [ + icalendar + nose + tzlocal + ]; + + # xandikos and radicale is only a optional test dependency, not available for python3 postPatch = '' substituteInPlace setup.py \ - --replace ", 'xandikos'" "" + --replace ", 'xandikos'" "" \ + --replace ", 'radicale'" "" ''; + pythonImportsCheck = [ "caldav" ]; + meta = with lib; { description = "This project is a CalDAV (RFC4791) client library for Python."; homepage = "https://pythonhosted.org/caldav/"; license = licenses.asl20; maintainers = with maintainers; [ marenz ]; + #broken = true; # requires radicale which is not packaged yet }; }