anchor.diff:                fn = pkgs.lib.findFirst (fn: builtins.pathExists fn) null
                   (map (ext: "${dirOf key}/${dep.name}${ext}") exts);
               in if fn != null then [{key = fn;}] ++ xs
  -               else builtins.trace "not found: ${dep.name}" xs;
  +               else xs;
   
           in pkgs.lib.fold foundDeps [] deps;
       };
  
positive.code: 
          let
  
            trace = x: builtins.trace x x;
  
            deps = import (pkgs.runCommand "lhs2tex-includes"
              { src = trace key; }
              "${pkgs.stdenv.bash}/bin/bash ${./find-lhs2tex-includes.sh}");
  
          in pkgs.lib.concatMap (x : if builtins.pathExists x then [{key = x;}]
                                     else builtins.trace ("not found: ${toString x}") [])
                                (map (x : trace "${dirOf key}/${x}") deps);
      };
  
    dot2pdf =
  
negative.code: 
          let
  
            # `find-includes.pl' returns the dependencies of the current
            # source file (`key') as a list, e.g. [{type = "tex"; name =
            # "introduction.tex";} {type = "img"; name = "example"}].
            # The type denotes the kind of dependency, which determines
            # what extensions we use to look for it.
            deps = import (pkgs.runCommand "latex-includes"
              { src = key; }
              "${pkgs.perl}/bin/perl ${./find-includes.pl}");
  
            # Look for the dependencies of `key', trying various
  