anchor.diff:          default = [];
           example = [ "proxy_connect" { name = "php5_module"; path = "${pkgs.php}/modules/libphp5.so"; } ];
           description = ''
  -          Loads additional modules either beeing distributed with apache.
  -          If the module is contained in a foreign package (such as php5_module)
  -          kse an attrset as given in the example.
  +          Specifies additional Apache modules.  These can be specified
  +          as a string in the case of modules distributed with Apache,
  +          or as an attribute set specifying the
  +          <varname>name</varname> and <varname>path</varname> of the
  +          module.
           '';
         };
   
  
positive.code:         example = [ { type = "svn"; url = "https://svn.nixos.org/repos/nix/nixos/branches/stdenv-updates"; target = "/etc/nixos/nixos-stdenv-updates"; }
                      { type = "git"; initialize = ''git clone git://mawercer.de/nixos $target''; update = "git pull origin"; target = "/etc/nixos/nixos-git"; }
                    ];
          description = "The NixOS repository from which the system will be build. 
                         nixos-checkout will update all working copies of the given repositories,
                         nixos-rebuild will use the first item which has
                         the attribute default = true falling back to the
                         first item. The type defines the repository tool added
                         to the path. It also defines a \"valid\" repository.
                         If the target directory already exists and it's not
                         valid it will be moved to the backup location
                         <filename>\${dir}-date</filename>.
                         For svn the default target and repositories are
                         <filename>/etc/nixos/nixos</filename> and
                         <filename>https://svn.nixos.org/repos/nix/nixos/trunk</filename>.
                         For git repositories update is called after
                         initialization when the repo is initialized.
                         The initialize code is run from working directory
                         dirname \$target and should create the directory
                         <filename>\$target<filename>. (<command>git clone url nixos/nixpkgs/services</command> should do)
                         For the executables beeing used see <option>repoTypes</option>
                         ";
        };
  
        nixpkgs = mkOption {
  
negative.code:     };
  
      repoTypes = mkOption {
        default = {
          svn = { valid = "[ -d .svn ]"; env = [ pkgs.coreutils pkgs.subversion ]; };
          git = { valid = "[ -d .git ]"; env = [ pkgs.coreutils pkgs.git pkgs.gnused /*  FIXME: use full path to sed in nix-pull */ ]; };
        };
        description = ''
          Defines, for each supported version control system
          (e.g. <literal>git</literal>), the dependencies for the
          mechanism, as well as a test used to determine whether a
          directory is a checkout created by that version control
          system.
        '';
      };
  
      manifests = mkOption {
  