about summary refs log tree commit diff
path: root/pkgs
diff options
context:
space:
mode:
authorLluís Batlle i Rossell <viric@vicerveza.homeunix.net>2010-12-11 12:47:00 +0000
committerLluís Batlle i Rossell <viric@vicerveza.homeunix.net>2010-12-11 12:47:00 +0000
commitee04ffcb550809f7d97d709ff4ec709a21b30ab9 (patch)
tree470bdb3f97b0ab18d3abeec3e1f59db7a4af34ed /pkgs
parent3f1a32c266f792290cb08c45ab40f22a43cb13cb (diff)
parent97d4a54698a4dea4b57ec4124591d75a740ee44e (diff)
downloadnixlib-ee04ffcb550809f7d97d709ff4ec709a21b30ab9.tar
nixlib-ee04ffcb550809f7d97d709ff4ec709a21b30ab9.tar.gz
nixlib-ee04ffcb550809f7d97d709ff4ec709a21b30ab9.tar.bz2
nixlib-ee04ffcb550809f7d97d709ff4ec709a21b30ab9.tar.lz
nixlib-ee04ffcb550809f7d97d709ff4ec709a21b30ab9.tar.xz
nixlib-ee04ffcb550809f7d97d709ff4ec709a21b30ab9.tar.zst
nixlib-ee04ffcb550809f7d97d709ff4ec709a21b30ab9.zip
Updating from trunk. I resolved simple conflicts.
svn path=/nixpkgs/branches/stdenv-updates/; revision=25061
Diffstat (limited to 'pkgs')
-rw-r--r--pkgs/applications/audio/ladspa-plugins/default.nix2
-rw-r--r--pkgs/applications/misc/hello/ex-2/default.nix2
-rw-r--r--pkgs/applications/misc/mysql-workbench/default.nix4
-rw-r--r--pkgs/applications/misc/xneur/default.nix4
-rw-r--r--pkgs/applications/misc/xneur/src-for-default.nix8
-rw-r--r--pkgs/applications/networking/browsers/chromium/default.nix57
-rw-r--r--pkgs/applications/networking/ekiga/default.nix2
-rw-r--r--pkgs/applications/networking/instant-messengers/gajim/default.nix4
-rw-r--r--pkgs/applications/science/electronics/verilog/default.nix2
-rw-r--r--pkgs/applications/science/logic/cvc3/default.nix54
-rw-r--r--pkgs/applications/science/logic/iprover/default.nix58
-rw-r--r--pkgs/applications/science/logic/isabelle/default.nix4
-rw-r--r--pkgs/applications/science/logic/isabelle/settings.patch2
-rw-r--r--pkgs/applications/science/logic/leo2/default.nix62
-rw-r--r--pkgs/applications/science/logic/minisat/default.nix57
-rw-r--r--pkgs/applications/science/logic/opensmt/default.nix51
-rw-r--r--pkgs/applications/science/logic/satallax/default.nix72
-rw-r--r--pkgs/applications/science/logic/spass/default.nix49
-rw-r--r--pkgs/applications/science/math/pari/default.nix50
-rw-r--r--pkgs/applications/science/math/singular/default.nix61
-rw-r--r--pkgs/applications/version-management/subversion/default.nix7
-rw-r--r--pkgs/applications/video/kmplayer/default.nix6
-rw-r--r--pkgs/applications/virtualization/virtualbox/guest-additions/default.nix14
-rw-r--r--pkgs/applications/window-managers/openbox/default.nix18
-rw-r--r--pkgs/build-support/builder-defs/template-auto-callable.nix6
-rw-r--r--pkgs/build-support/vm/default.nix8
-rw-r--r--pkgs/desktops/kde-4.5/default.nix4
-rw-r--r--pkgs/desktops/kde-4.5/kde-package/manifest.nix96
-rw-r--r--pkgs/desktops/kde-4.5/l10n/default.nix4
-rwxr-xr-xpkgs/desktops/kde-4.5/l10n/l10n-manifest.sh3
-rw-r--r--pkgs/desktops/kde-4.5/l10n/manifest-4.5.3.nix222
-rw-r--r--pkgs/desktops/kde-4.5/pim-runtime45/default.nix15
-rw-r--r--pkgs/desktops/kde-4.5/pim45/boost-1.44.diff12
-rw-r--r--pkgs/desktops/kde-4.5/pim45/default.nix18
-rw-r--r--pkgs/development/compilers/jdk/builder.sh19
-rw-r--r--pkgs/development/compilers/jdk/default-5.nix4
-rw-r--r--pkgs/development/compilers/jdk/jdk5-oracle-linux.nix28
-rw-r--r--pkgs/development/compilers/ocaml/3.11.1.nix5
-rw-r--r--pkgs/development/compilers/ocaml/3.12.0.nix57
-rw-r--r--pkgs/development/compilers/swi-prolog/default.nix9
-rw-r--r--pkgs/development/interpreters/r-lang/default.nix33
-rw-r--r--pkgs/development/libraries/allegro/default.nix59
-rw-r--r--pkgs/development/libraries/apr-util/default.nix4
-rw-r--r--pkgs/development/libraries/cgui/default.nix57
-rw-r--r--pkgs/development/libraries/qt-4.x/4.5/default.nix86
-rw-r--r--pkgs/development/libraries/qt-4.x/4.5/setup-hook.sh9
-rw-r--r--pkgs/development/libraries/rlog/default.nix15
-rw-r--r--pkgs/development/libraries/sqlite/default.nix6
-rw-r--r--pkgs/development/ocaml-modules/batteries/default.nix34
-rw-r--r--pkgs/development/ocaml-modules/camlzip/META23
-rw-r--r--pkgs/development/ocaml-modules/camlzip/default.nix47
-rw-r--r--pkgs/development/ocaml-modules/camlzip/makefile.patch32
-rw-r--r--pkgs/development/ocaml-modules/camomile/0.7.3.nix25
-rw-r--r--pkgs/development/ocaml-modules/camomile/0.8.1.nix25
-rw-r--r--pkgs/development/ocaml-modules/cryptgps/default.nix31
-rw-r--r--pkgs/development/ocaml-modules/cryptokit/META8
-rw-r--r--pkgs/development/ocaml-modules/cryptokit/default.nix43
-rw-r--r--pkgs/development/ocaml-modules/cryptokit/makefile.patch21
-rw-r--r--pkgs/development/ocaml-modules/lwt/default.nix25
-rw-r--r--pkgs/development/ocaml-modules/menhir/default.nix47
-rw-r--r--pkgs/development/ocaml-modules/ounit/default.nix31
-rw-r--r--pkgs/development/ocaml-modules/pcre/default.nix26
-rw-r--r--pkgs/development/ocaml-modules/react/default.nix33
-rw-r--r--pkgs/development/ocaml-modules/ssl/default.nix27
-rw-r--r--pkgs/development/perl-modules/gd-options-passthrough-and-fontconfig.patch49
-rw-r--r--pkgs/development/tools/build-managers/scons/default.nix11
-rw-r--r--pkgs/development/tools/documentation/doxygen/default.nix2
-rw-r--r--pkgs/development/tools/misc/distcc/default.nix1
-rw-r--r--pkgs/development/tools/ocaml/findlib/default.nix54
-rw-r--r--pkgs/development/tools/ocaml/findlib/ldconf.patch8
-rw-r--r--pkgs/games/atanks/default.nix55
-rw-r--r--pkgs/games/crrcsim/default.nix48
-rw-r--r--pkgs/games/gl-117/default.nix41
-rw-r--r--pkgs/games/stardust/default.nix62
-rw-r--r--pkgs/games/xmoto/src-for-default.nix8
-rw-r--r--pkgs/lib/maintainers.nix2
-rw-r--r--pkgs/misc/emulators/wine/src-for-default.nix8
-rw-r--r--pkgs/os-specific/linux/ati-drivers/default.nix6
-rw-r--r--pkgs/os-specific/linux/broadcom-sta/default.nix45
-rw-r--r--pkgs/os-specific/linux/broadcom-sta/makefile.patch16
-rw-r--r--pkgs/os-specific/linux/kernel/linux-2.6.32.nix4
-rw-r--r--pkgs/os-specific/linux/libnl/default.nix20
-rw-r--r--pkgs/os-specific/linux/nvidia-x11/default.nix6
-rw-r--r--pkgs/os-specific/linux/sysstat/default.nix20
-rw-r--r--pkgs/servers/evolution-data-server/default.nix2
-rw-r--r--pkgs/servers/samba/default.nix40
-rw-r--r--pkgs/shells/ipython/default.nix25
-rw-r--r--pkgs/tools/X11/x11vnc/default.nix4
-rw-r--r--pkgs/tools/admin/tightvnc/builder.sh4
-rw-r--r--pkgs/tools/compression/xdelta/default.nix24
-rw-r--r--pkgs/tools/filesystems/e2fsprogs/default.nix8
-rw-r--r--pkgs/tools/filesystems/encfs/default.nix19
-rw-r--r--pkgs/tools/misc/system-config-printer/default.nix11
-rw-r--r--pkgs/tools/misc/tmux/default.nix40
-rw-r--r--pkgs/tools/networking/flvstreamer/default.nix39
-rw-r--r--pkgs/tools/networking/tcpdump/default.nix4
-rw-r--r--pkgs/tools/networking/wicd/default.nix29
-rw-r--r--pkgs/tools/networking/wicd/mkdir-networks.patch13
-rw-r--r--pkgs/tools/networking/wicd/no-var-install.patch37
-rw-r--r--pkgs/tools/networking/wicd/pygtk.patch4
-rw-r--r--pkgs/tools/package-management/nix/sqlite.nix6
-rw-r--r--pkgs/tools/package-management/nix/unstable.nix12
-rw-r--r--pkgs/tools/security/tor/default.nix4
-rw-r--r--pkgs/tools/system/ipmitool/default.nix14
-rw-r--r--pkgs/top-level/all-packages.nix120
-rw-r--r--pkgs/top-level/perl-packages.nix159
106 files changed, 2507 insertions, 484 deletions
diff --git a/pkgs/applications/audio/ladspa-plugins/default.nix b/pkgs/applications/audio/ladspa-plugins/default.nix
index 94e1e72d0f55..1557913f4017 100644
--- a/pkgs/applications/audio/ladspa-plugins/default.nix
+++ b/pkgs/applications/audio/ladspa-plugins/default.nix
@@ -13,7 +13,7 @@ stdenv.mkDerivation {
   postInstall =
     ''
       ensureDir $out/share/ladspa/
-      ln -s $out/lib/ladspa $out/share/ladspa/lib
+      ln -sv $out/lib/ladspa $out/share/ladspa/lib
     '';
 
   meta = {
diff --git a/pkgs/applications/misc/hello/ex-2/default.nix b/pkgs/applications/misc/hello/ex-2/default.nix
index a7cf2b19762f..62b0059c7ac4 100644
--- a/pkgs/applications/misc/hello/ex-2/default.nix
+++ b/pkgs/applications/misc/hello/ex-2/default.nix
@@ -2,6 +2,8 @@
 
 stdenv.mkDerivation rec {
   name = "hello-2.6";
+
+  x = 108;
   
   src = fetchurl {
     url = "mirror://gnu/hello/${name}.tar.gz";
diff --git a/pkgs/applications/misc/mysql-workbench/default.nix b/pkgs/applications/misc/mysql-workbench/default.nix
index f3aac956c366..e373392155a7 100644
--- a/pkgs/applications/misc/mysql-workbench/default.nix
+++ b/pkgs/applications/misc/mysql-workbench/default.nix
@@ -6,12 +6,12 @@
 
 stdenv.mkDerivation rec {
   pname = "mysql-workbench";
-  version = "5.2.28";
+  version = "5.2.30";
   name = "${pname}-${version}";
 
   src = fetchurl {
     url = "http://mirror.services.wisc.edu/mysql/Downloads/MySQLGUITools/mysql-workbench-gpl-${version}-src.tar.gz";
-    sha256 = "1i7icrf3z09rijlvlg99w6m1n3xw0650840hk95ymgrb95kc3437";
+    sha256 = "0dlhnq7pv2ccgm0d7a3hzf9jxa09jzw36h0ljs9vw9q5nyd5kq71";
   };
 
   buildInputs = [ autoconf automake boost file gettext glib glibc gnome_keyring gtk gtkmm intltool
diff --git a/pkgs/applications/misc/xneur/default.nix b/pkgs/applications/misc/xneur/default.nix
index 5a0c5fc12734..c7a302c6589f 100644
--- a/pkgs/applications/misc/xneur/default.nix
+++ b/pkgs/applications/misc/xneur/default.nix
@@ -1,5 +1,5 @@
 { stdenv, fetchurl, pkgconfig, xorg, pcre, GStreamer, glib, libxml2
-, aspell, cairo, imlib2, xosd, libnotify, gtk, pango, atk }:
+, aspell, cairo, imlib2, xosd, libnotify, gtk, pango, atk, enchant }:
 
 let s = import ./src-for-default.nix; in
 
@@ -13,7 +13,7 @@ stdenv.mkDerivation rec {
   buildInputs =
     [ xorg.libX11 pkgconfig pcre GStreamer glib libxml2 aspell cairo
       xorg.libXpm imlib2 xosd xorg.libXt xorg.libXext xorg.libXi libnotify
-      gtk pango
+      gtk pango enchant
     ];
 
   preConfigure = ''
diff --git a/pkgs/applications/misc/xneur/src-for-default.nix b/pkgs/applications/misc/xneur/src-for-default.nix
index 497d2adfd2c2..04a22cea79ab 100644
--- a/pkgs/applications/misc/xneur/src-for-default.nix
+++ b/pkgs/applications/misc/xneur/src-for-default.nix
@@ -1,9 +1,9 @@
 rec {
-   version="0.10.0";
-   name="xneur-0.10.0";
-   hash="1jh40awnc5bvdj07jv99ymiln8nzr5ac5ahz9v4w0m560b7qq48f";
+   version="0.11.1";
+   name="xneur-0.11.1";
+   hash="12r2wv1glnx3ilqkrypff9r3mxzk1m3yma3khmam1b0z32lfbxxx";
    url="http://dists.xneur.ru/release-${version}/tgz/xneur-${version}.tar.bz2";
-   advertisedUrl="http://dists.xneur.ru/release-0.10.0/tgz/xneur-0.10.0.tar.bz2";
+   advertisedUrl="http://dists.xneur.ru/release-0.11.1/tgz/xneur-0.11.1.tar.bz2";
   
   
 }
diff --git a/pkgs/applications/networking/browsers/chromium/default.nix b/pkgs/applications/networking/browsers/chromium/default.nix
index caa8430f0cd2..db8adeeb45fc 100644
--- a/pkgs/applications/networking/browsers/chromium/default.nix
+++ b/pkgs/applications/networking/browsers/chromium/default.nix
@@ -1,61 +1,37 @@
-{ stdenv
-, fetchurl
-, ffmpeg
-, cairo
-, pango
-, glib
-, libXrender
-, libXScrnSaver
-, gtk
-, nspr
-, nss
-, fontconfig
-, freetype
-, alsaLib
-, libX11
-, GConf
-, libXext
-, libXt
-, atk
-, makeWrapper
-, unzip
-, expat
-, zlib
-, libjpeg
-, bzip2
-, libpng
-, dbus
-, dbus_glib
-, patchelf
-, cups
-, libgcrypt
-}:
+{ GConf, alsaLib, atk, bzip2, cairo, cups, dbus, dbus_glib,
+  expat, fetchurl, ffmpeg, fontconfig, freetype, glib, gtk,
+  libX11, libXScrnSaver, libXdamage, libXext, libXrender, libXt,
+  libgcrypt, libjpeg, libpng, makeWrapper, nspr, nss, pango,
+  patchelf, stdenv, unzip, zlib }:
 
 assert stdenv.system == "i686-linux" || stdenv.system == "x86_64-linux" ;
 
 stdenv.mkDerivation rec {
   name = "chrome-${version}";
   version = "65039";
-  src = 
-    if stdenv.system == "x86_64-linux" then 
+  src =
+    if stdenv.system == "x86_64-linux" then
       fetchurl {
         url = "http://build.chromium.org/buildbot/snapshots/chromium-rel-linux-64/${version}/chrome-linux.zip";
         sha256 = "1ad7kwd1w1958mb3pwzhshawrf2nlxdsf0gy7d2q4qnx5d809vws";
-      } 
-    else if stdenv.system == "i686-linux" then 
+      }
+    else if stdenv.system == "i686-linux" then
       fetchurl {
         url = "http://build.chromium.org/buildbot/snapshots/chromium-rel-linux/${version}/chrome-linux.zip";
         sha256 = "06hz3gvv3623ldrj141w3mnzw049yylvv9b9q5r6my8icm722phf";
-      } 
+      }
     else throw "Chromium is not supported on this platform.";
 
   phases = "unpackPhase installPhase";
 
   buildInputs = [makeWrapper unzip];
 
-  libPath = 
+  libPath =
     stdenv.lib.makeLibraryPath
-       [ stdenv.gcc.libc stdenv.gcc.gcc ffmpeg cairo pango glib libXrender gtk nspr nss fontconfig freetype alsaLib libX11 GConf libXext atk libXt expat zlib libjpeg bzip2 libpng libXScrnSaver dbus dbus_glib cups libgcrypt] ;
+       [ GConf alsaLib atk bzip2 cairo cups dbus dbus_glib expat
+         ffmpeg fontconfig freetype glib gtk libX11 libXScrnSaver
+         libXdamage libXext libXrender libXt libgcrypt libjpeg libpng
+         nspr nss pango stdenv.gcc.gcc zlib stdenv.gcc.libc ];
 
   installPhase = ''
     ensureDir $out/bin
@@ -64,8 +40,7 @@ stdenv.mkDerivation rec {
 
     cp -R * $out/chrome
     ln -s $out/chrome/chrome $out/bin/chrome
-    ${patchelf}/bin/patchelf --interpreter "$(cat $NIX_GCC/nix-support/dynamic-linker)" --set-rpath ${libPath}:$out/lib:${stdenv.gcc.gcc}/lib64:${stdenv.gcc.gcc}/lib $out/chrome/chrome 
-        
+    ${patchelf}/bin/patchelf --interpreter "$(cat $NIX_GCC/nix-support/dynamic-linker)" --set-rpath ${libPath}:$out/lib:${stdenv.gcc.gcc}/lib64:${stdenv.gcc.gcc}/lib $out/chrome/chrome
 
     ln -s ${nss}/lib/libsmime3.so $out/lib/libsmime3.so.1d
     ln -s ${nss}/lib/libnssutil3.so $out/lib/libnssutil3.so.1d
diff --git a/pkgs/applications/networking/ekiga/default.nix b/pkgs/applications/networking/ekiga/default.nix
index 46af2275c37b..d411c3b0f57c 100644
--- a/pkgs/applications/networking/ekiga/default.nix
+++ b/pkgs/applications/networking/ekiga/default.nix
@@ -3,7 +3,7 @@ x@{builderDefsPackage
   , perl, perlXMLParser, evolution_data_server, gnome_doc_utils, avahi
   , libsigcxx, gtk, dbus_glib, libnotify, libXext, xextproto, automake
   , autoconf, pkgconfig, libxml2, videoproto, unixODBC, db4, nspr, nss, zlib
-  , libXrandr, randrproto, which, libxslt
+  , libXrandr, randrproto, which, libxslt, libtasn1
   , ...}:
 builderDefsPackage
 (a :  
diff --git a/pkgs/applications/networking/instant-messengers/gajim/default.nix b/pkgs/applications/networking/instant-messengers/gajim/default.nix
index 2d0b8fa01058..bca70d14c008 100644
--- a/pkgs/applications/networking/instant-messengers/gajim/default.nix
+++ b/pkgs/applications/networking/instant-messengers/gajim/default.nix
@@ -2,7 +2,7 @@ a :
 let 
   fetchurl = a.fetchurl;
 
-  version = a.lib.attrByPath ["version"] "0.14" a; 
+  version = a.lib.attrByPath ["version"] "0.14.1" a; 
   buildInputs = with a; [
     python pyGtkGlade gtk perl intltool dbus gettext
     pkgconfig makeWrapper libglade pyopenssl libXScrnSaver
@@ -14,7 +14,7 @@ in
 rec {
   src = fetchurl {
     url = "http://www.gajim.org/downloads/0.14/gajim-${version}.tar.gz";
-    sha256 = "3dc31b76f5e019515947b81685ec0e62ca20318b13cb80df4f4d7a045242d5bd";
+    sha256 = "ef757572acf3f3d59408fd95b7ec99bc0e39c5b8c66bc61c78ba65e71c3d8e18";
   };
 
   inherit buildInputs;
diff --git a/pkgs/applications/science/electronics/verilog/default.nix b/pkgs/applications/science/electronics/verilog/default.nix
index 8f48879f76a3..a4c803e2952c 100644
--- a/pkgs/applications/science/electronics/verilog/default.nix
+++ b/pkgs/applications/science/electronics/verilog/default.nix
@@ -4,7 +4,7 @@ stdenv.mkDerivation rec {
   name = "verilog-0.9.3";
 
   src = fetchurl {
-    url = "mirror://sourceforce/${name}.tar.gz";
+    url = "mirror://sourceforge/iverilog/${name}.tar.gz";
     sha256 = "dd68c8ab874a93805d1e93fa76ee1e91fc0c7b20822ded3e57b6536cd8c0d1ba";
   };
 
diff --git a/pkgs/applications/science/logic/cvc3/default.nix b/pkgs/applications/science/logic/cvc3/default.nix
new file mode 100644
index 000000000000..9bb8f8cde4ca
--- /dev/null
+++ b/pkgs/applications/science/logic/cvc3/default.nix
@@ -0,0 +1,54 @@
+x@{builderDefsPackage
+  , flex, bison, gmp, perl
+  , ...}:
+builderDefsPackage
+(a :  
+let 
+  helperArgNames = ["stdenv" "fetchurl" "builderDefsPackage"] ++ 
+    ["gmp"];
+
+  buildInputs = (map (n: builtins.getAttr n x)
+    (builtins.attrNames (builtins.removeAttrs x helperArgNames)))
+    ++ [(a.lib.overrideDerivation x.gmp (y: {dontDisableStatic=true;}))];
+  sourceInfo = rec {
+    baseName="cvc3";
+    version="2.2";
+    name="${baseName}-${version}";
+    url="http://www.cs.nyu.edu/acsys/cvc3/releases/${version}/${name}.tar.gz";
+    hash="1dw12d5vrixfr6l9j6j7026vrr22zb433xyl6n5yxx4hgfywi0ji";
+  };
+in
+rec {
+  src = a.fetchurl {
+    url = sourceInfo.url;
+    sha256 = sourceInfo.hash;
+  };
+
+  inherit (sourceInfo) name version;
+  inherit buildInputs;
+
+  /* doConfigure should be removed if not needed */
+  phaseNames = ["fixPaths" "doConfigure" "doMakeInstall"];
+  fixPaths = a.fullDepEntry (''
+    sed -e "s@ /bin/bash@bash@g" -i Makefile.std
+    find . -exec sed -e "s@/usr/bin/perl@${perl}/bin/perl@g" -i '{}' ';'
+  '') ["minInit" "doUnpack"];
+      
+  meta = {
+    description = "A prover for satisfiability modulo theory (SMT)";
+    maintainers = with a.lib.maintainers;
+    [
+      raskin
+    ];
+    platforms = with a.lib.platforms;
+      linux;
+    license = "free-noncopyleft";
+    homepage = "http://www.cs.nyu.edu/acsys/cvc3/index.html";
+  };
+  passthru = {
+    updateInfo = {
+      downloadPage = "http://www.cs.nyu.edu/acsys/cvc3/download.html";
+    };
+  };
+}) x
+
diff --git a/pkgs/applications/science/logic/iprover/default.nix b/pkgs/applications/science/logic/iprover/default.nix
new file mode 100644
index 000000000000..7bfd8dff12e3
--- /dev/null
+++ b/pkgs/applications/science/logic/iprover/default.nix
@@ -0,0 +1,58 @@
+x@{builderDefsPackage
+  , ocaml, eprover
+  , ...}:
+builderDefsPackage
+(a :  
+let 
+  helperArgNames = ["stdenv" "fetchurl" "builderDefsPackage"] ++ 
+    [];
+
+  buildInputs = map (n: builtins.getAttr n x)
+    (builtins.attrNames (builtins.removeAttrs x helperArgNames));
+  sourceInfo = rec {
+    baseName="iprover";
+    version="0.8.1";
+    name="${baseName}_v${version}";
+    url="${baseName}.googlecode.com/files/${name}.tar.gz";
+    hash="15qn523w4l296np5rnkwi50a5x2xqz0kaza7bsh9bkazph7jma7w";
+  };
+in
+rec {
+  src = a.fetchurl {
+    url = sourceInfo.url;
+    sha256 = sourceInfo.hash;
+  };
+
+  inherit (sourceInfo) name version;
+  inherit buildInputs;
+
+  /* doConfigure should be removed if not needed */
+  phaseNames = ["doConfigure" "doMake" "doDeploy"];
+  configureCommand = "sh configure";
+  doDeploy = a.fullDepEntry (''
+    ensureDir "$out/bin"
+    cp iproveropt "$out/bin"
+
+    ensureDir "$out/share/${name}"
+    cp *.p "$out/share/${name}"
+    echo -e "#! /bin/sh\\n$out/bin/iproveropt --clausifier \"${eprover}/bin/eprover\" --clausifier_options \" --tstp-format --silent --cnf \" \"\$@\"" > "$out"/bin/iprover
+    chmod a+x  "$out"/bin/iprover
+  '') ["defEnsureDir" "minInit" "doMake"];
+      
+  meta = {
+    description = "An automated first-order logic theorem prover";
+    maintainers = with a.lib.maintainers;
+    [
+      raskin
+    ];
+    platforms = with a.lib.platforms;
+      linux;
+    license = "GPLv3";
+  };
+  passthru = {
+    updateInfo = {
+      downloadPage = "http://code.google.com/p/iprover/downloads/list";
+    };
+  };
+}) x
+
diff --git a/pkgs/applications/science/logic/isabelle/default.nix b/pkgs/applications/science/logic/isabelle/default.nix
index 2471aa8b594c..b9e756e0423b 100644
--- a/pkgs/applications/science/logic/isabelle/default.nix
+++ b/pkgs/applications/science/logic/isabelle/default.nix
@@ -3,7 +3,7 @@
 
 let
   pname = "Isabelle";
-  version = "2009-1";
+  version = "2009-2";
   name = "${pname}${version}";
   theories = ["HOL" "FOL" "ZF"];
 in
@@ -13,7 +13,7 @@ stdenv.mkDerivation {
 
   src = fetchurl {
     url = "http://www.cl.cam.ac.uk/research/hvg/${pname}/dist/${name}.tar.gz";
-    sha256 = "43ad7794e8b4214b3ace49fc136a69ed6cc65ead02831ae6071f846ecbe56f68";
+    sha256 = "f92a275b78bd8844de47a5902e339b58f3b768c07a7fb19d8e606b68499d5ac4";
   };
 
   buildInputs = [ perl polyml nettools ];
diff --git a/pkgs/applications/science/logic/isabelle/settings.patch b/pkgs/applications/science/logic/isabelle/settings.patch
index 15a70944087b..dc9c611d4886 100644
--- a/pkgs/applications/science/logic/isabelle/settings.patch
+++ b/pkgs/applications/science/logic/isabelle/settings.patch
@@ -6,7 +6,7 @@ diff -Naur Isabelle2009-1/etc/settings Isabelle2009-1-patched/etc/settings
  
  # Poly/ML 5.x (automated settings)
 -POLY_HOME="$(type -p poly)"; [ -n "$POLY_HOME" ] && POLY_HOME="$(dirname "$POLY_HOME")"
- ML_PLATFORM=$("$ISABELLE_HOME/lib/scripts/polyml-platform")
+ ML_PLATFORM="$ISABELLE_PLATFORM"
 -ML_HOME=$(choosefrom \
 -  "$ISABELLE_HOME/contrib/polyml/$ML_PLATFORM" \
 -  "$ISABELLE_HOME/../polyml/$ML_PLATFORM" \
diff --git a/pkgs/applications/science/logic/leo2/default.nix b/pkgs/applications/science/logic/leo2/default.nix
new file mode 100644
index 000000000000..eb3a13593480
--- /dev/null
+++ b/pkgs/applications/science/logic/leo2/default.nix
@@ -0,0 +1,62 @@
+x@{builderDefsPackage
+  , ocaml, eprover
+  , ...}:
+builderDefsPackage
+(a :  
+let 
+  helperArgNames = ["stdenv" "fetchurl" "builderDefsPackage"] ++ 
+    ["eprover"];
+
+  buildInputs = map (n: builtins.getAttr n x)
+    (builtins.attrNames (builtins.removeAttrs x helperArgNames));
+  sourceInfo = rec {
+    baseName="leo2";
+    version="1.2.6";
+    name="${baseName}_v${version}";
+    url="http://www.ags.uni-sb.de/~leo/${name}.tgz";
+    hash="0gjgcm6nb9kzdl0y72sgvf2w2q92s1ix70lh6wjz9lj2qdf7gi1z";
+  };
+in
+rec {
+  src = a.fetchurl {
+    url = sourceInfo.url;
+    sha256 = sourceInfo.hash;
+  };
+
+  inherit (sourceInfo) name version;
+  inherit buildInputs;
+
+  phaseNames = ["makeInstallationDir" "doUnpack" "doMake" "doFinalize"];
+
+  makeInstallationDir = a.fullDepEntry (''
+    ensureDir "$out/share/leo2/build-dir"
+    cd "$out/share/leo2/build-dir"
+  '') ["minInit" "defEnsureDir"];
+
+  goSrcDir = "cd src/";
+
+  doFinalize = a.fullDepEntry (''
+    ensureDir "$out/bin"
+    echo -e "#! /bin/sh\\n$PWD/../bin/leo --atprc $out/etc/leoatprc \"\$@\"\\n" > "$out/bin/leo"
+    chmod a+x "$out/bin/leo"
+    ensureDir "$out/etc"
+    echo -e "e = ${eprover}/bin/eprover\\nepclextract = ${eprover}/bin/epclextract" > "$out/etc/leoatprc"
+  '') ["minInit" "doMake" "defEnsureDir"];
+
+  meta = {
+    description = "A high-performance typed higher order prover";
+    maintainers = with a.lib.maintainers;
+    [
+      raskin
+    ];
+    platforms = with a.lib.platforms;
+      linux;
+    license = "BSD";
+  };
+  passthru = {
+    updateInfo = {
+      downloadPage = "http://www.ags.uni-sb.de/~leo/download.html";
+    };
+  };
+}) x
+
diff --git a/pkgs/applications/science/logic/minisat/default.nix b/pkgs/applications/science/logic/minisat/default.nix
new file mode 100644
index 000000000000..34a6bd7ceff3
--- /dev/null
+++ b/pkgs/applications/science/logic/minisat/default.nix
@@ -0,0 +1,57 @@
+x@{builderDefsPackage
+  , zlib
+  , ...}:
+builderDefsPackage
+(a :  
+let 
+  helperArgNames = ["stdenv" "fetchurl" "builderDefsPackage"] ++ 
+    [];
+
+  buildInputs = map (n: builtins.getAttr n x)
+    (builtins.attrNames (builtins.removeAttrs x helperArgNames));
+  sourceInfo = rec {
+    baseName="minisat";
+    version="2.2.0";
+    name="${baseName}-${version}";
+    url="http://minisat.se/downloads/${name}.tar.gz";
+    hash="023qdnsb6i18yrrawlhckm47q8x0sl7chpvvw3gssfyw3j2pv5cj";
+  };
+in
+rec {
+  src = a.fetchurl {
+    url = sourceInfo.url;
+    sha256 = sourceInfo.hash;
+  };
+
+  inherit (sourceInfo) name version;
+  inherit buildInputs;
+
+  phaseNames = ["setVars" "doMake" "doDeploy"];
+  goSrcDir = "cd simp";
+  doDeploy = a.fullDepEntry (''
+    ensureDir "$out"/bin
+    cp minisat_static "$out/bin"/minisat
+  '') ["minInit" "defEnsureDir"];
+  makeFlags = ["rs"];
+  setVars = a.fullDepEntry (''
+    export MROOT=$PWD/../
+  '') ["doUnpack"];
+      
+  meta = {
+    description = "A compact and readable SAT-solver";
+    maintainers = with a.lib.maintainers;
+    [
+      raskin
+    ];
+    platforms = with a.lib.platforms;
+      linux;
+    license = "MIT";
+    homepage = "http://minisat.se/";
+  };
+  passthru = {
+    updateInfo = {
+      downloadPage = "http://minisat.se/MiniSat.html";
+    };
+  };
+}) x
+
diff --git a/pkgs/applications/science/logic/opensmt/default.nix b/pkgs/applications/science/logic/opensmt/default.nix
new file mode 100644
index 000000000000..165c8a2f1484
--- /dev/null
+++ b/pkgs/applications/science/logic/opensmt/default.nix
@@ -0,0 +1,51 @@
+x@{builderDefsPackage
+  , automake, libtool, autoconf, intltool, perl
+  , gmpxx, flex, bison
+  , ...}:
+builderDefsPackage
+(a :  
+let 
+  helperArgNames = ["stdenv" "fetchurl" "builderDefsPackage"] ++ 
+    [];
+
+  buildInputs = map (n: builtins.getAttr n x)
+    (builtins.attrNames (builtins.removeAttrs x helperArgNames));
+  sourceInfo = rec {
+    baseName="opensmt";
+    version="20101017";
+    name="${baseName}-${version}";
+    filename="${baseName}_src_${version}";
+    url="${baseName}.googlecode.com/files/${filename}.tgz";
+    hash="0xrky7ixjaby5x026v7hn72xh7d401w9jhccxjn0khhn1x87p2w1";
+  };
+in
+rec {
+  src = a.fetchurl {
+    url = sourceInfo.url;
+    sha256 = sourceInfo.hash;
+  };
+
+  inherit (sourceInfo) name version;
+  inherit buildInputs;
+
+  /* doConfigure should be removed if not needed */
+  phaseNames = ["doAutotools" "doConfigure" "doMakeInstall"];
+      
+  meta = {
+    description = "A satisfiability modulo theory (SMT) solver";
+    maintainers = with a.lib.maintainers;
+    [
+      raskin
+    ];
+    platforms = with a.lib.platforms;
+      linux;
+    license = "GPLv3";
+    homepage = "http://code.google.com/p/opensmt/";
+  };
+  passthru = {
+    updateInfo = {
+      downloadPage = "http://code.google.com/p/opensmt/downloads/list";
+    };
+  };
+}) x
+
diff --git a/pkgs/applications/science/logic/satallax/default.nix b/pkgs/applications/science/logic/satallax/default.nix
new file mode 100644
index 000000000000..4bf6e53737e9
--- /dev/null
+++ b/pkgs/applications/science/logic/satallax/default.nix
@@ -0,0 +1,72 @@
+x@{builderDefsPackage
+  , sbcl, zlib
+  , ...}:
+builderDefsPackage
+(a :  
+let 
+  helperArgNames = ["stdenv" "fetchurl" "builderDefsPackage"] ++ 
+    [];
+
+  buildInputs = map (n: builtins.getAttr n x)
+    (builtins.attrNames (builtins.removeAttrs x helperArgNames));
+  sourceInfo = rec {
+    baseName="satallax";
+    version="1.4";
+    name="${baseName}-${version}";
+    url="http://www.ps.uni-saarland.de/~cebrown/satallax/downloads/${name}.tar.gz";
+    hash="0l8dq4nyfw2bdsyqmgb4v6fjw3739p8nqv4bh2gh2924ibzrq5fc";
+  };
+in
+rec {
+  src = a.fetchurl {
+    url = sourceInfo.url;
+    sha256 = sourceInfo.hash;
+  };
+
+  inherit (sourceInfo) name version;
+  inherit buildInputs;
+
+  phaseNames = ["doDeployMinisat" "doDeploy"];
+
+  doDeployMinisat = a.fullDepEntry (''
+    (
+      cd minisat/simp
+      make
+    )
+
+    ensureDir "$out/bin"
+    cp minisat/simp/minisat "$out/bin"
+
+    echo "(setq *minisat-binary* \"$out/bin/minisat\")" > config.lisp
+
+  '') ["defEnsureDir" "minInit" "addInputs" "doUnpack"];
+  doDeploy = a.fullDepEntry (''
+    ensureDir "$out/share/satallax/build-dir"
+    cp -r * "$out/share/satallax/build-dir"
+    cd  "$out/share/satallax/build-dir"
+
+    sbcl --load make.lisp
+    ! ( ./test | grep ERROR )
+    
+    ensureDir "$out/bin"
+    cp bin/satallax "$out/bin"
+  '') ["defEnsureDir" "minInit" "addInputs" "doUnpack"];
+      
+  meta = {
+    description = "A higher-order logic prover";
+    maintainers = with a.lib.maintainers;
+    [
+      raskin
+    ];
+    platforms = with a.lib.platforms;
+      unix;
+    license = "free-noncopyleft";
+    homepage = "http://www.ps.uni-saarland.de/~cebrown/satallax/";
+  };
+  passthru = {
+    updateInfo = {
+      downloadPage = "http://www.ps.uni-saarland.de/~cebrown/satallax/";
+    };
+  };
+}) x
+
diff --git a/pkgs/applications/science/logic/spass/default.nix b/pkgs/applications/science/logic/spass/default.nix
new file mode 100644
index 000000000000..2c6144baf0e8
--- /dev/null
+++ b/pkgs/applications/science/logic/spass/default.nix
@@ -0,0 +1,49 @@
+x@{builderDefsPackage
+  , ...}:
+builderDefsPackage
+(a :  
+let 
+  helperArgNames = ["stdenv" "fetchurl" "builderDefsPackage"] ++ 
+    [];
+
+  buildInputs = map (n: builtins.getAttr n x)
+    (builtins.attrNames (builtins.removeAttrs x helperArgNames));
+  sourceInfo = rec {
+    baseName="spass";
+    baseVersion="3";
+    minorVersion="7";
+    version="${baseVersion}.${minorVersion}";
+    name="${baseName}-${version}";
+    url="http://www.spass-prover.org/download/sources/${baseName}${baseVersion}${minorVersion}.tgz";
+    hash="1k5a98kr3vzga54zs7slwwaaf6v6agk1yfcayd8bl55q15g7xihk";
+  };
+in
+rec {
+  src = a.fetchurl {
+    url = sourceInfo.url;
+    sha256 = sourceInfo.hash;
+  };
+
+  inherit (sourceInfo) name version;
+  inherit buildInputs;
+
+  /* doConfigure should be removed if not needed */
+  phaseNames = ["doConfigure" "doMakeInstall"];
+      
+  meta = {
+    description = "An automated theorem preover for FOL";
+    maintainers = with a.lib.maintainers;
+    [
+      raskin
+    ];
+    platforms = with a.lib.platforms;
+      linux;
+    license = "BSD";
+  };
+  passthru = {
+    updateInfo = {
+      downloadPage = "http://www.spass-prover.org/download/index.html";
+    };
+  };
+}) x
+
diff --git a/pkgs/applications/science/math/pari/default.nix b/pkgs/applications/science/math/pari/default.nix
new file mode 100644
index 000000000000..62763ac2198a
--- /dev/null
+++ b/pkgs/applications/science/math/pari/default.nix
@@ -0,0 +1,50 @@
+x@{builderDefsPackage
+  , perl, zlib, gmp, readline
+  , ...}:
+builderDefsPackage
+(a :  
+let 
+  helperArgNames = ["stdenv" "fetchurl" "builderDefsPackage"] ++ 
+    [];
+
+  buildInputs = map (n: builtins.getAttr n x)
+    (builtins.attrNames (builtins.removeAttrs x helperArgNames));
+  sourceInfo = rec {
+    baseName="pari";
+    version="2.3.5";
+    name="${baseName}-${version}";
+    url="http://pari.math.u-bordeaux.fr/pub/pari/unix/${name}.tar.gz";
+    hash="124xr2jdz2c15v45i1zvgylng44lhf23729a1mk7ci1vywdaxpa7";
+  };
+in
+rec {
+  src = a.fetchurl {
+    url = sourceInfo.url;
+    sha256 = sourceInfo.hash;
+  };
+
+  inherit (sourceInfo) name version;
+  inherit buildInputs;
+
+  /* doConfigure should be removed if not needed */
+  phaseNames = ["doConfigure" "doMakeInstall"];
+  configureCommand="./Configure";
+      
+  meta = {
+    description = "Computer algebra system for high-performance number theory computations";
+    maintainers = with a.lib.maintainers;
+    [
+      raskin
+    ];
+    platforms = with a.lib.platforms;
+      linux;
+    license = "GPLv2+";
+    homepage = "http://pari.math.u-bordeaux.fr/";
+  };
+  passthru = {
+    updateInfo = {
+      downloadPage = "http://pari.math.u-bordeaux.fr/download.html";
+    };
+  };
+}) x
+
diff --git a/pkgs/applications/science/math/singular/default.nix b/pkgs/applications/science/math/singular/default.nix
new file mode 100644
index 000000000000..dfc97eca8ebe
--- /dev/null
+++ b/pkgs/applications/science/math/singular/default.nix
@@ -0,0 +1,61 @@
+x@{builderDefsPackage
+  , gmp, bison, perl, autoconf, ncurses, readline
+  , coreutils
+  , ...}:
+builderDefsPackage
+(a :  
+let 
+  helperArgNames = ["stdenv" "fetchurl" "builderDefsPackage"] ++ 
+    [];
+
+  buildInputs = map (n: builtins.getAttr n x)
+    (builtins.attrNames (builtins.removeAttrs x helperArgNames));
+  sourceInfo = rec {
+    baseName="Singular";
+    version="3-1-2";
+    revision="-1";
+    name="${baseName}-${version}${revision}";
+    url="http://www.mathematik.uni-kl.de/ftp/pub/Math/Singular/SOURCES/${version}/${name}.tar.gz";
+    hash="04f9i1xar0r7qrrbfki1h9rrmx5y2xg4w7rrvlbx05v2dy6s8djv";
+  };
+in
+rec {
+  src = a.fetchurl {
+    url = sourceInfo.url;
+    sha256 = sourceInfo.hash;
+  };
+
+  inherit (sourceInfo) name version;
+  inherit buildInputs;
+
+  /* doConfigure should be removed if not needed */
+  phaseNames = ["doFixPaths" "doConfigure" "doMakeInstall" "fixInstall"];
+  doFixPaths = a.fullDepEntry (''
+    find . -exec sed -e 's@/bin/rm@${a.coreutils}&@g' -i '{}' ';'
+    find . -exec sed -e 's@/bin/uname@${a.coreutils}&@g' -i '{}' ';'
+  '') ["minInit" "doUnpack"];
+  fixInstall = a.fullDepEntry (''
+    rm -rf "$out/LIB"
+    cp -r Singular/LIB "$out"
+    ensureDir "$out/bin"
+    ln -s "$out"/*/Singular "$out/bin"
+  '') ["minInit" "defEnsureDir"];
+      
+  meta = {
+    description = "A CAS for polynomial computations";
+    maintainers = with a.lib.maintainers;
+    [
+      raskin
+    ];
+    platforms = with a.lib.platforms;
+      linux;
+    license = "GPLv3"; # Or GPLv2 at your option - but not GPLv4
+    homepage = "http://www.singular.uni-kl.de/index.php";
+  };
+  passthru = {
+    updateInfo = {
+      downloadPage = "http://www.mathematik.uni-kl.de/ftp/pub/Math/Singular/SOURCES/";
+    };
+  };
+}) x
+
diff --git a/pkgs/applications/version-management/subversion/default.nix b/pkgs/applications/version-management/subversion/default.nix
index 0c94d96a999d..95d21e2f7a6c 100644
--- a/pkgs/applications/version-management/subversion/default.nix
+++ b/pkgs/applications/version-management/subversion/default.nix
@@ -19,13 +19,13 @@ assert compressionSupport -> neon.compressionSupport;
 
 stdenv.mkDerivation rec {
 
-  version = "1.6.12";
+  version = "1.6.15";
 
   name = "subversion-${version}";
 
   src = fetchurl {
     url = "http://subversion.tigris.org/downloads/${name}.tar.bz2";
-    sha1 = "b4ae7c75abbbdade8b2c9122ca7e2e26c6468a82";
+    sha1 = "b6fadf944a94b86f989f07bc2d781be41df017bf";
   };
 
   buildInputs = [ zlib apr aprutil sqlite ]
@@ -34,12 +34,11 @@ stdenv.mkDerivation rec {
     ++ stdenv.lib.optional perlBindings perl;
 
   configureFlags = ''
-    --disable-keychain
     ${if bdbSupport then "--with-berkeley-db" else "--without-berkeley-db"}
     ${if httpServer then "--with-apxs=${httpd}/bin/apxs" else "--without-apxs"}
     ${if pythonBindings || perlBindings then "--with-swig=${swig}" else "--without-swig"}
     ${if javahlBindings then "--enable-javahl --with-jdk=${jdk}" else ""}
-    ${if stdenv.isDarwin then "--enable-keychain" else ""}
+    ${if stdenv.isDarwin then "--enable-keychain" else "--disable-keychain"}
     --with-zlib=${zlib}
     --with-sqlite=${sqlite}
   '';
diff --git a/pkgs/applications/video/kmplayer/default.nix b/pkgs/applications/video/kmplayer/default.nix
index 51ae56cc8e4e..a665670d9c98 100644
--- a/pkgs/applications/video/kmplayer/default.nix
+++ b/pkgs/applications/video/kmplayer/default.nix
@@ -1,10 +1,10 @@
 {stdenv, fetchurl, lib, cmake, qt4, perl, gettext, pango, gtk, dbus_glib, kdelibs, automoc4, phonon}:
 
 stdenv.mkDerivation {
-  name = "kmplayer-0.11.2a";
+  name = "kmplayer-0.11.2b";
   src = fetchurl {
-    url = http://kmplayer.kde.org/pkgs/kmplayer-0.11.2a.tar.bz2;
-    sha256 = "1ddrghwsz11nhdxkca7jz0q2z1ajdb47n325h32jp5q7rm2qz80k";
+    url = http://kmplayer.kde.org/pkgs/kmplayer-0.11.2b.tar.bz2;
+    sha256 = "00a1pw31p849cbgskyfi8jni9ar6yi2ivr625vza2za6apdxvkr7";
   };
   builder = ./builder.sh;
   buildInputs = [ cmake qt4 perl gettext stdenv.gcc.libc pango gtk dbus_glib kdelibs automoc4 phonon ];
diff --git a/pkgs/applications/virtualization/virtualbox/guest-additions/default.nix b/pkgs/applications/virtualization/virtualbox/guest-additions/default.nix
index bb9b8eea08c4..eb8a91551426 100644
--- a/pkgs/applications/virtualization/virtualbox/guest-additions/default.nix
+++ b/pkgs/applications/virtualization/virtualbox/guest-additions/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, lib, patchelf, cdrkit, kernel
+{ stdenv, fetchurl, lib, patchelf, cdrkit, kernel, which, makeWrapper
 , libX11, libXt, libXext, libXmu, libXcomposite, libXfixes, libXrandr, libXcursor}:
 
 stdenv.mkDerivation {
@@ -8,7 +8,14 @@ stdenv.mkDerivation {
     sha256 = "1pyfgrcdmw6zf3yxgzcd8c5qzqqn62bz4085ka453gfmi9d65lys";
   };
   KERN_DIR = "${kernel}/lib/modules/*/build";
-  buildInputs = [ patchelf cdrkit ];
+  buildInputs = [ patchelf cdrkit makeWrapper ];
+
+  installPhase = ''
+    ensureDir $out
+    cp -r install/* $out
+
+  '';
+  
   buildCommand = ''
     ${if stdenv.system == "i686-linux" then ''
         isoinfo -J -i $src -x /VBoxLinuxAdditions-x86.run > ./VBoxLinuxAdditions-x86.run
@@ -73,6 +80,9 @@ stdenv.mkDerivation {
     install -m 755 bin/VBoxControl $out/bin
     install -m 755 bin/VBoxClient-all $out/bin
 
+    wrapProgram $out/bin/VBoxClient-all \
+            --prefix PATH : "${which}/bin"
+
     # Install OpenGL libraries
     ensureDir $out/lib
     cp -v lib/VBoxOGL*.so $out/lib
diff --git a/pkgs/applications/window-managers/openbox/default.nix b/pkgs/applications/window-managers/openbox/default.nix
new file mode 100644
index 000000000000..016325140e05
--- /dev/null
+++ b/pkgs/applications/window-managers/openbox/default.nix
@@ -0,0 +1,18 @@
+{ stdenv, fetchurl, pkgconfig, glib, pango, libxml2, libXau }:
+
+stdenv.mkDerivation rec {
+  name = "openbox-3-4-11-2";
+
+  buildInputs = [ pkgconfig glib pango libxml2 libXau ];
+
+  src = fetchurl {
+    url = http://openbox.org/dist/openbox/openbox-3.4.11.2.tar.gz;
+    sha256 = "2e7579389c30e6bb08cc721a2c1af512e049fec2670e71715aa1c4e129ec349d";
+  };
+
+  meta = {
+    description = "X window manager for non-desktop embedded systems";
+    homepage = http://openbox.org/;
+    license = "GPLv2+";
+  };
+}
diff --git a/pkgs/build-support/builder-defs/template-auto-callable.nix b/pkgs/build-support/builder-defs/template-auto-callable.nix
index 769b9c1af761..1ff7ed0a96c4 100644
--- a/pkgs/build-support/builder-defs/template-auto-callable.nix
+++ b/pkgs/build-support/builder-defs/template-auto-callable.nix
@@ -10,6 +10,11 @@ let
   buildInputs = map (n: builtins.getAttr n x)
     (builtins.attrNames (builtins.removeAttrs x helperArgNames));
   sourceInfo = rec {
+    baseName="${abort ''Specify package name''}";
+    version="";
+    name="${baseName}-${version}";
+    url="${name}";
+    hash="";
   };
 in
 rec {
@@ -32,6 +37,7 @@ rec {
     ];
     platforms = with a.lib.platforms;
       (abort "Specify platforms");
+    license = "${abort ''Specify license''}";
   };
   passthru = {
     updateInfo = {
diff --git a/pkgs/build-support/vm/default.nix b/pkgs/build-support/vm/default.nix
index b626a61ac688..4e63d8082c3f 100644
--- a/pkgs/build-support/vm/default.nix
+++ b/pkgs/build-support/vm/default.nix
@@ -216,7 +216,7 @@ rec {
       -nographic -no-reboot \
       -net nic,model=virtio \
       -chardev socket,id=samba,path=./samba \
-      -net user,guestfwd=tcp:10.0.2.4:139-chardev:samba \
+      -net user,guestfwd=tcp:10.0.2.4:445-chardev:samba \
       -drive file=$diskImage,if=virtio,boot=on,cache=writeback,werror=report \
       -kernel ${kernel}/bzImage \
       -initrd ${initrd}/initrd \
@@ -247,7 +247,7 @@ rec {
       SMB
 
       rm -f ./samba
-      ${socat}/bin/socat unix-listen:./samba exec:"${samba}/sbin/smbd -s $TMPDIR/smb.conf",nofork > /dev/null 2>&1 &
+      ${socat}/bin/socat unix-listen:./samba exec:"${utillinux}/bin/setsid ${samba}/sbin/smbd -s $TMPDIR/smb.conf",nofork > /dev/null 2>&1 &
       while [ ! -e ./samba ]; do sleep 0.1; done # ugly
     '';
 
@@ -1117,7 +1117,7 @@ rec {
       fullName = "Debian 5.0.5 Lenny (i386)";
       packagesList = fetchurl {
         url = mirror://debian/dists/lenny/main/binary-i386/Packages.bz2;
-        sha256 = "df450198f1597b526281e507e858f614ceafbd1b4f047c8ed994648f3e2ece19";
+        sha256 = "1nzd0r44lnvw2bmshqpbhghs84fxbcr1jkg55d37v4d09gsdmln0";
       };
       urlPrefix = mirror://debian;
       packages = commonDebianPackages;
@@ -1128,7 +1128,7 @@ rec {
       fullName = "Debian 5.0.5 Lenny (amd64)";
       packagesList = fetchurl {
         url = mirror://debian/dists/lenny/main/binary-amd64/Packages.bz2;
-        sha256 = "1817h2ag6fmrlifh1b9kv3zjr5ghknf53f38s1rqwfq6vh0avsig";
+        sha256 = "04hab4ybjilppr1hwnl4k50vr5y88w7zn6v22phfrsrxf23nrlv3";
       };
       urlPrefix = mirror://debian;
       packages = commonDebianPackages;
diff --git a/pkgs/desktops/kde-4.5/default.nix b/pkgs/desktops/kde-4.5/default.nix
index 8ff7e9701990..23be3c981298 100644
--- a/pkgs/desktops/kde-4.5/default.nix
+++ b/pkgs/desktops/kde-4.5/default.nix
@@ -152,10 +152,6 @@ recurseIntoAttrs rec {
   kdepim_runtime = callPackage ./pim-runtime { };
   kdepim = callPackage ./pim { };
 
-  # Experimental 4.5 versions
-  kdepim_runtime45 = callPackage ./pim-runtime45 { };
-  kdepim45 = callPackage ./pim45 { };
-  
 ### DEVELOPMENT
 
   kdebindings = callPackage ./bindings { };
diff --git a/pkgs/desktops/kde-4.5/kde-package/manifest.nix b/pkgs/desktops/kde-4.5/kde-package/manifest.nix
index 5274035ea564..230533aaeb7c 100644
--- a/pkgs/desktops/kde-4.5/kde-package/manifest.nix
+++ b/pkgs/desktops/kde-4.5/kde-package/manifest.nix
@@ -5,102 +5,6 @@ builtins.listToAttrs
   value = "1ng5bi1gmr5lg49c5kyqyjzbjhs4w90c2zlnfcyviv9p3wzfgzbr";
 }
 {
-  name = "oxygen-icons-4.5.1.tar.bz2";
-  value = "1gnz8jrdccw91p2n52my0609h7g9ws55gal3jan2jylz6b0zq6dm";
-}
-{
-  name = "kdelibs-4.5.1.tar.bz2";
-  value = "1xqvrrbwz5i4m6lipg1j97l2yq3kmxsl5j62jkhvp56q7dh85i0d";
-}
-{
-  name = "kdeaccessibility-4.5.1.tar.bz2";
-  value = "0jdd3n61lhabzs2dv6rfv6ksp7cqn5wpj6f2d8z33c354y9lqw24";
-}
-{
-  name = "kdepimlibs-4.5.1.tar.bz2";
-  value = "1dlxnxxay6wbwgcfbkq0xak9z0h1bkh6rvysjx3djmawmwi5aw6b";
-}
-{
-  name = "kdepim-4.4.93.tar.bz2";
-  value = "1xrqmsgbgqpa8qzqadp1hikhn8c1snh5k323kc6a5yqdpnsf2qa0";
-}
-{
-  name = "kdepim-runtime-4.4.93.tar.bz2";
-  value = "18g8dz57pflmri7v013lsn2g4552c35lawcr7jxgig2x05zrwgf7";
-}
-{
-  name = "kdebase-4.5.1.tar.bz2";
-  value = "06g8s3r153hdmxh24s2x98a0fb4lr6d00d4307ibgp7r29w6dklb";
-}
-{
-  name = "kdebase-runtime-4.5.1.tar.bz2";
-  value = "1fjpyxzffl0ravyicgb56sqaw5zkwky98lj9ad6z4rdiysq5v5rz";
-}
-{
-  name = "kdebase-workspace-4.5.1.tar.bz2";
-  value = "0mrx03bsb9qj78k0l04q28gc8l7ky0y0rqdshv4spbmrjfsa03fd";
-}
-{
-  name = "kdebindings-4.5.1.tar.bz2";
-  value = "1j8bf7lwb70jc0m8d2hh6c1z6vgpxbqf47w5pkq58kgan8y3zcsw";
-}
-{
-  name = "kdeartwork-4.5.1.tar.bz2";
-  value = "0fjcx6wwgzxl64s62wv2sf15plx49fck86nwzfbgbmdha1ra2gmi";
-}
-{
-  name = "kdenetwork-4.5.1.tar.bz2";
-  value = "0wzbrhj4bzd4d432qqf5jwfagvxsv3flzdq7jzc449w6ybdgqw6n";
-}
-{
-  name = "kdeedu-4.5.1.tar.bz2";
-  value = "026gdb6q06l9d8v3a0dcynxkdnv9cal1gnnxwdawvc5rky2vp07j";
-}
-{
-  name = "kdesdk-4.5.1.tar.bz2";
-  value = "0kwgd3hxc6jwk7qk67z1jaks9jg04hgh5aywyfs2dc8w2ns1xyhp";
-}
-{
-  name = "kdetoys-4.5.1.tar.bz2";
-  value = "194a6ylxi5jrfh3w3cy6jhdissshswdrv9pnir72z67ca13dvd9s";
-}
-{
-  name = "kdewebdev-4.5.1.tar.bz2";
-  value = "0kgk3wwskvxw0hmzpify5by3mbnyprmy1c0nx44iw85xrk6riss0";
-}
-{
-  name = "kdeutils-4.5.1.tar.bz2";
-  value = "13i13pga3dlhg6bwz6p3wrr8qa0vzhwqg809a0r5yn0kz4icaasq";
-}
-{
-  name = "kdegraphics-4.5.1.tar.bz2";
-  value = "0z0fqqb868ywvdxvd94vp15drkizh59m4arblsx9cj19d157nbwd";
-}
-{
-  name = "kdemultimedia-4.5.1.tar.bz2";
-  value = "1a5rgvznvykislif7igsb3b6xwps2g8s5ifkfj8dbkdvsmavlmjf";
-}
-{
-  name = "kdegames-4.5.1.tar.bz2";
-  value = "1d158z2hqc7i7mh43ajhmsqixdazhjm7pxs6rjala0fcgmqk1lj1";
-}
-{
-  name = "kdeplasma-addons-4.5.1.tar.bz2";
-  value = "17mjk2qdfgcz2l9f00q08dzxkqib8li5bjxawsb7fwzj93jc7lp5";
-}
-{
-  name = "kdeadmin-4.5.1.tar.bz2";
-  value = "011ajsma8s9ay0dsjx383jn8yynkyshlzx6gjw68caxzjhpc0ib2";
-}
-{
-  name = "kdepim-4.4.6.tar.bz2";
-  value = "0pymjjxg8qjiarcbs6saxkkb4n51qlfk4l0pwblhglsvgc4q3wjm";
-}
-{
-  name = "kdepim-runtime-4.4.6.tar.bz2";
-  value = "1y0xxwsq9wlwbkd661i4f1iqvpzg3sbi3lq9dir45fjx406chgmd";
-}
-{
   name = "kdeaccessibility-4.5.2.tar.bz2";
   value = "1iv94vvngxs94vl3ssjq1y2sd50wcc7s7gvngwqj534qjd1fj3a2";
 }
diff --git a/pkgs/desktops/kde-4.5/l10n/default.nix b/pkgs/desktops/kde-4.5/l10n/default.nix
index 18b234b28bc3..6e561726c08c 100644
--- a/pkgs/desktops/kde-4.5/l10n/default.nix
+++ b/pkgs/desktops/kde-4.5/l10n/default.nix
@@ -3,8 +3,8 @@
 let
   overrides = { };
 
-  defaultRelease = "4.5.2";
-  releases = [ "4.5.1" "4.5.2" ];
+  defaultRelease = "4.5.3";
+  releases = [ "4.5.1" "4.5.2" "4.5.3" ];
 
   sanitizeString = replaceChars [ "@" "." ] [ "_" "_" ];
   getOverride = name: attrByPath [name] {} overrides;
diff --git a/pkgs/desktops/kde-4.5/l10n/l10n-manifest.sh b/pkgs/desktops/kde-4.5/l10n/l10n-manifest.sh
index aa41ccd4278b..baa235e0f75f 100755
--- a/pkgs/desktops/kde-4.5/l10n/l10n-manifest.sh
+++ b/pkgs/desktops/kde-4.5/l10n/l10n-manifest.sh
@@ -24,9 +24,6 @@ for i in `cd "${dir}"; ls kde-l10n-*-${release}.tar.bz2`; do
   hash=$(nix-hash --type sha256 --flat --base32 "${dir}/${i}")
   echo "{"
   echo "  lang = \"${lang}\";"
-  if [[ "${lang}" =~ "@" ]]; then
-    echo "  langStripped = \"${lang/@/_}\";"
-  fi
   echo "  sha256 = \"${hash}\";"
   echo "}"
   echo $hash >&2
diff --git a/pkgs/desktops/kde-4.5/l10n/manifest-4.5.3.nix b/pkgs/desktops/kde-4.5/l10n/manifest-4.5.3.nix
new file mode 100644
index 000000000000..b9b69d76a159
--- /dev/null
+++ b/pkgs/desktops/kde-4.5/l10n/manifest-4.5.3.nix
@@ -0,0 +1,222 @@
+[
+{
+  lang = "ar";
+  sha256 = "0i22kwm737ry3l3q9pwmbnv2ln317fz3r1z8x8i6l0czdkj5qxw6";
+}
+{
+  lang = "bg";
+  sha256 = "0qa2x3zz5aaxlm88zvrkglsisc85la6asfh5yiijc9hga27ykp16";
+}
+{
+  lang = "ca";
+  sha256 = "1ip55x72chxs9v1hr8rzi519xhfvkkbv7b4k4pc5nygpdqzj1whh";
+}
+{
+  lang = "ca@valencia";
+  sha256 = "0g8x685a2ndvm9qh2wp6kxdlhbidgsjacw80p488hizgqczakbn7";
+}
+{
+  lang = "cs";
+  sha256 = "19zx1zhd6wrkqmc6qnyj4rsll14difps0dzwnwa56l3h5ir1828v";
+}
+{
+  lang = "da";
+  sha256 = "1q50w3dmxbpczgxgl6n49lc5qqym42r1kz4h7ijqfazb5mwk9zqc";
+}
+{
+  lang = "de";
+  sha256 = "0ff4174szrxm4wn3jmkkzfr3jl0yqxkkqi3g3xj71mazsrsa1ghs";
+}
+{
+  lang = "el";
+  sha256 = "1r5m3d7cc3mi748ckmkky53j3cmw20pibczvkwcs2c65q6l0vcjc";
+}
+{
+  lang = "en_GB";
+  sha256 = "194jdjpqcpi861sxpvqagm8nammwksxyi55i75bw53p8x87i27pv";
+}
+{
+  lang = "eo";
+  sha256 = "1gbmqm9mgmps37pwr7lb140pvrmm24m6aw989qaig27gjjqpmvnx";
+}
+{
+  lang = "es";
+  sha256 = "1hnnk2zvlbppdqqbf1vi2d2c8mpw693bwb6dixba4p542ir7bi8i";
+}
+{
+  lang = "et";
+  sha256 = "0qgv7v93n4mnpcdvjxkdbvyaji1nhgj0nxby5hxrznnvgwbvfzbf";
+}
+{
+  lang = "eu";
+  sha256 = "1rmdak9pgkswrnwdpmgck2lq2cw5v3bjc8vv79mb3kyki901423g";
+}
+{
+  lang = "fi";
+  sha256 = "17s9yqadgjq2dmp28syxzzprya80j0b2l60r293k0bdkdfrgz07p";
+}
+{
+  lang = "fr";
+  sha256 = "15hh7k9dhi2mb27rihjc9dfii1ab8c1i2jbhihmjmb8hd5dm30bx";
+}
+{
+  lang = "fy";
+  sha256 = "0q5vcnimnvl3gmrqj2fr6i7fvw2bd3lrg77s03hf25crkfsd7lr8";
+}
+{
+  lang = "ga";
+  sha256 = "0cy8a0jvb0w35i3482a86rdnbbyswww9dlb57rjhw6mqwa3qp6j6";
+}
+{
+  lang = "gl";
+  sha256 = "1xdzhf6kwkz2r77i86grcdbrwxm37shaif2vjhhwgimplsh7z5s3";
+}
+{
+  lang = "gu";
+  sha256 = "1sky7kc5prg1bnkh2nhriqs33qa7rlfds9k31sf24x4jhfn75lji";
+}
+{
+  lang = "he";
+  sha256 = "0bkfwilsvvaiklgnfnyf6p1dyamwj310b9xkrdga7szrsfgrviip";
+}
+{
+  lang = "hi";
+  sha256 = "0fxz77pfv9ayx43pf037bpllhjwxdhsggl7yq5qg28d233602sxc";
+}
+{
+  lang = "hr";
+  sha256 = "16nkrdh1y9mk5rkdyl70i9dh8xam2fr23lz7p0qmjf66npjnvcz1";
+}
+{
+  lang = "hu";
+  sha256 = "141xhsxv2bk81sx3lzzd78a9qzp0qzrcp32i9d4bkmyppwiia9h2";
+}
+{
+  lang = "ia";
+  sha256 = "1hgzk2yfwjqils8zd1rv1djdjsj932mqxcl4bnfv3az4vl0ly405";
+}
+{
+  lang = "id";
+  sha256 = "12hqichrl7i3fjkqyhc2c3dp34bhjl0ps4g3vpc0m59w2vwyv4sw";
+}
+{
+  lang = "is";
+  sha256 = "1ydx8sx7dwdzava4y3aj0vfd23nfqiwq5m9aw3ayaliipacrq1dg";
+}
+{
+  lang = "it";
+  sha256 = "0z7zig48ixqs18dyi6q28k8dwn2a2giwsndignd5ck7xbi5h7rn8";
+}
+{
+  lang = "ja";
+  sha256 = "0mpch19nk8pqizq2zcs8jpxrsj2nq9lx82m58dwgmxdn3qlpklm3";
+}
+{
+  lang = "kk";
+  sha256 = "099hqac4a5z0aq3nw0znwjlxgxgpmmjb385nm2z74s3d8d4dw8bb";
+}
+{
+  lang = "km";
+  sha256 = "09lmpxv3ljm7bhhnmj94dia7ldz4sdnf9v0cs7ia83iiaw008hc9";
+}
+{
+  lang = "kn";
+  sha256 = "0bzwbncgzf3mhp7f24r9wrf8ip6d5slmvvycmyicvpwfj61dcwsx";
+}
+{
+  lang = "ko";
+  sha256 = "0saxxrzvcsjjw4jascqk8vpr8lm7xq737vabhmsfqga0262h8wzl";
+}
+{
+  lang = "lt";
+  sha256 = "1fn6dbncqdgnwgrd58jcdbc9c474kyb397djxk5lcf9gmdq7634q";
+}
+{
+  lang = "lv";
+  sha256 = "0vml848hxynic4cg3w8zadmfxs7l0qqd7xb3c7kxznrqgkra7rqs";
+}
+{
+  lang = "ml";
+  sha256 = "1d77wb1d7lsmpv2vh8jzfi4y30bd5nn8ljlfx42yfdyw9drkbm38";
+}
+{
+  lang = "nb";
+  sha256 = "1mprsawqaqb6i2nhgbvq8hp1nmfwlxvd9chfx49xas7wk209jd25";
+}
+{
+  lang = "nds";
+  sha256 = "005i6vvq6s8c9spjx0is29jj9d0x4lm766njvsgsa0mrzgfps6w7";
+}
+{
+  lang = "nl";
+  sha256 = "0f0z2ql08pgdbqig67jjxk8p1bf6fk70br9nhmsk72k2lv7abb0y";
+}
+{
+  lang = "nn";
+  sha256 = "08ajabbzrng3gn56bl0wk15rd43pwlrd0crj7c4n8aq61qgz1c1p";
+}
+{
+  lang = "pa";
+  sha256 = "099d7fhk48c3vra7bcam89ffs86iw495vxycr3679ah1bfwf8k68";
+}
+{
+  lang = "pl";
+  sha256 = "1qf6bycvzz6p0lvvkpq2lwvjiln42xrq0qhjzcb7m8zs1zan47hi";
+}
+{
+  lang = "pt";
+  sha256 = "16726ggm87y3bvyhdpvvwcw6n5s8dw5bjw5kxpz7160iljabn71a";
+}
+{
+  lang = "pt_BR";
+  sha256 = "12fp3gf0iicwv426ni7n45rbxywrv4ni73c1ljw1lahfdhmhkxsv";
+}
+{
+  lang = "ro";
+  sha256 = "0bi25kmg7jcmz8c6xlqadzv5jr6kxx8z0pbbhgbh2nl6yfjw7fm9";
+}
+{
+  lang = "ru";
+  sha256 = "0g7ibrv5x9dlhawjcmd302yg4vql31675w7cnzjcpkc9sga3i764";
+}
+{
+  lang = "sk";
+  sha256 = "0jmndf6kxqhqgfiilzfzaf9hgq6c66ndcw1lc306kcw0qv90fm1s";
+}
+{
+  lang = "sl";
+  sha256 = "1lic93q78kq831pzgzmydy6x9fgzkyrwpl5958sjpvbf2dra1xmp";
+}
+{
+  lang = "sr";
+  sha256 = "0g9cdkq7lcm2gbgsk001ywpwjwbsi8xxv90cklifgxfvqnd351gw";
+}
+{
+  lang = "sv";
+  sha256 = "0l7xqyya76np43acq3hjgvcipz0acc2iwqmwjs2hgnhbs12fny2c";
+}
+{
+  lang = "th";
+  sha256 = "1pbjxng4p35zd2aw78x3z5ycil1diah39bknmdgpily5cd3g3bg8";
+}
+{
+  lang = "tr";
+  sha256 = "1spsr67k9wmcaypk0yzqg60qq6ynw4xfi3xcsdm2vkhgcc9rk8cl";
+}
+{
+  lang = "uk";
+  sha256 = "1jii27q1m0sj3vk7ly45m9zi49l4rkr2v05z8zzfbxi2gzg02kc1";
+}
+{
+  lang = "wa";
+  sha256 = "0mqpqpwj1qnzrqyd4lc0fkhj1r42p228kg2yyy6xn2xa4na8sg2w";
+}
+{
+  lang = "zh_CN";
+  sha256 = "0hx69djrd7nvm889b5ig2hjy73m0vhzxxj7njrh21y551pcj7s0q";
+}
+{
+  lang = "zh_TW";
+  sha256 = "1axpangs004scmhq35m22axg3v6rdpidndvr1i49cxf3bhgpqpqs";
+}
+]
diff --git a/pkgs/desktops/kde-4.5/pim-runtime45/default.nix b/pkgs/desktops/kde-4.5/pim-runtime45/default.nix
deleted file mode 100644
index c59521206283..000000000000
--- a/pkgs/desktops/kde-4.5/pim-runtime45/default.nix
+++ /dev/null
@@ -1,15 +0,0 @@
-{ kde, cmake, kdelibs, qt4, kdepimlibs, akonadi, pkgconfig, boost, shared_mime_info, libxml2, shared_desktop_ontologies, soprano, strigi, automoc4, libxslt }:
-
-kde.package rec {
-	buildInputs = [ automoc4 cmake kdelibs qt4 kdepimlibs akonadi pkgconfig boost shared_mime_info shared_desktop_ontologies libxml2 soprano strigi libxslt ];
-
-  meta = {
-    description = "Runtime files for KDE PIM: akonadi agents etc.";
-    kde = rec {
-      name = "kdepim-runtime";
-      version = "4.4.93";
-      subdir = "kdepim/${version}/src/src";
-      stable = false;
-    };
-  };
-}
diff --git a/pkgs/desktops/kde-4.5/pim45/boost-1.44.diff b/pkgs/desktops/kde-4.5/pim45/boost-1.44.diff
deleted file mode 100644
index 7c5ab9ef31b1..000000000000
--- a/pkgs/desktops/kde-4.5/pim45/boost-1.44.diff
+++ /dev/null
@@ -1,12 +0,0 @@
-diff --git a/kleopatra/crypto/gui/newresultpage.cpp b/kleopatra/crypto/gui/newresultpage.cpp
-index 96d1cb2..5c7281a 100644
---- a/kleopatra/crypto/gui/newresultpage.cpp
-+++ b/kleopatra/crypto/gui/newresultpage.cpp
-@@ -40,6 +40,7 @@
- #include <crypto/taskcollection.h>
- 
- #include <utils/stl_util.h>
-+#include <boost/mem_fn.hpp>
- 
- #include <KLocalizedString>
- 
diff --git a/pkgs/desktops/kde-4.5/pim45/default.nix b/pkgs/desktops/kde-4.5/pim45/default.nix
deleted file mode 100644
index 1c390e4c8207..000000000000
--- a/pkgs/desktops/kde-4.5/pim45/default.nix
+++ /dev/null
@@ -1,18 +0,0 @@
-{ kde, automoc4, cmake, kdelibs, akonadi, kdepimlibs, boost, zlib, strigi,
-  shared_mime_info, soprano, grantlee, libassuan, perl, libxslt }:
-
-kde.package {
-  buildInputs = [ automoc4 cmake kdelibs akonadi kdepimlibs boost zlib strigi
-    shared_mime_info soprano grantlee libassuan perl libxslt ];
-
-  patches = [ ./boost-1.44.diff ];
-
-  meta = {
-    kde = rec {
-      name = "kdepim";
-      version = "4.4.93";
-      subdir = "kdepim/${version}/src/src";
-      stable = false;
-    };
-  };
-}
diff --git a/pkgs/development/compilers/jdk/builder.sh b/pkgs/development/compilers/jdk/builder.sh
index 71dd6c433f67..7f402dab1588 100644
--- a/pkgs/development/compilers/jdk/builder.sh
+++ b/pkgs/development/compilers/jdk/builder.sh
@@ -1,24 +1,7 @@
 buildInputs="$unzip"
 source $stdenv/setup
 
-src=$filename.bin
-
-if ! test -e "$pathname"; then
-    echo ""
-    echo "SORRY!"
-    echo "You should download \`$(basename $pathname)' from Sun and place it in $(dirname $pathname)."
-    echo "Blame Sun, not us."
-    echo ""
-    exit 1
-fi
-
-actual=$(md5sum -b $pathname | cut -c1-32)
-if test "$actual" != "$md5"; then
-    echo "hash is $actual, expected $md5"
-    exit 1
-fi
-
-unzip $pathname || true
+unzip $src || true
 
 ensureDir $out
 mv $dirname/* $out/
diff --git a/pkgs/development/compilers/jdk/default-5.nix b/pkgs/development/compilers/jdk/default-5.nix
index fb25cd704c44..dfd4e31f4b37 100644
--- a/pkgs/development/compilers/jdk/default-5.nix
+++ b/pkgs/development/compilers/jdk/default-5.nix
@@ -1,9 +1,9 @@
-{stdenv, fetchurl, unzip}: 
+{stdenv, fetchurl, unzip, requireFile}: 
 
 if stdenv.system == "i686-linux" || stdenv.system == "x86_64-linux"
   then
     (import ./jdk5-oracle-linux.nix) {
-      inherit stdenv fetchurl unzip;
+      inherit stdenv fetchurl unzip requireFile;
     }
   else
     abort "the Java 5 SDK is not supported on this platform"
diff --git a/pkgs/development/compilers/jdk/jdk5-oracle-linux.nix b/pkgs/development/compilers/jdk/jdk5-oracle-linux.nix
index 06471c482a19..8884585d154d 100644
--- a/pkgs/development/compilers/jdk/jdk5-oracle-linux.nix
+++ b/pkgs/development/compilers/jdk/jdk5-oracle-linux.nix
@@ -8,19 +8,29 @@
  * Note that this is not necessary if someone has already pushed a
  * binary.
  */
-{stdenv, fetchurl, unzip}: 
+{stdenv, fetchurl, unzip, requireFile}: 
 
 assert stdenv.system == "i686-linux" || stdenv.system == "x86_64-linux";
 
-let name = "jdk-1_5_0_22"; in
-stdenv.mkDerivation {
-  inherit name;
-  filename = "jdk-1_5_0_22";
+stdenv.mkDerivation rec {
+  name =  "jdk-1_5_0_22";
   dirname = "jdk1.5.0_22";
   builder = ./builder.sh;
-  pathname = if stdenv.system == "x86_64-linux" then "/tmp/${name}-linux-amd64.bin" else "/tmp/${name}-linux-i586.bin";
-  md5 = if stdenv.system == "x86_64-linux" then "b62abcaf9ea8617c50fa213bbc88824a" else "df5dae6d50d2abeafb472dde6d9a17f3";
+  src = requireFile {
+    message = ''
+      SORRY!
+      We may not download the needed binary distribution automatically.
+      You should download ${distfilename} from Sun and add it to store.
+      For example, "nix-prefetch-url file:///\$PWD/${distfilename}" in the 
+      directory where you saved it is OK.
+      Blame Sun, not us.
+    '';
+    name = distfilename;
+    sha256 = if stdenv.system == "x86_64-linux" then 
+      "1h63gigvg8id95igcj8xw7qvxs4p2y9hvx4xbvkwg8bji3ifb0sk" 
+    else "0655n2q1y023zzwbk6gs9vwsnb29jc0m3bg3x3xdw623qgb4k6px";
+  };
+  distfilename = if stdenv.system == "x86_64-linux" then "${name}-linux-amd64.bin" else "${name}-linux-i586.bin";
   
-  stdenv = stdenv;
-  inherit unzip;
+  inherit unzip stdenv;
 }
diff --git a/pkgs/development/compilers/ocaml/3.11.1.nix b/pkgs/development/compilers/ocaml/3.11.1.nix
index 8acb2bede6bd..a1d03b7cdf87 100644
--- a/pkgs/development/compilers/ocaml/3.11.1.nix
+++ b/pkgs/development/compilers/ocaml/3.11.1.nix
@@ -56,6 +56,11 @@ stdenv.mkDerivation rec {
          generators, a pre-processor pretty-printer (camlp4) and a
          documentation generator (ocamldoc).
        '';
+
+    platforms = stdenv.lib.platforms.all;
+    maintainers = [
+      stdenv.lib.maintainers.z77z
+    ];
   };
 
 }
diff --git a/pkgs/development/compilers/ocaml/3.12.0.nix b/pkgs/development/compilers/ocaml/3.12.0.nix
new file mode 100644
index 000000000000..bf767af5c9a7
--- /dev/null
+++ b/pkgs/development/compilers/ocaml/3.12.0.nix
@@ -0,0 +1,57 @@
+{ stdenv, fetchurl, ncurses, x11 }:
+
+let
+   useX11 = stdenv.system != "armv5tel-linux";
+   useNativeCompilers = stdenv.system != "armv5tel-linux";
+   inherit (stdenv.lib) optionals optionalString;
+in
+
+stdenv.mkDerivation rec {
+  
+  name = "ocaml-3.12.0";
+  
+  src = fetchurl {
+    url = "http://caml.inria.fr/pub/distrib/ocaml-3.12/${name}.tar.bz2";
+    sha256 = "0fzczy1s38ihlvghngn4l4n7gnyywnwd7c172276bjcy41b1g08p";
+  };
+
+  prefixKey = "-prefix ";
+  configureFlags = ["-no-tk"] ++ optionals useX11 [ "-x11lib" x11 ];
+  buildFlags = "world" + optionalString useNativeCompilers " bootstrap world.opt";
+  buildInputs = [ncurses] ++ optionals useX11 [ x11 ];
+  installTargets = "install" + optionalString useNativeCompilers " installopt";
+  patchPhase = ''
+    CAT=$(type -tp cat)
+    sed -e "s@/bin/cat@$CAT@" -i config/auto-aux/sharpbang
+  '';
+  postBuild = ''
+    ensureDir $out/include
+    ln -sv $out/lib/ocaml/caml $out/include/caml
+  '';
+
+  meta = {
+    homepage = http://caml.inria.fr/ocaml;
+    licenses = [ "QPL" /* compiler */ "LGPLv2" /* library */ ];
+    description = "Objective Caml, the most popular variant of the Caml language";
+
+    longDescription =
+      '' Objective Caml is the most popular variant of the Caml language.
+         From a language standpoint, it extends the core Caml language with a
+         fully-fledged object-oriented layer, as well as a powerful module
+         system, all connected by a sound, polymorphic type system featuring
+         type inference.
+
+         The Objective Caml system is an industrial-strength implementation
+         of this language, featuring a high-performance native-code compiler
+         (ocamlopt) for 9 processor architectures (IA32, PowerPC, AMD64,
+         Alpha, Sparc, Mips, IA64, HPPA, StrongArm), as well as a bytecode
+         compiler (ocamlc) and an interactive read-eval-print loop (ocaml)
+         for quick development and portability.  The Objective Caml
+         distribution includes a comprehensive standard library, a replay
+         debugger (ocamldebug), lexer (ocamllex) and parser (ocamlyacc)
+         generators, a pre-processor pretty-printer (camlp4) and a
+         documentation generator (ocamldoc).
+       '';
+  };
+
+}
diff --git a/pkgs/development/compilers/swi-prolog/default.nix b/pkgs/development/compilers/swi-prolog/default.nix
index 7690c980f5d9..255ea1495d63 100644
--- a/pkgs/development/compilers/swi-prolog/default.nix
+++ b/pkgs/development/compilers/swi-prolog/default.nix
@@ -1,11 +1,12 @@
 { stdenv, fetchurl, gmp, readline, openssl, libjpeg, unixODBC, zlib, libXinerama, libXft, libXpm, libSM, libXt }:
 
-stdenv.mkDerivation {
-  name = "swi-prolog-5.6.64";
+stdenv.mkDerivation rec {
+  version = "5.10.2";
+  name = "swi-prolog-${version}";
 
   src = fetchurl {
-    url = "http://gollem.science.uva.nl/cgi-bin/nph-download/SWI-Prolog/pl-5.6.64.tar.gz";
-    sha256 = "b0e70c3c02b7753ed440359746e7729d21c93e42689c1f0f32b148167b1b2c66";
+    url = "http://www.swi-prolog.org/download/stable/src/pl-${version}.tar.gz";
+    sha256 = "1a3ebbcd649f429a41b64561d38423692e00524c29227432d0eb5a0e24e2a4c9";
   };
 
   buildInputs = [gmp readline openssl libjpeg unixODBC libXinerama libXft libXpm libSM libXt zlib];
diff --git a/pkgs/development/interpreters/r-lang/default.nix b/pkgs/development/interpreters/r-lang/default.nix
index 63971dece1f2..432198993808 100644
--- a/pkgs/development/interpreters/r-lang/default.nix
+++ b/pkgs/development/interpreters/r-lang/default.nix
@@ -1,30 +1,37 @@
-{stdenv, fetchurl, readline, perl, gfortran, libX11, libpng, libXt, zlib, 
-withBioconductor ? false
+{ stdenv, fetchurl, readline, perl, gfortran, libX11, libpng, libXt, zlib
+, withBioconductor ? false
 }:
 
 stdenv.mkDerivation {
   name = "r-lang";
-  version = "2.7.0";
+  version = "2.12.0";
   src = fetchurl {
-    url = http://cran.r-project.org/src/base/R-2/R-2.7.0.tar.gz;
-    sha256 = "17ql1j5d9rfpxs04j9v9qyxiysc9nh6yr43lgfdamayzjpia5jqm";
+    url = http://cran.r-project.org/src/base/R-2/R-2.12.0.tar.gz;
+    sha256 = "93d72d845b01c6cd00e58f04b5e78fd6c83de96a8620505ad2a016772af02179";
   };
 
   bioconductor = if withBioconductor then import ../development/libraries/science/biology/bioconductor { inherit fetchurl stdenv readline; } else null;
-  
+
+  postUnpack = ''
+    gunzip R-2.12.0/src/library/Recommended/Matrix_0.999375-44.tar.gz
+    tar --file=R-2.12.0/src/library/Recommended/Matrix_0.999375-44.tar --delete Matrix/src/dummy.cpp
+    gzip R-2.12.0/src/library/Recommended/Matrix_0.999375-44.tar
+  '';
+
   buildInputs = [readline perl gfortran libpng libX11 libXt zlib];
   configureFlags = ["--enable-R-shlib"] ;
 
   meta = {
     description = "R is a language and environment for statistical computing and graphics";
-    longDescription = ''R is a language and environment for statistical computin
-g and graphics. It is a GNU project which is similar to the S language. R provid
-es a wide variety of statistical (linear and nonlinear modelling, classical stat
-istical tests, time-series analysis, classification, clustering, ...) and graphi
-cal techniques, and is highly extensible.'';
     license     = "GPL2";
     homepage    = http://www.r-project.org/;
+    longDescription = ''
+      R is a language and environment for statistical computing and
+      graphics. It is a GNU project which is similar to the S language.
+      R provides a wide variety of statistical (linear and nonlinear
+      modelling, classical statistical tests, time-series analysis,
+      classification, clustering, ...) and graphical techniques, and is
+      highly extensible.
+    '';
   };
 }
-
-
diff --git a/pkgs/development/libraries/allegro/default.nix b/pkgs/development/libraries/allegro/default.nix
new file mode 100644
index 000000000000..1669d083f226
--- /dev/null
+++ b/pkgs/development/libraries/allegro/default.nix
@@ -0,0 +1,59 @@
+x@{builderDefsPackage
+  , texinfo, libXext, xextproto, libX11, xproto, libXpm, libXt, libXcursor
+  , alsaLib, cmake, zlib, libpng, libvorbis, libXxf86dga, libXxf86misc
+  , xf86dgaproto, xf86miscproto, xf86vidmodeproto, libXxf86vm, openal
+  , ...}:
+builderDefsPackage
+(a :  
+let 
+  helperArgNames = ["stdenv" "fetchurl" "builderDefsPackage"] ++ 
+    [];
+
+  buildInputs = map (n: builtins.getAttr n x)
+    (builtins.attrNames (builtins.removeAttrs x helperArgNames));
+  sourceInfo = rec {
+    baseName="allegro";
+    version="4.4.0.1";
+    name="${baseName}-${version}";
+    project="alleg";
+    url="mirror://sourceforge/project/${project}/${baseName}/${version}/${name}.tar.gz";
+    hash="0qgkmazr07lmnbj6h6yk10vmcm15gafcwy5jn7xpwy7bahzraiz0";
+  };
+in
+rec {
+  src = a.fetchurl {
+    url = sourceInfo.url;
+    sha256 = sourceInfo.hash;
+  };
+
+  inherit (sourceInfo) name version;
+  inherit buildInputs;
+
+  /* doConfigure should be removed if not needed */
+  phaseNames = ["doCmake" "doMakeInstall"];
+
+  doCmake = a.fullDepEntry (''
+    export NIX_LDFLAGS="$NIX_LDFLAGS -lXext -lX11 -lXpm -lXcursor -lXxf86vm"
+    cmake -D CMAKE_INSTALL_PREFIX=$out -D CMAKE_SKIP_RPATH=ON .
+  '') ["minInit" "doUnpack" "addInputs"];
+      
+  makeFlags = [
+  ];
+
+  meta = {
+    description = "A game programming library";
+    license = "free-noncopyleft"; # giftware
+    maintainers = with a.lib.maintainers;
+    [
+      raskin
+    ];
+    platforms = with a.lib.platforms;
+      linux;
+  };
+  passthru = {
+    updateInfo = {
+      downloadPage = "http://sourceforge.net/projects/alleg/files/";
+    };
+  };
+}) x
+
diff --git a/pkgs/development/libraries/apr-util/default.nix b/pkgs/development/libraries/apr-util/default.nix
index 1c58aacfdf26..c59184007e53 100644
--- a/pkgs/development/libraries/apr-util/default.nix
+++ b/pkgs/development/libraries/apr-util/default.nix
@@ -5,11 +5,11 @@
 assert bdbSupport -> db4 != null;
 
 stdenv.mkDerivation rec {
-  name = "apr-util-1.3.9";
+  name = "apr-util-1.3.10";
   
   src = fetchurl {
     url = "mirror://apache/apr/${name}.tar.bz2";
-    sha256 = "10zcy1an5xkjx8nflirvm2a8rnp9psckws6r7xr5wq6ffxnafhc7";
+    sha256 = "1vhps080b0f9z6ibq7xqbhdrclb89min7xwvc2zzc5wf0x4w1h0s";
   };
   
   configureFlags = ''
diff --git a/pkgs/development/libraries/cgui/default.nix b/pkgs/development/libraries/cgui/default.nix
new file mode 100644
index 000000000000..6bd3dd41de74
--- /dev/null
+++ b/pkgs/development/libraries/cgui/default.nix
@@ -0,0 +1,57 @@
+x@{builderDefsPackage
+  , texinfo, allegro, perl
+  , ...}:
+builderDefsPackage
+(a :  
+let 
+  helperArgNames = ["stdenv" "fetchurl" "builderDefsPackage"] ++ 
+    [];
+
+  buildInputs = map (n: builtins.getAttr n x)
+    (builtins.attrNames (builtins.removeAttrs x helperArgNames));
+  sourceInfo = rec {
+    baseName="cgui";
+    version="2.0.3";
+    name="${baseName}-${version}";
+    project="${baseName}";
+    url="mirror://sourceforge/project/${project}/${version}/${name}.tar.gz";
+    hash="00kk4xaw68m44awy8zq4g5plx372swwccvzshn68a0a8f3f2wi4x";
+  };
+in
+rec {
+  src = a.fetchurl {
+    url = sourceInfo.url;
+    sha256 = sourceInfo.hash;
+  };
+
+  inherit (sourceInfo) name version;
+  inherit buildInputs;
+
+  /* doConfigure should be removed if not needed */
+  phaseNames = ["genMakefile" "doMakeInstall"];
+
+  genMakefile = a.fullDepEntry (''
+    export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -fPIC"
+    sh fix.sh unix
+  '') ["minInit" "doUnpack" "addInputs"];
+      
+  makeFlags = [
+    "SYSTEM_DIR=$out"
+  ];
+
+  meta = {
+    description = "A multiplatform basic GUI library";
+    maintainers = with a.lib.maintainers;
+    [
+      raskin
+    ];
+    platforms = with a.lib.platforms;
+      linux;
+  };
+  passthru = {
+    updateInfo = {
+      downloadPage = "http://sourceforge.net/projects/cgui/files/";
+    };
+  };
+}) x
+
diff --git a/pkgs/development/libraries/qt-4.x/4.5/default.nix b/pkgs/development/libraries/qt-4.x/4.5/default.nix
deleted file mode 100644
index 3b29043aeeb4..000000000000
--- a/pkgs/development/libraries/qt-4.x/4.5/default.nix
+++ /dev/null
@@ -1,86 +0,0 @@
-{ stdenv, fetchurl
-, libXft, libXrender, randrproto, xextproto, libXinerama, xineramaproto, libXcursor, libXmu
-, libXext, libXfixes, inputproto, fixesproto, libXrandr, freetype, fontconfig
-, zlib, libjpeg, mysql, libpng, which, mesa, openssl, dbus, cups, pkgconfig, libtiff, glib
-, buildDemos ? false, buildExamples ? false, keepDocumentation ? false}:
-
-stdenv.mkDerivation {
-  name = "qt-4.5.3";
-  
-  src = fetchurl {
-    url = ftp://ftp.trolltech.com/qt/source/qt-x11-opensource-src-4.5.3.tar.gz;
-    sha256 = "19ls11m5skcjfgrfcidwqdm72kl7qrbj4hdl1nbmcdaxh91gr1qc";
-  };
-  
-  setupHook = ./setup-hook.sh;
-  
-  propagatedBuildInputs = [
-    libXft 
-    libXrender 
-    libXrandr 
-    randrproto 
-    xextproto
-    libXinerama 
-    xineramaproto 
-    libXcursor 
-    zlib 
-    libjpeg 
-    mysql 
-    libpng 
-    which 
-    mesa
-    libXmu 
-    openssl 
-    dbus.libs 
-    cups 
-    pkgconfig 
-    libXext 
-    freetype 
-    fontconfig 
-    inputproto
-    fixesproto 
-    libXfixes 
-    glib 
-    libtiff
-  ];
-  
-  # libQtNetwork will call libQtCore for it to dlopen openssl.
-  NIX_LDFLAGS = "-rpath ${openssl}/lib";
-  # Don't shrink the rpath, to keep ${openssl} in it.
-  dontPatchELF = 1;
-
-  prefixKey = "-prefix ";
-
-  configureFlags = ''
-    -v -no-separate-debug-info -release
-    -system-zlib -system-libpng -system-libjpeg -fast
-    -qt-gif -confirm-license -opensource
-    -opengl -xrender -xrandr -xinerama -xcursor -qt-sql-mysql
-    -qdbus -cups -glib -xfixes -dbus-linked
-    -fontconfig -I${freetype}/include/freetype2
-    ${if buildDemos == true then "" else "-nomake demos"}
-    ${if buildExamples == true then "" else "-nomake examples"}
-  '';
-    
-  patchPhase = ''
-    substituteInPlace configure --replace /bin/pwd pwd
-    sed -e 's@/usr@/FOO@' -i config.tests/*/*.test -i mkspecs/*/*.conf
-  '';
-
-  # Remove the documentation: it takes up >= 130 MB, which is more
-  # than half of the installed size.  Ideally we should put this in a
-  # separate package (as well as the Qt Designer).
-  postInstall = ''
-    ${if keepDocumentation == false then "rm -rf $out/doc" else ""}
-  '';
-
-  enableParallelBuilding = true;
-
-  meta = {
-    homepage = http://www.qtsoftware.com/downloads/opensource/appdev/linux-x11-cpp;
-    description = "A cross-platform application framework for C++";
-    license = "GPL/LGPL";
-    maintainers = [ stdenv.lib.maintainers.sander ];
-    platforms = stdenv.lib.platforms.mesaPlatforms;
-  };
-}
diff --git a/pkgs/development/libraries/qt-4.x/4.5/setup-hook.sh b/pkgs/development/libraries/qt-4.x/4.5/setup-hook.sh
deleted file mode 100644
index f9ecacbbb7df..000000000000
--- a/pkgs/development/libraries/qt-4.x/4.5/setup-hook.sh
+++ /dev/null
@@ -1,9 +0,0 @@
-export QTDIR=@out@
-
-if [ -n "$includeAllQtDirs" ]; then
-  # This helps for g++, but not for moc. And no qt4 package should expect
-  # having all qt4 header files dirs into -I.
-  for d in @out@/include/*; do
-      export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -I$d"
-  done
-fi
diff --git a/pkgs/development/libraries/rlog/default.nix b/pkgs/development/libraries/rlog/default.nix
new file mode 100644
index 000000000000..aae678688848
--- /dev/null
+++ b/pkgs/development/libraries/rlog/default.nix
@@ -0,0 +1,15 @@
+{ stdenv, fetchurl }:
+
+stdenv.mkDerivation {
+  name = "rlog-1.4";
+
+  src = fetchurl {
+    url = "http://rlog.googlecode.com/files/rlog-1.4.tar.gz";
+    sha256 = "0y9zg0pd7vmnskwac1qdyzl282z7kb01nmn57lsg2mjdxgnywf59";
+  };
+
+  meta = {
+    homepage = http://www.arg0.net/rlog;
+    description = "A C++ logging library used in encfs";
+  };
+}
diff --git a/pkgs/development/libraries/sqlite/default.nix b/pkgs/development/libraries/sqlite/default.nix
index 015c449cd037..2a53f4b09bd2 100644
--- a/pkgs/development/libraries/sqlite/default.nix
+++ b/pkgs/development/libraries/sqlite/default.nix
@@ -3,11 +3,11 @@
 assert readline != null -> ncurses != null;
 
 stdenv.mkDerivation {
-  name = "sqlite-3.7.2";
+  name = "sqlite-3.7.4";
 
   src = fetchurl {
-    url = "http://www.sqlite.org/sqlite-amalgamation-3.7.2.tar.gz";
-    sha256 = "12i50bypcq7havphrilzi0hnwgv01drxsc36kyby76hpk417zsvl";
+    url = http://www.sqlite.org/sqlite-autoconf-3070400.tar.gz;
+    sha256 = "131lwjqh1nfyrx4vjya2wdl6bnc0gzvcrg0wf06sz2iisj0h9vsl";
   };
 
   buildInputs = [ readline ncurses ];
diff --git a/pkgs/development/ocaml-modules/batteries/default.nix b/pkgs/development/ocaml-modules/batteries/default.nix
new file mode 100644
index 000000000000..9aef1f446fe9
--- /dev/null
+++ b/pkgs/development/ocaml-modules/batteries/default.nix
@@ -0,0 +1,34 @@
+{stdenv, fetchurl, ocaml, findlib, camomile, ounit}:
+
+let
+  ocaml_version = (builtins.parseDrvName ocaml.name).version;
+  version = "1.2.0";
+in
+
+stdenv.mkDerivation {
+  name = "ocaml-batteries-${version}";
+
+  src = fetchurl {
+    url = "http://forge.ocamlcore.org/frs/download.php/423/batteries-${version}.tar.gz";
+    sha256 = "0lkkbfj51zkhhr56nx167448pvg02nrzjjkl57ycic2ikzgq6lmx";
+  };
+
+  buildInputs = [ocaml findlib camomile ounit];
+
+  configurePhase = "true"; 	# Skip configure
+
+  doCheck = true;
+
+  checkTarget = "test";
+
+  meta = {
+    homepage = http://batteries.forge.ocamlcore.org/;
+    description = "OCaml Batteries Included";
+    longDescription = ''
+      A community-driven effort to standardize on an consistent, documented,
+      and comprehensive development platform for the OCaml programming
+      language.
+    '';
+    license = "LGPL";
+  };
+}
diff --git a/pkgs/development/ocaml-modules/camlzip/META b/pkgs/development/ocaml-modules/camlzip/META
new file mode 100644
index 000000000000..85456166101e
--- /dev/null
+++ b/pkgs/development/ocaml-modules/camlzip/META
@@ -0,0 +1,23 @@
+# Specifications for the "camlzip" library:
+
+name="zip"
+version="1.04"
+description="A library for handling ZIP and GZIP files in OCaml"
+directory="@INSTALLDIR@"
+
+requires="unix"
+requires(byte)="unix"
+requires(native)="unix"
+requires(toploop)="unix"
+
+requires(byte,mt)="unix"
+requires(native,mt)="unix"
+requires(toploop,mt)="unix"
+
+archive(byte)="zip.cma"
+archive(native)="zip.cmxa"
+archive(toploop)="zip.cma"
+
+archive(byte,mt)="zip.cma"
+archive(native,mt)="zip.cmxa"
+archive(toploop,mt)="zip.cma"
diff --git a/pkgs/development/ocaml-modules/camlzip/default.nix b/pkgs/development/ocaml-modules/camlzip/default.nix
new file mode 100644
index 000000000000..4e5df2cd75d9
--- /dev/null
+++ b/pkgs/development/ocaml-modules/camlzip/default.nix
@@ -0,0 +1,47 @@
+{stdenv, fetchurl, zlib, ocaml}:
+
+let
+  ocaml_version = (builtins.parseDrvName ocaml.name).version;
+  version = "1.04";
+in
+
+stdenv.mkDerivation {
+  name = "camlzip-${version}";
+
+  src = fetchurl {
+    url = "http://forge.ocamlcore.org/frs/download.php/328/" +
+          "camlzip-${version}.tar.gz";
+    sha256 = "1zpchmp199x7f4mzmapvfywgy7f6wy9yynd9nd8yh8l78s5gixbn";
+  };
+
+  buildInputs = [zlib ocaml];
+
+  patches = [ ./makefile.patch ];
+
+  configurePhase = ''
+    export INSTALLDIR="$out/lib/ocaml/${ocaml_version}/site-lib/zip"
+    substituteInPlace Makefile \
+      --subst-var-by ZLIB_LIBDIR "${zlib}/lib" \
+      --subst-var-by ZLIB_INCLUDE "${zlib}/include" \
+      --subst-var INSTALLDIR
+  '';
+
+  buildFlags = "all allopt";
+
+  installTargets = "install installopt";
+
+  postInstall = ''
+    substitute ${./META} $INSTALLDIR/META --subst-var INSTALLDIR
+  '';
+
+  meta = {
+    homepage = "http://cristal.inria.fr/~xleroy/software.html#camlzip";
+    description = "A library for handling ZIP and GZIP files in OCaml";
+    longDescription = ''
+      This Objective Caml library provides easy access to compressed files in
+      ZIP and GZIP format, as well as to Java JAR files.  It provides functions
+      for reading from and writing to compressed files in these formats.
+    '';
+    license = "LGPL+linking exceptions";
+  };
+}
diff --git a/pkgs/development/ocaml-modules/camlzip/makefile.patch b/pkgs/development/ocaml-modules/camlzip/makefile.patch
new file mode 100644
index 000000000000..10adcd6687b0
--- /dev/null
+++ b/pkgs/development/ocaml-modules/camlzip/makefile.patch
@@ -0,0 +1,32 @@
+diff -Naur camlzip-1.04/Makefile camlzip-1.04.nixos/Makefile
+--- camlzip-1.04/Makefile	2002-04-22 17:28:57.000000000 +0200
++++ camlzip-1.04.nixos/Makefile	2010-08-17 14:40:07.000000000 +0200
+@@ -4,14 +4,14 @@
+ ZLIB_LIB=-lz
+ 
+ # The directory containing the Zlib library (libz.a or libz.so)
+-ZLIB_LIBDIR=/usr/local/lib
++ZLIB_LIBDIR=@ZLIB_LIBDIR@
+ 
+ # The directory containing the Zlib header file (zlib.h)
+-ZLIB_INCLUDE=/usr/local/include
++ZLIB_INCLUDE=@ZLIB_INCLUDE@
+ 
+ # Where to install the library.  By default: sub-directory 'zip' of
+ # OCaml's standard library directory.
+-INSTALLDIR=`$(OCAMLC) -where`/zip
++INSTALLDIR=@INSTALLDIR@
+ 
+ ### End of configuration section
+ 
+@@ -59,10 +59,6 @@
+ 	cp zip.cma zip.cmi gzip.cmi zip.mli gzip.mli libcamlzip.a $(INSTALLDIR)
+ 	if test -f dllcamlzip.so; then \
+ 	  cp dllcamlzip.so $(INSTALLDIR); \
+-          ldconf=`$(OCAMLC) -where`/ld.conf; \
+-          installdir=$(INSTALLDIR); \
+-          if test `grep -s -c $$installdir'$$' $$ldconf || :` = 0; \
+-          then echo $$installdir >> $$ldconf; fi \
+         fi
+ 
+ installopt:
diff --git a/pkgs/development/ocaml-modules/camomile/0.7.3.nix b/pkgs/development/ocaml-modules/camomile/0.7.3.nix
new file mode 100644
index 000000000000..4cc214042587
--- /dev/null
+++ b/pkgs/development/ocaml-modules/camomile/0.7.3.nix
@@ -0,0 +1,25 @@
+{stdenv, fetchurl, ocaml, findlib}:
+
+let
+  ocaml_version = (builtins.parseDrvName ocaml.name).version;
+  version = "0.7.3";
+in
+
+stdenv.mkDerivation {
+  name = "camomile-${version}";
+
+  src = fetchurl {
+    url = "mirror://sourceforge/camomile/camomile-${version}.tar.bz2";
+    sha256 = "0cm3j3ppl15fp597ih3qiagxyg8kpql9apapkqaib2xccc44zb5l";
+  };
+
+  buildInputs = [ocaml findlib];
+
+  #dontAddPrefix = true;
+
+  meta = {
+    homepage = http://camomile.sourceforge.net/;
+    description = "A comprehensive Unicode library for OCaml";
+    license = "LGPL";
+  };
+}
diff --git a/pkgs/development/ocaml-modules/camomile/0.8.1.nix b/pkgs/development/ocaml-modules/camomile/0.8.1.nix
new file mode 100644
index 000000000000..1c32bca58b13
--- /dev/null
+++ b/pkgs/development/ocaml-modules/camomile/0.8.1.nix
@@ -0,0 +1,25 @@
+{stdenv, fetchurl, ocaml, findlib}:
+
+let
+  ocaml_version = (builtins.parseDrvName ocaml.name).version;
+  version = "0.8.1";
+in
+
+stdenv.mkDerivation {
+  name = "camomile-${version}";
+
+  src = fetchurl {
+    url = "mirror://sourceforge/camomile/camomile-${version}.tar.bz2";
+    sha256 = "1r84y7wl10zkjmp8qqq2bcmll23qmfczlnykm74hxkig8ksm0g6a";
+  };
+
+  buildInputs = [ocaml findlib];
+
+  #dontAddPrefix = true;
+
+  meta = {
+    homepage = http://camomile.sourceforge.net/;
+    description = "A comprehensive Unicode library for OCaml";
+    license = "LGPL";
+  };
+}
diff --git a/pkgs/development/ocaml-modules/cryptgps/default.nix b/pkgs/development/ocaml-modules/cryptgps/default.nix
new file mode 100644
index 000000000000..a9116c09ee76
--- /dev/null
+++ b/pkgs/development/ocaml-modules/cryptgps/default.nix
@@ -0,0 +1,31 @@
+{stdenv, fetchurl, ocaml, findlib}:
+
+let
+  ocaml_version = (builtins.parseDrvName ocaml.name).version;
+  version = "0.2.1";
+in
+
+stdenv.mkDerivation {
+  name = "ocaml-cryptgps-${version}";
+
+  src = fetchurl {
+    url = "http://download.camlcity.org/download/cryptgps-0.2.1.tar.gz";
+    sha256 = "1mp7i42cm9w9grmcsa69m3h1ycpn6a48p43y4xj8rsc12x9nav3s";
+  };
+
+  buildInputs = [ocaml findlib];
+
+  configurePhase = "true";	# Skip configure phase
+
+  meta = {
+    homepage = http://projects.camlcity.org/projects/cryptgps.html;
+    description = "Cryptographic functions for OCaml";
+    longDescription = ''
+      This library implements the symmetric cryptographic algorithms
+      Blowfish, DES, and 3DES. The algorithms are written in O'Caml,
+      i.e. this is not a binding to some C library, but the implementation
+      itself.
+    '';
+    license = "MIT/X11";
+  };
+}
diff --git a/pkgs/development/ocaml-modules/cryptokit/META b/pkgs/development/ocaml-modules/cryptokit/META
new file mode 100644
index 000000000000..661170835fdf
--- /dev/null
+++ b/pkgs/development/ocaml-modules/cryptokit/META
@@ -0,0 +1,8 @@
+# Specifications for the "cryptokit" library:
+requires = ""
+description = "A library of cryptographic primitives for OCaml"
+version = "1.3"
+directory = "^"
+
+archive(byte) = "cryptokit.cma"
+archive(native) = "cryptokit.cmxa"
diff --git a/pkgs/development/ocaml-modules/cryptokit/default.nix b/pkgs/development/ocaml-modules/cryptokit/default.nix
new file mode 100644
index 000000000000..1c7e361f3fc3
--- /dev/null
+++ b/pkgs/development/ocaml-modules/cryptokit/default.nix
@@ -0,0 +1,43 @@
+{stdenv, fetchurl, zlib, ocaml}:
+
+let
+  ocaml_version = (builtins.parseDrvName ocaml.name).version;
+  version = "1.3";
+in
+
+stdenv.mkDerivation {
+  name = "cryptokit-${version}";
+
+  src = fetchurl {
+    url = "http://forge.ocamlcore.org/frs/download.php/326/" +
+          "cryptokit-${version}.tar.gz";
+    sha256 = "0kqrlxkpzrj2qpniy6mhn7gx3n29s86vk4q0im2hqpxi9knkkwwy";
+  };
+
+  buildInputs = [zlib ocaml];
+
+  patches = [ ./makefile.patch ];
+
+  configurePhase = ''
+    export INSTALLDIR="$out/lib/ocaml/${ocaml_version}/site-lib/cryptokit"
+    substituteInPlace Makefile \
+      --subst-var-by ZLIB_LIBDIR "${zlib}/lib" \
+      --subst-var-by ZLIB_INCLUDE "${zlib}/include" \
+      --subst-var INSTALLDIR 
+  '';
+
+  buildFlags = "all allopt";
+
+  doCheck = true;
+  
+  checkTarget = "test";
+
+  preInstall = "ensureDir $INSTALLDIR";
+
+  postInstall = "cp -a ${./META} $INSTALLDIR/META";
+
+  meta = {
+    homepage = "http://pauillac.inria.fr/~xleroy/software.html";
+    description = "A library of cryptographic primitives for OCaml";
+  };
+}
diff --git a/pkgs/development/ocaml-modules/cryptokit/makefile.patch b/pkgs/development/ocaml-modules/cryptokit/makefile.patch
new file mode 100644
index 000000000000..b4a82c7d677f
--- /dev/null
+++ b/pkgs/development/ocaml-modules/cryptokit/makefile.patch
@@ -0,0 +1,21 @@
+diff -Nuar cryptokit-1.3/Makefile cryptokit-1.3.nixos/Makefile
+--- cryptokit-1.3/Makefile	2005-04-20 15:19:54.000000000 +0200
++++ cryptokit-1.3.nixos/Makefile	2010-08-17 15:22:07.000000000 +0200
+@@ -9,14 +9,13 @@
+ 
+ # The directory containing the Zlib library (libz.a or libz.so)
+ # Leave blank if you don't have Zlib.
+-ZLIB_LIBDIR=/usr/lib
+-#ZLIB_LIBDIR=/usr/lib64    # for x86-64 Linux
++ZLIB_LIBDIR=@ZLIB_LIBDIR@
+ 
+ # The directory containing the Zlib header file (zlib.h)
+-ZLIB_INCLUDE=/usr/include
++ZLIB_INCLUDE=@ZLIB_INCLUDE@
+ 
+ # Where to install the library. By default: OCaml's standard library directory.
+-INSTALLDIR=`$(OCAMLC) -where`
++INSTALLDIR=@INSTALLDIR@
+ 
+ # Flags for the C compiler.
+ CFLAGS=-O -I$(ZLIB_INCLUDE) $(ZLIB)
diff --git a/pkgs/development/ocaml-modules/lwt/default.nix b/pkgs/development/ocaml-modules/lwt/default.nix
new file mode 100644
index 000000000000..766419aada7c
--- /dev/null
+++ b/pkgs/development/ocaml-modules/lwt/default.nix
@@ -0,0 +1,25 @@
+{stdenv, fetchurl, which, cryptopp, ocaml, findlib, ocaml_react, ocaml_ssl}:
+
+let
+  ocaml_version = (builtins.parseDrvName ocaml.name).version;
+  version = "2.1.1";
+in
+
+stdenv.mkDerivation {
+  name = "ocaml-lwt-${version}";
+
+  src = fetchurl {
+    url = "http://ocsigen.org/download/lwt-${version}.tar.gz";
+    sha256 = "1zjn0sgihryshancn4kna1xslhc8gifliny1qd3a85f72xxxnw0w";
+  };
+
+  buildInputs = [which cryptopp ocaml findlib ocaml_react ocaml_ssl];
+
+  configurePhase = "true";
+
+  meta = {
+    homepage = http://ocsigen.org/lwt;
+    description = "Lightweight thread library for Objective Caml";
+    license = "LGPL";
+  };
+}
diff --git a/pkgs/development/ocaml-modules/menhir/default.nix b/pkgs/development/ocaml-modules/menhir/default.nix
new file mode 100644
index 000000000000..7c1a2bfe829a
--- /dev/null
+++ b/pkgs/development/ocaml-modules/menhir/default.nix
@@ -0,0 +1,47 @@
+{stdenv, fetchurl, ocaml, findlib}:
+
+let
+  ocaml_version = (builtins.parseDrvName ocaml.name).version;
+  version = "20090505";
+in
+
+stdenv.mkDerivation {
+  name = "menhir-${version}";
+
+  src = fetchurl {
+    url = "http://pauillac.inria.fr/~fpottier/menhir/menhir-${version}.tar.gz";
+    sha256 = "1dsy80wp7k9wbxc89pjzy2izdkk4b72104m9ik747xzy23mssbyx";
+  };
+
+  buildInputs = [ocaml findlib];
+
+  configurePhase = "true";	# Skip configure
+
+  preBuild = ''
+    #Fix makefiles.
+    RM=$(type -p rm)
+    CHMOD=$(type -p chmod)
+    ENV=$(type -p env)
+    for f in src/Makefile demos/OMakefile* demos/Makefile* demos/ocamldep.wrapper
+    do
+      substituteInPlace $f \
+        --replace /bin/rm $RM \
+	--replace /bin/chmod $CHMOD \
+	--replace /usr/bin/env $ENV
+    done
+
+    export PREFIX=$out
+  '';
+
+  meta = {
+    homepage = http://pauillac.inria.fr/~fpottier/menhir/;
+    description = "A LR(1) parser generator for OCaml";
+    longDescription = ''
+      Menhir is a LR(1) parser generator for the Objective Caml programming
+      language.  That is, Menhir compiles LR(1) grammar specifications down
+      to OCaml code.  Menhir was designed and implemented by François Pottier
+      and Yann Régis-Gianas.
+    '';
+    license = "QPL,LGPL+linking exceptions";
+  };
+}
diff --git a/pkgs/development/ocaml-modules/ounit/default.nix b/pkgs/development/ocaml-modules/ounit/default.nix
new file mode 100644
index 000000000000..af208dc5651c
--- /dev/null
+++ b/pkgs/development/ocaml-modules/ounit/default.nix
@@ -0,0 +1,31 @@
+{stdenv, fetchurl, ocaml, findlib}:
+
+let
+  ocaml_version = (builtins.parseDrvName ocaml.name).version;
+  version = "1.0.3";
+in
+
+stdenv.mkDerivation {
+  name = "ounit-${version}";
+
+  src = fetchurl {
+    url = "http://www.xs4all.nl/~mmzeeman/ocaml/ounit-${version}.tar.gz";
+    sha256 = "1n7ylrbi2m00gn0kjg5zxnyzxki8v1dy31fcz3vh1xnwcx6hii97";
+  };
+
+  buildInputs = [ocaml findlib];
+
+  configurePhase = "true";  	# Skip configure
+
+  buildFlags = "all allopt";
+
+  doCheck = true;
+
+  checkTarget = "test";
+
+  meta = {
+    homepage = http://www.xs4all.nl/~mmzeeman/ocaml/;
+    description = "Unit test framework for OCaml";
+    license = "MIT/X11";
+  };
+}
diff --git a/pkgs/development/ocaml-modules/pcre/default.nix b/pkgs/development/ocaml-modules/pcre/default.nix
new file mode 100644
index 000000000000..d1287425625c
--- /dev/null
+++ b/pkgs/development/ocaml-modules/pcre/default.nix
@@ -0,0 +1,26 @@
+{stdenv, fetchurl, pcre, ocaml, findlib}:
+
+let
+  ocaml_version = (builtins.parseDrvName ocaml.name).version;
+  version = "6.1.0";
+in
+
+stdenv.mkDerivation {
+  name = "ocaml-pcre-${version}";
+
+  src = fetchurl {
+    url = "http://hg.ocaml.info/release/pcre-ocaml/archive/" +
+          "release-${version}.tar.bz2";
+    sha256 = "1lj9mzabi1crxwvb2ly1l10h4hlx0fw20nbnq76bbzzkzabjs4ll";
+  };
+
+  buildInputs = [pcre ocaml findlib];
+
+  configurePhase = "true";	# Skip configure phase
+
+  meta = {
+    homepage = "http://www.ocaml.info/home/ocaml_sources.html#pcre-ocaml";
+    description = "An efficient C-library for pattern matching with Perl-style regular expressions in OCaml";
+    license = "LGPL";
+  };
+}
diff --git a/pkgs/development/ocaml-modules/react/default.nix b/pkgs/development/ocaml-modules/react/default.nix
new file mode 100644
index 000000000000..b1757d84b7b6
--- /dev/null
+++ b/pkgs/development/ocaml-modules/react/default.nix
@@ -0,0 +1,33 @@
+{stdenv, fetchurl, ocaml}:
+
+let
+  ocaml_version = (builtins.parseDrvName ocaml.name).version;
+  version = "0.9.2";
+in
+
+stdenv.mkDerivation {
+  name = "ocaml-react-${version}";
+
+  src = fetchurl {
+    url = "http://erratique.ch/software/react/releases/react-${version}.tbz";
+    sha256 = "0fiaxzfxv8pc82d31jz85zryz06k84is0l3sn5g0di5mpc5falxr";
+  };
+
+  buildInputs = [ocaml];
+
+  buildCommand = ''
+    export INSTALLDIR=$out/lib/ocaml/${ocaml_version}/site-lib/react
+    tar xjf $src
+    cd react-*
+    substituteInPlace src/META --replace '+react' $INSTALLDIR
+    chmod +x build
+    ./build 
+    ./build install
+  '';
+
+  meta = {
+    homepage = http://erratique.ch/software/react;
+    description = "Applicative events and signals for OCaml";
+    license = "BSD";
+  };
+}
diff --git a/pkgs/development/ocaml-modules/ssl/default.nix b/pkgs/development/ocaml-modules/ssl/default.nix
new file mode 100644
index 000000000000..6d57bd3bbf51
--- /dev/null
+++ b/pkgs/development/ocaml-modules/ssl/default.nix
@@ -0,0 +1,27 @@
+{stdenv, fetchurl, which, openssl, ocaml, findlib}:
+
+let
+  ocaml_version = (builtins.parseDrvName ocaml.name).version;
+  version = "0.4.4";
+in
+
+stdenv.mkDerivation {
+  name = "ocaml-ssl-${version}";
+
+  src = fetchurl {
+    url = "mirror://debian/pool/main/o/ocaml-ssl/ocaml-ssl_${version}.orig.tar.gz";
+    sha256 = "1m45d0bd4ndxswaa1symp6c1npzjmm9pz0nf7w0q15gflqhba5ch";
+  };
+
+  buildInputs = [which openssl ocaml findlib];
+
+  dontAddPrefix = true;
+
+  configureFlags = "--disable-ldconf";
+
+  meta = {
+    homepage = http://savonet.rastageeks.org/;
+    description = "OCaml bindings for libssl ";
+    license = "LGPL+link exception";
+  };
+}
diff --git a/pkgs/development/perl-modules/gd-options-passthrough-and-fontconfig.patch b/pkgs/development/perl-modules/gd-options-passthrough-and-fontconfig.patch
new file mode 100644
index 000000000000..24eab55f6eb5
--- /dev/null
+++ b/pkgs/development/perl-modules/gd-options-passthrough-and-fontconfig.patch
@@ -0,0 +1,49 @@
+This patch configures Getopt::Long to pass options
+so they will be available at the second GetOptions call.
+
+Also an option to specify the search path for libfontconfig
+is added.
+diff -Naur GD-2.45/Makefile.PL GD-2.45-patched/Makefile.PL
+--- GD-2.45/Makefile.PL	2009-07-10 13:40:07.000000000 -0430
++++ GD-2.45-patched/Makefile.PL	2010-11-26 22:48:52.372992578 -0430
+@@ -16,9 +16,9 @@
+ my (@INC,@LIBPATH,@LIBS);
+ my $AUTOCONFIG = 0;      # global set by try_to_autoconfigure() below
+ 
+-my ($options,$lib_gd_path,$lib_ft_path,$lib_png_path,$lib_jpeg_path,$lib_xpm_path,$lib_zlib_path,$force);
++my ($options,$lib_gd_path,$lib_ft_path,$lib_png_path,$lib_jpeg_path,$lib_xpm_path,$lib_zlib_path,$lib_fontconfig_path,$force);
+ 
+-use Getopt::Long;
++use Getopt::Long qw(:config pass_through);
+ GetOptions("ignore_missing_gd" => \$force);
+ 
+ unless (try_to_autoconfigure(\$options,\$lib_gd_path,\@INC,\@LIBPATH,\@LIBS) || $force) {
+@@ -49,6 +49,7 @@
+ 			"lib_jpeg_path=s" => \$lib_jpeg_path,
+ 			"lib_xpm_path=s"  => \$lib_xpm_path,
+ 			"lib_zlib_path=s" => \$lib_zlib_path,
++                        "lib_fontconfig_path=s" => \$lib_fontconfig_path,
+ 		       );
+ unless ($result) {
+   print STDERR <<END;
+@@ -64,6 +65,7 @@
+      -lib_jpeg_path path            path to libjpeg
+      -lib_xpm_path  path            path to libxpm
+      -lib_zlib_path path            path to libpng
++     -lib_fontconfig_path path      path to libfontconfig
+      -ignore_missing_gd             Ignore missing or old libgd installations and try to compile anyway
+ 
+ If no options are passed on the command line.  The program will
+@@ -111,6 +113,12 @@
+     @INC     = ("-I$lib_zlib_path/include", @INC);
+     @LIBPATH = ("-L$lib_zlib_path/lib", @LIBPATH); 
+ }
++if( defined($lib_fontconfig_path) ) 
++{
++    print "Fontconfig library used from:     $lib_fontconfig_path\n";
++    @INC     = ("-I$lib_fontconfig_path/include", @INC);
++    @LIBPATH = ("-L$lib_fontconfig_path/lib", @LIBPATH); 
++}
+ #############################################################################################
+ 
+ if ($^O eq 'VMS'){
diff --git a/pkgs/development/tools/build-managers/scons/default.nix b/pkgs/development/tools/build-managers/scons/default.nix
index d23940dda945..9d6ab6ba8159 100644
--- a/pkgs/development/tools/build-managers/scons/default.nix
+++ b/pkgs/development/tools/build-managers/scons/default.nix
@@ -13,16 +13,15 @@ stdenv.mkDerivation {
     sha256 = "0qk74nrnm9qlijrq6gmy8cyhjgp0gis4zx44divnr8n487d5308a";
   };
 
+  buildInputs = [python makeWrapper];
+
   preConfigure = ''
-    for i in script/* 
-    do 
+    for i in "script/"*; do
      substituteInPlace $i --replace "/usr/bin/env python" "${python}/bin/python"
     done
   '';
-
-  propagatedBuildInputs = [python makeWrapper];
-  buildPhase = "python setup.py install --prefix=$out --install-lib=$(toPythonPath $out) --hardlink-scons -O1";
-  installPhase = "for n in $out/bin/*; do wrapProgram $n --suffix PYTHONPATH ':' \"$(toPythonPath $out)\"; done";
+  buildPhase = "python setup.py install --prefix=$out --install-data=$out/share --install-lib=$(toPythonPath $out) --symlink-scons -O1";
+  installPhase = "for n in $out/bin/*-${version}; do wrapProgram $n --suffix PYTHONPATH ':' \"$(toPythonPath $out)\"; done";
 
   meta = {
     homepage = "http://scons.org/";
diff --git a/pkgs/development/tools/documentation/doxygen/default.nix b/pkgs/development/tools/documentation/doxygen/default.nix
index 899343d12ff8..9d15dc29772d 100644
--- a/pkgs/development/tools/documentation/doxygen/default.nix
+++ b/pkgs/development/tools/documentation/doxygen/default.nix
@@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
   configureFlags = "--release"
 		 + (if qt == null then "" else " --with-doxywizard")
 		 ;
-
+  makeFlags = "MAN1DIR=share/man/man1";
   preConfigure =
    (if (qt == null)
     then ""
diff --git a/pkgs/development/tools/misc/distcc/default.nix b/pkgs/development/tools/misc/distcc/default.nix
index e372350e3846..b81cb9223bc3 100644
--- a/pkgs/development/tools/misc/distcc/default.nix
+++ b/pkgs/development/tools/misc/distcc/default.nix
@@ -19,6 +19,7 @@ stdenv.mkDerivation {
   ''
     configureFlagsArray=( CFLAGS="-O2 -fno-strict-aliasing"
                           CXXFLAGS="-O2 -fno-strict-aliasing"
+			  --mandir=$out/share/man
                           ${if sysconfDir == "" then "" else "--sysconfdir=${sysconfDir}"}
                           ${if static then "LDFLAGS=-static" else ""}
                           --with${if static == true || popt == null then "" else "out"}-included-popt
diff --git a/pkgs/development/tools/ocaml/findlib/default.nix b/pkgs/development/tools/ocaml/findlib/default.nix
new file mode 100644
index 000000000000..e1f85f745759
--- /dev/null
+++ b/pkgs/development/tools/ocaml/findlib/default.nix
@@ -0,0 +1,54 @@
+{stdenv, fetchurl, m4, ncurses, ocaml, writeText}:
+
+let
+  ocaml_version = (builtins.parseDrvName ocaml.name).version;
+  version = "1.2.6";
+in
+
+stdenv.mkDerivation {
+  name = "ocaml-findlib-${version}";
+
+  src = fetchurl {
+    url = "http://download.camlcity.org/download/findlib-${version}.tar.gz";
+    sha256 = "1b6z5lylsjxxaifw2yc21cs0dc84zqi4q57sgwg4j8k3m60ivpxs";
+  };
+
+  buildInputs = [m4 ncurses ocaml];
+
+  patches = [ ./ldconf.patch ];
+
+  dontAddPrefix=true;
+
+  preConfigure=''
+    configureFlagsArray=(
+      -bindir $out/bin
+      -mandir $out/share/man
+      -sitelib $out/lib/ocaml/${ocaml_version}/site-lib
+      -config $out/etc/findlib.conf
+      -no-topfind
+    )
+  '';
+
+  buildPhase = ''
+    make all
+    make opt
+  '';
+
+  setupHook = writeText "setupHook.sh" ''
+    addOCamlPath () {
+        if test -d "''$1/lib/ocaml/${ocaml_version}/site-lib"; then
+            export OCAMLPATH="''${OCAMLPATH}''${OCAMLPATH:+:}''$1/lib/ocaml/${ocaml_version}/site-lib/"
+        fi
+        export OCAMLFIND_DESTDIR="''$out/lib/ocaml/${ocaml_version}/site-lib/"
+        ensureDir ''$OCAMLFIND_DESTDIR
+    }
+    
+    envHooks=(''${envHooks[@]} addOCamlPath)
+  '';
+
+  meta = {
+    homepage = http://projects.camlcity.org/projects/findlib.html;
+    description = "O'Caml library manager";
+    license = "MIT/X11";
+  };
+}
diff --git a/pkgs/development/tools/ocaml/findlib/ldconf.patch b/pkgs/development/tools/ocaml/findlib/ldconf.patch
new file mode 100644
index 000000000000..7718cb673925
--- /dev/null
+++ b/pkgs/development/tools/ocaml/findlib/ldconf.patch
@@ -0,0 +1,8 @@
+Setting paths to search for dnynmic libraries isn't very useful in Nix.
+
+--- findlib-1.2.6/findlib.conf.in	2010-08-17 14:50:28.000000000 -0400
++++ findlib-1.2.6/findlib.conf.in	2010-11-24 09:46:55.179648354 -0500
+@@ -1,2 +1,3 @@
+ destdir="@SITELIB@"
+ path="@SITELIB@"
++ldconf="ignore"
diff --git a/pkgs/games/atanks/default.nix b/pkgs/games/atanks/default.nix
new file mode 100644
index 000000000000..211e388b871a
--- /dev/null
+++ b/pkgs/games/atanks/default.nix
@@ -0,0 +1,55 @@
+x@{builderDefsPackage
+  , allegro
+  , ...}:
+builderDefsPackage
+(a :  
+let 
+  helperArgNames = ["stdenv" "fetchurl" "builderDefsPackage"] ++ 
+    [];
+
+  buildInputs = map (n: builtins.getAttr n x)
+    (builtins.attrNames (builtins.removeAttrs x helperArgNames));
+  sourceInfo = rec {
+    baseName="atanks";
+    version="4.7";
+    name="${baseName}-${version}";
+    project="${baseName}";
+    url="mirror://sourceforge/project/${project}/${baseName}/${name}/${name}.tar.gz";
+    hash="0kd98anwb785irv4qm1gqpk2xnh1q0fxnfazkjqpwjvgrliyj2rh";
+  };
+in
+rec {
+  src = a.fetchurl {
+    url = sourceInfo.url;
+    sha256 = sourceInfo.hash;
+  };
+
+  inherit (sourceInfo) name version;
+  inherit buildInputs;
+
+  /* doConfigure should be removed if not needed */
+  phaseNames = ["fixInstall" "doMakeInstall"];
+  makeFlags=[
+    "PREFIX=$out/"
+  ];
+  fixInstall = a.fullDepEntry (''
+    sed -e "s@INSTALL=.*bin/install @INSTALL=install @" -i Makefile
+    sed -e "s@-g 0 -m ... -o 0@@" -i Makefile
+  '') ["doUnpack" "minInit"];
+      
+  meta = {
+    description = "Atomic Tanks ballistics game";
+    maintainers = with a.lib.maintainers;
+    [
+      raskin
+    ];
+    platforms = with a.lib.platforms;
+      linux;
+  };
+  passthru = {
+    updateInfo = {
+      downloadPage = "http://sourceforge.net/projects/atanks/files/atanks/";
+    };
+  };
+}) x
+
diff --git a/pkgs/games/crrcsim/default.nix b/pkgs/games/crrcsim/default.nix
new file mode 100644
index 000000000000..080265e1395f
--- /dev/null
+++ b/pkgs/games/crrcsim/default.nix
@@ -0,0 +1,48 @@
+x@{builderDefsPackage
+  , mesa, SDL, SDL_mixer, plib, libjpeg
+  , ...}:
+builderDefsPackage
+(a :  
+let 
+  helperArgNames = ["stdenv" "fetchurl" "builderDefsPackage"] ++ 
+    [];
+
+  buildInputs = map (n: builtins.getAttr n x)
+    (builtins.attrNames (builtins.removeAttrs x helperArgNames));
+  sourceInfo = rec {
+    baseName="crrcsim";
+    version="0.9.11";
+    name="${baseName}-${version}";
+    url="http://download.berlios.de/${baseName}/${name}.tar.gz";
+    hash="16z9gixp60920lqckij8kdw90jys0llls4lw5c8vqgk14ck5hhiz";
+  };
+in
+rec {
+  src = a.fetchurl {
+    url = sourceInfo.url;
+    sha256 = sourceInfo.hash;
+  };
+
+  inherit (sourceInfo) name version;
+  inherit buildInputs;
+
+  /* doConfigure should be removed if not needed */
+  phaseNames = ["doConfigure" "doMakeInstall"];
+      
+  meta = {
+    description = "A model-airplane flight simulator";
+    maintainers = with a.lib.maintainers;
+    [
+      raskin
+    ];
+    platforms = with a.lib.platforms;
+      linux;
+    license = "GPLv2";
+  };
+  passthru = {
+    updateInfo = {
+      downloadPage = "http://crrcsim.berlios.de/wiki/index.php?n=CRRCsim.DownLoad";
+    };
+  };
+}) x
+
diff --git a/pkgs/games/gl-117/default.nix b/pkgs/games/gl-117/default.nix
new file mode 100644
index 000000000000..e37f474b5974
--- /dev/null
+++ b/pkgs/games/gl-117/default.nix
@@ -0,0 +1,41 @@
+x@{builderDefsPackage
+  , mesa, SDL, freeglut, SDL_mixer, autoconf, automake, libtool
+  , ...}:
+builderDefsPackage
+(a :  
+let 
+  helperArgNames = ["stdenv" "fetchurl" "builderDefsPackage"] ++ 
+    [];
+
+  buildInputs = map (n: builtins.getAttr n x)
+    (builtins.attrNames (builtins.removeAttrs x helperArgNames));
+  sourceInfo = rec {
+    version = "1.3.2";
+    name = "gl-117-1.3.2";
+    url = "mirror://sourceforge/project/gl-117/gl-117/GL-117%20Source/gl-117-1.3.2-src.tar.bz2";
+    hash = "1yvg1rp1yijv0b45cz085b29x5x0g5fkm654xdv5qwh2l6803gb4";
+  };
+in
+rec {
+  src = a.fetchurl {
+    url = sourceInfo.url;
+    sha256 = sourceInfo.hash;
+  };
+
+  inherit (sourceInfo) name version;
+  inherit buildInputs;
+
+  /* doConfigure should be removed if not needed */
+  phaseNames = ["doConfigure" "doMakeInstall"];
+      
+  meta = {
+    description = "An air combat simulator";
+    maintainers = with a.lib.maintainers;
+    [
+      raskin
+    ];
+    platforms = with a.lib.platforms;
+      linux;
+  };
+}) x
+
diff --git a/pkgs/games/stardust/default.nix b/pkgs/games/stardust/default.nix
new file mode 100644
index 000000000000..c7ee0df6a7a3
--- /dev/null
+++ b/pkgs/games/stardust/default.nix
@@ -0,0 +1,62 @@
+x@{builderDefsPackage
+  , zlib, libtiff, libxml2, SDL, xproto, libX11, libXi, inputproto, libXmu
+  , libXext, xextproto, mesa
+  , ...}:
+builderDefsPackage
+(a :  
+let 
+  helperArgNames = ["stdenv" "fetchurl" "builderDefsPackage"] ++ 
+    [];
+
+  buildInputs = map (n: builtins.getAttr n x)
+    (builtins.attrNames (builtins.removeAttrs x helperArgNames));
+  sourceInfo = rec {
+    baseName="stardust";
+    version="0.1.13";
+    name="${baseName}-${version}";
+    url="http://iwar.free.fr/IMG/gz/${name}.tar.gz";
+    hash="19rs9lz5y5g2yiq1cw0j05b11digw40gar6rw8iqc7bk3s8355xp";
+  };
+in
+rec {
+  src = a.fetchurl {
+    url = sourceInfo.url;
+    sha256 = sourceInfo.hash;
+  };
+
+  inherit (sourceInfo) name version;
+  inherit buildInputs;
+
+  /* doConfigure should be removed if not needed */
+  phaseNames = ["doConfigure" "fixPaths" "doMakeInstall"];
+
+  configureFlags = [
+    "--bindir=$out/bin"
+    "--datadir=$out/share"
+  ];
+  
+  makeFlags = [
+    "bindir=$out/bin"
+    "datadir=$out/share"
+  ];
+
+  fixPaths = a.fullDepEntry (''
+    sed -e "s@#define PACKAGE .*@#define PACKAGE \"stardust\"@" -i config.h
+  '') ["minInit"];
+
+  meta = {
+    description = "Space flight simulator";
+    maintainers = with a.lib.maintainers;
+    [
+      raskin
+    ];
+    platforms = with a.lib.platforms;
+      linux;
+  };
+  passthru = {
+    updateInfo = {
+      downloadPage = "http://iwar.free.fr/article.php3?id_article=6";
+    };
+  };
+}) x
+
diff --git a/pkgs/games/xmoto/src-for-default.nix b/pkgs/games/xmoto/src-for-default.nix
index 4250450617ac..fd538a8a9a72 100644
--- a/pkgs/games/xmoto/src-for-default.nix
+++ b/pkgs/games/xmoto/src-for-default.nix
@@ -1,9 +1,9 @@
 rec {
-   version="0.5.3";
-   name="xmoto-0.5.3";
-   hash="1xqz1x4q75469s1m6qqy5akbh62327p30267ca5ivjff59wpcfyf";
+   version="0.5.4";
+   name="xmoto-0.5.4";
+   hash="1r548hx7yqxql5b0d1byxbwxjhlss063vsj5xy9cc1b8dqhmkqh5";
    url="http://download.tuxfamily.org/xmoto/xmoto/${version}/xmoto-${version}-src.tar.gz";
-   advertisedUrl="http://download.tuxfamily.org/xmoto/xmoto/0.5.3/xmoto-0.5.3-src.tar.gz";
+   advertisedUrl="http://download.tuxfamily.org/xmoto/xmoto/0.5.4/xmoto-0.5.4-src.tar.gz";
   
   
 }
diff --git a/pkgs/lib/maintainers.nix b/pkgs/lib/maintainers.nix
index e795201755f4..b6f5b990c4e9 100644
--- a/pkgs/lib/maintainers.nix
+++ b/pkgs/lib/maintainers.nix
@@ -13,12 +13,14 @@
   kkallio = "Karn Kallio <tierpluspluslists@gmail.com>";
   ludo = "Ludovic Courtès <ludo@gnu.org>";
   marcweber = "Marc Weber <marco-oweber@gmx.de>";
+  neznalek = "Vladimír Čunát <vcunat@gmail.com>";
   phreedom = "Evgeny Egorochkin <phreedom.stdin@gmail.com>";
   pierron = "Nicolas B. Pierron <nixos@nbp.name>";
   raskin = "Michael Raskin <7c6f434c@mail.ru>";
   roconnor = "Russell O'Connor <roconnor@theorem.ca>";
   sander = "Sander van der Burg <s.vanderburg@tudelft.nl>";
   simons = "Peter Simons <simons@cryp.to>";
+  thammers = "Tobias Hammerschmidt <jawr@gmx.de>";
   urkud = "Yury G. Kudryashov <urkud+nix@ya.ru>";
   viric = "Lluís Batlle i Rossell <viriketo@gmail.com>";
   winden = "Antonio Vargas Gonzalez <windenntw@gmail.com>";
diff --git a/pkgs/misc/emulators/wine/src-for-default.nix b/pkgs/misc/emulators/wine/src-for-default.nix
index 9f8e7c8914c3..86d6bfd00ee7 100644
--- a/pkgs/misc/emulators/wine/src-for-default.nix
+++ b/pkgs/misc/emulators/wine/src-for-default.nix
@@ -1,9 +1,9 @@
 rec {
-   version="1.3.4";
-   name="wine-1.3.4";
-   hash="1p2zh9c3k0b2ryy8cdldcz6x7mdg0c2gkvj0hxa3bi9cczsqg4s4";
+   version="1.3.8";
+   name="wine-1.3.8";
+   hash="1nxz2xm9xndrsiaiw18g0098dkw7p2k32qsnm0l47giw2h6gdsvf";
    url="http://prdownloads.sourceforge.net/wine/wine-${version}.tar.bz2";
-   advertisedUrl="http://prdownloads.sourceforge.net/wine/wine-1.3.4.tar.bz2";
+   advertisedUrl="http://prdownloads.sourceforge.net/wine/wine-1.3.8.tar.bz2";
   
   
 }
diff --git a/pkgs/os-specific/linux/ati-drivers/default.nix b/pkgs/os-specific/linux/ati-drivers/default.nix
index db25bebb06c9..248e24c90bdb 100644
--- a/pkgs/os-specific/linux/ati-drivers/default.nix
+++ b/pkgs/os-specific/linux/ati-drivers/default.nix
@@ -21,7 +21,7 @@ in
 
 stdenv.mkDerivation rec {
   name = "ati-drivers-${version}";
-  version = "10-10-x86";
+  version = "10-11-x86";
 
   builder = ./builder.sh;
 
@@ -30,8 +30,8 @@ stdenv.mkDerivation rec {
   src =
     assert stdenv.system == "x86_64-linux";
   fetchurl {
-    url = https://a248.e.akamai.net/f/674/9206/0/www2.ati.com/drivers/linux/ati-driver-installer-10-10-x86.x86_64.run;
-    sha256 = "1g71sj8qbarshw3hfds2v6y9q7lma3d36d0x79c7vvgllcd5c76x";
+    url = https://a248.e.akamai.net/f/674/9206/0/www2.ati.com/drivers/linux/ati-driver-installer-10-11-x86.x86_64.run;
+    sha256 = "1z33w831ayx1j5lm9d1xv6whkmzsz9v8li3s8c96hwnwki6zpimr";
   };
 
   buildInputs = [xlibs.libXext xlibs.libX11
diff --git a/pkgs/os-specific/linux/broadcom-sta/default.nix b/pkgs/os-specific/linux/broadcom-sta/default.nix
new file mode 100644
index 000000000000..cf8fde4751cc
--- /dev/null
+++ b/pkgs/os-specific/linux/broadcom-sta/default.nix
@@ -0,0 +1,45 @@
+{ stdenv, fetchurl, kernel }:
+
+let version = "5.60.246.6";
+    bits = if stdenv.system == "i686-linux" then "32" else
+      assert stdenv.system == "x86_64-linux"; "64";
+in
+
+stdenv.mkDerivation {
+  name = "broadcom-sta-${version}";
+  src = fetchurl {
+    url = "http://www.broadcom.com/docs/linux_sta/hybrid-portsrc_x86-${bits}_v${version}.tar.gz";
+    sha256 = if bits == "32"
+      then "0y8ap9zhfsg1k603qf5a7n73zvsw7nkqh42dlcyxan5zdzmgcqdx"
+      else "0z8a57fpajiag830g1ifc9vrm7wk5bm7dwi7a9ljm3cns3an07fl";
+  };
+
+  buildInputs = [ kernel ];
+  patches = [ ./makefile.patch ];
+
+  makeFlags = "KDIR=${kernel}/lib/modules/${kernel.version}/build";
+
+  unpackPhase =
+    ''
+      sourceRoot=broadcom-sta
+      mkdir "$sourceRoot"
+      tar xvf "$src" -C "$sourceRoot"
+    '';
+
+  installPhase =
+    ''
+      binDir="$out/lib/modules/${kernel.version}/kernel/net/wireless/"
+      docDir="$out/share/doc/broadcom-sta/"
+      ensureDir "$binDir" "$docDir"
+      cp wl.ko "$binDir"
+      cp lib/LICENSE.txt "$docDir"
+    '';
+
+  meta = {
+    description = "Kernel module driver for some Broadcom's wireless cards";
+    homepage = http://www.broadcom.com/support/802.11/linux_sta.php;
+    license = "unfree-redistributable";
+    maintainers = [ stdenv.lib.maintainers.neznalek ];
+    platforms = stdenv.lib.platforms.linux;
+  };
+}
diff --git a/pkgs/os-specific/linux/broadcom-sta/makefile.patch b/pkgs/os-specific/linux/broadcom-sta/makefile.patch
new file mode 100644
index 000000000000..6ba8527e2673
--- /dev/null
+++ b/pkgs/os-specific/linux/broadcom-sta/makefile.patch
@@ -0,0 +1,16 @@
+--- src/Makefile	2010-10-08 00:32:59.000000000 +0200
++++ src/Makefile	2010-11-09 11:06:28.832999850 +0100
+@@ -27,10 +27,10 @@
+ EXTRA_LDFLAGS      := $(src)/lib/wlc_hybrid.o_shipped
+ 
+ all:
+-	KBUILD_NOPEDANTIC=1 make -C /lib/modules/`uname -r`/build M=`pwd`
++	KBUILD_NOPEDANTIC=1 make -C ${KDIR} M=`pwd`
+ 
+ clean:
+-	KBUILD_NOPEDANTIC=1 make -C /lib/modules/`uname -r`/build M=`pwd` clean
++	KBUILD_NOPEDANTIC=1 make -C ${KDIR} clean
+ 
+ install:
+-	install -D -m 755 wl.ko /lib/modules/`uname -r`/kernel/drivers/net/wireless/wl.ko
++	install -D -m 755 wl.ko $out/lib/modules/${kernelVersion}/kernel/drivers/net/wireless/wl.ko
diff --git a/pkgs/os-specific/linux/kernel/linux-2.6.32.nix b/pkgs/os-specific/linux/kernel/linux-2.6.32.nix
index 3466b3997224..a81085fd5e2e 100644
--- a/pkgs/os-specific/linux/kernel/linux-2.6.32.nix
+++ b/pkgs/os-specific/linux/kernel/linux-2.6.32.nix
@@ -198,11 +198,11 @@ in
 import ./generic.nix (
 
   rec {
-    version = "2.6.32.25";
+    version = "2.6.32.26";
   
     src = fetchurl {
       url = "mirror://kernel/linux/kernel/v2.6/linux-${version}.tar.bz2";
-      sha256 = "1ycri78c335qqmfqxg8c4m03f6gy0q1y35yv7yg2f2m6aqhylh2z";
+      sha256 = "1kpkl5ps8xrwddmn90rzynra49am9rdm37smplhf3w3ifvpc1mf3";
     };
 
     config = configWithPlatform stdenv.platform;
diff --git a/pkgs/os-specific/linux/libnl/default.nix b/pkgs/os-specific/linux/libnl/default.nix
new file mode 100644
index 000000000000..cbe938d2ee41
--- /dev/null
+++ b/pkgs/os-specific/linux/libnl/default.nix
@@ -0,0 +1,20 @@
+{stdenv, fetchurl, bison, flex}:
+
+stdenv.mkDerivation rec {
+  name = "libnl-2.0";
+
+  src = fetchurl {
+    url = "${meta.homepage}files/${name}.tar.gz";
+    sha256 = "173sr25xpsakdvjcg62790v6kwcgxj5r0js2lx6hg89w7n8dqh2s";
+  };
+
+  buildInputs = [ bison flex ];
+  postConfigure = "type -tp flex";
+
+  meta = {
+    homepage = "http://www.infradead.org/~tgr/libnl/";
+    description = "Linux NetLink interface library";
+    maintainers = [ stdenv.lib.maintainers.urkud ];
+    platforms = stdenv.lib.platforms.linux;
+  };
+}
diff --git a/pkgs/os-specific/linux/nvidia-x11/default.nix b/pkgs/os-specific/linux/nvidia-x11/default.nix
index d20e92f76362..ff85f8f8b970 100644
--- a/pkgs/os-specific/linux/nvidia-x11/default.nix
+++ b/pkgs/os-specific/linux/nvidia-x11/default.nix
@@ -7,7 +7,7 @@
 
 with stdenv.lib;
 
-let versionNumber = "256.44"; in
+let versionNumber = "260.19.21"; in
 
 stdenv.mkDerivation {
   name = "nvidia-x11-${versionNumber}${optionalString (!libsOnly) "-${kernel.version}"}";
@@ -18,12 +18,12 @@ stdenv.mkDerivation {
     if stdenv.system == "i686-linux" then
       fetchurl {
         url = "http://us.download.nvidia.com/XFree86/Linux-x86/${versionNumber}/NVIDIA-Linux-x86-${versionNumber}.run";
-        sha256 = "1kirr1bs6kricxcbk1lxz263jyzfb2il91071h0slilmpjs5ipmi";
+        sha256 = "1gr11icpi1jcba39i86mvb6yvawika04hja2c2gri9mz7bbbn1kp";
       }
     else if stdenv.system == "x86_64-linux" then
       fetchurl {
         url = "http://us.download.nvidia.com/XFree86/Linux-x86_64/${versionNumber}/NVIDIA-Linux-x86_64-${versionNumber}-no-compat32.run";
-        sha256 = "004m97wp2bspykb96dj8kkd2pa2rx8pswscyyf7r9hb93vx47bbl";
+        sha256 = "1pl5pwp72vdvw74449pv9h4hnygg5sasz8z3f0vbmch4c8hdmyz9";
       }
     else throw "nvidia-x11 does not support platform ${stdenv.system}";
 
diff --git a/pkgs/os-specific/linux/sysstat/default.nix b/pkgs/os-specific/linux/sysstat/default.nix
index 998670712d65..dd3d585c0dd6 100644
--- a/pkgs/os-specific/linux/sysstat/default.nix
+++ b/pkgs/os-specific/linux/sysstat/default.nix
@@ -1,18 +1,26 @@
-{stdenv, fetchurl, gettext}:
+{ stdenv, fetchurl, gettext }:
    
-stdenv.mkDerivation {
-  name = "sysstat-8.0.4.1";
+stdenv.mkDerivation rec {
+  name = "sysstat-9.0.6.1";
    
   src = fetchurl {
-    url = http://perso.orange.fr/sebastien.godard/sysstat-8.0.4.1.tar.bz2;
-    sha256 = "17bzyz6bp63br4pns40ypc0qac0299lh90p7fhis5sn31sx811rf";
+    url = "http://perso.orange.fr/sebastien.godard/${name}.tar.bz2";
+    sha256 = "061r616cc0wfjkrk5ywqcwh5gwvm3gw92phfkj9bhlzxhi9srkr7";
   };
 
-  buildInputs = [gettext];
+  buildInputs = [ gettext ];
 
   preConfigure = ''
     export PATH_CP=$(type -tp cp)
     export PATH_CHKCONFIG=/no-such-program
     makeFlagsArray=(SA_DIR=$out/var/log/sa SYSCONFIG_DIR=$out/etc CHOWN=true IGNORE_MAN_GROUP=y)
   '';
+
+  meta = {
+    homepage = http://sebastien.godard.pagesperso-orange.fr/;
+    description = "A collection of performance monitoring tools for Linux (such as sar, iostat and pidstat)";
+    license = "GPLv2+";
+    platforms = stdenv.lib.platforms.linux;
+    maintainers = [ stdenv.lib.maintainers.eelco ];
+  };
 }
diff --git a/pkgs/servers/evolution-data-server/default.nix b/pkgs/servers/evolution-data-server/default.nix
index d313da9f2f9c..84c1eee57e58 100644
--- a/pkgs/servers/evolution-data-server/default.nix
+++ b/pkgs/servers/evolution-data-server/default.nix
@@ -3,7 +3,7 @@ x@{builderDefsPackage
   , db4, krb5, openldap, glib, libxml2, GConf
   , nss, gtk, libgnome, libsoup, gnome_keyring
   , gtkdoc, sqlite, libgweather, libical, icu
-  , dbus_glib, gperf, nspr, gdk_pixbuf ? null
+  , dbus_glib, gperf, nspr
   , ...}:
 builderDefsPackage
 (a :  
diff --git a/pkgs/servers/samba/default.nix b/pkgs/servers/samba/default.nix
index 31db36c638a7..af29fdb8d9f9 100644
--- a/pkgs/servers/samba/default.nix
+++ b/pkgs/servers/samba/default.nix
@@ -13,39 +13,49 @@
 , configDir ? "/etc/samba"
 
 }:
+
 let
- usewith = flag: option: if flag then "--with-"+option else "";
+
+ useWith = flag: option: if flag then "--with-"+option else "";
+ 
 in
+
 stdenv.mkDerivation rec {
-  name = "samba-3.3.3";
+  name = "samba-3.5.6";
 
   src = fetchurl {
     url = "http://us3.samba.org/samba/ftp/stable/${name}.tar.gz";
-    sha256 = "08x3ng7ls5c1a95v7djx362i55wdlmnvarpr7rhng5bb55s9n5qn";
+    sha256 = "1nj78bahph9fwxv0v3lz31cy6z167jgmvz63d8l9mlbmhf310r26";
   };
 
-  buildInputs = [readline pam openldap popt iniparser libunwind fam acl]
+  buildInputs = [ readline pam openldap popt iniparser libunwind fam acl ]
     ++ stdenv.lib.optional useKerberos kerberos;
 
-  preConfigure = "cd source";
+  preConfigure = "cd source3";
 
-  postInstall = ''
-    mkdir -pv $out/lib/cups/backend
-    ln -sv ../../../bin/smbspool $out/lib/cups/backend/smb
-  '' + stdenv.lib.optionalString (configDir == "") "touch $out/lib/smb.conf";
-
-  # Don't pass --with-private-dir=/var/samba/private
-  #            --with-lockdir=/var/samba/lock
-  # the build system will try to create it.
   configureFlags = ''
     --with-pam
     --with-cifsmount
     --with-aio-support
     --with-pam_smbpass
     --disable-swat
-    --enable-shared-libs
     --with-configdir=${configDir}
-    ${usewith winbind "winbind"}
+    --with-fhs
+    --localstatedir=/var
+    ${useWith winbind "winbind"}
     ${if stdenv.gcc.libc != null then "--with-libiconv=${stdenv.gcc.libc}" else ""}
   '';
+
+  # Need to use a DESTDIR because `make install' tries to write in /var and /etc.
+  installFlags = "DESTDIR=$(TMPDIR)/inst";
+
+  postInstall =
+    ''
+      mkdir -p $out
+      mv $TMPDIR/inst/$out/* $out/
+  
+      mkdir -pv $out/lib/cups/backend
+      ln -sv ../../../bin/smbspool $out/lib/cups/backend/smb
+    '' # */
+    + stdenv.lib.optionalString (configDir == "") "touch $out/lib/smb.conf";
 }
diff --git a/pkgs/shells/ipython/default.nix b/pkgs/shells/ipython/default.nix
new file mode 100644
index 000000000000..68064dded3d9
--- /dev/null
+++ b/pkgs/shells/ipython/default.nix
@@ -0,0 +1,25 @@
+{ stdenv, fetchurl, buildPythonPackage }:
+
+buildPythonPackage {
+  name = "ipython-0.10.1";
+
+  src = fetchurl {
+    url = "http://ipython.scipy.org/dist/0.10.1/ipython-0.10.1.tar.gz";
+    sha256 = "18zwrg25zn72w4rmcwxzcw11ibgp001fawm2sz189zv86z70fxi2";
+  };
+
+  doCheck = false;
+
+  meta = {
+    homepage = http://ipython.scipy.org/;
+    description = "An interactive computing environment for Python";
+    license = "BSD";
+
+    longDescription = ''
+      The goal of IPython is to create a comprehensive environment
+      for interactive and exploratory computing. It consists of an
+      enhanced interactive Python shell and an architecture for
+      interactive parallel computing.
+    '';
+  };
+}
diff --git a/pkgs/tools/X11/x11vnc/default.nix b/pkgs/tools/X11/x11vnc/default.nix
index bc8463128353..f51d3c2f290a 100644
--- a/pkgs/tools/X11/x11vnc/default.nix
+++ b/pkgs/tools/X11/x11vnc/default.nix
@@ -16,6 +16,10 @@ stdenv.mkDerivation rec {
       xorg.recordproto xorg.libXi xorg.libXrender xorg.renderproto
     ];
 
+  preConfigure = ''
+    configureFlags="--mandir=$out/share/man"
+  '';
+
   meta = {
     description = "A VNC server connected to a real X11 screen";
     homepage = http://www.karlrunge.com/x11vnc/;
diff --git a/pkgs/tools/admin/tightvnc/builder.sh b/pkgs/tools/admin/tightvnc/builder.sh
index 86729c0cdf88..72fced377286 100644
--- a/pkgs/tools/admin/tightvnc/builder.sh
+++ b/pkgs/tools/admin/tightvnc/builder.sh
@@ -32,8 +32,8 @@ buildPhase() {
 
 installPhase() {
     ensureDir $out/bin
-    ensureDir $out/man/man1
-    ./vncinstall $out/bin $out/man
+    ensureDir $out/share/man/man1
+    ./vncinstall $out/bin $out/share/man
 
     # fix HTTP client:
     t=$out/share/tightvnc
diff --git a/pkgs/tools/compression/xdelta/default.nix b/pkgs/tools/compression/xdelta/default.nix
new file mode 100644
index 000000000000..c85c7366cda8
--- /dev/null
+++ b/pkgs/tools/compression/xdelta/default.nix
@@ -0,0 +1,24 @@
+{ stdenv, fetchurl }:
+
+stdenv.mkDerivation {
+  name = "xdelta-3.0z";
+  
+  src = fetchurl {
+    url = http://xdelta.googlecode.com/files/xdelta3.0z.tar.gz;
+    sha256 = "1rpk4n3yz8x81vakzn3n75h79a2ycm06p5v72djklx0wn9gb412m";
+  };
+
+  installPhase =
+    ''
+      mkdir -p $out/bin
+      cp xdelta3 $out/bin/
+
+      mkdir -p $out/share/man/man1
+      cp xdelta3.1 $out/share/man/man1/
+    '';
+
+  meta = {
+    homepage = http://xdelta.org/;
+    description = "A binary diff tool that uses the VCDIFF (RFC 3284) format and compression";
+  };
+}
diff --git a/pkgs/tools/filesystems/e2fsprogs/default.nix b/pkgs/tools/filesystems/e2fsprogs/default.nix
index d568fa75caa5..903b8f10347f 100644
--- a/pkgs/tools/filesystems/e2fsprogs/default.nix
+++ b/pkgs/tools/filesystems/e2fsprogs/default.nix
@@ -1,14 +1,14 @@
-{stdenv, fetchurl, pkgconfig, libuuid}:
+{ stdenv, fetchurl, pkgconfig, libuuid }:
 
 stdenv.mkDerivation rec {
-  name = "e2fsprogs-1.41.9";
+  name = "e2fsprogs-1.41.12";
 
   src = fetchurl {
     url = "mirror://sourceforge/e2fsprogs/${name}.tar.gz";
-    sha256 = "1s365fpv5w5m8n6n5fnn6q003whr1clr22xn25wkssx1c51f7wfb";
+    sha256 = "084zpg4ma6g4y4plz7alfqc1q78jss8lfmpk4w7zvnmz43fd09lw";
   };
 
-  buildInputs = [pkgconfig libuuid];
+  buildInputs = [ pkgconfig libuuid ];
 
   crossAttrs = {
     preConfigure = ''
diff --git a/pkgs/tools/filesystems/encfs/default.nix b/pkgs/tools/filesystems/encfs/default.nix
new file mode 100644
index 000000000000..c950810026a8
--- /dev/null
+++ b/pkgs/tools/filesystems/encfs/default.nix
@@ -0,0 +1,19 @@
+{ stdenv, fetchurl, openssl, fuse, boost, rlog }:
+
+stdenv.mkDerivation {
+  name = "encfs-1.6.1";
+
+  src = fetchurl {
+    url = "http://encfs.googlecode.com/files/encfs-1.6-1.tgz";
+    sha256 = "0k50ic5nyibb9giif9dqm6sj20q0yzri3drg78m788z17xp060mw";
+  };
+
+  buildInputs = [ boost fuse openssl rlog ];
+
+  configureFlags = "--with-boost-serialization=boost_wserialization --with-boost-filesystem=boost_filesystem";
+
+  meta = {
+    homepage = http://www.arg0.net/encfs;
+    description = "EncFS provides an encrypted filesystem in user-space via FUSE";
+  };
+}
diff --git a/pkgs/tools/misc/system-config-printer/default.nix b/pkgs/tools/misc/system-config-printer/default.nix
index 4191ffd6f800..998737660242 100644
--- a/pkgs/tools/misc/system-config-printer/default.nix
+++ b/pkgs/tools/misc/system-config-printer/default.nix
@@ -1,5 +1,7 @@
 {stdenv, fetchurl, udev, intltool, python, pkgconfig, glib, xmlto,
-  docbook_xml_dtd_412, docbook_xsl, libxml2, desktop_file_utils, libusb, cups}:
+  makeWrapper, pygobject, pygtk, docbook_xml_dtd_412, docbook_xsl,
+  pythonDBus, libxml2, desktop_file_utils, libusb, cups, pycups,
+  notify }:
 
 stdenv.mkDerivation rec {
   name = "${meta.name}-${meta.version}";
@@ -9,10 +11,15 @@ stdenv.mkDerivation rec {
     sha256 = "16xjvahmdkkix7281gx7ac9zqaxgfb7pjjlgcc6kmw52cifk86ww";
   };
   buildInputs = [ udev intltool python pkgconfig glib xmlto docbook_xml_dtd_412
-    libxml2 docbook_xsl desktop_file_utils libusb cups];
+    libxml2 docbook_xsl desktop_file_utils libusb cups makeWrapper pygobject
+    pygtk pythonDBus pycups notify ];
 
   configureFlags = "--with-udev-rules";
 
+  postInstall = ''
+    wrapProgram $out/bin/system-config-printer --set PYTHONPATH "$PYTHONPATH:$(toPythonPath $out):$(toPythonPath ${notify})/gtk-2.0"
+  '';
+
   meta = {
     name = "system-config-printer";
     version = "1.2.4";
diff --git a/pkgs/tools/misc/tmux/default.nix b/pkgs/tools/misc/tmux/default.nix
new file mode 100644
index 000000000000..10793753ab59
--- /dev/null
+++ b/pkgs/tools/misc/tmux/default.nix
@@ -0,0 +1,40 @@
+{stdenv, fetchurl, ncurses, libevent}:
+
+stdenv.mkDerivation rec {
+  pname = "tmux";
+  version = "1.3";
+  name = "${pname}-${version}";
+
+  src = fetchurl {
+    url = "mirror://sourceforge/${pname}/${name}.tar.gz";
+    sha256 = "72c2d6f1c30fb4ccbd29b530a7d8a08e67c9c2d87ac8d67e3806561670fc0362";
+  };
+
+  makeFlags = "PREFIX=\${out}";
+
+  buildInputs = [ ncurses libevent ];
+
+  meta = {
+    homepage = http://tmux.sourceforge.net/;
+    description = "tmux is a terminal multiplexer";
+
+    longDescription =
+      '' tmux is intended to be a modern, BSD-licensed alternative to programs such as GNU screen. Major features include:
+
+          * A powerful, consistent, well-documented and easily scriptable command interface.
+          * A window may be split horizontally and vertically into panes.
+          * Panes can be freely moved and resized, or arranged into preset layouts.
+          * Support for UTF-8 and 256-colour terminals.
+          * Copy and paste with multiple buffers.
+          * Interactive menus to select windows, sessions or clients.
+          * Change the current window by searching for text in the target.
+          * Terminal locking, manually or after a timeout.
+          * A clean, easily extended, BSD-licensed codebase, under active development. 
+      '';
+
+    license = stdenv.lib.licenses.bsd3;
+
+    platforms = stdenv.lib.platforms.unix;
+    maintainers = [ stdenv.lib.maintainers.thammers ];
+  };
+}
diff --git a/pkgs/tools/networking/flvstreamer/default.nix b/pkgs/tools/networking/flvstreamer/default.nix
new file mode 100644
index 000000000000..c3ac4e205ae2
--- /dev/null
+++ b/pkgs/tools/networking/flvstreamer/default.nix
@@ -0,0 +1,39 @@
+{ stdenv, fetchurl }:
+
+stdenv.mkDerivation rec {
+
+  name = "flvstreamer-2.1c1";
+
+  src = fetchurl {
+    url = "http://download.savannah.gnu.org/releases/flvstreamer/source/${name}.tar.gz";
+    sha256 = "e90e24e13a48c57b1be01e41c9a7ec41f59953cdb862b50cf3e667429394d1ee";
+  };
+
+  buildPhase = ''
+    make posix
+  '';
+
+  installPhase = ''
+    ensureDir $out/bin
+    cp flvstreamer $out/bin
+    cp streams $out/bin
+    cp rtmpsrv $out/bin
+    cp rtmpsuck $out/bin
+  '';
+
+  meta = {
+    description = "flvstreamer is an command-line RTMP client";
+
+    longDescription =
+      '' flvstreamer is an open source command-line RTMP client intended to 
+         stream audio or video content from all types of flash or rtmp servers.
+      '';
+
+    license = "GPLv2+";
+
+    homepage = http://savannah.nongnu.org/projects/flvstreamer;
+
+    maintainers = [ stdenv.lib.maintainers.thammers ];
+    platforms = stdenv.lib.platforms.linux;
+  };
+}
diff --git a/pkgs/tools/networking/tcpdump/default.nix b/pkgs/tools/networking/tcpdump/default.nix
index 640b305591e2..e9e55f48beec 100644
--- a/pkgs/tools/networking/tcpdump/default.nix
+++ b/pkgs/tools/networking/tcpdump/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl, libpcap, enableStatic ? false }:
 
 stdenv.mkDerivation rec {
-  name = "tcpdump-4.1.0";
+  name = "tcpdump-4.1.1";
 
   src = fetchurl {
     url = "http://www.tcpdump.org/release/${name}.tar.gz";
-    sha256 = "1yhmz23cb0qx16nwnmyk2v7nnqai20lzcc4lx34v728qdpkmc1in";
+    sha256 = "02kz3sghpg16p26dhid8ma67pxil8x5jqdd83fvdnypcc6ylpkg6";
   };
 
   buildInputs = [ libpcap ];
diff --git a/pkgs/tools/networking/wicd/default.nix b/pkgs/tools/networking/wicd/default.nix
index 52bbf7d7a1fa..70cc4a3b46cf 100644
--- a/pkgs/tools/networking/wicd/default.nix
+++ b/pkgs/tools/networking/wicd/default.nix
@@ -6,11 +6,11 @@
 # on urwid which has not been packaged at this time (2009-12-27).
 
 stdenv.mkDerivation rec {
-  name = "wicd-1.6.2.2";
+  name = "wicd-1.7.0";
   
   src = fetchurl {
-    url = "mirror://sourceforge/wicd/files/wicd-stable/${name}/${name}.tar.bz2";
-    sha256 = "1gpjrlanz7rrzkchnpm1dgik333rz1fsg4c4046c5pwdfpp1crxr";
+    url = "mirror://sourceforge/project/wicd/wicd-stable/${name}/${name}.tar.bz2";
+    sha256 = "0civfmpjlsvnaiw7fkpq34mh5ndhfzb9mkl3q2d3rjd4z0mnki8l";
   };
 
   buildInputs = [ python ];
@@ -19,24 +19,34 @@ stdenv.mkDerivation rec {
 
   # Should I be using pygtk's propogated build inputs?
   postPatch = ''
+    substituteInPlace in/scripts=wicd.in --subst-var-by TEMPLATE-DEFAULT $out/share/other/dhclient.conf.template.default
     sed -i "2iexport PATH=\$PATH\$\{PATH:+:\}${python}/bin:${wpa_supplicant}/sbin:${dhcp}/sbin:${wirelesstools}/sbin:${nettools}/sbin:${iproute}/sbin" in/scripts=wicd.in
     sed -i "3iexport PYTHONPATH=\$PYTHONPATH\$\{PYTHONPATH:+:\}$(toPythonPath $out):$(toPythonPath ${pygobject})/gtk-2.0:$(toPythonPath ${pythonDBus})" in/scripts=wicd.in
     sed -i "4iexport LC_ALL=\\\"${locale}\\\"" in/scripts=wicd.in
     sed -i "2iexport PATH=\$PATH\$\{PATH:+:\}${python}/bin" in/scripts=wicd-client.in
     sed -i "3iexport PYTHONPATH=\$PYTHONPATH\$\{PYTHONPATH:+:\}$(toPythonPath $out):$(toPythonPath ${pyGtkGlade})/gtk-2.0:$(toPythonPath ${pygobject})/gtk-2.0:$(toPythonPath ${pycairo}):$(toPythonPath ${pythonDBus})" in/scripts=wicd-client.in
+    sed -i "2iexport PATH=\$PATH\$\{PATH:+:\}${python}/bin" in/scripts=wicd-gtk.in
+    sed -i "3iexport PYTHONPATH=\$PYTHONPATH\$\{PYTHONPATH:+:\}$(toPythonPath $out):$(toPythonPath ${pyGtkGlade})/gtk-2.0:$(toPythonPath ${pygobject})/gtk-2.0:$(toPythonPath ${pycairo}):$(toPythonPath ${pythonDBus})" in/scripts=wicd-gtk.in
+    sed -i "2iexport PATH=\$PATH\$\{PATH:+:\}${python}/bin" in/scripts=wicd-cli.in
+    sed -i "3iexport PYTHONPATH=\$PYTHONPATH\$\{PYTHONPATH:+:\}$(toPythonPath $out):$(toPythonPath ${pyGtkGlade})/gtk-2.0:$(toPythonPath ${pygobject})/gtk-2.0:$(toPythonPath ${pycairo}):$(toPythonPath ${pythonDBus})" in/scripts=wicd-cli.in
   '';
 
   configurePhase = ''
     python setup.py configure \
     --lib=$out/lib/ \
-    --etc=/var/lib/wicd/ \
     --share=$out/share/ \
+    --etc=/var/lib/wicd/ \
     --scripts=$out/etc/scripts/ \
-    --images=$out/share/pixmaps/ \
+    --pixmaps=$out/share/pixmaps/ \
+    --images=$out/share/pixmaps/wicd/ \
     --encryption=$out/etc/encryption/templates/ \
     --bin=$out/bin/ \
     --sbin=$out/sbin/ \
-    --backends=$out/lib/backends/ \
+    --backends=$out/share/backends/ \
+    --daemon=$out/share/daemon/ \
+    --curses=$out/share/curses/ \
+    --gtk=$out/share/gtk/ \
+    --cli=$out/share/cli/ \
     --networks=/var/lib/wicd/configurations/ \
     --resume=$out/etc/acpi/resume.d/ \
     --suspend=$out/etc/acpi/suspend.d/ \
@@ -60,7 +70,11 @@ stdenv.mkDerivation rec {
     --no-install-ncurses \
   '';
 
-  installPhase = ''python setup.py install --prefix=$out'';
+  installPhase = ''
+    python setup.py install --prefix=$out
+    ensureDir $out/share/other
+    cp other/dhclient.conf.template.default $out/share/other/dhclient.conf.template.default
+  '';
 
   meta = {
     homepage = http://wicd.net/;
@@ -74,6 +88,7 @@ stdenv.mkDerivation rec {
       encryption types, such as WPA and WEP. Wicd will automatically
       connect at startup to any preferred network within range.
     '';
+    maintainers = [ stdenv.lib.maintainers.roconnor ];
     license="GPLv2";
   };
 }
diff --git a/pkgs/tools/networking/wicd/mkdir-networks.patch b/pkgs/tools/networking/wicd/mkdir-networks.patch
index df3f0487d1da..01563fd55dab 100644
--- a/pkgs/tools/networking/wicd/mkdir-networks.patch
+++ b/pkgs/tools/networking/wicd/mkdir-networks.patch
@@ -1,11 +1,12 @@
-wicd normally makes the NETWORKS directory at install time, but we cannot do that,
-so we make it at runtime instead.
+wicd normally makes the NETWORKS directory and install the dhclient.conf.template.default at install time, 
+but we cannot do that, so we make it at runtime instead.
 
---- wicd-1.6.2.2/in/scripts=wicd.in	2009-09-01 11:05:31.000000000 -0400
-+++ wicd-1.6.2.2/in/scripts=wicd.in	2010-01-04 18:01:57.000000000 -0500
-@@ -1,3 +1,5 @@
+--- wicd-1.7.0/in/scripts=wicd.in       2010-01-14 23:49:11.000000000 -0500
++++ wicd-1.7.0/in/scripts=wicd.in       2010-11-16 22:35:50.272555487 -0500
+@@ -1,3 +1,6 @@
  #!/bin/bash
  
 +mkdir -p %NETWORKS%
++ln -sf @TEMPLATE-DEFAULT@ %ETC%dhclient.conf.template.default
 +
- exec python -O %LIB%wicd-daemon.py $@
+ exec %PYTHON% -O %SHARE%daemon/wicd-daemon.py $@
diff --git a/pkgs/tools/networking/wicd/no-var-install.patch b/pkgs/tools/networking/wicd/no-var-install.patch
index 9ab5a0520d92..9a333332fcf2 100644
--- a/pkgs/tools/networking/wicd/no-var-install.patch
+++ b/pkgs/tools/networking/wicd/no-var-install.patch
@@ -1,21 +1,16 @@
-The install tries to create files in /var.  This patch removes those steps.

-

---- wicd-1.6.2.2/setup.py	2009-09-01 11:05:31.000000000 -0400

-+++ wicd-1.6.2.2/setup.py	2009-12-27 21:27:57.000000000 -0500

-@@ -464,8 +464,6 @@

-     data = [

-     (wpath.dbus, ['other/wicd.conf']),

-     (wpath.desktop, ['other/wicd.desktop']),

--    (wpath.log, []), 

--    (wpath.etc, []),

-     (wpath.icons + 'scalable/apps/', ['icons/scalable/wicd-client.svg']),

-     (wpath.icons + '192x192/apps/', ['icons/192px/wicd-client.png']),

-     (wpath.icons + '128x128/apps/', ['icons/128px/wicd-client.png']),

-@@ -481,7 +479,6 @@

-     (wpath.images, [('images/' + b) for b in os.listdir('images') if not b.startswith('.')]),

-     (wpath.encryption, [('encryption/templates/' + b) for b in 

-                         os.listdir('encryption/templates') if not b.startswith('.')]),

--    (wpath.networks, []),

-     (wpath.bin, ['scripts/wicd-client', ]), 

-     (wpath.sbin,  ['scripts/wicd', ]),  

-     (wpath.share, ['data/wicd.glade', ]),

+The install tries to create files in /var.  This patch removes those steps.
+
+--- wicd-1.7.0/setup.py 2010-01-14 23:49:11.000000000 -0500
++++ wicd-1.7.0/setup.py 2010-11-16 22:15:33.855977242 -0500
+@@ -493,11 +493,8 @@
+     print "Using init file",(wpath.init, wpath.initfile)
+     data = [
+     (wpath.dbus, ['other/wicd.conf']),
+-    (wpath.log, [empty_file]), 
+-    (wpath.etc, ['other/dhclient.conf.template.default']),
+     (wpath.encryption, [('encryption/templates/' + b) for b in 
+                         os.listdir('encryption/templates') if not b.startswith('.')]),
+-    (wpath.networks, [empty_file]),
+     (wpath.sbin,  ['scripts/wicd']),  
+     (wpath.daemon, ['wicd/monitor.py', 'wicd/wicd-daemon.py',
+                  'wicd/suspend.py', 'wicd/autoconnect.py']), 
diff --git a/pkgs/tools/networking/wicd/pygtk.patch b/pkgs/tools/networking/wicd/pygtk.patch
index e72228f75a5c..f015e50d684a 100644
--- a/pkgs/tools/networking/wicd/pygtk.patch
+++ b/pkgs/tools/networking/wicd/pygtk.patch
@@ -1,8 +1,8 @@
 For some reason nix's pygtk doesn't have a pygtk module so we remove the version check.
 If this ever changes we could remove this patch.
 
---- wicd-1.6.2.2/wicd/wicd-client.py	2009-09-01 11:05:31.000000000 -0400
-+++ wicd-1.6.2.2/wicd/wicd-client.py	2009-12-28 00:22:57.000000000 -0500
+--- wicd-1.7.0/gtk/wicd-client.py	2009-09-01 11:05:31.000000000 -0400
++++ wicd-1.7.0/gtk/wicd-client.py	2009-12-28 00:22:57.000000000 -0500
 @@ -43,9 +43,6 @@
  import atexit
  from dbus import DBusException
diff --git a/pkgs/tools/package-management/nix/sqlite.nix b/pkgs/tools/package-management/nix/sqlite.nix
index 793fc57350a3..0a69564c539f 100644
--- a/pkgs/tools/package-management/nix/sqlite.nix
+++ b/pkgs/tools/package-management/nix/sqlite.nix
@@ -5,11 +5,11 @@
 }:
 
 stdenv.mkDerivation rec {
-  name = "nix-1.0pre24749";
+  name = "nix-1.0pre25036";
 
   src = fetchurl {
-    url = "http://hydra.nixos.org/build/757682/download/4/${name}.tar.bz2";
-    sha256 = "ab2bda296eb91a600d01a22ed4096acdf9b5d613f1155f98433d87e273a58970";
+    url = "http://hydra.nixos.org/build/787041/download/4/${name}.tar.bz2";
+    sha256 = "ccba5f44b75801187b766d4b98a53bccf335df35cde32aeab71630bfca7882f6";
   };
 
   buildInputs = [ perl curl openssl pkgconfig boehmgc ];
diff --git a/pkgs/tools/package-management/nix/unstable.nix b/pkgs/tools/package-management/nix/unstable.nix
index b5e56464eecb..2dac26dd1b1d 100644
--- a/pkgs/tools/package-management/nix/unstable.nix
+++ b/pkgs/tools/package-management/nix/unstable.nix
@@ -1,24 +1,26 @@
 { stdenv, fetchurl, perl, curl, bzip2, openssl ? null
+, pkgconfig, boehmgc
 , storeDir ? "/nix/store"
 , stateDir ? "/nix/var"
 }:
 
 stdenv.mkDerivation rec {
-  name = "nix-1.0pre24122";
+  name = "nix-1.0pre24855";
 
   src = fetchurl {
-    url = "http://hydra.nixos.org/build/667798/download/4/${name}.tar.bz2";
-    sha256 = "0rz9radz4452bp3sy9yzcawn9yz5z4nyng43a0zrsa5v72cv695f";
+    url = "http://hydra.nixos.org/build/774404/download/4/${name}.tar.bz2";
+    sha256 = "cd2a75a04fc03dcafbab1d183e6ee485b491e17f1680bb7ee38738a2b1235932";
   };
 
-  buildNativeInputs = [ perl ];
-  buildInputs = [ curl openssl ];
+  buildNativeInputs = [ perl pkgconfig ];
+  buildInputs = [ curl openssl boehmgc ];
 
   configureFlags =
     ''
       --with-store-dir=${storeDir} --localstatedir=${stateDir}
       --with-bzip2=${bzip2}
       --disable-init-state
+      --enable-gc
       CFLAGS=-O3 CXXFLAGS=-O3
     '';
 
diff --git a/pkgs/tools/security/tor/default.nix b/pkgs/tools/security/tor/default.nix
index d896e4429597..040e53774a3d 100644
--- a/pkgs/tools/security/tor/default.nix
+++ b/pkgs/tools/security/tor/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl, libevent, openssl, zlib }:
 
 stdenv.mkDerivation rec {
-  name = "tor-0.2.1.26";
+  name = "tor-0.2.1.27";
 
   src = fetchurl {
     url = "http://www.torproject.org/dist/${name}.tar.gz";
-    sha256 = "18kz1hs6lvckkddy4y36gi7ly03ar2il2xzkrf8bfgif1gnn1p3c";
+    sha256 = "07367wynpbbqnwzis3z8zf8k9b6cgywcrjzn7gpdal8m4dkmqkgc";
   };
 
   patchPhase =
diff --git a/pkgs/tools/system/ipmitool/default.nix b/pkgs/tools/system/ipmitool/default.nix
index 0a4c4b01ef6f..2b66bb2e081b 100644
--- a/pkgs/tools/system/ipmitool/default.nix
+++ b/pkgs/tools/system/ipmitool/default.nix
@@ -13,13 +13,23 @@ stdenv.mkDerivation {
   };
 
   buildInputs = [ openssl ];
-  dontDisableStatic = static;
-  configureFlags = if static then "LDFLAGS=-static --enable-static --disable-shared" else "--enable-shared";
+
+  preConfigure = ''
+    configureFlagsArray=(
+      --infodir=$out/share/info
+      --mandir=$out/share/man
+      ${if static then "LDFLAGS=-static --enable-static --disable-shared" else "--enable-shared"}
+    )
+  '';
   makeFlags = if static then "AM_LDFLAGS=-all-static" else "";
+  dontDisableStatic = static;
 
   meta = {
     description = ''Command-line interface to IPMI-enabled devices'';
     license = "BSD";
     homepage = "http://ipmitool.sourceforge.net";
+
+    platforms = stdenv.lib.platforms.unix;
+    maintainers = [ stdenv.lib.maintainers.simons ];
   };
 }
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index eb2808892a58..afc25a2e3baa 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -593,6 +593,8 @@ let
 
   enblendenfuse = callPackage ../tools/graphics/enblend-enfuse { };
 
+  encfs = callPackage ../tools/filesystems/encfs { };
+
   enscript = callPackage ../tools/text/enscript { };
 
   ethtool = callPackage ../tools/misc/ethtool { };
@@ -625,6 +627,8 @@ let
 
   finger_bsd = callPackage ../tools/networking/bsd-finger { };
 
+  flvstreamer = callPackage ../tools/networking/flvstreamer { };
+
   fontforge = callPackage ../tools/misc/fontforge { };
 
   fontforgeX = callPackage ../tools/misc/fontforge {
@@ -1226,7 +1230,10 @@ let
 
   svnfs = callPackage ../tools/filesystems/svnfs { };
 
-  system_config_printer = callPackage ../tools/misc/system-config-printer { };
+  system_config_printer = callPackage ../tools/misc/system-config-printer {
+    inherit (pythonPackages) notify;
+    libxml2 = libxml2Python;
+   };
 
   sitecopy = callPackage ../tools/networking/sitecopy { };
 
@@ -1247,6 +1254,8 @@ let
     extraFonts = true;
   };
 
+  tmux = callPackage ../tools/misc/tmux { };
+
   tor = callPackage ../tools/security/tor { };
 
   torsocks = callPackage ../tools/security/tor/torsocks.nix { };
@@ -1403,6 +1412,8 @@ let
 
   xclip = callPackage ../tools/misc/xclip { };
 
+  xdelta = callPackage ../tools/compression/xdelta { };
+
   xfsprogs = callPackage ../tools/filesystems/xfsprogs { };
 
   xmlroff = callPackage ../tools/typesetting/xmlroff {
@@ -1447,6 +1458,20 @@ let
 
   dash = callPackage ../shells/dash { };
 
+  ipython = callPackage ../shells/ipython {
+    # I did not find any better way of reusing buildPythonPackage+setuptools
+    # for a python with openssl support
+    buildPythonPackage = assert pythonFull.readlineSupport;
+      import ../development/python-modules/generic {
+        inherit makeWrapper lib;
+        python = pythonFull;
+        setuptools = builderDefsPackage (import ../development/python-modules/setuptools) {
+          inherit makeWrapper;
+          python = pythonFull;
+        };
+      };
+ };
+
   tcsh = callPackage ../shells/tcsh { };
 
   rush = callPackage ../shells/rush { };
@@ -1938,9 +1963,7 @@ let
 
   jdk5 = (
     assert system == "i686-linux" || system == "x86_64-linux";
-    import ../development/compilers/jdk/default-5.nix {
-      inherit fetchurl stdenv unzip;
-    });
+    callPackage ../development/compilers/jdk/default-5.nix { });
 
   jdk       = if stdenv.isDarwin then openjdkDarwin else jdkdistro true  false;
   jre       = jdkdistro false false;
@@ -1993,6 +2016,45 @@ let
 
   ocaml_3_11_1 = callPackage ../development/compilers/ocaml/3.11.1.nix { };
 
+  ocaml_3_12_0 = callPackage ../development/compilers/ocaml/3.12.0.nix { };
+
+  mkOcamlPackages = ocaml: self: let callPackage = newScope self; in rec {
+    inherit ocaml;
+
+    camlzip = callPackage ../development/ocaml-modules/camlzip { };
+
+    camomile = camomile_0_7_3;
+    camomile_0_7_3 = callPackage ../development/ocaml-modules/camomile/0.7.3.nix { };
+    camomile_0_8_1 = callPackage ../development/ocaml-modules/camomile/0.8.1.nix { };
+
+    cryptokit = callPackage ../development/ocaml-modules/cryptokit { };
+
+    findlib = callPackage ../development/tools/ocaml/findlib { };
+
+    menhir = callPackage ../development/ocaml-modules/menhir { };
+
+    ocaml_batteries = callPackage ../development/ocaml-modules/batteries { };
+
+    ocaml_cryptgps = callPackage ../development/ocaml-modules/cryptgps { };
+
+    ocaml_lwt = callPackage ../development/ocaml-modules/lwt { };
+
+    ocaml_pcre = callPackage ../development/ocaml-modules/pcre {
+      inherit pcre;
+    };
+
+    ocaml_react = callPackage ../development/ocaml-modules/react { };
+
+    ocaml_ssl = callPackage ../development/ocaml-modules/ssl { };
+
+    ounit = callPackage ../development/ocaml-modules/ounit { };
+  };
+
+  ocamlPackages = recurseIntoAttrs ocamlPackages_3_11_1;
+  ocamlPackages_3_10_0 = mkOcamlPackages ocaml_3_10_0 pkgs.ocamlPackages_3_10_0;
+  ocamlPackages_3_11_1 = mkOcamlPackages ocaml_3_11_1 pkgs.ocamlPackages_3_11_1;
+  ocamlPackages_3_12_0 = mkOcamlPackages ocaml_3_12_0 pkgs.ocamlPackages_3_12_0;
+
   opencxx = callPackage ../development/compilers/opencxx {
     gcc = gcc33;
   };
@@ -2621,6 +2683,8 @@ let
 
   agg = callPackage ../development/libraries/agg { };
 
+  allegro = callPackage ../development/libraries/allegro {};
+
   amrnb = callPackage ../development/libraries/amrnb { };
 
   amrwb = callPackage ../development/libraries/amrwb { };
@@ -2685,6 +2749,8 @@ let
 
   ccrtp = callPackage ../development/libraries/ccrtp { };
 
+  cgui = callPackage ../development/libraries/cgui {};
+
   check = callPackage ../development/libraries/check { };
 
   chipmunk = builderDefsPackage (import ../development/libraries/chipmunk) {
@@ -3796,10 +3862,6 @@ let
 
   qt4 = pkgs.kde4.qt4;
 
-  qt45 = callPackage ../development/libraries/qt-4.x/4.5 {
-    inherit (gnome) glib;
-  };
-
   qt46 = callPackage ../development/libraries/qt-4.x/4.6 {
     inherit (gnome) glib;
   };
@@ -3852,6 +3914,8 @@ let
     jvm = gcj;
   };
 
+  rlog = callPackage ../development/libraries/rlog { };
+
   rte = callPackage ../development/libraries/rte { };
 
   rubberband = callPackage ../development/libraries/rubberband {
@@ -4598,6 +4662,11 @@ let
 
   libcroup = callPackage ../os-specific/linux/libcg { };
 
+  libnl = callPackage ../os-specific/linux/libnl {
+    flex = flex2535;
+    bison = bison24;
+  };
+
   linuxHeaders = linuxHeaders_2_6_32;
 
   linuxHeaders26Cross = forceBuildDrv (import ../os-specific/linux/kernel-headers/2.6.32.nix {
@@ -4849,6 +4918,8 @@ let
 
     atheros = callPackage ../os-specific/linux/atheros/0.9.4.nix { };
 
+    broadcom_sta = callPackage ../os-specific/linux/broadcom-sta/default.nix { };
+
     nvidia_x11 = callPackage ../os-specific/linux/nvidia-x11 { };
 
     nvidia_x11_legacy96 = callPackage ../os-specific/linux/nvidia-x11/legacy96.nix { };
@@ -6187,6 +6258,8 @@ let
 
   nvi = callPackage ../applications/editors/nvi { };
 
+  openbox = callPackage ../applications/window-managers/openbox { };
+
   openjump = callPackage ../applications/misc/openjump { };
 
   openoffice = callPackage ../applications/office/openoffice {
@@ -6671,6 +6744,8 @@ let
     libsigcxx = libsigcxx12;
   };
 
+  atanks = callPackage ../games/atanks {};
+
   ballAndPaddle = callPackage ../games/ball-and-paddle { };
 
   blackshades = callPackage ../games/blackshades { };
@@ -6692,6 +6767,8 @@ let
 
   crack_attack = callPackage ../games/crack-attack { };
 
+  crrcsim = callPackage ../games/crrcsim {};
+
   dwarf_fortress = callPackage_i686 ../games/dwarf-fortress { 
     gnomegtk = pkgsi686Linux.gnome.gtk;
   };
@@ -6719,6 +6796,8 @@ let
 
   gemrb = callPackage ../games/gemrb { };
 
+  gl117 = callPackage ../games/gl-117 {};
+
   gltron = callPackage ../games/gltron { };
 
   gnuchess = builderDefsPackage (import ../games/gnuchess) {
@@ -6793,6 +6872,8 @@ let
 
   springLobby = callPackage ../games/spring/spring-lobby.nix { };
 
+  stardust = callPackage ../games/stardust {};
+
   superTux = callPackage ../games/super-tux { };
 
   superTuxKart = callPackage ../games/super-tux-kart {
@@ -7006,6 +7087,8 @@ let
     camlp5 = camlp5_transitional;
   };
 
+  cvc3 = callPackage ../applications/science/logic/cvc3 {};
+
   eprover = callPackage ../applications/science/logic/eProver {
     texLive = texLiveAggregationFun {
       paths = [
@@ -7028,8 +7111,22 @@ let
     inherit (pkgs.emacs23Packages) proofgeneral;
   };
 
+  iprover = callPackage ../applications/science/logic/iprover {};
+
+  leo2 = callPackage ../applications/science/logic/leo2 {};
+
+  minisat = callPackage ../applications/science/logic/minisat {};
+
+  opensmt = callPackage ../applications/science/logic/opensmt {
+    flex = flex2535;
+  };
+
   prover9 = callPackage ../applications/science/logic/prover9 { };
 
+  satallax = callPackage ../applications/science/logic/satallax {};
+
+  spass = callPackage ../applications/science/logic/spass {};
+
   ssreflect = callPackage ../applications/science/logic/ssreflect {
     camlp5 = camlp5_transitional;
   };
@@ -7060,6 +7157,10 @@ let
 
   wxmaxima = callPackage ../applications/science/math/wxmaxima { };
 
+  pari = callPackage ../applications/science/math/pari {};
+
+  singular = callPackage ../applications/science/math/singular {};
+
   scilab = callPackage ../applications/science/math/scilab {
     withXaw3d = false;
     withTk = true;
@@ -7110,8 +7211,7 @@ let
 
   dpkg = callPackage ../tools/package-management/dpkg { };
 
-  ekiga = lib.callPackageWith (pkgs // pkgs.xorg // pkgs.gtkLibs // pkgs.gnome)
-    ../applications/networking/ekiga {};
+  ekiga = newScope (pkgs.gtkLibs // pkgs.gnome) ../applications/networking/ekiga { };
 
   electricsheep = callPackage ../misc/screensavers/electricsheep { };
 
diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 8cf44ac0240a..234439b1c43c 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -556,6 +556,14 @@ rec {
     };
   };
 
+  ClassBase = buildPerlPackage rec {
+    name = "Class-Base-0.03";
+    src = fetchurl {
+      url = "mirror://cpan/authors/id/A/AB/ABW/${name}.tar.gz";
+      sha256 = "149875qzfyayvkb6dm8frg0kmkzyjswwrjz7gyvwi7l8b19kiyk4";
+    };
+  };
+
   ClassC3 = buildPerlPackage rec {
     name = "Class-C3-0.21";
     src = fetchurl {
@@ -616,6 +624,14 @@ rec {
     };
   };
 
+  ClassMakeMethods = buildPerlPackage rec {
+    name = "Class-MakeMethods-1.009";
+    src = fetchurl {
+      url = "mirror://cpan/authors/id/E/EV/EVO/${name}.tar.gz";
+      sha256 = "10f65j4ywrnwyz0dm1q5ymmpv875drj40mj1xvsjv0bnjinnwzj8";
+    };
+  };
+
   ClassMOP = buildPerlPackage rec {
     name = "Class-MOP-0.88";
     src = fetchurl {
@@ -766,6 +782,14 @@ rec {
     };
   };
 
+  CryptRandPasswd = buildPerlPackage rec {
+    name = "Crypt-RandPasswd-0.02";
+    src = fetchurl {
+      url = "mirror://cpan/authors/id/J/JD/JDPORTER/${name}.tar.gz";
+      sha256 = "0r5w5i81s02x756alad9psxmpqmcxahzjpqxsb3kacsqj8s5br9b";
+    };
+  };
+
   CryptSSLeay = buildPerlPackage rec {
     name = "Crypt-SSLeay-0.57";
     src = fetchurl {
@@ -1235,6 +1259,49 @@ rec {
     };
   };
 
+  GD = buildPerlPackage rec {
+    name = "GD-2.45";
+    src = fetchurl {
+      url = "mirror://cpan/authors/id/L/LD/LDS/${name}.tar.gz";
+      sha256 = "1p84585b4iyqa21hbqni0blj8fzd917ynd3y1hwh3mrmyfqj178x";
+    };
+
+    buildInputs = [ pkgs.gd pkgs.libjpeg pkgs.zlib pkgs.freetype 
+                    pkgs.libpng pkgs.fontconfig pkgs.xlibs.libXpm GetOptLong ];
+
+    # Patch needed to get arguments past the first GetOptions call
+    # and to specify libfontconfig search path.
+    # Patch has been sent upstream.
+    patches = [ ../development/perl-modules/gd-options-passthrough-and-fontconfig.patch ];
+
+    # Remove a failing test.  The test does a binary comparison of a generated
+    # file with a file packaged with the source, and these are different
+    # ( although the images look the same to my eye ); this is
+    # possibly because the source packaged image was generated with a
+    # different version of some library ( libpng maybe? ).
+    postPatch = "sed -ie 's/if (GD::Image->can(.newFromJpeg.)) {/if ( 0 ) {/' t/GD.t";    
+
+    makeMakerFlags = "--lib_png_path=${pkgs.libpng} --lib_jpeg_path=${pkgs.libjpeg} --lib_zlib_path=${pkgs.zlib} --lib_ft_path=${pkgs.freetype} --lib_fontconfig_path=${pkgs.fontconfig} --lib_xpm_path=${pkgs.xlibs.libXpm}";
+  };
+
+  GetOptLong = buildPerlPackage rec {
+    name = "Getopt-Long-2.38";
+    src = fetchurl {
+      url = "mirror://cpan/authors/id/J/JV/JV/modules/${name}.tar.gz";
+      sha256 = "0lrsm8vlqhdnkzfvyaiyfivmaar0rirrnwa2v0qk6l130a497mky";
+    };
+  };
+
+  Graph = buildPerlPackage rec {
+    name = "Graph-0.94";
+    src = fetchurl {
+      url = "mirror://cpan/authors/id/J/JH/JHI/modules/${name}.tar.gz";
+      sha256 = "1lyfl9s4mkhahnpxk2z5v6j750jqb4sls56b9rnkl5lni9ms7xgn";
+    };
+
+    buildInputs = [ TestPod TestPodCoverage ];
+  };
+
   GraphViz = buildPerlPackage rec {
     name = "GraphViz-2.04";
     src = fetchurl {
@@ -1244,7 +1311,7 @@ rec {
 
     # XXX: It'd be nicer it `GraphViz.pm' could record the path to graphviz.
     buildInputs = [ pkgs.graphviz ];
-    propagatedBuildInputs = [ IPCRun ];
+    propagatedBuildInputs = [ IPCRun TestMore ];
 
     meta = {
       description = "Perl interface to the GraphViz graphing tool";
@@ -1482,6 +1549,14 @@ rec {
     };
   };
 
+  IOStringy = buildPerlPackage rec {
+    name = "IO-stringy-2.110";
+    src = fetchurl {
+      url = "mirror://cpan/authors/id/D/DS/DSKOLL/${name}.tar.gz";
+      sha256 = "1vh4n0k22hx20rwvf6h7lp25wb7spg0089shrf92d2lkncwg8g3y";
+    };
+  };
+
   IPCRun = buildPerlPackage rec {
     name = "IPC-Run-0.82";
     src = fetchurl {
@@ -1952,6 +2027,14 @@ rec {
     };
   };
 
+  OLEStorageLight = buildPerlPackage rec {
+    name = "OLE-Storage_Lite-0.19";
+    src = fetchurl {
+      url = "mirror://cpan/authors/id/J/JM/JMCNAMARA/${name}.tar.gz";
+      sha256 = "179cxwqxb0f9dpx8954nvwjmggxxi5ndnang41yav1dx6mf0abp7";
+    };
+  };
+  
   ParamsUtil = buildPerlPackage rec {
     name = "Params-Util-1.01";
     src = fetchurl {
@@ -1976,11 +2059,11 @@ rec {
     };
   };
 
-  ParseRecDescent = buildPerlPackage {
-    name = "ParseRecDescent-1.96.0";
+  ParseRecDescent = buildPerlPackage rec {
+    name = "Parse-RecDescent-1.965001";
     src = fetchurl {
-      url = mirror://cpan/authors/id/D/DC/DCONWAY/Parse-RecDescent-1.96.0.tar.gz;
-      sha256 = "1hnsnpzdwcwpbnsspaz55gx7x7h1rpxdk7k1ninnqk1jximl3y9n";
+      url = "mirror://cpan/authors/id/D/DC/DCONWAY/${name}.tar.gz";
+      sha256 = "0r4dnrjgxv5irkyx1kgkg8vj6wqx67q5hbkifpb54906kc1n7yh0";
     };
   };
 
@@ -2232,6 +2315,16 @@ rec {
     };
   };
 
+  SpreadsheetParseExcel = buildPerlPackage rec {
+    name = "Spreadsheet-ParseExcel-0.58";
+    src = fetchurl {
+      url = "mirror://cpan/authors/id/J/JM/JMCNAMARA/${name}.tar.gz";
+      sha256 = "1ha32kfgf0b9mk00dvsx0jq72xsx0qskmgrnixcdfh044lcxzk17";
+    };
+
+    propagatedBuildInputs = [ IOStringy OLEStorageLight ];
+  };
+
   SQLAbstract = buildPerlPackage rec {
     name = "SQL-Abstract-1.60";
     src = fetchurl {
@@ -2255,6 +2348,20 @@ rec {
     buildInputs = [TestPod TestPodCoverage];
   };
 
+  SQLTranslator = buildPerlPackage rec {
+    name = "SQL-Translator-0.11006";
+    src = fetchurl {
+      url = "mirror://cpan/authors/id/R/RI/RIBASUSHI/${name}.tar.gz";
+      sha256 = "0ifnzap3pgkxvkv2gxpmv02637pfraza5m4zk99braw319ra4mla";
+    };
+    propagatedBuildInputs = [
+      ClassBase ClassDataInheritable ClassMakeMethods DigestSHA1 CarpClan IOStringy
+      ParseRecDescent ClassAccessor DBI FileShareDir XMLWriter YAML TestDifferences
+      TemplateToolkit GraphViz XMLLibXML TestPod TextRecordParser HTMLParser
+      SpreadsheetParseExcel Graph GD
+    ];
+  };
+
   StringFormat = buildPerlPackage rec {
     name = "String-Format-1.16";
     src = fetchurl {
@@ -2446,6 +2553,15 @@ rec {
     propagatedBuildInputs = [TestTester TestNoWarnings];
   };
 
+  TestDifferences = buildPerlPackage rec {
+    name = "Test-Differences-0.500";
+    src = fetchurl {
+      url = "mirror://cpan/authors/id/O/OV/OVID/${name}.tar.gz";
+      sha256 = "0ha36j6wr1d47zzilb28bvkm5lm5c6i4rqp4aqyknwg4qmagjr4w";
+    };
+    propagatedBuildInputs = [ TestMore TextDiff ];
+  };
+
   TestException = buildPerlPackage {
     name = "Test-Exception-0.27";
     src = fetchurl {
@@ -2628,6 +2744,15 @@ rec {
     };
   };
 
+  TextDiff = buildPerlPackage rec {
+    name = "Text-Diff-1.37";
+    src = fetchurl {
+      url = "mirror://cpan/authors/id/A/AD/ADAMK/${name}.tar.gz";
+      sha256 = "08das6k4nrf8dgcg2l1jcy8868kgzx976j38rpdndgrgq0nz148n";
+    };
+    propagatedBuildInputs = [ AlgorithmDiff ];
+  };
+
   TextMarkdown = buildPerlPackage rec {
     name = "Text-Markdown-1.0.26";
     src = fetchurl {
@@ -2647,6 +2772,21 @@ rec {
     propagatedBuildInputs = [ CompressZlib ];
   };
 
+  TextRecordParser = buildPerlPackage rec {
+    name = "Text-RecordParser-v1.5.0";
+    src = fetchurl {
+      url = "mirror://cpan/authors/id/K/KC/KCLARK/${name}.tar.gz";
+      sha256 = "0zlwpayjnpjani3v3hgi77207i3n5fppcxww20chdldx98dkj7jm";
+    };
+
+    # In a NixOS chroot build, the tests fail because the font configuration
+    # at /etc/fonts/font.conf is not available.
+    doCheck = false;
+
+    propagatedBuildInputs = [ TestException IOStringy ClassAccessor Readonly ListMoreUtils
+                              TestPod TestPodCoverage GraphViz ReadonlyXS TextTabularDisplay];
+  };
+
   TextSimpleTable = buildPerlPackage {
     name = "Text-SimpleTable-0.05";
     src = fetchurl {
@@ -2664,6 +2804,15 @@ rec {
     propagatedBuildInputs = [TextAligner];
   };
 
+  TextTabularDisplay = buildPerlPackage rec {
+    name = "Text-TabularDisplay-1.22";
+    src = fetchurl {
+      url = "mirror://cpan/authors/id/D/DA/DARREN/${name}.tar.gz";
+      sha256 = "05r3jvdf8av16hgy0i3wnc581ski08q1bnllq5cq1fnc7h2nm1c7";
+    };
+    propagatedBuildInputs = [TextAligner];
+  };
+
   TieIxhash = buildPerlPackage rec {
     name = "Tie-IxHash-1.21";
     src = fetchurl {