anchor.diff: -{ stdenv, fetchurl, pkgconfig, bc, perl, pam
  -, libXext, libXScrnSaver, libX11, libXrandr, libXmu, libXxf86vm, libXrender
  -, libXxf86misc
  -, libjpeg, mesa, gtk, libxml2, libglade
  +{ stdenv, fetchurl, pkgconfig, bc, perl, pam, libXext, libXScrnSaver, libX11
  +, libXrandr, libXmu, libXxf86vm, libXrender, libXxf86misc, libjpeg, mesa, gtk
  +, libxml2, libglade
   }:
   
   stdenv.mkDerivation rec {
  -  version = "5.15";
  +  version = "5.18";
     name = "xscreensaver-${version}";
   
     src = fetchurl {
       url = "http://www.jwz.org/xscreensaver/${name}.tar.gz";
  -    sha256 = "4f6d1f1e4c15dbb74e2296f8fe57a73d47d602515178c248bbc838f779d5082d";
  +    sha256 = "3d70edb8f46511f5427f21b4ba4d8323f336888f60268d16731f5231c6883db9";
     };
   
     buildInputs =
  
positive.code:       "--with-x-app-defaults=\${out}/share/xscreensaver/app-defaults"
      ];
  
    preConfigure =
      ''
        sed -e 's%@GTK_DATADIR@%@datadir@% ; s%@PO_DATADIR@%@datadir@%' \
          -i driver/Makefile.in po/Makefile.in.in
      '';
  
    meta = {
      homepage = "http://www.jwz.org/xscreensaver/";
      description = "A set of screensavers";
  
negative.code:       libXext libXScrnSaver libX11 libXrandr libXmu libXxf86vm libXrender
        libXxf86misc
      ];
  
    patchPhase =
      ''
        # Fix build error in version 5.18. Remove this patch when updating
        # to a later version.
        sed -i -e '/AF_LINK/d' hacks/glx/sonar-icmp.c
        # Fix path to GTK.
        sed -e 's%@GTK_DATADIR@%@datadir@% ; s%@PO_DATADIR@%@datadir@%' \
  	  -i driver/Makefile.in po/Makefile.in.in
      '';
  
    configureFlags =
      [ "--with-gl" "--with-pam" "--with-pixbuf" "--with-proc-interrupts"
  