anchor.diff:  
     haveAliases = cfg.postmasterAlias != "" || cfg.rootAlias != ""
                         || cfg.extraAliases != "";
  +  haveCanonical = cfg.canonical != "";
     haveTransport = cfg.transport != "";
     haveVirtual = cfg.virtual != "";
     haveLocalRecipients = cfg.localRecipients != null;
  
positive.code:         description = "
            Delimiter for address extension: so mail to user+test can be handled by ~user/.forward+test
          ";
        };
  
        virtual = mkOption {
  
negative.code:   ;
  
    aliasesFile = pkgs.writeText "postfix-aliases" aliases;
    canonicalFile = pkgs.writeText "postfix-canonical" cfg.canonical;
    virtualFile = pkgs.writeText "postfix-virtual" cfg.virtual;
    localRecipientMapFile = pkgs.writeText "postfix-local-recipient-map" (concatMapStrings (x: x + " ACCEPT\n") cfg.localRecipients);
    checkClientAccessFile = pkgs.writeText "postfix-check-client-access" cfg.dnsBlacklistOverrides;
  