anchor.diff:        };
   
       environment.systemPackages =
  -      (if !isKDE47 then
  -        # KDE <= 4.6
  -        [ # temporary workarounds
  -          pkgs.shared_desktop_ontologies
  -          pkgs.strigi
  -
  -          pkgs.kde4.kdelibs
  -          pkgs.kde4.kdebase
  -          pkgs.kde4.kdebase_runtime
  -          pkgs.kde4.kdebase_workspace
  -          pkgs.kde4.oxygen_icons
  -          pkgs.kde4.qt4 # needed for qdbus
  -          pkgs.shared_mime_info
  -          pkgs.gst_all.gstreamer
  -          pkgs.gst_all.gstPluginsBase
  -          pkgs.gst_all.gstPluginsGood
  -          pkgs.gst_all.gstFfmpeg # for mp3 playback
  -          xorg.xmessage # so that startkde can show error messages
  -          xorg.xset # used by startkde, non-essential
  -        ] ++ optional (pkgs ? phonon_backend_gstreamer) pkgs.phonon_backend_gstreamer
  -      else
  -        # KDE >= 4.7
           [ pkgs.kde4.kdelibs
   
             pkgs.kde4.kde_baseapps # Splitted kdebase
  
positive.code:                 sed -e '/nix\\store\|nix\/store/ d' -i $HOME/.config/Trolltech.conf
              fi
  
              ${optionalString (!isKDE47) ''
                export DBUS_FATAL_WARNINGS=0
              ''}
  
              # Start KDE.
              exec ${pkgs.kde4.kdebase_workspace}/bin/startkde
            '';
  
negative.code:       };
  
      # Enable helpful DBus services.
      services.udisks.enable = true;
      services.upower = mkIf config.powerManagement.enable { enable = true; };
  
      security.pam.services = [ { name = "kde"; allowNullPassword = true; } ];
  
  