anchor.diff: -{ lib, stdenv, pkgs, python3, fetchpatch, glibcLocales, installShellFiles }:
  +{ lib
  +, stdenv
  +, fetchFromGitHub
  +, fetchpatch
  +, glibcLocales
  +, installShellFiles
  +, python3
  +}:
   
  -with python3.pkgs; buildPythonApplication rec {
  +python3.pkgs.buildPythonApplication rec {
     pname = "khal";
     version = "0.10.5";
   
  -  src = fetchPypi {
  -    inherit pname version;
  -    sha256 = "sha256-Tu+3rDAqJthgbbOSgXWHpO2UwnoVvy6iEWFKRk/PDHY=";
  +  src = fetchFromGitHub {
  +    owner = "pimutils";
  +    repo = pname;
  +    rev = "v${version}";
  +    hash = "sha256-FneJmoAOb7WjSgluCwlspf27IU3MsQZFKryL9OSSsUw=";
     };
   
  -  propagatedBuildInputs = [
  +  SETUPTOOLS_SCM_PRETEND_VERSION = version;
  +
  +  nativeBuildInputs = [
  +    glibcLocales
  +    installShellFiles
  +  ] ++ (with python3.pkgs; [
  +    setuptools-scm
  +    sphinx
  +    sphinxcontrib_newsfeed
  +  ]);
  +
  +  propagatedBuildInputs = with python3.pkgs;[
       atomicwrites
       click
       click-log
       configobj
  -    python-dateutil
  +    freezegun
       icalendar
       lxml
  +    pkginfo
       pkgs.vdirsyncer
  +    python-dateutil
       pytz
       pyxdg
       requests-toolbelt
       tzlocal
       urwid
  -    pkginfo
  +  ];
  +
  +  checkInputs = with python3.pkgs;[
       freezegun
  +    hypothesis
  +    packaging
  +    pytestCheckHook
  +    vdirsyncer
     ];
  -  nativeBuildInputs = [ setuptools-scm sphinx sphinxcontrib_newsfeed installShellFiles ];
  +
  +  patches = [
  +    # Tests working with latest pytz version, https://github.com/pimutils/khal/pull/1183
  +    (fetchpatch {
  +      name = "support-later-pytz.patch";
  +      url = "https://github.com/pimutils/khal/commit/53eb8a7426d5c09478c78d809c4df4391438e246.patch";
  +      sha256 = "sha256-drGtvJlQ3qFUdeukRWCFycPSZGWG/FSRqnbwJzFKITc=";
  +      excludes = [
  +        "CHANGELOG.rst"
  +      ];
  +    })
  +  ];
   
     postInstall = ''
       # shell completions
  
positive.code:     # man page
      PATH="${python3.withPackages (ps: with ps; [ sphinx sphinxcontrib_newsfeed ])}/bin:$PATH" \
      make -C doc man
      install -Dm755 doc/build/man/khal.1 -t $out/share/man/man1
  
      # desktop
      install -Dm755 misc/khal.desktop -t $out/share/applications
    '';
  
    doCheck = !stdenv.isAarch64;
  
    checkInputs = [
      glibcLocales
      pytestCheckHook
    ];
  
    LC_ALL = "en_US.UTF-8";
  
  
negative.code:   ];
  
    meta = with lib; {
      description = "CLI calendar application";
      homepage = "http://lostpackets.de/khal/";
      license = licenses.mit;
      maintainers = with maintainers; [ gebner ];
      broken = stdenv.isDarwin;
    };
  }
  