anchor.diff:  
           daemonType = "fork";
   
  -        exec = "${dbus}/bin/dbus-daemon --config-file=${configDir}/system.conf";
  +        exec = "${dbus}/bin/dbus-daemon --system";
   
           postStop =
             ''
  
positive.code: # D-Bus system-wide daemon.
  {pkgs, config, ...}:
  
  with pkgs.lib;
  
  
negative.code:     buildCommand = ''
        ensureDir $out
        
        cp ${dbus}/etc/dbus-1/system.conf $out/system.conf
  
        # !!! Hm, these `sed' calls are rather error-prone...
  
        # Tell the daemon where the setuid wrapper around
        # dbus-daemon-launch-helper lives.      
        sed -i $out/system.conf \
            -e 's|<servicehelper>.*/libexec/dbus-daemon-launch-helper|<servicehelper>${config.security.wrapperDir}/dbus-daemon-launch-helper|'
  
        # Add the system-services and system.d directories to the system
        # bus search path.
        sed -i $out/system.conf \
            -e 's|<standard_system_servicedirs/>|${systemServiceDirs}|'
  
        cp ${dbus}/etc/dbus-1/session.conf $out/session.conf
        
        # Add the services and session.d directories to the session bus
        # search path.
        sed -i $out/session.conf \
            -e 's|<standard_session_servicedirs />|${sessionServiceDirs}|'
  
        ensureDir $out/session.d
        ensureDir $out/system.d
        
        for i in ${toString cfg.packages}; do
          for j in $i/etc/dbus-1/session.d/*; do
            ln -s $j $out/session.d/
          done
          for j in $i/etc/dbus-1/system.d/*; do
            ln -s $j $out/system.d/
  