summary refs log tree commit diff
path: root/pkgs
diff options
context:
space:
mode:
authorMichael Raskin <7c6f434c@mail.ru>2010-11-17 17:03:09 +0000
committerMichael Raskin <7c6f434c@mail.ru>2010-11-17 17:03:09 +0000
commitfb58f74d82e701dd30c062d0b153715d648cba18 (patch)
tree921a40baa6cbf2708a1d4ca4c443378664fc08f6 /pkgs
parent2254567b311180451dc690f2e0ddcfe9f6d2d44e (diff)
parent7ad36d19401603bcb391c915504571e3a6bf9794 (diff)
downloadnixpkgs-fb58f74d82e701dd30c062d0b153715d648cba18.tar
nixpkgs-fb58f74d82e701dd30c062d0b153715d648cba18.tar.gz
nixpkgs-fb58f74d82e701dd30c062d0b153715d648cba18.tar.bz2
nixpkgs-fb58f74d82e701dd30c062d0b153715d648cba18.tar.lz
nixpkgs-fb58f74d82e701dd30c062d0b153715d648cba18.tar.xz
nixpkgs-fb58f74d82e701dd30c062d0b153715d648cba18.tar.zst
nixpkgs-fb58f74d82e701dd30c062d0b153715d648cba18.zip
Updating from trunk again
svn path=/nixpkgs/branches/stdenv-updates/; revision=24745
Diffstat (limited to 'pkgs')
-rw-r--r--pkgs/applications/audio/cmus/default.nix21
-rw-r--r--pkgs/applications/editors/leksah/default.nix29
-rw-r--r--pkgs/applications/graphics/xscreensaver/default.nix4
-rw-r--r--pkgs/applications/networking/browsers/firefox/3.6.nix6
-rw-r--r--pkgs/applications/networking/browsers/firefox/4.0.nix29
-rw-r--r--pkgs/applications/networking/browsers/mozilla-plugins/flashplayer-10/default.nix4
-rw-r--r--pkgs/applications/networking/mailreaders/thunderbird/3.x.nix7
-rw-r--r--pkgs/applications/networking/remote/putty/default.nix2
-rw-r--r--pkgs/applications/office/keepnote/default.nix21
-rw-r--r--pkgs/applications/version-management/darcs/darcs-2.nix8
-rw-r--r--pkgs/applications/version-management/veracity/default.nix1
-rw-r--r--pkgs/applications/version-management/veracity/src-for-default.nix8
-rw-r--r--pkgs/build-support/builder-defs/builder-defs.nix5
-rw-r--r--pkgs/development/compilers/fpc/2.4.0.nix39
-rw-r--r--pkgs/development/compilers/fpc/default.nix4
-rw-r--r--pkgs/development/compilers/fpc/lazarus.nix2
-rw-r--r--pkgs/development/compilers/urweb/default.nix2
-rw-r--r--pkgs/development/compilers/vala/default.nix10
-rw-r--r--pkgs/development/interpreters/racket/default.nix4
-rw-r--r--pkgs/development/libraries/cairo/1.10.nix60
-rw-r--r--pkgs/development/libraries/haskell/Agda/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/binary-shared/default.nix13
-rw-r--r--pkgs/development/libraries/haskell/criterion/default.nix18
-rw-r--r--pkgs/development/libraries/haskell/derive/default.nix11
-rw-r--r--pkgs/development/libraries/haskell/erf/default.nix13
-rw-r--r--pkgs/development/libraries/haskell/ghc-syb-utils/default.nix11
-rw-r--r--pkgs/development/libraries/haskell/ghc-syb/default.nix13
-rw-r--r--pkgs/development/libraries/haskell/gtksourceview2/default.nix14
-rw-r--r--pkgs/development/libraries/haskell/hashed-storage/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/leksah/leksah-server.nix15
-rw-r--r--pkgs/development/libraries/haskell/leksah/process-leksah.nix12
-rw-r--r--pkgs/development/libraries/haskell/ltk/default.nix13
-rw-r--r--pkgs/development/libraries/haskell/mmap/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/multiset/default.nix8
-rw-r--r--pkgs/development/libraries/haskell/mwc-random/default.nix14
-rw-r--r--pkgs/development/libraries/haskell/primitive/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/statistics/default.nix15
-rw-r--r--pkgs/development/libraries/haskell/vector-algorithms/default.nix14
-rw-r--r--pkgs/development/libraries/haskell/vector/default.nix4
-rw-r--r--pkgs/development/libraries/libdevil/default.nix23
-rw-r--r--pkgs/development/libraries/libmhash/default.nix2
-rw-r--r--pkgs/development/libraries/libtorrent-rasterbar/default.nix22
-rw-r--r--pkgs/development/libraries/netcdf/default.nix9
-rw-r--r--pkgs/development/tools/documentation/haddock/haddock-2.7.2.nix9
-rw-r--r--pkgs/games/gemrb/default.nix5
-rw-r--r--pkgs/games/spring/default.nix36
-rw-r--r--pkgs/games/spring/gcc44.patch10
-rw-r--r--pkgs/games/spring/spring-lobby.nix30
-rw-r--r--pkgs/games/wesnoth/add-acl-prefix-to-libext.patch28
-rw-r--r--pkgs/games/wesnoth/default.nix45
-rw-r--r--pkgs/misc/emulators/wine/wine-warcraft.nix4
-rw-r--r--pkgs/os-specific/linux/acpi-call/default.nix3
-rw-r--r--pkgs/servers/x11/xorg/default.nix10
-rw-r--r--pkgs/tools/system/lshw/default.nix32
-rw-r--r--pkgs/top-level/all-packages.nix72
-rw-r--r--pkgs/top-level/haskell-packages.nix56
-rw-r--r--pkgs/top-level/release.nix5
57 files changed, 755 insertions, 116 deletions
diff --git a/pkgs/applications/audio/cmus/default.nix b/pkgs/applications/audio/cmus/default.nix
new file mode 100644
index 00000000000..1bfb2df2745
--- /dev/null
+++ b/pkgs/applications/audio/cmus/default.nix
@@ -0,0 +1,21 @@
+{ stdenv, fetchurl, ncurses, pkgconfig, alsaLib, flac, libmad, ffmpeg, libvorbis, mpc, mp4v2 }:
+
+stdenv.mkDerivation rec {
+  name = "cmus-${version}";
+  version = "2.3.3";
+
+  configurePhase = "./configure prefix=$out";
+
+  buildInputs = [ ncurses pkgconfig alsaLib flac libmad ffmpeg libvorbis mpc mp4v2 ];
+
+  src = fetchurl {
+    url = "mirror://sourceforge/cmus/cmus-v${version}.tar.bz2";
+    sha256 = "13hc5d7h2ayjwnip345hc59rpjj9fgrp1i5spjw3s14prdqr733v";
+  };
+
+  meta = {
+    description = "cmus is a small, fast and powerful console music player for Linux and *BSD";
+    homepage = http://cmus.sourceforge.net;
+    license = stdenv.lib.licenses.gpl2;
+  };
+}
diff --git a/pkgs/applications/editors/leksah/default.nix b/pkgs/applications/editors/leksah/default.nix
index c7bdd7bfc8e..dfed1509619 100644
--- a/pkgs/applications/editors/leksah/default.nix
+++ b/pkgs/applications/editors/leksah/default.nix
@@ -1,26 +1,27 @@
-{cabal, gtk2hs, binary, parsec, regexPosix, regexCompat, utf8String, libedit, makeWrapper}:
+{cabal, gtk, glib, binary, binaryShared, deepseq, hslogger, ltk, network, parsec,
+ leksahServer, processLeksah, regexBase, regexTDFA, utf8String, gtksourceview2,
+ makeWrapper}:
 
 cabal.mkDerivation (self : {
   pname = "leksah";
-  version = "0.6.1";
-  sha256 = "de4e0974be3df0e58fd26bfbb76594d81514f1e1d898b9f47881b42084bacf35";
+  version = "0.8.0.8";
+  sha256 = "1d6n5dlnqlqfckg9f611qf9lvi6b7ghrkk1l0myh6h667fxh8a1r";
 
-  # !!! The explicit libedit dependency shouldn't be necessary.
-  extraBuildInputs = [gtk2hs binary parsec regexPosix regexCompat utf8String libedit makeWrapper];
+  propagatedBuildInputs =
+    [gtk glib binary binaryShared deepseq hslogger ltk network parsec
+     leksahServer processLeksah regexBase regexTDFA utf8String gtksourceview2];
+  extraBuildInputs = [makeWrapper];
 
-  preConfigure =
-    ''
-      substituteInPlace leksah.cabal --replace 'Cabal ==1.6.0.1' 'Cabal >=1.6.0.1' 
-    '';
-
-  postInstall =
-    ''
-      wrapProgram $out/bin/leksah --prefix XDG_DATA_DIRS : ${gtk2hs.gtksourceview}/share
-    '';
+  # postInstall =
+  #   ''
+  #     wrapProgram $out/bin/leksah --prefix XDG_DATA_DIRS : ${gtk2hs.gtksourceview}/share
+  #   '';
   
   meta = {
     homepage = http://leksah.org/;
     description = "An Integrated Development Environment for Haskell written in Haskell";
+    license = "GPL";
+    maintainers = [self.stdenv.lib.maintainers.andres];
   };
 })  
 
