anchor.diff:        in
           [x] ++ nubOn f xs;
   
  +  /* Recursively find all packages (derivations) in `pkgs` matching `cond` predicate.
  +
  +    Type: packagesWithPath :: AttrPath → (AttrPath → derivation → bool) → (AttrSet | List) → List<AttrSet{attrPath :: str; package :: derivation; }>
  +          AttrPath :: [str]
  +
  +    The packages will be returned as a list of named pairs comprising of:
  +      - attrPath: stringified attribute path (based on `rootPath`)
  +      - package: corresponding derivation
  +   */
     packagesWithPath = rootPath: cond: pkgs:
       let
  -      packagesWithPathInner = relativePath: pathContent:
  +      packagesWithPathInner = path: pathContent:
           let
             result = builtins.tryEval pathContent;
   
  
positive.code:         else
            builtins.getAttr maintainer' lib.maintainers;
      in
        packagesWith (relativePath: pkg: builtins.hasAttr "updateScript" pkg &&
                                   (if builtins.hasAttr "maintainers" pkg.meta
                                     then (if builtins.isList pkg.meta.maintainers
                                             then builtins.elem maintainer pkg.meta.maintainers
                                             else maintainer == pkg.meta.maintainers
                                          )
                                     else false
                                   )
                     )
                     pkgs;
  
    packagesWithUpdateScript = path:
      let
        prefix = lib.splitString "." path;
        pathContent = lib.attrByPath prefix null pkgs;
  
negative.code:         --argstr commit true
    '';
  
    /* Transform a matched package into an object for update.py.
     */
    packageData = { package, attrPath }: {
      name = package.name;
      pname = lib.getName package;
  