anchor.diff: -{ nixpkgs ? <nixpkgs> }:
  +{ nixpkgs ? <nixpkgs>
  +, systems ? [ "i686-linux" "x86_64-linux" ]
  +}:
   
   let
     pkgs = import nixpkgs {};
  
positive.code:             enableMongoDatabase = true;
              enableTomcatWebApplication = true;
              enableSubversionRepository = true;
            };
            
            # Test services
            
  
negative.code:       , enableMongoDatabase ? false
        , enableSubversionRepository ? false
        , catalinaBaseDir ? "/var/tomcat"
        }:
  
        pkgs.lib.genAttrs systems (system:
        
          with import nixpkgs { inherit system; };
  
          releaseTools.nixBuild {
            name = "dysnomia";
            version = builtins.readFile ./version;
            src = tarball;
          
            preConfigure = stdenv.lib.optionalString enableEjabberdDump "export PATH=$PATH:${ejabberd}/sbin";
  
            configureFlags = ''
              ${if enableApacheWebApplication then "--with-apache" else "--without-apache"}
              ${if enableAxis2WebService then "--with-axis2" else "--without-axis2"}
              ${if enableEjabberdDump then "--with-ejabberd" else "--without-ejabberd"}
              ${if enableMySQLDatabase then "--with-mysql" else "--without-mysql"}
              ${if enablePostgreSQLDatabase then "--with-postgresql" else "--without-postgresql"}
              ${if enableMongoDatabase then "--with-mongodb" else "--without-mongodb"}
              ${if enableTomcatWebApplication then "--with-tomcat=${catalinaBaseDir}" else "--without-tomcat"}
              ${if enableSubversionRepository then "--with-subversion" else "--without-subversion"}
            '';
          
            buildInputs = [ getopt ]
              ++ stdenv.lib.optional enableEjabberdDump ejabberd
              ++ stdenv.lib.optional enableMySQLDatabase mysql
              ++ stdenv.lib.optional enablePostgreSQLDatabase postgresql
              ++ stdenv.lib.optional enableMongoDatabase mongodb
              ++ stdenv.lib.optional enableSubversionRepository subversion;
          });
        
        tests = 
          with pkgs;
          
          let
            dysnomia = builtins.getAttr (builtins.currentSystem) (jobs.build {
              enableApacheWebApplication = true;
              enableAxis2WebService = true;
              enableEjabberdDump = true;
  