anchor.diff:        services.xserver.displayManager.sessionPackages = [ pkgs.libsForQt5.plasma5.plasma-workspace ];
   
         security.wrappers = {
  -        kcheckpass =
  -          {
  -            setuid = true;
  -            owner = "root";
  -            group = "root";
  -            source = "${getBin libsForQt5.kscreenlocker}/libexec/kcheckpass";
  -          };
  -        start_kdeinit =
  -          {
  -            setuid = true;
  -            owner = "root";
  -            group = "root";
  -            source = "${getBin libsForQt5.kinit}/libexec/kf5/start_kdeinit";
  -          };
  -        kwin_wayland =
  -          {
  -            owner = "root";
  -            group = "root";
  -            capabilities = "cap_sys_nice+ep";
  -            source = "${getBin plasma5.kwin}/bin/kwin_wayland";
  -          };
  +        kcheckpass = {
  +          setuid = true;
  +          owner = "root";
  +          group = "root";
  +          source = "${getBin libsForQt5.kscreenlocker}/libexec/kcheckpass";
  +        };
  +        start_kdeinit = {
  +          setuid = true;
  +          owner = "root";
  +          group = "root";
  +          source = "${getBin libsForQt5.kinit}/libexec/kf5/start_kdeinit";
  +        };
  +        kwin_wayland = {
  +          owner = "root";
  +          group = "root";
  +          capabilities = "cap_sys_nice+ep";
  +          source = "${getBin plasma5.kwin}/bin/kwin_wayland";
  +        };
         };
   
         # DDC support
  
positive.code:       # Enable helpful DBus services.
        services.udisks2.enable = true;
        services.upower.enable = config.powerManagement.enable;
        services.system-config-printer.enable = (mkIf config.services.printing.enable (mkDefault true));
        services.xserver.libinput.enable = mkDefault true;
  
        # Extra UDEV rules used by Solid
  
negative.code:     XDG_CONFIG_HOME=''${XDG_CONFIG_HOME:-$HOME/.config}
    '';
  
    startplasma = ''
      ${set_XDG_CONFIG_HOME}
      mkdir -p "''${XDG_CONFIG_HOME}"
    '' + optionalString config.hardware.pulseaudio.enable ''
      # Load PulseAudio module for routing support.
      # See also: http://colin.guthr.ie/2009/10/so-how-does-the-kde-pulseaudio-support-work-anyway/
        ${getBin config.hardware.pulseaudio.package}/bin/pactl load-module module-device-manager "do_routing=1"
    '' + ''
      ${activationScript}
  
      # Create default configurations if Plasma has never been started.
      kdeglobals="''${XDG_CONFIG_HOME}/kdeglobals"
      if ! [ -f "$kdeglobals" ]; then
        kcminputrc="''${XDG_CONFIG_HOME}/kcminputrc"
        if ! [ -f "$kcminputrc" ]; then
            cat ${kcminputrc} >"$kcminputrc"
        fi
  
        gtkrc2="$HOME/.gtkrc-2.0"
        if ! [ -f "$gtkrc2" ]; then
            cat ${gtkrc2} >"$gtkrc2"
        fi
  
        gtk3_settings="''${XDG_CONFIG_HOME}/gtk-3.0/settings.ini"
        if ! [ -f "$gtk3_settings" ]; then
            mkdir -p "$(dirname "$gtk3_settings")"
            cat ${gtk3_settings} >"$gtk3_settings"
        fi
      fi
    '';
  
  in
  
  