anchor.diff:  let
     cfg = config.virtualisation.vswitch;
   
  -in
  +in {
   
  -{
  -
  -  options = {
  -
  -    virtualisation.vswitch.enable = mkOption {
  +  options.virtualisation.vswitch = {
  +    enable = mkOption {
         type = types.bool;
         default = false;
  -      description =
  -        ''
  -        Enable Open vSwitch. A configuration 
  -        daemon (ovs-server) will be started.
  +      description = ''
  +        Whether to enable Open vSwitch. A configuration daemon (ovs-server)
  +        will be started.
           '';
       };
   
  -
  -    virtualisation.vswitch.package = mkOption {
  +    package = mkOption {
         type = types.package;
         default = pkgs.openvswitch;
  -      description =
  -        ''
  +      description = ''
           Open vSwitch package to use.
  -        '';
  +      '';
       };
   
  +    ipsec = mkOption {
  +      type = types.bool;
  +      default = false;
  +      description = ''
  +        Whether to start racoon service for openvswitch.
  +      '';
  +    };
     };
   
  -  config = mkIf cfg.enable (let 
  +  config = mkIf cfg.enable (let
   
       # Where the communication sockets live
       runDir = "/var/run/openvswitch";
  
positive.code:       path = [ cfg.package ];
        restartTriggers = [ db cfg.package ];
        # Create the config database
        preStart = 
          ''
          mkdir -p ${runDir}
          mkdir -p /var/db/openvswitch
  
negative.code:     # Where the config database live (can't be in nix-store)
      stateDir = "/var/db/openvswitch";
  
      # The path to the an initialized version of the database
      db = pkgs.stdenv.mkDerivation {
        name = "vswitch.db";
        unpackPhase = "true";
  