anchor.diff:      
       ok = couch_util:start_driver(LibDir),
       
  -    BaseServices =
  +    BaseChildSpecs =
       {{one_for_all, 10, 3600}, 
           [{couch_config,
               {couch_server_sup, couch_config_start_link_wrapper, [IniFiles, ConfigPid]},
  
positive.code:             permanent,
              infinity,
              supervisor,
              [couch_server_sup]}
          ]},
     
  
negative.code:                 brutal_kill,
                  worker,
                  [couch_log]},
              {couch_server,
                  {couch_server, sup_start_link, []},
                  permanent,
                  brutal_kill,
                  supervisor,
                  [couch_server]},
              {couch_db_update_event,
                  {gen_event, start_link, [{local, couch_db_update}]},
                  permanent,
                  brutal_kill,
                  supervisor,
                  dynamic}]}).
  
  
  start_secondary_services() ->
      DaemonChildSpecs = [
          begin
              {ok, Tokens, _} = erl_scan:string(SpecStr ++ "."),
              {ok, {Module, Fun, Args}} = erl_parse:parse_term(Tokens),
              
              {list_to_atom(Name),
                  {Module, Fun, Args},
                  permanent,
                  brutal_kill,
                  worker,
                  [Module]}                
          end
          || {Name, SpecStr}
          <- couch_config:get("daemons"), SpecStr /= ""],
          
      supervisor:start_link(couch_server_sup,
          {{one_for_one, 10, 3600}, DaemonChildSpecs}).
  
  stop() ->
      catch exit(whereis(couch_server_sup), normal).
  