diff --git a/pkgs/applications/graphics/xscreensaver/default.nix b/pkgs/applications/graphics/xscreensaver/default.nix
index c9d734f2408..82d5bcc0b3a 100644
--- a/pkgs/applications/graphics/xscreensaver/default.nix
+++ b/pkgs/applications/graphics/xscreensaver/default.nix
@@ -4,12 +4,12 @@
 , libjpeg, mesa, gtk , libxml2, libglade}:
 
 stdenv.mkDerivation rec {
-  version = "5.11";
+  version = "5.12";
   name = "xscreensaver-${version}";
 
   src = fetchurl {
     url = "http://www.jwz.org/xscreensaver/${name}.tar.gz";
-    sha256="0w47s0qd8ab6ywhhhkqjx0grb2b28bh2flnkdpj3yaind202l0s7";
+    sha256="1knvxxr50iq3wrx1qsgg174gzv7xg8c74i1a66ff55f8flksa7di";
   };
 
   buildInputs =
diff --git a/pkgs/applications/networking/browsers/firefox/3.6.nix b/pkgs/applications/networking/browsers/firefox/3.6.nix
index 4776419c806..633d0ef78ae 100644
--- a/pkgs/applications/networking/browsers/firefox/3.6.nix
+++ b/pkgs/applications/networking/browsers/firefox/3.6.nix
@@ -12,14 +12,14 @@
 
 rec {
 
-  firefoxVersion = "3.6.11";
+  firefoxVersion = "3.6.12";
   
-  xulVersion = "1.9.2.11"; # this attribute is used by other packages
+  xulVersion = "1.9.2.12"; # this attribute is used by other packages
 
   
   src = fetchurl {
     url = "http://releases.mozilla.org/pub/mozilla.org/firefox/releases/${firefoxVersion}/source/firefox-${firefoxVersion}.source.tar.bz2";
-    sha1 = "d5443a07243a771fb4c69c08cd6a0f5320a888c4";
+    sha1 = "1cc3885687dd5ad21167d9d45f76eb1458f46bdd";
   };
 
 
diff --git a/pkgs/applications/networking/browsers/firefox/4.0.nix b/pkgs/applications/networking/browsers/firefox/4.0.nix
index af622447555..49802f9a0ee 100644
--- a/pkgs/applications/networking/browsers/firefox/4.0.nix
+++ b/pkgs/applications/networking/browsers/firefox/4.0.nix
@@ -13,17 +13,16 @@
 
 rec {
 
-  firefoxVersion = "4.0b6";
+  firefoxVersion = "4.0b7";
   
-  xulVersion = "2.0b6"; # this attribute is used by other packages
+  xulVersion = "2.0b7"; # this attribute is used by other packages
 
   
   src = fetchurl {
     url = "http://releases.mozilla.org/pub/mozilla.org/firefox/releases/${firefoxVersion}/source/firefox-${firefoxVersion}.source.tar.bz2";
-    sha256 = "1ssgb41h43kbf012iwdybf9kp2gfqkg3icf81dg8ibwr2cd0kmz2";
+    sha256 = "02cc466a92af828ff3bc563d4515bd98064cf5f136b5871e072b9408fb4db128";
   };
 
-
   commonConfigureFlags =
     [ "--enable-optimize"
       "--disable-debug"
@@ -42,17 +41,17 @@ rec {
     ];
 
 
-  xulrunner = stdenv.mkDerivation {
+  xulrunner = stdenv.mkDerivation rec {
     name = "xulrunner-${xulVersion}";
     
     inherit src;
 
     buildInputs =
-      [ pkgconfig gtk perl zip libIDL libjpeg libpng zlib cairo bzip2
+    [ pkgconfig gtk perl zip libIDL libjpeg libpng zlib cairo bzip2
         python dbus dbus_glib pango freetype fontconfig xlibs.libXi
         xlibs.libX11 xlibs.libXrender xlibs.libXft xlibs.libXt file
         alsaLib nspr /* nss */ libnotify xlibs.pixman libvpx yasm mesa
-	wirelesstools xlibs.libXscrnsaver xlibs.scrnsaverproto
+	wirelesstools xlibs.libXScrnSaver xlibs.scrnsaverproto
 	xlibs.libXext xlibs.xextproto
       ];
 
@@ -66,6 +65,14 @@ rec {
      export NIX_ENFORCE_PURITY=
     '';
 
+    # Hack to work around make's idea of -lbz2 dependency
+    preConfigure = ''
+     find . -name Makefile.in -execdir sed -i '{}' -e '1ivpath %.so ${
+       stdenv.lib.concatStringsSep ":" 
+         (map (s : s + "/lib") (buildInputs ++ [stdenv.gcc.libc]))
+     }' ';'
+    '';
+
     installFlags = "SKIP_GRE_REGISTRATION=1";
 
     postInstall = ''
@@ -130,6 +137,14 @@ rec {
       $out/bin/firefox -register
     ''; # */
 
+    # Hack to work around make's idea of -lbz2 dependency
+    preConfigure = ''
+     find . -name Makefile.in -execdir sed -i '{}' -e '1ivpath %.so ${
+       stdenv.lib.concatStringsSep ":" 
+         (map (s : s + "/lib") (buildInputs ++ [stdenv.gcc.libc]))
+     }' ';'
+    '';
+
     meta = {
       description = "Mozilla Firefox - the browser, reloaded";
       homepage = http://www.mozilla.com/en-US/firefox/;
diff --git a/pkgs/applications/networking/browsers/mozilla-plugins/flashplayer-10/default.nix b/pkgs/applications/networking/browsers/mozilla-plugins/flashplayer-10/default.nix
index 4dd70b8887d..923fa3e6bcc 100644
--- a/pkgs/applications/networking/browsers/mozilla-plugins/flashplayer-10/default.nix
+++ b/pkgs/applications/networking/browsers/mozilla-plugins/flashplayer-10/default.nix
@@ -52,9 +52,9 @@ let
         url = http://download.macromedia.com/pub/labs/flashplayer10/flashplayer_square_p2_32bit_debug_linux_092710.tar.gz;
         sha256 = "11w3mxa39l4mnlsqzlwbdh1sald549afyqbx2kbid7in5qzamlcc";
       } else {
-        version = "10.1.82.76";
+        version = "10.1.102.64";
         url = http://fpdownload.macromedia.com/get/flashplayer/current/install_flash_player_10_linux.tar.gz;
-        sha256 = "7f0e57febd1ca96af626ca1b7f4f95b42eee4ef687ead6853fd49c5517089087";
+        sha256 = "1bx3cbls40si3l3x6ahncbn8dwrr41gj34hfn51k5ak9ccqn27wg";
       }
     else throw "flashplayer is not supported on this platform";
 
diff --git a/pkgs/applications/networking/mailreaders/thunderbird/3.x.nix b/pkgs/applications/networking/mailreaders/thunderbird/3.x.nix
index 863f5a4aab9..0242f22f396 100644
--- a/pkgs/applications/networking/mailreaders/thunderbird/3.x.nix
+++ b/pkgs/applications/networking/mailreaders/thunderbird/3.x.nix
@@ -11,19 +11,20 @@
     
 }:
 
-let version = "3.1.2"; in
+let version = "3.1.6"; in
 
 stdenv.mkDerivation {
   name = "thunderbird-${version}";
 
   src = fetchurl {
     url = "http://releases.mozilla.org/pub/mozilla.org/thunderbird/releases/${version}/source/thunderbird-${version}.source.tar.bz2";
-    sha1 = "645cb75a0e0b0ea38e25d54f970052bc02e7afe5";
+    sha1 = "d9c089c64cc7a784e128d9c594ef649a35babe30";
   };
 
   buildInputs =
     [ pkgconfig perl python zip bzip2 gtk dbus_glib alsaLib libIDL nspr libnotify
-      libnotify cairo pixman fontconfig ];
+      libnotify cairo pixman fontconfig
+    ];
 
   NIX_LDFLAGS = "-lpixman-1";
 
diff --git a/pkgs/applications/networking/remote/putty/default.nix b/pkgs/applications/networking/remote/putty/default.nix
index 980bb894aa2..5fa1aefe7b0 100644
--- a/pkgs/applications/networking/remote/putty/default.nix
+++ b/pkgs/applications/networking/remote/putty/default.nix
@@ -21,7 +21,7 @@ stdenv.mkDerivation {
   src = fetchsvn {
     url = svn://svn.tartarus.org/sgt/putty;
     rev = rev;
-    sha256 = "1yg5jhk7jp4yrnhpi0lvz71qqaf5gfpcwy8p198qqs8xgd1w51jc";
+    sha256 = "f5d9870dde7166afd277f7501914c6515b35ee7bb42965ccd22fe977ee5d1b0d";
   };
 
   buildInputs = [ gtk ncurses pkgconfig autoconf automake perl halibut ];
diff --git a/pkgs/applications/office/keepnote/default.nix b/pkgs/applications/office/keepnote/default.nix
new file mode 100644
index 00000000000..dc7946d1e82
--- /dev/null
+++ b/pkgs/applications/office/keepnote/default.nix
@@ -0,0 +1,21 @@
+{stdenv, fetchurl, buildPythonPackage, pygtk}:
+
+buildPythonPackage {
+  name = "keepnote-0.6.5";
+
+  src = fetchurl {
+    url = http://rasm.ods.org/keepnote/download/keepnote-0.6.5.tar.gz;
+    sha256 = "0kipcy90r50z4m9p8pyy9wi4dknsiwdrgy974xgakris2rh4lafw";
+  };
+
+  propagatedBuildInputs = [ pygtk ];
+
+  # Testing fails.
+  doCheck = false;
+
+  meta = {
+    description = "Note taking application";
+    homepage = http://rasm.ods.org/keepnote;
+    license = "GPLv2+";
+  };
+}
diff --git a/pkgs/applications/version-management/darcs/darcs-2.nix b/pkgs/applications/version-management/darcs/darcs-2.nix
index cabd9a3be93..eb7c3f066e9 100644
--- a/pkgs/applications/version-management/darcs/darcs-2.nix
+++ b/pkgs/applications/version-management/darcs/darcs-2.nix
@@ -1,13 +1,13 @@
-{cabal, html, mtl, parsec, regexCompat, curl, haskeline, hashedStorage, zlib} :
+{cabal, curl, html, mtl, parsec, regexCompat, haskeline, hashedStorage, zlib, tar, text} :
 
 cabal.mkDerivation (self : {
   pname = "darcs";
   name = self.fname;
-  version = "2.4.4";
-  sha256 = "97cde35ae4b74488f8b98b487bc0498069eaa74fe035903394f3d4aff1da9f9e";
+  version = "2.5";
+  sha256 = "0i99z3wsfc1hhr0a0ax7254gj3i69yg8cb9lhp55wl6lfqvpzcnh";
 
   propagatedBuildInputs = [
-    html parsec regexCompat curl haskeline hashedStorage zlib
+    curl html parsec regexCompat haskeline hashedStorage zlib tar text
   ];
 
   meta = {
diff --git a/pkgs/applications/version-management/veracity/default.nix b/pkgs/applications/version-management/veracity/default.nix
index 731514056c6..3005da5aba6 100644
--- a/pkgs/applications/version-management/veracity/default.nix
+++ b/pkgs/applications/version-management/veracity/default.nix
@@ -1,6 +1,7 @@
 x@{builderDefsPackage
   , cmake, curl, patch, zlib, icu, sqlite, libuuid
   , readline, openssl, spidermonkey_1_8_0rc1
+  , nspr, nss
   , ...}:
 builderDefsPackage
 (a :  
diff --git a/pkgs/applications/version-management/veracity/src-for-default.nix b/pkgs/applications/version-management/veracity/src-for-default.nix
index c10456c35c8..1b50c0c3bd1 100644
--- a/pkgs/applications/version-management/veracity/src-for-default.nix
+++ b/pkgs/applications/version-management/veracity/src-for-default.nix
@@ -1,9 +1,9 @@
 rec {
-   version="0.5.0.10318";
-   name="veracity-0.5.0.10318";
-   hash="1b5azcxdgabd3c93y9qdyd966xvq6gmj7b1agbk43xmpgpdby07g";
+   version="0.5.0.10325";
+   name="veracity-0.5.0.10325";
+   hash="07lbfdfbjnd0xmbaw799dphb7i8f6w176afwaw0sd65ksjkbfc39";
    url="http://download-us.sourcegear.com/Veracity/nightly/veracity-source-${version}.tar.gz";
-   advertisedUrl="http://download-us.sourcegear.com/Veracity/nightly/veracity-source-0.5.0.10318.tar.gz";
+   advertisedUrl="http://download-us.sourcegear.com/Veracity/nightly/veracity-source-0.5.0.10325.tar.gz";
   
   
 }
diff --git a/pkgs/build-support/builder-defs/builder-defs.nix b/pkgs/build-support/builder-defs/builder-defs.nix
index 29fc9845ab3..72a7dd03f8d 100644
--- a/pkgs/build-support/builder-defs/builder-defs.nix
+++ b/pkgs/build-support/builder-defs/builder-defs.nix
@@ -276,6 +276,11 @@ let inherit (builtins) head tail trace; in
         ")["minInit" "addInputs" "doUnpack"];
 
         # changing this ? see [1]
+        doAutogen = fullDepEntry (''
+                ./autogen.sh
+        '')["minInit" "addInputs" "doUnpack"];
+
+        # changing this ? see [1]
         doMake = fullDepEntry ("        
                 make ${toString makeFlags}
         ") ["minInit" "addInputs" "doUnpack"];
diff --git a/pkgs/development/compilers/fpc/2.4.0.nix b/pkgs/development/compilers/fpc/2.4.0.nix
new file mode 100644
index 00000000000..30081c9d805
--- /dev/null
+++ b/pkgs/development/compilers/fpc/2.4.0.nix
@@ -0,0 +1,39 @@
+{ stdenv, fetchurl, gawk }:
+
+let startFPC = import ./binary.nix { inherit stdenv fetchurl; }; in
+
+stdenv.mkDerivation rec {
+  version = "2.4.0";
+  name = "fpc-${version}";
+
+  src = fetchurl {
+    url = "http://downloads.sourceforge.net/sourceforge/freepascal/fpcbuild-${version}.tar.gz";
+    sha256 = "1m2g2bafjixbwl5b9lna5h7r56y1rcayfnbp8kyjfd1c1ymbxaxk";
+  };
+
+  buildInputs = [ startFPC gawk ];
+
+  preConfigure =
+    if stdenv.system == "i686-linux" || stdenv.system == "x86_64-linux" then ''
+      sed -e "s@'/lib/ld-linux[^']*'@'''@" -i fpcsrc/compiler/systems/t_linux.pas
+      sed -e "s@'/lib64/ld-linux[^']*'@'''@" -i fpcsrc/compiler/systems/t_linux.pas
+    '' else "";
+
+  makeFlags = "NOGDB=1";
+
+  installFlags = "INSTALL_PREFIX=\${out}";
+  
+  postInstall = ''
+    for i in $out/lib/fpc/*/ppc*; do
+      ln -fs $i $out/bin/$(basename $i)
+    done
+    mkdir -p $out/lib/fpc/etc/
+    $out/lib/fpc/*/samplecfg $out/lib/fpc/${version} $out/lib/fpc/etc/
+  '';
+
+  meta = {
+    description = "Free Pascal Compiler from a source distribution";
+    maintainers = [stdenv.lib.maintainers.raskin];
+    platforms = stdenv.lib.platforms.linux;
+  };
+}
diff --git a/pkgs/development/compilers/fpc/default.nix b/pkgs/development/compilers/fpc/default.nix
index 30081c9d805..080e82c9ddd 100644
--- a/pkgs/development/compilers/fpc/default.nix
+++ b/pkgs/development/compilers/fpc/default.nix
@@ -3,12 +3,12 @@
 let startFPC = import ./binary.nix { inherit stdenv fetchurl; }; in
 
 stdenv.mkDerivation rec {
-  version = "2.4.0";
+  version = "2.4.2";
   name = "fpc-${version}";
 
   src = fetchurl {
     url = "http://downloads.sourceforge.net/sourceforge/freepascal/fpcbuild-${version}.tar.gz";
-    sha256 = "1m2g2bafjixbwl5b9lna5h7r56y1rcayfnbp8kyjfd1c1ymbxaxk";
+    sha256 = "291f18a58259a2fc5f36593052f7a950f4872fbbbfb6a19a4e0188b4d5e5efbe";
   };
 
   buildInputs = [ startFPC gawk ];
diff --git a/pkgs/development/compilers/fpc/lazarus.nix b/pkgs/development/compilers/fpc/lazarus.nix
index 8ebd55e19cb..2b7e40d1ffa 100644
--- a/pkgs/development/compilers/fpc/lazarus.nix
+++ b/pkgs/development/compilers/fpc/lazarus.nix
@@ -1,6 +1,6 @@
 args : with args; 
 rec {
-  version = "0.9.26.2-0";
+  version = "0.9.28.2-0";
   src = fetchurl {
     url = "mirror://sourceforge/lazarus/Lazarus%20Zip%20_%20GZip/Lazarus%200.9.28.2/lazarus-0.9.28.2-src.tar.bz2";
     sha256 = "1zad1sylgvhpb210zxypdyng72fpjz1zdf3cpqj9dl94cwn3f4ap";
diff --git a/pkgs/development/compilers/urweb/default.nix b/pkgs/development/compilers/urweb/default.nix
index b88df77dd50..8f2a33fa5ae 100644
--- a/pkgs/development/compilers/urweb/default.nix
+++ b/pkgs/development/compilers/urweb/default.nix
@@ -24,6 +24,8 @@ stdenv.mkDerivation rec {
       export GCCARGS="-I${mysql}/include/mysql -I${postgresql}/include -I${sqlite}/include -L${libmhash}/lib -L${mysql}/lib/mysql -L${postgresql}/lib -L${sqlite}/lib"
     '';
 
+  dontDisableStatic = true;
+
   meta = {
     description = "Ur/Web supports construction of dynamic web applications backed by SQL databases.";
     longDescription = ''
diff --git a/pkgs/development/compilers/vala/default.nix b/pkgs/development/compilers/vala/default.nix
index a71af87f666..02a91cebb13 100644
--- a/pkgs/development/compilers/vala/default.nix
+++ b/pkgs/development/compilers/vala/default.nix
@@ -1,10 +1,14 @@
 {stdenv, fetchurl, yacc, flex, pkgconfig, glib}:
 
 stdenv.mkDerivation rec {
-  name = "vala-0.9.2";
+  baseName = "vala";
+  baseVersion = "0.11";
+  revision = "2";
+  version = "${baseVersion}.${revision}";
+  name = "${baseName}-${version}";
   src = fetchurl {
-    url = "mirror://gnome/sources/vala/0.9/vala-0.9.2.tar.bz2";
-    sha256 = "079wsdzb7dlp5kfprvjlhdd0d34jshdn3c7qbngr4qq6g4jf5q92";
+    url = "mirror://gnome/sources/${baseName}/${baseVersion}/${name}.tar.bz2";
+    sha256 = "489b60a49a03c8915b513a722ca08986c18ae0dc6489cce6bbb8415670612046";
   };
   buildInputs = [ yacc flex glib pkgconfig ];
   meta = {
diff --git a/pkgs/development/interpreters/racket/default.nix b/pkgs/development/interpreters/racket/default.nix
index 6642ef501cf..2568d3e50fe 100644
--- a/pkgs/development/interpreters/racket/default.nix
+++ b/pkgs/development/interpreters/racket/default.nix
@@ -4,12 +4,12 @@
 
 stdenv.mkDerivation rec {
   pname = "racket";
-  version = "5.0.1";
+  version = "5.0.2";
   name = "${pname}-${version}";
 
   src = fetchurl {
     url = "http://download.racket-lang.org/installers/${version}/${pname}/${name}-src-unix.tgz";
-    sha256 = "18bzzzbxvr888lnpwggismq5grysrwlyg2dp026hhv5n2mk5sfvn";
+    sha256 = "1xx0gc935mvh9b1nch7p4xscx9hjd0401rl1sdpf291nj9vmpb3k";
   };
 
   buildInputs = [ cairo
diff --git a/pkgs/development/libraries/cairo/1.10.nix b/pkgs/development/libraries/cairo/1.10.nix
new file mode 100644
index 00000000000..f1eaf65e69c
--- /dev/null
+++ b/pkgs/development/libraries/cairo/1.10.nix
@@ -0,0 +1,60 @@
+{ postscriptSupport ? true
+, pdfSupport ? true
+, pngSupport ? true
+, xcbSupport ? false
+, stdenv, fetchurl, pkgconfig, x11, fontconfig, freetype
+, zlib, libpng, pixman, libxcb ? null, xcbutil ? null
+}:
+
+assert postscriptSupport -> zlib != null;
+assert pngSupport -> libpng != null;
+assert xcbSupport -> libxcb != null && xcbutil != null;
+
+stdenv.mkDerivation rec {
+  name = "cairo-1.10.0";
+  
+  src = fetchurl {
+    url = "http://cairographics.org/releases/${name}.tar.gz";
+    sha256 = "1cllxp8rx5zxkfpn36ysqg1kqz5d1cvbbf2fsy440n8m8v6f8b0g";
+  };
+
+  buildInputs =
+    [ pkgconfig x11 fontconfig pixman ] ++ 
+    stdenv.lib.optionals xcbSupport [ libxcb xcbutil ];
+
+  propagatedBuildInputs =
+    [ freetype ] ++
+    stdenv.lib.optional postscriptSupport zlib ++
+    stdenv.lib.optional pngSupport libpng;
+    
+  configureFlags =
+    stdenv.lib.optional xcbSupport "--enable-xcb" ++
+    stdenv.lib.optional pdfSupport "--enable-pdf";
+
+  preConfigure = ''
+    # Work around broken `Requires.private' that prevents Freetype
+    # `-I' flags to be propagated.
+    sed -i "src/cairo.pc.in" \
+        -es'|^Cflags:\(.*\)$|Cflags: \1 -I${freetype}/include/freetype2 -I${freetype}/include|g'
+  '';
+
+  meta = {
+    description = "A 2D graphics library with support for multiple output devices";
+
+    longDescription = ''
+      Cairo is a 2D graphics library with support for multiple output
+      devices.  Currently supported output targets include the X
+      Window System, Quartz, Win32, image buffers, PostScript, PDF,
+      and SVG file output.  Experimental backends include OpenGL
+      (through glitz), XCB, BeOS, OS/2, and DirectFB.
+
+      Cairo is designed to produce consistent output on all output
+      media while taking advantage of display hardware acceleration
+      when available (e.g., through the X Render Extension).
+    '';
+
+    homepage = http://cairographics.org/;
+
+    licenses = [ "LGPLv2+" "MPLv1" ];
+  };
+}
diff --git a/pkgs/development/libraries/haskell/Agda/default.nix b/pkgs/development/libraries/haskell/Agda/default.nix
index db49277d7fc..c0493ecec99 100644
--- a/pkgs/development/libraries/haskell/Agda/default.nix
+++ b/pkgs/development/libraries/haskell/Agda/default.nix
@@ -3,8 +3,8 @@
 
 cabal.mkDerivation (self : {
   pname = "Agda";
-  version = "2.2.6";
-  sha256 = "e9268a61db30fc0f22f7e1fbc78673cd3e0d1bf2dd40ee5cf809635ca40fca78";
+  version = "2.2.8";
+  sha256 = "06j2s7x3h5lanygd6mhhxkzjf4c0m8pw6c0s7gbmwlxqrkz9firg";
   extraBuildInputs = [happy alex];
   propagatedBuildInputs =
     [QuickCheck binary haskeline haskellSrc mtl utf8String xhtml zlib];
diff --git a/pkgs/development/libraries/haskell/binary-shared/default.nix b/pkgs/development/libraries/haskell/binary-shared/default.nix
new file mode 100644
index 00000000000..8c1bda52453
--- /dev/null
+++ b/pkgs/development/libraries/haskell/binary-shared/default.nix
@@ -0,0 +1,13 @@
+{cabal, binary, mtl}:
+
+cabal.mkDerivation (self : {
+  pname = "binary-shared";
+  version = "0.8.1";
+  sha256 = "0niq6hgsawsdg3kkjgkwyrgy8w7pfkqfph5d1x5bzcjrcl982jrg";
+  propagatedBuildInputs = [binary mtl];
+  meta = {
+    description = "Binary serialization with support for sharing identical elements";
+    license = "GPL";
+    maintainers = [self.stdenv.lib.maintainers.andres];
+  };
+})  
diff --git a/pkgs/development/libraries/haskell/criterion/default.nix b/pkgs/development/libraries/haskell/criterion/default.nix
new file mode 100644
index 00000000000..0b1cac4076f
--- /dev/null
+++ b/pkgs/development/libraries/haskell/criterion/default.nix
@@ -0,0 +1,18 @@
+{cabal, deepseq, mtl, parallel, parsec, vector, vectorAlgorithms,
+ mwcRandom, statistics}:
+
+cabal.mkDerivation (self : {
+  pname = "criterion";
+  version = "0.5.0.5";
+  sha256 = "1b1g7a2ip07j0554cj4d0413859fbdkaxpcgq2znjz7wh8z5aabn";
+
+  propagatedBuildInputs =
+    [deepseq mtl parallel parsec vector vectorAlgorithms mwcRandom statistics];
+
+  meta = {
+    homepage = "http://bitbucket.org/bos/criterion";
+    description = "Robust, reliable performance measurement and analysis";
+    license = "BSD";
+    maintainers = [self.stdenv.lib.maintainers.andres];
+  };
+})
diff --git a/pkgs/development/libraries/haskell/derive/default.nix b/pkgs/development/libraries/haskell/derive/default.nix
new file mode 100644
index 00000000000..7ac349e96aa
--- /dev/null
+++ b/pkgs/development/libraries/haskell/derive/default.nix
@@ -0,0 +1,11 @@
+{cabal, haskellSrcExts, mtl, uniplate}:
+
+cabal.mkDerivation (self : {
+  pname = "derive";
+  version = "2.3.0.2";
+  sha256 = "bb8f62d93742d0f27c742bf09fdad73111057d9b531dda45d7f0c894b447809e";
+  propagatedBuildInputs = [haskellSrcExts mtl uniplate];
+  meta = {
+    description = "A program and library to derive instances for data types";
+  };
+})
diff --git a/pkgs/development/libraries/haskell/erf/default.nix b/pkgs/development/libraries/haskell/erf/default.nix
new file mode 100644
index 00000000000..57691777564
--- /dev/null
+++ b/pkgs/development/libraries/haskell/erf/default.nix
@@ -0,0 +1,13 @@
+{cabal}:
+
+cabal.mkDerivation (self : {
+  pname = "erf";
+  version = "1.0.0.0";
+  sha256 = "0zkb9csnfqcrzdkqqn0xihfx1k17fw9ki7y3d1di67lnlmjpkqnn";
+  meta = {
+    description = "The error function, erf, and friends";
+    license = "BSD";
+    maintainers = [self.stdenv.lib.maintainers.andres];
+  };
+})  
+
diff --git a/pkgs/development/libraries/haskell/ghc-syb-utils/default.nix b/pkgs/development/libraries/haskell/ghc-syb-utils/default.nix
new file mode 100644
index 00000000000..5e001569ba8
--- /dev/null
+++ b/pkgs/development/libraries/haskell/ghc-syb-utils/default.nix
@@ -0,0 +1,11 @@
+{cabal, ghcSyb}:
+
+cabal.mkDerivation (self : {
+  pname = "ghc-syb-utils";
+  version = "0.2.0.0";
+  sha256 = "457110f7e1f163ccf78acb898f8ca43b6a5b4595156a08a2f1a3d81f944d74a9";
+  propagatedBuildInputs = [ghcSyb];
+  meta = {
+    description = "Scrap Your Boilerplate utilities for the GHC API";
+  };
+})
diff --git a/pkgs/development/libraries/haskell/ghc-syb/default.nix b/pkgs/development/libraries/haskell/ghc-syb/default.nix
index 7c94a0f389d..fa59bd8c15d 100644
--- a/pkgs/development/libraries/haskell/ghc-syb/default.nix
+++ b/pkgs/development/libraries/haskell/ghc-syb/default.nix
@@ -1,15 +1,10 @@
-{cabal, fetchurl, syb, sourceFromHead}:
+{cabal}:
 
 cabal.mkDerivation (self : {
   pname = "ghc-syb";
-  version = "dev";
-  name = self.fname;
-  # REGION AUTO UPDATE:   { name="ghc_syb"; type = "git"; url = "git://github.com/nominolo/ghc-syb.git"; groups="haskell scien"; }
-  src = sourceFromHead "ghc_syb-876b121e73f1b5ca4b17b0c6908b27ba7efb0374.tar.gz"
-               (fetchurl { url = "http://mawercer.de/~nix/repos/ghc_syb-876b121e73f1b5ca4b17b0c6908b27ba7efb0374.tar.gz"; sha256 = "bb5071ee8a6a6cd99634e0f146c921592e8c77b13d511cde0c91fedc406a0a07"; });
-  # END
-  extraBuildInputs = [syb];
+  version = "0.2.0.0";
+  sha256 = "0052bd2ee4d92fbb010bebc7bcfd533a0b78437f1fb0834288ce979c103d9d67";
   meta = {
-    description = "Source code suggestions";
+    description = "Data and Typeable instances for the GHC API";
   };
 })
diff --git a/pkgs/development/libraries/haskell/gtksourceview2/default.nix b/pkgs/development/libraries/haskell/gtksourceview2/default.nix
new file mode 100644
index 00000000000..f6019c54c9f
--- /dev/null
+++ b/pkgs/development/libraries/haskell/gtksourceview2/default.nix
@@ -0,0 +1,14 @@
+{cabal, gtk2hsBuildtools, pkgconfig, gtksourceview, glib, gtk, gtkC, glibc}:
+
+cabal.mkDerivation (self : {
+  pname = "gtksourceview2";
+  version = "0.11.1";
+  sha256 = "1skb13ssp6sd06jb3nshv97wjqvwa0mnzcxgmrxwd5l21r6k1m2v";
+  extraBuildInputs = [pkgconfig gtksourceview gtkC glibc gtk2hsBuildtools];
+  propagatedBuildInputs = [glib gtk];
+  meta = {
+    description = "GtkSourceView is a text widget that extends the standard GTK+ 2.x text widget GtkTextView";
+    license = "LGPLv2+";
+    maintainers = [self.stdenv.lib.maintainers.andres];
+  };
+})
diff --git a/pkgs/development/libraries/haskell/hashed-storage/default.nix b/pkgs/development/libraries/haskell/hashed-storage/default.nix
index fb096838ed4..0a0409b6bf9 100644
--- a/pkgs/development/libraries/haskell/hashed-storage/default.nix
+++ b/pkgs/development/libraries/haskell/hashed-storage/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self : {
   pname = "hashed-storage";
-  version = "0.4.13";
-  sha256 = "c4e8dbd23469cde19696344f3e56088313ce5ee823e2d89ad2d0cb1fce602b63";
+  version = "0.5.3";
+  sha256 = "0ql8hgsaazs0wxvr920vm2s2iljcnh6lnivcy3vgd5wjaw6lkd00";
   propagatedBuildInputs = [mtl zlib mmap binary dataenc];
   meta = {
     description = "Hashed file storage support code";
diff --git a/pkgs/development/libraries/haskell/leksah/leksah-server.nix b/pkgs/development/libraries/haskell/leksah/leksah-server.nix
new file mode 100644
index 00000000000..c61b89cbcc5
--- /dev/null
+++ b/pkgs/development/libraries/haskell/leksah/leksah-server.nix
@@ -0,0 +1,15 @@
+{cabal, haddock, binary, binaryShared, deepseq, hslogger, ltk, mtl,
+ network, parsec, processLeksah}:
+
+cabal.mkDerivation (self : {
+  pname = "leksah-server";
+  version = "0.8.0.8";
+  sha256 = "10srf3wzrnyjhw7q8lzzfqammjr9k1fgwqlkkcfkljbmsz9j0nfm";
+  propagatedBuildInputs =
+    [binary binaryShared deepseq hslogger ltk mtl network parsec processLeksah haddock];
+  meta = {
+    description = "The interface to GHC-API for leksah";
+    license = "GPL";
+    maintainers = [self.stdenv.lib.maintainers.andres];
+  };
+})
diff --git a/pkgs/development/libraries/haskell/leksah/process-leksah.nix b/pkgs/development/libraries/haskell/leksah/process-leksah.nix
new file mode 100644
index 00000000000..a5223233fd4
--- /dev/null
+++ b/pkgs/development/libraries/haskell/leksah/process-leksah.nix
@@ -0,0 +1,12 @@
+{cabal}:
+
+cabal.mkDerivation (self : {
+  pname = "process-leksah";
+  version = "1.0.1.3";
+  sha256 = "1pssbpcslrl39z495gf0v2xjgy2i6qpvxbrf4p0hkvrwycr7pnd8";
+  meta = {
+    description = "This package contains libraries for dealing with system processes";
+    license = "BSD";
+    maintainers = [self.stdenv.lib.maintainers.andres];
+  };
+})
diff --git a/pkgs/development/libraries/haskell/ltk/default.nix b/pkgs/development/libraries/haskell/ltk/default.nix
new file mode 100644
index 00000000000..dd4aaf29a1a
--- /dev/null
+++ b/pkgs/development/libraries/haskell/ltk/default.nix
@@ -0,0 +1,13 @@
+{cabal, glib, gtk, haddock, mtl, parsec}:
+
+cabal.mkDerivation (self : {
+  pname = "ltk";
+  version = "0.8.0.8";
+  sha256 = "172l3nvvyqqgzy43b7mjxs8vpfw0wlyl993g77zjiy8qbhlcd9mg";
+  propagatedBuildInputs = [glib gtk mtl parsec haddock];
+  meta = {
+    description = "UI framework used by leksah";
+    license = "GPL";
+    maintainers = [self.stdenv.lib.maintainers.andres];
+  };
+})
diff --git a/pkgs/development/libraries/haskell/mmap/default.nix b/pkgs/development/libraries/haskell/mmap/default.nix
index 66324ba8083..e925ce858bd 100644
--- a/pkgs/development/libraries/haskell/mmap/default.nix
+++ b/pkgs/development/libraries/haskell/mmap/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self : {
   pname = "mmap";
-  version = "0.4.1";
-  sha256 = "792b8ecfb0cce1f8588f0d2a63c6893ff98a2479c06745583da8166d5a46ead9";
+  version = "0.5.7";
+  sha256 = "0f08x9kmv3a03kz5a6dpxr30nks55cs9sp55qpn2jnw31qx6hg6p";
   meta = {
     description = "Memory mapped files for POSIX and Windows";
   };
diff --git a/pkgs/development/libraries/haskell/multiset/default.nix b/pkgs/development/libraries/haskell/multiset/default.nix
index 3091af54f1c..b17b2244a26 100644
--- a/pkgs/development/libraries/haskell/multiset/default.nix
+++ b/pkgs/development/libraries/haskell/multiset/default.nix
@@ -1,13 +1,11 @@
-{cabal, syb}:
+{cabal}:
 
 cabal.mkDerivation (self : {
   pname = "multiset";
-  version = "0.1";
-  sha256 = "0nh1bfis4r5yd4jd9dqwckiyrqa7j8yqn4ai676xb18rh4hwsv87";
-  propagatedBuildInputs = [syb];
+  version = "0.2";
+  sha256 = "35d76c026bab0dbdf761c8590297d718507bb9ef93c30bce4f524efee23f5323";
   meta = {
     description = "A variation of Data.Set. Multisets, sometimes also called bags, can contain multiple copies of the same key";
   };
-  patchPhase = '' sed -i 's/containers/containers, syb/' *.cabal ''; # add syb to library dependency list
 })  
 
diff --git a/pkgs/development/libraries/haskell/mwc-random/default.nix b/pkgs/development/libraries/haskell/mwc-random/default.nix
new file mode 100644
index 00000000000..1ac66ca67f2
--- /dev/null
+++ b/pkgs/development/libraries/haskell/mwc-random/default.nix
@@ -0,0 +1,14 @@
+{cabal, primitive, vector}:
+
+cabal.mkDerivation (self : {
+  pname = "mwc-random";
+  version = "0.8.0.2";
+  sha256 = "1lry31abyz6wh3x8ipclgkfc889azs7mw2ppp9kpdlx41wbzhdj6";
+  propagatedBuildInputs = [primitive vector];
+  meta = {
+    description = "Fast, high quality pseudo random number generation";
+    license = "BSD";
+    maintainers = [self.stdenv.lib.maintainers.andres];
+  };
+})  
+
diff --git a/pkgs/development/libraries/haskell/primitive/default.nix b/pkgs/development/libraries/haskell/primitive/default.nix
index ea2de19592f..f4d29695118 100644
--- a/pkgs/development/libraries/haskell/primitive/default.nix
+++ b/pkgs/development/libraries/haskell/primitive/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self : {
   pname = "primitive";
-  version = "0.3";
-  sha256 = "b63cb5dd3417433429b3ad5489791bddd0973b96b7c3314a4ecc9e6a68b2a35d";
+  version = "0.3.1";
+  sha256 = "1903hx88ax4dgyyx00a0k86jy4mkqrprpn7arfy19dqqyfpb2ikj";
   meta = {
     description = "Wrappers for primitive operations";
     license = "BSD";
diff --git a/pkgs/development/libraries/haskell/statistics/default.nix b/pkgs/development/libraries/haskell/statistics/default.nix
new file mode 100644
index 00000000000..8ebacb5933b
--- /dev/null
+++ b/pkgs/development/libraries/haskell/statistics/default.nix
@@ -0,0 +1,15 @@
+{cabal, primitive, vector, vectorAlgorithms, mwcRandom, erf}:
+
+cabal.mkDerivation (self : {
+  pname = "statistics";
+  version = "0.8.0.3";
+  sha256 = "11b7ai661sm7j4n8wymipzjldshackwgv6kkp6yqrkxzg40xhal9";
+  propagatedBuildInputs =
+    [primitive vector vectorAlgorithms mwcRandom erf];
+  meta = {
+    description = "A library of statistical types, data and functions";
+    license = "BSD";
+    maintainers = [self.stdenv.lib.maintainers.andres];
+  };
+})  
+
diff --git a/pkgs/development/libraries/haskell/vector-algorithms/default.nix b/pkgs/development/libraries/haskell/vector-algorithms/default.nix
new file mode 100644
index 00000000000..49b95384299
--- /dev/null
+++ b/pkgs/development/libraries/haskell/vector-algorithms/default.nix
@@ -0,0 +1,14 @@
+{cabal, primitive, vector}:
+
+cabal.mkDerivation (self : {
+  pname = "vector-algorithms";
+  version = "0.3.4";
+  sha256 = "19b25myz0lhf010lgajlkz72g3w119x89i097rmbc2y4z1bjgpiv";
+  propagatedBuildInputs = [primitive vector];
+  meta = {
+    description = "Efficient algorithms for vector arrays";
+    license = "BSD";
+    maintainers = [self.stdenv.lib.maintainers.andres];
+  };
+})  
+
diff --git a/pkgs/development/libraries/haskell/vector/default.nix b/pkgs/development/libraries/haskell/vector/default.nix
index bf9dbd818ed..797d9e703e4 100644
--- a/pkgs/development/libraries/haskell/vector/default.nix
+++ b/pkgs/development/libraries/haskell/vector/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self : {
   pname = "vector";
-  version = "0.6.0.1";
-  sha256 = "b0cba9b3aa94688321a2ec7b4fb4b41781073b2605584ad41957ba1c6892acce";
+  version = "0.7.0.1";
+  sha256 = "147kwm3p6w1qg1sg3ls7i8zj3mcnyxf80il4r5kz5fd3n1ibvyxj";
   propagatedBuildInputs = [primitive];
   meta = {
     description = "Efficient arrays";
diff --git a/pkgs/development/libraries/libdevil/default.nix b/pkgs/development/libraries/libdevil/default.nix
new file mode 100644
index 00000000000..a67dc71f699
--- /dev/null
+++ b/pkgs/development/libraries/libdevil/default.nix
@@ -0,0 +1,23 @@
+{ stdenv, fetchurl
+, libjpeg ? null, libpng ? null, libmng ? null, lcms1 ? null, libtiff ? null, openexr ? null, mesa ? null, xlibs ? null }:
+stdenv.mkDerivation rec {
+
+  name ="libdevil-${version}";
+  version = "1.7.8";
+
+  src = fetchurl {
+    url = "mirror://sourceforge/openil/DevIL-${version}.tar.gz";
+    sha256 = "1zd850nn7nvkkhasrv7kn17kzgslr5ry933v6db62s4lr0zzlbv8";
+  };
+
+  buildInputs = [ libjpeg libpng libmng lcms1 libtiff openexr mesa xlibs.libX11 ];
+  configureFlags = [ "--enable-ILU" "--enable-ILUT" ];
+
+  meta = with stdenv.lib; {
+    homepage = http://openil.sourceforge.net/;
+    description = "An image library which can can load, save, convert, manipulate,
+      filter and display a wide variety of image formats.";
+    license = licenses.lgpl2;
+    maintainers = [ maintainers.phreedom ];
+  };
+}
\ No newline at end of file
diff --git a/pkgs/development/libraries/libmhash/default.nix b/pkgs/development/libraries/libmhash/default.nix
index cd026298011..565340ac271 100644
--- a/pkgs/development/libraries/libmhash/default.nix
+++ b/pkgs/development/libraries/libmhash/default.nix
@@ -17,6 +17,8 @@ stdenv.mkDerivation rec {
   version = "0.9.9.9";
   name = "${pname}-${version}";
 
+  dontDisableStatic = true;
+
   src = fetchurl {
     url = "mirror://sourceforge/${pname}/${name}.tar.bz2";
     sha256 = "1w7yiljan8gf1ibiypi6hm3r363imm3sxl1j8hapjdq3m591qljn";
diff --git a/pkgs/development/libraries/libtorrent-rasterbar/default.nix b/pkgs/development/libraries/libtorrent-rasterbar/default.nix
new file mode 100644
index 00000000000..90b643c11c1
--- /dev/null
+++ b/pkgs/development/libraries/libtorrent-rasterbar/default.nix
@@ -0,0 +1,22 @@
+{ stdenv, fetchurl, boost, openssl, pkgconfig, zlib }:
+
+stdenv.mkDerivation rec {
+  name = "libtorrent-rasterbar-${version}";
+  version = "0.15.4";
+  
+  src = fetchurl {
+    url = "http://libtorrent.googlecode.com/files/${name}.tar.gz";
+    sha256 = "1pjdn0as4h71bhm0fbjqsh1y10fbifn2hfrkhkgdsdqhz7vdbfwy";
+  };
+
+  buildInputs = [ boost pkgconfig openssl zlib ];
+
+  configureFlags = [ "--with-boost=${boost}/include/boost" "--with-boost-libdir=${boost}/lib" ];
+  
+  meta = with stdenv.lib; {
+    homepage = http://www.rasterbar.com/products/libtorrent/;
+    description = "A C++ BitTorrent implementation focusing on efficiency and scalability";
+    license = licenses.bsd3;
+    maintainers = [ maintainers.phreedom ];
+  };
+}
diff --git a/pkgs/development/libraries/netcdf/default.nix b/pkgs/development/libraries/netcdf/default.nix
new file mode 100644
index 00000000000..1e354a49cfd
--- /dev/null
+++ b/pkgs/development/libraries/netcdf/default.nix
@@ -0,0 +1,9 @@
+{ stdenv, fetchurl }:
+    
+stdenv.mkDerivation {
+    name = "netcdf-4.1.1";
+    src = fetchurl {
+        url = http://www.unidata.ucar.edu/downloads/netcdf/ftp/netcdf-4.1.1.tar.gz;
+        sha256 = "1c1g6ig24fn1fm5wwzv4w832li2jikblvbjv6wwg0mwc6yfxccvr";
+    };
+}
\ No newline at end of file
diff --git a/pkgs/development/tools/documentation/haddock/haddock-2.7.2.nix b/pkgs/development/tools/documentation/haddock/haddock-2.7.2.nix
index 70dcf61d78c..b59ea328279 100644
--- a/pkgs/development/tools/documentation/haddock/haddock-2.7.2.nix
+++ b/pkgs/development/tools/documentation/haddock/haddock-2.7.2.nix
@@ -1,12 +1,17 @@
-{cabal, ghcPaths, alex, happy}:
+{cabal, ghcPaths, alex, happy, makeWrapper}:
 
 cabal.mkDerivation (self : {
   pname = "haddock";
   version = "2.7.2"; # Haskell Platform 2010.1.0.0 and 2010.2.0.0
   name = self.fname;
   sha256 = "4eaaaf62785f0ba3d37ba356cfac4679faef91c0902d8cdbf42837cbe5daab82";
-  extraBuildInputs = [alex happy];
+  extraBuildInputs = [alex happy makeWrapper];
   propagatedBuildInputs = [ghcPaths];
+
+  postInstall = ''
+   wrapProgram $out/bin/haddock --add-flags "\$(${self.ghc.GHCGetPackages} ${self.ghc.ghcVersion} \"\$(dirname \$0)\" \"--optghc=-package-conf --optghc=\")"
+  '';
+
   meta = {
     description = "a tool for automatically generating documentation from annotated Haskell source code";
   };
diff --git a/pkgs/games/gemrb/default.nix b/pkgs/games/gemrb/default.nix
index ca974d63de2..aae7241cf88 100644
--- a/pkgs/games/gemrb/default.nix
+++ b/pkgs/games/gemrb/default.nix
@@ -18,11 +18,6 @@ stdenv.mkDerivation rec {
   # Can't have -werror because of the Vorbis header files.
   cmakeFlags = "-DDISABLE_WERROR=ON -DCMAKE_VERBOSE_MAKEFILE=ON";
 
-  # !!! Ugly.  CMake passes library dependencies to the linker using
-  # the full path of the library rather than `-l...', and the
-  # ld-wrapper doesn't add the necessary `-rpath' flag.
-  NIX_LDFLAGS = "-rpath ${zlib}/lib -rpath ${libpng}/lib -rpath ${python}/lib -rpath ${openal}/lib -rpath ${SDL}/lib -rpath ${libvorbis}/lib";
-
   meta = {
     description = "A reimplementation of the Infinity Engine, used by games such as Baldur's Gate";
     homepage = http://gemrb.sourceforge.net/;
diff --git a/pkgs/games/spring/default.nix b/pkgs/games/spring/default.nix
new file mode 100644
index 00000000000..1308d93c672
--- /dev/null
+++ b/pkgs/games/spring/default.nix
@@ -0,0 +1,36 @@
+{ stdenv, fetchurl, cmake, lzma, boost, libdevil, zlib, p7zip
+, openal, libvorbis, glew, freetype, xlibs, SDL, mesa
+, jdk ? null, python ? null
+, withAI ? true # support for AI Interfaces and Skirmish AIs
+}:
+stdenv.mkDerivation rec {
+
+  name = "spring-${version}";
+  version = "0.82.6.1";
+
+  src = fetchurl {
+    url = "mirror://sourceforge/springrts/spring_${version}_src.tar.lzma";
+    sha256 = "1bi64jgc390sqc514scz80a0pdgc5n9kx45sppky2152y725900n";
+  };
+
+  buildInputs = [ cmake lzma boost libdevil zlib p7zip openal libvorbis freetype SDL
+    xlibs.libX11 xlibs.libXcursor mesa glew ]
+    ++ stdenv.lib.optional withAI jdk
+    ++ stdenv.lib.optional withAI python;
+
+  prePatch = ''
+    substituteInPlace cont/base/make_gamedata_arch.sh --replace "#!/bin/sh" "#!${stdenv.shell}/bin/sh" \
+      --replace "which" "type -p"    
+  '';
+
+  patches = [ ./gcc44.patch];
+
+  enableParallelBuilding = true;
+
+  meta = with stdenv.lib; {
+    homepage = http://springrts.com/;
+    description = "A powerful real-time strategy(RTS) game engine";
+    license = licenses.gpl2;
+    maintainers = [ maintainers.phreedom ];
+  };
+}
\ No newline at end of file
diff --git a/pkgs/games/spring/gcc44.patch b/pkgs/games/spring/gcc44.patch
new file mode 100644
index 00000000000..4df1e6e825f
--- /dev/null
+++ b/pkgs/games/spring/gcc44.patch
@@ -0,0 +1,10 @@
+--- spring_0.82.6.1-orig/rts/lib/lobby/Connection.h     2010-10-15 23:08:24.000000000 +0300
++++ spring_0.82.6.1/rts/lib/lobby/Connection.h  2010-11-11 14:48:55.000000000 +0200
+@@ -7,6 +7,7 @@
+ #include <boost/asio/deadline_timer.hpp>
+ #include <boost/asio/ip/tcp.hpp>
+ #include <string>
++#include <list>
+ 
+ struct ClientStatus
+ {
diff --git a/pkgs/games/spring/spring-lobby.nix b/pkgs/games/spring/spring-lobby.nix
new file mode 100644
index 00000000000..9365f2e6585
--- /dev/null
+++ b/pkgs/games/spring/spring-lobby.nix
@@ -0,0 +1,30 @@
+{ stdenv, fetchurl, cmake, wxGTK, openal, pkgconfig, curl, libtorrentRasterbar
+, gettext, bash, gawk, boost }:
+stdenv.mkDerivation rec {
+
+  name = "spring-lobby-${version}";
+  version = "0.116";
+
+  src = fetchurl {
+    url = "http://www.springlobby.info/tarballs/springlobby-${version}.tar.bz2";
+    sha256 = "04gb2dc2xc0lj2d14jzz330kn5faffdz3xph9bg2m68b28fv0xsk";
+  };
+
+  buildInputs = [ cmake wxGTK openal pkgconfig curl gettext libtorrentRasterbar boost ];
+
+  prePatch = ''
+    substituteInPlace tools/regen_config_header.sh --replace "#!/bin/bash" "#!${bash}/bin/bash"
+    substituteInPlace tools/test-susynclib.awk --replace "#!/usr/bin/awk" "#!${gawk}/bin/awk"
+    substituteInPlace CMakeLists.txt --replace "boost_system-mt" "boost_system"
+  '';
+
+  enableParallelBuilding = true;
+
+  meta = with stdenv.lib; {
+    homepage = http://springlobby.info/;
+    description = "A free cross-platform lobby client for the Spring RTS project.";
+    license = licenses.gpl2;
+    maintainers = [ maintainers.phreedom ];
+    platforms = platforms.linux;
+  };
+}
\ No newline at end of file
diff --git a/pkgs/games/wesnoth/add-acl-prefix-to-libext.patch b/pkgs/games/wesnoth/add-acl-prefix-to-libext.patch
new file mode 100644
index 00000000000..6ff96efda1e
--- /dev/null
+++ b/pkgs/games/wesnoth/add-acl-prefix-to-libext.patch
@@ -0,0 +1,28 @@
+diff -Naur wesnoth-upstream-1.8.5/m4/boost.m4 wesnoth-1.8.5/m4/boost.m4
+
+Libtools seems to set a variable called acl_libext while the Boost
+library check code uses a variable called libext.  This patch makes
+the Boost check use the variable acl_libext actually set by libtools.
+
+--- wesnoth-upstream-1.8.5/m4/boost.m4	2010-10-02 20:35:59.577619372 -0430
++++ wesnoth-1.8.5/m4/boost.m4	2010-10-02 20:39:10.383653233 -0430
+@@ -252,8 +252,8 @@
+   test -n "$boost_rtopt" && boost_rtopt="-$boost_rtopt"
+   $boost_guess_use_mt && boost_mt=-mt
+   # Look for the abs path the static archive.
+-  # $libext is computed by Libtool but let's make sure it's non empty.
+-  test -z "$libext" &&
++  # $acl_libext is computed by Libtool but let's make sure it's non empty.
++  test -z "$acl_libext" &&
+     AC_MSG_ERROR([the libext variable is empty, did you invoke Libtool?])
+   boost_save_ac_objext=$ac_objext
+   # Generate the test file.
+@@ -309,7 +309,7 @@
+       # Are we looking for a static library?
+       case $boost_ldpath:$boost_rtopt_ in #(
+         *?*:*s*) # Yes (Non empty boost_ldpath + s in rt opt)
+-          Boost_lib_LIBS="$boost_ldpath/lib$boost_lib.$libext"
++          Boost_lib_LIBS="$boost_ldpath/lib$boost_lib.$acl_libext"
+           test -e "$Boost_lib_LIBS" || continue;; #(
+         *) # No: use -lboost_foo to find the shared library.
+           Boost_lib_LIBS="-l$boost_lib";;
diff --git a/pkgs/games/wesnoth/default.nix b/pkgs/games/wesnoth/default.nix
index 5433c0018a5..59c2de21a48 100644
--- a/pkgs/games/wesnoth/default.nix
+++ b/pkgs/games/wesnoth/default.nix
@@ -1,22 +1,53 @@
-{ stdenv, fetchurl, SDL, SDL_image, SDL_mixer, SDL_net, SDL_ttf, pango
-, gettext, zlib, boost, freetype, libpng, pkgconfig }:
+{ stdenv, fetchurl, automake, autoconf, SDL, SDL_image, SDL_mixer, SDL_net, SDL_ttf, pango
+, gettext, zlib, boost, freetype, libpng, pkgconfig, lua, dbus, fontconfig, libtool
+, fribidi, asciidoc }:
 
 stdenv.mkDerivation rec {
   pname = "wesnoth";
-  version = "1.6.5";
+  version = "1.8.5";
 
   name = "${pname}-${version}";
 
   src = fetchurl {
     url = "mirror://sourceforge/sourceforge/${pname}/${name}.tar.bz2";
-    sha256 = "1mrhgwp8iw27ifpavnf4y69zf9fqfy7j4sfwkfzsay226sp4gw3y";
+    sha256 = "1yjmqvwzz446vvkjg923ypwnmhb0fbgqj0ax0k7s102la37bv8zc";
   };
 
-  buildInputs = [ SDL SDL_image SDL_mixer SDL_net SDL_ttf pango gettext zlib boost freetype libpng pkgconfig ];
+  buildInputs = [ SDL SDL_image SDL_mixer SDL_net SDL_ttf pango gettext zlib boost fribidi
+                  automake autoconf freetype libpng pkgconfig lua dbus fontconfig libtool ];
 
-  configureFlags = "--with-preferences-dir=.${name} --program-suffix=-${version} --with-datadir-name=${name} --with-boost=${boost}/include --disable-python";
+  # The patch and the preInstall sed substitution fix errors which I 
+  # believe arise from autotools version mismatches.  Rather than
+  # hunt for the correct automake and autoconf versions these changes
+  # make the build work with the versions current in Nixpkgs.
+  patches = ./add-acl-prefix-to-libext.patch;
 
-  meta = {
+  preInstall = ''
+    sed -i -e s,@MKINSTALLDIRS@,`pwd`/config/mkinstalldirs, po/*/Makefile
+  '';
+
+  configurePhase = ''
+    ./autogen.sh --prefix=$out --with-boost=${boost} \
+                 --with-preferences-dir=.${name} --program-suffix=-${version} \
+                 --with-datadir-name=${name}
+  '';
+
+  # Make the package build with the gcc currently available in Nixpkgs.
+  NIX_CFLAGS_COMPILE = "-Wno-ignored-qualifiers";
+
+  meta = with stdenv.lib; {
     description = "The Battle for Wesnoth, a free, turn-based strategy game with a fantasy theme";
+    longDescription = ''
+      The Battle for Wesnoth is a Free, turn-based tactical strategy
+      game with a high fantasy theme, featuring both single-player, and
+      online/hotseat multiplayer combat. Fight a desperate battle to
+      reclaim the throne of Wesnoth, or take hand in any number of other
+      adventures.
+    '';
+    
+    homepage = http://www.wesnoth.org/;
+    license = licenses.gpl2;
+    maintainers = [ maintainers.kkallio ];
+    platforms = platforms.linux;
   };
 }
diff --git a/pkgs/misc/emulators/wine/wine-warcraft.nix b/pkgs/misc/emulators/wine/wine-warcraft.nix
index b45ea75c28f..3573c0ba4fe 100644
--- a/pkgs/misc/emulators/wine/wine-warcraft.nix
+++ b/pkgs/misc/emulators/wine/wine-warcraft.nix
@@ -19,6 +19,7 @@ stdenv.mkDerivation rec {
     xlibs.xlibs flex bison xlibs.libXi mesa
     xlibs.libXcursor xlibs.libXinerama xlibs.libXrandr
     xlibs.libXrender xlibs.libXxf86vm xlibs.libXcomposite
+    xlibs.xf86vidmodeproto
     alsaLib ncurses libpng libjpeg lcms fontforge
     libxml2 libxslt openssl gnutls
   ];
@@ -29,7 +30,8 @@ stdenv.mkDerivation rec {
   NIX_LDFLAGS = map (path: "-rpath ${path}/lib ") [
     freetype fontconfig stdenv.gcc.gcc mesa mesa.libdrm
     xlibs.libXinerama xlibs.libXrender xlibs.libXrandr
-    xlibs.libXcursor xlibs.libXcomposite
+    xlibs.libXcursor xlibs.libXcomposite xlibs.libXxf86vm
+    xlibs.xf86vidmodeproto
     openssl gnutls
   ];
 
diff --git a/pkgs/os-specific/linux/acpi-call/default.nix b/pkgs/os-specific/linux/acpi-call/default.nix
index 996409d786a..1a9b3cbf74d 100644
--- a/pkgs/os-specific/linux/acpi-call/default.nix
+++ b/pkgs/os-specific/linux/acpi-call/default.nix
@@ -9,9 +9,10 @@ stdenv.mkDerivation {
   name = "acpi-call";
 
   preBuild = ''
+    kernelVersion=$(cd ${kernel}/lib/modules && ls)
     sed -e 's/break/true/' -i test_off.sh
     sed -e 's@/bin/bash@.bin/sh@' -i test_off.sh
-    sed -e "s@/lib/modules@${kernel}/&@" -i Makefile
+    sed -e "s@/lib/modules/\$(.*)@${kernel}/lib/modules/$kernelVersion@" -i Makefile
   '';
  
   installPhase = ''
diff --git a/pkgs/servers/x11/xorg/default.nix b/pkgs/servers/x11/xorg/default.nix
index 14be8c440a1..a19cb8ee57d 100644
--- a/pkgs/servers/x11/xorg/default.nix
+++ b/pkgs/servers/x11/xorg/default.nix
@@ -967,6 +967,16 @@ let
     buildInputs = [pkgconfig perl ];
   })) // {inherit perl ;};
     
+  pixman_0_20_0 = (stdenv.mkDerivation ((if overrides ? pixman then overrides.pixman else x: x) {
+    name = "pixman-0.20.0";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = mirror://xorg/individual/lib/pixman-0.20.0.tar.bz2;
+      sha256 = "1dc804v98222n5awx1x1inwwdp6p7yksiw5yr8jip2pk3fbak627";
+    };
+    buildInputs = [pkgconfig perl ];
+  })) // {inherit perl ;};
+
   printproto = (stdenv.mkDerivation ((if overrides ? printproto then overrides.printproto else x: x) {
     name = "printproto-1.0.4";
     builder = ./builder.sh;
diff --git a/pkgs/tools/system/lshw/default.nix b/pkgs/tools/system/lshw/default.nix
new file mode 100644
index 00000000000..a0f838cfcf9
--- /dev/null
+++ b/pkgs/tools/system/lshw/default.nix
@@ -0,0 +1,32 @@
+{ stdenv, fetchurl
+, withGUI? false, gtk? null, pkgconfig? null, sqlite? null  # compile GUI
+ }:
+stdenv.mkDerivation rec {
+
+  name = "lshw-${version}";
+  version = "02.15b";
+
+  src = fetchurl {
+    url = http://ezix.org/software/files/lshw-B.02.15.tar.gz;
+    sha256 = "19im6yj1pmsbrwkvdmgshllhiw7jh6nzhr6dc777q1n99g3cw0gv";
+  };
+
+  buildInputs = [] ++ stdenv.lib.optional withGUI [ gtk pkgconfig sqlite ];
+
+  postBuild = if withGUI then "make gui" else "";
+
+  installPhase = ''
+    make DESTDIR="$out" install
+    ${if withGUI then "make DESTDIR=$out install-gui" else ""}
+    mv $out/usr/* $out
+    rmdir $out/usr
+  '';
+
+  meta = with stdenv.lib; {
+    homepage = http://ezix.org/project/wiki/HardwareLiSter;
+    description = "A small tool to provide detailed information on the hardware configuration of the machine.";
+    license = licenses.gpl2;
+    maintainers = [ maintainers.phreedom ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 69f75b07eb5..762743b8e7d 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -826,6 +826,8 @@ let
   # former a lower priority than Nettle.
   lsh = lowPrio (callPackage ../tools/networking/lsh { });
 
+  lshw = callPackage ../tools/system/lshw { };
+
   lxc = callPackage ../tools/system/lxc { };
 
   lzma = xz;
@@ -912,6 +914,8 @@ let
     };
   };
 
+  netcdf = callPackage ../development/libraries/netcdf { };
+
   nc6 = callPackage ../tools/networking/nc6 { };
 
   ncat = callPackage ../tools/networking/ncat { };
@@ -1483,6 +1487,7 @@ let
   adobe_flex_sdk = callPackage ../development/compilers/adobe-flex-sdk { };
 
   fpc = callPackage ../development/compilers/fpc { };
+  fpc_2_4_0 = callPackage ../development/compilers/fpc/2.4.0.nix { };
 
   gambit = callPackage ../development/compilers/gambit { };
 
@@ -1853,8 +1858,8 @@ let
   # reducing the number or "enabled" versions again.
 
   # Helper functions to abstract away from repetitive instantiations.
-  haskellPackagesFun = ghcPath : profDefault : recurseIntoAttrs (import ./haskell-packages.nix {
-    inherit pkgs newScope;
+  haskellPackagesFun = ghcPath : profDefault : modifyPrio : recurseIntoAttrs (import ./haskell-packages.nix {
+    inherit pkgs newScope modifyPrio;
     enableLibraryProfiling = getConfig [ "cabal" "libraryProfiling" ] profDefault;
     ghc = callPackage ghcPath {
       ghc = ghc6101Binary;    };
@@ -1862,32 +1867,32 @@ let
 
   # Currently active GHC versions.
   haskellPackages_ghc6101 =
-    haskellPackagesFun ../development/compilers/ghc/6.10.1.nix false;
+    haskellPackagesFun ../development/compilers/ghc/6.10.1.nix false (x : x);
 
   haskellPackages_ghc6102 =
-    haskellPackagesFun ../development/compilers/ghc/6.10.2.nix false;
+    haskellPackagesFun ../development/compilers/ghc/6.10.2.nix false (x : x);
 
   haskellPackages_ghc6103 =
-    haskellPackagesFun ../development/compilers/ghc/6.10.3.nix false;
+    haskellPackagesFun ../development/compilers/ghc/6.10.3.nix false (x : x);
 
   haskellPackages_ghc6104 =
-    haskellPackagesFun ../development/compilers/ghc/6.10.4.nix false;
+    haskellPackagesFun ../development/compilers/ghc/6.10.4.nix false (x : x);
 
   haskellPackages_ghc6121 =
-    haskellPackagesFun ../development/compilers/ghc/6.12.1.nix false;
+    haskellPackagesFun ../development/compilers/ghc/6.12.1.nix false (x : x);
 
   haskellPackages_ghc6122 =
-    haskellPackagesFun ../development/compilers/ghc/6.12.2.nix false;
+    haskellPackagesFun ../development/compilers/ghc/6.12.2.nix false (x : x);
 
   # Current default version.
   haskellPackages_ghc6123 =
-    haskellPackagesFun ../development/compilers/ghc/6.12.3.nix false;
+    haskellPackagesFun ../development/compilers/ghc/6.12.3.nix false (x : x);
 
   haskellPackages_ghc701 =
-    lowPrio (haskellPackagesFun ../development/compilers/ghc/7.0.1.nix false);
+    haskellPackagesFun ../development/compilers/ghc/7.0.1.nix  false lowPrio;
 
   haskellPackages_ghcHEAD =
-    lowPrio (haskellPackagesFun ../development/compilers/ghc/head.nix false);
+    haskellPackagesFun ../development/compilers/ghc/head.nix   false lowPrio;
 
   haxeDist = import ../development/compilers/haxe {
     inherit fetchurl sourceFromHead stdenv lib ocaml zlib makeWrapper neko;
@@ -1951,9 +1956,10 @@ let
   jikes = callPackage ../development/compilers/jikes { };
 
   lazarus = builderDefsPackage (import ../development/compilers/fpc/lazarus.nix) {
-    inherit fpc makeWrapper;
+    inherit makeWrapper;
     inherit (gtkLibs) gtk glib pango atk;
     inherit (xlibs) libXi inputproto libX11 xproto libXext xextproto;
+    fpc = fpc_2_4_0;
   };
 
   llvm = callPackage ../development/compilers/llvm { };
@@ -2650,6 +2656,9 @@ let
   buddy = callPackage ../development/libraries/buddy { };
 
   cairo = callPackage ../development/libraries/cairo { };
+  cairo_1_10_0 = callPackage ../development/libraries/cairo/1.10.nix {
+    pixman = xlibs.pixman_0_20_0;
+  };
 
   cairomm = callPackage ../development/libraries/cairomm { };
 
@@ -2778,7 +2787,7 @@ let
 
   farsight2 = callPackage ../development/libraries/farsight2 {
     inherit (gnome) glib;
-    inherit (gst_all) gstreamer gstPluginsBase;
+    inherit (gst_all) gstreamer gstPluginsBase gst_python;
   };
 
   fcgi = callPackage ../development/libraries/fcgi { };
@@ -3073,7 +3082,7 @@ let
 
   });
 
-  gtkLibs220 = recurseIntoAttrs (let callPackage = newScope pkgs.gtkLibs220; in rec {
+  gtkLibs220 = recurseIntoAttrs (let callPackage = pkgs.newScope pkgs.gtkLibs220; in rec {
 
     glib = callPackage ../development/libraries/glib/2.24.x.nix { };
 
@@ -3263,6 +3272,8 @@ let
     inherit sqlite mysql;
   };
 
+  libdevil = callPackage ../development/libraries/libdevil { };
+
   libdiscid = callPackage ../development/libraries/libdiscid { };
 
   libdv = callPackage ../development/libraries/libdv { };
@@ -3478,6 +3489,8 @@ let
 
   libtommath = callPackage ../development/libraries/libtommath { };
 
+  libtorrentRasterbar = callPackage ../development/libraries/libtorrent-rasterbar { };
+
   libtunepimp = callPackage ../development/libraries/libtunepimp { };
 
   libgeotiff = callPackage ../development/libraries/libgeotiff { };
@@ -5138,6 +5151,7 @@ let
 
   wesnoth = callPackage ../games/wesnoth {
     inherit (gtkLibs) pango;
+    lua = lua5;
   };
 
   wirelesstools = callPackage ../os-specific/linux/wireless-tools { };
@@ -5424,6 +5438,8 @@ let
     inherit (gnome) esound;
   };
 
+  cmus = callPackage ../applications/audio/cmus { };
+
   compiz = callPackage ../applications/window-managers/compiz/core.nix { };
 
   compiz_ccsm = callPackage ../applications/window-managers/compiz/ccsm.nix { };
@@ -5679,9 +5695,11 @@ let
     inherit (gnome) libIDL;
   };
 
-  firefox40Pkgs = callPackage ../applications/networking/browsers/firefox/4.0.nix {
-    inherit (gtkLibs) gtk pango;
-    inherit (gnome) libIDL;
+  firefox40Pkgs = let p = (applyGlobalOverrides (x : {cairo = x.cairo_1_10_0;}));
+  in p.callPackage 
+      ../applications/networking/browsers/firefox/4.0.nix {
+    inherit (p.gtkLibs) gtk pango;
+    inherit (p.gnome) libIDL;
   };
 
   firefox36Wrapper = wrapFirefox firefox36Pkgs.firefox "firefox" "";
@@ -5923,6 +5941,22 @@ let
 
   kdevelop = newScope pkgs.kde4 ../applications/editors/kdevelop { };
 
+  keepnote = callPackage ../applications/office/keepnote {
+    # I did not find any better way of reusing buildPythonPackage+setuptools
+    # for a python with openssl support
+    buildPythonPackage = assert pythonFull.sqliteSupport;
+      import ../development/python-modules/generic {
+        inherit makeWrapper lib;
+        python = pythonFull;
+        setuptools = builderDefsPackage (import ../development/python-modules/setuptools) {
+          inherit makeWrapper;
+          python = pythonFull;
+        };
+      };
+    # How could this pygtk use also pythonFull, I don't know.
+    pygtk = pyGtkGlade;
+  };
+
   kermit = callPackage ../tools/misc/kermit { };
 
   kino = import ../applications/video/kino {
@@ -6701,6 +6735,10 @@ let
   spaceOrbit = callPackage ../games/orbit {
     inherit (gnome) esound;  };
 
+  spring = callPackage ../games/spring { };
+
+  springLobby = callPackage ../games/spring/spring-lobby.nix { };
+
   superTux = callPackage ../games/super-tux { };
 
   superTuxKart = callPackage ../games/super-tux-kart {
diff --git a/pkgs/top-level/haskell-packages.nix b/pkgs/top-level/haskell-packages.nix
index 4e28d7d57b5..9cfb3718c9d 100644
--- a/pkgs/top-level/haskell-packages.nix
+++ b/pkgs/top-level/haskell-packages.nix
@@ -1,8 +1,12 @@
-{pkgs, newScope, ghc, enableLibraryProfiling ? false}:
+{pkgs, newScope, ghc, enableLibraryProfiling ? false, modifyPrio ? (x : x)}:
 
-let ghcReal = pkgs.lowPrio ghc; in
+let ghcOuter = ghc; in
 
-let result = let callPackage = newScope result; in
+# We redefine callPackage to take into account the new scope. The optional
+# modifyPrio argument can be set to lowPrio to make all Haskell packages have
+# low priority.
+
+let result = let callPackage = x : y : modifyPrio (newScope result x y); in
 
 # Indentation deliberately broken at this point to keep the bulk
 # of this file at a low indentation level.
@@ -13,14 +17,14 @@ rec {
   # -> http://github.com/MarcWeber/hack-nix. Read its README file.
   # You can install (almost) all packages from hackage easily.
 
-  inherit ghcReal;
+  ghcReal = pkgs.lowPrio ghcOuter;
 
   # In the remainder, `ghc' refers to the wrapper.  This is because
   # it's never useful to use the wrapped GHC (`ghcReal'), as the
   # wrapper provides essential functionality: the ability to find
   # Haskell packages in the buildInputs automatically.
   ghc = callPackage ../development/compilers/ghc/wrapper.nix {
-    ghc = ghcReal;
+    ghc = ghcOuter;
   };
 
   cabal = callPackage ../development/libraries/haskell/cabal/cabal.nix {};
@@ -44,6 +48,8 @@ rec {
 
   binary = callPackage ../development/libraries/haskell/binary {};
 
+  binaryShared = callPackage ../development/libraries/haskell/binary-shared {};
+
   bitmap = callPackage ../development/libraries/haskell/bitmap {};
 
   blazeBuilder = callPackage ../development/libraries/haskell/blaze-builder {};
@@ -88,6 +94,11 @@ rec {
     time = time_1_1_3;
   };
 
+  criterion = callPackage ../development/libraries/haskell/criterion {
+    parallel = parallel_2_2_0_1;
+    parsec = parsec_3;
+  };
+
   Crypto = callPackage ../development/libraries/haskell/Crypto {};
 
   CS173Tourney = callPackage ../development/libraries/haskell/CS173Tourney {
@@ -105,6 +116,8 @@ rec {
 
   deepseq = callPackage ../development/libraries/haskell/deepseq {};
 
+  derive = callPackage ../development/libraries/haskell/derive {};
+
   Diff = callPackage ../development/libraries/haskell/Diff {};
 
   digest = callPackage ../development/libraries/haskell/digest {
@@ -117,6 +130,8 @@ rec {
     inherit (pkgs) libedit;
   };
 
+  erf = callPackage ../development/libraries/haskell/erf {};
+
   filepath = callPackage ../development/libraries/haskell/filepath {};
 
   emgm = callPackage ../development/libraries/haskell/emgm {};
@@ -153,6 +168,8 @@ rec {
 
   ghcSyb = callPackage ../development/libraries/haskell/ghc-syb {};
 
+  ghcSybUtils = callPackage ../development/libraries/haskell/ghc-syb-utils {};
+
   gitit = callPackage ../development/libraries/haskell/gitit {
     cgi = cgi_3001_1_7_2;
     HTTP = HTTP_4000_0_9;
@@ -196,6 +213,12 @@ rec {
     happy = happy_1_18_5;
   };
 
+  gtksourceview2 = callPackage ../development/libraries/haskell/gtksourceview2 {
+    inherit (pkgs) pkgconfig glibc;
+    inherit (pkgs.gnome) gtksourceview;
+    gtkC = pkgs.gtkLibs.gtk;
+  };
+
   Graphalyze = callPackage ../development/libraries/haskell/Graphalyze {
     fgl = fgl_5_4_2_3;
   };
@@ -307,7 +330,8 @@ rec {
   haskellPlatform_2009_2_0_2 = import ../development/libraries/haskell/haskell-platform/2009.2.0.2.nix {
     inherit cabal ghc GLUT HTTP HUnit OpenGL QuickCheck cgi fgl editline
       haskellSrc html parallel regexBase regexCompat regexPosix
-      stm time xhtml zlib cabalInstall alex happy haddock;
+      stm time xhtml zlib cabalInstall alex happy;
+    haddock = haddock_2_4_2;
     inherit (pkgs) fetchurl;
   };
 
@@ -381,6 +405,12 @@ rec {
 
   json_0_3_6 = callPackage ../development/libraries/haskell/json/0.3.6.nix {};
 
+  leksahServer = callPackage ../development/libraries/haskell/leksah/leksah-server.nix {
+    network = network_2_2_1_7;
+  };
+
+  ltk = callPackage ../development/libraries/haskell/ltk {};
+
   maybench = callPackage ../development/libraries/haskell/maybench {};
 
   MaybeT = callPackage ../development/libraries/haskell/MaybeT {};
@@ -413,6 +443,8 @@ rec {
 
   multiset = callPackage ../development/libraries/haskell/multiset {};
 
+  mwcRandom = callPackage ../development/libraries/haskell/mwc-random {};
+
   neither = callPackage ../development/libraries/haskell/neither {};
 
   network_2_2_1_7 = callPackage ../development/libraries/haskell/network/2.2.1.7.nix {};
@@ -479,6 +511,8 @@ rec {
 
   primitive = callPackage ../development/libraries/haskell/primitive {};
 
+  processLeksah = callPackage ../development/libraries/haskell/leksah/process-leksah.nix {};
+
   QuickCheck  = QuickCheck_1;
 
   QuickCheck_1 = callPackage ../development/libraries/haskell/QuickCheck {};
@@ -550,6 +584,8 @@ rec {
     network = network_2_2_1_7;
   };
 
+  statistics = callPackage ../development/libraries/haskell/statistics {};
+
   syb = callPackage ../development/libraries/haskell/syb {};
 
   sybWithClass = callPackage ../development/libraries/haskell/syb/syb-with-class.nix {};
@@ -646,6 +682,8 @@ rec {
 
   vector = callPackage ../development/libraries/haskell/vector {};
 
+  vectorAlgorithms = callPackage ../development/libraries/haskell/vector-algorithms {};
+
   vectorSpace = callPackage ../development/libraries/haskell/vector-space {};
 
   vty = callPackage ../development/libraries/haskell/vty {
@@ -734,7 +772,7 @@ rec {
 
   frown = callPackage ../development/tools/parsing/frown {};
 
-  haddock = haddock_2_4_2;
+  haddock = haddock_2_7_2_P;
 
   haddock_2_4_2 = callPackage ../development/tools/documentation/haddock/haddock-2.4.2.nix {};
 
@@ -784,7 +822,9 @@ rec {
   };
 
   leksah = callPackage ../applications/editors/leksah {
-    inherit (pkgs) libedit makeWrapper;
+    network = network_2_2_1_7;
+    regexBase = regexBase_0_93_2;
+    inherit (pkgs) makeWrapper;
   };
 
   xmobar = callPackage ../applications/misc/xmobar {};
diff --git a/pkgs/top-level/release.nix b/pkgs/top-level/release.nix
index 52611a0f57e..54bc621cf2f 100644
--- a/pkgs/top-level/release.nix
+++ b/pkgs/top-level/release.nix
@@ -406,11 +406,8 @@ with (import ./release-lib.nix);
   };
 
   haskellPackages_ghc6104 = {
-    darcs = ghcSupported;
     ghc = ghcSupported;
-    # gitit = linux;
     gtk2hs = linux;
-    leksah = linux;
     haskellPlatform_2009_2_0_2 = ghcSupported;
     xmonad = linux;
   };
@@ -431,6 +428,8 @@ with (import ./release-lib.nix);
     darcs = ghcSupported;
     ghc = ghcSupported;
     gitit = linux;
+    gtk = linux;
+    leksah = linux;
     haskellPlatform_2010_2_0_0 = ghcSupported;
     lhs2tex = ghcSupported;
     xmonad = linux;