anchor.diff: -{ stdenv, fetchFromGitHub, fetchurl, perl, perlPackages, wget, autoconf, automake }:
  +{ stdenv, fetchFromGitHub, fetchurl, perl, perlPackages, wget, autoconf, automake, autoreconfHook }:
   
   let
  -  # when upgrade znapzend, check versions of Perl libs here: https://github.com/oetiker/znapzend/blob/master/PERL_MODULES
  -  Mojolicious-6-46 = perlPackages.buildPerlPackage rec {
  +  # when upgrade znapzend, check versions of Perl libs here: https://github.com/oetiker/znapzend/blob/master/cpanfile
  +  # pinned versions are listed at https://github.com/oetiker/znapzend/blob/master/thirdparty/cpanfile-5.26.1.snapshot
  +  Mojolicious-8-35 = perlPackages.buildPerlPackage rec {
       pname = "Mojolicious";
  -    version = "6.46";
  +    version = "8.35";
       src = fetchurl {
         url = "mirror://cpan/authors/id/S/SR/SRI/${pname}-${version}.tar.gz";
  -      sha256 = "0i3axmx4506fx5gms148pj65x6ys7flaz1aqjd8hd9zfkd8pzdfr";
  +      sha256 = "1bll0ahh5v1y3x0ql29klwsa68cj46wzqc385srsnn2m8kh2ak8h";
       };
     };
  -  MojoIOLoopForkCall-0-17 = perlPackages.buildPerlModule rec {
  +  MojoIOLoopForkCall-0-20 = perlPackages.buildPerlModule rec {
       pname = "Mojo-IOLoop-ForkCall";
  -    version = "0.17";
  +    version = "0.20";
       src = fetchurl {
         url = "mirror://cpan/authors/id/J/JB/JBERGER/${pname}-${version}.tar.gz";
  -      sha256 = "090qxz1nbah2qxvfg4whl6yp6q03qkx7a42751iai521nk1yavc8";
  +      sha256 = "19pih5x0ayxs2m8j29qwdpi6ky3w4ghv6vrmax3ix9r59hj6569b";
       };
  -    propagatedBuildInputs = [ perlPackages.IOPipely Mojolicious-6-46 ];
  +    propagatedBuildInputs = [ perlPackages.IOPipely Mojolicious-8-35 ];
     };
   
  -  version = "0.18.0";
  -  checksum = "1nlvw56viwgafma506slywfg54z6009jmzc9q6wljgr6mqfmmchd";
  +  version = "0.20.0";
  +  checksum = "15lb5qwksa508m9bj6d3n4rrjpakfaas9qxspg408bcqfp7pqjw3";
   in
   stdenv.mkDerivation {
     pname = "znapzend";
  
positive.code:   postInstall = ''
      substituteInPlace $out/bin/znapzend --replace "${perl}/bin/perl" \
        "${perl}/bin/perl \
        -I${Mojolicious-6-46}/${perl.libPrefix} \
        -I${perlPackages.TAPParserSourceHandlerpgTAP}/${perl.libPrefix} \
        -I${MojoIOLoopForkCall-0-17}/${perl.libPrefix} \
        -I${perlPackages.IOPipely}/${perl.libPrefix} \
        "
      substituteInPlace $out/bin/znapzendzetup --replace "${perl}/bin/perl" \
        "${perl}/bin/perl \
        -I${Mojolicious-6-46}/${perl.libPrefix} \
        -I${perlPackages.TAPParserSourceHandlerpgTAP}/${perl.libPrefix} \
        -I${MojoIOLoopForkCall-0-17}/${perl.libPrefix} \
        -I${perlPackages.IOPipely}/${perl.libPrefix} \
        "
      substituteInPlace $out/bin/znapzendztatz --replace "${perl}/bin/perl" \
        "${perl}/bin/perl \
        -I${Mojolicious-6-46}/${perl.libPrefix} \
        -I${perlPackages.TAPParserSourceHandlerpgTAP}/${perl.libPrefix} \
        -I${MojoIOLoopForkCall-0-17}/${perl.libPrefix} \
        -I${perlPackages.IOPipely}/${perl.libPrefix} \
        "
    '';
  
negative.code:     sha256 = checksum;
    };
  
    buildInputs = [ wget perl MojoIOLoopForkCall-0-20 perlPackages.TAPParserSourceHandlerpgTAP ];
  
    nativeBuildInputs = [ autoconf automake autoreconfHook ];
  
    preConfigure = ''
      sed -i 's/^SUBDIRS =.*$/SUBDIRS = lib/' Makefile.am
  