summary refs log tree commit diff
path: root/pkgs
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs')
-rw-r--r--pkgs/applications/audio/calf/default.nix15
-rw-r--r--pkgs/applications/audio/csound/default.nix34
-rw-r--r--pkgs/applications/audio/distrho/default.nix67
-rw-r--r--pkgs/applications/audio/swh-lv2/default.nix39
-rw-r--r--pkgs/applications/editors/monodevelop/default.nix6
-rw-r--r--pkgs/applications/editors/monodoc/default.nix6
-rw-r--r--pkgs/applications/editors/netbeans/default.nix41
-rw-r--r--pkgs/applications/graphics/darktable/default.nix8
-rw-r--r--pkgs/applications/graphics/dia/default.nix2
-rw-r--r--pkgs/applications/graphics/dia/glib-top-level-header.patch471
-rw-r--r--pkgs/applications/graphics/f-spot/default.nix4
-rw-r--r--pkgs/applications/graphics/inkscape/default.nix4
-rw-r--r--pkgs/applications/graphics/pqiv/default.nix6
-rw-r--r--pkgs/applications/misc/eaglemode/default.nix14
-rw-r--r--pkgs/applications/misc/epdfview/default.nix1
-rw-r--r--pkgs/applications/misc/epdfview/glib-top-level-header.patch12
-rw-r--r--pkgs/applications/misc/mupdf/default.nix7
-rw-r--r--pkgs/applications/misc/nut/default.nix5
-rw-r--r--pkgs/applications/misc/synergy/default.nix40
-rw-r--r--pkgs/applications/misc/taskwarrior/default.nix31
-rw-r--r--pkgs/applications/misc/xterm/default.nix16
-rw-r--r--pkgs/applications/networking/browsers/chromium/default.nix36
-rw-r--r--pkgs/applications/networking/browsers/chromium/enable_seccomp.patch22
-rw-r--r--pkgs/applications/networking/browsers/chromium/enable_seccomp22.patch20
-rw-r--r--pkgs/applications/networking/browsers/chromium/sources.nix18
-rw-r--r--pkgs/applications/networking/browsers/firefox/16.0.nix185
-rw-r--r--pkgs/applications/networking/browsers/mozilla-plugins/flashplayer-10/builder.sh23
-rw-r--r--pkgs/applications/networking/browsers/mozilla-plugins/flashplayer-10/default.nix88
-rw-r--r--pkgs/applications/networking/browsers/mozilla-plugins/flashplayer-11/default.nix23
-rw-r--r--pkgs/applications/networking/browsers/mozilla-plugins/flashplayer-9/builder.sh14
-rw-r--r--pkgs/applications/networking/browsers/mozilla-plugins/flashplayer-9/default.nix47
-rw-r--r--pkgs/applications/networking/browsers/opera/default.nix10
-rw-r--r--pkgs/applications/networking/instant-messengers/psi/default.nix37
-rw-r--r--pkgs/applications/networking/instant-messengers/psi/glib-2.32.patch54
-rw-r--r--pkgs/applications/networking/instant-messengers/psi/psimedia.nix8
-rw-r--r--pkgs/applications/networking/instant-messengers/skype/default.nix12
-rw-r--r--pkgs/applications/networking/irc/weechat/default.nix4
-rw-r--r--pkgs/applications/networking/irc/xchat/default.nix2
-rw-r--r--pkgs/applications/networking/irc/xchat/glib-top-level-header.patch75
-rw-r--r--pkgs/applications/networking/mailreaders/sylpheed/default.nix28
-rw-r--r--pkgs/applications/networking/mailreaders/thunderbird/15.x.nix (renamed from pkgs/applications/networking/mailreaders/thunderbird/11.x.nix)47
-rw-r--r--pkgs/applications/networking/sniffers/wireshark/default.nix4
-rw-r--r--pkgs/applications/office/gnucash/default.nix4
-rw-r--r--pkgs/applications/office/openoffice/libreoffice-srcs.nix4
-rw-r--r--pkgs/applications/office/openoffice/libreoffice.nix10
-rw-r--r--pkgs/applications/science/astronomy/gravit/default.nix22
-rw-r--r--pkgs/applications/science/astronomy/stellarium/default.nix14
-rw-r--r--pkgs/applications/science/math/maxima/default.nix4
-rw-r--r--pkgs/applications/science/math/wxmaxima/default.nix4
-rw-r--r--pkgs/applications/version-management/git-and-tools/default.nix11
-rw-r--r--pkgs/applications/version-management/git-and-tools/git-annex/default.nix34
-rw-r--r--pkgs/applications/version-management/git-and-tools/git/default.nix4
-rw-r--r--pkgs/applications/video/MPlayer/default.nix165
-rw-r--r--pkgs/applications/video/RealPlayer/default.nix6
-rw-r--r--pkgs/applications/video/vlc/default.nix4
-rw-r--r--pkgs/applications/virtualization/virtualbox/default.nix4
-rw-r--r--pkgs/applications/virtualization/virtualbox/guest-additions/default.nix11
-rw-r--r--pkgs/applications/window-managers/awesome/default.nix1
-rw-r--r--pkgs/applications/window-managers/i3/default.nix10
-rw-r--r--pkgs/applications/window-managers/icewm/default.nix2
-rw-r--r--pkgs/applications/window-managers/icewm/deprecated.patch23
-rw-r--r--pkgs/build-support/setup-hooks/autoreconf.sh11
-rw-r--r--pkgs/build-support/setup-hooks/make-wrapper.sh (renamed from pkgs/build-support/make-wrapper/make-wrapper.sh)0
-rw-r--r--pkgs/data/misc/xkeyboard-config/default.nix6
-rw-r--r--pkgs/desktops/gnome-2/desktop/gvfs/default.nix14
-rw-r--r--pkgs/desktops/gnome-2/platform/libgnomecups/default.nix10
-rw-r--r--pkgs/desktops/gnome-2/platform/libgnomecups/glib.patch38
-rw-r--r--pkgs/desktops/gnome-2/platform/libgnomeprint/default.nix10
-rw-r--r--pkgs/desktops/xfce-4.8/support/gvfs.nix16
-rw-r--r--pkgs/development/compilers/ccl/default.nix4
-rw-r--r--pkgs/development/compilers/ecl/default.nix13
-rw-r--r--pkgs/development/compilers/ecl/src-for-default.nix7
-rw-r--r--pkgs/development/compilers/ecl/src-info-for-default.nix6
-rw-r--r--pkgs/development/compilers/edk2/default.nix4
-rw-r--r--pkgs/development/compilers/fpc/lazarus.nix7
-rw-r--r--pkgs/development/compilers/ghc/6.10.1-binary.nix8
-rw-r--r--pkgs/development/compilers/ghc/6.10.2-binary.nix8
-rw-r--r--pkgs/development/compilers/ghc/6.12.1-binary.nix8
-rw-r--r--pkgs/development/compilers/ghc/6.4.2-binary.nix8
-rw-r--r--pkgs/development/compilers/ghc/7.0.4-binary.nix8
-rw-r--r--pkgs/development/compilers/ghc/7.4.2-binary.nix8
-rw-r--r--pkgs/development/compilers/go/default.nix6
-rw-r--r--pkgs/development/compilers/haxe/default.nix166
-rw-r--r--pkgs/development/compilers/idris/default.nix4
-rw-r--r--pkgs/development/compilers/jhc/default.nix29
-rw-r--r--pkgs/development/compilers/llvm/3.1.nix27
-rw-r--r--pkgs/development/compilers/llvm/clang-include-paths.patch54
-rw-r--r--pkgs/development/compilers/llvm/clang-ld-flags.patch75
-rw-r--r--pkgs/development/compilers/llvm/clang.nix21
-rw-r--r--pkgs/development/compilers/llvm/default.nix12
-rw-r--r--pkgs/development/compilers/neko/default.nix95
-rw-r--r--pkgs/development/compilers/neko/disable-modules.patch59
-rw-r--r--pkgs/development/compilers/ocaml/4.00.1.nix (renamed from pkgs/development/compilers/ocaml/4.00.0.nix)4
-rw-r--r--pkgs/development/compilers/openjdk-darwin/default.nix2
-rw-r--r--pkgs/development/compilers/openjdk/default.nix9
-rw-r--r--pkgs/development/interpreters/clisp/default.nix1
-rw-r--r--pkgs/development/interpreters/lua-5/5.1.nix30
-rw-r--r--pkgs/development/interpreters/php/5.2.nix172
-rw-r--r--pkgs/development/interpreters/php/5.3.nix42
-rw-r--r--pkgs/development/libraries/atk/2.6.x.nix (renamed from pkgs/development/libraries/atk/2.2.x.nix)6
-rw-r--r--pkgs/development/libraries/audio/suil/default.nix8
-rw-r--r--pkgs/development/libraries/boehm-gc/default.nix20
-rw-r--r--pkgs/development/libraries/cairo/default.nix29
-rw-r--r--pkgs/development/libraries/dbus/default.nix10
-rw-r--r--pkgs/development/libraries/expat/cve-2009-3560.patch18
-rw-r--r--pkgs/development/libraries/expat/default.nix14
-rw-r--r--pkgs/development/libraries/ffmpeg/1.0.nix85
-rw-r--r--pkgs/development/libraries/ffmpeg/default.nix4
-rw-r--r--pkgs/development/libraries/fontconfig/default.nix21
-rw-r--r--pkgs/development/libraries/freetype/default.nix32
-rw-r--r--pkgs/development/libraries/gamin/debian-patches.nix2
-rw-r--r--pkgs/development/libraries/gdk-pixbuf/2.26.x.nix (renamed from pkgs/development/libraries/gdk-pixbuf/2.24.x.nix)11
-rw-r--r--pkgs/development/libraries/glib/2.34.x.nix (renamed from pkgs/development/libraries/glib/2.30.x.nix)27
-rw-r--r--pkgs/development/libraries/gnu-efi/default.nix6
-rw-r--r--pkgs/development/libraries/gnutls/default.nix18
-rw-r--r--pkgs/development/libraries/gobject-introspection/default.nix11
-rw-r--r--pkgs/development/libraries/goffice/default.nix17
-rw-r--r--pkgs/development/libraries/gstreamer/gst-plugins-base/default.nix9
-rw-r--r--pkgs/development/libraries/gstreamer/gstreamer/default.nix8
-rw-r--r--pkgs/development/libraries/gtk+/2.24.x.nix20
-rw-r--r--pkgs/development/libraries/gtk+/3.2.x.nix6
-rw-r--r--pkgs/development/libraries/gtk+/old-icons.patch270
-rw-r--r--pkgs/development/libraries/harfbuzz/default.nix19
-rw-r--r--pkgs/development/libraries/haskell/Cabal/1.16.0.1.nix (renamed from pkgs/development/libraries/haskell/Cabal/1.16.0.nix)4
-rw-r--r--pkgs/development/libraries/haskell/DSH/default.nix13
-rw-r--r--pkgs/development/libraries/haskell/async/2.0.1.3.nix (renamed from pkgs/development/libraries/haskell/async/default.nix)0
-rw-r--r--pkgs/development/libraries/haskell/binary/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/citeproc-hs/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/conduit/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/criterion/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/data-accessor/data-accessor-template.nix4
-rw-r--r--pkgs/development/libraries/haskell/data-memocombinators/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/dbus/default.nix19
-rw-r--r--pkgs/development/libraries/haskell/deepseq-th/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/digestive-functors-snap/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/digestive-functors/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/distributed-process-simplelocalnet/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/distributed-process/default.nix6
-rw-r--r--pkgs/development/libraries/haskell/distributed-static/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/edit-distance/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/exception-mtl/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/exception-transformers/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/file-embed/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/ghc-mtl/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/gloss/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/happstack/happstack-server.nix4
-rw-r--r--pkgs/development/libraries/haskell/hashtables/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/haskell-platform/2012.4.0.0.nix44
-rw-r--r--pkgs/development/libraries/haskell/haskell-platform/haskell-platform-2012.4.0.0.cabal96
-rw-r--r--pkgs/development/libraries/haskell/heist/default.nix10
-rw-r--r--pkgs/development/libraries/haskell/highlighting-kate/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/hint/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/hjsmin/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/hspec/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/http-conduit/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/hxt/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/json/default.nix8
-rw-r--r--pkgs/development/libraries/haskell/language-c-quote/default.nix5
-rw-r--r--pkgs/development/libraries/haskell/language-javascript/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/libmpd/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/libxml-sax/default.nix16
-rw-r--r--pkgs/development/libraries/haskell/lifted-base/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/mainland-pretty/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/monadcryptorandom/default.nix10
-rw-r--r--pkgs/development/libraries/haskell/multiarg/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/network-conduit/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/network-info/default.nix13
-rw-r--r--pkgs/development/libraries/haskell/network-transport-tcp/default.nix6
-rw-r--r--pkgs/development/libraries/haskell/network-transport/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/network/2.3.1.0.nix15
-rw-r--r--pkgs/development/libraries/haskell/numbers/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/parallel-io/default.nix5
-rw-r--r--pkgs/development/libraries/haskell/persistent/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/primitive/0.4.1.nix (renamed from pkgs/development/libraries/haskell/primitive/default.nix)0
-rw-r--r--pkgs/development/libraries/haskell/primitive/0.5.0.1.nix14
-rw-r--r--pkgs/development/libraries/haskell/primitive/0.5.nix14
-rw-r--r--pkgs/development/libraries/haskell/repa/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/resourcet/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/shelly/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/silently/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/snap/core.nix12
-rw-r--r--pkgs/development/libraries/haskell/snap/loader-dynamic.nix4
-rw-r--r--pkgs/development/libraries/haskell/snap/server.nix20
-rw-r--r--pkgs/development/libraries/haskell/snap/snap.nix11
-rw-r--r--pkgs/development/libraries/haskell/split/0.2.1.1.nix (renamed from pkgs/development/libraries/haskell/split/default.nix)0
-rw-r--r--pkgs/development/libraries/haskell/srcloc/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/stringsearch/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/stylish-haskell/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/symbol/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/temporary/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/tls-extra/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/uu-parsinglib/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/vector-algorithms/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/vector/0.10.0.1.nix15
-rw-r--r--pkgs/development/libraries/haskell/vector/0.10.nix15
-rw-r--r--pkgs/development/libraries/haskell/vector/0.9.1.nix (renamed from pkgs/development/libraries/haskell/vector/default.nix)0
-rw-r--r--pkgs/development/libraries/haskell/wai-extra/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/warp/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/yaml/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/yesod-auth/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/yesod-core/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/yesod-default/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/yesod-routes/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/yesod/default.nix5
-rw-r--r--pkgs/development/libraries/haskell/zip-archive/default.nix8
-rw-r--r--pkgs/development/libraries/json-glib/default.nix4
-rw-r--r--pkgs/development/libraries/libc++/default.nix28
-rw-r--r--pkgs/development/libraries/libdrm/default.nix10
-rw-r--r--pkgs/development/libraries/libgsf/default.nix8
-rw-r--r--pkgs/development/libraries/libgsf/syscall-name-clash.patch120
-rw-r--r--pkgs/development/libraries/libicns/default.nix8
-rw-r--r--pkgs/development/libraries/libmnl/default.nix25
-rw-r--r--pkgs/development/libraries/libnetfilter_conntrack/default.nix26
-rw-r--r--pkgs/development/libraries/libnfnetlink/default.nix27
-rw-r--r--pkgs/development/libraries/libpng/12.nix4
-rw-r--r--pkgs/development/libraries/libpng/default.nix4
-rw-r--r--pkgs/development/libraries/libraw1394/default.nix4
-rw-r--r--pkgs/development/libraries/libsoup/default.nix6
-rw-r--r--pkgs/development/libraries/libtiff/default.nix18
-rw-r--r--pkgs/development/libraries/libusb1/default.nix4
-rw-r--r--pkgs/development/libraries/libxml2/default.nix28
-rw-r--r--pkgs/development/libraries/libxml2/pthread-once-init.patch35
-rw-r--r--pkgs/development/libraries/libxml2/setup-hook.sh6
-rw-r--r--pkgs/development/libraries/libxslt/default.nix16
-rw-r--r--pkgs/development/libraries/loudmouth/default.nix24
-rw-r--r--pkgs/development/libraries/loudmouth/glib-2.32.patch13
-rw-r--r--pkgs/development/libraries/mesa/default.nix14
-rw-r--r--pkgs/development/libraries/nettle/default.nix9
-rw-r--r--pkgs/development/libraries/openjpeg/default.nix12
-rw-r--r--pkgs/development/libraries/pango/1.30.x.nix (renamed from pkgs/development/libraries/pango/1.29.x.nix)8
-rw-r--r--pkgs/development/libraries/phat/default.nix21
-rw-r--r--pkgs/development/libraries/qt-4.x/4.8/default.nix52
-rw-r--r--pkgs/development/libraries/qt-4.x/4.8/dlopen-absolute-paths.diff63
-rw-r--r--pkgs/development/libraries/qt-4.x/4.8/glib-2.32.patch12
-rw-r--r--pkgs/development/libraries/science/math/blas/default.nix12
-rw-r--r--pkgs/development/libraries/webkit/default.nix11
-rw-r--r--pkgs/development/libraries/webkit/src-for-default.nix11
-rw-r--r--pkgs/development/ocaml-modules/extlib/default.nix9
-rw-r--r--pkgs/development/ocaml-modules/extlib/hashtable-ocaml4-compat.patch12
-rw-r--r--pkgs/development/ocaml-modules/ocamlnet/default.nix7
-rw-r--r--pkgs/development/ocaml-modules/ounit/default.nix8
-rw-r--r--pkgs/development/tools/analysis/smatch/default.nix30
-rw-r--r--pkgs/development/tools/build-managers/cmake/default.nix4
-rw-r--r--pkgs/development/tools/documentation/haddock/2.13.1.nix18
-rw-r--r--pkgs/development/tools/haskell/BNFC-meta/default.nix6
-rw-r--r--pkgs/development/tools/haskell/alex-meta/default.nix4
-rw-r--r--pkgs/development/tools/haskell/cabal2nix/default.nix4
-rw-r--r--pkgs/development/tools/haskell/happy-meta/default.nix4
-rw-r--r--pkgs/development/tools/haskell/tar/0.4.0.1.nix (renamed from pkgs/development/tools/haskell/tar/0.4.0.0.nix)8
-rw-r--r--pkgs/development/tools/misc/gnum4/default.nix3
-rw-r--r--pkgs/development/tools/ocaml/camlp5/default.nix20
-rw-r--r--pkgs/games/openttd/default.nix32
-rw-r--r--pkgs/games/rili/default.nix31
-rw-r--r--pkgs/games/rili/moderinze_cpp.patch391
-rw-r--r--pkgs/games/sgt-puzzles/default.nix5
-rw-r--r--pkgs/games/uqm/default.nix78
-rw-r--r--pkgs/games/widelands/boost_and_cmake_die_die_die.patch11
-rw-r--r--pkgs/games/widelands/default.nix18
-rw-r--r--pkgs/lib/licenses.nix6
-rw-r--r--pkgs/lib/maintainers.nix1
-rw-r--r--pkgs/lib/strings.nix6
-rw-r--r--pkgs/misc/cups/default.nix11
-rw-r--r--pkgs/misc/drivers/foomatic-filters/default.nix8
-rw-r--r--pkgs/misc/emulators/wine/default.nix4
-rw-r--r--pkgs/misc/jackaudio/default.nix7
-rw-r--r--pkgs/misc/jackaudio/ffado_setbuffsize-jack2.patch140
-rw-r--r--pkgs/misc/sane-backends/default.nix18
-rw-r--r--pkgs/misc/screensavers/xscreensaver/default.nix6
-rw-r--r--pkgs/os-specific/linux/alsa-lib/default.nix9
-rw-r--r--pkgs/os-specific/linux/alsa-utils/default.nix6
-rw-r--r--pkgs/os-specific/linux/consoletools/default.nix33
-rw-r--r--pkgs/os-specific/linux/ffado/default.nix22
-rw-r--r--pkgs/os-specific/linux/ffado/enable-mixer-and-dbus.patch13
-rw-r--r--pkgs/os-specific/linux/firmware/firmware-linux-nonfree/default.nix35
-rw-r--r--pkgs/os-specific/linux/hal/default.nix63
-rw-r--r--pkgs/os-specific/linux/hal/hal-evt.nix20
-rw-r--r--pkgs/os-specific/linux/hal/info.nix15
-rw-r--r--pkgs/os-specific/linux/hal/synaptics.nix19
-rw-r--r--pkgs/os-specific/linux/iproute/default.nix29
-rw-r--r--pkgs/os-specific/linux/ipsec-tools/default.nix42
-rw-r--r--pkgs/os-specific/linux/ipsec-tools/dont-create-localstatedir-during-install.patch13
-rw-r--r--pkgs/os-specific/linux/iptables/default.nix4
-rw-r--r--pkgs/os-specific/linux/kernel/linux-3.0.nix4
-rw-r--r--pkgs/os-specific/linux/kernel/linux-3.2.nix4
-rw-r--r--pkgs/os-specific/linux/kernel/linux-3.3.nix1
-rw-r--r--pkgs/os-specific/linux/kernel/linux-3.4.nix5
-rw-r--r--pkgs/os-specific/linux/kernel/linux-3.5.nix6
-rw-r--r--pkgs/os-specific/linux/kernel/linux-3.6.nix270
-rw-r--r--pkgs/os-specific/linux/kernel/patches.nix16
-rw-r--r--pkgs/os-specific/linux/lvm2/assume-uevent-generated.patch39
-rw-r--r--pkgs/os-specific/linux/lvm2/default.nix6
-rw-r--r--pkgs/os-specific/linux/lxc/default.nix (renamed from pkgs/applications/virtualization/lxc/default.nix)10
-rw-r--r--pkgs/os-specific/linux/lxc/dont-run-ldconfig.patch (renamed from pkgs/applications/virtualization/lxc/dont-run-ldconfig.patch)0
-rw-r--r--pkgs/os-specific/linux/lxc/fix-documentation-build.patch (renamed from pkgs/applications/virtualization/lxc/fix-documentation-build.patch)0
-rw-r--r--pkgs/os-specific/linux/lxc/fix-sgml-documentation.patch (renamed from pkgs/applications/virtualization/lxc/fix-sgml-documentation.patch)257
-rw-r--r--pkgs/os-specific/linux/mountall/default.nix6
-rw-r--r--pkgs/os-specific/linux/nvidia-x11/default.nix6
-rw-r--r--pkgs/os-specific/linux/nvidia-x11/legacy173.nix6
-rw-r--r--pkgs/os-specific/linux/reptyr/default.nix17
-rw-r--r--pkgs/os-specific/linux/spl/default.nix55
-rw-r--r--pkgs/os-specific/linux/spl/install_prefix.patch19
-rw-r--r--pkgs/os-specific/linux/spl/install_prefix_2.patch32
-rw-r--r--pkgs/os-specific/linux/spl/module_prefix.patch33
-rw-r--r--pkgs/os-specific/linux/sysfsutils/default.nix2
-rw-r--r--pkgs/os-specific/linux/systemd/crypt-devices-are-ready.patch22
-rw-r--r--pkgs/os-specific/linux/systemd/default.nix25
-rw-r--r--pkgs/os-specific/linux/systemd/fix-device-aliases.patch14
-rw-r--r--pkgs/os-specific/linux/systemd/ignore-duplicates.patch20
-rw-r--r--pkgs/os-specific/linux/usbutils/default.nix20
-rw-r--r--pkgs/os-specific/linux/xf86-input-mtrack/default.nix11
-rw-r--r--pkgs/os-specific/linux/xf86-input-wacom/default.nix10
-rw-r--r--pkgs/os-specific/linux/zfs/default.nix53
-rw-r--r--pkgs/os-specific/linux/zfs/kerneldir_path.patch140
-rw-r--r--pkgs/os-specific/linux/zfs/module_perm_prefix.patch70
-rw-r--r--pkgs/os-specific/linux/zfs/mount_zfs_prefix.patch24
-rw-r--r--pkgs/os-specific/linux/zfs/no_absolute_paths_to_coreutils.patch25
-rw-r--r--pkgs/servers/dns/bind/default.nix9
-rw-r--r--pkgs/servers/http/apache-httpd/2.2.nix4
-rw-r--r--pkgs/servers/http/apache-httpd/2.4.nix6
-rw-r--r--pkgs/servers/http/nginx/default.nix18
-rw-r--r--pkgs/servers/mail/spamassassin/default.nix4
-rw-r--r--pkgs/servers/samba/default.nix8
-rw-r--r--pkgs/servers/sql/mysql/jdbc/default.nix6
-rw-r--r--pkgs/servers/sql/mysql55/default.nix15
-rw-r--r--pkgs/servers/sql/postgresql/8.3.x.nix4
-rw-r--r--pkgs/servers/sql/postgresql/8.4.x.nix4
-rw-r--r--pkgs/servers/sql/postgresql/9.0.x.nix4
-rw-r--r--pkgs/servers/sql/postgresql/9.1.x.nix4
-rw-r--r--pkgs/servers/sql/postgresql/psqlodbc/default.nix20
-rw-r--r--pkgs/servers/squid/squids.nix8
-rw-r--r--pkgs/servers/x11/xorg/default.nix1226
-rw-r--r--pkgs/servers/x11/xorg/extra.list13
-rwxr-xr-xpkgs/servers/x11/xorg/generate-expr-from-tarballs.pl2
-rw-r--r--pkgs/servers/x11/xorg/old.list14
-rw-r--r--pkgs/servers/x11/xorg/overrides.nix95
-rw-r--r--pkgs/servers/x11/xorg/tarballs-7.6.list199
-rw-r--r--pkgs/servers/x11/xorg/tarballs-7.7.list184
-rw-r--r--pkgs/servers/x11/xorg/unichrome/default.nix7
-rw-r--r--pkgs/servers/x11/xorg/xorgserver-dri-path.patch57
-rw-r--r--pkgs/servers/x11/xorg/xorgserver-xkbcomp-path.patch2
-rw-r--r--pkgs/servers/xinetd/default.nix6
-rw-r--r--pkgs/shells/bash-completion/default.nix5
-rw-r--r--pkgs/tools/X11/xdg-utils/default.nix6
-rw-r--r--pkgs/tools/admin/tigervnc/default.nix45
-rw-r--r--pkgs/tools/archivers/cabextract/default.nix9
-rw-r--r--pkgs/tools/archivers/p7zip/default.nix8
-rw-r--r--pkgs/tools/backup/obnam/default.nix6
-rw-r--r--pkgs/tools/filesystems/btrfsprogs/default.nix6
-rw-r--r--pkgs/tools/filesystems/dosfstools/default.nix5
-rw-r--r--pkgs/tools/graphics/asymptote/src-for-default.nix8
-rw-r--r--pkgs/tools/misc/debian-devscripts/default.nix36
-rw-r--r--pkgs/tools/misc/debootstrap/default.nix122
-rw-r--r--pkgs/tools/misc/grub/2.0x.nix8
-rw-r--r--pkgs/tools/misc/grub/fix-bash-completion.patch24
-rw-r--r--pkgs/tools/misc/gsmartcontrol/default.nix23
-rw-r--r--pkgs/tools/misc/plowshare/default.nix4
-rw-r--r--pkgs/tools/misc/refind/default.nix8
-rw-r--r--pkgs/tools/misc/testdisk/default.nix12
-rw-r--r--pkgs/tools/misc/timidity/default.nix2
-rw-r--r--pkgs/tools/misc/youtube-dl/default.nix4
-rw-r--r--pkgs/tools/networking/miniupnpd/default.nix23
-rw-r--r--pkgs/tools/networking/nss-myhostname/default.nix19
-rw-r--r--pkgs/tools/networking/nss-myhostname/ignore-ipv6-link-local.patch13
-rw-r--r--pkgs/tools/networking/nss-myhostname/nscd-segfault.patch15
-rw-r--r--pkgs/tools/networking/sitecopy/default.nix6
-rw-r--r--pkgs/tools/package-management/cabal-install/1.16.0.nix23
-rw-r--r--pkgs/tools/package-management/dpkg/default.nix17
-rw-r--r--pkgs/tools/package-management/nix/unstable.nix6
-rw-r--r--pkgs/tools/system/fakeroot/default.nix18
-rw-r--r--pkgs/tools/system/pciutils/default.nix15
-rw-r--r--pkgs/tools/system/smartmontools/default.nix6
-rw-r--r--pkgs/top-level/all-packages.nix205
-rw-r--r--pkgs/top-level/haskell-defaults.nix18
-rw-r--r--pkgs/top-level/haskell-packages.nix96
-rw-r--r--pkgs/top-level/node-packages.nix96
-rw-r--r--pkgs/top-level/perl-packages.nix27
-rw-r--r--pkgs/top-level/platforms.nix5
-rw-r--r--pkgs/top-level/python-packages.nix193
-rw-r--r--pkgs/top-level/release.nix5
379 files changed, 6668 insertions, 3698 deletions
diff --git a/pkgs/applications/audio/calf/default.nix b/pkgs/applications/audio/calf/default.nix
index 4b1f6dcd2687..bc7b3c57e60b 100644
--- a/pkgs/applications/audio/calf/default.nix
+++ b/pkgs/applications/audio/calf/default.nix
@@ -1,22 +1,25 @@
-{ stdenv, fetchurl, cairo, expat, glib, gtk, jackaudio, ladspaH
-, libglade, lv2, pkgconfig }:
+{ stdenv, fetchurl, cairo, expat, fftwSinglePrec, fluidsynth, glib
+, gtk, jackaudio, ladspaH , libglade, lv2, pkgconfig }:
 
 stdenv.mkDerivation rec {
   name = "calf-${version}";
-  version = "0.0.18.6";
+  version = "0.0.19-rc7";
 
   src = fetchurl {
     url = "mirror://sourceforge/calf/${name}.tar.gz";
-    sha256 = "03w6jjkrr6w8da6qzd0x4dlkg295c6jxby500x4cj07wpbpk6irh";
+    sha256 = "0515pzc7ishrq0j5hza83s0yp3x34r977h776lpky389whcyf45j";
   };
 
-  buildInputs =
-    [ cairo jackaudio gtk glib expat libglade ladspaH lv2 pkgconfig ];
+  buildInputs = [ 
+    cairo expat fftwSinglePrec fluidsynth glib gtk jackaudio ladspaH
+    libglade lv2 pkgconfig
+  ];
 
   meta = with stdenv.lib; {
     homepage = http://calf.sourceforge.net;
     description = "A set of high quality open source audio plugins for musicians";
     license = licenses.lgpl2;
     maintainers = [ maintainers.goibhniu ];
+    platforms = platforms.linux;
   };
 }
diff --git a/pkgs/applications/audio/csound/default.nix b/pkgs/applications/audio/csound/default.nix
new file mode 100644
index 000000000000..9e4ee01810cd
--- /dev/null
+++ b/pkgs/applications/audio/csound/default.nix
@@ -0,0 +1,34 @@
+{ stdenv, fetchurl, cmake, libsndfile, flex, bison
+, alsaLib ? null
+, pulseaudio ? null
+, tcltk ? null
+
+# maybe csound can be compiled with support for those, see configure output
+# , ladspa ? null
+# , fluidsynth ? null
+# , jack ? null
+# , gmm ? null
+# , wiiuse ? null
+}:
+
+stdenv.mkDerivation {
+  name = "csound5.18.02";
+
+  enableParallelBuilding = true;
+
+  src = fetchurl {
+    url = http://netcologne.dl.sourceforge.net/project/csound/csound5/csound5.18/Csound5.18.02.tar.gz;
+    sha256 = "4c461cf3bf60b83671224949dd33805379b7121bf2c0ad6af5e191e7f6f8adc8";
+  };
+
+  buildInputs = [ cmake libsndfile flex bison alsaLib pulseaudio tcltk ];
+
+  meta = {
+    description = "sound design, audio synthesis, and signal processing system, providing facilities for music composition and performance on all major operating systems and platforms";
+    homepage = http://www.csounds.com/;
+    license = stdenv.lib.licenses.gpl2;
+    maintainers = [stdenv.lib.maintainers.marcweber];
+    platforms = stdenv.lib.platforms.linux;
+  };
+}
+
diff --git a/pkgs/applications/audio/distrho/default.nix b/pkgs/applications/audio/distrho/default.nix
new file mode 100644
index 000000000000..7a1d24844b6a
--- /dev/null
+++ b/pkgs/applications/audio/distrho/default.nix
@@ -0,0 +1,67 @@
+{ stdenv, fetchgit, alsaLib, fftwSinglePrec, freetype, jackaudio
+, libxslt, lv2, pkgconfig, premake, xlibs }:
+
+let
+  rev = "7815b3545978e";
+in
+stdenv.mkDerivation rec {
+  name = "distrho-${rev}";
+
+  src = fetchgit {
+    url = "git://distrho.git.sf.net/gitroot/distrho/distrho";
+    inherit rev;
+    sha256 = "2e260f16ee67b1166c39e2d55c8dd5593902c8b3d8d86485545ef83139e1e844";
+  };
+
+  patchPhase = ''
+    sed -e "s#xsltproc#${libxslt}/bin/xsltproc#" -i Makefile
+    sed -e "s#PREFIX = /usr/local#PREFIX = $out#" -i Makefile
+    sed -e "s#/etc/HybridReverb2#$out/etc/Hybridreverb2#" \
+      -i ports/hybridreverb2/source/SystemConfig.cpp
+    sed -e "s#/usr#$out#" -i ports/hybridreverb2/data/HybridReverb2.conf
+  '';
+
+  buildInputs = [
+    alsaLib fftwSinglePrec freetype jackaudio pkgconfig premake
+    xlibs.libX11 xlibs.libXcomposite xlibs.libXcursor xlibs.libXext
+    xlibs.libXinerama xlibs.libXrender
+  ];
+
+  buildPhase = ''
+    sh ./scripts/premake-update.sh linux
+    make standalone
+    make lv2
+
+    # generate lv2 ttl
+    sh scripts/generate-ttl.sh
+  '';
+
+  installPhase = ''
+    mkdir -p $out/bin
+    cp bin/standalone/* $out/bin/
+    mkdir -p $out/lib/lv2
+    cp -a bin/lv2/* $out/lib/lv2/
+
+    # HybridReverb2 data
+    mkdir -p $out/etc/HybridReverb2
+    cp ports/hybridreverb2/data/HybridReverb2.conf $out/etc/HybridReverb2/
+    mkdir -p $out/share
+    cp -a ports/hybridreverb2/data/HybridReverb2 $out/share/
+  '';
+
+  meta = with stdenv.lib; {
+    homepage = http://distrho.sourceforge.net;
+    description = "A collection of cross-platform audio effects and plugins";
+    longDescription = ''
+      Includes:
+      3BandEQ bitmangler drowaudio-distortion drowaudio-flanger
+      drowaudio-tremolo eqinox HybridReverb2 juce_pitcher sDelay
+      TAL-Filter TAL-NoiseMaker TAL-Reverb-2 TAL-Vocoder-2 ThePilgrim
+      Wolpertinger argotlunar capsaicin drowaudio-distortionshaper
+      drowaudio-reverb drumsynth highlife JuceDemoPlugin PingPongPan
+      TAL-Dub-3 TAL-Filter-2 TAL-Reverb TAL-Reverb-3 TheFunction vex
+    '';
+    maintainers = [ maintainers.goibhniu ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/applications/audio/swh-lv2/default.nix b/pkgs/applications/audio/swh-lv2/default.nix
new file mode 100644
index 000000000000..9b18ab31abf4
--- /dev/null
+++ b/pkgs/applications/audio/swh-lv2/default.nix
@@ -0,0 +1,39 @@
+{ stdenv, fetchgit, fftwSinglePrec, libxslt, lv2, pkgconfig }:
+
+let
+  rev = "ec6b85e19e24ed";
+in
+stdenv.mkDerivation rec {
+  name = "swh-lv2-${rev}";
+
+  src = fetchgit {
+    url = "git://github.com/swh/lv2.git";
+    inherit rev;
+    sha256 = "d0d918ee642cd9649215737fcc008ce2bf55f4ea893a1897138b33775ea60d17";
+  };
+
+  patchPhase = ''
+    sed -e "s#xsltproc#${libxslt}/bin/xsltproc#" -i Makefile
+    sed -e "s#PREFIX = /usr/local#PREFIX = $out#" -i Makefile
+  '';
+
+  buildInputs = [ fftwSinglePrec lv2 pkgconfig ];
+
+  installPhase = "make install-system";
+
+  meta = with stdenv.lib; {
+    homepage = http://plugin.org.uk;
+    description = "LV2 version of Steve Harris' SWH plugins";
+    longDescription = ''
+      SWH plugins include:
+      amp, fast overdrive, overdrive (with colourisation), comb
+      filter, waveshaper, ringmod, divider, diode, decliper, pitch
+      scaler, 16 band equaliser, sinus wavewrapper, hermes filter,
+      chorus, flanger, decimater, oscillator, gverb, phasers, harmonic
+      generators, surround encoders and more.
+    '';
+    license = licenses.gpl3;
+    maintainers = [ maintainers.goibhniu ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/applications/editors/monodevelop/default.nix b/pkgs/applications/editors/monodevelop/default.nix
index e4dc00ff0a13..c823ecfdf83e 100644
--- a/pkgs/applications/editors/monodevelop/default.nix
+++ b/pkgs/applications/editors/monodevelop/default.nix
@@ -2,7 +2,7 @@
 , gtkmozembedsharp, monodoc
 , perl, perlXMLParser, pkgconfig
 , glib, gtk, GConf, gnome_vfs, libbonobo, libglade, libgnome
-, mozilla
+, mozilla, makeWrapper
 }:
 
 stdenv.mkDerivation {
@@ -14,8 +14,6 @@ stdenv.mkDerivation {
     md5 = "8c33df5629b0676b7ab552854c1de6fd";
   };
 
-  makeWrapper = ../../../build-support/make-wrapper/make-wrapper.sh;
-  
   patches = [./prefix.patch];
   
   buildInputs = [
@@ -24,5 +22,5 @@ stdenv.mkDerivation {
     gtkmozembedsharp monodoc
   ];
   
-  inherit mozilla monodoc gtksharp gtkmozembedsharp gtksourceviewsharp;
+  inherit mozilla monodoc gtksharp gtkmozembedsharp gtksourceviewsharp makeWrapper;
 }
diff --git a/pkgs/applications/editors/monodoc/default.nix b/pkgs/applications/editors/monodoc/default.nix
index db8b2e478846..8f6b6d6024c5 100644
--- a/pkgs/applications/editors/monodoc/default.nix
+++ b/pkgs/applications/editors/monodoc/default.nix
@@ -1,4 +1,4 @@
-{stdenv, fetchurl, mono, gtksharp, pkgconfig}:
+{stdenv, fetchurl, mono, gtksharp, pkgconfig, makeWrapper}:
 
 stdenv.mkDerivation {
   name = "monodoc-1.0.6";
@@ -9,9 +9,7 @@ stdenv.mkDerivation {
     md5 = "f2fc27e8e4717d90dc7efa2450625693";
   };
 
-  makeWrapper = ../../../build-support/make-wrapper/make-wrapper.sh;
-
   buildInputs = [mono gtksharp pkgconfig];
 
-  inherit gtksharp;
+  inherit gtksharp makeWrapper;
 }
diff --git a/pkgs/applications/editors/netbeans/default.nix b/pkgs/applications/editors/netbeans/default.nix
new file mode 100644
index 000000000000..f1fd9adbe86a
--- /dev/null
+++ b/pkgs/applications/editors/netbeans/default.nix
@@ -0,0 +1,41 @@
+{stdenv, fetchurl, jdk, unzip, which, makeWrapper, makeDesktopItem}:
+
+let
+  desktopItem = makeDesktopItem {
+    name = "netbeans";
+    exec = "netbeans";
+    comment = "Integrated Development Environment";
+    desktopName = "Netbeans IDE";
+    genericName = "Integrated Development Environment";
+    categories = "Application;Development;";
+  };
+in
+stdenv.mkDerivation {
+  name = "netbeans-7.2";
+  src = fetchurl {
+    url = http://download.netbeans.org/netbeans/7.2/final/zip/netbeans-7.2-201207171143-ml.zip;
+    sha256 = "18ya1w291hdnc35vb12yqnai82wmqm7351wn82fax12kzha5fmci";
+  };
+  buildCommand = ''
+    # Unpack and copy the stuff
+    unzip $src
+    mkdir -p $out
+    cp -a netbeans $out
+    
+    # Create a wrapper capable of starting it
+    mkdir -p $out/bin
+    makeWrapper $out/netbeans/bin/netbeans $out/bin/netbeans \
+      --prefix PATH : ${jdk}/bin:${which}/bin
+      
+    # Create desktop item, so we can pick it from the KDE/GNOME menu
+    mkdir -p $out/share/applications
+    cp ${desktopItem}/share/applications/* $out/share/applications
+  '';
+  
+  buildInputs = [ unzip makeWrapper ];
+  
+  meta = {
+    description = "An integrated development environment for Java, C, C++ and PHP";
+    maintainers = [ stdenv.lib.maintainers.sander ];
+  };
+}
diff --git a/pkgs/applications/graphics/darktable/default.nix b/pkgs/applications/graphics/darktable/default.nix
index 4d3b1a12b62b..15d7042e7dd8 100644
--- a/pkgs/applications/graphics/darktable/default.nix
+++ b/pkgs/applications/graphics/darktable/default.nix
@@ -3,17 +3,17 @@
 , libgnome_keyring, gphoto2, gtk, ilmbase, intltool, lcms, lcms2
 , lensfun, libXau, libXdmcp, libexif, libglade, libgphoto2, libjpeg
 , libpng, libpthreadstubs, libraw1394, librsvg, libtiff, libxcb
-, openexr, pixman, pkgconfig, sqlite }:
+, openexr, pixman, pkgconfig, sqlite, bash }:
 
 assert stdenv ? glibc;
 
 stdenv.mkDerivation rec {
-  version = "1.0";
+  version = "1.0.5";
   name = "darktable-${version}";
 
   src = fetchurl {
     url = "mirror://sourceforge/darktable/darktable-${version}.tar.gz";
-    sha256 = "0wjv2x62kf25db61ivbn8y8xr9hr8hdlcjq6l1qxfqn2bn8a3qkm";
+    sha256 = "0c18530446d2f2459fe533a1ef6fc2711300efe7466f36c23168ec2230fb5fbd";
   };
 
   buildInputs =
@@ -30,6 +30,8 @@ stdenv.mkDerivation rec {
     export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -I${atk}/include/atk-1.0"
     export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -I${ilmbase}/include/OpenEXR"
     export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -I${openexr}/include/OpenEXR"
+
+    substituteInPlace tools/create_preferences.sh.in --replace '#!/usr/bin/env bash' '#!${bash}/bin/bash'
   '';
 
   cmakeFlags = [
diff --git a/pkgs/applications/graphics/dia/default.nix b/pkgs/applications/graphics/dia/default.nix
index f0c666b14ea0..7662d64e9de7 100644
--- a/pkgs/applications/graphics/dia/default.nix
+++ b/pkgs/applications/graphics/dia/default.nix
@@ -20,6 +20,8 @@ stdenv.mkDerivation rec {
 
   configureFlags = stdenv.lib.optionalString withGNOME "--enable-gnome";
 
+  patches = [ ./glib-top-level-header.patch ];
+
   meta = {
     description = "Gnome Diagram drawing software";
     homepage = http://live.gnome.org/Dia;
diff --git a/pkgs/applications/graphics/dia/glib-top-level-header.patch b/pkgs/applications/graphics/dia/glib-top-level-header.patch
new file mode 100644
index 000000000000..80460ae9d722
--- /dev/null
+++ b/pkgs/applications/graphics/dia/glib-top-level-header.patch
@@ -0,0 +1,471 @@
+diff -Naur dia-0.97.2-orig/app/app_procs.c dia-0.97.2/app/app_procs.c
+--- dia-0.97.2-orig/app/app_procs.c	2011-03-20 07:18:13.000000000 -0400
++++ dia-0.97.2/app/app_procs.c	2012-07-15 10:49:08.192726306 -0400
+@@ -50,7 +50,7 @@
+ #include <libxml/parser.h>
+ #include <libxml/xmlerror.h>
+ 
+-#include <glib/gstdio.h>
++#include <glib.h>
+ 
+ #include "intl.h"
+ #include "app_procs.h"
+diff -Naur dia-0.97.2-orig/app/dia-win-remote.c dia-0.97.2/app/dia-win-remote.c
+--- dia-0.97.2-orig/app/dia-win-remote.c	2010-08-03 11:35:35.000000000 -0400
++++ dia-0.97.2/app/dia-win-remote.c	2012-07-15 10:49:08.159726316 -0400
+@@ -35,7 +35,7 @@
+ #include <shellapi.h>
+ #include <Shlwapi.h>
+ #include <glib.h>
+-#include <glib/gprintf.h>
++#include <glib.h>
+ 
+ /**
+  * PROTOTYPES:
+diff -Naur dia-0.97.2-orig/app/filedlg.c dia-0.97.2/app/filedlg.c
+--- dia-0.97.2-orig/app/filedlg.c	2009-11-07 12:13:53.000000000 -0500
++++ dia-0.97.2/app/filedlg.c	2012-07-15 10:49:08.227726294 -0400
+@@ -28,7 +28,7 @@
+ #include <unistd.h>
+ #endif
+ #include <stdio.h>
+-#include <glib/gstdio.h>
++#include <glib.h>
+ 
+ #undef GTK_DISABLE_DEPRECATED /* gtk_file_chooser_dialog_new_with_backend */
+ #include <gtk/gtk.h>
+diff -Naur dia-0.97.2-orig/app/load_save.c dia-0.97.2/app/load_save.c
+--- dia-0.97.2-orig/app/load_save.c	2011-09-25 07:55:11.000000000 -0400
++++ dia-0.97.2/app/load_save.c	2012-07-15 10:49:08.203726303 -0400
+@@ -30,7 +30,7 @@
+ #include <string.h>
+ 
+ #include <glib.h>
+-#include <glib/gstdio.h> /* g_access() and friends */
++#include <glib.h> /* g_access() and friends */
+ #include <errno.h>
+ 
+ #ifndef W_OK
+diff -Naur dia-0.97.2-orig/app/sheets_dialog_callbacks.c dia-0.97.2/app/sheets_dialog_callbacks.c
+--- dia-0.97.2-orig/app/sheets_dialog_callbacks.c	2009-11-07 12:13:53.000000000 -0500
++++ dia-0.97.2/app/sheets_dialog_callbacks.c	2012-07-15 10:49:08.201726302 -0400
+@@ -44,7 +44,7 @@
+ #endif
+ #endif
+ 
+-#include <glib/gstdio.h>
++#include <glib.h>
+ #include <gmodule.h>
+ 
+ #undef GTK_DISABLE_DEPRECATED /* GtkOptionMenu */
+diff -Naur dia-0.97.2-orig/ChangeLog.pre-git dia-0.97.2/ChangeLog.pre-git
+--- dia-0.97.2-orig/ChangeLog.pre-git	2009-11-07 09:28:34.000000000 -0500
++++ dia-0.97.2/ChangeLog.pre-git	2012-07-15 10:49:08.384726247 -0400
+@@ -4137,7 +4137,7 @@
+ 	  plug-ins/vdx/vdx-export.c plug-ins/vdx/vdx-import.c 
+ 	  plug-ins/wmf/wmf.cpp plug-ins/wpg/wpg.c 
+ 	  plug-ins/xfig/xfig-export.c plug-ins/xfig/xfig-import.c
+-	  plug-ins/xslt/xslt.c : use <glib/gstdio.h> to match GLib's filename
++	  plug-ins/xslt/xslt.c : use <glib.h> to match GLib's filename
+ 	encoding to the io functions used, that is: g_open, g_fopen, g_stat, 
+ 	g_unlink, g_mkdir, g_rename (, g_access, g_lstat, g_remove, g_freopen, 
+ 	g_chdir, g_rmdir). Also replace gzopen() with gzdopen(g_open(), ...)
+@@ -5995,7 +5995,7 @@
+ 	Also special case strings starting with \tex - i.e. dont escape them -
+ 	to keep the use-case of direct tex input.
+ 	
+-	* lib/debug.c : #include <glib/gprintf.h> not just <gprintf.h>
++	* lib/debug.c : #include <glib.h>
+ 
+ 
+ 2006-01-14  Hans Breuer  <hans@breuer.org>
+@@ -6207,7 +6207,7 @@
+ 	* lib/makefile.msc : build debug.obj
+ 
+ 	* plug-ins/makefile.msc : building pgf in the right alphabetical order
+-	* plug-ins/pgf/render_pgf.c : include <glib/gprintf.h>
++	* plug-ins/pgf/render_pgf.c : include <glib.h>
+ 	
+ 2005-12-08  Lars Clausen  <lars@raeder.dk>
+ 
+diff -Naur dia-0.97.2-orig/lib/debug.c dia-0.97.2/lib/debug.c
+--- dia-0.97.2-orig/lib/debug.c	2009-11-07 09:28:34.000000000 -0500
++++ dia-0.97.2/lib/debug.c	2012-07-15 10:49:06.813726730 -0400
+@@ -21,7 +21,7 @@
+ #include <config.h>
+ 
+ #include <stdio.h>
+-#include <glib/gprintf.h>
++#include <glib.h>
+ #include <stdarg.h>
+ 
+ #include "debug.h"
+diff -Naur dia-0.97.2-orig/lib/dia_dirs.c dia-0.97.2/lib/dia_dirs.c
+--- dia-0.97.2-orig/lib/dia_dirs.c	2009-11-07 12:13:53.000000000 -0500
++++ dia-0.97.2/lib/dia_dirs.c	2012-07-15 10:49:06.740726750 -0400
+@@ -30,7 +30,7 @@
+ #include <sys/stat.h>
+ #include <sys/types.h>
+ #endif
+-#include <glib/gstdio.h>
++#include <glib.h>
+ 
+ /** Get the name of a subdirectory of our data directory.
+  *  This function does not create the subdirectory, just make the correct name.
+diff -Naur dia-0.97.2-orig/lib/dia_xml.c dia-0.97.2/lib/dia_xml.c
+--- dia-0.97.2-orig/lib/dia_xml.c	2009-11-07 09:28:34.000000000 -0500
++++ dia-0.97.2/lib/dia_xml.c	2012-07-15 10:49:06.770726743 -0400
+@@ -25,7 +25,7 @@
+ #include <fcntl.h>
+ 
+ #include <glib.h>
+-#include <glib/gstdio.h>
++#include <glib.h>
+ 
+ #include <libxml/parser.h>
+ #include <libxml/parserInternals.h>
+diff -Naur dia-0.97.2-orig/objects/custom/shape_typeinfo.c dia-0.97.2/objects/custom/shape_typeinfo.c
+--- dia-0.97.2-orig/objects/custom/shape_typeinfo.c	2009-11-07 09:28:34.000000000 -0500
++++ dia-0.97.2/objects/custom/shape_typeinfo.c	2012-07-15 10:49:06.639726783 -0400
+@@ -27,8 +27,8 @@
+ #include "custom_util.h"
+ #include <string.h>
+ #include <stdarg.h>
+-#include <glib/gstrfuncs.h>
+-#include <glib/gstdio.h>
++#include <glib.h>
++#include <glib.h>
+ #include <libxml/parser.h>
+ 
+ /*
+diff -Naur dia-0.97.2-orig/objects/SISSI/sissi.c dia-0.97.2/objects/SISSI/sissi.c
+--- dia-0.97.2-orig/objects/SISSI/sissi.c	2009-11-07 09:28:34.000000000 -0500
++++ dia-0.97.2/objects/SISSI/sissi.c	2012-07-15 10:49:06.570726804 -0400
+@@ -42,7 +42,7 @@
+ #include "dia_xml_libxml.h"
+ 
+ #include <string.h>
+-#include <glib/gprintf.h>
++#include <glib.h>
+ 
+ #define DEFAULT_WIDTH  1.0
+ #define DEFAULT_HEIGHT 1.0
+diff -Naur dia-0.97.2-orig/objects/standard/image.c dia-0.97.2/objects/standard/image.c
+--- dia-0.97.2-orig/objects/standard/image.c	2009-11-07 12:13:53.000000000 -0500
++++ dia-0.97.2/objects/standard/image.c	2012-07-15 10:49:06.683726770 -0400
+@@ -25,7 +25,7 @@
+ #ifdef HAVE_UNIST_H
+ #include <unistd.h>
+ #endif
+-#include <glib/gstdio.h>
++#include <glib.h>
+ 
+ #include "intl.h"
+ #include "message.h"
+diff -Naur dia-0.97.2-orig/plug-ins/cairo/diacairo.c dia-0.97.2/plug-ins/cairo/diacairo.c
+--- dia-0.97.2-orig/plug-ins/cairo/diacairo.c	2009-11-07 12:13:53.000000000 -0500
++++ dia-0.97.2/plug-ins/cairo/diacairo.c	2012-07-15 10:49:06.433726846 -0400
+@@ -28,7 +28,7 @@
+ #include <errno.h>
+ #define G_LOG_DOMAIN "DiaCairo"
+ #include <glib.h>
+-#include <glib/gstdio.h>
++#include <glib.h>
+ 
+ /*
+  * To me the following looks rather suspicious. Why do we need to compile
+diff -Naur dia-0.97.2-orig/plug-ins/cairo/diacairo-renderer.c dia-0.97.2/plug-ins/cairo/diacairo-renderer.c
+--- dia-0.97.2-orig/plug-ins/cairo/diacairo-renderer.c	2011-01-07 06:54:21.000000000 -0500
++++ dia-0.97.2/plug-ins/cairo/diacairo-renderer.c	2012-07-15 10:49:06.435726846 -0400
+@@ -28,7 +28,7 @@
+ #include <errno.h>
+ #define G_LOG_DOMAIN "DiaCairo"
+ #include <glib.h>
+-#include <glib/gstdio.h>
++#include <glib.h>
+ 
+ #ifdef HAVE_PANGOCAIRO_H
+ #include <pango/pangocairo.h>
+diff -Naur dia-0.97.2-orig/plug-ins/cgm/cgm.c dia-0.97.2/plug-ins/cgm/cgm.c
+--- dia-0.97.2-orig/plug-ins/cgm/cgm.c	2009-12-27 11:22:38.000000000 -0500
++++ dia-0.97.2/plug-ins/cgm/cgm.c	2012-07-15 10:49:06.425726846 -0400
+@@ -31,7 +31,7 @@
+ #include <glib.h>
+ #include <errno.h>
+ 
+-#include <glib/gstdio.h>
++#include <glib.h>
+ 
+ #include "intl.h"
+ #include "message.h"
+diff -Naur dia-0.97.2-orig/plug-ins/drs/dia-render-script.c dia-0.97.2/plug-ins/drs/dia-render-script.c
+--- dia-0.97.2-orig/plug-ins/drs/dia-render-script.c	2009-11-07 12:13:53.000000000 -0500
++++ dia-0.97.2/plug-ins/drs/dia-render-script.c	2012-07-15 10:49:06.427726848 -0400
+@@ -54,7 +54,7 @@
+ 
+ #define G_LOG_DOMAIN "DiaRenderScript"
+ #include <glib.h>
+-#include <glib/gstdio.h>
++#include <glib.h>
+ 
+ #include "intl.h"
+ #include "filter.h"
+diff -Naur dia-0.97.2-orig/plug-ins/dxf/dxf-export.c dia-0.97.2/plug-ins/dxf/dxf-export.c
+--- dia-0.97.2-orig/plug-ins/dxf/dxf-export.c	2009-11-07 09:28:34.000000000 -0500
++++ dia-0.97.2/plug-ins/dxf/dxf-export.c	2012-07-15 10:49:06.421726850 -0400
+@@ -29,7 +29,7 @@
+ #include <math.h>
+ #include <glib.h>
+ #include <errno.h>
+-#include <glib/gstdio.h>
++#include <glib.h>
+ 
+ #include "autocad_pal.h"
+ 
+diff -Naur dia-0.97.2-orig/plug-ins/dxf/dxf-import.c dia-0.97.2/plug-ins/dxf/dxf-import.c
+--- dia-0.97.2-orig/plug-ins/dxf/dxf-import.c	2009-11-07 09:28:34.000000000 -0500
++++ dia-0.97.2/plug-ins/dxf/dxf-import.c	2012-07-15 10:49:06.419726851 -0400
+@@ -30,7 +30,7 @@
+ #include <string.h>
+ #include <math.h>
+ #include <glib.h>
+-#include <glib/gstdio.h>
++#include <glib.h>
+ 
+ #include "intl.h"
+ #include "message.h"
+diff -Naur dia-0.97.2-orig/plug-ins/hpgl/hpgl.c dia-0.97.2/plug-ins/hpgl/hpgl.c
+--- dia-0.97.2-orig/plug-ins/hpgl/hpgl.c	2009-11-07 09:28:34.000000000 -0500
++++ dia-0.97.2/plug-ins/hpgl/hpgl.c	2012-07-15 10:49:06.487726830 -0400
+@@ -37,7 +37,7 @@
+ #include <errno.h>
+ 
+ #include <glib.h>
+-#include <glib/gstdio.h>
++#include <glib.h>
+ 
+ #include "intl.h"
+ #include "message.h"
+diff -Naur dia-0.97.2-orig/plug-ins/libart/export_png.c dia-0.97.2/plug-ins/libart/export_png.c
+--- dia-0.97.2-orig/plug-ins/libart/export_png.c	2011-07-03 06:56:08.000000000 -0400
++++ dia-0.97.2/plug-ins/libart/export_png.c	2012-07-15 10:49:06.415726849 -0400
+@@ -29,7 +29,7 @@
+ #include <errno.h>
+ #include <stdlib.h>
+ 
+-#include <glib/gstdio.h>
++#include <glib.h>
+ #include <gtk/gtk.h>
+ 
+ #include "intl.h"
+diff -Naur dia-0.97.2-orig/plug-ins/metapost/render_metapost.c dia-0.97.2/plug-ins/metapost/render_metapost.c
+--- dia-0.97.2-orig/plug-ins/metapost/render_metapost.c	2009-11-07 09:28:34.000000000 -0500
++++ dia-0.97.2/plug-ins/metapost/render_metapost.c	2012-07-15 10:49:06.396726857 -0400
+@@ -43,7 +43,7 @@
+ #endif
+ #include <errno.h>
+ 
+-#include <glib/gstdio.h>
++#include <glib.h>
+ 
+ #include "intl.h"
+ #include "render_metapost.h"
+diff -Naur dia-0.97.2-orig/plug-ins/pgf/render_pgf.c dia-0.97.2/plug-ins/pgf/render_pgf.c
+--- dia-0.97.2-orig/plug-ins/pgf/render_pgf.c	2011-01-07 07:11:34.000000000 -0500
++++ dia-0.97.2/plug-ins/pgf/render_pgf.c	2012-07-15 10:49:06.445726842 -0400
+@@ -61,8 +61,8 @@
+ #endif
+ #include <errno.h>
+ 
+-#include <glib/gprintf.h>
+-#include <glib/gstdio.h>
++#include <glib.h>
++#include <glib.h>
+ 
+ #include "intl.h"
+ #include "render_pgf.h"
+diff -Naur dia-0.97.2-orig/plug-ins/postscript/paginate_psprint.c dia-0.97.2/plug-ins/postscript/paginate_psprint.c
+--- dia-0.97.2-orig/plug-ins/postscript/paginate_psprint.c	2009-11-07 09:28:34.000000000 -0500
++++ dia-0.97.2/plug-ins/postscript/paginate_psprint.c	2012-07-15 10:49:06.451726838 -0400
+@@ -31,7 +31,7 @@
+ #include <errno.h>
+ #include <sys/stat.h>
+ 
+-#include <glib/gstdio.h>
++#include <glib.h>
+ 
+ #include "intl.h"
+ #include "message.h"
+diff -Naur dia-0.97.2-orig/plug-ins/postscript/render_eps.c dia-0.97.2/plug-ins/postscript/render_eps.c
+--- dia-0.97.2-orig/plug-ins/postscript/render_eps.c	2009-11-07 09:28:34.000000000 -0500
++++ dia-0.97.2/plug-ins/postscript/render_eps.c	2012-07-15 10:49:06.451726838 -0400
+@@ -55,7 +55,7 @@
+ #include <locale.h>
+ #include <errno.h>
+ 
+-#include <glib/gstdio.h>
++#include <glib.h>
+ 
+ #include "intl.h"
+ #include "render_eps.h"
+diff -Naur dia-0.97.2-orig/plug-ins/pstricks/render_pstricks.c dia-0.97.2/plug-ins/pstricks/render_pstricks.c
+--- dia-0.97.2-orig/plug-ins/pstricks/render_pstricks.c	2011-01-07 07:11:34.000000000 -0500
++++ dia-0.97.2/plug-ins/pstricks/render_pstricks.c	2012-07-15 10:49:06.410726853 -0400
+@@ -50,7 +50,7 @@
+ #endif
+ #include <errno.h>
+ 
+-#include <glib/gstdio.h>
++#include <glib.h>
+ 
+ #include "intl.h"
+ #include "render_pstricks.h"
+diff -Naur dia-0.97.2-orig/plug-ins/python/pydia-render.c dia-0.97.2/plug-ins/python/pydia-render.c
+--- dia-0.97.2-orig/plug-ins/python/pydia-render.c	2009-11-07 09:28:34.000000000 -0500
++++ dia-0.97.2/plug-ins/python/pydia-render.c	2012-07-15 10:49:06.503726822 -0400
+@@ -21,7 +21,7 @@
+ 
+ #include <Python.h>
+ #include <glib.h>
+-#include <glib/gstdio.h>
++#include <glib.h>
+ 
+ #include <locale.h>
+ 
+diff -Naur dia-0.97.2-orig/plug-ins/shape/shape-export.c dia-0.97.2/plug-ins/shape/shape-export.c
+--- dia-0.97.2-orig/plug-ins/shape/shape-export.c	2009-11-08 06:14:56.000000000 -0500
++++ dia-0.97.2/plug-ins/shape/shape-export.c	2012-07-15 10:49:06.489726827 -0400
+@@ -40,7 +40,7 @@
+ #include <unistd.h>
+ #endif
+ 
+-#include <glib/gstdio.h>
++#include <glib.h>
+ 
+ /* the dots per centimetre to render this diagram at */
+ /* this matches the setting `100%' setting in dia. */
+diff -Naur dia-0.97.2-orig/plug-ins/svg/render_svg.c dia-0.97.2/plug-ins/svg/render_svg.c
+--- dia-0.97.2-orig/plug-ins/svg/render_svg.c	2011-12-17 11:30:38.000000000 -0500
++++ dia-0.97.2/plug-ins/svg/render_svg.c	2012-07-15 10:49:06.392726859 -0400
+@@ -30,7 +30,7 @@
+ #endif
+ 
+ #include <glib.h>
+-#include <glib/gstdio.h>
++#include <glib.h>
+ 
+ #include <libxml/entities.h>
+ #include <libxml/tree.h>
+diff -Naur dia-0.97.2-orig/plug-ins/vdx/vdx-export.c dia-0.97.2/plug-ins/vdx/vdx-export.c
+--- dia-0.97.2-orig/plug-ins/vdx/vdx-export.c	2009-12-27 11:22:38.000000000 -0500
++++ dia-0.97.2/plug-ins/vdx/vdx-export.c	2012-07-15 10:55:17.066579728 -0400
+@@ -32,11 +32,12 @@
+ 
+ #include <string.h>
+ #include <math.h>
++#include <sys/stat.h>
+ #include <glib.h>
+ #include <stdlib.h>
+ #include <errno.h>
+ #include <locale.h>
+-#include <glib/gstdio.h>
++#include <glib.h>
+ 
+ #include "intl.h"
+ #include "message.h"
+diff -Naur dia-0.97.2-orig/plug-ins/vdx/vdx-import.c dia-0.97.2/plug-ins/vdx/vdx-import.c
+--- dia-0.97.2-orig/plug-ins/vdx/vdx-import.c	2009-12-27 11:22:38.000000000 -0500
++++ dia-0.97.2/plug-ins/vdx/vdx-import.c	2012-07-15 10:49:06.466726836 -0400
+@@ -28,7 +28,7 @@
+ #include <string.h>
+ #include <math.h>
+ #include <glib.h>
+-#include <glib/gstdio.h>
++#include <glib.h>
+ #include <stdlib.h>
+ #include <ctype.h>
+ #include <libxml/tree.h>
+diff -Naur dia-0.97.2-orig/plug-ins/wmf/wmf.cpp dia-0.97.2/plug-ins/wmf/wmf.cpp
+--- dia-0.97.2-orig/plug-ins/wmf/wmf.cpp	2011-03-13 09:07:48.000000000 -0400
++++ dia-0.97.2/plug-ins/wmf/wmf.cpp	2012-07-15 10:49:06.482726831 -0400
+@@ -25,7 +25,7 @@
+ #include <string.h>
+ #include <math.h>
+ #include <glib.h>
+-#include <glib/gstdio.h>
++#include <glib.h>
+ 
+ #include "intl.h"
+ #include "message.h"
+diff -Naur dia-0.97.2-orig/plug-ins/wpg/wpg.c dia-0.97.2/plug-ins/wpg/wpg.c
+--- dia-0.97.2-orig/plug-ins/wpg/wpg.c	2009-11-07 09:28:34.000000000 -0500
++++ dia-0.97.2/plug-ins/wpg/wpg.c	2012-07-15 10:49:06.406726855 -0400
+@@ -40,7 +40,7 @@
+ #include <errno.h>
+ 
+ #include <glib.h>
+-#include <glib/gstdio.h>
++#include <glib.h>
+ 
+ #include "intl.h"
+ #include "message.h"
+diff -Naur dia-0.97.2-orig/plug-ins/xfig/xfig-export.c dia-0.97.2/plug-ins/xfig/xfig-export.c
+--- dia-0.97.2-orig/plug-ins/xfig/xfig-export.c	2011-12-17 11:30:38.000000000 -0500
++++ dia-0.97.2/plug-ins/xfig/xfig-export.c	2012-07-15 10:49:06.400726856 -0400
+@@ -16,7 +16,7 @@
+ #include <locale.h>
+ 
+ #include <glib.h>
+-#include <glib/gstdio.h>
++#include <glib.h>
+ 
+ #include "intl.h"
+ #include "message.h"
+diff -Naur dia-0.97.2-orig/plug-ins/xfig/xfig-import.c dia-0.97.2/plug-ins/xfig/xfig-import.c
+--- dia-0.97.2-orig/plug-ins/xfig/xfig-import.c	2009-11-07 12:13:53.000000000 -0500
++++ dia-0.97.2/plug-ins/xfig/xfig-import.c	2012-07-15 10:49:06.402726853 -0400
+@@ -40,7 +40,7 @@
+ #include <locale.h>
+ 
+ #include <glib.h>
+-#include <glib/gstdio.h>
++#include <glib.h>
+ 
+ #include "intl.h"
+ #include "message.h"
+diff -Naur dia-0.97.2-orig/plug-ins/xslt/xslt.c dia-0.97.2/plug-ins/xslt/xslt.c
+--- dia-0.97.2-orig/plug-ins/xslt/xslt.c	2009-11-07 12:13:53.000000000 -0500
++++ dia-0.97.2/plug-ins/xslt/xslt.c	2012-07-15 10:49:06.440726844 -0400
+@@ -27,7 +27,7 @@
+ #include <string.h>
+ #include <errno.h>
+ 
+-#include <glib/gstdio.h>
++#include <glib.h>
+ 
+ #include "filter.h"
+ #include "intl.h"
+diff -Naur dia-0.97.2-orig/tests/test-boundingbox.c dia-0.97.2/tests/test-boundingbox.c
+--- dia-0.97.2-orig/tests/test-boundingbox.c	2009-11-07 09:28:35.000000000 -0500
++++ dia-0.97.2/tests/test-boundingbox.c	2012-07-15 10:49:06.986726677 -0400
+@@ -29,7 +29,7 @@
+ #include <glib-object.h>
+ 
+ #if GLIB_CHECK_VERSION(2,16,0)
+-#include <glib/gtestutils.h>
++#include <glib.h>
+ #endif
+ #include "dialib.h"
+ 
+diff -Naur dia-0.97.2-orig/tests/test-objects.c dia-0.97.2/tests/test-objects.c
+--- dia-0.97.2-orig/tests/test-objects.c	2009-11-07 09:28:35.000000000 -0500
++++ dia-0.97.2/tests/test-objects.c	2012-07-15 10:49:06.985726677 -0400
+@@ -29,7 +29,7 @@
+ #include <glib-object.h>
+ 
+ #if GLIB_CHECK_VERSION(2,16,0)
+-#include <glib/gtestutils.h>
++#include <glib.h>
+ #endif
+ 
+ #include "object.h"
diff --git a/pkgs/applications/graphics/f-spot/default.nix b/pkgs/applications/graphics/f-spot/default.nix
index 17a3cd22a5fa..856795ea3562 100644
--- a/pkgs/applications/graphics/f-spot/default.nix
+++ b/pkgs/applications/graphics/f-spot/default.nix
@@ -1,14 +1,16 @@
 { stdenv, fetchurl, perl, perlXMLParser, pkgconfig, mono, libexif
 , libgnome, libgnomeui, gtksharp, libjpeg, sqlite, lcms, libgphoto2
 , monoDLLFixer
+, makeWrapper
 }:
 
 stdenv.mkDerivation {
   name = "f-spot-0.0.10";
 
   builder = ./builder.sh;
-  makeWrapper = ../../../build-support/make-wrapper/make-wrapper.sh;
   
+  inherit makeWrapper;
+
   src = fetchurl {
     url = http://nixos.org/tarballs/f-spot-0.0.10.tar.bz2;
     md5 = "19cc6e067ccc261b0502ff6189b79832";
diff --git a/pkgs/applications/graphics/inkscape/default.nix b/pkgs/applications/graphics/inkscape/default.nix
index 9ef5382eaf96..150bb071cb16 100644
--- a/pkgs/applications/graphics/inkscape/default.nix
+++ b/pkgs/applications/graphics/inkscape/default.nix
@@ -4,11 +4,11 @@
 , gsl, python, pyxml, lxml, poppler, imagemagick, libwpg }:
 
 stdenv.mkDerivation rec {
-  name = "inkscape-0.48.2";
+  name = "inkscape-0.48.3.1";
 
   src = fetchurl {
     url = "mirror://sourceforge/inkscape/${name}.tar.bz2";
-    sha256 = "10v7ixdz7f8vgk2wv0m81zli9p0f446cm1f4aqlvni1ndsx44fi2";
+    sha256 = "126vfsafkfj6z65i5vp6g5dg9hvp3dd1zppjhms78257ns2zafq7";
   };
 
   patches = [ ./configure-python-libs.patch ./libpng-1.5.patch ];
diff --git a/pkgs/applications/graphics/pqiv/default.nix b/pkgs/applications/graphics/pqiv/default.nix
index e13ea97cab86..3fd9d47374a3 100644
--- a/pkgs/applications/graphics/pqiv/default.nix
+++ b/pkgs/applications/graphics/pqiv/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl, getopt, which, pkgconfig, gtk } :
 
 stdenv.mkDerivation (rec {
-  name = "pqiv-0.8";
+  name = "pqiv-0.12";
 
   src = fetchurl {
-    url = "http://www.pberndt.com/raw/Programme/Linux/pqiv/_download/${name}.tbz";
-    sha256 = "365332bab4b13ca56da6935e7155af20658e67d323808942dce23e880466f66d";
+    url = "https://github.com/downloads/phillipberndt/pqiv/${name}.tbz";
+    sha256 = "646c69f2f4e7289913f6b8e8ae984befba9debf0d2b4cc8af9955504a1fccf1e";
   };
 
   buildInputs = [ getopt which pkgconfig gtk ];
diff --git a/pkgs/applications/misc/eaglemode/default.nix b/pkgs/applications/misc/eaglemode/default.nix
index 519db53ea18f..b9c8acb0d070 100644
--- a/pkgs/applications/misc/eaglemode/default.nix
+++ b/pkgs/applications/misc/eaglemode/default.nix
@@ -1,20 +1,20 @@
-{ stdenv, fetchurl, perl, libX11, xineLib, libjpeg, libpng, libtiff, pkgconfig,
+{ stdenv, fetchurl, perl, libX11, libjpeg, libpng, libtiff, pkgconfig,
 librsvg, glib, gtk, libXext, libXxf86vm, poppler }:
 
 stdenv.mkDerivation {
   name = "eaglemode-0.84.0";
- 
+
   src = fetchurl {
     url = mirror://sourceforge/eaglemode/eaglemode-0.84.0.tar.bz2;
     sha256 = "0n20b419j0l7h7jr4s3f3n09ka0ysg9nqs8mcwsrx24rcq7nv0cs";
   };
- 
-  buildInputs = [ perl libX11 xineLib libjpeg libpng libtiff pkgconfig 
+
+  buildInputs = [ perl libX11 libjpeg libpng libtiff pkgconfig
     librsvg glib gtk libXxf86vm libXext poppler ];
- 
+
   # The program tries to dlopen both Xxf86vm and Xext, so we use the
   # trick on NIX_LDFLAGS and dontPatchELF to make it find them.
-  # I use 'yes y' to skip a build error linking with xineLib, 
+  # I use 'yes y' to skip a build error linking with xineLib,
   # because xine stopped exporting "_x_vo_new_port"
   #  http://sourceforge.net/projects/eaglemode/forums/forum/808824/topic/5115261
   buildPhase = ''
@@ -30,7 +30,7 @@ stdenv.mkDerivation {
     # Run 'eaglemode.sh', not 'eaglemode'.
     ln -s $out/eaglemode.sh $out/bin/eaglemode.sh
   '';
- 
+
   meta = {
     homepage = "http://eaglemode.sourceforge.net";
     description = "Zoomable User Interface";
diff --git a/pkgs/applications/misc/epdfview/default.nix b/pkgs/applications/misc/epdfview/default.nix
index 3ce652c1a332..6941e8df626a 100644
--- a/pkgs/applications/misc/epdfview/default.nix
+++ b/pkgs/applications/misc/epdfview/default.nix
@@ -6,6 +6,7 @@ stdenv.mkDerivation rec {
     sha256 = "1w7qybh8ssl4dffi5qfajq8mndw7ipsd92vkim03nywxgjp4i1ll";
   };
   buildInputs = [ pkgconfig gtk poppler ];
+  patches = [ ./glib-top-level-header.patch ];
   meta = {
     homepage = http://trac.emma-soft.com/epdfview/;
     description = "A lightweight PDF document viewer using Poppler and GTK+";
diff --git a/pkgs/applications/misc/epdfview/glib-top-level-header.patch b/pkgs/applications/misc/epdfview/glib-top-level-header.patch
new file mode 100644
index 000000000000..a321ad3a2b67
--- /dev/null
+++ b/pkgs/applications/misc/epdfview/glib-top-level-header.patch
@@ -0,0 +1,12 @@
+diff -Naur epdfview-0.1.8-orig/src/gtk/StockIcons.h epdfview-0.1.8/src/gtk/StockIcons.h
+--- epdfview-0.1.8-orig/src/gtk/StockIcons.h	2011-05-28 06:24:57.000000000 -0400
++++ epdfview-0.1.8/src/gtk/StockIcons.h	2012-07-15 11:02:43.946339253 -0400
+@@ -18,7 +18,7 @@
+ #if !defined (__STOCK_ICONS_H__)
+ #define __STOCK_ICONS_H__
+ 
+-#include <glib/gmacros.h>
++#include <glib.h>
+ 
+ G_BEGIN_DECLS
+ 
diff --git a/pkgs/applications/misc/mupdf/default.nix b/pkgs/applications/misc/mupdf/default.nix
index 20ded9486f77..eccd11f6041a 100644
--- a/pkgs/applications/misc/mupdf/default.nix
+++ b/pkgs/applications/misc/mupdf/default.nix
@@ -1,17 +1,18 @@
 { stdenv, fetchurl, pkgconfig, zlib, freetype, libjpeg, jbig2dec, openjpeg
 , libX11, libXext }:
 stdenv.mkDerivation rec {
-  name = "mupdf-0.7";
+  name = "mupdf-1.1";
 
   src = fetchurl {
-    url = "http://mupdf.com/download/archive/${name}.tar.gz";
-    sha256 = "e7f6307fa472575d27fe893e787ddb3fc927f03ba4ae23105f917189e81960a6";
+    url = "http://mupdf.com/download/archive/${name}-source.tar.gz";
+    sha256 = "e54666bbe1d9f0a5464349bfbeffcf676c4a0fcad3efb89eba1f20d4ac991f34";
   };
 
   buildInputs = [ pkgconfig zlib freetype libjpeg jbig2dec openjpeg libX11 libXext ];
 
   preBuild = ''
     export makeFlags="prefix=$out"
+    export NIX_CFLAGS_COMPILE=" $NIX_CFLAGS_COMPILE -I$(echo ${openjpeg}/include/openjpeg-*) "
   '';
 
   meta = {
diff --git a/pkgs/applications/misc/nut/default.nix b/pkgs/applications/misc/nut/default.nix
index 3d4e51360212..51ae8633a7c0 100644
--- a/pkgs/applications/misc/nut/default.nix
+++ b/pkgs/applications/misc/nut/default.nix
@@ -1,13 +1,14 @@
-{stdenv, fetchurl, pkgconfig, neon, libusb, hal, openssl, udev}:
+{ stdenv, fetchurl, pkgconfig, neon, libusb, openssl, udev }:
 
 stdenv.mkDerivation {
   name = "nut-2.6.1";
+
   src = fetchurl {
     url = http://www.networkupstools.org/source/2.6/nut-2.6.1.tar.gz;
     sha256 = "f5c46b856c0cf5b7f0e4b22d82b670af64cc98717a90eaac8723dd402a181c00";
   };
 
-  buildInputs = [pkgconfig neon libusb hal openssl udev];
+  buildInputs = [ pkgconfig neon libusb openssl udev ];
 
   configureFlags = [
     "--with-all"
diff --git a/pkgs/applications/misc/synergy/default.nix b/pkgs/applications/misc/synergy/default.nix
index cb79bf592fe4..a267a29c7e2e 100644
--- a/pkgs/applications/misc/synergy/default.nix
+++ b/pkgs/applications/misc/synergy/default.nix
@@ -1,31 +1,29 @@
-{ stdenv, fetchurl, x11, xextproto, libXtst, inputproto, libXi
-, automake, autoconf, sourceFromHead }:
+{ stdenv, fetchurl, cmake, x11, libX11, libXi, libXtst }:
 
-stdenv.mkDerivation {
-  name = "synergy-cvs";
+stdenv.mkDerivation rec {
+  name = "synergy-1.4.10";
 
-  # note: There is a fork:
-  # http://code.google.com/p/synergy-plus
-
-  # REGION AUTO UPDATE:            { name="synergy"; type = "cvs"; cvsRoot = ":pserver:anonymous@synergy2.cvs.sourceforge.net:/cvsroot/synergy2"; module="syngery"; }
-  src= sourceFromHead "synergy-F_23-55-02.tar.gz"
-               (fetchurl { url = "http://mawercer.de/~nix/repos/synergy-F_23-55-02.tar.gz"; sha256 = "ae16a9b59039a32e383e71397405d7b610de6c6902c03177c2496bac440d3e28"; });
-  # END
-
-  buildInputs = [ x11 xextproto libXtst inputproto libXi automake autoconf ];
+  src = fetchurl {
+  	url = "http://synergy.googlecode.com/files/${name}-Source.tar.gz";
+  	sha256 = "1ghgf96gbk4sdw8sqlc3pjschkmmqybihi12mg6hi26gnk7a5m86";
+  };
 
-  preConfigure = "autoreconf";
+  buildInputs = [ cmake x11 libX11 libXi libXtst ];
+  
+  # At this moment make install doesn't work for synergy
+  # http://synergy-foss.org/spit/issues/details/3317/
 
-  patches =
-    [ (fetchurl {
-        url = http://mawercer.de/~nix/synergy-gcc43-r2.patch.gz;
-        sha256 = "0wnj5k93ybj7jg8ml1i1brwsnszfh41117q2qh7r8xr9m37997b7";
-      })
-    ];
+  
+  installPhase = ''
+    ensureDir $out/bin
+    cp ../bin/synergyc $out/bin
+    cp ../bin/synergys $out/bin
+    cp ../bin/synergyd $out/bin
+  '';
 
   meta = { 
     description = "Tool to share the mouse keyboard and the clipboard between computers";
-    homepage = http://synergy2.sourceforge.net;
+    homepage = http://synergy-foss.org;
     license = "GPL";
   };
 }
diff --git a/pkgs/applications/misc/taskwarrior/default.nix b/pkgs/applications/misc/taskwarrior/default.nix
index 95f9de2f42b8..dbb3c3f6a4ed 100644
--- a/pkgs/applications/misc/taskwarrior/default.nix
+++ b/pkgs/applications/misc/taskwarrior/default.nix
@@ -1,29 +1,22 @@
-{ stdenv, fetchurl, cmake, lua5 }:
+{stdenv, fetchurl, cmake}:
 
 stdenv.mkDerivation {
-  name = "task-warrior-2.0.0";
+  name = "taskwarrior-2.1.2";
 
-  src = fetchurl {
-    url = http://www.taskwarrior.org/download/task-2.0.0.tar.gz;
-    sha256 = "1gbmcynj2n2c9dcykxn27ffk034mvm0zri5hqhfdx593dhv1x5vq";
-  };
-
-  NIX_LDFLAGS = "-ldl";
-
-  buildNativeInputs = [ cmake ];
-  buildInputs = [ lua5 ];
+  enableParallelBuilding = true;
 
-  crossAttrs = {
-    preConfigure = ''
-      export NIX_CROSS_LDFLAGS="$NIX_CROSS_LDFLAGS -ldl"
-    '';
+  src = fetchurl {
+    url = http://www.taskwarrior.org/download/task-2.1.2.tar.gz;
+    sha256 = "0diy72sgiyvfl6bdy7k3qwv3ijx2z1y477smkk6jsbbd9fsp2lfg";
   };
 
-  enableParallelBuilding = true;
+  buildInputs = [ cmake ];
 
   meta = {
-    description = "Command-line todo list manager";
-    homepage = http://taskwarrior.org/;
-    license = "GPLv2+";
+    description = "GTD (getting things done) implementation";
+    homepage = http://taskwarrior.org;
+    license = stdenv.lib.licenses.mit;
+    maintainers = [stdenv.lib.maintainers.marcweber];
+    platforms = stdenv.lib.platforms.linux;
   };
 }
diff --git a/pkgs/applications/misc/xterm/default.nix b/pkgs/applications/misc/xterm/default.nix
index b4fab591ef47..ef2d846dd2e4 100644
--- a/pkgs/applications/misc/xterm/default.nix
+++ b/pkgs/applications/misc/xterm/default.nix
@@ -1,18 +1,18 @@
-{ stdenv, fetchurl, xorg, ncurses, freetype, pkgconfig }:
+{ stdenv, fetchurl, xorg, ncurses, freetype, fontconfig, pkgconfig }:
 
 stdenv.mkDerivation rec {
-  name = "xterm-276";
-  
+  name = "xterm-281";
+
   src = fetchurl {
     url = "ftp://invisible-island.net/xterm/${name}.tgz";
-    sha256 = "1k3k025z3vl91sc8i7f5lmnsb1rsblpbijri9vnxgpynw4wgrc7b";
+    sha256 = "1yrjjya7z5s3fi0iiaxgna35jh0ib2zx1yafyng35jma6qbwhxx7";
   };
-  
+
   buildInputs =
     [ xorg.libXaw xorg.xproto xorg.libXt xorg.libXext xorg.libX11 xorg.libSM xorg.libICE
-      ncurses freetype pkgconfig xorg.libXft xorg.luit
+      ncurses freetype fontconfig pkgconfig xorg.libXft xorg.luit
     ];
-    
+
   configureFlags =
     ''
       --enable-wide-chars --enable-256-color
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
     '';
 
   # Work around broken "plink.sh".
-  NIX_LDFLAGS = "-lXmu -lXt -lICE -lX11";
+  NIX_LDFLAGS = "-lXmu -lXt -lICE -lX11 -lfontconfig";
 
   # Hack to get xterm built with the feature of releasing a possible setgid of 'utmp',
   # decided by the sysadmin to allow the xterm reporting to /var/run/utmp
diff --git a/pkgs/applications/networking/browsers/chromium/default.nix b/pkgs/applications/networking/browsers/chromium/default.nix
index 33f9283b47ad..acfb43e7caaa 100644
--- a/pkgs/applications/networking/browsers/chromium/default.nix
+++ b/pkgs/applications/networking/browsers/chromium/default.nix
@@ -5,6 +5,7 @@
 , libevent, expat, libjpeg
 , libpng, libxml2, libxslt
 , xdg_utils, yasm, zlib
+, libusb1, libexif
 
 , python, perl, pkgconfig
 , nspr, udev, krb5
@@ -55,21 +56,23 @@ let
     use_system_flac = true;
     use_system_libevent = true;
     use_system_libexpat = true;
+    use_system_libexif = true;
     use_system_libjpeg = true;
     use_system_libpng = true;
+    use_system_libusb = true;
     use_system_libxml = true;
     use_system_speex = true;
     use_system_ssl = cfg.openssl;
     use_system_stlport = true;
     use_system_xdg_utils = true;
     use_system_yasm = true;
-    use_system_zlib = true;
+    use_system_zlib = false; # http://crbug.com/143623
 
     use_system_harfbuzz = false;
     use_system_icu = false;
-    use_system_libwebp = false; # See chromium issue #133161
+    use_system_libwebp = false; # http://crbug.com/133161
     use_system_skia = false;
-    use_system_sqlite = false; # See chromium issue #22208
+    use_system_sqlite = false; # http://crbug.com/22208
     use_system_v8 = false;
   };
 
@@ -78,23 +81,20 @@ let
     libevent expat libjpeg
     libpng libxml2 libxslt
     xdg_utils yasm zlib
+    libusb1 libexif
   ];
 
-  seccompPatch = let
-    pre22 = versionOlder sourceInfo.version "22.0.0.0";
-  in if pre22 then ./enable_seccomp.patch else ./enable_seccomp22.patch;
+  maybeSeccompPatch = let
+    pre23 = versionOlder sourceInfo.version "23.0.0.0";
+  in optional pre23 ./enable_seccomp.patch;
 
-  # XXX: this reverts r151720 to prevent http://crbug.com/143623
-  maybeRevertZlibChanges = let
-    below22 = versionOlder sourceInfo.version "22.0.0.0";
+  maybeBpfTemporaryFix = let
     patch = fetchurl {
-      name = "revert-r151720";
-      url = "http://git.chromium.org/gitweb/?p=chromium.git;a=commitdiff_plain;"
-          + "hp=4419ec6414b33b6b19bb2e380b4998ed5193ecab;"
-          + "h=0fabb4fda7059a8757422e8a44e70deeab28e698";
-      sha256 = "0n0d6mkg89g8q63cifapzpg9dxfs2n6xvk4k13szhymvf67b77pf";
+      url = "https://chromiumcodereview.appspot.com/download/issue11073003_6001_7001.diff";
+      sha256 = "bf61871cdaa8fea27ce15482a17048f67b426a55813c3832f9bd39ec47a9eb06";
     };
-  in optional (!below22) patch;
+    needPatch = !versionOlder sourceInfo.version "23.0.1271.0";
+  in optional needPatch patch;
 
 in stdenv.mkDerivation rec {
   name = "${packageName}-${version}";
@@ -127,10 +127,10 @@ in stdenv.mkDerivation rec {
 
   prePatch = "patchShebangs .";
 
-  patches = optional (!cfg.selinux) seccompPatch
-         ++ optional cfg.cups ./cups_allow_deprecated.patch
+  patches = optional cfg.cups ./cups_allow_deprecated.patch
          ++ optional cfg.pulseaudio ./pulseaudio_array_bounds.patch
-         ++ maybeRevertZlibChanges;
+         ++ maybeSeccompPatch
+         ++ maybeBpfTemporaryFix;
 
   postPatch = optionalString cfg.openssl ''
     cat $opensslPatches | patch -p1 -d third_party/openssl/openssl
diff --git a/pkgs/applications/networking/browsers/chromium/enable_seccomp.patch b/pkgs/applications/networking/browsers/chromium/enable_seccomp.patch
index edeee37f19ca..f947d796f186 100644
--- a/pkgs/applications/networking/browsers/chromium/enable_seccomp.patch
+++ b/pkgs/applications/networking/browsers/chromium/enable_seccomp.patch
@@ -1,12 +1,12 @@
-diff --git a/content/common/seccomp_sandbox.h b/content/common/seccomp_sandbox.h
-index a07d6f3..a622a35 100644
---- a/content/common/seccomp_sandbox.h
-+++ b/content/common/seccomp_sandbox.h
-@@ -29,15 +29,9 @@ static bool SeccompSandboxEnabled() {
-   // TODO(evan): turn on for release too once we've flushed out all the bugs,
-   // allowing us to delete this file entirely and just rely on the "disabled"
-   // switch.
--#ifdef NDEBUG
+diff --git a/content/common/sandbox_linux.cc b/content/common/sandbox_linux.cc
+index d4618e5..108f846 100644
+--- a/content/common/sandbox_linux.cc
++++ b/content/common/sandbox_linux.cc
+@@ -38,15 +38,9 @@ void LogSandboxStarted(const std::string& sandbox_name) {
+ // Implement the command line enabling logic for seccomp-legacy.
+ bool IsSeccompLegacyDesired() {
+ #if defined(SECCOMP_SANDBOX)
+-#if defined(NDEBUG)
 -  // Off by default; allow turning on with a switch.
 -  return CommandLine::ForCurrentProcess()->HasSwitch(
 -      switches::kEnableSeccompSandbox);
@@ -15,6 +15,6 @@ index a07d6f3..a622a35 100644
    return !CommandLine::ForCurrentProcess()->HasSwitch(
        switches::kDisableSeccompSandbox);
 -#endif  // NDEBUG
- }
  #endif  // SECCOMP_SANDBOX
- 
+   return false;
+ }
diff --git a/pkgs/applications/networking/browsers/chromium/enable_seccomp22.patch b/pkgs/applications/networking/browsers/chromium/enable_seccomp22.patch
deleted file mode 100644
index f947d796f186..000000000000
--- a/pkgs/applications/networking/browsers/chromium/enable_seccomp22.patch
+++ /dev/null
@@ -1,20 +0,0 @@
-diff --git a/content/common/sandbox_linux.cc b/content/common/sandbox_linux.cc
-index d4618e5..108f846 100644
---- a/content/common/sandbox_linux.cc
-+++ b/content/common/sandbox_linux.cc
-@@ -38,15 +38,9 @@ void LogSandboxStarted(const std::string& sandbox_name) {
- // Implement the command line enabling logic for seccomp-legacy.
- bool IsSeccompLegacyDesired() {
- #if defined(SECCOMP_SANDBOX)
--#if defined(NDEBUG)
--  // Off by default; allow turning on with a switch.
--  return CommandLine::ForCurrentProcess()->HasSwitch(
--      switches::kEnableSeccompSandbox);
--#else
-   // On by default; allow turning off with a switch.
-   return !CommandLine::ForCurrentProcess()->HasSwitch(
-       switches::kDisableSeccompSandbox);
--#endif  // NDEBUG
- #endif  // SECCOMP_SANDBOX
-   return false;
- }
diff --git a/pkgs/applications/networking/browsers/chromium/sources.nix b/pkgs/applications/networking/browsers/chromium/sources.nix
index e4e72617bc42..dbb0de72f30c 100644
--- a/pkgs/applications/networking/browsers/chromium/sources.nix
+++ b/pkgs/applications/networking/browsers/chromium/sources.nix
@@ -1,18 +1,18 @@
 # This file is autogenerated from update.sh in the same directory.
 {
   dev = {
-    version = "23.0.1262.0";
-    url = "http://commondatastorage.googleapis.com/chromium-browser-official/chromium-23.0.1262.0.tar.bz2";
-    sha256 = "19sqiv2vg9qy1kj6s12sq5aknvp3969yw26szwp54ipfv7lxqjh6";
+    version = "24.0.1284.2";
+    url = "http://commondatastorage.googleapis.com/chromium-browser-official/chromium-24.0.1284.2.tar.bz2";
+    sha256 = "0lp3r4n3d71wy2ndzcfwvrp9vc1ii98pxip1c8hfinz994ca1ykx";
   };
   beta = {
-    version = "22.0.1229.56";
-    url = "http://commondatastorage.googleapis.com/chromium-browser-official/chromium-22.0.1229.56.tar.bz2";
-    sha256 = "0wynq27yz1aslsnrjmf47dwbglblpfida2kmgv23l804mgdj19gv";
+    version = "23.0.1271.26";
+    url = "http://commondatastorage.googleapis.com/chromium-browser-official/chromium-23.0.1271.26.tar.bz2";
+    sha256 = "1iimpmm5lm5rvak49320lmmvwqr8xv4znp4h1pf65jzzx0apbgkh";
   };
   stable = {
-    version = "21.0.1180.89";
-    url = "http://commondatastorage.googleapis.com/chromium-browser-official/chromium-21.0.1180.89.tar.bz2";
-    sha256 = "1i9mjbjj3aywg03hd59m9j5gq5b5fl8nvw56g47q8s9k1bcsik0n";
+    version = "22.0.1229.94";
+    url = "http://commondatastorage.googleapis.com/chromium-browser-official/chromium-22.0.1229.94.tar.bz2";
+    sha256 = "1bqwlgmn0dm1xvd6v52zf9gjmykgq4fnw7rancbplfpl3rl7xbx0";
   };
 }
diff --git a/pkgs/applications/networking/browsers/firefox/16.0.nix b/pkgs/applications/networking/browsers/firefox/16.0.nix
new file mode 100644
index 000000000000..063d36ccfcf8
--- /dev/null
+++ b/pkgs/applications/networking/browsers/firefox/16.0.nix
@@ -0,0 +1,185 @@
+{ stdenv, fetchurl, pkgconfig, gtk, pango, perl, python, zip, libIDL
+, libjpeg, libpng, zlib, cairo, dbus, dbus_glib, bzip2, xlibs
+, freetype, fontconfig, file, alsaLib, nspr, nss, libnotify
+, yasm, mesa, sqlite, unzip, makeWrapper, pysqlite
+
+, # If you want the resulting program to call itself "Firefox" instead
+  # of "Shiretoko" or whatever, enable this option.  However, those
+  # binaries may not be distributed without permission from the
+  # Mozilla Foundation, see
+  # http://www.mozilla.org/foundation/trademarks/.
+  enableOfficialBranding ? false
+}:
+
+assert stdenv.gcc ? libc && stdenv.gcc.libc != null;
+
+rec {
+
+  firefoxVersion = "16.0.1";
+
+  xulVersion = "16.0.1"; # this attribute is used by other packages
+
+
+  src = fetchurl {
+    urls = [
+        # It is better to use this url for official releases, to take load off Mozilla's ftp server.
+        "http://releases.mozilla.org/pub/mozilla.org/firefox/releases/${firefoxVersion}/source/firefox-${firefoxVersion}.source.tar.bz2"
+        # Fall back to this url for versions not available at releases.mozilla.org.
+        "ftp://ftp.mozilla.org/pub/mozilla.org/firefox/releases/${firefoxVersion}/source/firefox-${firefoxVersion}.source.tar.bz2"
+    ];
+    sha1 = "ad5723fcf4ec6c6734e2022cecad174290fa425e";
+  };
+
+  commonConfigureFlags =
+    [ "--enable-optimize"
+      #"--enable-profiling"
+      "--disable-debug"
+      "--enable-strip"
+      "--with-system-jpeg"
+      "--with-system-zlib"
+      "--with-system-bz2"
+      "--with-system-nspr"
+      "--with-system-nss"
+      # "--with-system-png" # <-- "--with-system-png won't work because the system's libpng doesn't have APNG support"
+      # "--enable-system-cairo" # disabled for the moment because our Cairo is too old
+      "--enable-system-sqlite"
+      "--disable-crashreporter"
+      "--disable-tests"
+      "--disable-necko-wifi" # maybe we want to enable this at some point
+      "--disable-installer"
+      "--disable-updater"
+    ];
+
+
+  xulrunner = stdenv.mkDerivation rec {
+    name = "xulrunner-${xulVersion}";
+
+    inherit src;
+
+    buildInputs =
+      [ 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 yasm mesa
+        xlibs.libXScrnSaver xlibs.scrnsaverproto pysqlite
+        xlibs.libXext xlibs.xextproto sqlite unzip makeWrapper
+      ];
+
+    configureFlags =
+      [ "--enable-application=xulrunner"
+        "--disable-javaxpcom"
+      ] ++ commonConfigureFlags;
+
+    enableParallelBuilding = true;
+
+    preConfigure =
+      ''
+        export NIX_LDFLAGS="$NIX_LDFLAGS -L$out/lib/xulrunner-${xulVersion}"
+
+        mkdir ../objdir
+        cd ../objdir
+        configureScript=../mozilla-release/configure
+      ''; # */
+
+    #installFlags = "SKIP_GRE_REGISTRATION=1";
+
+    postInstall = ''
+      # Fix run-mozilla.sh search
+      libDir=$(cd $out/lib && ls -d xulrunner-[0-9]*)
+      echo libDir: $libDir
+      test -n "$libDir"
+      cd $out/bin
+      rm xulrunner
+
+      for i in $out/lib/$libDir/*; do
+          file $i;
+          if file $i | grep executable &>/dev/null; then
+              echo -e '#! /bin/sh\n"'"$i"'" "$@"' > "$out/bin/$(basename "$i")";
+              chmod a+x "$out/bin/$(basename "$i")";
+          fi;
+      done
+      for i in $out/lib/$libDir/*.so; do
+          patchelf --set-rpath "$(patchelf --print-rpath "$i"):$out/lib/$libDir" $i || true
+      done
+      for i in $out/lib/$libDir/{plugin-container,xulrunner,xulrunner-stub}; do
+          wrapProgram $i --prefix LD_LIBRARY_PATH ':' "$out/lib/$libDir"
+      done
+      rm -f $out/bin/run-mozilla.sh
+    ''; # */
+
+    meta = {
+      description = "Mozilla Firefox XUL runner";
+      homepage = http://www.mozilla.com/en-US/firefox/;
+    };
+
+    passthru = { inherit gtk; version = xulVersion; };
+  };
+
+
+  firefox = stdenv.mkDerivation rec {
+    name = "firefox-${firefoxVersion}";
+
+    inherit src;
+
+    enableParallelBuilding = true;
+
+    buildInputs =
+      [ pkgconfig gtk perl zip libIDL libjpeg zlib cairo bzip2 python
+        dbus dbus_glib pango freetype fontconfig alsaLib nspr nss libnotify
+        xlibs.pixman yasm mesa sqlite file unzip pysqlite
+      ];
+
+    propagatedBuildInputs = [xulrunner];
+
+    configureFlags =
+      [ "--enable-application=browser"
+        "--with-libxul-sdk=${xulrunner}/lib/xulrunner-devel-${xulrunner.version}"
+        "--enable-chrome-format=jar"
+        "--disable-elf-hack"
+      ]
+      ++ commonConfigureFlags
+      ++ stdenv.lib.optional enableOfficialBranding "--enable-official-branding";
+
+    makeFlags = [
+      "SYSTEM_LIBXUL=1"
+    ];
+
+    # 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]))
+        }' ';'
+      '';
+
+    postInstall =
+      ''
+        ln -s ${xulrunner}/lib/xulrunner-${xulrunner.version} $(echo $out/lib/firefox-*)/xulrunner
+        for j in $out/bin/*; do
+            i="$(readlink "$j")";
+            file $i;
+            if file $i | grep executable &>/dev/null; then
+                rm "$out/bin/$(basename "$i")"
+                echo -e '#! /bin/sh\nexec "'"$i"'" "$@"' > "$out/bin/$(basename "$i")"
+                chmod a+x "$out/bin/$(basename "$i")"
+            fi;
+        done;
+        cd "$out/lib/"firefox-*
+        rm firefox
+        echo -e '#!${stdenv.shell}\n${xulrunner}/bin/xulrunner "'"$PWD"'/application.ini" "$@"' > firefox
+        chmod a+x firefox
+      ''; # */
+
+    meta = {
+      description = "Mozilla Firefox - the browser, reloaded";
+      homepage = http://www.mozilla.com/en-US/firefox/;
+      maintainers = [ stdenv.lib.maintainers.eelco ];
+    };
+
+    passthru = {
+      inherit gtk xulrunner nspr;
+      isFirefox3Like = true;
+    };
+  };
+}
diff --git a/pkgs/applications/networking/browsers/mozilla-plugins/flashplayer-10/builder.sh b/pkgs/applications/networking/browsers/mozilla-plugins/flashplayer-10/builder.sh
deleted file mode 100644
index b0f8a2638c18..000000000000
--- a/pkgs/applications/networking/browsers/mozilla-plugins/flashplayer-10/builder.sh
+++ /dev/null
@@ -1,23 +0,0 @@
-source $stdenv/setup
-
-dontStrip=1
-dontPatchELF=1
-sourceRoot=$TMPDIR
-
-unpackPhase() {
-    tar xvzf $src;
-    for a in *; do
-	if [ -d $a ]; then
-		cd $a
-		break
-	fi
-    done
-}
-
-installPhase() {
-    mkdir -p $out/lib/mozilla/plugins
-    cp -pv libflashplayer.so $out/lib/mozilla/plugins
-    patchelf --set-rpath "$rpath" $out/lib/mozilla/plugins/libflashplayer.so
-}
-
-genericBuild
diff --git a/pkgs/applications/networking/browsers/mozilla-plugins/flashplayer-10/default.nix b/pkgs/applications/networking/browsers/mozilla-plugins/flashplayer-10/default.nix
deleted file mode 100644
index ad6867ab5be5..000000000000
--- a/pkgs/applications/networking/browsers/mozilla-plugins/flashplayer-10/default.nix
+++ /dev/null
@@ -1,88 +0,0 @@
-{ stdenv
-, fetchurl
-, zlib
-, alsaLib
-, curl
-, nss
-, nspr
-, fontconfig
-, freetype
-, expat
-, libX11
-, libXext
-, libXrender
-, libXt
-, gtk 
-, glib
-, pango
-, cairo
-, atk
-, gdk_pixbuf
-, debug ? false
-
-/* you have to add ~/mm.cfg :
-
-    TraceOutputFileEnable=1
-    ErrorReportingEnable=1
-    MaxWarnings=1
-
-  in order to read the flash trace at ~/.macromedia/Flash_Player/Logs/flashlog.txt
-  Then FlashBug (a FireFox plugin) shows the log as well
-*/
-
-}:
-
-let
-
-  src =
-    if stdenv.system == "x86_64-linux" then
-      if debug then
-        # no plans to provide a x86_64 version:
-        # http://labs.adobe.com/technologies/flashplayer10/faq.html
-        throw "no x86_64 debugging version available"
-      else {
-        # -> http://labs.adobe.com/downloads/flashplayer10.html
-        version = "10.3.181.34";
-        url = http://download.macromedia.com/pub/labs/flashplayer10/flashplayer10_2_p3_64bit_linux_111710.tar.gz;
-        sha256 = "1w2zs2f0q1vpx4ia9pj1k4p830dwz7ypyn302mi48wcpz1wzc1gg";
-      }
-    else if stdenv.system == "i686-linux" then
-      if debug then {
-        # The debug version also contains a player
-        version = "10.2_p2-debug-r092710";
-        url = http://download.macromedia.com/pub/labs/flashplayer10/flashplayer_square_p2_32bit_debug_linux_092710.tar.gz;
-        sha256 = "11w3mxa39l4mnlsqzlwbdh1sald549afyqbx2kbid7in5qzamlcc";
-      } else {
-        version = "10.3.183.10";
-        url = http://fpdownload.macromedia.com/get/flashplayer/current/install_flash_player_10_linux.tar.gz;
-        sha256 = "0fj51dg0aa813b44yn8dvmmvw4qwi8vbi0x8n1bcqrcld3sbpmfz";
-      }
-    else throw "Flash Player is not supported on this platform";
-
-in
-
-stdenv.mkDerivation {
-  name = "flashplayer-${src.version}";
-
-  builder = ./builder.sh;
-  
-  src = fetchurl { inherit (src) url sha256; };
-
-  inherit zlib alsaLib;
-
-  passthru = {
-    mozillaPlugin = "/lib/mozilla/plugins";
-  };
-
-  rpath = stdenv.lib.makeLibraryPath
-    [ zlib alsaLib curl nss nspr fontconfig freetype expat libX11
-      libXext libXrender libXt gtk glib pango atk cairo gdk_pixbuf
-    ];
-
-  buildPhase = ":";
-
-  meta = {
-    description = "Adobe Flash Player browser plugin";
-    homepage = http://www.adobe.com/products/flashplayer/;
-  };
-}
diff --git a/pkgs/applications/networking/browsers/mozilla-plugins/flashplayer-11/default.nix b/pkgs/applications/networking/browsers/mozilla-plugins/flashplayer-11/default.nix
index 260edd360c65..2eb34f68b8b3 100644
--- a/pkgs/applications/networking/browsers/mozilla-plugins/flashplayer-11/default.nix
+++ b/pkgs/applications/networking/browsers/mozilla-plugins/flashplayer-11/default.nix
@@ -11,8 +11,9 @@
 , libX11
 , libXext
 , libXrender
+, libXcursor
 , libXt
-, gtk 
+, gtk
 , glib
 , pango
 , cairo
@@ -40,11 +41,11 @@ let
         # no plans to provide a x86_64 version:
         # http://labs.adobe.com/technologies/flashplayer10/faq.html
         throw "no x86_64 debugging version available"
-      else {
+      else rec {
         # -> http://labs.adobe.com/downloads/flashplayer10.html
-        version = "11.1.102.55";
-        url = http://fpdownload.macromedia.com/get/flashplayer/pdc/11.1.102.55/install_flash_player_11_linux.x86_64.tar.gz;
-        sha256 = "09swldv174z23pnixy9fxkw084qkl3bbrxfpf159fbjdgvwihn1l";
+        version = "11.2.202.238";
+        url = "http://fpdownload.macromedia.com/get/flashplayer/pdc/${version}/install_flash_player_11_linux.x86_64.tar.gz";
+        sha256 = "07d09xjnn2hm877psmv9a6c4cfighxw24p0apq2ykawnrjpjc6zn";
       }
     else if stdenv.system == "i686-linux" then
       if debug then {
@@ -52,10 +53,10 @@ let
         version = "11.1";
         url = http://fpdownload.macromedia.com/pub/flashplayer/updaters/11/flashplayer_11_plugin_debug.i386.tar.gz;
         sha256 = "1z3649lv9sh7jnwl8d90a293nkaswagj2ynhsr4xmwiy7c0jz2lk";
-      } else {
-        version = "11.1.102.55";
-        url = "http://fpdownload.macromedia.com/get/flashplayer/pdc/11.1.102.55/install_flash_player_11_linux.i386.tar.gz";
-        sha256 = "08zdnl06lqyk2k3yq4lgphqd3ci2267448mghlv1p0hjrdq253k7";
+      } else rec {
+        version = "11.2.202.238";
+        url = "http://fpdownload.macromedia.com/get/flashplayer/pdc/${version}/install_flash_player_11_linux.i386.tar.gz";
+        sha256 = "0p05pr4vmc4536axjyljhxhqizq4ihslar8g638dj24251byp7ca";
       }
     else throw "Flash Player is not supported on this platform";
 
@@ -65,7 +66,7 @@ stdenv.mkDerivation {
   name = "flashplayer-${src.version}";
 
   builder = ./builder.sh;
-  
+
   src = fetchurl { inherit (src) url sha256; };
 
   inherit zlib alsaLib;
@@ -76,7 +77,7 @@ stdenv.mkDerivation {
 
   rpath = stdenv.lib.makeLibraryPath
     [ zlib alsaLib curl nss nspr fontconfig freetype expat libX11
-      libXext libXrender libXt gtk glib pango atk cairo gdk_pixbuf
+      libXext libXrender libXcursor libXt gtk glib pango atk cairo gdk_pixbuf
     ];
 
   buildPhase = ":";
diff --git a/pkgs/applications/networking/browsers/mozilla-plugins/flashplayer-9/builder.sh b/pkgs/applications/networking/browsers/mozilla-plugins/flashplayer-9/builder.sh
deleted file mode 100644
index 86ecd2c33453..000000000000
--- a/pkgs/applications/networking/browsers/mozilla-plugins/flashplayer-9/builder.sh
+++ /dev/null
@@ -1,14 +0,0 @@
-source $stdenv/setup
-
-dontStrip=1
-dontPatchELF=1
-
-sourceRoot=.
-
-installPhase() {
-    mkdir -p $out/lib/mozilla/plugins
-    cp -p libflashplayer.so $out/lib/mozilla/plugins
-    patchelf --set-rpath $rpath $out/lib/mozilla/plugins/libflashplayer.so
-}
-
-genericBuild
diff --git a/pkgs/applications/networking/browsers/mozilla-plugins/flashplayer-9/default.nix b/pkgs/applications/networking/browsers/mozilla-plugins/flashplayer-9/default.nix
deleted file mode 100644
index 913aa985583e..000000000000
--- a/pkgs/applications/networking/browsers/mozilla-plugins/flashplayer-9/default.nix
+++ /dev/null
@@ -1,47 +0,0 @@
-{ stdenv
-, fetchurl
-, zlib
-, alsaLib
-, nss
-, nspr
-, fontconfig
-, freetype
-, expat
-, libX11
-, libXext
-, libXrender
-, libXt
-, gtk
-, glib
-, pango
-, atk
-
-, customSrc ? null
-}:
-
-assert stdenv.system == "i686-linux";
-
-stdenv.mkDerivation {
-  name = "flashplayer-9.0.124.0";
-
-  builder = ./builder.sh;
-  src = if customSrc == null then
-    fetchurl {
-      url = http://download.macromedia.com/pub/flashplayer/installers/current/9/install_flash_player_9.tar.gz;
-      sha256 = "1cnsjgmy7rwj3spzb5mmpmvzxjp435jisl0dd8s4rf4xskyy6d6r";
-    }
-  else customSrc;
-
-  inherit zlib alsaLib;
-
-  passthru = {
-    mozillaPlugin = "/lib/mozilla/plugins";
-  };
-
-  rpath = stdenv.lib.makeLibraryPath [zlib alsaLib nss nspr fontconfig freetype expat libX11 libXext libXrender libXt gtk glib pango atk] ;
-
-  meta = {
-    description = "Adobe Flash Player browser plugin";
-    homepage = http://www.adobe.com/products/flashplayer/;
-  };
-}
diff --git a/pkgs/applications/networking/browsers/opera/default.nix b/pkgs/applications/networking/browsers/opera/default.nix
index 8c3cd9f11cd5..ba052738ad51 100644
--- a/pkgs/applications/networking/browsers/opera/default.nix
+++ b/pkgs/applications/networking/browsers/opera/default.nix
@@ -13,18 +13,18 @@ let
 in
 
 stdenv.mkDerivation rec {
-  name = "opera-12.00-1467";
+  name = "opera-12.02-1578";
 
   src =
     if stdenv.system == "i686-linux" then
       fetchurl {
-        url = "${mirror}/linux/1200/${name}.i386.linux.tar.xz";
-        sha256 = "d5683f5a4cf0cfd9ce715359b77909c7923c85bcec98513907c1844285356fdc";
+        url = "${mirror}/linux/1202/${name}.i386.linux.tar.xz";
+        sha256 = "60ccef14673818a8690fe3b76f861d180e2d8d3b87513b1652e6117c6dff3e86";
       }
     else if stdenv.system == "x86_64-linux" then
       fetchurl {
-        url = "${mirror}/linux/1200/${name}.x86_64.linux.tar.xz";
-        sha256 = "7c3dbe122b1fd20123f1b48a420dea080cc24ede4183d47d66b383c2b7ca5051";
+        url = "${mirror}/linux/1202/${name}.x86_64.linux.tar.xz";
+        sha256 = "e861f14b984898b5a2c0d04915e515a5677152dc302b614a3ac1bb13da7a9b81";
       }
     else throw "Opera is not supported on ${stdenv.system} (only i686-linux and x86_64 linux are supported)";
 
diff --git a/pkgs/applications/networking/instant-messengers/psi/default.nix b/pkgs/applications/networking/instant-messengers/psi/default.nix
index 2c6ba36c44f1..5750476cc5c1 100644
--- a/pkgs/applications/networking/instant-messengers/psi/default.nix
+++ b/pkgs/applications/networking/instant-messengers/psi/default.nix
@@ -1,28 +1,33 @@
-{ stdenv, fetchurl, aspell, qt4, zlib, sox, libX11, xproto, libSM, 
-  libICE, qca2, pkgconfig, qca2_ossl, liboil, speex, callPackage, which, glib }:
+{ stdenv, fetchurl, aspell, qt4, zlib, sox, libX11, xproto, libSM
+, libICE, qca2, pkgconfig, qca2_ossl, liboil, speex, callPackage, which, glib
+, libXScrnSaver, scrnsaverproto
+}:
 
 stdenv.mkDerivation rec {
-  name = "psi-0.14";
-  
+  name = "psi-0.15";
+
   src = fetchurl {
     url = "mirror://sourceforge/psi/${name}.tar.bz2";
-    sha256 = "1h54a1qryfva187sw9qnb4lv1d3h3lysqgw55v727swvslh4l0da";
+    sha256 = "593b5ddd7934af69c245afb0e7290047fd7dedcfd8765baca5a3a024c569c7e6";
   };
 
-  buildInputs = [aspell qt4 zlib sox libX11 xproto libSM libICE 
-    qca2 qca2_ossl pkgconfig which glib];
+  buildInputs =
+    [ aspell qt4 zlib sox libX11 xproto libSM libICE
+      qca2 qca2_ossl pkgconfig which glib scrnsaverproto libXScrnSaver
+    ];
 
   NIX_CFLAGS_COMPILE="-I${qca2}/include/QtCrypto";
-  
-  NIX_LDFLAGS="-lqca";
 
-  configureFlags =
-    [ " --with-zlib-inc=${zlib}/include "
-      " --disable-bundled-qca"
-    ];
+  NIX_LDFLAGS="-lqca";
 
   psiMedia = callPackage ./psimedia.nix { };
 
+  enableParallelBuilding = true;
+
+  configureFlags = [
+    "--with-aspell-inc=${aspell}/include"
+    ];
+
   postInstall = ''
     PSI_PLUGINS="$out/lib/psi/plugins"
     mkdir -p "$PSI_PLUGINS"
@@ -34,9 +39,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "Psi, an XMPP (Jabber) client";
-    maintainers = with stdenv.lib.maintainers;
-      [raskin];
-    platforms = with stdenv.lib.platforms;
-      linux;
+    maintainers = [ stdenv.lib.maintainers.raskin ];
+    platforms = stdenv.lib.platforms.linux;
   };
 }
diff --git a/pkgs/applications/networking/instant-messengers/psi/glib-2.32.patch b/pkgs/applications/networking/instant-messengers/psi/glib-2.32.patch
new file mode 100644
index 000000000000..49988c253bdb
--- /dev/null
+++ b/pkgs/applications/networking/instant-messengers/psi/glib-2.32.patch
@@ -0,0 +1,54 @@
+http://sources2.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/net-im/psimedia/files/psimedia-1.0.3-glib2.32.patch?view=log
+
+Index: psimedia-1.0.3/gstprovider/gstcustomelements/gstcustomelements.h
+===================================================================
+--- psimedia-1.0.3.orig/gstprovider/gstcustomelements/gstcustomelements.h
++++ psimedia-1.0.3/gstprovider/gstcustomelements/gstcustomelements.h
+@@ -21,7 +21,7 @@
+ #ifndef GSTCUSTOMELEMENTS_H
+ #define GSTCUSTOMELEMENTS_H
+ 
+-#include <glib/gthread.h>
++#include <glib.h>
+ #include <gst/gst.h>
+ #include <gst/base/gstpushsrc.h>
+ #include <gst/video/video.h>
+Index: psimedia-1.0.3/gstprovider/gstelements/static/gstelements.h
+===================================================================
+--- psimedia-1.0.3.orig/gstprovider/gstelements/static/gstelements.h
++++ psimedia-1.0.3/gstprovider/gstelements/static/gstelements.h
+@@ -21,7 +21,7 @@
+ #ifndef PSI_GSTELEMENTS_H
+ #define PSI_GSTELEMENTS_H
+ 
+-#include <glib/gmacros.h>
++#include <glib.h>
+ 
+ G_BEGIN_DECLS
+ 
+Index: psimedia-1.0.3/gstprovider/gstthread.h
+===================================================================
+--- psimedia-1.0.3.orig/gstprovider/gstthread.h
++++ psimedia-1.0.3/gstprovider/gstthread.h
+@@ -22,7 +22,7 @@
+ #define PSI_GSTTHREAD_H
+ 
+ #include <QThread>
+-#include <glib/gmain.h>
++#include <glib.h>
+ 
+ namespace PsiMedia {
+ 
+Index: psimedia-1.0.3/gstprovider/rwcontrol.h
+===================================================================
+--- psimedia-1.0.3.orig/gstprovider/rwcontrol.h
++++ psimedia-1.0.3/gstprovider/rwcontrol.h
+@@ -28,7 +28,7 @@
+ #include <QMutex>
+ #include <QWaitCondition>
+ #include <QTimer>
+-#include <glib/gmain.h>
++#include <glib.h>
+ #include "psimediaprovider.h"
+ #include "rtpworker.h"
+ 
diff --git a/pkgs/applications/networking/instant-messengers/psi/psimedia.nix b/pkgs/applications/networking/instant-messengers/psi/psimedia.nix
index df821da42f20..993a018625e8 100644
--- a/pkgs/applications/networking/instant-messengers/psi/psimedia.nix
+++ b/pkgs/applications/networking/instant-messengers/psi/psimedia.nix
@@ -1,5 +1,5 @@
-{stdenv, fetchurl, qt4, gstreamer, gst_plugins_base, liboil, speex, which
-, glib, pkgconfig}:
+{ stdenv, fetchurl, qt4, gstreamer, gst_plugins_base, liboil, speex, which
+, glib, pkgconfig }:
 
 stdenv.mkDerivation rec {
   name = "psimedia";
@@ -9,7 +9,9 @@ stdenv.mkDerivation rec {
     sha256 = "0fxjdz8afh75gfx2msysb1gss6zx578l3224jvc9jhm99w1ii781";
   };
 
-  buildInputs = [qt4 gstreamer gst_plugins_base liboil speex which glib pkgconfig];
+  patches = [ ./glib-2.32.patch ];
+
+  buildInputs = [ qt4 gstreamer gst_plugins_base liboil speex which glib pkgconfig ];
 
   configurePhase = ''./configure'';
 
diff --git a/pkgs/applications/networking/instant-messengers/skype/default.nix b/pkgs/applications/networking/instant-messengers/skype/default.nix
index ddbba59e1450..51e9a623444f 100644
--- a/pkgs/applications/networking/instant-messengers/skype/default.nix
+++ b/pkgs/applications/networking/instant-messengers/skype/default.nix
@@ -54,13 +54,11 @@ stdenv.mkDerivation rec {
 
     chmod +x $out/bin/skype
 
-    # Desktop icon for Skype
-    patch skype.desktop << EOF
-    5c5
-    < Icon=skype.png
-    ---
-    > Icon=$out/opt/skype/icons/SkypeBlue_48x48.png
-    EOF
+    # Fixup desktop file
+    substituteInPlace skype.desktop --replace \
+      "Icon=skype.png" "Icon=$out/opt/skype/icons/SkypeBlue_48x48.png"
+    substituteInPlace skype.desktop --replace \
+      "Terminal=0" "Terminal=false"
     mkdir -p $out/share/applications
     mv skype.desktop $out/share/applications
   '';
diff --git a/pkgs/applications/networking/irc/weechat/default.nix b/pkgs/applications/networking/irc/weechat/default.nix
index a891c145b76d..eb1a9c4474f4 100644
--- a/pkgs/applications/networking/irc/weechat/default.nix
+++ b/pkgs/applications/networking/irc/weechat/default.nix
@@ -2,12 +2,12 @@
 , zlib, curl , pkgconfig, libgcrypt, ruby, lua5, tcl, guile }:
 
 stdenv.mkDerivation rec {
-  version = "0.3.8";
+  version = "0.3.9";
   name = "weechat-${version}";
 
   src = fetchurl {
     url = "http://weechat.org/files/src/${name}.tar.gz";
-    sha256 = "4293eb9d29f11b8ee8c301049d57e535acbea677bc1dc41ab12fe1bb8af0f10e";
+    sha256 = "8666c788cbb212036197365df3ba3cf964a23e4f644d76ea51d66dbe3be593bb";
   };
 
   buildInputs = 
diff --git a/pkgs/applications/networking/irc/xchat/default.nix b/pkgs/applications/networking/irc/xchat/default.nix
index 4b9cef2d5011..1999bd030cbc 100644
--- a/pkgs/applications/networking/irc/xchat/default.nix
+++ b/pkgs/applications/networking/irc/xchat/default.nix
@@ -9,6 +9,8 @@ stdenv.mkDerivation {
   buildInputs = [pkgconfig tcl gtk];
   configureFlags = "--disable-nls";
 
+  patches = [ ./glib-top-level-header.patch ];
+
   meta = {
     description = "IRC client using GTK";
     homepage = http://www.xchat.org;
diff --git a/pkgs/applications/networking/irc/xchat/glib-top-level-header.patch b/pkgs/applications/networking/irc/xchat/glib-top-level-header.patch
new file mode 100644
index 000000000000..b1413b357537
--- /dev/null
+++ b/pkgs/applications/networking/irc/xchat/glib-top-level-header.patch
@@ -0,0 +1,75 @@
+diff -Naur xchat-2.8.8-orig/src/common/dbus/dbus-plugin.c xchat-2.8.8/src/common/dbus/dbus-plugin.c
+--- xchat-2.8.8-orig/src/common/dbus/dbus-plugin.c	2009-08-16 05:40:15.000000000 -0400
++++ xchat-2.8.8/src/common/dbus/dbus-plugin.c	2012-07-15 23:07:33.678948703 -0400
+@@ -24,7 +24,7 @@
+ #include <config.h>
+ #include <dbus/dbus-glib.h>
+ #include <dbus/dbus-glib-lowlevel.h>
+-#include <glib/gi18n.h>
++#include <glib.h>
+ #include "../xchat-plugin.h"
+ 
+ #define PNAME _("remote access")
+diff -Naur xchat-2.8.8-orig/src/common/modes.c xchat-2.8.8/src/common/modes.c
+--- xchat-2.8.8-orig/src/common/modes.c	2010-05-29 21:52:18.000000000 -0400
++++ xchat-2.8.8/src/common/modes.c	2012-07-15 23:07:33.654948723 -0400
+@@ -20,7 +20,7 @@
+ #include <stdlib.h>
+ #include <stdio.h>
+ #include <glib.h>
+-#include <glib/gprintf.h>
++#include <glib.h>
+ 
+ #include "xchat.h"
+ #include "xchatc.h"
+diff -Naur xchat-2.8.8-orig/src/common/servlist.c xchat-2.8.8/src/common/servlist.c
+--- xchat-2.8.8-orig/src/common/servlist.c	2010-05-16 03:24:26.000000000 -0400
++++ xchat-2.8.8/src/common/servlist.c	2012-07-15 23:07:33.643948732 -0400
+@@ -24,7 +24,7 @@
+ #include <unistd.h>
+ 
+ #include "xchat.h"
+-#include <glib/ghash.h>
++#include <glib.h>
+ 
+ #include "cfgfiles.h"
+ #include "fe.h"
+diff -Naur xchat-2.8.8-orig/src/common/text.c xchat-2.8.8/src/common/text.c
+--- xchat-2.8.8-orig/src/common/text.c	2010-05-29 22:14:41.000000000 -0400
++++ xchat-2.8.8/src/common/text.c	2012-07-15 23:07:33.671948706 -0400
+@@ -28,7 +28,7 @@
+ #include <sys/mman.h>
+ 
+ #include "xchat.h"
+-#include <glib/ghash.h>
++#include <glib.h>
+ #include "cfgfiles.h"
+ #include "chanopt.h"
+ #include "plugin.h"
+diff -Naur xchat-2.8.8-orig/src/common/util.c xchat-2.8.8/src/common/util.c
+--- xchat-2.8.8-orig/src/common/util.c	2009-08-16 05:40:16.000000000 -0400
++++ xchat-2.8.8/src/common/util.c	2012-07-15 23:07:33.649948724 -0400
+@@ -39,7 +39,7 @@
+ #include <errno.h>
+ #include "xchat.h"
+ #include "xchatc.h"
+-#include <glib/gmarkup.h>
++#include <glib.h>
+ #include <ctype.h>
+ #include "util.h"
+ #include "../../config.h"
+diff -Naur xchat-2.8.8-orig/src/common/xchat.h xchat-2.8.8/src/common/xchat.h
+--- xchat-2.8.8-orig/src/common/xchat.h	2009-08-16 05:40:16.000000000 -0400
++++ xchat-2.8.8/src/common/xchat.h	2012-07-15 23:08:20.855910521 -0400
+@@ -1,10 +1,6 @@
+ #include "../../config.h"
+ 
+-#include <glib/gslist.h>
+-#include <glib/glist.h>
+-#include <glib/gutils.h>
+-#include <glib/giochannel.h>
+-#include <glib/gstrfuncs.h>
++#include <glib.h>
+ #include <time.h>			/* need time_t */
+ 
+ #ifndef XCHAT_H
diff --git a/pkgs/applications/networking/mailreaders/sylpheed/default.nix b/pkgs/applications/networking/mailreaders/sylpheed/default.nix
index de0465622746..bf9e19642b83 100644
--- a/pkgs/applications/networking/mailreaders/sylpheed/default.nix
+++ b/pkgs/applications/networking/mailreaders/sylpheed/default.nix
@@ -5,25 +5,31 @@
 , gpgme ? null
 }:
 
+with stdenv.lib;
+
 assert sslSupport -> openssl != null;
 assert gpgSupport -> gpgme != null;
 
 stdenv.mkDerivation {
-  name = "sylpheed-2.7.1";
+  name = "sylpheed-3.2";
 
   src = fetchurl {
-    url = http://sylpheed.sraoss.jp/sylpheed/v2.7/sylpheed-2.7.1.tar.bz2;
-    sha256 = "08sfz159y8hi3lky98m6p4nkfiima749lza8gf3s3vp2niylbdlb";
+    url = http://sylpheed.sraoss.jp/sylpheed/v3.2/sylpheed-3.2.0.tar.bz2;
+    sha256 = "1cdjwn1f8rgcxzfxj7j7qvacmaw4zfhnip81q4n5lj5d6rj7rssa";
   };
 
-  buildInputs = [
-    pkgconfig gtk
-    (if sslSupport then openssl else null)
-    (if gpgSupport then gpgme else null)
-  ];
+  buildInputs =
+    [ pkgconfig gtk ]
+    ++ optional sslSupport openssl
+    ++ optional gpgSupport gpgme;
 
-  configureFlags = [
-    (if sslSupport then "--enable-ssl" else null)
-  ];
+  configureFlags = optionalString sslSupport "--enable-ssl";
 
+  meta = {
+    homepage = http://sylpheed.sraoss.jp/en/;
+    description = "A lightweight and user-friendly e-mail client";
+    maintainers = [ maintainers.eelco ];
+    platforms = platforms.linux;
+    license = "GPL";
+  };
 }
diff --git a/pkgs/applications/networking/mailreaders/thunderbird/11.x.nix b/pkgs/applications/networking/mailreaders/thunderbird/15.x.nix
index 0d36bf887397..0deee99eadf3 100644
--- a/pkgs/applications/networking/mailreaders/thunderbird/11.x.nix
+++ b/pkgs/applications/networking/mailreaders/thunderbird/15.x.nix
@@ -2,6 +2,7 @@
 , libIDL, dbus_glib, bzip2, alsaLib, nspr, yasm, mesa, nss
 , libnotify, cairo, pixman, fontconfig
 , libjpeg
+, pythonPackages
 
 , # If you want the resulting program to call itself "Thunderbird"
   # instead of "Shredder", enable this option.  However, those
@@ -9,47 +10,26 @@
   # Mozilla Foundation, see
   # http://www.mozilla.org/foundation/trademarks/.
   enableOfficialBranding ? false
-
 }:
 
-let version = "11.0.1";
-
-    # This patch may become necessary when we use a more recent version of libpng
-    # for now, it's actually not needed
-    # pngPatch = fetchurl {
-    #   url = http://www.linuxfromscratch.org/patches/blfs/svn/thunderbird-9.0.1-libpng-1.5-1.patch;
-    #   sha256 = "8454bdde3be8dc37c9f5e6f597914f0a585ff4b357d3fc86c6c9f80208b6068d";
-    # };
-in
+let version = "15.0.1"; in
 
 stdenv.mkDerivation {
   name = "thunderbird-${version}";
 
   src = fetchurl {
-    url = "ftp://ftp.mozilla.org/pub/thunderbird/releases/11.0.1/source/thunderbird-${version}.source.tar.bz2";
-    sha1 = "037344b451b1c031472d92f96d401b15d8e3e7d3";
+    url = "ftp://ftp.mozilla.org/pub/thunderbird/releases/${version}/source/thunderbird-${version}.source.tar.bz2";
+    sha1 = "688bed2b48abda000b489f3c84de0ba9f93818f0";
   };
 
   enableParallelBuilding = true;
 
   buildInputs =
     [ pkgconfig perl python zip unzip bzip2 gtk dbus_glib alsaLib libIDL nspr
-      libnotify cairo pixman fontconfig yasm mesa /* nss */
-      libjpeg
+      libnotify cairo pixman fontconfig yasm mesa nss
+      libjpeg pythonPackages.sqlite3
     ];
 
-  # fix some paths in pngPatch
-  # prePatch = ''
-  #   substitute ${pngPatch} png.patch --replace "mozilla-release/modules/" "comm-release/mozilla/modules/"
-  #   '';
-
-  patches = [
-    # "png.patch" # produced by postUnpack
-
-    # Fix weird dependencies such as a so file which depends on "-lpthread".
-    # ./thunderbird-build-deps.patch
-  ];
-
   configureFlags =
     [ "--enable-application=mail"
       "--enable-optimize"
@@ -58,11 +38,13 @@ stdenv.mkDerivation {
       "--enable-strip"
       "--with-pthreads"
       "--with-system-jpeg"
-      # "--with-system-png"  # png 1.5.x not merged in nixpkgs yet
+      #"--with-system-png"
       "--with-system-zlib"
       "--with-system-bz2"
       "--with-system-nspr"
-      "--enable-system-cairo"
+      "--with-system-nss"
+      # Broken: https://bugzilla.mozilla.org/show_bug.cgi?id=722975
+      #"--enable-system-cairo"
       "--disable-crashreporter"
       "--disable-necko-wifi"
       "--disable-webm"
@@ -84,10 +66,7 @@ stdenv.mkDerivation {
 
   postInstall =
     ''
-      # Fix some references to /bin paths in the Xulrunner shell script.
-      substituteInPlace $out/lib/thunderbird-*/thunderbird \
-          --replace /bin/pwd "$(type -tP pwd)" \
-          --replace /bin/ls "$(type -tP ls)"
+      rm -rf $out/include $out/lib/thunderbird-devel-* $out/share/idl
 
       # Create a desktop item.
       mkdir -p $out/share/applications
@@ -109,7 +88,7 @@ stdenv.mkDerivation {
       # Official branding implies thunderbird name and logo cannot be reuse,
       # see http://www.mozilla.org/foundation/licensing.html
       if enableOfficialBranding then licenses.proprietary else licenses.mpl11;
-    maintainers = with maintainers; [ pierron ];
-    platforms = with platforms; linux;
+    maintainers = maintainers.pierron;
+    platforms = platforms.linux;
   };
 }
diff --git a/pkgs/applications/networking/sniffers/wireshark/default.nix b/pkgs/applications/networking/sniffers/wireshark/default.nix
index aca0203ca6c9..a5f0ddea28f6 100644
--- a/pkgs/applications/networking/sniffers/wireshark/default.nix
+++ b/pkgs/applications/networking/sniffers/wireshark/default.nix
@@ -4,14 +4,14 @@
 }:
 
 let
-  version = "1.6.2";
+  version = "1.8.3";
 in
 stdenv.mkDerivation {
   name = "wireshark-${version}";
 
   src = fetchurl {
     url = "mirror://sourceforge/wireshark/wireshark-${version}.tar.bz2";
-    sha256 = "0zqy8ws05xz36y49azf5lrwzgfz26h7f8d27xjc89hlqrqagahsk";
+    sha256 = "1crg59kkxb7lw1wpfg52hd4l00hq56pyg7f40c7sgqmm0vsmza43";
   };
 
   buildInputs = [perl pkgconfig gtk libpcap flex bison gnutls libgcrypt
diff --git a/pkgs/applications/office/gnucash/default.nix b/pkgs/applications/office/gnucash/default.nix
index a2c3ed5d6bae..26879a6f660f 100644
--- a/pkgs/applications/office/gnucash/default.nix
+++ b/pkgs/applications/office/gnucash/default.nix
@@ -9,11 +9,11 @@
  */
 
 stdenv.mkDerivation rec {
-  name = "gnucash-2.4.10";
+  name = "gnucash-2.4.11";
 
   src = fetchurl {
     url = "mirror://sourceforge/gnucash/${name}.tar.bz2";
-    sha256 = "1k76b6hnsmljggxsq5l9w94krfmhx58ij8jcxf72p0ddnlimdrjj";
+    sha256 = "0qbpgd6spclkmwryi66cih0igi5a6pmsnk41mmnscpfpz1mddhwk";
   };
 
   buildInputs = [
diff --git a/pkgs/applications/office/openoffice/libreoffice-srcs.nix b/pkgs/applications/office/openoffice/libreoffice-srcs.nix
index 47630e5cfdf3..357b703d84d6 100644
--- a/pkgs/applications/office/openoffice/libreoffice-srcs.nix
+++ b/pkgs/applications/office/openoffice/libreoffice-srcs.nix
@@ -64,6 +64,10 @@
   md5 = "0be45d54cc5e1c2e3102e32b8c190346";
 }
 {
+  name = "liberation-fonts-ttf-2.00.0.tar.gz";
+  md5 = "cfbf1ac6f61bf6cf45342a0cc9381be5";
+}
+{
   name = "swingExSrc.zip";
   md5 = "35c94d2df8893241173de1d16b6034c0";
 }
diff --git a/pkgs/applications/office/openoffice/libreoffice.nix b/pkgs/applications/office/openoffice/libreoffice.nix
index d336266ccaf1..065f439427cf 100644
--- a/pkgs/applications/office/openoffice/libreoffice.nix
+++ b/pkgs/applications/office/openoffice/libreoffice.nix
@@ -16,10 +16,10 @@ let
   langsSpaces = stdenv.lib.concatStringsSep " " langs;
   major = "3";
   minor = "6";
-  patch = "1";
+  patch = "2";
   tweak = "2";
   subdir = "${major}.${minor}.${patch}";
-  version = "${subdir}.${tweak}";
+  version = "${subdir}${if tweak == "" then "" else "."}${tweak}";
   fetchThirdParty = {name, md5}: fetchurl {
     inherit name md5;
     url = "http://dev-www.libreoffice.org/src/${md5}-${name}";
@@ -36,17 +36,17 @@ let
       }) ] ++ (map fetchThirdParty (import ./libreoffice-srcs.nix));
     translations = fetchSrc {
       name = "translations";
-      sha256 = "0id4ad8h3fl4s2ax6r4w4af74xvagkv0qwy50f483lqq3a3pl7fl";
+      sha256 = "a6ef65d5acfe9be19a3d4d743cd23a1017733f651ffc57f5773a24704a282c33";
     };
 
     help = fetchSrc {
       name = "help";
-      sha256 = "0jd3l3rkhmdvrvgklkmrh9zsg9hlv3vhy6s97fnzhpzr90sjqrs1";
+      sha256 = "55ec6ef5eef4bbf2298c3b864f67c8424ebb5ccbe7bcd6ca59abba2867989e31";
     };
 
     core = fetchSrc {
       name = "core";
-      sha256 = "12zc0zviy1p3gk1v5nm4ks4rzscn68lpnl3kis4q693zhsk8jyh3";
+      sha256 = "5ec07ffacec09c4dcee9246cb132f7a59a618b395835e781735fd61bf47e8d37";
     };
   };
 in
diff --git a/pkgs/applications/science/astronomy/gravit/default.nix b/pkgs/applications/science/astronomy/gravit/default.nix
index 388e65c9f753..820b4fb2979a 100644
--- a/pkgs/applications/science/astronomy/gravit/default.nix
+++ b/pkgs/applications/science/astronomy/gravit/default.nix
@@ -1,24 +1,16 @@
-{ stdenv, fetchurl, SDL, SDL_ttf, SDL_image, mesa, lua5_0 }:
+{ stdenv, fetchurl, SDL, SDL_ttf, SDL_image, mesa, lua5_1, automake, autoconf }:
 
-let
-  name = "gravit-0.4.2";
-in
-stdenv.mkDerivation {
-  inherit name;
+stdenv.mkDerivation rec {
+  name = "gravit-0.5.0";
 
   src = fetchurl {
-    url = "http://gravit.slowchop.com/dist/${name}.tar.gz";
-    sha256 = "f37f3ac256a4acbf575f709addaae8cb01eda4f85537affa28c45f2df6fddb07";
+    url = "http://gravit.slowchop.com/media/downloads/${name}.tgz";
+    sha256 = "0lyw0skrkb04s16vgz7ggswjrdxk1h23v5s85s09gjxzjp1xd3xp";
   };
 
-  buildInputs = [mesa SDL SDL_ttf SDL_image lua5_0];
+  buildInputs = [mesa SDL SDL_ttf SDL_image lua5_1 automake autoconf];
 
-  configureFlags = "CFLAGS=-O3 CXXFLAGS=-O3";
-
-  postInstall = ''
-    mv $out/etc/gravit $out/share/gravit/sample-config
-    rmdir $out/etc
-  '';
+  preConfigure = "sh autogen.sh";
 
   meta = {
     homepage = "http://gravit.slowchop.com";
diff --git a/pkgs/applications/science/astronomy/stellarium/default.nix b/pkgs/applications/science/astronomy/stellarium/default.nix
index b651370db216..e890ee58307c 100644
--- a/pkgs/applications/science/astronomy/stellarium/default.nix
+++ b/pkgs/applications/science/astronomy/stellarium/default.nix
@@ -1,28 +1,24 @@
 {stdenv, fetchurl, cmake, freetype, libpng, mesa, gettext, openssl, qt4, perl, libiconv}:
 
 let
-  name = "stellarium-0.11.3";
+  name = "stellarium-0.11.4";
 in
 stdenv.mkDerivation {
   inherit name;
 
   src = fetchurl {
     url = "mirror://sourceforge/stellarium/${name}.tar.gz";
-    sha256 = "f7c7eeaefcdc54c0fb8766f09e0c838acb742719adcdf12a6c1e12d55ecd6ac3";
+    sha256 = "8ad5e9878eb36c2c27f4754dcfc69279123e0eae02cc388074e3cf9b23746535";
   };
 
   buildInputs = [ cmake freetype libpng mesa gettext openssl qt4 perl libiconv ];
 
-  preConfigure = ''
-    sed -i -e '/typedef void (\*__GLXextFuncPtr)(void);/d' src/core/external/GLee.h
-  '';
-
   enableParallelBuilding = true;
 
   meta = {
-    description = "an free open source planetarium";
-    homepage = http://stellarium.org/;
-    license = "GPL2";
+    description = "Free open-source planetarium";
+    homepage = "http://stellarium.org/";
+    license = stdenv.lib.licenses.gpl2;
 
     platforms = stdenv.lib.platforms.linux; # should be mesaPlatforms, but we don't have qt on darwin
     maintainers = [ stdenv.lib.maintainers.simons ];
diff --git a/pkgs/applications/science/math/maxima/default.nix b/pkgs/applications/science/math/maxima/default.nix
index 41c21f94b011..18d145b6dde2 100644
--- a/pkgs/applications/science/math/maxima/default.nix
+++ b/pkgs/applications/science/math/maxima/default.nix
@@ -2,7 +2,7 @@
 
 let
   name    = "maxima";
-  version = "5.27.0";
+  version = "5.28.0";
 
   searchPath =
     stdenv.lib.makeSearchPath "bin"
@@ -13,7 +13,7 @@ stdenv.mkDerivation {
 
   src = fetchurl {
     url = "mirror://sourceforge/${name}/${name}-${version}.tar.gz";
-    sha256 = "9006803714f1385221c4395697fad53f125a13d29b50b188d045d08e25f8dca7";
+    sha256 = "d73e925f0116ba361bf4390c80e24d4fa763f647cc1fc4cc06bbf40ceb3facda";
   };
 
   buildInputs = [sbcl texinfo perl makeWrapper];
diff --git a/pkgs/applications/science/math/wxmaxima/default.nix b/pkgs/applications/science/math/wxmaxima/default.nix
index 52048dc9d197..559c4448c316 100644
--- a/pkgs/applications/science/math/wxmaxima/default.nix
+++ b/pkgs/applications/science/math/wxmaxima/default.nix
@@ -2,14 +2,14 @@
 
 let
   name    = "wxmaxima";
-  version = "12.04.0";
+  version = "12.09.0";
 in
 stdenv.mkDerivation {
   name = "${name}-${version}";
 
   src = fetchurl {
     url = "mirror://sourceforge/${name}/wxMaxima-${version}.tar.gz";
-    sha256 = "60110507e0a63738a1f420b22697eaac9bea3866122e072dcd697077e8744824";
+    sha256 = "5803ab62fc791bcb87f0d0f38357dba6fccc4efa61cb9f709e142c2954b1305d";
   };
 
   buildInputs = [wxGTK maxima makeWrapper];
diff --git a/pkgs/applications/version-management/git-and-tools/default.nix b/pkgs/applications/version-management/git-and-tools/default.nix
index 6ee19832750c..e12d4157ec23 100644
--- a/pkgs/applications/version-management/git-and-tools/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/default.nix
@@ -43,10 +43,13 @@ rec {
   });
 
   gitAnnex = lib.makeOverridable (import ./git-annex) {
-    inherit stdenv fetchurl libuuid rsync findutils curl perl git ikiwiki which coreutils openssh;
-    inherit (haskellPackages) ghc MissingH utf8String pcreLight SHA dataenc
-      HTTP testpack hS3 mtl network hslogger hxt json liftedBase monadControl IfElse
-      QuickCheck bloomfilter editDistance stm hinotify;
+    inherit stdenv fetchurl perl coreutils git libuuid rsync findutils curl ikiwiki which openssh;
+    inherit (haskellPackages) ghc bloomfilter dataenc editDistance hinotify hS3 hslogger HTTP
+      blazeBuilder blazeHtml caseInsensitive IfElse json liftedBase MissingH monadControl mtl
+      network pcreLight QuickCheck SHA stm utf8String networkInfo dbus
+      clientsession cryptoApi dataDefault extensibleExceptions filepath hamlet
+      httpTypes networkMulticast text time transformers transformersBase wai
+      waiLogger warp yesod yesodDefault yesodStatic testpack;
   };
 
   qgit = import ./qgit {
diff --git a/pkgs/applications/version-management/git-and-tools/git-annex/default.nix b/pkgs/applications/version-management/git-and-tools/git-annex/default.nix
index 86c8e9717b16..13b3d263ad40 100644
--- a/pkgs/applications/version-management/git-and-tools/git-annex/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/git-annex/default.nix
@@ -1,27 +1,35 @@
-{ stdenv, fetchurl, curl, dataenc, findutils, ghc, git, hS3, hslogger, HTTP, hxt
-, ikiwiki, json, libuuid, MissingH, monadControl, mtl, network, pcreLight, perl
-, QuickCheck, rsync, SHA, testpack, utf8String, which, liftedBase, coreutils
-, IfElse, bloomfilter, editDistance, openssh, stm, hinotify
+{ stdenv, ghc, fetchurl, perl, coreutils, git, libuuid, rsync
+, findutils, curl, ikiwiki, which, openssh
+, blazeBuilder, blazeHtml, bloomfilter, caseInsensitive
+, clientsession, cryptoApi, dataDefault, dataenc, dbus
+, editDistance, extensibleExceptions, filepath, hamlet, hinotify
+, hS3, hslogger, HTTP, httpTypes, IfElse, json, liftedBase
+, MissingH, monadControl, mtl, network, networkInfo
+, networkMulticast, pcreLight, QuickCheck, SHA, stm, text, time
+, transformers, transformersBase, utf8String, wai, waiLogger, warp
+, yesod, yesodDefault, yesodStatic, testpack
 }:
 
 let
-  version = "3.20120825";
+  version = "3.20121010";
 in
 stdenv.mkDerivation {
   name = "git-annex-${version}";
 
   src = fetchurl {
     url = "http://git.kitenet.net/?p=git-annex.git;a=snapshot;sf=tgz;h=refs/tags/${version}";
-    sha256 = "edffe6a99d07599f62d4d5f6823de8a830abe8977c7671fd6eb21aeaebc0b8d0";
+    sha256 = "4db543af6cbcb2d92c808c01969425d1fd1a916b37386dcdfe1a3101876ccde2";
     name = "git-annex-${version}.tar.gz";
   };
 
-  buildInputs = [
-    curl dataenc findutils ghc git hS3 hslogger HTTP hxt ikiwiki json
-    libuuid MissingH monadControl mtl network pcreLight perl QuickCheck
-    rsync SHA testpack utf8String which liftedBase IfElse bloomfilter
-    editDistance openssh stm hinotify
-  ];
+  buildInputs = [ ghc git libuuid rsync findutils curl ikiwiki which
+    openssh blazeBuilder blazeHtml bloomfilter caseInsensitive
+    clientsession cryptoApi dataDefault dataenc dbus editDistance
+    extensibleExceptions filepath hamlet hinotify hS3 hslogger HTTP
+    httpTypes IfElse json liftedBase MissingH monadControl mtl network
+    networkInfo networkMulticast pcreLight QuickCheck SHA stm text time
+    transformers transformersBase utf8String wai waiLogger warp yesod
+    yesodDefault yesodStatic testpack ];
 
   checkTarget = "test";
   doCheck = true;
@@ -29,7 +37,7 @@ stdenv.mkDerivation {
   # The 'add_url' test fails because it attempts to use the network.
   preConfigure = ''
     makeFlagsArray=( PREFIX=$out )
-    sed -i -e 's|#!/usr/bin/perl|#!${perl}/bin/perl|' mdwn2man
+    sed -i -e 's|#!/usr/bin/perl|#!${perl}/bin/perl|' Build/mdwn2man
     sed -i -e 's|"cp |"${coreutils}/bin/cp |' -e 's|"rm -f |"${coreutils}/bin/rm -f |' test.hs
   '';
 
diff --git a/pkgs/applications/version-management/git-and-tools/git/default.nix b/pkgs/applications/version-management/git-and-tools/git/default.nix
index 916aa69b05fd..dcfaaa74faeb 100644
--- a/pkgs/applications/version-management/git-and-tools/git/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/git/default.nix
@@ -9,7 +9,7 @@
 
 let
 
-  version = "1.7.12.1";
+  version = "1.7.12.4";
 
   svn = subversionClient.override { perlBindings = true; };
 
@@ -20,7 +20,7 @@ stdenv.mkDerivation {
 
   src = fetchurl {
     url = "http://git-core.googlecode.com/files/git-${version}.tar.gz";
-    sha256 = "a0c2b7e122ac2e40fe5b69baeeaac24b237a1341f08ba848cadaa835a0dbcfcd";
+    sha256 = "1nk3igf7mgcj9yvpyrnp3i9725fljxi96icmzalfzd8nkj94br8p";
   };
 
   patches = [ ./docbook2texi.patch ];
diff --git a/pkgs/applications/video/MPlayer/default.nix b/pkgs/applications/video/MPlayer/default.nix
index 566089201cda..13ebd39734ee 100644
--- a/pkgs/applications/video/MPlayer/default.nix
+++ b/pkgs/applications/video/MPlayer/default.nix
@@ -1,36 +1,41 @@
-{ alsaSupport ? true, xvSupport ? true, theoraSupport ? true, cacaSupport ? true
-, xineramaSupport ? true, randrSupport ? true, dvdnavSupport ? true
-, stdenv, fetchurl, fetchsvn, fetchgit, x11, freetype, fontconfig, zlib
-, alsaLib ? null, libXv ? null, libtheora ? null, libcaca ? null
-, libXinerama ? null, libXrandr ? null, libdvdnav ? null
-, cdparanoia ? null, cddaSupport ? true
-, amrnb ? null, amrwb ? null, amrSupport ? false
-, x11Support ? true, libX11 ? null, libXext ? null
-, jackaudioSupport ? false, jackaudio ? null
-, x264Support ? false, x264 ? null
-, xvidSupport ? false, xvidcore ? null
+{ stdenv, fetchurl, freetype, pkgconfig, yasm, freefont_ttf
+, x11Support ? true, libX11 ? null, libXext ? null, mesa ? null
+, xineramaSupport ? true, libXinerama ? null
+, xvSupport ? true, libXv ? null
+, alsaSupport ? true, alsaLib ? null
+, screenSaverSupport ? true, libXScrnSaver ? null
+, vdpauSupport ? false, libvdpau ? null
+, cddaSupport ? true, cdparanoia ? null
+, dvdnavSupport ? true, libdvdnav ? null
+, bluraySupport ? true, libbluray ? null
+, amrSupport ? false, amrnb ? null, amrwb ? null
+, cacaSupport ? true, libcaca ? null
 , lameSupport ? true, lame ? null
 , speexSupport ? true, speex ? null
-, screenSaverSupport ? true, libXScrnSaver
-, pulseSupport ? false, pulseaudio
-, mesa, pkgconfig, unzip, yasm, freefont_ttf
-, vdpauSupport ? false, libvdpau ? null
+, theoraSupport ? true, libtheora ? null
+, x264Support ? false, x264 ? null
+, jackaudioSupport ? false, jackaudio ? null
+, pulseSupport ? false, pulseaudio ? null
 }:
 
-assert alsaSupport -> alsaLib != null;
-assert x11Support -> libX11 != null;
-assert xvSupport -> (libXv != null && x11Support);
-assert theoraSupport -> libtheora != null;
-assert cacaSupport -> libcaca != null;
+assert x11Support -> (libX11 != null && libXext != null && mesa != null);
 assert xineramaSupport -> (libXinerama != null && x11Support);
-assert randrSupport -> (libXrandr != null && x11Support);
-assert dvdnavSupport -> libdvdnav != null;
-assert cddaSupport -> cdparanoia != null;
-assert jackaudioSupport -> jackaudio != null;
-assert amrSupport -> (amrnb != null && amrwb != null);
+assert xvSupport -> (libXv != null && x11Support);
+assert alsaSupport -> alsaLib != null;
 assert screenSaverSupport -> libXScrnSaver != null;
 assert vdpauSupport -> libvdpau != null;
+assert cddaSupport -> cdparanoia != null;
+assert dvdnavSupport -> libdvdnav != null;
+assert bluraySupport -> libbluray != null;
+assert amrSupport -> (amrnb != null && amrwb != null);
+assert cacaSupport -> libcaca != null;
+assert lameSupport -> lame != null;
 assert speexSupport -> speex != null;
+assert theoraSupport -> libtheora != null;
+assert x264Support -> x264 != null;
+assert jackaudioSupport -> jackaudio != null;
+assert pulseSupport -> pulseaudio != null;
+
 
 let
 
@@ -64,20 +69,12 @@ let
     };
   } else null;
 
-  ffmpegGit = fetchgit {
-    url = "git://git.videolan.org/ffmpeg.git";
-    rev = "9e53f62be1a171eaf9620958c225d42cf5142a30";
-    sha256 = "be0ef2a394c82a0eee0be66bc0b943d37efb90f74ce1030aa89606109434c943";
-  };
-
-  mplayerRev = "34586";
-
 in
 
 stdenv.mkDerivation rec {
-  name = "mplayer-${mplayerRev}";
+  name = "mplayer-1.1";
 
-  src = fetchsvn {
+  src = fetchurl {
     # Old kind of URL:
     # url = http://nixos.org/tarballs/mplayer-snapshot-20101227.tar.bz2;
     # Snapshot I took on 20110423
@@ -86,64 +83,72 @@ stdenv.mkDerivation rec {
     #url = http://www.mplayerhq.hu/MPlayer/releases/mplayer-export-snapshot.tar.bz2;
     #sha256 = "cc1b3fda75b172f02c3f46581cfb2c17f4090997fe9314ad046e464a76b858bb";
 
-    url = "svn://svn.mplayerhq.hu/mplayer/trunk";
-    rev = "${mplayerRev}";
-    sha256 = "5688add3256b5de8e0410194232aaaeb01531bb507459ffe4f07e69cb2d81bd7";
+    url = "http://www.mplayerhq.hu/MPlayer/releases/MPlayer-1.1.tar.xz";
+    sha256 = "173cmsfz7ckzy1hay9mpnc5as51127cfnxl20b521d2jvgm4gjvn";
   };
 
   prePatch = ''
     sed -i /^_install_strip/d configure
   '';
 
-  buildInputs =
-    [ freetype zlib pkgconfig ]
-    ++ stdenv.lib.optionals x11Support [ libX11 libXext mesa ]
-    ++ stdenv.lib.optional alsaSupport alsaLib
-    ++ stdenv.lib.optional xvSupport libXv
-    ++ stdenv.lib.optional theoraSupport libtheora
-    ++ stdenv.lib.optional cacaSupport libcaca
-    ++ stdenv.lib.optional xineramaSupport libXinerama
-    ++ stdenv.lib.optional randrSupport libXrandr
-    ++ stdenv.lib.optionals dvdnavSupport [ libdvdnav libdvdnav.libdvdread ]
-    ++ stdenv.lib.optional cddaSupport cdparanoia
-    ++ stdenv.lib.optional jackaudioSupport jackaudio
-    ++ stdenv.lib.optionals amrSupport [ amrnb amrwb ]
-    ++ stdenv.lib.optional x264Support x264
-    ++ stdenv.lib.optional xvidSupport xvidcore
-    ++ stdenv.lib.optional pulseSupport pulseaudio
-    ++ stdenv.lib.optional screenSaverSupport libXScrnSaver
-    ++ stdenv.lib.optional lameSupport lame
-    ++ stdenv.lib.optional vdpauSupport libvdpau
-    ++ stdenv.lib.optional speexSupport speex;
+  buildInputs = with stdenv.lib;
+    [ freetype pkgconfig ]
+    ++ optionals x11Support [ libX11 libXext mesa ]
+    ++ optional alsaSupport alsaLib
+    ++ optional xvSupport libXv
+    ++ optional theoraSupport libtheora
+    ++ optional cacaSupport libcaca
+    ++ optional xineramaSupport libXinerama
+    ++ optional dvdnavSupport libdvdnav
+    ++ optional bluraySupport libbluray
+    ++ optional cddaSupport cdparanoia
+    ++ optional jackaudioSupport jackaudio
+    ++ optionals amrSupport [ amrnb amrwb ]
+    ++ optional x264Support x264
+    ++ optional pulseSupport pulseaudio
+    ++ optional screenSaverSupport libXScrnSaver
+    ++ optional lameSupport lame
+    ++ optional vdpauSupport libvdpau
+    ++ optional speexSupport speex;
 
   buildNativeInputs = [ yasm ];
 
-  preConfigure = ''
-    cp -r ${ffmpegGit} ffmpeg
-    chmod u+w -R ffmpeg
-    sed -ie '1i#include "libavutil/intreadwrite.h"' ffmpeg/libavcodec/libmp3lame.c
-  '';
-
   postConfigure = ''
     echo CONFIG_MPEGAUDIODSP=yes >> config.mak
   '';
 
-  configureFlags = ''
-    ${if cacaSupport then "--enable-caca" else "--disable-caca"}
-    ${if dvdnavSupport then "--enable-dvdnav --enable-dvdread --disable-dvdread-internal" else ""}
-    ${if x264Support then "--enable-x264 --extra-libs=-lx264" else ""}
-    ${if codecs != null then "--codecsdir=${codecs}" else ""}
-    ${if (stdenv.isi686 || stdenv.isx86_64) then "--enable-runtime-cpudetection" else ""}
-    ${if x11Support then "--enable-x11" else ""}
-    ${stdenv.lib.optionalString speexSupport "--enable-speex"}
-    --disable-xanim
-    --disable-ivtv
-    --enable-vidix
-    --enable-fbdev
-    --disable-ossaudio
-  '';
+  configureFlags = with stdenv.lib;
+    ''
+      ${if x11Support then "--enable-x11 --enable-gl" else "--disable-x11 --disable-gl"}
+      ${if xineramaSupport then "--enable-xinerama" else "--disable-xinerama"}
+      ${if xvSupport then "--enable-xv" else "--disable-xv"}
+      ${if alsaSupport then "--enable-alsa" else "--disable-alsa"}
+      ${if screenSaverSupport then "--enable-xss" else "--disable-xss"}
+      ${if vdpauSupport then "--enable-vdpau" else "--disable-vdpau"}
+      ${if cddaSupport then "--enable-cdparanoia" else "--disable-cdparanoia"}
+      ${if dvdnavSupport then "--enable-dvdnav" else "--disable-dvdnav"}
+      ${if bluraySupport then "--enable-bluray" else "--disable-bluray"}
+      ${if amrSupport then "--enable-libopencore_amrnb" else "--disable-libopencore_amrnb"}
+      ${if cacaSupport then "--enable-caca" else "--disable-caca"}
+      ${if lameSupport then "--enable-mp3lame --disable-mp3lame-lavc" else "--disable-mp3lame --enable-mp3lame-lavc"}
+      ${if speexSupport then "--enable-speex" else "--disable-speex"}
+      ${if theoraSupport then "--enable-theora" else "--disable-theora"}
+      ${if x264Support then "--enable-x264 --disable-x264-lavc" else "--disable-x264 --enable-x264-lavc"}
+      ${if jackaudioSupport then "--enable-jack" else "--disable-jack"}
+      ${if pulseSupport then "--enable-pulse" else "--disable-pulse"}
+
+      ${optionalString (codecs != null) "--codecsdir=${codecs}"}
+      ${optionalString (stdenv.isi686 || stdenv.isx86_64) "--enable-runtime-cpudetection"}
+      --enable-freetype
+      --disable-xanim
+      --disable-ivtv
+      --disable-xvid --disable-xvid-lavc
+      --enable-vidix
+      --enable-fbdev
+      --disable-ossaudio
+    '';
 
-  NIX_LDFLAGS = if x11Support then "-lX11 -lXext" else "";
+  NIX_LDFLAGS = stdenv.lib.optionalString x11Support "-lX11 -lXext";
 
   # Provide a reasonable standard font.  Maybe we should symlink here.
   postInstall =
@@ -155,7 +160,7 @@ stdenv.mkDerivation rec {
   crossAttrs = {
     dontSetConfigureCross = true;
     # Some things (vidix) are nanonote specific. Once someone cares, we can make options from them.
-    preConfigure = preConfigure + ''
+    preConfigure = ''
       configureFlags="`echo $configureFlags |
         sed -e 's/--codecsdir[^ ]\+//' \
         -e 's/--enable-runtime-cpudetection//' `"
diff --git a/pkgs/applications/video/RealPlayer/default.nix b/pkgs/applications/video/RealPlayer/default.nix
index 12d98bc3362e..968846f1dcb1 100644
--- a/pkgs/applications/video/RealPlayer/default.nix
+++ b/pkgs/applications/video/RealPlayer/default.nix
@@ -1,4 +1,4 @@
-{stdenv, fetchurl, libstdcpp5, glib, pango, atk, gtk, libX11}:
+{stdenv, fetchurl, libstdcpp5, glib, pango, atk, gtk, libX11, makeWrapper}:
 
 # Note that RealPlayer 10 need libstdc++.so.5, i.e., GCC 3.3, not 3.4.
 
@@ -13,9 +13,7 @@ assert stdenv.system == "i686-linux";
     md5 = "d28b31261059231a3e93c7466f8153e6";
   };
 
-  makeWrapper = ../../../build-support/make-wrapper/make-wrapper.sh;
-
-  inherit libstdcpp5;
+  inherit libstdcpp5 makeWrapper;
   libPath = [libstdcpp5 glib pango atk gtk libX11];
   
 }) // {mozillaPlugin = "/real/mozilla";}
diff --git a/pkgs/applications/video/vlc/default.nix b/pkgs/applications/video/vlc/default.nix
index 65357acf00fd..3341a01101c0 100644
--- a/pkgs/applications/video/vlc/default.nix
+++ b/pkgs/applications/video/vlc/default.nix
@@ -10,11 +10,11 @@
 
 stdenv.mkDerivation rec {
   name = "vlc-${version}";
-  version = "2.0.3";
+  version = "2.0.4";
 
   src = fetchurl {
     url = "http://download.videolan.org/pub/videolan/vlc/${version}/${name}.tar.xz";
-    sha256 = "1lnjfpizgp8slj6i4fgk5wld6nfw08wfhkb1i1dvzbhmfigq1agv";
+    sha256 = "1dixankckfxf8xixfc32rc9mfsv6mx2lk5h13ym8bp4dsk86w1jf";
   };
 
   buildInputs =
diff --git a/pkgs/applications/virtualization/virtualbox/default.nix b/pkgs/applications/virtualization/virtualbox/default.nix
index 56387f9e5c40..3af9796136fb 100644
--- a/pkgs/applications/virtualization/virtualbox/default.nix
+++ b/pkgs/applications/virtualization/virtualbox/default.nix
@@ -10,7 +10,7 @@ with stdenv.lib;
 
 let
 
-  version = "4.1.22";
+  version = "4.2.0";
 
   forEachModule = action: ''
     for mod in \
@@ -34,7 +34,7 @@ in stdenv.mkDerivation {
 
   src = fetchurl {
     url = "http://download.virtualbox.org/virtualbox/${version}/VirtualBox-${version}.tar.bz2";
-    sha256 = "7abb506203dd0d69b4b408fd999b5b9a479a9adce5f80e9b5569641c053dd153";
+    sha256 = "895426ecac371bef4c070e8bcc9306f0c57dcbd6be25188d915b63ddde6f49e6";
   };
 
   buildInputs =
diff --git a/pkgs/applications/virtualization/virtualbox/guest-additions/default.nix b/pkgs/applications/virtualization/virtualbox/guest-additions/default.nix
index d903c44866c0..8c92b5e0ed36 100644
--- a/pkgs/applications/virtualization/virtualbox/guest-additions/default.nix
+++ b/pkgs/applications/virtualization/virtualbox/guest-additions/default.nix
@@ -1,15 +1,18 @@
 { stdenv, fetchurl, lib, patchelf, cdrkit, kernel, which, makeWrapper
 , libX11, libXt, libXext, libXmu, libXcomposite, libXfixes, libXrandr, libXcursor}:
 
-let version = "4.1.22"; in
+let version = "4.2.0"; in
 
 stdenv.mkDerivation {
   name = "VirtualBox-GuestAdditions-${version}";
+
   src = fetchurl {
     url = "http://download.virtualbox.org/virtualbox/${version}/VBoxGuestAdditions_${version}.iso";
-    sha256 = "5c7d9a4a31c8a926ba6dbae2b9704a561638e94ea0fc4f805a9231dd4f932d46";
+    sha256 = "ef274ecdcb48adec469656959e51c8468b6d3a7733ddf93f9a3713f77f1604f3";
   };
+
   KERN_DIR = "${kernel}/lib/modules/*/build";
+
   buildInputs = [ patchelf cdrkit makeWrapper ];
 
   installPhase = ''
@@ -101,9 +104,7 @@ stdenv.mkDerivation {
 
     # Install Xorg drivers
     mkdir -p $out/lib/xorg/modules/{drivers,input}
-    install -m 644 lib/VBoxGuestAdditions/vboxvideo_drv_19.so $out/lib/xorg/modules/drivers/vboxvideo_drv.so
-    # There doesn't appear to be a vboxmouse driver for Xorg 1.9. Was there ever?
-    #install -m 644 lib/VBoxGuestAdditions/vboxmouse_drv_19.so $out/lib/xorg/modules/input/vboxmouse_drv.so
+    install -m 644 lib/VBoxGuestAdditions/vboxvideo_drv_112.so $out/lib/xorg/modules/drivers/vboxvideo_drv.so
 
     # Install kernel modules
     cd src
diff --git a/pkgs/applications/window-managers/awesome/default.nix b/pkgs/applications/window-managers/awesome/default.nix
index 5e24a42d3a72..61f2145ff33c 100644
--- a/pkgs/applications/window-managers/awesome/default.nix
+++ b/pkgs/applications/window-managers/awesome/default.nix
@@ -48,3 +48,4 @@ stdenv.mkDerivation rec {
     platforms = with stdenv.lib.platforms; linux;
   };
 }
+
diff --git a/pkgs/applications/window-managers/i3/default.nix b/pkgs/applications/window-managers/i3/default.nix
index 14fd6ce41931..042e1a323a6d 100644
--- a/pkgs/applications/window-managers/i3/default.nix
+++ b/pkgs/applications/window-managers/i3/default.nix
@@ -3,17 +3,21 @@
   libXcursor, coreutils, perl }:
 
 stdenv.mkDerivation rec {
-  name = "i3-4.2";
+  name = "i3-${version}";
+  version = "4.3";
 
   src = fetchurl {
     url = "http://i3wm.org/downloads/${name}.tar.bz2";
-    sha256 = "e02c832820e8922a44e744e555294f8580c2f8e218c5c1029e52f1bde048732b";
+    sha256 = "895bf586092535efb2bc723ba599c71a027768115e56052f111fc8bb148db925";
   };
 
   buildInputs = [ which pkgconfig libxcb xcbutilkeysyms xcbutil bison xcbutilwm
     libstartup_notification libX11 pcre libev yajl flex libXcursor perl ];
 
-  patchPhase = "patchShebangs .";
+  patchPhase = ''
+    sed -i -e '/^# Pango/,/^$/d' common.mk
+    patchShebangs .
+  '';
 
   configurePhase = "makeFlags=PREFIX=$out";
 
diff --git a/pkgs/applications/window-managers/icewm/default.nix b/pkgs/applications/window-managers/icewm/default.nix
index 0b541d8104d3..3b1c3b4ad37a 100644
--- a/pkgs/applications/window-managers/icewm/default.nix
+++ b/pkgs/applications/window-managers/icewm/default.nix
@@ -16,6 +16,8 @@ stdenv.mkDerivation rec {
     sha256 = "0yw813d8amrl0n1fvdiyznxah92wcylj9kj1qhjc6h73d827h6na";
   };
 
+  patches = [ ./deprecated.patch ];
+
   NIX_LDFLAGS = "-lfontconfig";
 
   # The fuloong2f is not supported by 1.3.6 still
diff --git a/pkgs/applications/window-managers/icewm/deprecated.patch b/pkgs/applications/window-managers/icewm/deprecated.patch
new file mode 100644
index 000000000000..7d22dfe719bd
--- /dev/null
+++ b/pkgs/applications/window-managers/icewm/deprecated.patch
@@ -0,0 +1,23 @@
+http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/x11-wm/icewm/files/icewm-1.2.37-libX11-1.5.0-deprecated.patch?revision=1.1
+
+Description: Don't use "deprecated" as identifier, will FTBFS if another
+ library defines functions as deprecated.
+Author: Andreas Moog <amoog@ubuntu.com>
+Bug: https://sourceforge.net/tracker/?func=detail&aid=3494034&group_id=31&atid=100031
+Bug-Ubuntu: https://bugs.launchpad.net/bugs/935179
+Forwarded: Yes
+
+--- icewm-1.3.7.orig/src/base.h
++++ icewm-1.3.7/src/base.h
+@@ -2,9 +2,9 @@
+ #define __BASE_H
+ 
+ #if ( __GNUC__ == 3 && __GNUC_MINOR__ > 0 ) || __GNUC__ > 3
+-#define deprecated __attribute__((deprecated))
++#define ICEWM_deprecated __attribute__((deprecated))
+ #else
+-#define deprecated
++#define ICEWM_deprecated
+ #endif
+ 
+ /*** Atomar Data Types ********************************************************/
diff --git a/pkgs/build-support/setup-hooks/autoreconf.sh b/pkgs/build-support/setup-hooks/autoreconf.sh
new file mode 100644
index 000000000000..027c83221633
--- /dev/null
+++ b/pkgs/build-support/setup-hooks/autoreconf.sh
@@ -0,0 +1,11 @@
+preConfigurePhases+=" autoreconfPhase"
+
+for i in @autoconf@ @automake@ @libtool@; do
+    findInputs $i nativePkgs propagated-build-native-inputs
+done
+
+autoreconfPhase() {
+    runHook preAutoreconf
+    autoreconf ${autoreconfFlags:---install --force}
+    runHook postAutoreconf
+}
diff --git a/pkgs/build-support/make-wrapper/make-wrapper.sh b/pkgs/build-support/setup-hooks/make-wrapper.sh
index 41f2a59246d1..41f2a59246d1 100644
--- a/pkgs/build-support/make-wrapper/make-wrapper.sh
+++ b/pkgs/build-support/setup-hooks/make-wrapper.sh
diff --git a/pkgs/data/misc/xkeyboard-config/default.nix b/pkgs/data/misc/xkeyboard-config/default.nix
index fbe8e7ce1f5b..67bb79725fb9 100644
--- a/pkgs/data/misc/xkeyboard-config/default.nix
+++ b/pkgs/data/misc/xkeyboard-config/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl, perl, perlXMLParser, xkbcomp, gettext, intltool  }:
 
 stdenv.mkDerivation rec {
-  name = "xkeyboard-config-2.1";
+  name = "xkeyboard-config-2.7";
 
   src = fetchurl {
     url = "mirror://xorg/individual/data/xkeyboard-config/${name}.tar.bz2";
-    sha256 = "0x9hkb4iqz64gcabzkdcfy4p78sdhnpjwh54g8wx5bdgy9087vpr";
+    sha256 = "08c3mjdgp7c2v6lj5bymaczcazklsd7s1lxslxbngzmh5yhphd74";
   };
 
   buildInputs = [ gettext ];
@@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
   patches = [ ./eo.patch ];
 
   preConfigure = ''
-    configureFlags="--with-xkb-base=$out/etc/X11/xkb -with-xkb-rules-symlink=xorg,xfree86"
+    configureFlags="--with-xkb-base=$out/etc/X11/xkb -with-xkb-rules-symlink=xorg,xfree86 --disable-runtime-deps"
     sed -e 's@#!\s*/bin/bash@#! /bin/sh@' -i rules/merge.sh
   '';
 
diff --git a/pkgs/desktops/gnome-2/desktop/gvfs/default.nix b/pkgs/desktops/gnome-2/desktop/gvfs/default.nix
index 5455e95ef3f3..bae6c19c6ea6 100644
--- a/pkgs/desktops/gnome-2/desktop/gvfs/default.nix
+++ b/pkgs/desktops/gnome-2/desktop/gvfs/default.nix
@@ -1,19 +1,21 @@
 { stdenv, fetchurl, pkgconfig, dbus_libs, samba, libarchive, fuse, libgphoto2
 , libcdio, libxml2, libtool, glib, intltool, GConf, libgnome_keyring, libsoup
-, udev, avahi}:
+, udev, avahi, libxslt, docbook_xsl }:
 
-stdenv.mkDerivation {
-  name = "gvfs-1.10.1";
+stdenv.mkDerivation rec {
+  name = "gvfs-1.14.1";
 
   src = fetchurl {
-    url = mirror://gnome/sources/gvfs/1.10/gvfs-1.10.1.tar.xz;
-    sha256 = "124jrkph3cqr2pijmzzr6qwzy2vaq3vvndskzkxd0v5dwp7glc6d";
+    url = "mirror://gnome/sources/gvfs/1.14/${name}.tar.xz";
+    sha256 = "0af86cd7ee7b6daca144776bdf12f2f30d3e18fdd70b4da58e1a68cea4f6716a";
   };
 
   buildInputs =
     [ glib dbus_libs udev samba libarchive fuse libgphoto2 libcdio libxml2 GConf
-      libgnome_keyring libsoup avahi libtool
+      libgnome_keyring libsoup avahi libtool libxslt docbook_xsl
     ];
 
   buildNativeInputs = [ pkgconfig intltool ];
+
+  enableParallelBuilding = true;
 }
diff --git a/pkgs/desktops/gnome-2/platform/libgnomecups/default.nix b/pkgs/desktops/gnome-2/platform/libgnomecups/default.nix
index 0521ce9058fb..9a0afd1275d0 100644
--- a/pkgs/desktops/gnome-2/platform/libgnomecups/default.nix
+++ b/pkgs/desktops/gnome-2/platform/libgnomecups/default.nix
@@ -1,16 +1,16 @@
-{stdenv, fetchurl, pkgconfig, gtk, gettext, libxml2, intltool, libart_lgpl }:
+{ stdenv, fetchurl, pkgconfig, gtk, gettext, libxml2, intltool, libart_lgpl }:
 
-let
+stdenv.mkDerivation rec {
   name = "libgnomecups-0.2.3";
-in
-stdenv.mkDerivation {
-  inherit name;
 
   src = fetchurl {
     url = "mirror://gnome/sources/libgnomecups/0.2/${name}.tar.bz2";
     sha256 = "0a8xdaxzz2wc0n1fjcav65093gixzyac3948l8cxx1mk884yhc71";
   };
 
+  patches = [ ./glib.patch ];
+
   buildInputs = [ pkgconfig gtk gettext intltool libart_lgpl ];
+
   propagatedBuildInputs = [ libxml2 ];
 }
diff --git a/pkgs/desktops/gnome-2/platform/libgnomecups/glib.patch b/pkgs/desktops/gnome-2/platform/libgnomecups/glib.patch
new file mode 100644
index 000000000000..3f73af861c04
--- /dev/null
+++ b/pkgs/desktops/gnome-2/platform/libgnomecups/glib.patch
@@ -0,0 +1,38 @@
+From d84eee9450b3b6f6155074915efc61bedcc8d446 Mon Sep 17 00:00:00 2001
+From: Dominique Leuenberger <dimstar@opensuse.org>
+Date: Sun, 27 Nov 2011 21:36:41 +0100
+Subject: [PATCH] Fix: Only glib.h can be included
+
+---
+ libgnomecups/gnome-cups-i18n.c |    2 +-
+ libgnomecups/gnome-cups-init.h |    3 +--
+ 2 files changed, 2 insertions(+), 3 deletions(-)
+
+diff --git a/libgnomecups/gnome-cups-i18n.c b/libgnomecups/gnome-cups-i18n.c
+index 8987c5c..127756d 100644
+--- a/libgnomecups/gnome-cups-i18n.c
++++ b/libgnomecups/gnome-cups-i18n.c
+@@ -1,5 +1,5 @@
+ #include <config.h>
+-#include <glib/gmacros.h>
++#include <glib.h>
+ #include "gnome-cups-i18n.h"
+ 
+ #ifdef ENABLE_NLS
+diff --git a/libgnomecups/gnome-cups-init.h b/libgnomecups/gnome-cups-init.h
+index 22b682a..c4600fc 100644
+--- a/libgnomecups/gnome-cups-init.h
++++ b/libgnomecups/gnome-cups-init.h
+@@ -1,8 +1,7 @@
+ #ifndef GNOME_CUPS_INIT
+ #define GNOME_CUPS_INIT
+ 
+-#include <glib/gtypes.h>
+-#include <glib/gmacros.h>
++#include <glib.h>
+ 
+ G_BEGIN_DECLS
+ 
+-- 
+1.7.7
+
diff --git a/pkgs/desktops/gnome-2/platform/libgnomeprint/default.nix b/pkgs/desktops/gnome-2/platform/libgnomeprint/default.nix
index 410e408baa3d..0b6d3e25e2e7 100644
--- a/pkgs/desktops/gnome-2/platform/libgnomeprint/default.nix
+++ b/pkgs/desktops/gnome-2/platform/libgnomeprint/default.nix
@@ -1,11 +1,8 @@
-{stdenv, fetchurl, pkgconfig, gtk, gettext, libxml2, intltool, libart_lgpl, libgnomecups, bison,
-flex }:
+{ stdenv, fetchurl, pkgconfig, gtk, gettext, libxml2, intltool, libart_lgpl
+, libgnomecups, bison, flex }:
 
-let
+stdenv.mkDerivation rec {
   name = "libgnomeprint-2.18.8";
-in
-stdenv.mkDerivation {
-  inherit name;
 
   src = fetchurl {
     url = "mirror://gnome/sources/libgnomeprint/2.18/${name}.tar.bz2";
@@ -15,5 +12,6 @@ stdenv.mkDerivation {
   patches = [ ./bug653388.patch ];
 
   buildInputs = [ pkgconfig gtk gettext intltool libart_lgpl libgnomecups bison flex ];
+
   propagatedBuildInputs = [ libxml2 ];
 }
diff --git a/pkgs/desktops/xfce-4.8/support/gvfs.nix b/pkgs/desktops/xfce-4.8/support/gvfs.nix
index 33f7315a9d9b..f922b194f877 100644
--- a/pkgs/desktops/xfce-4.8/support/gvfs.nix
+++ b/pkgs/desktops/xfce-4.8/support/gvfs.nix
@@ -1,14 +1,18 @@
-{ stdenv, fetchurl, pkgconfig, glib, dbus, intltool, udev, libgdu, fuse }:
+{ stdenv, fetchurl, pkgconfig, glib, dbus, intltool, udev, libgdu, fuse
+, libxml2, libxslt, docbook_xsl, libgphoto2, libtool }:
 
 stdenv.mkDerivation rec {
-  name = "gvfs-1.8.2";
-  
+  name = "gvfs-1.14.1";
+
   src = fetchurl {
-    url = "mirror://gnome/sources/gvfs/1.8/${name}.tar.bz2";
-    sha256 = "0895ac8f6d416e1b15433b6b6b68eb119c6e8b04fdb66db665d684355ef89345";
+    url = "mirror://gnome/sources/gvfs/1.14/${name}.tar.xz";
+    sha256 = "0af86cd7ee7b6daca144776bdf12f2f30d3e18fdd70b4da58e1a68cea4f6716a";
   };
 
-  buildInputs = [ pkgconfig glib dbus.libs intltool udev libgdu fuse ];
+  buildInputs =
+    [ pkgconfig glib dbus.libs intltool udev libgdu fuse libxml2 libxslt
+      docbook_xsl libgphoto2 libtool
+    ];
 
   meta = {
     description = "Virtual Filesystem support library (for Xfce)";
diff --git a/pkgs/development/compilers/ccl/default.nix b/pkgs/development/compilers/ccl/default.nix
index 54628fa509d9..7678c066df28 100644
--- a/pkgs/development/compilers/ccl/default.nix
+++ b/pkgs/development/compilers/ccl/default.nix
@@ -5,13 +5,13 @@ let
   ];
 in
 rec {
-  version = "1.4";
+  version = "1.8";
   name = "ccl-${version}";
 
   /* There are also MacOS and FreeBSD and Windows versions */
   src = a.fetchurl {
     url = "ftp://ftp.clozure.com/pub/release/${version}/${name}-linuxx86.tar.gz";
-    sha256 = "1z4x4kxjj2ligb2vfrx5mjww20gdkxbvgw1ax5l9c8ha802bfyg8";
+    sha256 = "1dgg6a8i2csa6xidsq66hbw7zx62gm2178hpkp88yyzgxylszp01";
   };
   
   inherit buildInputs;
diff --git a/pkgs/development/compilers/ecl/default.nix b/pkgs/development/compilers/ecl/default.nix
index c08fc3ee5852..fb801b6b8440 100644
--- a/pkgs/development/compilers/ecl/default.nix
+++ b/pkgs/development/compilers/ecl/default.nix
@@ -3,16 +3,23 @@
   , ...} @ x:
 builderDefsPackage (a :  
 let 
-  s = import ./src-for-default.nix;
   propagatedBuildInputs = with a; [
     gmp mpfr
   ];
   buildInputs = [ gmp libffi mpfr ];
 in
 rec {
-  src = a.fetchUrlFromSrcInfo s;
+  mainVersion = "12.7";
+  revision = "1";
+  version = "${mainVersion}.${revision}";
+
+  name = "ecl-${version}";
+
+  src = a.fetchurl {
+    url = "mirror://sourceforge/project/ecls/ecls/${mainVersion}/${name}.tar.gz";
+    sha256 = "0k8ww142g3bybvvnlijqsbidl8clbs1pb4ympk2ds07z5swvy2ap";
+  };
 
-  inherit (s) name;
   inherit buildInputs propagatedBuildInputs;
   configureFlags = [
     "--enable-threads"
diff --git a/pkgs/development/compilers/ecl/src-for-default.nix b/pkgs/development/compilers/ecl/src-for-default.nix
deleted file mode 100644
index 1baaf4bbec45..000000000000
--- a/pkgs/development/compilers/ecl/src-for-default.nix
+++ /dev/null
@@ -1,7 +0,0 @@
-rec {
-   version="12.2.1";
-   name="ecl-12.2.1";
-   hash="dbb3f83c27f3d2565ca22c1c6b4ab497bbfdd0d0a7b09dee76338f378621f091";
-   url="http://downloads.sourceforge.net/project/ecls/ecls/12.2/ecl-${version}.tgz";
-   advertisedUrl="http://downloads.sourceforge.net/project/ecls/ecls/12.2/ecl-12.2.1.tgz";
-}
diff --git a/pkgs/development/compilers/ecl/src-info-for-default.nix b/pkgs/development/compilers/ecl/src-info-for-default.nix
deleted file mode 100644
index 1f5f3270f53a..000000000000
--- a/pkgs/development/compilers/ecl/src-info-for-default.nix
+++ /dev/null
@@ -1,6 +0,0 @@
-{
-  downloadPage = "http://sourceforge.net/projects/ecls/files/";
-  baseName = "ecl";
-  choiceCommand = "head -1 | sed -e 's@/download@@;'\"$skipRedirectSF\"";
-  sourceRegexp = ".*[.](tar.gz|tgz|tbz2|tar.bz2)";
-}
diff --git a/pkgs/development/compilers/edk2/default.nix b/pkgs/development/compilers/edk2/default.nix
index 53517e853e94..9633967da6a9 100644
--- a/pkgs/development/compilers/edk2/default.nix
+++ b/pkgs/development/compilers/edk2/default.nix
@@ -14,8 +14,8 @@ edk2 = stdenv.mkDerivation {
   
   src = fetchsvn {
     url = https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2;
-    rev = "13094";
-    sha256 = "1qfpal0y4sas204ydg3pg3634dm25q1vr94mpgmbdh6yqcviah3h";
+    rev = "13783";
+    sha256 = "18sx0nwcnghij7737xdnmgwk5vm0ax4p0v3ybggqqs8cdhzfghil";
   };
 
   buildInputs = [ libuuid pythonFull ];
diff --git a/pkgs/development/compilers/fpc/lazarus.nix b/pkgs/development/compilers/fpc/lazarus.nix
index 4278f2c664f6..e2a9fd128e98 100644
--- a/pkgs/development/compilers/fpc/lazarus.nix
+++ b/pkgs/development/compilers/fpc/lazarus.nix
@@ -1,9 +1,10 @@
 args : with args; 
 rec {
-  version = "0.9.30.4";
+  version = "1.0.2";
+  versionSuffix = "-0";
   src = fetchurl {
-    url = "mirror://sourceforge/lazarus/Lazarus%20Zip%20_%20GZip/Lazarus%20${version}/lazarus-${version}-src.tar.bz2";
-    sha256 = "0kndg4xf32r6w5hb58d9qvzkyiphhysgnhs2rd9bmlc8sy8c7zmv";
+    url = "mirror://sourceforge/lazarus/Lazarus%20Zip%20_%20GZip/Lazarus%20${version}/lazarus-${version}${versionSuffix}.tar.gz";
+    sha256 = "17a94wig8b4yrkq42wng4qbal7n77axkynwh78wday5whsp7div8";
   };
 
   buildInputs = [fpc gtk glib libXi inputproto 
diff --git a/pkgs/development/compilers/ghc/6.10.1-binary.nix b/pkgs/development/compilers/ghc/6.10.1-binary.nix
index 5a15cc0dff7e..353a4176ea46 100644
--- a/pkgs/development/compilers/ghc/6.10.1-binary.nix
+++ b/pkgs/development/compilers/ghc/6.10.1-binary.nix
@@ -1,11 +1,5 @@
 {stdenv, fetchurl, perl, libedit, ncurses, gmp}:
 
-let
-  supportedPlatforms = ["i686-darwin" "x86_64-linux" "i686-linux"];
-in
-
-assert stdenv.lib.elem stdenv.system supportedPlatforms;
-
 stdenv.mkDerivation rec {
   version = "6.10.1";
 
@@ -104,5 +98,5 @@ stdenv.mkDerivation rec {
         [ $(./main) == "yes" ]
       '';
 
-  meta.platforms = supportedPlatforms;
+  meta.platforms = ["i686-darwin" "x86_64-linux" "i686-linux"];
 }
diff --git a/pkgs/development/compilers/ghc/6.10.2-binary.nix b/pkgs/development/compilers/ghc/6.10.2-binary.nix
index 616c9de7edeb..02f1db354a1e 100644
--- a/pkgs/development/compilers/ghc/6.10.2-binary.nix
+++ b/pkgs/development/compilers/ghc/6.10.2-binary.nix
@@ -1,11 +1,5 @@
 {stdenv, fetchurl, perl, libedit, ncurses, gmp}:
 
-let
-  supportedPlatforms = ["x86_64-linux" "i686-linux"];
-in
-
-assert stdenv.lib.elem stdenv.system supportedPlatforms;
-
 stdenv.mkDerivation rec {
   version = "6.10.2";
 
@@ -103,5 +97,5 @@ stdenv.mkDerivation rec {
         [ $(./main) == "yes" ]
       '';
 
-  meta.platforms = supportedPlatforms;
+  meta.platforms = ["x86_64-linux" "i686-linux"];
 }
diff --git a/pkgs/development/compilers/ghc/6.12.1-binary.nix b/pkgs/development/compilers/ghc/6.12.1-binary.nix
index a84b75d705b1..23486b5f4fa5 100644
--- a/pkgs/development/compilers/ghc/6.12.1-binary.nix
+++ b/pkgs/development/compilers/ghc/6.12.1-binary.nix
@@ -1,11 +1,5 @@
 {stdenv, fetchurl, perl, ncurses, gmp}:
 
-let
-  supportedPlatforms = ["x86_64-linux" "i686-linux"];
-in
-
-assert stdenv.lib.elem stdenv.system supportedPlatforms;
-
 stdenv.mkDerivation rec {
   version = "6.12.1";
 
@@ -105,5 +99,5 @@ stdenv.mkDerivation rec {
         [ $(./main) == "yes" ]
       '';
 
-  meta.platforms = supportedPlatforms;
+  meta.platforms = ["x86_64-linux" "i686-linux"];
 }
diff --git a/pkgs/development/compilers/ghc/6.4.2-binary.nix b/pkgs/development/compilers/ghc/6.4.2-binary.nix
index 2ed6f2be4fe4..1a5bf059e9f5 100644
--- a/pkgs/development/compilers/ghc/6.4.2-binary.nix
+++ b/pkgs/development/compilers/ghc/6.4.2-binary.nix
@@ -1,11 +1,5 @@
 {stdenv, fetchurl, perl, readline, ncurses, gmp}:
 
-let
-  supportedPlatforms = ["i686-darwin" "x86_64-linux" "i686-linux"];
-in
-
-assert stdenv.lib.elem stdenv.system supportedPlatforms;
-
 stdenv.mkDerivation {
   name = if stdenv.system == "i686-darwin" then "ghc-6.6.1-binary" else "ghc-6.4.2-binary";
 
@@ -68,5 +62,5 @@ stdenv.mkDerivation {
 
   '' else "";
 
-  meta.platforms = supportedPlatforms;
+  meta.platforms = ["i686-darwin" "x86_64-linux" "i686-linux"];
 }
diff --git a/pkgs/development/compilers/ghc/7.0.4-binary.nix b/pkgs/development/compilers/ghc/7.0.4-binary.nix
index 0baf9718f85e..0bfc81a17a4e 100644
--- a/pkgs/development/compilers/ghc/7.0.4-binary.nix
+++ b/pkgs/development/compilers/ghc/7.0.4-binary.nix
@@ -1,11 +1,5 @@
 {stdenv, fetchurl, perl, ncurses, gmp}:
 
-let
-  supportedPlatforms = ["x86_64-linux" "i686-linux" "i686-darwin" "x86_64-darwin"];
-in
-
-assert stdenv.lib.elem stdenv.system supportedPlatforms;
-
 stdenv.mkDerivation rec {
   version = "7.0.4";
 
@@ -93,5 +87,5 @@ stdenv.mkDerivation rec {
         [ $(./main) == "yes" ]
       '';
 
-  meta.platforms = supportedPlatforms;
+  meta.platforms = ["x86_64-linux" "i686-linux" "i686-darwin" "x86_64-darwin"];
 }
diff --git a/pkgs/development/compilers/ghc/7.4.2-binary.nix b/pkgs/development/compilers/ghc/7.4.2-binary.nix
index 85e10d7090ce..e0a8fee4b660 100644
--- a/pkgs/development/compilers/ghc/7.4.2-binary.nix
+++ b/pkgs/development/compilers/ghc/7.4.2-binary.nix
@@ -1,11 +1,5 @@
 {stdenv, fetchurl, perl, ncurses, gmp}:
 
-let
-  supportedPlatforms = ["x86_64-linux" "i686-linux" "i686-darwin" "x86_64-darwin"];
-in
-
-assert stdenv.lib.elem stdenv.system supportedPlatforms;
-
 stdenv.mkDerivation rec {
   version = "7.4.2";
 
@@ -93,5 +87,5 @@ stdenv.mkDerivation rec {
         [ $(./main) == "yes" ]
       '';
 
-  meta.platforms = supportedPlatforms;
+  meta.platforms = ["x86_64-linux" "i686-linux" "i686-darwin" "x86_64-darwin"];
 }
diff --git a/pkgs/development/compilers/go/default.nix b/pkgs/development/compilers/go/default.nix
index 1d9765539bfc..60ea7981931d 100644
--- a/pkgs/development/compilers/go/default.nix
+++ b/pkgs/development/compilers/go/default.nix
@@ -7,11 +7,11 @@ let
 in
 
 stdenv.mkDerivation {
-  name = "go-1.0.2";
+  name = "go-1.0.3";
 
   src = fetchurl {
-    url = http://go.googlecode.com/files/go1.0.2.src.tar.gz;
-    sha256 = "1a4mpkb3bd9dwp0r3fgrfcyk5lgw0f0cfrbskg2lrhc7a12zpz3h";
+    url = http://go.googlecode.com/files/go1.0.3.src.tar.gz;
+    sha256 = "1pz31az3icwqfqfy3avms05jnqr0qrbrx9yqsclkdwbjs4rkbfkz";
   };
 
   buildInputs = [ bison glibc bash makeWrapper ];
diff --git a/pkgs/development/compilers/haxe/default.nix b/pkgs/development/compilers/haxe/default.nix
index 8018b478e809..817e4573df24 100644
--- a/pkgs/development/compilers/haxe/default.nix
+++ b/pkgs/development/compilers/haxe/default.nix
@@ -1,141 +1,37 @@
-args: with args;
+{ stdenv, fetchsvn, ocaml, zlib, neko }:
 
-let
+stdenv.mkDerivation {
+  name = "haxe-2.10";
 
-    src_haxe_swflib = {
-      # REGION AUTO UPDATE:                                { name = "haxe_swflib"; type="cvs"; cvsRoot = ":pserver:anonymous@cvs.motion-twin.com:/cvsroot"; module = "ocaml/swflib"; groups = "haxe_group"; }
-      src = sourceFromHead "haxe_swflib-F_10-43-46.tar.gz"
-                   (fetchurl { url = "http://mawercer.de/~nix/repos/haxe_swflib-F_10-43-46.tar.gz"; sha256 = "a63de75e48bf500ef0e8ef715d178d32f0ef113ded8c21bbca698a8cc70e7b58"; });
-      # END
-    }.src;
+  buildInputs = [ocaml zlib neko];
 
-    src_haxe_extc = { 
-      # REGION AUTO UPDATE:                                { name = "haxe_extc"; type="cvs"; cvsRoot = ":pserver:anonymous@cvs.motion-twin.com:/cvsroot"; module = "ocaml/extc"; groups = "haxe_group"; }
-      src = sourceFromHead "haxe_extc-F_10-43-47.tar.gz"
-                   (fetchurl { url = "http://mawercer.de/~nix/repos/haxe_extc-F_10-43-47.tar.gz"; sha256 = "d0a9980527d62ac6cfe27925ddb0964d334ec382f813fdfb8bd6c59fbbede730"; });
-      # END
-    }.src;
-
-    src_haxe_extlib_dev = { 
-      # REGION AUTO UPDATE:                                { name = "haxe_extlib_dev"; type="cvs"; cvsRoot = ":pserver:anonymous@cvs.motion-twin.com:/cvsroot"; module = "ocaml/extlib-dev"; groups = "haxe_group"; }
-      src = sourceFromHead "haxe_extlib_dev-F_10-43-48.tar.gz"
-                   (fetchurl { url = "http://mawercer.de/~nix/repos/haxe_extlib_dev-F_10-43-48.tar.gz"; sha256 = "6b9037230e2615dd5e22f4e7f4165c84f2816bc526957683afc945394fcdf67e"; });
-      # END
-    }.src;
-
-    src_haxe_xml_light = { 
-      # REGION AUTO UPDATE:                                { name = "haxe_xml_light"; type="cvs"; cvsRoot = ":pserver:anonymous@cvs.motion-twin.com:/cvsroot"; module = "ocaml/xml-light"; groups = "haxe_group"; }
-      src = sourceFromHead "haxe_xml_light-F_10-43-48.tar.gz"
-                   (fetchurl { url = "http://mawercer.de/~nix/repos/haxe_xml_light-F_10-43-48.tar.gz"; sha256 = "be29d9e22ad0dbcb3d447cbbc14907aff5f89bb562b8db369659d299f3a5b44f"; });
-      # END
-    }.src;
-
-    src_haxe_neko_include = { 
-      # REGION AUTO UPDATE:                                { name = "haxe_neko_include"; type="cvs"; cvsRoot = ":pserver:anonymous@cvs.motion-twin.com:/cvsroot"; module = "neko/libs/include/ocaml"; groups = "haxe_group"; }
-      src = sourceFromHead "haxe_neko_include-F_10-43-49.tar.gz"
-                   (fetchurl { url = "http://mawercer.de/~nix/repos/haxe_neko_include-F_10-43-49.tar.gz"; sha256 = "e49efc1b348fa6e0f6fb40079a2d380b947d9ebda31843bc293f3cc77f8453db"; });
-      # END
-    }.src;
-
-    src_haxe = {
-      # REGION AUTO UPDATE:       { name="haxe-read-only"; type="svn"; url="http://haxe.googlecode.com/svn/trunk"; groups = "haxe_group"; }
-      src = sourceFromHead "haxe-read-only-3220.tar.gz"
-                   (fetchurl { url = "http://mawercer.de/~nix/repos/haxe-read-only-3220.tar.gz"; sha256 = "2b6702dca95d0829e539cea07b8224e3848e584a425ce8f8e0984a7a2bf7b1f8"; });
-      # END
-    }.src;
-
-
-    # the HaXe compiler
-    haxe = stdenv.mkDerivation {
-      name = "haxe-cvs";
-
-      buildInputs = [ocaml zlib makeWrapper];
-
-      src = src_haxe;
-
-      inherit zlib;
-
-      buildPhase = ''
-        set -x
-        mkdir -p ocaml/{swflib,extc,extlib-dev,xml-light} neko/libs
-
-        # strange setup. install.ml seems to co the same repo again into haxe directory!
-        mkdir haxe
-        tar xfz $src --strip-components=1 -C haxe
-
-        t(){ tar xfz $1 -C $2 --strip-components=2; }
-        t ${src_haxe_swflib} ocaml/swflib
-        t ${src_haxe_extc} ocaml/extc
-        t ${src_haxe_extlib_dev} ocaml/extlib-dev
-        t ${src_haxe_xml_light} ocaml/xml-light
-        t ${src_haxe_neko_include} neko/libs
-
-        sed -e '/download();/d' \
-            -e "s@/usr/lib/@''${zlib}/lib/@g" \
-            doc/install.ml > install.ml
-        
-        ocaml install.ml
-      '';
-
-      # probably rpath should be set properly
-      installPhase = ''
-        mkdir -p $out/lib/haxe
-        cp -r bin $out/bin
-        wrapProgram "$out/bin/haxe" \
-          --set "LD_LIBRARY_PATH" $zlib/lib \
-          --set HAXE_LIBRARY_PATH "''${HAXE_LIBRARY_PATH}''${HAXE_LIBRARY_PATH:-:}:$out/lib/haxe/std:."
-        cp -r std $out/lib/haxe/
-      '';
-
-      meta = { 
-        description = "programming language targeting JavaScript, Flash, NekVM, PHP, C++";
-        homepage = http://haxe.org;
-        license = ["GPLv2" "BSD2" /*?*/ ];  # -> docs/license.txt
-        maintainers = [args.lib.maintainers.marcweber];
-        platforms = args.lib.platforms.linux;
-      };
-    };
-
-    # build a tool found in std/tools/${name} source directory
-    # the .hxml files contain a recipe  to cerate a binary.
-    tool = { name, description }: stdenv.mkDerivation {
-
-        inherit name;
-
-        src = src_haxe;
-
-        buildPhase = ''
-          cd std/tools/${name};
-          haxe *.hxml
-          mkdir -p $out/bin
-          mv ${name} $out/bin/
-        '';
-
-        buildInputs = [haxe neko];
-
-        dontStrip=1;
-
-        installPhase=":";
-
-        meta = {
-          inherit description;
-          homepage = http://haxe.org;
-          # license = "?"; TODO
-          maintainers = [args.lib.maintainers.marcweber];
-          platforms = args.lib.platforms.linux;
-        };
-
-      };
-
-in
-
-{
-
-  inherit haxe;
-
-  haxelib = tool {
-    name = "haxelib";
-    description = "haxelib is a HaXe library management tool similar to easyinstall or ruby gems";
+  src = fetchsvn {
+    url = "http://haxe.googlecode.com/svn/tags/v2-10";
+    sha256 = "dbd3c655e4136eb68a165ef83b96bfc1f0f2eb9ec8729603b19bcd717a61a679";
   };
 
+  prePatch = ''
+    sed -i -e 's|com.class_path <- \[|&"'"$out/lib/haxe/std/"'";|' main.ml
+  '';
+
+  postBuild = ''
+    find std/tools -name '*.n' -delete
+    rm std/tools/haxedoc/haxedoc std/tools/haxelib/haxelib
+  '';
+
+  installPhase = ''
+    install -vd "$out/bin" "$out/lib/haxe/std"
+    install -vt "$out/bin" haxe haxelib haxedoc
+    cp -vr std "$out/lib/haxe"
+  '';
+
+  dontStrip = true;
+
+  meta = {
+    description = "Programming language targeting JavaScript, Flash, NekoVM, PHP, C++";
+    homepage = http://haxe.org;
+    license = ["GPLv2" "BSD2" /*?*/ ];  # -> docs/license.txt
+    maintainers = [stdenv.lib.maintainers.marcweber];
+    platforms = stdenv.lib.platforms.linux;
+  };
 }
diff --git a/pkgs/development/compilers/idris/default.nix b/pkgs/development/compilers/idris/default.nix
index deb97a19b1c0..b240824ff73e 100644
--- a/pkgs/development/compilers/idris/default.nix
+++ b/pkgs/development/compilers/idris/default.nix
@@ -4,8 +4,8 @@
 
 cabal.mkDerivation (self: {
   pname = "idris";
-  version = "0.9.3.1";
-  sha256 = "1dqb7gd5jn5f062hfwrirrfxv6ac1f6khkfax912j01mg147hv9a";
+  version = "0.9.4.1";
+  sha256 = "1f1jrgnclr0443rbhfcnm0vvbb2jcliskqm6vq1c0xgywab7bjhx";
   isLibrary = false;
   isExecutable = true;
   buildDepends = [
diff --git a/pkgs/development/compilers/jhc/default.nix b/pkgs/development/compilers/jhc/default.nix
new file mode 100644
index 000000000000..4b4d85df8907
--- /dev/null
+++ b/pkgs/development/compilers/jhc/default.nix
@@ -0,0 +1,29 @@
+{ 
+  stdenv, fetchurl, perl, ghc, binary, zlib, utf8String, readline, fgl,
+  regexCompat, HsSyck, random
+}:
+
+stdenv.mkDerivation rec {
+
+  name = "jhc-${version}";
+
+  version = "0.8.0";
+
+  src = fetchurl {
+    url = "http://repetae.net/dist/${name}.tar.gz";
+    sha256 = "0rbv0gpp7glhd9xqy7snbiaiizwnsfg9vzhvyywcvbmb35yivy2a";
+  };
+
+  buildInputs = [
+    perl ghc binary zlib utf8String readline fgl regexCompat HsSyck random
+  ];
+
+  meta = {
+    description = ''
+      A Haskell compiler which aims to produce the most efficient programs
+    '';
+    license = stdenv.lib.licenses.gpl2;
+    maintainers = [ stdenv.lib.maintainers.aforemny ];
+  };
+
+}
diff --git a/pkgs/development/compilers/llvm/3.1.nix b/pkgs/development/compilers/llvm/3.1.nix
deleted file mode 100644
index 204c080b871a..000000000000
--- a/pkgs/development/compilers/llvm/3.1.nix
+++ /dev/null
@@ -1,27 +0,0 @@
-{ stdenv, fetchurl, perl, groff, cmake, python }:
-
-let version = "3.1"; in
-
-stdenv.mkDerivation {
-  name = "llvm-${version}";
-
-  src = fetchurl {
-    url    = "http://llvm.org/releases/${version}/llvm-${version}.src.tar.gz";
-    sha256 = "1ea05135197b5400c1f88d00ff280d775ce778f8f9ea042e25a1e1e734a4b9ab";
-  };
-
-  buildInputs = [ perl groff cmake python ];
-
-  cmakeFlags = [ "-DCMAKE_BUILD_TYPE=Release" ];
-
-  enableParallelBuilding = true;
-
-  meta = {
-    homepage = http://llvm.org/;
-    description = "Collection of modular and reusable compiler and toolchain technologies";
-    license = "BSD";
-    maintainers = with stdenv.lib.maintainers; [viric shlevy raskin];
-    platforms = with stdenv.lib.platforms; all;
-  };
-}
-
diff --git a/pkgs/development/compilers/llvm/clang-include-paths.patch b/pkgs/development/compilers/llvm/clang-include-paths.patch
index 828c554175e5..5e7370718ab4 100644
--- a/pkgs/development/compilers/llvm/clang-include-paths.patch
+++ b/pkgs/development/compilers/llvm/clang-include-paths.patch
@@ -1,49 +1,21 @@
-diff -Naur clang-3.0.src-orig/lib/Driver/ToolChains.cpp clang-3.0.src/lib/Driver/ToolChains.cpp
---- clang-3.0.src-orig/lib/Driver/ToolChains.cpp	2011-11-17 02:40:32.000000000 -0500
-+++ clang-3.0.src/lib/Driver/ToolChains.cpp	2011-12-19 06:29:27.562428830 -0500
-@@ -1926,14 +1926,17 @@
+diff -Naur clang-3.1.src-orig/lib/Driver/ToolChains.cpp clang-3.1.src/lib/Driver/ToolChains.cpp
+--- clang-3.1.src-orig/lib/Driver/ToolChains.cpp	2012-05-11 20:16:02.000000000 -0400
++++ clang-3.1.src/lib/Driver/ToolChains.cpp	2012-10-08 01:13:01.044083509 -0400
+@@ -2146,9 +2146,6 @@
    if (DriverArgs.hasArg(options::OPT_nostdinc))
      return;
  
-+#if 0
-   if (!DriverArgs.hasArg(options::OPT_nostdlibinc))
-     addSystemInclude(DriverArgs, CC1Args, D.SysRoot + "/usr/local/include");
- 
-+#endif
+-  if (!DriverArgs.hasArg(options::OPT_nostdlibinc))
+-    addSystemInclude(DriverArgs, CC1Args, D.SysRoot + "/usr/local/include");
+-
    if (!DriverArgs.hasArg(options::OPT_nobuiltininc)) {
      llvm::sys::Path P(D.ResourceDir);
      P.appendComponent("include");
-     addSystemInclude(DriverArgs, CC1Args, P.str());
-   }
-+#if 0
- 
-   if (DriverArgs.hasArg(options::OPT_nostdlibinc))
-     return;
-@@ -1998,6 +2001,8 @@
+@@ -2264,6 +2261,7 @@
      return;
  
-   addExternCSystemInclude(DriverArgs, CC1Args, D.SysRoot + "/usr/include");
-+#endif
-+  addExternCSystemInclude(DriverArgs, CC1Args, D.SysRoot + C_INCLUDE_PATH);
- }
- 
- static bool addLibStdCXXIncludePaths(Twine Base, Twine TargetArchDir,
-@@ -2030,6 +2035,7 @@
-   bool IsTarget64Bit = (TargetArch == llvm::Triple::x86_64 ||
-                         TargetArch == llvm::Triple::ppc64);
- 
-+#if 0
-   StringRef CxxIncludeRoot(CXX_INCLUDE_ROOT);
-   if (!CxxIncludeRoot.empty()) {
-     StringRef CxxIncludeArch(CXX_INCLUDE_ARCH);
-@@ -2072,6 +2078,10 @@
-                              GCCInstallation.getTriple() + Suffix,
-                              DriverArgs, CC1Args);
-   }
-+#endif
-+    addLibStdCXXIncludePaths(CPP_INCLUDE_PATH,
-+                             CPP_HOST,
-+                             DriverArgs, CC1Args);
- }
- 
- /// DragonFly - DragonFly tool chain which can call as(1) and ld(1) directly.
+   // Check if libc++ has been enabled and provide its include paths if so.
++  // !!! Will need to modify this if/when nixpkgs uses libc++
+   if (GetCXXStdlibType(DriverArgs) == ToolChain::CST_Libcxx) {
+     // libc++ is always installed at a fixed path on Linux currently.
+     addSystemInclude(DriverArgs, CC1Args,
diff --git a/pkgs/development/compilers/llvm/clang-ld-flags.patch b/pkgs/development/compilers/llvm/clang-ld-flags.patch
index 62b8bc763f9f..ffa67b464eca 100644
--- a/pkgs/development/compilers/llvm/clang-ld-flags.patch
+++ b/pkgs/development/compilers/llvm/clang-ld-flags.patch
@@ -1,38 +1,57 @@
-diff -Naur clang-3.0.src-orig/lib/Driver/ToolChains.cpp clang-3.0.src/lib/Driver/ToolChains.cpp
---- clang-3.0.src-orig/lib/Driver/ToolChains.cpp	2011-11-17 02:40:32.000000000 -0500
-+++ clang-3.0.src/lib/Driver/ToolChains.cpp	2011-12-19 05:32:38.695513475 -0500
-@@ -1800,6 +1800,7 @@
- 
-   Linker = GetProgramPath("ld");
- 
-+#if 0
-   LinuxDistro Distro = DetectLinuxDistro(Arch);
+diff -Naur clang-3.1.src-orig/lib/Driver/ToolChains.cpp clang-3.1.src/lib/Driver/ToolChains.cpp
+--- clang-3.1.src-orig/lib/Driver/ToolChains.cpp	2012-05-11 20:16:02.000000000 -0400
++++ clang-3.1.src/lib/Driver/ToolChains.cpp	2012-10-08 01:22:53.458850737 -0400
+@@ -2077,16 +2077,6 @@
+       addPathIfExists(LibPath + "/../" + Multilib, Paths);
+     }
+   }
+-  addPathIfExists(SysRoot + "/lib/" + MultiarchTriple, Paths);
+-  addPathIfExists(SysRoot + "/lib/../" + Multilib, Paths);
+-  addPathIfExists(SysRoot + "/usr/lib/" + MultiarchTriple, Paths);
+-  addPathIfExists(SysRoot + "/usr/lib/../" + Multilib, Paths);
+-
+-  // Try walking via the GCC triple path in case of multiarch GCC
+-  // installations with strange symlinks.
+-  if (GCCInstallation.isValid())
+-    addPathIfExists(SysRoot + "/usr/lib/" + GCCInstallation.getTriple().str() +
+-                    "/../../" + Multilib, Paths);
  
-   if (IsOpenSuse(Distro) || IsUbuntu(Distro)) {
-@@ -1882,6 +1883,7 @@
-   addPathIfExists(SysRoot + "/lib", Paths);
-   addPathIfExists(SysRoot + "/usr/lib/" + MultiarchTriple, Paths);
-   addPathIfExists(SysRoot + "/usr/lib", Paths);
-+#endif
+   // Add the non-multilib suffixed paths (if potentially different).
+   if (GCCInstallation.isValid()) {
+@@ -2100,8 +2090,6 @@
+       addPathIfExists(LibPath, Paths);
+     }
+   }
+-  addPathIfExists(SysRoot + "/lib", Paths);
+-  addPathIfExists(SysRoot + "/usr/lib", Paths);
  }
  
  bool Linux::HasNativeLLVMSupport() const {
-diff -Naur clang-3.0.src-orig/lib/Driver/Tools.cpp clang-3.0.src/lib/Driver/Tools.cpp
---- clang-3.0.src-orig/lib/Driver/Tools.cpp	2011-11-07 05:27:39.000000000 -0500
-+++ clang-3.0.src/lib/Driver/Tools.cpp	2011-12-19 05:34:44.075325534 -0500
-@@ -4306,6 +4306,7 @@
+diff -Naur clang-3.1.src-orig/lib/Driver/Tools.cpp clang-3.1.src/lib/Driver/Tools.cpp
+--- clang-3.1.src-orig/lib/Driver/Tools.cpp	2012-04-18 17:32:25.000000000 -0400
++++ clang-3.1.src/lib/Driver/Tools.cpp	2012-10-08 01:25:23.913501995 -0400
+@@ -5210,24 +5210,6 @@
        ToolChain.getArch() == llvm::Triple::thumb ||
        (!Args.hasArg(options::OPT_static) &&
         !Args.hasArg(options::OPT_shared))) {
-+#if 0
-     CmdArgs.push_back("-dynamic-linker");
-     if (ToolChain.getArch() == llvm::Triple::x86)
-       CmdArgs.push_back("/lib/ld-linux.so.2");
-@@ -4318,6 +4319,7 @@
-       CmdArgs.push_back("/lib64/ld64.so.1");
-     else
-       CmdArgs.push_back("/lib64/ld-linux-x86-64.so.2");
-+#endif
+-    CmdArgs.push_back("-dynamic-linker");
+-    if (ToolChain.getArch() == llvm::Triple::x86)
+-      CmdArgs.push_back("/lib/ld-linux.so.2");
+-    else if (ToolChain.getArch() == llvm::Triple::arm ||
+-             ToolChain.getArch() == llvm::Triple::thumb)
+-      CmdArgs.push_back("/lib/ld-linux.so.3");
+-    else if (ToolChain.getArch() == llvm::Triple::mips ||
+-             ToolChain.getArch() == llvm::Triple::mipsel)
+-      CmdArgs.push_back("/lib/ld.so.1");
+-    else if (ToolChain.getArch() == llvm::Triple::mips64 ||
+-             ToolChain.getArch() == llvm::Triple::mips64el)
+-      CmdArgs.push_back("/lib64/ld.so.1");
+-    else if (ToolChain.getArch() == llvm::Triple::ppc)
+-      CmdArgs.push_back("/lib/ld.so.1");
+-    else if (ToolChain.getArch() == llvm::Triple::ppc64)
+-      CmdArgs.push_back("/lib64/ld64.so.1");
+-    else
+-      CmdArgs.push_back("/lib64/ld-linux-x86-64.so.2");
    }
  
    CmdArgs.push_back("-o");
diff --git a/pkgs/development/compilers/llvm/clang.nix b/pkgs/development/compilers/llvm/clang.nix
index 663e1bfab28b..48e4c4946f30 100644
--- a/pkgs/development/compilers/llvm/clang.nix
+++ b/pkgs/development/compilers/llvm/clang.nix
@@ -1,6 +1,6 @@
 { stdenv, fetchurl, perl, groff, llvm, cmake }:
 
-let version = "3.0"; in
+let version = "3.1"; in
 
 stdenv.mkDerivation {
   name = "clang-${version}";
@@ -10,20 +10,19 @@ stdenv.mkDerivation {
   patches = stdenv.lib.optionals (stdenv.gcc.libc != null) 
     [ ./clang-include-paths.patch ./clang-ld-flags.patch ];
 
-  postPatch = stdenv.lib.optionalString (stdenv.gcc.libc != null) ''
-    sed -i -e 's,C_INCLUDE_PATH,"${stdenv.gcc.libc}/include/",' \
-      -e 's,CPP_HOST,"'$(${stdenv.gcc}/bin/cc -dumpmachine)'",' \
-      -e 's,CPP_INCLUDE_PATH,"${stdenv.gcc.gcc}/include/c++/${stdenv.gcc.gcc.version}",' \
-      lib/Driver/ToolChains.cpp
-  '';
-
-  cmakeFlags = [ "-DCLANG_PATH_TO_LLVM_BUILD=${llvm}" "-DCMAKE_BUILD_TYPE=Release" "-DLLVM_TARGETS_TO_BUILD=all"];
+  cmakeFlags = [
+    "-DCLANG_PATH_TO_LLVM_BUILD=${llvm}"
+    "-DCMAKE_BUILD_TYPE=Release"
+    "-DLLVM_TARGETS_TO_BUILD=all"
+  ] ++ stdenv.lib.optionals (stdenv.gcc.libc != null) [
+    "-DC_INCLUDE_DIRS=${stdenv.gcc.libc}/include/"
+  ];
 
   enableParallelBuilding = true;
 
   src = fetchurl {
-      url = "http://llvm.org/releases/${version}/clang-${version}.tar.gz";
-      sha256 = "0v8j9rgmb7w74ihc44zfxa22q17c946n5b6prwl38z3d6pd74kmn";
+      url = "http://llvm.org/releases/${version}/clang-${version}.src.tar.gz";
+      sha256 = "11m7sm9f8qcrayckfg3z91zb3fimilpm0f7azn7q7qnkvhay4qzz";
   };
 
   passthru = { gcc = stdenv.gcc.gcc; };
diff --git a/pkgs/development/compilers/llvm/default.nix b/pkgs/development/compilers/llvm/default.nix
index 0fb1cf82cc27..204c080b871a 100644
--- a/pkgs/development/compilers/llvm/default.nix
+++ b/pkgs/development/compilers/llvm/default.nix
@@ -1,16 +1,16 @@
-{ stdenv, fetchurl, perl, groff, cmake }:
+{ stdenv, fetchurl, perl, groff, cmake, python }:
 
-let version = "3.0"; in
+let version = "3.1"; in
 
 stdenv.mkDerivation {
   name = "llvm-${version}";
 
   src = fetchurl {
-    url    = "http://llvm.org/releases/${version}/llvm-${version}.tar.gz";
-    sha256 = "0xq4gi7lflv8ilfckslhfvnja5693xjii1yvzz39kklr6hfv37ji";
+    url    = "http://llvm.org/releases/${version}/llvm-${version}.src.tar.gz";
+    sha256 = "1ea05135197b5400c1f88d00ff280d775ce778f8f9ea042e25a1e1e734a4b9ab";
   };
 
-  buildInputs = [ perl groff cmake ];
+  buildInputs = [ perl groff cmake python ];
 
   cmakeFlags = [ "-DCMAKE_BUILD_TYPE=Release" ];
 
@@ -20,7 +20,7 @@ stdenv.mkDerivation {
     homepage = http://llvm.org/;
     description = "Collection of modular and reusable compiler and toolchain technologies";
     license = "BSD";
-    maintainers = with stdenv.lib.maintainers; [viric shlevy];
+    maintainers = with stdenv.lib.maintainers; [viric shlevy raskin];
     platforms = with stdenv.lib.platforms; all;
   };
 }
diff --git a/pkgs/development/compilers/neko/default.nix b/pkgs/development/compilers/neko/default.nix
index 28a98fe1e258..ddeeb51c25e4 100644
--- a/pkgs/development/compilers/neko/default.nix
+++ b/pkgs/development/compilers/neko/default.nix
@@ -1,69 +1,44 @@
-{ composableDerivation, lib, fetchurl, mysql, apacheHttpd, zlib, sqlite
-, pcre, apr, gtk, boehmgc, pkgconfig, makeWrapper, sourceFromHead }:
+{ stdenv, fetchurl, boehmgc, zlib, sqlite, pcre }:
 
-let
+stdenv.mkDerivation rec {
+  name = "neko-${version}";
+  version = "1.8.2";
 
-  inherit (composableDerivation) edf wwf;
-
-  libs = [ mysql apacheHttpd zlib sqlite pcre apr gtk ];
-
-  includes = lib.concatMapStrings (x: ''"${x}/include",'' ) libs + ''"{gkt}/include/gtk-2.0",'';
-  
-in
-
-composableDerivation.composableDerivation {} ( fixed : {
-
-  name = "neko-cvs";
-
-  # REGION AUTO UPDATE:                        { name="neko"; type="cvs"; cvsRoot = ":pserver:anonymous@cvs.motion-twin.com:/cvsroot"; module = "neko"; groups = "haxe_group"; }
-  src = sourceFromHead "neko-F_16-06-48.tar.gz"
-               (fetchurl { url = "http://mawercer.de/~nix/repos/neko-F_16-06-48.tar.gz"; sha256 = "e952582a26099b7a5568d0798839a6d349331510ffe6d7936b4537d60b6ccf26"; });
-  # END
+  src = fetchurl {
+    url = "http://nekovm.org/_media/neko-${version}.tar.gz";
+    sha256 = "099727w6dk689z3pcgbhsqjl74zzrh82a5vb2abxynamcqxcgz1w";
+  };
 
-  # optionally remove apache mysql like gentoo does?
-  # they just remove libs/{apache,mod_neko}
-  buildInputs = [boehmgc pkgconfig makeWrapper] ++ libs;
-  # apr should be in apacheHttpd propagatedBuildInputs
+  prePatch = with stdenv.lib; let
+    libs = concatStringsSep "," (map (lib: "\"${lib}/include\"") buildInputs);
+  in ''
+    sed -i -e '/^search_includes/,/^}/c \
+      search_includes = function(_) { return $array(${libs}) }
+    ' src/tools/install.neko
+    sed -i -e '/allocated = strdup/s|"[^"]*"|"'"$out/lib/neko:$out/bin"'"|' \
+      vm/load.c
+    # temporarily, fixed in 1.8.3
+    sed -i -e 's/^#if defined(_64BITS)/& || defined(__x86_64__)/' vm/neko.h
+
+    for disabled_mod in mod_neko{,2} mod_tora{,2} mysql ui; do
+      sed -i -e '/^libs/,/^}/{/^\s*'"$disabled_mod"'\s*=>/,/^\s*}/d}' \
+        src/tools/install.neko
+    done
+  '';
 
-  preConfigure = ''
-    sed -i \
-      -e 's@"/usr/include",@${includes}@' \
-      src/tools/install.neko
-    sed -i "s@/usr/local@$out@" Makefile vm/load.c
-    # make sure that nekotools boot finds the neko executable and not our wrapper:
-    mkdir -p $out/{bin,lib}
+  makeFlags = "INSTALL_PREFIX=$(out)";
+  buildInputs = [ boehmgc zlib sqlite pcre ];
+  dontStrip = true;
 
-    sed -i "s@\"neko\"@\".neko-wrapped\"@" src/tools/nekoboot.neko
-    ln -s ./neko bin/.neko-wrapped
+  preInstall = ''
+    install -vd "$out/lib" "$out/bin"
   '';
 
-  inherit zlib;
-
-  meta = { 
-    description = "Neko is an high-level dynamicly typed programming language";
+  meta = {
+    description = "A high-level dynamically typed programming language";
     homepage = http://nekovm.org;
-    license = ["GPLv2" ];  # -> docs/license.txt
-    maintainers = [ lib.maintainers.marcweber ];
-    platforms = lib.platforms.linux;
+    license = stdenv.lib.licenses.lgpl21;
+    maintainers = [ stdenv.lib.maintainers.marcweber ];
+    platforms = stdenv.lib.platforms.linux;
   };
-
-  # if stripping was done neko and nekoc would be the same. ?!
-  dontStrip = 1;
-
-  # neko-wrapped: nekotools boot has to find it. So don't prefix wrapped executable by "."
-  postInstall = ''
-    for prog in nekotools nekoc; do
-      wrapProgram "$out/bin/$prog" \
-        --prefix "LD_LIBRARY_PATH" $out/lib/neko
-    done
-  
-    wrapProgram "$out/bin/neko" \
-      --prefix "LD_LIBRARY_PATH" $out/lib/neko
-
-    # create symlink so that nekotools boot finds not wrapped neko-wrapped executable
-    ln -s  ln -s ../../bin/.neko-wrapped $out/lib/neko
-  '';
-
-  # TODO make them optional and make them work 
-  patches = [ ./disable-modules.patch ];
-})
+}
diff --git a/pkgs/development/compilers/neko/disable-modules.patch b/pkgs/development/compilers/neko/disable-modules.patch
deleted file mode 100644
index d4d5a8eb30ee..000000000000
--- a/pkgs/development/compilers/neko/disable-modules.patch
+++ /dev/null
@@ -1,59 +0,0 @@
-diff --git a/src/tools/install.neko b/src/tools/install.neko
-index 4cffa5e..5702add 100644
---- a/src/tools/install.neko
-+++ b/src/tools/install.neko
-@@ -39,26 +39,6 @@ buffer_string = $loader.loadprim("std@buffer_string",1);
- // LIBS DATAS
- 
- libs = {
--	mod_neko => {
--		src => $array("../../vm/stats","mod_neko","cgi"),
--		inc => "httpd.h",
--		incname => "Apache 1.3.x"
--	},
--	mod_neko2 => {
--		src => $array("../../vm/stats","mod_neko","cgi"),
--		inc => $array("httpd.h","apr.h"),
--		incname => "Apache 2.2.x",
--		cflags => "-D_LARGEFILE64_SOURCE",
--		realdir => "mod_neko",
--		apache2 => true,
--	},
--	mysql => {
--		src => $array("mysql"),
--		inc => "mysql.h",
--		incname => "MySQL 4.+"
--		lib => "libmysqlclient_r.a",
--		lparams => "-lz -lssl"
--	},
- 	mysql5 => {
- 		src => $array("../common/sha1","../common/socket","my_proto/my_proto","my_proto/my_api","mysql"),
- 		inc => $array(),
-@@ -83,27 +63,6 @@ libs = {
- 		incname => "Sqlite 3",
- 		lparams => "-lsqlite3",
- 	},
--	ui => {
--		src => $array("ui"),
--		inc => switch system { "Mac" => "Carbon.h" default => "gtk/gtk.h" },
--		incname => switch system { "Mac" => "Carbon" default => "GTK+2.0" },
--		cflags => switch system { "Mac" => "" default => "`pkg-config --cflags gtk+-2.0`" },
--		lparams => switch system { "Mac" => "-framework Carbon" default => "`pkg-config --libs gtk+-2.0` -lgthread-2.0" },
--	},
--	mod_tora => {
--		src => $array("../common/socket","protocol","mod_tora"),
--		inc => "httpd.h",
--		incname => "Apache 1.3.x",
--		cflags => "-I../common",
--	},
--	mod_tora2 => {
--		src => $array("../common/socket","protocol","mod_tora"),
--		inc => $array("httpd.h","apr.h"),
--		incname => "Apache 2.2.x",
--		cflags => "-D_LARGEFILE64_SOURCE -I../common",
--		realdir => "mod_tora",
--		apache2 => true,
--	},
- }
- 
- // PLATFORM
diff --git a/pkgs/development/compilers/ocaml/4.00.0.nix b/pkgs/development/compilers/ocaml/4.00.1.nix
index e25654a24818..d7c14e031b35 100644
--- a/pkgs/development/compilers/ocaml/4.00.0.nix
+++ b/pkgs/development/compilers/ocaml/4.00.1.nix
@@ -8,11 +8,11 @@ in
 
 stdenv.mkDerivation rec {
   
-  name = "ocaml-4.00.0";
+  name = "ocaml-4.00.1";
   
   src = fetchurl {
     url = "http://caml.inria.fr/pub/distrib/ocaml-4.00/${name}.tar.bz2";
-    sha256 = "ec886d7bc587ce472fcbdf294feb4b1fa2d8e7ef78ab6a4e66551699435d5cd7";
+    sha256 = "33c3f4acff51685f5bfd7c260f066645e767d4e865877bf1613c176a77799951";
   };
 
   prefixKey = "-prefix ";
diff --git a/pkgs/development/compilers/openjdk-darwin/default.nix b/pkgs/development/compilers/openjdk-darwin/default.nix
index cbd41033bfca..1e74acfae724 100644
--- a/pkgs/development/compilers/openjdk-darwin/default.nix
+++ b/pkgs/development/compilers/openjdk-darwin/default.nix
@@ -1,4 +1,4 @@
-{stdenv, fetchurl}:
+{stdenv, fetchurl, ...}:
 
 stdenv.mkDerivation {
   name = "openjdk6-b16-24_apr_2009-r1";
diff --git a/pkgs/development/compilers/openjdk/default.nix b/pkgs/development/compilers/openjdk/default.nix
index f243baab5919..0aaa275ccc5d 100644
--- a/pkgs/development/compilers/openjdk/default.nix
+++ b/pkgs/development/compilers/openjdk/default.nix
@@ -17,6 +17,9 @@
 , libXrender
 , libXtst
 , libXi
+, libXinerama
+, libXcursor
+, fontconfig
 , cpio
 , jreOnly ? false
 }:
@@ -82,8 +85,13 @@ stdenv.mkDerivation rec {
     libXrender
     libXtst
     libXi
+    libXinerama
+    libXcursor
+    fontconfig
   ];
 
+  NIX_LDFLAGS = "-lfontconfig -lXcursor -lXinerama";
+
   postUnpack = ''
     mkdir -p drops
     cp ${jaxp_src} drops/${jaxp_src_name}
@@ -122,7 +130,6 @@ stdenv.mkDerivation rec {
     "UNIXCOMMAND_PATH="
     "BOOTDIR=${jdk}"
     "DROPS_DIR=$(DROPS_PATH)"
-    "SKIP_BOOT_CYCLE=false"
   ];
 
   configurePhase = ''
diff --git a/pkgs/development/interpreters/clisp/default.nix b/pkgs/development/interpreters/clisp/default.nix
index c985da9a5a2d..23b4e4e9e54d 100644
--- a/pkgs/development/interpreters/clisp/default.nix
+++ b/pkgs/development/interpreters/clisp/default.nix
@@ -34,6 +34,7 @@ stdenv.mkDerivation rec {
       --with-module=clx/new-clx --with-module=i18n --with-module=bindings/glibc
       --with-module=pcre --with-module=rawsock --with-module=readline
       --with-module=syscalls --with-module=wildcard --with-module=zlib
+      --with-threads=POSIX_THREADS
     '';
 
   preBuild = ''
diff --git a/pkgs/development/interpreters/lua-5/5.1.nix b/pkgs/development/interpreters/lua-5/5.1.nix
new file mode 100644
index 000000000000..e3dfd4711a17
--- /dev/null
+++ b/pkgs/development/interpreters/lua-5/5.1.nix
@@ -0,0 +1,30 @@
+{ stdenv, fetchurl, readline}:
+
+stdenv.mkDerivation rec {
+  name = "lua-5.1.5";
+
+  src = fetchurl {
+    url = "http://www.lua.org/ftp/${name}.tar.gz";
+    sha256 = "2640fc56a795f29d28ef15e13c34a47e223960b0240e8cb0a82d9b0738695333";
+  };
+
+  buildInputs = [ readline ];
+
+  configurePhase = "makeFlagsArray=( INSTALL_TOP=$out INSTALL_MAN=$out/share/man/man1 PLAT=linux )";
+
+  meta = {
+    homepage = "http://www.lua.org";
+    description = "Lua is a powerful, fast, lightweight, embeddable scripting language.";
+    longDescription = ''
+      Lua combines simple procedural syntax with powerful data
+      description constructs based on associative arrays and extensible
+      semantics. Lua is dynamically typed, runs by interpreting bytecode
+      for a register-based virtual machine, and has automatic memory
+      management with incremental garbage collection, making it ideal
+      for configuration, scripting, and rapid prototyping.
+    '';
+    license = "MIT";
+    platforms = stdenv.lib.platforms.unix;
+    maintainers = [ ];
+  };
+}
diff --git a/pkgs/development/interpreters/php/5.2.nix b/pkgs/development/interpreters/php/5.2.nix
deleted file mode 100644
index 4395c0f498c9..000000000000
--- a/pkgs/development/interpreters/php/5.2.nix
+++ /dev/null
@@ -1,172 +0,0 @@
-args: with args;
-
-let
-
-  inherit (args.composableDerivation) composableDerivation edf wwf;
-
-in
-
-composableDerivation {} ( fixed : let inherit (fixed.fixed) version; in {
-
-  version = "5.2.17";
-
-  name = "php-${version}";
-
-  buildInputs = ["flex" "bison" "pkgconfig"];
-
-  flags = {
-
-# much left to do here...
-
-    # SAPI modules:
-    
-      apxs2 = {
-        configureFlags = ["--with-apxs2=${apacheHttpd}/bin/apxs"];
-        buildInputs = [apacheHttpd];
-      };
-
-      # Extensions
-
-      curl = {
-        configureFlags = ["--with-curl=${args.curl}" "--with-curlwrappers"];
-        buildInputs = [curl openssl];
-      };
-      
-      zlib = {
-        configureFlags = ["--with-zlib=${args.zlib}"];
-        buildInputs = [zlib];
-      };
-
-      libxml2 = {
-        configureFlags = [
-          "--with-libxml-dir=${libxml2}"
-          "--with-iconv-dir=${libiconv}"
-          ];
-        buildInputs = [ libxml2 ];
-      };
-
-      readline = {
-        configureFlags = ["--with-readline=${readline}"];
-        buildInputs = [ readline ];
-      };
-    
-      sqlite = {
-        configureFlags = ["--with-pdo-sqlite=${sqlite}"];
-        buildInputs = [ sqlite ];
-      };
-    
-      postgresql = {
-        configureFlags = ["--with-pgsql=${postgresql}"];
-        buildInputs = [ postgresql ];
-      };
-    
-      mysql = {
-        configureFlags = ["--with-mysql=${mysql}"];
-        buildInputs = [ mysql ];
-      };
-
-      mysqli = {
-        configureFlags = ["--with-mysqli=${mysql}/bin/mysql_config"];
-        buildInputs = [ mysql];
-      };
-
-      mysqli_embedded = {
-        configureFlags = ["--enable-embedded-mysqli"];
-        depends = "mysqli";
-        assertion = fixed.mysqliSupport;
-      };
-
-      pdo_mysql = {
-        configureFlags = ["--with-pdo-mysql=${mysql}"];
-        buildInputs = [ mysql ];
-      };
-    
-      bcmath = {
-        configureFlags = ["--enable-bcmath"];
-      };
-
-      gd = {
-        configureFlags = ["--with-gd=${args.gd}"];
-        buildInputs = [gd libpng libjpeg ];
-      };
-
-      soap = {
-        configureFlags = ["--enable-soap"];
-      };
-
-      sockets = {
-        configureFlags = ["--enable-sockets"];
-      };
-
-      openssl = {
-        configureFlags = ["--with-openssl=${args.openssl}"];
-        buildInputs = ["openssl"];
-      };
-
-      mbstring = {
-        configureFlags = ["--enable-mbstring"];
-      };
-
-      /*
-         php is build within this derivation in order to add the xdebug lines to the php.ini.
-         So both Apache and command line php both use xdebug without having to configure anything.
-         Xdebug could be put in its own derivation.
-      * /
-        meta = {
-                description = "debugging support for PHP";
-                homepage = http://xdebug.org;
-                license = "based on the PHP license - as is";
-                };
-      */
-    };
-
-  cfg = {
-    mysqlSupport = config.php.mysql or true;
-    mysqliSupport = config.php.mysqli or true;
-    pdo_mysqlSupport = config.php.pdo_mysql or true;
-    libxml2Support = config.php.libxml2 or true;
-    apxs2Support = config.php.apxs2 or true;
-    bcmathSupport = config.php.bcmath or true;
-    socketsSupport = config.php.sockets or true;
-    curlSupport = config.php.curl or true;
-    gettextSupport = config.php.gettext or true;
-    postgresqlSupport = config.php.postgresql or true;
-    readlineSupport = config.php.readline or true;
-    sqliteSupport = config.php.sqlite or true;
-    soapSupport = config.php.soap or true;
-    zlibSupport = config.php.zlib or true;
-    opensslSupport = config.php.openssl or true;
-    mbstringSupport = config.php.mbstring or true;
-    gdSupport = config.php.gd or true;
-  };
-
-  configurePhase = ''
-    iniFile=$out/etc/php-recommended.ini
-    [[ -z "$libxml2" ]] || export PATH=$PATH:$libxml2/bin
-    ./configure --with-config-file-scan-dir=/etc --with-config-file-path=$out/etc --prefix=$out  $configureFlags
-    echo configurePhase end
-  '';
-
-  installPhase = ''
-    unset installPhase; installPhase;
-    cp php.ini-${ if builtins.lessThan (builtins.compareVersions version "5.3") 0
-        then "recommended" /* < PHP 5.3 */
-        else "production" /* >= PHP 5.3 */
-    } $iniFile
-  '';
-
-  src = args.fetchurl {
-    url = "http://nl.php.net/get/php-${version}.tar.bz2/from/this/mirror";
-    sha256 = "0v0i7zjp1a2c60imn58xjqcczmiglnfnwdkgwl0bfai4xh9yn6z8";
-    name = "php-${version}.tar.bz2";
-  };
-
-  meta = {
-    description = "The PHP language runtime engine";
-    homepage = http://www.php.net/;
-    license = "PHP-3";
-  };
-
-  patches = [./fix.patch];
-
-})
diff --git a/pkgs/development/interpreters/php/5.3.nix b/pkgs/development/interpreters/php/5.3.nix
index d4aebc77637b..b811e7349c86 100644
--- a/pkgs/development/interpreters/php/5.3.nix
+++ b/pkgs/development/interpreters/php/5.3.nix
@@ -1,25 +1,23 @@
-args: with args;
+{ stdenv, fetchurl, composableDerivation, autoconf, automake, flex, bison
+, apacheHttpd, mysql, libxml2, readline, zlib, curl, gd, postgresql
+, openssl, pkgconfig, sqlite, config, libiconv, libjpeg, libpng }:
 
-let
+composableDerivation.composableDerivation {} ( fixed : let inherit (fixed.fixed) version; in {
 
-  inherit (args.composableDerivation) composableDerivation edf wwf;
-
-in
-
-composableDerivation {} ( fixed : let inherit (fixed.fixed) version; in {
-
-  version = "5.3.15";
+  version = "5.3.17";
 
   name = "php-${version}";
 
+  enableParallelBuilding = true;
+
   buildInputs = ["flex" "bison" "pkgconfig"];
 
   flags = {
 
-# much left to do here...
+    # much left to do here...
 
     # SAPI modules:
-    
+
       apxs2 = {
         configureFlags = ["--with-apxs2=${apacheHttpd}/bin/apxs"];
         buildInputs = [apacheHttpd];
@@ -28,12 +26,12 @@ composableDerivation {} ( fixed : let inherit (fixed.fixed) version; in {
       # Extensions
 
       curl = {
-        configureFlags = ["--with-curl=${args.curl}" "--with-curlwrappers"];
+        configureFlags = ["--with-curl=${curl}" "--with-curlwrappers"];
         buildInputs = [curl openssl];
       };
-      
+
       zlib = {
-        configureFlags = ["--with-zlib=${args.zlib}"];
+        configureFlags = ["--with-zlib=${zlib}"];
         buildInputs = [zlib];
       };
 
@@ -44,7 +42,7 @@ composableDerivation {} ( fixed : let inherit (fixed.fixed) version; in {
           ];
         buildInputs = [ libxml2 ];
       };
-    
+
       readline = {
         configureFlags = ["--with-readline=${readline}"];
         buildInputs = [ readline ];
@@ -54,12 +52,12 @@ composableDerivation {} ( fixed : let inherit (fixed.fixed) version; in {
         configureFlags = ["--with-pdo-sqlite=${sqlite}"];
         buildInputs = [ sqlite ];
       };
-    
+
       postgresql = {
         configureFlags = ["--with-pgsql=${postgresql}"];
         buildInputs = [ postgresql ];
       };
-    
+
       mysql = {
         configureFlags = ["--with-mysql=${mysql}"];
         buildInputs = [ mysql ];
@@ -80,13 +78,13 @@ composableDerivation {} ( fixed : let inherit (fixed.fixed) version; in {
         configureFlags = ["--with-pdo-mysql=${mysql}"];
         buildInputs = [ mysql ];
       };
-    
+
       bcmath = {
         configureFlags = ["--enable-bcmath"];
       };
 
       gd = {
-        configureFlags = ["--with-gd=${args.gd}"];
+        configureFlags = ["--with-gd=${gd}"];
         buildInputs = [gd libpng libjpeg ];
       };
 
@@ -99,7 +97,7 @@ composableDerivation {} ( fixed : let inherit (fixed.fixed) version; in {
       };
 
       openssl = {
-        configureFlags = ["--with-openssl=${args.openssl}"];
+        configureFlags = ["--with-openssl=${openssl}"];
         buildInputs = ["openssl"];
       };
 
@@ -152,9 +150,9 @@ composableDerivation {} ( fixed : let inherit (fixed.fixed) version; in {
     cp php.ini-production $iniFile
   '';
 
-  src = args.fetchurl {
+  src = fetchurl {
     url = "http://nl.php.net/get/php-${version}.tar.bz2/from/this/mirror";
-    sha256 = "1vzij845n2akh2lkpacgdc5r0f7nw6pk9l9vi1h8l8k4krjjbdzr";
+    sha256 = "02bmjlznnfhxhyd4wvk8ky9vpqwl9rbyng803r7ygf84sibyi1dd";
     name = "php-${version}.tar.bz2";
   };
 
diff --git a/pkgs/development/libraries/atk/2.2.x.nix b/pkgs/development/libraries/atk/2.6.x.nix
index d0f7e1097953..eba56776bd2b 100644
--- a/pkgs/development/libraries/atk/2.2.x.nix
+++ b/pkgs/development/libraries/atk/2.6.x.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl, pkgconfig, perl, glib }:
 
 stdenv.mkDerivation rec {
-  name = "atk-2.2.0";
+  name = "atk-2.6.0";
 
   src = fetchurl {
-    url = mirror://gnome/sources/atk/2.2/atk-2.2.0.tar.xz;
-    sha256 = "17bkqg89l9hxbkgc76cxlin1bwczk7m6ikbccx677lrxh3kz08lb";
+    url = "mirror://gnome/sources/atk/2.6/${name}.tar.xz";
+    sha256 = "eff663f90847620bb68c9c2cbaaf7f45e2ff44163b9ab3f10d15be763680491f";
   };
 
   buildNativeInputs = [ pkgconfig perl ];
diff --git a/pkgs/development/libraries/audio/suil/default.nix b/pkgs/development/libraries/audio/suil/default.nix
index a7300f541c4e..0358e1c982c2 100644
--- a/pkgs/development/libraries/audio/suil/default.nix
+++ b/pkgs/development/libraries/audio/suil/default.nix
@@ -1,15 +1,15 @@
-{ stdenv, fetchurl, lv2, pkgconfig, python, serd, sord, sratom }:
+{ stdenv, fetchurl, gtk, lv2, pkgconfig, python, serd, sord, sratom, qt4 }:
 
 stdenv.mkDerivation rec {
   name = "suil-${version}";
-  version = "0.6.2";
+  version = "0.6.4";
 
   src = fetchurl {
     url = "http://download.drobilla.net/${name}.tar.bz2";
-    sha256 = "1rqi16zqnaf30gr2gwb8wbhg8a2l3m5fllf7rabldmgj4b4jlyzp";
+    sha256 = "12pz2w74rhhi6gsskfs6l71vw8qfz8906kbjf5w6jyy1x4kkdca2";
   };
 
-  buildInputs = [ lv2 pkgconfig python serd sord sratom ];
+  buildInputs = [ gtk lv2 pkgconfig python qt4 serd sord sratom ];
 
   configurePhase = "python waf configure --prefix=$out";
 
diff --git a/pkgs/development/libraries/boehm-gc/default.nix b/pkgs/development/libraries/boehm-gc/default.nix
index 0ad643d9ac41..3b2670d988ae 100644
--- a/pkgs/development/libraries/boehm-gc/default.nix
+++ b/pkgs/development/libraries/boehm-gc/default.nix
@@ -1,15 +1,20 @@
 { stdenv, fetchurl }:
 
-stdenv.mkDerivation (rec {
-  name = "boehm-gc-7.2alpha6";
+stdenv.mkDerivation rec {
+  name = "boehm-gc-7.2d";
 
   src = fetchurl {
-    url = "http://www.hpl.hp.com/personal/Hans_Boehm/gc/gc_source/gc-7.2alpha6.tar.gz";
-    sha256 = "05jwadjbrv8pr7z9cb4miskicxqpxm0pca4h2rg5cgbpajr2bx7b";
+    url = http://www.hpl.hp.com/personal/Hans_Boehm/gc/gc_source/gc-7.2d.tar.gz;
+    sha256 = "0phwa5driahnpn79zqff14w9yc8sn3599cxz91m78hqdcpl0mznr";
   };
 
+  configureFlags = "--enable-cplusplus";
+
   doCheck = true;
 
+  # Don't run the native `strip' when cross-compiling.
+  dontStrip = stdenv ? cross;
+
   meta = {
     description = "The Boehm-Demers-Weiser conservative garbage collector for C and C++";
 
@@ -39,10 +44,3 @@ stdenv.mkDerivation (rec {
     platforms = stdenv.lib.platforms.all;
   };
 }
-
-//
-
-# Don't run the native `strip' when cross-compiling.
-(if (stdenv ? cross)
- then { dontStrip = true; }
- else { }))
diff --git a/pkgs/development/libraries/cairo/default.nix b/pkgs/development/libraries/cairo/default.nix
index fe3fe1e251ca..d21f303e7412 100644
--- a/pkgs/development/libraries/cairo/default.nix
+++ b/pkgs/development/libraries/cairo/default.nix
@@ -5,7 +5,7 @@
 , gobjectSupport ? true, glib
 , stdenv, fetchurl, pkgconfig, x11, fontconfig, freetype, xlibs
 , zlib, libpng, pixman, libxcb ? null, xcbutil ? null
-, gettext
+, gettext, libiconvOrEmpty
 }:
 
 assert postscriptSupport -> zlib != null;
@@ -13,11 +13,11 @@ assert pngSupport -> libpng != null;
 assert xcbSupport -> libxcb != null && xcbutil != null;
 
 stdenv.mkDerivation rec {
-  name = "cairo-1.10.2";
-  
+  name = "cairo-1.12.4";
+
   src = fetchurl {
-    url = "http://cairographics.org/releases/${name}.tar.gz";
-    sha1 = "ccce5ae03f99c505db97c286a0c9a90a926d3c6e";
+    url = "http://cairographics.org/releases/${name}.tar.xz";
+    sha1 = "f4158981ed01e73c94fb8072074b17feee61a68b";
   };
 
   buildInputs =
@@ -25,14 +25,16 @@ stdenv.mkDerivation rec {
     ++ stdenv.lib.optionals xcbSupport [ libxcb xcbutil ]
 
     # On non-GNU systems we need GNU Gettext for libintl.
-    ++ stdenv.lib.optional (!stdenv.isLinux) gettext;
+    ++ stdenv.lib.optional (!stdenv.isLinux) gettext
+
+    ++ libiconvOrEmpty;
 
   propagatedBuildInputs =
     [ freetype pixman ] ++
     stdenv.lib.optional gobjectSupport glib ++
     stdenv.lib.optional postscriptSupport zlib ++
     stdenv.lib.optional pngSupport libpng;
-    
+
   configureFlags =
     [ "--enable-tee" ]
     ++ stdenv.lib.optional xcbSupport "--enable-xcb"
@@ -43,7 +45,18 @@ stdenv.mkDerivation rec {
     # `-I' flags to be propagated.
     sed -i "src/cairo.pc.in" \
         -es'|^Cflags:\(.*\)$|Cflags: \1 -I${freetype}/include/freetype2 -I${freetype}/include|g'
-  '';
+  ''
+
+  # On FreeBSD, `-ldl' doesn't exist.
+  + (stdenv.lib.optionalString stdenv.isFreeBSD
+       '' for i in "util/"*"/Makefile.in" boilerplate/Makefile.in
+          do
+            cat "$i" | sed -es/-ldl//g > t
+            mv t "$i"
+          done
+       '');
+
+  enableParallelBuilding = true;
 
   # The default `--disable-gtk-doc' is ignored.
   postInstall = "rm -rf $out/share/gtk-doc";
diff --git a/pkgs/development/libraries/dbus/default.nix b/pkgs/development/libraries/dbus/default.nix
index c943fe87fb38..0b8029c94dbf 100644
--- a/pkgs/development/libraries/dbus/default.nix
+++ b/pkgs/development/libraries/dbus/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl, pkgconfig, expat, libX11, libICE, libSM, useX11 ? true }:
 
 let
-  version = "1.4.16";
+  version = "1.6.4";
 
   src = fetchurl {
     url = "http://dbus.freedesktop.org/releases/dbus/dbus-${version}.tar.gz";
-    sha256 = "1ii93d0lzj5xm564dcq6ca4s0nvm5i9fx3jp0s7i9hlc5wkfd3hx";
+    sha256 = "1wacqyfkcpayg7f8rvx9awqg275n5pksxq5q7y21lxjx85x6pfjz";
   };
 
   patches = [ ./ignore-missing-includedirs.patch ];
@@ -21,6 +21,10 @@ in rec {
 
     buildInputs = [ expat ];
 
+    # FIXME: dbus has optional systemd integration when checking
+    # at_console policies.  How to enable this without introducing a
+    # circular dependency between dbus and systemd?
+
     inherit src patches configureFlags;
 
     preConfigure =
@@ -58,6 +62,8 @@ in rec {
       '';
 
     postConfigure = "cd tools";
+
+    installFlags = "localstatedir=$TMPDIR/var";
   };
 
   # I'm too lazy to separate daemon and libs now.
diff --git a/pkgs/development/libraries/expat/cve-2009-3560.patch b/pkgs/development/libraries/expat/cve-2009-3560.patch
deleted file mode 100644
index 71da9e393519..000000000000
--- a/pkgs/development/libraries/expat/cve-2009-3560.patch
+++ /dev/null
@@ -1,18 +0,0 @@
-From: http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/dev-libs/expat/files/expat-2.0.1-CVE-2009-3560-revised.patch?revision=1.1
-
-http://nvd.nist.gov/nvd.cfm?cvename=CVE-2009-3560
-http://bugs.gentoo.org/show_bug.cgi?id=303727
-http://cvs.fedoraproject.org/viewvc/rpms/expat/devel/
-
---- a/lib/xmlparse.c
-+++ b/lib/xmlparse.c
-@@ -3703,6 +3703,9 @@ doProlog(XML_Parser parser,
-         return XML_ERROR_UNCLOSED_TOKEN;
-       case XML_TOK_PARTIAL_CHAR:
-         return XML_ERROR_PARTIAL_CHAR;
-+      case -XML_TOK_PROLOG_S:
-+        tok = -tok;
-+        break;
-       case XML_TOK_NONE:
- #ifdef XML_DTD
-         /* for internal PE NOT referenced between declarations */
diff --git a/pkgs/development/libraries/expat/default.nix b/pkgs/development/libraries/expat/default.nix
index 35a2945207b4..6b675230119e 100644
--- a/pkgs/development/libraries/expat/default.nix
+++ b/pkgs/development/libraries/expat/default.nix
@@ -1,17 +1,15 @@
 { stdenv, fetchurl }:
 
-stdenv.mkDerivation {
-  name = "expat-2.0.1";
-  
+stdenv.mkDerivation rec {
+  name = "expat-2.1.0";
+
   src = fetchurl {
-    url = mirror://sourceforge/expat/expat-2.0.1.tar.gz;
-    sha256 = "14sy5qx9hgjyfs743iq8ywldhp5w4n6cscqf2p4hgrw6vys60xl4";
+    url = "mirror://sourceforge/expat/${name}.tar.gz";
+    sha256 = "11pblz61zyxh68s5pdcbhc30ha1b2vfjd83aiwfg4vc15x3hadw2";
   };
 
-  patches = [ ./cve-2009-3560.patch ];
-
   meta = {
-    homepage = http://expat.sourceforge.net/;
+    homepage = http://www.libexpat.org/;
     description = "A stream-oriented XML parser library written in C";
   };
 }
diff --git a/pkgs/development/libraries/ffmpeg/1.0.nix b/pkgs/development/libraries/ffmpeg/1.0.nix
new file mode 100644
index 000000000000..7ac77ffdcb7a
--- /dev/null
+++ b/pkgs/development/libraries/ffmpeg/1.0.nix
@@ -0,0 +1,85 @@
+{ stdenv, fetchurl, pkgconfig, yasm, zlib, bzip2
+, mp3Support ? true, lame ? null
+, speexSupport ? true, speex ? null
+, theoraSupport ? true, libtheora ? null
+, vorbisSupport ? true, libvorbis ? null
+, vpxSupport ? false, libvpx ? null
+, x264Support ? true, x264 ? null
+, xvidSupport ? true, xvidcore ? null
+, vdpauSupport ? true, libvdpau ? null
+, faacSupport ? false, faac ? null
+, dc1394Support ? false, libdc1394 ? null
+, x11grabSupport ? false, libXext ? null, libXfixes ? null
+}:
+
+assert speexSupport -> speex != null;
+assert theoraSupport -> libtheora != null;
+assert vorbisSupport -> libvorbis != null;
+assert vpxSupport -> libvpx != null;
+assert x264Support -> x264 != null;
+assert xvidSupport -> xvidcore != null;
+assert vdpauSupport -> libvdpau != null;
+assert faacSupport -> faac != null;
+assert x11grabSupport -> libXext != null && libXfixes != null;
+
+stdenv.mkDerivation rec {
+  name = "ffmpeg-1.0";
+  
+  src = fetchurl {
+    url = "http://www.ffmpeg.org/releases/${name}.tar.bz2";
+    sha256 = "1jbi85z2zkk3fh09l9f1s70kpvsz8706ay4lsw75395q8vic70hd";
+  };
+  
+  # `--enable-gpl' (as well as the `postproc' and `swscale') mean that
+  # the resulting library is GPL'ed, so it can only be used in GPL'ed
+  # applications.
+  configureFlags = [
+    "--enable-gpl"
+    "--enable-postproc"
+    "--enable-swscale"
+    "--disable-ffplay"
+    "--enable-shared"
+    "--enable-runtime-cpudetect"
+  ]
+    ++ stdenv.lib.optional mp3Support "--enable-libmp3lame"
+    ++ stdenv.lib.optional speexSupport "--enable-libspeex"
+    ++ stdenv.lib.optional theoraSupport "--enable-libtheora"
+    ++ stdenv.lib.optional vorbisSupport "--enable-libvorbis"
+    ++ stdenv.lib.optional vpxSupport "--enable-libvpx"
+    ++ stdenv.lib.optional x264Support "--enable-libx264"
+    ++ stdenv.lib.optional xvidSupport "--enable-libxvid"
+    ++ stdenv.lib.optional vdpauSupport "--enable-vdpau"
+    ++ stdenv.lib.optional faacSupport "--enable-libfaac --enable-nonfree"
+    ++ stdenv.lib.optional dc1394Support "--enable-libdc1394"
+    ++ stdenv.lib.optional x11grabSupport "--enable-x11grab";
+
+  buildInputs = [ pkgconfig lame yasm zlib bzip2 ]
+    ++ stdenv.lib.optional mp3Support lame
+    ++ stdenv.lib.optional speexSupport speex
+    ++ stdenv.lib.optional theoraSupport libtheora
+    ++ stdenv.lib.optional vorbisSupport libvorbis
+    ++ stdenv.lib.optional vpxSupport libvpx
+    ++ stdenv.lib.optional x264Support x264
+    ++ stdenv.lib.optional xvidSupport xvidcore
+    ++ stdenv.lib.optional vdpauSupport libvdpau
+    ++ stdenv.lib.optional faacSupport faac
+    ++ stdenv.lib.optional dc1394Support libdc1394
+    ++ stdenv.lib.optionals x11grabSupport [ libXext libXfixes ];
+
+  enableParallelBuilding = true;
+    
+  crossAttrs = {
+    dontSetConfigureCross = true;
+    configureFlags = configureFlags ++ [
+      "--cross-prefix=${stdenv.cross.config}-"
+      "--enable-cross-compile"
+      "--target_os=linux"
+      "--arch=${stdenv.cross.arch}"
+      ];
+  };
+
+  meta = {
+    homepage = http://www.ffmpeg.org/;
+    description = "A complete, cross-platform solution to record, convert and stream audio and video";
+  };
+}
diff --git a/pkgs/development/libraries/ffmpeg/default.nix b/pkgs/development/libraries/ffmpeg/default.nix
index 02cc60d9b8db..3b5e28a2ee7f 100644
--- a/pkgs/development/libraries/ffmpeg/default.nix
+++ b/pkgs/development/libraries/ffmpeg/default.nix
@@ -21,11 +21,11 @@ assert vdpauSupport -> libvdpau != null;
 assert faacSupport -> faac != null;
 
 stdenv.mkDerivation rec {
-  name = "ffmpeg-1.0";
+  name = "ffmpeg-0.10";
   
   src = fetchurl {
     url = "http://www.ffmpeg.org/releases/${name}.tar.bz2";
-    sha256 = "1jbi85z2zkk3fh09l9f1s70kpvsz8706ay4lsw75395q8vic70hd";
+    sha256 = "1ybzw6d5axr807141izvm2yf4pa0hc1zcywj89nsn3qsdnknlna3";
   };
   
   # `--enable-gpl' (as well as the `postproc' and `swscale') mean that
diff --git a/pkgs/development/libraries/fontconfig/default.nix b/pkgs/development/libraries/fontconfig/default.nix
index 8e016401e3de..116fe3c0c20f 100644
--- a/pkgs/development/libraries/fontconfig/default.nix
+++ b/pkgs/development/libraries/fontconfig/default.nix
@@ -1,22 +1,21 @@
-{ stdenv, fetchurl, freetype, expat }:
+{ stdenv, fetchurl, pkgconfig, freetype, expat }:
 
 stdenv.mkDerivation rec {
-  name = "fontconfig-2.8.0";
-  
+  name = "fontconfig-2.10.1";
+
   src = fetchurl {
     url = "http://fontconfig.org/release/${name}.tar.gz";
-    sha256 = "0d9370qnn1qzq0jidbycin2frkcr1kqj04jbgb79ykb5x9p1qaps";
+    sha256 = "08h252crb3aqciwdk81jypmz2i7618dzqn3zlr87w1f017wjp4f3";
   };
-  
-  buildInputs = [ freetype ];
+
+  buildInputs = [ pkgconfig freetype ];
+
   propagatedBuildInputs = [ expat ]; # !!! shouldn't be necessary, but otherwise pango breaks
 
   configureFlags = "--with-confdir=/etc/fonts --with-cache-dir=/var/cache/fontconfig --disable-docs --with-default-fonts=";
 
   # We should find a better way to access the arch reliably.
-  crossArch = if (stdenv ? cross && stdenv.cross != null)
-    then stdenv.cross.arch else null;
-
+  crossArch = stdenv.cross.arch or null;
 
   preConfigure = ''
     if test -n "$crossConfig"; then
@@ -24,6 +23,8 @@ stdenv.mkDerivation rec {
     fi
   '';
 
+  enableParallelBuilding = true;
+
   # Don't try to write to /etc/fonts or /var/cache/fontconfig at install time.
   installFlags = "CONFDIR=$(out)/etc/fonts RUN_FC_CACHE_TEST=false fc_cachedir=$(TMPDIR)/dummy";
 
@@ -31,5 +32,5 @@ stdenv.mkDerivation rec {
     description = "A library for font customization and configuration";
     homepage = http://fontconfig.org/;
     license = "bsd";
-  };  
+  };
 }
diff --git a/pkgs/development/libraries/freetype/default.nix b/pkgs/development/libraries/freetype/default.nix
index e53a3c297ff1..a2d14be50017 100644
--- a/pkgs/development/libraries/freetype/default.nix
+++ b/pkgs/development/libraries/freetype/default.nix
@@ -5,12 +5,12 @@
   useEncumberedCode ? false
 }:
 
-stdenv.mkDerivation (rec {
-  name = "freetype-2.4.4";
-  
+stdenv.mkDerivation rec {
+  name = "freetype-2.4.10";
+
   src = fetchurl {
     url = "mirror://sourceforge/freetype/${name}.tar.bz2";
-    sha256 = "1vqg93473j6jma1bxms7mczk32j8is0g9inkcmmmqdsdvk3q30jb";
+    sha256 = "0bwrkqpygayfc1rf6rr1nb8l3svgn1fmjz8davg2hnf46cn293hc";
   };
 
   configureFlags = "--disable-static";
@@ -21,16 +21,26 @@ stdenv.mkDerivation (rec {
   # The asm for armel is written with the 'asm' keyword.
   CFLAGS = stdenv.lib.optionalString stdenv.isArm "-std=gnu99";
 
+  # FreeType requires GNU Make, which is not part of stdenv on FreeBSD.
+  buildInputs = stdenv.lib.optional (stdenv.system == "i686-freebsd") gnumake;
+
+  enableParallelBuilding = true;
+
+  postInstall =
+    ''
+      ln -s freetype2/freetype $out/include/freetype
+    '';
+
+  crossAttrs = {
+    # Somehow it calls the unwrapped gcc, "i686-pc-linux-gnu-gcc", instead
+    # of gcc. I think it's due to the unwrapped gcc being in the PATH. I don't
+    # know why it's on the PATH.
+    configureFlags = "--disable-static CC_BUILD=gcc";
+  };
+
   meta = {
     description = "A font rendering engine";
     homepage = http://www.freetype.org/;
     license = "GPLv2+"; # or the FreeType License (BSD + advertising clause)
   };
 }
-
-//
-
-# FreeType requires GNU Make, which is not part of stdenv on FreeBSD.
-(if stdenv.system == "i686-freebsd"
- then { buildInputs = [ gnumake ]; }
- else {}))
diff --git a/pkgs/development/libraries/gamin/debian-patches.nix b/pkgs/development/libraries/gamin/debian-patches.nix
index 1da558db141b..f784b8ccfee0 100644
--- a/pkgs/development/libraries/gamin/debian-patches.nix
+++ b/pkgs/development/libraries/gamin/debian-patches.nix
@@ -1,6 +1,6 @@
 # Generated by debian-patches.sh from debian-patches.txt
 let
-  prefix = "http://patch-tracker.debian.org/patch/series/dl/gamin/0.1.10-4";
+  prefix = "http://patch-tracker.debian.org/patch/series/dl/gamin/0.1.10-4.1";
 in
 [
   {
diff --git a/pkgs/development/libraries/gdk-pixbuf/2.24.x.nix b/pkgs/development/libraries/gdk-pixbuf/2.26.x.nix
index 5c0860196d39..07e66df33b57 100644
--- a/pkgs/development/libraries/gdk-pixbuf/2.24.x.nix
+++ b/pkgs/development/libraries/gdk-pixbuf/2.26.x.nix
@@ -1,12 +1,11 @@
-{ stdenv, fetchurl, pkgconfig, glib, libtiff, libjpeg, libpng, libX11, xz
-, jasper }:
+{ stdenv, fetchurl, pkgconfig, glib, libtiff, libjpeg, libpng, libX11, xz, jasper }:
 
-stdenv.mkDerivation {
-  name = "gdk-pixbuf-2.24.1";
+stdenv.mkDerivation rec {
+  name = "gdk-pixbuf-2.26.1";
 
   src = fetchurl {
-    url = mirror://gnome/sources/gdk-pixbuf/2.24/gdk-pixbuf-2.24.1.tar.xz;
-    sha256 = "1qdywh1r75lalb7z6s9pm6pmqx82chrrxqb8cdqi629nvc03yyns";
+    url = "mirror://gnome/sources/gdk-pixbuf/2.26/${name}.tar.xz";
+    sha256 = "a60af12b58d9cc15ba4c680c6730ce5d38e8d664af1d575a379385b94b4ec7ba";
   };
 
   # !!! We might want to factor out the gdk-pixbuf-xlib subpackage.
diff --git a/pkgs/development/libraries/glib/2.30.x.nix b/pkgs/development/libraries/glib/2.34.x.nix
index 72baf0154d9f..7fb61ac20e23 100644
--- a/pkgs/development/libraries/glib/2.30.x.nix
+++ b/pkgs/development/libraries/glib/2.34.x.nix
@@ -11,26 +11,25 @@
 #     Reminder: add 'sed -e 's@python2\.[0-9]@python@' -i
 #       $out/bin/gtester-report' to postInstall if this is solved
 
-stdenv.mkDerivation rec {
-  name = "glib-2.30.3";
+stdenv.mkDerivation (rec {
+  name = "glib-2.34.0";
 
   src = fetchurl {
-    url = mirror://gnome/sources/glib/2.30/glib-2.30.3.tar.xz;
-    sha256 = "09yxfajynbw78kji48z384lylp67kihfi1g78qrrjif4f5yb5jz6";
+    url = "mirror://gnome/sources/glib/2.34/${name}.tar.xz";
+    sha256 = "f69b112f8848be35139d9099b62bc81649241f78f6a775516f0d4c9b47f65144";
   };
 
   # configure script looks for d-bus but it is only needed for tests
-  buildInputs = [ pcre ]
-    ++ (if libiconvOrNull != null
-        then [ libiconvOrNull ]
-        else []);
+  buildInputs = [ libiconvOrNull ];
 
   buildNativeInputs = [ perl pkgconfig gettext python ];
 
-  propagatedBuildInputs = [ zlib libffi ];
+  propagatedBuildInputs = [ pcre zlib libffi ];
 
   configureFlags = "--with-pcre=system --disable-fam";
 
+  enableParallelBuilding = true;
+
   passthru.gioModuleDir = "lib/gio/modules";
 
   postInstall = ''rm -rvf $out/share/gtk-doc'';
@@ -53,3 +52,13 @@ stdenv.mkDerivation rec {
     platforms = stdenv.lib.platforms.linux;
   };
 }
+
+//
+
+(stdenv.lib.optionalAttrs stdenv.isDarwin {
+  # XXX: Disable the NeXTstep back-end because stdenv.gcc doesn't support
+  # Objective-C.
+  postConfigure =
+    '' sed -i configure -e's/glib_have_cocoa=yes/glib_have_cocoa=no/g'
+    '';
+}))
diff --git a/pkgs/development/libraries/gnu-efi/default.nix b/pkgs/development/libraries/gnu-efi/default.nix
index c43e9f6b4da6..731b44aa0ecd 100644
--- a/pkgs/development/libraries/gnu-efi/default.nix
+++ b/pkgs/development/libraries/gnu-efi/default.nix
@@ -3,11 +3,11 @@
 }:
 
 stdenv.mkDerivation {
-  name = "gnu-efi-3.0p";
+  name = "gnu-efi-3.0r";
 
   src = fetchurl {
-    url = "mirror://sourceforge/gnu-efi/gnu-efi_3.0p.orig.tar.gz";
-    sha256 = "1pm4wk1gma7mb8z19js7kb5y31a0zk308mkafmq6gb0b2a0i39cn";
+    url = "mirror://sourceforge/gnu-efi/gnu-efi_3.0r.orig.tar.gz";
+    sha256 = "1zi298wsg8v29xj4azcawqfjbxqi2w7l60agf7x2ph2lnqlga2v5";
   };
 
   meta = {
diff --git a/pkgs/development/libraries/gnutls/default.nix b/pkgs/development/libraries/gnutls/default.nix
index 93f5dab537e9..ee566d46b658 100644
--- a/pkgs/development/libraries/gnutls/default.nix
+++ b/pkgs/development/libraries/gnutls/default.nix
@@ -5,29 +5,29 @@ assert guileBindings -> guile != null;
 
 stdenv.mkDerivation (rec {
 
-  name = "gnutls-3.0.22";
+  name = "gnutls-3.1.3";
 
   src = fetchurl {
     url = "mirror://gnu/gnutls/${name}.tar.xz";
-    sha256 = "1pp90fm27qi5cd0pq18xcmnl79xcbfwxc54bg1xi1wv0vryqdpcr";
+    sha256 = "0fff9frz0ycbnppfn0w4a2s9x27k21l4hh9zbax3v7a8cg33dcpw";
   };
 
-  # FIXME: Turn into a Nix list.
+  # Note: GMP is a dependency of Nettle, whose public headers include
+  # GMP headers, hence the hack.
   configurePhase = ''
     ./configure --prefix="$out"                                 \
       --disable-dependency-tracking --enable-fast-install       \
       --without-p11-kit                                         \
-      --with-lzo --with-libtasn1-prefix="${libtasn1}"		\
+      --with-lzo --with-libtasn1-prefix="${libtasn1}"           \
+      --with-libnettle-prefix="${nettle}"                       \
+      CPPFLAGS="-I${gmp}/include"                               \
       ${if guileBindings
         then "--enable-guile --with-guile-site-dir=\"$out/share/guile/site\""
-        else ""}${if stdenv.isSunOS
-          # TODO: Use `--with-libnettle-prefix' on all platforms
-          # Note: GMP is a dependency of Nettle, whose public headers include
-          # GMP headers, hence the hack.
-        then " --with-libnettle-prefix=${nettle} CPPFLAGS=-I${gmp}/include"
         else ""}
   '';
 
+  enableParallelBuilding = true;
+
   buildInputs = [ zlib lzo ]
     ++ stdenv.lib.optional guileBindings guile;
 
diff --git a/pkgs/development/libraries/gobject-introspection/default.nix b/pkgs/development/libraries/gobject-introspection/default.nix
index de9059dbd153..fe1d519f5625 100644
--- a/pkgs/development/libraries/gobject-introspection/default.nix
+++ b/pkgs/development/libraries/gobject-introspection/default.nix
@@ -1,12 +1,7 @@
 { stdenv, fetchurl, glib, flex, bison, pkgconfig, libffi, python }:
 
-let
-  baseName = "gobject-introspection";
-  v = "0.10.8";
-in
-
 stdenv.mkDerivation rec {
-  name = "${baseName}-${v}";
+  name = "gobject-introspection-1.34.0";
 
   buildInputs = [ flex bison glib pkgconfig python ];
   propagatedBuildInputs = [ libffi ];
@@ -16,8 +11,8 @@ stdenv.mkDerivation rec {
   configureFlags = "--disable-tests";
 
   src = fetchurl {
-    url = "mirror://gnome/sources/${baseName}/0.10/${name}.tar.bz2";
-    sha256 = "5b1387ff37f03db880a2b1cbd6c6b6dfb923a29468d4d8367c458abf7704c61e";
+    url = "mirror://gnome/sources/gobject-introspection/1.34/${name}.tar.xz";
+    sha256 = "80e211ea95404fc7c5fa3b04ba69ee0b29af70847af315155ab06b8cff832c85";
   };
 
   postInstall = "rm -rf $out/share/gtk-doc";
diff --git a/pkgs/development/libraries/goffice/default.nix b/pkgs/development/libraries/goffice/default.nix
index b90cbbad9206..1eaa1baf86d6 100644
--- a/pkgs/development/libraries/goffice/default.nix
+++ b/pkgs/development/libraries/goffice/default.nix
@@ -1,19 +1,18 @@
 { fetchurl, stdenv, pkgconfig, glib, gtk, libglade, bzip2
 , pango, libgsf, libxml2, libart, intltool, gettext
-, cairo, gconf, libgnomeui }:
+, cairo, gconf, libgnomeui, pcre }:
 
 stdenv.mkDerivation rec {
-  name = "goffice-0.6.6";
+  name = "goffice-0.8.17";
 
   src = fetchurl {
-    # An old version, but one that's actually usable for Gnucash.
-    url = "mirror://gnome/sources/goffice/0.6/${name}.tar.bz2";
-    sha256 = "11lzhmk7g6mdsbyn4p4a6q2d9m8j71vad2haw6pmzyjzv2gs4rq7";
+    url = "mirror://gnome/sources/goffice/0.8/${name}.tar.xz";
+    sha256 = "165070beb67b84580afe80a8a100b674a81d553ab791acd72ac0c655f4fadb15";
   };
 
   buildInputs = [
     pkgconfig libglade bzip2 libart intltool gettext
-    gconf libgnomeui
+    gconf libgnomeui pcre
   ];
 
   propagatedBuildInputs = [
@@ -21,6 +20,12 @@ stdenv.mkDerivation rec {
     glib libgsf libxml2 gtk libglade libart cairo pango
   ];
 
+  postInstall =
+    ''
+      # Get GnuCash to build.  Might be unnecessary if we upgrade pkgconfig.
+      substituteInPlace $out/lib/pkgconfig/libgoffice-*.pc --replace Requires.private Requires
+    '';
+
   doCheck = true;
 
   meta = {
diff --git a/pkgs/development/libraries/gstreamer/gst-plugins-base/default.nix b/pkgs/development/libraries/gstreamer/gst-plugins-base/default.nix
index 47762660b29a..2ac325dc2822 100644
--- a/pkgs/development/libraries/gstreamer/gst-plugins-base/default.nix
+++ b/pkgs/development/libraries/gstreamer/gst-plugins-base/default.nix
@@ -8,14 +8,14 @@
 }:
 
 stdenv.mkDerivation rec {
-  name = "gst-plugins-base-0.10.35";
+  name = "gst-plugins-base-0.10.36";
 
   src = fetchurl {
     urls = [
-      "${meta.homepage}/src/gst-plugins-base/${name}.tar.bz2"
-      "mirror://gentoo/distfiles/${name}.tar.bz2"
+      "${meta.homepage}/src/gst-plugins-base/${name}.tar.xz"
+      "mirror://gentoo/distfiles/${name}.tar.xz"
       ];
-    sha256 = "00vis5kg6km26zaq1ywz7ki9xvkwpc9c5wn41d01z2i5nldz096d";
+    sha256 = "0jp6hjlra98cnkal4n6bdmr577q8mcyp3c08s3a02c4hjhw5rr0z";
   };
 
   patchPhase = ''
@@ -43,3 +43,4 @@ stdenv.mkDerivation rec {
     license = "LGPLv2+";
   };
 }
+
diff --git a/pkgs/development/libraries/gstreamer/gstreamer/default.nix b/pkgs/development/libraries/gstreamer/gstreamer/default.nix
index 01d5487302ce..5d33e7bff03d 100644
--- a/pkgs/development/libraries/gstreamer/gstreamer/default.nix
+++ b/pkgs/development/libraries/gstreamer/gstreamer/default.nix
@@ -1,14 +1,14 @@
 { fetchurl, stdenv, perl, bison, flex, pkgconfig, glib, libxml2 }:
 
 stdenv.mkDerivation rec {
-  name = "gstreamer-0.10.35";
+  name = "gstreamer-0.10.36";
 
   src = fetchurl {
     urls =
-      [ "${meta.homepage}/src/gstreamer/${name}.tar.bz2"
-        "mirror://gentoo/distfiles/${name}.tar.bz2"
+      [ "${meta.homepage}/src/gstreamer/${name}.tar.xz"
+        "mirror://gentoo/distfiles/${name}.tar.xz"
       ];
-    sha256 = "11lp13lig3c6qys80phyvsik56r9y0c95vg2jxxliqj6rnigwyw1";
+    sha256 = "1nkid1n2l3rrlmq5qrf5yy06grrkwjh3yxl5g0w58w0pih8allci";
   };
 
   buildInputs = [ perl bison flex pkgconfig ];
diff --git a/pkgs/development/libraries/gtk+/2.24.x.nix b/pkgs/development/libraries/gtk+/2.24.x.nix
index 12b270d637b0..2bf657e04e77 100644
--- a/pkgs/development/libraries/gtk+/2.24.x.nix
+++ b/pkgs/development/libraries/gtk+/2.24.x.nix
@@ -7,24 +7,18 @@
 assert xineramaSupport -> xlibs.libXinerama != null;
 assert cupsSupport -> cups != null;
 
-stdenv.mkDerivation {
-  name = "gtk+-2.24.10";
+stdenv.mkDerivation rec {
+  name = "gtk+-2.24.13";
 
   src = fetchurl {
-    url = mirror://gnome/sources/gtk+/2.24/gtk+-2.24.10.tar.xz;
-    sha256 = "128fb8vmsqmfmpf1r8na65281jwkqix4q7wix399xqfnp4dy6mpa";
+    url = "mirror://gnome/sources/gtk+/2.24/${name}.tar.xz";
+    sha256 = "35e1a01e46b02970b02ee9f299390d0aa57c1215ad2667bcd584b72f4ea6513d";
   };
 
-  patches =
-    [ # Fix broken icons such as the back/forward buttons in Firefox.
-      # http://bugs.gentoo.org/339319
-      ./old-icons.patch
-    ];
-
   enableParallelBuilding = true;
-  
+
   buildNativeInputs = [ perl pkgconfig ];
-  
+
   propagatedBuildInputs =
     [ xlibs.xlibs glib atk pango gdk_pixbuf cairo
       xlibs.libXrandr xlibs.libXrender xlibs.libXcomposite xlibs.libXi
@@ -35,7 +29,7 @@ stdenv.mkDerivation {
   configureFlags = "--with-xinput=yes";
 
   postInstall = "rm -rf $out/share/gtk-doc";
-  
+
   meta = {
     description = "A multi-platform toolkit for creating graphical user interfaces";
 
diff --git a/pkgs/development/libraries/gtk+/3.2.x.nix b/pkgs/development/libraries/gtk+/3.2.x.nix
index df59c0176260..9f333c03fabf 100644
--- a/pkgs/development/libraries/gtk+/3.2.x.nix
+++ b/pkgs/development/libraries/gtk+/3.2.x.nix
@@ -8,11 +8,11 @@ assert xineramaSupport -> xlibs.libXinerama != null;
 assert cupsSupport -> cups != null;
 
 stdenv.mkDerivation rec {
-  name = "gtk+-3.2.3";
+  name = "gtk+-3.2.4";
 
   src = fetchurl {
-    url = mirror://gnome/sources/gtk+/3.2/gtk+-3.2.3.tar.xz;
-    sha256 = "0g8x2kcqq17bccm4yszim837saj73zfk66ia2azcgfqfa7r21kz2";
+    url = "mirror://gnome/sources/gtk+/3.2/${name}.tar.xz";
+    sha256 = "f981bf514858c00d7084bd6f6c34b3c60b8aebdb959e7aca6faa59ed67c136bd";
   };
 
   enableParallelBuilding = true;
diff --git a/pkgs/development/libraries/gtk+/old-icons.patch b/pkgs/development/libraries/gtk+/old-icons.patch
deleted file mode 100644
index e53d87474d07..000000000000
--- a/pkgs/development/libraries/gtk+/old-icons.patch
+++ /dev/null
@@ -1,270 +0,0 @@
-diff -ru gtk+-2.24.5-orig/gtk/Makefile.in gtk+-2.24.5/gtk/Makefile.in
---- gtk+-2.24.5-orig/gtk/Makefile.in	2011-06-16 01:56:37.000000000 +0200
-+++ gtk+-2.24.5/gtk/Makefile.in	2011-07-07 15:38:06.000000000 +0200
-@@ -1616,7 +1616,173 @@
- 	stock-icons/24/folder-remote.png 		\
- 	stock-icons/24/user-home.png 			\
- 	stock-icons/24/user-desktop.png 		\
--	stock-icons/24/text-x-generic.png
-+	stock-icons/24/text-x-generic.png		\
-+	stock-icons/16/gtk-quit.png			\
-+	stock-icons/16/gtk-info.png			\
-+	stock-icons/16/gtk-file.png			\
-+	stock-icons/16/gtk-open.png			\
-+	stock-icons/16/gtk-print-preview.png		\
-+	stock-icons/16/gtk-print.png			\
-+	stock-icons/16/gtk-properties.png		\
-+	stock-icons/16/gtk-revert-to-saved-ltr.png	\
-+	stock-icons/16/gtk-revert-to-saved-rtl.png	\
-+	stock-icons/16/gtk-save-as.png			\
-+	stock-icons/16/gtk-new.png			\
-+	stock-icons/16/gtk-harddisk.png			\
-+	stock-icons/16/gtk-clear.png			\
-+	stock-icons/16/gtk-copy.png			\
-+	stock-icons/16/gtk-cut.png			\
-+	stock-icons/16/gtk-delete.png			\
-+	stock-icons/16/gtk-find-and-replace.png		\
-+	stock-icons/16/gtk-find.png			\
-+	stock-icons/16/gtk-paste.png			\
-+	stock-icons/16/gtk-redo-ltr.png			\
-+	stock-icons/16/gtk-redo-rtl.png			\
-+	stock-icons/16/gtk-select-all.png		\
-+	stock-icons/16/gtk-undo-ltr.png			\
-+	stock-icons/16/gtk-undo-rtl.png			\
-+	stock-icons/16/gtk-directory.png		\
-+	stock-icons/16/gtk-unindent-ltr.png		\
-+	stock-icons/16/gtk-unindent-rtl.png		\
-+	stock-icons/16/gtk-indent-ltr.png		\
-+	stock-icons/16/gtk-indent-rtl.png		\
-+	stock-icons/16/gtk-justify-center.png		\
-+	stock-icons/16/gtk-justify-fill.png		\
-+	stock-icons/16/gtk-justify-left.png		\
-+	stock-icons/16/gtk-justify-right.png		\
-+	stock-icons/16/gtk-bold.png			\
-+	stock-icons/16/gtk-italic.png			\
-+	stock-icons/16/gtk-strikethrough.png		\
-+	stock-icons/16/gtk-underline.png		\
-+	stock-icons/16/gtk-goto-bottom.png		\
-+	stock-icons/16/gtk-go-down.png			\
-+	stock-icons/16/gtk-goto-first-ltr.png		\
-+	stock-icons/16/gtk-home.png			\
-+	stock-icons/16/gtk-jump-to-ltr.png		\
-+	stock-icons/16/gtk-jump-to-rtl.png		\
-+	stock-icons/16/gtk-goto-last-ltr.png		\
-+	stock-icons/16/gtk-go-forward-ltr.png		\
-+	stock-icons/16/gtk-go-back-ltr.png		\
-+	stock-icons/16/gtk-goto-top.png			\
-+	stock-icons/16/gtk-go-up.png			\
-+	stock-icons/16/gtk-about.png			\
-+	stock-icons/16/gtk-help.png			\
-+	stock-icons/16/gtk-missing-image.png		\
-+	stock-icons/16/gtk-add.png			\
-+	stock-icons/16/gtk-remove.png			\
-+	stock-icons/16/gtk-floppy.png			\
-+	stock-icons/16/gtk-cdrom.png			\
-+	stock-icons/16/gtk-media-pause.png		\
-+	stock-icons/16/gtk-media-play-ltr.png		\
-+	stock-icons/16/gtk-media-play-rtl.png		\
-+	stock-icons/16/gtk-media-stop.png		\
-+	stock-icons/16/gtk-media-record.png		\
-+	stock-icons/16/gtk-media-rewind-ltr.png		\
-+	stock-icons/16/gtk-media-forward-ltr.png	\
-+	stock-icons/16/gtk-media-previous-ltr.png	\
-+	stock-icons/16/gtk-media-next-ltr.png		\
-+	stock-icons/16/gtk-network.png			\
-+	stock-icons/16/gtk-print-error.png		\
-+	stock-icons/16/gtk-print-report.png		\
-+	stock-icons/16/gtk-print-paused.png		\
-+	stock-icons/16/gtk-print-warning.png		\
-+	stock-icons/16/gtk-stop.png			\
-+	stock-icons/16/gtk-execute.png			\
-+	stock-icons/16/gtk-spell-check.png		\
-+	stock-icons/16/gtk-fullscreen.png		\
-+	stock-icons/16/gtk-refresh.png			\
-+	stock-icons/16/gtk-leave-fullscreen.png		\
-+	stock-icons/16/gtk-sort-ascending.png		\
-+	stock-icons/16/gtk-sort-descending.png		\
-+	stock-icons/16/gtk-close.png			\
-+	stock-icons/16/gtk-zoom-fit.png			\
-+	stock-icons/16/gtk-zoom-in.png			\
-+	stock-icons/16/gtk-zoom-100.png			\
-+	stock-icons/16/gtk-zoom-out.png			\
-+	stock-icons/24/gtk-quit.png			\
-+	stock-icons/24/gtk-info.png			\
-+	stock-icons/24/gtk-file.png			\
-+	stock-icons/24/gtk-open.png			\
-+	stock-icons/24/gtk-print-preview.png		\
-+	stock-icons/24/gtk-print.png			\
-+	stock-icons/24/gtk-properties.png		\
-+	stock-icons/24/gtk-revert-to-saved-ltr.png	\
-+	stock-icons/24/gtk-revert-to-saved-rtl.png	\
-+	stock-icons/24/gtk-save-as.png			\
-+	stock-icons/24/gtk-new.png			\
-+	stock-icons/24/gtk-harddisk.png			\
-+	stock-icons/24/gtk-clear.png			\
-+	stock-icons/24/gtk-copy.png			\
-+	stock-icons/24/gtk-cut.png			\
-+	stock-icons/24/gtk-delete.png			\
-+	stock-icons/24/gtk-find-and-replace.png		\
-+	stock-icons/24/gtk-find.png			\
-+	stock-icons/24/gtk-paste.png			\
-+	stock-icons/24/gtk-redo-ltr.png			\
-+	stock-icons/24/gtk-redo-rtl.png			\
-+	stock-icons/24/gtk-select-all.png		\
-+	stock-icons/24/gtk-undo-ltr.png			\
-+	stock-icons/24/gtk-undo-rtl.png			\
-+	stock-icons/24/gtk-directory.png		\
-+	stock-icons/24/gtk-unindent-ltr.png		\
-+	stock-icons/24/gtk-unindent-rtl.png		\
-+	stock-icons/24/gtk-indent-ltr.png		\
-+	stock-icons/24/gtk-indent-rtl.png		\
-+	stock-icons/24/gtk-justify-center.png		\
-+	stock-icons/24/gtk-justify-fill.png		\
-+	stock-icons/24/gtk-justify-left.png		\
-+	stock-icons/24/gtk-justify-right.png		\
-+	stock-icons/24/gtk-bold.png			\
-+	stock-icons/24/gtk-italic.png			\
-+	stock-icons/24/gtk-strikethrough.png		\
-+	stock-icons/24/gtk-underline.png		\
-+	stock-icons/24/gtk-goto-bottom.png		\
-+	stock-icons/24/gtk-go-down.png			\
-+	stock-icons/24/gtk-goto-first-ltr.png		\
-+	stock-icons/24/gtk-home.png			\
-+	stock-icons/24/gtk-jump-to-ltr.png		\
-+	stock-icons/24/gtk-jump-to-rtl.png		\
-+	stock-icons/24/gtk-goto-last-ltr.png		\
-+	stock-icons/24/gtk-go-forward-ltr.png		\
-+	stock-icons/24/gtk-go-back-ltr.png		\
-+	stock-icons/24/gtk-goto-top.png			\
-+	stock-icons/24/gtk-go-up.png			\
-+	stock-icons/24/gtk-about.png			\
-+	stock-icons/24/gtk-help.png			\
-+	stock-icons/24/gtk-missing-image.png		\
-+	stock-icons/24/gtk-add.png			\
-+	stock-icons/24/gtk-remove.png			\
-+	stock-icons/24/gtk-floppy.png			\
-+	stock-icons/24/gtk-cdrom.png			\
-+	stock-icons/24/gtk-media-pause.png		\
-+	stock-icons/24/gtk-media-play-ltr.png		\
-+	stock-icons/24/gtk-media-play-rtl.png		\
-+	stock-icons/24/gtk-media-stop.png		\
-+	stock-icons/24/gtk-media-record.png		\
-+	stock-icons/24/gtk-media-rewind-ltr.png		\
-+	stock-icons/24/gtk-media-forward-ltr.png	\
-+	stock-icons/24/gtk-media-previous-ltr.png	\
-+	stock-icons/24/gtk-media-next-ltr.png		\
-+	stock-icons/24/gtk-network.png			\
-+	stock-icons/24/gtk-print-error.png		\
-+	stock-icons/24/gtk-print-report.png		\
-+	stock-icons/24/gtk-print-paused.png		\
-+	stock-icons/24/gtk-print-warning.png		\
-+	stock-icons/24/gtk-stop.png			\
-+	stock-icons/24/gtk-execute.png			\
-+	stock-icons/24/gtk-spell-check.png		\
-+	stock-icons/24/gtk-fullscreen.png		\
-+	stock-icons/24/gtk-refresh.png			\
-+	stock-icons/24/gtk-leave-fullscreen.png		\
-+	stock-icons/24/gtk-sort-ascending.png		\
-+	stock-icons/24/gtk-sort-descending.png		\
-+	stock-icons/24/gtk-close.png			\
-+	stock-icons/24/gtk-zoom-fit.png			\
-+	stock-icons/24/gtk-zoom-in.png			\
-+	stock-icons/24/gtk-zoom-100.png			\
-+	stock-icons/24/gtk-zoom-out.png			\
-+	stock-icons/48/gtk-dialog-error.png
-+
- 
- @CROSS_COMPILING_FALSE@gtk_update_icon_cache_program = \
- @CROSS_COMPILING_FALSE@	   ./gtk-update-icon-cache
-@@ -2887,7 +3053,91 @@
- 	   && $(LN_S) folder.png user-desktop.png 			\
- 	   && $(RM) user-home.png 					\
- 	   && $(LN_S) folder.png user-home.png 				\
-+	   && $(LN_S) application-exit.png gtk-quit.png			\
-+	   && $(LN_S) dialog-information.png gtk-info.png			\
-+	   && $(LN_S) document-new.png gtk-file.png			\
-+	   && $(LN_S) document-open.png gtk-open.png			\
-+	   && $(LN_S) document-print-preview.png gtk-print-preview.png			\
-+	   && $(LN_S) document-print.png gtk-print.png			\
-+	   && $(LN_S) document-properties.png gtk-properties.png			\
-+	   && $(LN_S) document-revert-ltr.png gtk-revert-to-saved-ltr.png			\
-+	   && $(LN_S) document-revert-rtl.png gtk-revert-to-saved-rtl.png			\
-+	   && $(LN_S) document-save-as.png gtk-save-as.png			\
-+	   && $(LN_S) document-x-generic.png gtk-new.png			\
-+	   && $(LN_S) drive-harddisk.png gtk-harddisk.png			\
-+	   && $(LN_S) edit-clear.png gtk-clear.png			\
-+	   && $(LN_S) edit-copy.png gtk-copy.png			\
-+	   && $(LN_S) edit-cut.png gtk-cut.png			\
-+	   && $(LN_S) edit-delete.png gtk-delete.png			\
-+	   && $(LN_S) edit-find-replace.png gtk-find-and-replace.png			\
-+	   && $(LN_S) edit-find.png gtk-find.png			\
-+	   && $(LN_S) edit-paste.png gtk-paste.png			\
-+	   && $(LN_S) edit-redo-ltr.png gtk-redo-ltr.png			\
-+	   && $(LN_S) edit-redo-rtl.png gtk-redo-rtl.png			\
-+	   && $(LN_S) edit-select-all.png gtk-select-all.png			\
-+	   && $(LN_S) edit-undo-ltr.png gtk-undo-ltr.png			\
-+	   && $(LN_S) edit-undo-rtl.png gtk-undo-rtl.png			\
-+	   && $(LN_S) folder.png gtk-directory.png			\
-+	   && $(LN_S) format-indent-less-ltr.png gtk-unindent-ltr.png			\
-+	   && $(LN_S) format-indent-less-rtl.png gtk-unindent-rtl.png			\
-+	   && $(LN_S) format-indent-more-ltr.png gtk-indent-ltr.png			\
-+	   && $(LN_S) format-indent-more-rtl.png gtk-indent-rtl.png			\
-+	   && $(LN_S) format-justify-center.png gtk-justify-center.png			\
-+	   && $(LN_S) format-justify-fill.png gtk-justify-fill.png			\
-+	   && $(LN_S) format-justify-left.png gtk-justify-left.png			\
-+	   && $(LN_S) format-justify-right.png gtk-justify-right.png			\
-+	   && $(LN_S) format-text-bold.png gtk-bold.png			\
-+	   && $(LN_S) format-text-italic.png gtk-italic.png			\
-+	   && $(LN_S) format-text-strikethrough.png gtk-strikethrough.png			\
-+	   && $(LN_S) format-text-underline.png gtk-underline.png			\
-+	   && $(LN_S) go-bottom.png gtk-goto-bottom.png			\
-+	   && $(LN_S) go-down.png gtk-go-down.png			\
-+	   && $(LN_S) go-first-ltr.png gtk-goto-first-ltr.png			\
-+	   && $(LN_S) go-home.png gtk-home.png			\
-+	   && $(LN_S) go-jump-ltr.png gtk-jump-to-ltr.png			\
-+	   && $(LN_S) go-jump-rtl.png gtk-jump-to-rtl.png			\
-+	   && $(LN_S) go-last-ltr.png gtk-goto-last-ltr.png			\
-+	   && $(LN_S) go-next-ltr.png gtk-go-forward-ltr.png			\
-+	   && $(LN_S) go-previous-ltr.png gtk-go-back-ltr.png			\
-+	   && $(LN_S) go-top.png gtk-goto-top.png			\
-+	   && $(LN_S) go-up.png gtk-go-up.png			\
-+	   && $(LN_S) help-about.png gtk-about.png			\
-+	   && $(LN_S) help-contents.png gtk-help.png			\
-+	   && $(LN_S) image-missing.png gtk-missing-image.png			\
-+	   && $(LN_S) list-add.png gtk-add.png			\
-+	   && $(LN_S) list-remove.png gtk-remove.png			\
-+	   && $(LN_S) media-floppy.png gtk-floppy.png			\
-+	   && $(LN_S) media-optical.png gtk-cdrom.png			\
-+	   && $(LN_S) media-playback-pause.png gtk-media-pause.png			\
-+	   && $(LN_S) media-playback-start-ltr.png gtk-media-play-ltr.png			\
-+	   && $(LN_S) media-playback-start-rtl.png gtk-media-play-rtl.png			\
-+	   && $(LN_S) media-playback-stop.png gtk-media-stop.png			\
-+	   && $(LN_S) media-record.png gtk-media-record.png			\
-+	   && $(LN_S) media-seek-backward-ltr.png gtk-media-rewind-ltr.png			\
-+	   && $(LN_S) media-seek-forward-ltr.png gtk-media-forward-ltr.png			\
-+	   && $(LN_S) media-skip-backward-ltr.png gtk-media-previous-ltr.png			\
-+	   && $(LN_S) media-skip-forward-ltr.png gtk-media-next-ltr.png			\
-+	   && $(LN_S) network-idle.png gtk-network.png			\
-+	   && $(LN_S) printer-error.png gtk-print-error.png			\
-+	   && $(LN_S) printer-info.png gtk-print-report.png			\
-+	   && $(LN_S) printer-paused.png gtk-print-paused.png			\
-+	   && $(LN_S) printer-warning.png gtk-print-warning.png			\
-+	   && $(LN_S) process-stop.png gtk-stop.png			\
-+	   && $(LN_S) system-run.png gtk-execute.png			\
-+	   && $(LN_S) tools-check-spelling.png gtk-spell-check.png			\
-+	   && $(LN_S) view-fullscreen.png gtk-fullscreen.png			\
-+	   && $(LN_S) view-refresh.png gtk-refresh.png			\
-+	   && $(LN_S) view-restore.png gtk-leave-fullscreen.png			\
-+	   && $(LN_S) view-sort-ascending.png gtk-sort-ascending.png			\
-+	   && $(LN_S) view-sort-descending.png gtk-sort-descending.png			\
-+	   && $(LN_S) window-close.png gtk-close.png			\
-+	   && $(LN_S) zoom-fit-best.png gtk-zoom-fit.png			\
-+	   && $(LN_S) zoom-in.png gtk-zoom-in.png			\
-+	   && $(LN_S) zoom-original.png gtk-zoom-100.png			\
-+	   && $(LN_S) zoom-out.png gtk-zoom-out.png			\
- 	) done 								\
-+	&& (cd stock-icons/48						\
-+	   && $(LN_S) dialog-error.png gtk-dialog-error.png)		\
- 	&& touch stamp-icons
- 
- gtkbuiltincache.h: @REBUILD@ stamp-icons
diff --git a/pkgs/development/libraries/harfbuzz/default.nix b/pkgs/development/libraries/harfbuzz/default.nix
new file mode 100644
index 000000000000..5755e747a6b5
--- /dev/null
+++ b/pkgs/development/libraries/harfbuzz/default.nix
@@ -0,0 +1,19 @@
+{ stdenv, fetchurl, pkgconfig, glib, freetype }:
+
+stdenv.mkDerivation rec {
+  name = "harfbuzz-0.9.4";
+
+  src = fetchurl {
+    url = "http://www.freedesktop.org/software/harfbuzz/release/${name}.tar.bz2";
+    sha256 = "2572f9a810d17a735ef565115463827d075af2371ee5b68e6d77231381f4bddc";
+  };
+
+  buildInputs = [ pkgconfig glib freetype ];
+
+  meta = {
+    description = "An OpenType text shaping engine";
+    homepage = http://www.freedesktop.org/wiki/Software/HarfBuzz;
+    maintainers = [ stdenv.lib.maintainers.eelco ];
+    platforms = stdenv.lib.platforms.linux;
+  };
+}
diff --git a/pkgs/development/libraries/haskell/Cabal/1.16.0.nix b/pkgs/development/libraries/haskell/Cabal/1.16.0.1.nix
index 14e811b5e94e..e4698c72cad3 100644
--- a/pkgs/development/libraries/haskell/Cabal/1.16.0.nix
+++ b/pkgs/development/libraries/haskell/Cabal/1.16.0.1.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "Cabal";
-  version = "1.16.0";
-  sha256 = "0ia2ysqbnnbfv75l8617bys5iaq8aygcbd1ijqcbzd3asf8flyms";
+  version = "1.16.0.1";
+  sha256 = "03h0fsdm00i5pq37j3d7rjw3gnqkmacvgvdhcrmmamn5q81qld5g";
   buildDepends = [ filepath ];
   meta = {
     homepage = "http://www.haskell.org/cabal/";
diff --git a/pkgs/development/libraries/haskell/DSH/default.nix b/pkgs/development/libraries/haskell/DSH/default.nix
index 3275db0e0d8b..32cf21242de6 100644
--- a/pkgs/development/libraries/haskell/DSH/default.nix
+++ b/pkgs/development/libraries/haskell/DSH/default.nix
@@ -1,15 +1,10 @@
-{ cabal, convertible, csv, FerryCore, HaXml, HDBC, json, mtl
-, Pathfinder, syb, text, xhtml
-}:
+{ cabal, csv, FerryCore, HaXml, HDBC, mtl, Pathfinder, text }:
 
 cabal.mkDerivation (self: {
   pname = "DSH";
-  version = "0.7.8.2";
-  sha256 = "1rs42c05q4s46a1a03srzdq0aijwalhilzifc8ryq4qwjgh7vkwz";
-  buildDepends = [
-    convertible csv FerryCore HaXml HDBC json mtl Pathfinder syb text
-    xhtml
-  ];
+  version = "0.8.2.2";
+  sha256 = "0hjy8c97avi4wwv3p9gyml66n34mbrfrhb19j5y6vcy0y8ysgf0c";
+  buildDepends = [ csv FerryCore HaXml HDBC mtl Pathfinder text ];
   meta = {
     description = "Database Supported Haskell";
     license = self.stdenv.lib.licenses.bsd3;
diff --git a/pkgs/development/libraries/haskell/async/default.nix b/pkgs/development/libraries/haskell/async/2.0.1.3.nix
index a0da6384e958..a0da6384e958 100644
--- a/pkgs/development/libraries/haskell/async/default.nix
+++ b/pkgs/development/libraries/haskell/async/2.0.1.3.nix
diff --git a/pkgs/development/libraries/haskell/binary/default.nix b/pkgs/development/libraries/haskell/binary/default.nix
index f0757bcca023..303e67c3b99d 100644
--- a/pkgs/development/libraries/haskell/binary/default.nix
+++ b/pkgs/development/libraries/haskell/binary/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "binary";
-  version = "0.6.1.0";
-  sha256 = "0d423k37973f5v9mz9401zmsfdgspnf9h6s9xgr3zh19giz7c3js";
+  version = "0.6.2.0";
+  sha256 = "0nm4vsgyz7ml6w3lk5hrh34i7s7li32gj7bgs75w636kln338aab";
   meta = {
     homepage = "https://github.com/kolmodin/binary";
     description = "Binary serialisation for Haskell values using lazy ByteStrings";
diff --git a/pkgs/development/libraries/haskell/citeproc-hs/default.nix b/pkgs/development/libraries/haskell/citeproc-hs/default.nix
index 3cd0c09c3b29..2899f526f36b 100644
--- a/pkgs/development/libraries/haskell/citeproc-hs/default.nix
+++ b/pkgs/development/libraries/haskell/citeproc-hs/default.nix
@@ -4,8 +4,8 @@
 
 cabal.mkDerivation (self: {
   pname = "citeproc-hs";
-  version = "0.3.4";
-  sha256 = "17w6fpmlhbfd8jxxz4s6ybz3dswf0i96fjjbs05ykh4i97rs62nv";
+  version = "0.3.5";
+  sha256 = "134sdz22h2aqwy3cmn0vw91nmbp3ckpjg5djxsg93ddl08ahr4zr";
   buildDepends = [
     filepath hsBibutils HTTP json mtl network pandocTypes parsec syb
     time utf8String xml
diff --git a/pkgs/development/libraries/haskell/conduit/default.nix b/pkgs/development/libraries/haskell/conduit/default.nix
index c383c46f30b5..6da1b8db34de 100644
--- a/pkgs/development/libraries/haskell/conduit/default.nix
+++ b/pkgs/development/libraries/haskell/conduit/default.nix
@@ -4,8 +4,8 @@
 
 cabal.mkDerivation (self: {
   pname = "conduit";
-  version = "0.5.2.4";
-  sha256 = "17959j5frfbl5af4pmxhfb4swrjckk4fh5wmd5bwsbs824glb97a";
+  version = "0.5.2.7";
+  sha256 = "14bn755f25cin0wv775na85ngfx8ack31s15982zkqfva88xg48i";
   buildDepends = [
     liftedBase monadControl resourcet text transformers
     transformersBase void
diff --git a/pkgs/development/libraries/haskell/criterion/default.nix b/pkgs/development/libraries/haskell/criterion/default.nix
index 54b6b20dc836..64f03d4dccae 100644
--- a/pkgs/development/libraries/haskell/criterion/default.nix
+++ b/pkgs/development/libraries/haskell/criterion/default.nix
@@ -4,8 +4,8 @@
 
 cabal.mkDerivation (self: {
   pname = "criterion";
-  version = "0.6.1.1";
-  sha256 = "1w5yqcgnx2ij3hmvmz5g4ynj6n8wa3yyk1kfbbwxyh9j5kc2xwiw";
+  version = "0.6.2.0";
+  sha256 = "1xd90qb026niq2sn7ks8bn92ifb6255saic68bzg6kzj7ydwwdmx";
   buildDepends = [
     aeson deepseq filepath hastache mtl mwcRandom parsec statistics
     time transformers vector vectorAlgorithms
diff --git a/pkgs/development/libraries/haskell/data-accessor/data-accessor-template.nix b/pkgs/development/libraries/haskell/data-accessor/data-accessor-template.nix
index 077e31c683ec..41bd23470124 100644
--- a/pkgs/development/libraries/haskell/data-accessor/data-accessor-template.nix
+++ b/pkgs/development/libraries/haskell/data-accessor/data-accessor-template.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "data-accessor-template";
-  version = "0.2.1.9";
-  sha256 = "14zp2zjxlkdi33cjif9lc1kl8m0x4brh0pk3d34wk1g1bfzynijc";
+  version = "0.2.1.10";
+  sha256 = "11a4c0g74ppl7nls0dhx6xs47dfcq1wp7bd8qgdba6hhn645afzy";
   buildDepends = [ dataAccessor utilityHt ];
   meta = {
     homepage = "http://www.haskell.org/haskellwiki/Record_access";
diff --git a/pkgs/development/libraries/haskell/data-memocombinators/default.nix b/pkgs/development/libraries/haskell/data-memocombinators/default.nix
index 25f063c20acf..2b3adde1d728 100644
--- a/pkgs/development/libraries/haskell/data-memocombinators/default.nix
+++ b/pkgs/development/libraries/haskell/data-memocombinators/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "data-memocombinators";
-  version = "0.4.3";
-  sha256 = "0mzvjgccm23y7mfaz9iwdy64amf69d7i8yq9fc9mjx1nyzxdrgsc";
+  version = "0.4.4";
+  sha256 = "06x79rgxi6cxrpzjzzsjk7yj7i0ajmcgns0n12lxakz9vxbqxyn2";
   buildDepends = [ dataInttrie ];
   meta = {
     homepage = "http://github.com/luqui/data-memocombinators";
diff --git a/pkgs/development/libraries/haskell/dbus/default.nix b/pkgs/development/libraries/haskell/dbus/default.nix
new file mode 100644
index 000000000000..b9c436f4a56e
--- /dev/null
+++ b/pkgs/development/libraries/haskell/dbus/default.nix
@@ -0,0 +1,19 @@
+{ cabal, cereal, libxmlSax, network, parsec, random, text
+, transformers, vector, xmlTypes
+}:
+
+cabal.mkDerivation (self: {
+  pname = "dbus";
+  version = "0.10.2";
+  sha256 = "11nzpc2x2khln6xm2fbz54fy3ry1s08c83jndrcn1a4ymv3j1xh1";
+  buildDepends = [
+    cereal libxmlSax network parsec random text transformers vector
+    xmlTypes
+  ];
+  meta = {
+    homepage = "https://john-millikin.com/software/haskell-dbus/";
+    description = "A client library for the D-Bus IPC system";
+    license = self.stdenv.lib.licenses.gpl3;
+    platforms = self.ghc.meta.platforms;
+  };
+})
diff --git a/pkgs/development/libraries/haskell/deepseq-th/default.nix b/pkgs/development/libraries/haskell/deepseq-th/default.nix
index 1072bcb9ca7e..2af4bb9f3f1b 100644
--- a/pkgs/development/libraries/haskell/deepseq-th/default.nix
+++ b/pkgs/development/libraries/haskell/deepseq-th/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "deepseq-th";
-  version = "0.1.0.3";
-  sha256 = "1xx88i55iskyxrpxbdg0srb64y5siqs1b8qj7bh3i1893qs9sha2";
+  version = "0.1.0.4";
+  sha256 = "12wk8higrp12b22zzz1b4ar1q5h7flk22bp2rvswsqri2zkbi965";
   buildDepends = [ deepseq ];
   meta = {
     description = "Template Haskell based deriver for optimised NFData instances";
diff --git a/pkgs/development/libraries/haskell/digestive-functors-snap/default.nix b/pkgs/development/libraries/haskell/digestive-functors-snap/default.nix
index 3d5725e603ff..a6490953341c 100644
--- a/pkgs/development/libraries/haskell/digestive-functors-snap/default.nix
+++ b/pkgs/development/libraries/haskell/digestive-functors-snap/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "digestive-functors-snap";
-  version = "0.5.0.0";
-  sha256 = "01lbd42rsryzqzra8ax22iw6c9fyv5az8q7dkdi6yyfxdq976l0x";
+  version = "0.5.0.1";
+  sha256 = "149c01vxzlwskqsncc5l26mk67icmsq2zbav2asjxpp6z8b53i3b";
   buildDepends = [ digestiveFunctors filepath mtl snapCore text ];
   meta = {
     homepage = "http://github.com/jaspervdj/digestive-functors";
diff --git a/pkgs/development/libraries/haskell/digestive-functors/default.nix b/pkgs/development/libraries/haskell/digestive-functors/default.nix
index d6d4710f3060..31a81778f450 100644
--- a/pkgs/development/libraries/haskell/digestive-functors/default.nix
+++ b/pkgs/development/libraries/haskell/digestive-functors/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "digestive-functors";
-  version = "0.5.0.2";
-  sha256 = "1phakcljl6ri2p9lfzjnn001jw0inyxa5zd7lp2k9lhq1yq0byb0";
+  version = "0.5.0.3";
+  sha256 = "176wpnwg4zpfwphl0ifb3zdm0dhw5xyd3vr81rc98s4db5y9csl0";
   buildDepends = [ mtl text ];
   meta = {
     homepage = "http://github.com/jaspervdj/digestive-functors";
diff --git a/pkgs/development/libraries/haskell/distributed-process-simplelocalnet/default.nix b/pkgs/development/libraries/haskell/distributed-process-simplelocalnet/default.nix
index 650f82a99ece..bec44a0b8e20 100644
--- a/pkgs/development/libraries/haskell/distributed-process-simplelocalnet/default.nix
+++ b/pkgs/development/libraries/haskell/distributed-process-simplelocalnet/default.nix
@@ -5,8 +5,8 @@
 
 cabal.mkDerivation (self: {
   pname = "distributed-process-simplelocalnet";
-  version = "0.2.0.5";
-  sha256 = "04cx5pb3pf4wpmqx1zhdc9lrfs0mb8zk7p1qxxlsqg0x63f3353w";
+  version = "0.2.0.6";
+  sha256 = "1mgsmxxy1fcbxh8p82078c70fj7iv6wr8g47r4d0c3jwz84xya57";
   buildDepends = [
     binary dataAccessor distributedProcess network networkMulticast
     networkTransport networkTransportTcp transformers
diff --git a/pkgs/development/libraries/haskell/distributed-process/default.nix b/pkgs/development/libraries/haskell/distributed-process/default.nix
index 25b53834f942..7b478d8cd995 100644
--- a/pkgs/development/libraries/haskell/distributed-process/default.nix
+++ b/pkgs/development/libraries/haskell/distributed-process/default.nix
@@ -5,8 +5,10 @@
 
 cabal.mkDerivation (self: {
   pname = "distributed-process";
-  version = "0.3.1";
-  sha256 = "048j27mpdmknz2s4ja3q2mla1d2sjbvrpmzx0lz2qas123qz1siq";
+  version = "0.4.0.1";
+  sha256 = "0yi0403665l01gkqbsix9f4hj8c8m4i42nwjq2i63x259qz2njwi";
+  isLibrary = true;
+  isExecutable = true;
   buildDepends = [
     binary dataAccessor distributedStatic mtl networkTransport random
     rank1dynamic stm syb time transformers
diff --git a/pkgs/development/libraries/haskell/distributed-static/default.nix b/pkgs/development/libraries/haskell/distributed-static/default.nix
index 0778089bdd06..c09558449dfe 100644
--- a/pkgs/development/libraries/haskell/distributed-static/default.nix
+++ b/pkgs/development/libraries/haskell/distributed-static/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "distributed-static";
-  version = "0.2.0.0";
-  sha256 = "04s3iils9ji8bwizvm36r5ihnd11098346br0919dv1x6g67a610";
+  version = "0.2.1";
+  sha256 = "0cdwizm4fr2akw7hsqdrvqk06h1lybpxjiczv3kmd0lyc4cb7kyc";
   buildDepends = [ binary rank1dynamic ];
   meta = {
     homepage = "http://www.github.com/haskell-distributed/distributed-process";
diff --git a/pkgs/development/libraries/haskell/edit-distance/default.nix b/pkgs/development/libraries/haskell/edit-distance/default.nix
index 07744765adba..b6d0b4668f8e 100644
--- a/pkgs/development/libraries/haskell/edit-distance/default.nix
+++ b/pkgs/development/libraries/haskell/edit-distance/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "edit-distance";
-  version = "0.2.1";
-  sha256 = "1zhiyzgqmxi4mn7zn5q6rg03hgff9y5f9xizbs00069v7ncygi38";
+  version = "0.2.1.1";
+  sha256 = "1d8h38cn3azvsp2dp5gycglm5bwwd8plbag8ypi38yj6c35a82yn";
   isLibrary = true;
   isExecutable = true;
   buildDepends = [ random ];
diff --git a/pkgs/development/libraries/haskell/exception-mtl/default.nix b/pkgs/development/libraries/haskell/exception-mtl/default.nix
index 9b378751ebf3..2c64598d1d01 100644
--- a/pkgs/development/libraries/haskell/exception-mtl/default.nix
+++ b/pkgs/development/libraries/haskell/exception-mtl/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "exception-mtl";
-  version = "0.3.0.2";
-  sha256 = "1mhk1z7hz50h8ssr4s7dzdxzn02rr0njxijdddfjjw71fln3nl5h";
+  version = "0.3.0.3";
+  sha256 = "1mmkp16c5ixknhm69a2zjrs9q0dd5ragmljnjjd6lxpakdlw64ww";
   buildDepends = [ exceptionTransformers mtl transformers ];
   meta = {
     homepage = "http://www.eecs.harvard.edu/~mainland/";
diff --git a/pkgs/development/libraries/haskell/exception-transformers/default.nix b/pkgs/development/libraries/haskell/exception-transformers/default.nix
index b1e0fcec5e0e..5c4a9402020b 100644
--- a/pkgs/development/libraries/haskell/exception-transformers/default.nix
+++ b/pkgs/development/libraries/haskell/exception-transformers/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "exception-transformers";
-  version = "0.3.0.2";
-  sha256 = "1ah3dimnc980vkr2lycpl4nsb615gxqws6mv9j90mz6g165h9khf";
+  version = "0.3.0.3";
+  sha256 = "0z3z5pppaqqbndd4fgv1czr8f9f4a8r86bwc3bcv88yf7y8cfbwz";
   buildDepends = [ stm transformers ];
   meta = {
     homepage = "http://www.eecs.harvard.edu/~mainland/";
diff --git a/pkgs/development/libraries/haskell/file-embed/default.nix b/pkgs/development/libraries/haskell/file-embed/default.nix
index 0a6fdf6c8cce..a36d333e9099 100644
--- a/pkgs/development/libraries/haskell/file-embed/default.nix
+++ b/pkgs/development/libraries/haskell/file-embed/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "file-embed";
-  version = "0.0.4.5";
-  sha256 = "18rhcjll5gj790g5balk3xhnmmgjh2bixik8vna5drs7y9i0innp";
+  version = "0.0.4.6";
+  sha256 = "0p2vs56s1jy5xaw3axzfsir925z2a46624n32x797lga9khm3qvp";
   meta = {
     homepage = "https://github.com/snoyberg/file-embed";
     description = "Use Template Haskell to embed file contents directly";
diff --git a/pkgs/development/libraries/haskell/ghc-mtl/default.nix b/pkgs/development/libraries/haskell/ghc-mtl/default.nix
index f885b9a53134..ea2495f6586a 100644
--- a/pkgs/development/libraries/haskell/ghc-mtl/default.nix
+++ b/pkgs/development/libraries/haskell/ghc-mtl/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "ghc-mtl";
-  version = "1.0.1.1";
-  sha256 = "04lm1g27xwwph02k3d8b51nbhi2sw8jx7arqczcqc3rygak10fpn";
+  version = "1.0.1.2";
+  sha256 = "06m8ynqlbvvs37w211ikldwvlvg4ry27x9l7idnwa1m8w2jkbkva";
   buildDepends = [ MonadCatchIOMtl mtl ];
   meta = {
     homepage = "http://darcsden.com/jcpetruzza/ghc-mtl";
diff --git a/pkgs/development/libraries/haskell/gloss/default.nix b/pkgs/development/libraries/haskell/gloss/default.nix
index e988eae9adf8..8fe5080b1acf 100644
--- a/pkgs/development/libraries/haskell/gloss/default.nix
+++ b/pkgs/development/libraries/haskell/gloss/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "gloss";
-  version = "1.7.6.1";
-  sha256 = "1gwmrnwn1x0hs9jp2qsjp737wahbdsjrp2kp7gpz9pkq4a6jmjmx";
+  version = "1.7.6.5";
+  sha256 = "0s02vbcyfqzlmjw68kp3arn3vvmldh04460gm050vbc6rqpc8dkv";
   buildDepends = [ bmp GLUT OpenGL ];
   meta = {
     homepage = "http://gloss.ouroborus.net";
diff --git a/pkgs/development/libraries/haskell/happstack/happstack-server.nix b/pkgs/development/libraries/haskell/happstack/happstack-server.nix
index 5d4b4365f393..e864075b42a5 100644
--- a/pkgs/development/libraries/haskell/happstack/happstack-server.nix
+++ b/pkgs/development/libraries/haskell/happstack/happstack-server.nix
@@ -6,8 +6,8 @@
 
 cabal.mkDerivation (self: {
   pname = "happstack-server";
-  version = "7.0.5";
-  sha256 = "11ialzvjdqmf62yl5r9yxir8fg5agfg1fysf3c3ja5456k07b466";
+  version = "7.0.7";
+  sha256 = "0r9bk82zjzlsi6j6dnz5b73qacpfdyhsn5ds98cn7gkqyf4yg7cj";
   buildDepends = [
     base64Bytestring blazeHtml extensibleExceptions filepath hslogger
     html monadControl mtl network parsec sendfile syb systemFilepath
diff --git a/pkgs/development/libraries/haskell/hashtables/default.nix b/pkgs/development/libraries/haskell/hashtables/default.nix
index 08f933559108..8b8616fce208 100644
--- a/pkgs/development/libraries/haskell/hashtables/default.nix
+++ b/pkgs/development/libraries/haskell/hashtables/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "hashtables";
-  version = "1.0.1.7";
-  sha256 = "0swk501whj08jj9q1d1lwg06nakimxnr7797zx8y8275f5mmisi7";
+  version = "1.0.1.8";
+  sha256 = "0skrzvzasm0hg4631nhfppsb7mn60pnxk4v31gipzz780sbx9zi8";
   buildDepends = [ hashable primitive vector ];
   meta = {
     homepage = "http://github.com/gregorycollins/hashtables";
diff --git a/pkgs/development/libraries/haskell/haskell-platform/2012.4.0.0.nix b/pkgs/development/libraries/haskell/haskell-platform/2012.4.0.0.nix
new file mode 100644
index 000000000000..c9f269eebefa
--- /dev/null
+++ b/pkgs/development/libraries/haskell/haskell-platform/2012.4.0.0.nix
@@ -0,0 +1,44 @@
+{cabal, fetchurl, GLUT, HTTP, HUnit, OpenGL, QuickCheck, async, cgi, fgl,
+ haskellSrc, html, network, parallel, parsec, primitive,
+ regexBase, regexCompat, regexPosix,
+ split, stm, syb, deepseq, text, transformers, mtl, vector, xhtml, zlib, random,
+ cabalInstall, alex, happy, haddock, ghc}:
+
+# This is just a meta-package. Because upstream fails to provide proper versioned
+# release tarballs that can be used for the purpose of verifying this package, we
+# just create it on the fly from a simple Setup.hs file and a .cabal file that we
+# store directly in the nixpkgs repository.
+
+cabal.mkDerivation (self : {
+  pname = "haskell-platform";
+  version = "2012.4.0.0";
+  cabalFile = ./haskell-platform-2012.4.0.0.cabal;
+  setupFile = ./Setup.hs;
+  src = null;
+  propagatedBuildInputs = [
+    GLUT HTTP HUnit OpenGL QuickCheck async cgi fgl
+    haskellSrc html network parallel parsec primitive
+    regexBase regexCompat regexPosix
+    split stm syb deepseq text transformers mtl vector xhtml zlib random
+    cabalInstall alex happy ghc haddock
+  ];
+  unpackPhase = ''
+    sourceRoot=haskell-platform
+    mkdir $sourceRoot
+    cp ${self.cabalFile} $sourceRoot/${self.pname}.cabal
+    cp ${self.setupFile} $sourceRoot/Setup.hs
+    touch $sourceRoot/LICENSE
+  '';
+  noHaddock = true;
+  meta = {
+    homepage = "http://haskell.org/platform";
+    description = "Haskell Platform meta package";
+    license = self.stdenv.lib.licenses.bsd3;
+    platforms = self.ghc.meta.platforms;
+    maintainers = [
+      self.stdenv.lib.maintainers.andres
+      self.stdenv.lib.maintainers.simons
+    ];
+  };
+})
+
diff --git a/pkgs/development/libraries/haskell/haskell-platform/haskell-platform-2012.4.0.0.cabal b/pkgs/development/libraries/haskell/haskell-platform/haskell-platform-2012.4.0.0.cabal
new file mode 100644
index 000000000000..6346b6ab2973
--- /dev/null
+++ b/pkgs/development/libraries/haskell/haskell-platform/haskell-platform-2012.4.0.0.cabal
@@ -0,0 +1,96 @@
+name:                haskell-platform
+version:             2012.4.0.0
+homepage:            http://haskell.org/platform
+license:             BSD3
+license-file:        LICENSE
+author:              libraries@haskell.org
+maintainer:          haskell-platform@projects.haskell.org
+category:            System
+synopsis:            The Haskell Platform
+description:
+    The Haskell Platform (HP) is the blessed set of libraries and tools on
+    which to build further Haskell libraries and applications. It is
+    intended to provide a comprehensive, stable, and quality tested base for
+    Haskell projects to work from.
+    .
+    This version specifies the following additional developer tools be
+    installed, for a system to be in full compliance:
+    .
+    * cabal-install
+    * alex
+    * happy
+    * haddock
+
+cabal-version:       >= 1.8
+build-type:          Custom
+tested-with:         GHC ==7.4.2
+
+library
+  build-depends:
+    -- ghc                      ==7.4.2,
+
+    -- Core libraries: provided by every ghc installation
+    -- We don't include "non-API" packages here.
+    -- array                    ==0.4.0.0,
+    -- base                     ==4.5.1.0,
+    -- bytestring               ==0.9.2.1,
+    -- Cabal                    ==1.14.0,
+    -- containers               ==0.4.2.1,
+    -- deepseq                  ==1.3.0.0,
+    -- directory                ==1.1.0.2,
+    -- extensible-exceptions    ==0.1.1.4,
+    -- filepath                 ==1.3.0.0,
+    -- haskell2010              ==1.1.0.1,
+    -- haskell98                ==2.0.0.1,
+    -- hpc                      ==0.5.1.1,
+    -- old-locale               ==1.0.0.4,
+    -- old-time                 ==1.1.0.0,
+    -- pretty                   ==1.1.1.0,
+    -- process                  ==1.1.0.1,
+    -- template-haskell         ==2.7.0.0,
+    -- time                     ==1.4,
+    -- unix                     ==2.5.1.1,
+    -- Win32                    ==2.2.2.0,
+
+    -- Libraries in addition to what GHC provides:
+    -- Note: newer versions of cgi need monad-catchio.
+    async                       ==2.0.1.3,
+    cgi                         ==3001.1.7.4,
+    fgl                         ==5.4.2.4,
+    GLUT                        ==2.1.2.1,
+    haskell-src                 ==1.0.1.5,
+    html                        ==1.0.1.2,
+    HTTP                        ==4000.2.5,
+    HUnit                       ==1.2.5.1,
+    mtl                         ==2.1.2,
+    network                     ==2.3.1.0,
+    OpenGL                      ==2.2.3.1,
+    parallel                    ==3.2.0.3,
+    parsec                      ==3.1.3,
+    QuickCheck                  ==2.5.1.1,
+    random                      ==1.0.1.1,
+    regex-base                  ==0.93.2,
+    regex-compat                ==0.95.1,
+    regex-posix                 ==0.95.2,
+    split                       ==0.2.1.1,
+    stm                         ==2.4,
+    syb                         ==0.3.7,
+    text                        ==0.11.2.3,
+    transformers                ==0.3.0.0,
+    vector                      ==0.10,
+    xhtml                       ==3000.2.1,
+    zlib                        ==0.5.4.0,
+
+    -- Libraries that are needed to support the above,
+    -- though are not officially part of the platform
+    primitive                   ==0.5
+
+  -- Depending on programs does not work, they are not registered
+  -- We list them to help distro packaging.
+  build-tools:
+    cabal-install               ==0.14.0,
+    alex                        ==3.0.2,
+    happy                       ==1.18.10
+    -- hscolour                 ==1.19   -- ???
+    -- haddock                  ==2.11.0 -- need to use the one shipped with ghc
+
diff --git a/pkgs/development/libraries/haskell/heist/default.nix b/pkgs/development/libraries/haskell/heist/default.nix
index 44ba8ba15ee5..d87f4fe239e9 100644
--- a/pkgs/development/libraries/haskell/heist/default.nix
+++ b/pkgs/development/libraries/haskell/heist/default.nix
@@ -1,16 +1,16 @@
 { cabal, aeson, attoparsec, blazeBuilder, blazeHtml, directoryTree
 , filepath, MonadCatchIOTransformers, mtl, random, text, time
-, transformers, unorderedContainers, vector, xmlhtml
+, unorderedContainers, vector, xmlhtml
 }:
 
 cabal.mkDerivation (self: {
   pname = "heist";
-  version = "0.8.1.1";
-  sha256 = "0ad56izskafpc1dx2nq0a8w71ayppwx8dc7kdaw1by972kh3nflh";
+  version = "0.8.2";
+  sha256 = "0zamggvfq9054vxznbnfq1fihk110ih8q0dza1rmsjb1h2s88rkj";
   buildDepends = [
     aeson attoparsec blazeBuilder blazeHtml directoryTree filepath
-    MonadCatchIOTransformers mtl random text time transformers
-    unorderedContainers vector xmlhtml
+    MonadCatchIOTransformers mtl random text time unorderedContainers
+    vector xmlhtml
   ];
   meta = {
     homepage = "http://snapframework.com/";
diff --git a/pkgs/development/libraries/haskell/highlighting-kate/default.nix b/pkgs/development/libraries/haskell/highlighting-kate/default.nix
index 21497f3252a2..99726ab0389f 100644
--- a/pkgs/development/libraries/haskell/highlighting-kate/default.nix
+++ b/pkgs/development/libraries/haskell/highlighting-kate/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "highlighting-kate";
-  version = "0.5.3.2";
-  sha256 = "09yvqxvjzahz0y6yhsfgkx5xm39a74arv294w14sgmhay1wnlwvj";
+  version = "0.5.3.3";
+  sha256 = "08jxl2ba0kb4vj1qbdf4sas8bwbxzayzwsxnjvq358x57i5l302n";
   isLibrary = true;
   isExecutable = true;
   buildDepends = [ blazeHtml filepath mtl parsec regexPcreBuiltin ];
diff --git a/pkgs/development/libraries/haskell/hint/default.nix b/pkgs/development/libraries/haskell/hint/default.nix
index 795d8c1d674e..106b85917782 100644
--- a/pkgs/development/libraries/haskell/hint/default.nix
+++ b/pkgs/development/libraries/haskell/hint/default.nix
@@ -4,8 +4,8 @@
 
 cabal.mkDerivation (self: {
   pname = "hint";
-  version = "0.3.3.4";
-  sha256 = "0pmvhlj9m0s1wvw8ppx1wx879lwzg38bcvhy1ma1d4wnrpq3bhiy";
+  version = "0.3.3.5";
+  sha256 = "09pd4b105c2ikf4ap96fz8091qra7hypq3k3ik0kay3bb532hmlq";
   buildDepends = [
     extensibleExceptions filepath ghcMtl ghcPaths haskellSrc
     MonadCatchIOMtl mtl random utf8String
diff --git a/pkgs/development/libraries/haskell/hjsmin/default.nix b/pkgs/development/libraries/haskell/hjsmin/default.nix
index 6d749feea3a0..35eed1de3f0f 100644
--- a/pkgs/development/libraries/haskell/hjsmin/default.nix
+++ b/pkgs/development/libraries/haskell/hjsmin/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "hjsmin";
-  version = "0.1.2";
-  sha256 = "04yk383504blg8x10x5j1fd5mzyybqkhz7jfsyimvz2wz2v86qsb";
+  version = "0.1.3";
+  sha256 = "0lz7qsm74hbs8qa5d3khw43ipiimjbvxsrqqmxvp44605ib22y4d";
   buildDepends = [ blazeBuilder languageJavascript text ];
   meta = {
     homepage = "http://github.com/alanz/hjsmin";
diff --git a/pkgs/development/libraries/haskell/hspec/default.nix b/pkgs/development/libraries/haskell/hspec/default.nix
index 1a22ff5df0d1..d525f2a6e0b8 100644
--- a/pkgs/development/libraries/haskell/hspec/default.nix
+++ b/pkgs/development/libraries/haskell/hspec/default.nix
@@ -4,8 +4,8 @@
 
 cabal.mkDerivation (self: {
   pname = "hspec";
-  version = "1.3.0";
-  sha256 = "0kl9mdksy8bifb37dfb9y8mnnjlq0x1h970cgzv9idq61gafii4n";
+  version = "1.3.0.1";
+  sha256 = "1xgj1yg49vb524blswclr0yw4pvfpbmjyh0b62fac14mawl89v36";
   isLibrary = true;
   isExecutable = true;
   buildDepends = [
diff --git a/pkgs/development/libraries/haskell/http-conduit/default.nix b/pkgs/development/libraries/haskell/http-conduit/default.nix
index 4aad24d1cc7b..9a1d45c40f13 100644
--- a/pkgs/development/libraries/haskell/http-conduit/default.nix
+++ b/pkgs/development/libraries/haskell/http-conduit/default.nix
@@ -8,8 +8,8 @@
 
 cabal.mkDerivation (self: {
   pname = "http-conduit";
-  version = "1.6.1";
-  sha256 = "1yzsa6gqhq6s4b2drhx4jd6qdfawf1swrjyffi2bfq1vq8i9ikf2";
+  version = "1.6.1.2";
+  sha256 = "02dh7gh9pk5dj6dl28hn3vqvf9280b57bqas4w7zsgnhjivxy20x";
   buildDepends = [
     asn1Data attoparsec attoparsecConduit base64Bytestring blazeBuilder
     blazeBuilderConduit caseInsensitive certificate conduit cookie
diff --git a/pkgs/development/libraries/haskell/hxt/default.nix b/pkgs/development/libraries/haskell/hxt/default.nix
index ee79d374d428..35783c7762ef 100644
--- a/pkgs/development/libraries/haskell/hxt/default.nix
+++ b/pkgs/development/libraries/haskell/hxt/default.nix
@@ -4,8 +4,8 @@
 
 cabal.mkDerivation (self: {
   pname = "hxt";
-  version = "9.3.1.0";
-  sha256 = "0nv7d7ffwq81671c7gyzaqx7xgrgs42svbq5xraij4jbq5406719";
+  version = "9.3.1.1";
+  sha256 = "1x0z85vx49s2b9bgjm14c2152cwr0vzf02rlxrla5dj5g565985y";
   buildDepends = [
     binary deepseq filepath HUnit hxtCharproperties hxtRegexXmlschema
     hxtUnicode mtl network parsec
diff --git a/pkgs/development/libraries/haskell/json/default.nix b/pkgs/development/libraries/haskell/json/default.nix
index 09ebeb847b9d..9a56f412fe2b 100644
--- a/pkgs/development/libraries/haskell/json/default.nix
+++ b/pkgs/development/libraries/haskell/json/default.nix
@@ -1,10 +1,10 @@
-{ cabal, mtl, parsec, syb }:
+{ cabal, mtl, parsec, syb, text }:
 
 cabal.mkDerivation (self: {
   pname = "json";
-  version = "0.6";
-  sha256 = "1f5l1992r2gm8fivqfljhgs3nix4qf7h3rji78rsq1kf3r9shz32";
-  buildDepends = [ mtl parsec syb ];
+  version = "0.7";
+  sha256 = "18v8vbx3pyskf3ap4lpy2d3461gghfsq5bzjyrjvqsd2r9r44rfk";
+  buildDepends = [ mtl parsec syb text ];
   meta = {
     description = "Support for serialising Haskell to and from JSON";
     license = self.stdenv.lib.licenses.bsd3;
diff --git a/pkgs/development/libraries/haskell/language-c-quote/default.nix b/pkgs/development/libraries/haskell/language-c-quote/default.nix
index 3f8353838313..77396e3cf555 100644
--- a/pkgs/development/libraries/haskell/language-c-quote/default.nix
+++ b/pkgs/development/libraries/haskell/language-c-quote/default.nix
@@ -4,14 +4,13 @@
 
 cabal.mkDerivation (self: {
   pname = "language-c-quote";
-  version = "0.4.1";
-  sha256 = "1graq6nfmzd2lj6fh1rwyaikfrlzn05pgd347dzrfq5ch35fgg10";
+  version = "0.4.3";
+  sha256 = "13xpmj3jrqkcgilkh4p8ycxhlk5yvfsisx4c1ax7n7aafg1n7phf";
   buildDepends = [
     exceptionMtl exceptionTransformers filepath haskellSrcMeta
     mainlandPretty mtl srcloc syb symbol
   ];
   buildTools = [ alex happy ];
-  jailbreak = true;
   meta = {
     homepage = "http://www.eecs.harvard.edu/~mainland/";
     description = "C/CUDA/OpenCL quasiquoting library";
diff --git a/pkgs/development/libraries/haskell/language-javascript/default.nix b/pkgs/development/libraries/haskell/language-javascript/default.nix
index 3f04b3a92893..1d649ba27a91 100644
--- a/pkgs/development/libraries/haskell/language-javascript/default.nix
+++ b/pkgs/development/libraries/haskell/language-javascript/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "language-javascript";
-  version = "0.5.4";
-  sha256 = "0hjx12n3pkxcdkppqalv6sl68vjlib37gby89ksay807ndslvb9q";
+  version = "0.5.6";
+  sha256 = "1a1nki2z7x0rna5jg6g0gqnipvd115k4xgagg6prrvj284ml44wd";
   buildDepends = [ blazeBuilder mtl utf8Light utf8String ];
   buildTools = [ happy ];
   meta = {
diff --git a/pkgs/development/libraries/haskell/libmpd/default.nix b/pkgs/development/libraries/haskell/libmpd/default.nix
index c0ba821d5f1c..f6185597af17 100644
--- a/pkgs/development/libraries/haskell/libmpd/default.nix
+++ b/pkgs/development/libraries/haskell/libmpd/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "libmpd";
-  version = "0.8.0";
-  sha256 = "0sn9yqiqr011glb7q0f3xj24wkkvnib0khzf833npcas4420d0ya";
+  version = "0.8.0.1";
+  sha256 = "16j2c0dnwllsb979gqf1cl4ylvpldcj8k32ddpp4wf62lbb1mqxm";
   buildDepends = [ filepath mtl network text time utf8String ];
   meta = {
     homepage = "http://github.com/joachifm/libmpd-haskell";
diff --git a/pkgs/development/libraries/haskell/libxml-sax/default.nix b/pkgs/development/libraries/haskell/libxml-sax/default.nix
new file mode 100644
index 000000000000..b41ca8dfa543
--- /dev/null
+++ b/pkgs/development/libraries/haskell/libxml-sax/default.nix
@@ -0,0 +1,16 @@
+{ cabal, libxml2, text, xmlTypes }:
+
+cabal.mkDerivation (self: {
+  pname = "libxml-sax";
+  version = "0.7.3";
+  sha256 = "1514ix5n8y1dwjdm0kmr17fdigc0ic89gzwdvfgh542sjm11100r";
+  buildDepends = [ text xmlTypes ];
+  extraLibraries = [ libxml2 ];
+  pkgconfigDepends = [ libxml2 ];
+  meta = {
+    homepage = "https://john-millikin.com/software/haskell-libxml/";
+    description = "Bindings for the libXML2 SAX interface";
+    license = self.stdenv.lib.licenses.mit;
+    platforms = self.ghc.meta.platforms;
+  };
+})
diff --git a/pkgs/development/libraries/haskell/lifted-base/default.nix b/pkgs/development/libraries/haskell/lifted-base/default.nix
index 09264ab57f44..e5c334e1b22b 100644
--- a/pkgs/development/libraries/haskell/lifted-base/default.nix
+++ b/pkgs/development/libraries/haskell/lifted-base/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "lifted-base";
-  version = "0.1.2";
-  sha256 = "0js94dlfy2wjl026jcj2l399ly4zgw0cgxkmil6lsm34gcy9vrvq";
+  version = "0.2";
+  sha256 = "12ai34wb1sd6fza50arlpvsdc6l2nwrrcik0xakf2q0ddzjmhjfb";
   buildDepends = [
     baseUnicodeSymbols monadControl transformersBase
   ];
diff --git a/pkgs/development/libraries/haskell/mainland-pretty/default.nix b/pkgs/development/libraries/haskell/mainland-pretty/default.nix
index e22e0b053e6a..5da3e47a333e 100644
--- a/pkgs/development/libraries/haskell/mainland-pretty/default.nix
+++ b/pkgs/development/libraries/haskell/mainland-pretty/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "mainland-pretty";
-  version = "0.2.2";
-  sha256 = "0kvn67g2ic46ybgyxpgpzjapwiww9848m9dv8y3xkkl7jd8anpb2";
+  version = "0.2.4";
+  sha256 = "0x481k36rz4zvj1nwvrfw1d10vbmmx8gb5f2nc8alnxcbc2y7xwq";
   buildDepends = [ srcloc text ];
   meta = {
     homepage = "http://www.eecs.harvard.edu/~mainland/";
diff --git a/pkgs/development/libraries/haskell/monadcryptorandom/default.nix b/pkgs/development/libraries/haskell/monadcryptorandom/default.nix
index c1901f470fd3..b702f10354cd 100644
--- a/pkgs/development/libraries/haskell/monadcryptorandom/default.nix
+++ b/pkgs/development/libraries/haskell/monadcryptorandom/default.nix
@@ -1,12 +1,12 @@
-{ cabal, cryptoApi, mtl, transformers }:
+{ cabal, cryptoApi, mtl, tagged, transformers }:
 
 cabal.mkDerivation (self: {
   pname = "monadcryptorandom";
-  version = "0.4.1";
-  sha256 = "01x3zfr4m93bgx062rhxqk1d8qhn6s7rkfkm4yf00p89fclyjsg1";
-  buildDepends = [ cryptoApi mtl transformers ];
+  version = "0.5";
+  sha256 = "19sb9mgfvmmmx1sn0aiq6dn5nl0201xwgs6xqakn7pz5vsqcww2b";
+  buildDepends = [ cryptoApi mtl tagged transformers ];
   meta = {
-    homepage = "http://trac.haskell.org/crypto-api/wiki";
+    homepage = "https://github.com/TomMD/monadcryptorandom";
     description = "A monad for using CryptoRandomGen";
     license = self.stdenv.lib.licenses.bsd3;
     platforms = self.ghc.meta.platforms;
diff --git a/pkgs/development/libraries/haskell/multiarg/default.nix b/pkgs/development/libraries/haskell/multiarg/default.nix
index c376ab0cbd61..8b2871c3ce4f 100644
--- a/pkgs/development/libraries/haskell/multiarg/default.nix
+++ b/pkgs/development/libraries/haskell/multiarg/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "multiarg";
-  version = "0.4.0.0";
-  sha256 = "04m4ynf6x8rlnlmnl6a7jj42fszjc1bly4h3jyjxxsqjdynrv81q";
+  version = "0.6.0.0";
+  sha256 = "1qrw1rajdvrvd297a7lpfkxm5qqhwmnnl5jiagjwzb9lckgpy87y";
   buildDepends = [ explicitException utf8String ];
   meta = {
     homepage = "https://github.com/massysett/multiarg";
diff --git a/pkgs/development/libraries/haskell/network-conduit/default.nix b/pkgs/development/libraries/haskell/network-conduit/default.nix
index d5c04d8e2b8a..3b86b0699ca4 100644
--- a/pkgs/development/libraries/haskell/network-conduit/default.nix
+++ b/pkgs/development/libraries/haskell/network-conduit/default.nix
@@ -3,8 +3,8 @@
 
 cabal.mkDerivation (self: {
   pname = "network-conduit";
-  version = "0.5.0.2";
-  sha256 = "0ragnwhc8szh680iyzyz6fbprqd3drr8sb970h1p2l4i22srkm39";
+  version = "0.6.1.1";
+  sha256 = "00x5ks1qcq5smmd2g4bm23lb3ngdxmdlz822qkkj9l9c27lkn67n";
   buildDepends = [
     conduit liftedBase monadControl network transformers
   ];
diff --git a/pkgs/development/libraries/haskell/network-info/default.nix b/pkgs/development/libraries/haskell/network-info/default.nix
new file mode 100644
index 000000000000..c1bfea43bde6
--- /dev/null
+++ b/pkgs/development/libraries/haskell/network-info/default.nix
@@ -0,0 +1,13 @@
+{ cabal }:
+
+cabal.mkDerivation (self: {
+  pname = "network-info";
+  version = "0.2.0.3";
+  sha256 = "04nwl5akrsppxkqqq7a7qi5sixvrzvj4njl8rbz7sglbh9393rs2";
+  meta = {
+    homepage = "http://github.com/jystic/network-info";
+    description = "Access the local computer's basic network configuration";
+    license = self.stdenv.lib.licenses.bsd3;
+    platforms = self.ghc.meta.platforms;
+  };
+})
diff --git a/pkgs/development/libraries/haskell/network-transport-tcp/default.nix b/pkgs/development/libraries/haskell/network-transport-tcp/default.nix
index 61ebc4ec1d9c..f0f6957c0364 100644
--- a/pkgs/development/libraries/haskell/network-transport-tcp/default.nix
+++ b/pkgs/development/libraries/haskell/network-transport-tcp/default.nix
@@ -2,12 +2,12 @@
 
 cabal.mkDerivation (self: {
   pname = "network-transport-tcp";
-  version = "0.2.0.3";
-  sha256 = "0jlw59ib6yzkv2qggza571k2nhxnwvwj42zdgzz6wh2bgdyihayw";
+  version = "0.3.0";
+  sha256 = "0x2rz0h890bfay52af2wcvja706dr4r6wgfs9csjf7y3jf53nc63";
   buildDepends = [ dataAccessor network networkTransport ];
   meta = {
     homepage = "http://github.com/haskell-distributed/distributed-process";
-    description = "TCP instantation of Network.Transport";
+    description = "TCP instantiation of Network.Transport";
     license = self.stdenv.lib.licenses.bsd3;
     platforms = self.ghc.meta.platforms;
     maintainers = [ self.stdenv.lib.maintainers.andres ];
diff --git a/pkgs/development/libraries/haskell/network-transport/default.nix b/pkgs/development/libraries/haskell/network-transport/default.nix
index 9e3ab7e77967..813e8372cfc7 100644
--- a/pkgs/development/libraries/haskell/network-transport/default.nix
+++ b/pkgs/development/libraries/haskell/network-transport/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "network-transport";
-  version = "0.2.0.2";
-  sha256 = "1pipykqwbjmbkgkmk0ss2pvfp72rkxwmz49d1j5xi8b0rlfgw05c";
+  version = "0.3.0";
+  sha256 = "1i6sn5x3z1r9l7xwag68s5gsii137d5dajwr0abcbv6143ph3bvm";
   buildDepends = [ binary transformers ];
   meta = {
     homepage = "http://github.com/haskell-distributed/distributed-process";
diff --git a/pkgs/development/libraries/haskell/network/2.3.1.0.nix b/pkgs/development/libraries/haskell/network/2.3.1.0.nix
new file mode 100644
index 000000000000..28fa50d83424
--- /dev/null
+++ b/pkgs/development/libraries/haskell/network/2.3.1.0.nix
@@ -0,0 +1,15 @@
+{ cabal, parsec }:
+
+cabal.mkDerivation (self: {
+  pname = "network";
+  version = "2.3.1.0";
+  sha256 = "1fp25wkl5cc4kx0jv5w02b7pzgqadjg1yrknzzwsqxc5s3cpyz6l";
+  buildDepends = [ parsec ];
+  meta = {
+    homepage = "http://github.com/haskell/network";
+    description = "Low-level networking interface";
+    license = self.stdenv.lib.licenses.bsd3;
+    platforms = self.ghc.meta.platforms;
+    maintainers = [ self.stdenv.lib.maintainers.andres ];
+  };
+})
diff --git a/pkgs/development/libraries/haskell/numbers/default.nix b/pkgs/development/libraries/haskell/numbers/default.nix
index 8b57b3d7e968..d1485b7cf1f1 100644
--- a/pkgs/development/libraries/haskell/numbers/default.nix
+++ b/pkgs/development/libraries/haskell/numbers/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "numbers";
-  version = "3000.0.0.0";
-  sha256 = "073xjrnbv6z16va2h3arlxq3z8kywb961dwh4jcm8g7w5m84b2xb";
+  version = "3000.1.0.1";
+  sha256 = "0r2s47nfdxasnp8j7giwpxls9v48f6ld0gc2hg2p7y2ar5xfrcc4";
   meta = {
     homepage = "https://github.com/DanBurton/numbers";
     description = "Various number types";
diff --git a/pkgs/development/libraries/haskell/parallel-io/default.nix b/pkgs/development/libraries/haskell/parallel-io/default.nix
index 1cb682d2b919..d16f42f52ff2 100644
--- a/pkgs/development/libraries/haskell/parallel-io/default.nix
+++ b/pkgs/development/libraries/haskell/parallel-io/default.nix
@@ -2,12 +2,11 @@
 
 cabal.mkDerivation (self: {
   pname = "parallel-io";
-  version = "0.3.2";
-  sha256 = "1n9y1d1lcdwvhjsfqdlxknl89fxncq17kgin43wlki0c39cgirga";
+  version = "0.3.2.1";
+  sha256 = "0wrmz0i5s8p87840pacdnpf2fi12nips4yc72vymifrc1wvlc42q";
   isLibrary = true;
   isExecutable = true;
   buildDepends = [ extensibleExceptions random ];
-  jailbreak = true;
   meta = {
     homepage = "http://batterseapower.github.com/parallel-io";
     description = "Combinators for executing IO actions in parallel on a thread pool";
diff --git a/pkgs/development/libraries/haskell/persistent/default.nix b/pkgs/development/libraries/haskell/persistent/default.nix
index b4010959d770..449debe0405e 100644
--- a/pkgs/development/libraries/haskell/persistent/default.nix
+++ b/pkgs/development/libraries/haskell/persistent/default.nix
@@ -6,8 +6,8 @@
 
 cabal.mkDerivation (self: {
   pname = "persistent";
-  version = "1.0.1.2";
-  sha256 = "0gw635mhbn6w8aswiw9j41rdpi7rhnnhay2qgvlc8103s0g5lp9j";
+  version = "1.0.1.3";
+  sha256 = "156iv1iv807wm39sr98z0f10sbw4q0ac3lafgai0mq3ph5xysi80";
   buildDepends = [
     aeson attoparsec base64Bytestring blazeHtml blazeMarkup conduit
     liftedBase monadControl monadLogger pathPieces poolConduit
diff --git a/pkgs/development/libraries/haskell/primitive/default.nix b/pkgs/development/libraries/haskell/primitive/0.4.1.nix
index 9daef669c577..9daef669c577 100644
--- a/pkgs/development/libraries/haskell/primitive/default.nix
+++ b/pkgs/development/libraries/haskell/primitive/0.4.1.nix
diff --git a/pkgs/development/libraries/haskell/primitive/0.5.0.1.nix b/pkgs/development/libraries/haskell/primitive/0.5.0.1.nix
new file mode 100644
index 000000000000..af6778ccd141
--- /dev/null
+++ b/pkgs/development/libraries/haskell/primitive/0.5.0.1.nix
@@ -0,0 +1,14 @@
+{ cabal }:
+
+cabal.mkDerivation (self: {
+  pname = "primitive";
+  version = "0.5.0.1";
+  sha256 = "04s33xqxz68ddppig5pjf7ki1y5y62xzzzmg3b5pkcxp0r6rsv2j";
+  meta = {
+    homepage = "http://code.haskell.org/primitive";
+    description = "Primitive memory-related operations";
+    license = self.stdenv.lib.licenses.bsd3;
+    platforms = self.ghc.meta.platforms;
+    maintainers = [ self.stdenv.lib.maintainers.andres ];
+  };
+})
diff --git a/pkgs/development/libraries/haskell/primitive/0.5.nix b/pkgs/development/libraries/haskell/primitive/0.5.nix
new file mode 100644
index 000000000000..d09359aaeb92
--- /dev/null
+++ b/pkgs/development/libraries/haskell/primitive/0.5.nix
@@ -0,0 +1,14 @@
+{ cabal }:
+
+cabal.mkDerivation (self: {
+  pname = "primitive";
+  version = "0.5";
+  sha256 = "0m2gv7lac7q24cy02bbc7hq41awjxzs8dcjc6j2nv8xiq14cp3mk";
+  meta = {
+    homepage = "http://code.haskell.org/primitive";
+    description = "Primitive memory-related operations";
+    license = self.stdenv.lib.licenses.bsd3;
+    platforms = self.ghc.meta.platforms;
+    maintainers = [ self.stdenv.lib.maintainers.andres ];
+  };
+})
diff --git a/pkgs/development/libraries/haskell/repa/default.nix b/pkgs/development/libraries/haskell/repa/default.nix
index e0a8e591a5bd..1ddf05ce5f8a 100644
--- a/pkgs/development/libraries/haskell/repa/default.nix
+++ b/pkgs/development/libraries/haskell/repa/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "repa";
-  version = "3.2.2.1";
-  sha256 = "0k8i4gm74gc19kfmg2790x1i6im58nqfblq2fq2bilh6rsj8hxh0";
+  version = "3.2.2.2";
+  sha256 = "1a7rgpy2qc42zc9si7p1zgi1m9b06dz533d2mvhizzac9k3fb5vq";
   buildDepends = [ QuickCheck vector ];
   meta = {
     homepage = "http://repa.ouroborus.net";
diff --git a/pkgs/development/libraries/haskell/resourcet/default.nix b/pkgs/development/libraries/haskell/resourcet/default.nix
index e3190749f1cb..95e051a3eec1 100644
--- a/pkgs/development/libraries/haskell/resourcet/default.nix
+++ b/pkgs/development/libraries/haskell/resourcet/default.nix
@@ -4,8 +4,8 @@
 
 cabal.mkDerivation (self: {
   pname = "resourcet";
-  version = "0.4.0.1";
-  sha256 = "0idyb2xvjk9cbz9gy1gr6sw1mz6v9d8fgk0kw778n6k3h488dw9x";
+  version = "0.4.0.2";
+  sha256 = "0w4hm29dig6m4jm6y9zmyfnhwii7b88hqjqlvl6xmk5zxp1q7hc2";
   buildDepends = [
     liftedBase monadControl mtl transformers transformersBase
   ];
diff --git a/pkgs/development/libraries/haskell/shelly/default.nix b/pkgs/development/libraries/haskell/shelly/default.nix
index 838e6c30faf4..c266b6bd085a 100644
--- a/pkgs/development/libraries/haskell/shelly/default.nix
+++ b/pkgs/development/libraries/haskell/shelly/default.nix
@@ -3,8 +3,8 @@
 
 cabal.mkDerivation (self: {
   pname = "shelly";
-  version = "0.14.1";
-  sha256 = "1cvfak5siysnpms1znra6dk762zp0gv1sam3xfdp67a7ir0hpcpp";
+  version = "0.14.2";
+  sha256 = "1vx7yq5fj4dnba94ypf8ldd236kivxisrzhkxcfhhar5zvw2jqng";
   buildDepends = [
     mtl systemFileio systemFilepath text time unixCompat
   ];
diff --git a/pkgs/development/libraries/haskell/silently/default.nix b/pkgs/development/libraries/haskell/silently/default.nix
index 4fb4323bd170..1153a25cda59 100644
--- a/pkgs/development/libraries/haskell/silently/default.nix
+++ b/pkgs/development/libraries/haskell/silently/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "silently";
-  version = "1.2.0.2";
-  sha256 = "0qcprbjnh351hc9v12gww478qd4pw7wgpyjj1gmkx4mr80w0qmm1";
+  version = "1.2.3";
+  sha256 = "1fvkj5qngdi2zxsrfk6dnaynm0wbxpmqr0jzvzayxifhzh04mqld";
   buildDepends = [ deepseq ];
   meta = {
     homepage = "https://github.com/trystan/silently";
diff --git a/pkgs/development/libraries/haskell/snap/core.nix b/pkgs/development/libraries/haskell/snap/core.nix
index a39442aef07d..16df3f347563 100644
--- a/pkgs/development/libraries/haskell/snap/core.nix
+++ b/pkgs/development/libraries/haskell/snap/core.nix
@@ -1,19 +1,19 @@
 { cabal, attoparsec, attoparsecEnumerator, blazeBuilder
 , blazeBuilderEnumerator, bytestringMmap, caseInsensitive, deepseq
 , enumerator, filepath, HUnit, MonadCatchIOTransformers, mtl
-, random, regexPosix, text, time, transformers, unixCompat
-, unorderedContainers, vector, zlibEnum
+, random, regexPosix, text, time, unixCompat, unorderedContainers
+, vector, zlibEnum
 }:
 
 cabal.mkDerivation (self: {
   pname = "snap-core";
-  version = "0.9.2.1";
-  sha256 = "18i0hfzc37q12nyp7g4sc87s4xcqz1crjwpnhh4y5fw66glzmq3q";
+  version = "0.9.2.2";
+  sha256 = "0svahih2piaj87xfysgjvqqh11gmwz9icrh2g819h68kzh10imlf";
   buildDepends = [
     attoparsec attoparsecEnumerator blazeBuilder blazeBuilderEnumerator
     bytestringMmap caseInsensitive deepseq enumerator filepath HUnit
-    MonadCatchIOTransformers mtl random regexPosix text time
-    transformers unixCompat unorderedContainers vector zlibEnum
+    MonadCatchIOTransformers mtl random regexPosix text time unixCompat
+    unorderedContainers vector zlibEnum
   ];
   meta = {
     homepage = "http://snapframework.com/";
diff --git a/pkgs/development/libraries/haskell/snap/loader-dynamic.nix b/pkgs/development/libraries/haskell/snap/loader-dynamic.nix
index 5815496695cc..3f6c5db004b7 100644
--- a/pkgs/development/libraries/haskell/snap/loader-dynamic.nix
+++ b/pkgs/development/libraries/haskell/snap/loader-dynamic.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "snap-loader-dynamic";
-  version = "0.9.0";
-  sha256 = "1pbpvi20an077klvha1dflnlxpfb6m81n9d50hjhidf6430cmmhm";
+  version = "0.9.0.1";
+  sha256 = "1pzn8lfqngn8cqm1dpxn5wsx70xcd7r90rd2948n4p5309qgh9mq";
   buildDepends = [ directoryTree hint mtl snapCore time ];
   meta = {
     homepage = "http://snapframework.com/";
diff --git a/pkgs/development/libraries/haskell/snap/server.nix b/pkgs/development/libraries/haskell/snap/server.nix
index c17b8e50e616..7f8dc8780243 100644
--- a/pkgs/development/libraries/haskell/snap/server.nix
+++ b/pkgs/development/libraries/haskell/snap/server.nix
@@ -1,20 +1,18 @@
-{ cabal, attoparsec, attoparsecEnumerator, binary, blazeBuilder
-, blazeBuilderEnumerator, caseInsensitive, directoryTree
-, enumerator, filepath, MonadCatchIOTransformers, mtl, network
-, snapCore, text, time, transformers, unixCompat
+{ cabal, attoparsec, attoparsecEnumerator, blazeBuilder
+, blazeBuilderEnumerator, caseInsensitive, enumerator
+, MonadCatchIOTransformers, mtl, network, snapCore, text, time
+, unixCompat
 }:
 
 cabal.mkDerivation (self: {
   pname = "snap-server";
-  version = "0.9.2.3";
-  sha256 = "0wl7clzwrd34d32sikd6vkj3pla9yni26mmdsnrjw1s3lq412yqd";
+  version = "0.9.2.4";
+  sha256 = "1kwmrlk9dr033h6q05afnr916wnw5wlxrr87z1myv0a6nzqmdhzl";
   buildDepends = [
-    attoparsec attoparsecEnumerator binary blazeBuilder
-    blazeBuilderEnumerator caseInsensitive directoryTree enumerator
-    filepath MonadCatchIOTransformers mtl network snapCore text time
-    transformers unixCompat
+    attoparsec attoparsecEnumerator blazeBuilder blazeBuilderEnumerator
+    caseInsensitive enumerator MonadCatchIOTransformers mtl network
+    snapCore text time unixCompat
   ];
-  jailbreak = true;
   meta = {
     homepage = "http://snapframework.com/";
     description = "A fast, iteratee-based, epoll-enabled web server for the Snap Framework";
diff --git a/pkgs/development/libraries/haskell/snap/snap.nix b/pkgs/development/libraries/haskell/snap/snap.nix
index 83e149391c52..1676de1e8404 100644
--- a/pkgs/development/libraries/haskell/snap/snap.nix
+++ b/pkgs/development/libraries/haskell/snap/snap.nix
@@ -2,14 +2,14 @@
 , dataLens, dataLensTemplate, directoryTree, filepath, hashable
 , heist, logict, MonadCatchIOTransformers, mtl, mwcRandom
 , pwstoreFast, snapCore, snapServer, stm, syb, text, time
-, transformers, unorderedContainers, utf8String, vector
-, vectorAlgorithms, xmlhtml
+, transformers, unorderedContainers, vector, vectorAlgorithms
+, xmlhtml
 }:
 
 cabal.mkDerivation (self: {
   pname = "snap";
-  version = "0.9.2.1";
-  sha256 = "0gxnkr6icx2g16w3ab54cqy4x15xj6y9cs6qv8dg0xamm7kyyfhl";
+  version = "0.9.2.2";
+  sha256 = "1ql9c8b9arcd8zwlwsiipl4diah87sp339ljc5bc7yls1g4d9zsw";
   isLibrary = true;
   isExecutable = true;
   buildDepends = [
@@ -17,9 +17,8 @@ cabal.mkDerivation (self: {
     dataLensTemplate directoryTree filepath hashable heist logict
     MonadCatchIOTransformers mtl mwcRandom pwstoreFast snapCore
     snapServer stm syb text time transformers unorderedContainers
-    utf8String vector vectorAlgorithms xmlhtml
+    vector vectorAlgorithms xmlhtml
   ];
-  jailbreak = true;
   meta = {
     homepage = "http://snapframework.com/";
     description = "Top-level package for the Snap Web Framework";
diff --git a/pkgs/development/libraries/haskell/split/default.nix b/pkgs/development/libraries/haskell/split/0.2.1.1.nix
index e106b2687f53..e106b2687f53 100644
--- a/pkgs/development/libraries/haskell/split/default.nix
+++ b/pkgs/development/libraries/haskell/split/0.2.1.1.nix
diff --git a/pkgs/development/libraries/haskell/srcloc/default.nix b/pkgs/development/libraries/haskell/srcloc/default.nix
index 2ca9e373101e..aa2331cfac31 100644
--- a/pkgs/development/libraries/haskell/srcloc/default.nix
+++ b/pkgs/development/libraries/haskell/srcloc/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "srcloc";
-  version = "0.2.1";
-  sha256 = "03b0ra5g7mqcjjfnhm84mv4ph454j08pb9dwxrv9zfwk1kiqb2ss";
+  version = "0.3.0";
+  sha256 = "1ymk8k0r9ckk7dalz3virvvpyrf4nw8xvb23cs6ibdjjbzsphpiz";
   buildDepends = [ syb ];
   noHaddock = true;
   meta = {
diff --git a/pkgs/development/libraries/haskell/stringsearch/default.nix b/pkgs/development/libraries/haskell/stringsearch/default.nix
index fb31ab76a2c5..f8032f8cde41 100644
--- a/pkgs/development/libraries/haskell/stringsearch/default.nix
+++ b/pkgs/development/libraries/haskell/stringsearch/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "stringsearch";
-  version = "0.3.6.3";
-  sha256 = "1f0sl1zjya8glvlscf3g5i0in0ai1knls7kg9dp82grg2k287sgz";
+  version = "0.3.6.4";
+  sha256 = "16g0x0n8x3bg3mij7w3r5m3h2i2dn3bd298n14iccdwhfnlzm91b";
   meta = {
     homepage = "https://bitbucket.org/dafis/stringsearch";
     description = "Fast searching, splitting and replacing of ByteStrings";
diff --git a/pkgs/development/libraries/haskell/stylish-haskell/default.nix b/pkgs/development/libraries/haskell/stylish-haskell/default.nix
index f2ebed7cc6a6..59c10c401333 100644
--- a/pkgs/development/libraries/haskell/stylish-haskell/default.nix
+++ b/pkgs/development/libraries/haskell/stylish-haskell/default.nix
@@ -4,8 +4,8 @@
 
 cabal.mkDerivation (self: {
   pname = "stylish-haskell";
-  version = "0.5.1.0";
-  sha256 = "0vriwgx7z8azqmci9lq7xlvn0v12p5nj9s6i4jvxsjam538qll94";
+  version = "0.5.2.0";
+  sha256 = "1g02ih4hgn2chv56vy8dcql7x421w15m4fsgqnff236znxarn0v7";
   isLibrary = true;
   isExecutable = true;
   buildDepends = [
diff --git a/pkgs/development/libraries/haskell/symbol/default.nix b/pkgs/development/libraries/haskell/symbol/default.nix
index b8dd2aa69a2d..d82a19688782 100644
--- a/pkgs/development/libraries/haskell/symbol/default.nix
+++ b/pkgs/development/libraries/haskell/symbol/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "symbol";
-  version = "0.1.3";
-  sha256 = "1kz4kzbv6bara31pv4vc75r6wvjln6md8gjlsxx8hf50ab8vb68j";
+  version = "0.1.4";
+  sha256 = "00318syprv1ixfbr4v7xq86z10f0psxk0b8kaxvawvacm8hp61bn";
   buildDepends = [ deepseq syb ];
   meta = {
     homepage = "http://www.eecs.harvard.edu/~mainland/";
diff --git a/pkgs/development/libraries/haskell/temporary/default.nix b/pkgs/development/libraries/haskell/temporary/default.nix
index 99ce29b1991f..df93cae198a0 100644
--- a/pkgs/development/libraries/haskell/temporary/default.nix
+++ b/pkgs/development/libraries/haskell/temporary/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "temporary";
-  version = "1.1.2.3";
-  sha256 = "1x4jljggbcdq90h578yyvc8z1i9zmlhvqfz2dym8kj8pq4qiwixd";
+  version = "1.1.2.4";
+  sha256 = "1j8kc22rz2wqg90n5wcxb06ylqv3lnz764077kvwhrw7mhmbp7jz";
   buildDepends = [ filepath ];
   meta = {
     homepage = "http://www.github.com/batterseapower/temporary";
diff --git a/pkgs/development/libraries/haskell/tls-extra/default.nix b/pkgs/development/libraries/haskell/tls-extra/default.nix
index 349c4e057543..362dab2125f4 100644
--- a/pkgs/development/libraries/haskell/tls-extra/default.nix
+++ b/pkgs/development/libraries/haskell/tls-extra/default.nix
@@ -4,8 +4,8 @@
 
 cabal.mkDerivation (self: {
   pname = "tls-extra";
-  version = "0.4.6";
-  sha256 = "1xl55i4nr7kyc3qxi8zmq18m0xhlwlrx9fwkck22krshqgq2i6nn";
+  version = "0.4.7";
+  sha256 = "1ykmwkzq2vwjvcvg8c9b020baqxp3w7w0x7ka7jrk88aqmil9hiq";
   isLibrary = true;
   isExecutable = true;
   buildDepends = [
diff --git a/pkgs/development/libraries/haskell/uu-parsinglib/default.nix b/pkgs/development/libraries/haskell/uu-parsinglib/default.nix
index 1bb3cb76dac9..02356789bc30 100644
--- a/pkgs/development/libraries/haskell/uu-parsinglib/default.nix
+++ b/pkgs/development/libraries/haskell/uu-parsinglib/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "uu-parsinglib";
-  version = "2.7.3.4";
-  sha256 = "1f582cr17qxwrhxx6pdv503ldm4ccbnbv9pcksibgparfyc25bnv";
+  version = "2.7.4";
+  sha256 = "1cznyn09a3glfkvvzqma3bhjinddkp6v2xwiy5x403v0wy8y565j";
   buildDepends = [ ListLike time ];
   meta = {
     homepage = "http://www.cs.uu.nl/wiki/bin/view/HUT/ParserCombinators";
diff --git a/pkgs/development/libraries/haskell/vector-algorithms/default.nix b/pkgs/development/libraries/haskell/vector-algorithms/default.nix
index 2704942b3609..dc8c9dd35bae 100644
--- a/pkgs/development/libraries/haskell/vector-algorithms/default.nix
+++ b/pkgs/development/libraries/haskell/vector-algorithms/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "vector-algorithms";
-  version = "0.5.4.1";
-  sha256 = "00dikjmy1pyyn3mmq7sjnmd91xcg7q3n3yiil3dqi1fgr0787xng";
+  version = "0.5.4.2";
+  sha256 = "08pb6mkghf9h5011vxrfdrfq6g26jk4gxmjh9s3hpdiwybf3ab64";
   buildDepends = [ primitive vector ];
   meta = {
     homepage = "http://code.haskell.org/~dolio/";
diff --git a/pkgs/development/libraries/haskell/vector/0.10.0.1.nix b/pkgs/development/libraries/haskell/vector/0.10.0.1.nix
new file mode 100644
index 000000000000..7acc89d6a91c
--- /dev/null
+++ b/pkgs/development/libraries/haskell/vector/0.10.0.1.nix
@@ -0,0 +1,15 @@
+{ cabal, deepseq, primitive }:
+
+cabal.mkDerivation (self: {
+  pname = "vector";
+  version = "0.10.0.1";
+  sha256 = "1bq8am8qnpnsla315i21f1kikikalyz9ps1izxgpr9q1ic2lbsgc";
+  buildDepends = [ deepseq primitive ];
+  meta = {
+    homepage = "http://code.haskell.org/vector";
+    description = "Efficient Arrays";
+    license = self.stdenv.lib.licenses.bsd3;
+    platforms = self.ghc.meta.platforms;
+    maintainers = [ self.stdenv.lib.maintainers.andres ];
+  };
+})
diff --git a/pkgs/development/libraries/haskell/vector/0.10.nix b/pkgs/development/libraries/haskell/vector/0.10.nix
new file mode 100644
index 000000000000..8fac71eed4b3
--- /dev/null
+++ b/pkgs/development/libraries/haskell/vector/0.10.nix
@@ -0,0 +1,15 @@
+{ cabal, deepseq, primitive }:
+
+cabal.mkDerivation (self: {
+  pname = "vector";
+  version = "0.10";
+  sha256 = "0lwhsdg7wv6gwjswakf2d1h9w7lp4pznab0mz6xg5q48pgknrcig";
+  buildDepends = [ deepseq primitive ];
+  meta = {
+    homepage = "http://code.haskell.org/vector";
+    description = "Efficient Arrays";
+    license = self.stdenv.lib.licenses.bsd3;
+    platforms = self.ghc.meta.platforms;
+    maintainers = [ self.stdenv.lib.maintainers.andres ];
+  };
+})
diff --git a/pkgs/development/libraries/haskell/vector/default.nix b/pkgs/development/libraries/haskell/vector/0.9.1.nix
index 63add64226d6..63add64226d6 100644
--- a/pkgs/development/libraries/haskell/vector/default.nix
+++ b/pkgs/development/libraries/haskell/vector/0.9.1.nix
diff --git a/pkgs/development/libraries/haskell/wai-extra/default.nix b/pkgs/development/libraries/haskell/wai-extra/default.nix
index 7c460681fcbd..bc70d14ddf91 100644
--- a/pkgs/development/libraries/haskell/wai-extra/default.nix
+++ b/pkgs/development/libraries/haskell/wai-extra/default.nix
@@ -6,8 +6,8 @@
 
 cabal.mkDerivation (self: {
   pname = "wai-extra";
-  version = "1.3.0.2";
-  sha256 = "0w69wjfbzgg523n0rcs700qx0gsdhvlr0qjvqg1hppvi188llpwl";
+  version = "1.3.0.3";
+  sha256 = "0nfk24mwzf2v35vlvvhzb7a6ldr6pvw37m3ws3b3cv2m80jdd7kr";
   buildDepends = [
     ansiTerminal blazeBuilder blazeBuilderConduit caseInsensitive
     conduit dataDefault dateCache fastLogger httpTypes network
diff --git a/pkgs/development/libraries/haskell/warp/default.nix b/pkgs/development/libraries/haskell/warp/default.nix
index bb168f7d9901..2d9fa98d5ced 100644
--- a/pkgs/development/libraries/haskell/warp/default.nix
+++ b/pkgs/development/libraries/haskell/warp/default.nix
@@ -5,8 +5,8 @@
 
 cabal.mkDerivation (self: {
   pname = "warp";
-  version = "1.3.2";
-  sha256 = "14yib72x3z6fylpkzpr77cvvnr4bn1vdadh2pq6rknszspl6g7iq";
+  version = "1.3.4.1";
+  sha256 = "09slbxbk88sjdgs3mibsvp17c85mn2r2sp67fchkmqkhf40lhcxw";
   buildDepends = [
     blazeBuilder blazeBuilderConduit caseInsensitive conduit hashable
     httpTypes liftedBase network networkConduit simpleSendfile
diff --git a/pkgs/development/libraries/haskell/yaml/default.nix b/pkgs/development/libraries/haskell/yaml/default.nix
index 52460c8246be..20d0bf3bc896 100644
--- a/pkgs/development/libraries/haskell/yaml/default.nix
+++ b/pkgs/development/libraries/haskell/yaml/default.nix
@@ -4,8 +4,8 @@
 
 cabal.mkDerivation (self: {
   pname = "yaml";
-  version = "0.8.0.2";
-  sha256 = "14blcsylbf9wx4yw8fsk8ddjvg844x97xfc1h7r4ls9l9ar7k95j";
+  version = "0.8.1";
+  sha256 = "0cirffxydjh5650s1i0mq1v839pl2dljwmrjnmjf44fcqsvanvyg";
   buildDepends = [
     aeson attoparsec conduit resourcet text transformers
     unorderedContainers vector
diff --git a/pkgs/development/libraries/haskell/yesod-auth/default.nix b/pkgs/development/libraries/haskell/yesod-auth/default.nix
index ac5c87d76132..765724e00d45 100644
--- a/pkgs/development/libraries/haskell/yesod-auth/default.nix
+++ b/pkgs/development/libraries/haskell/yesod-auth/default.nix
@@ -7,8 +7,8 @@
 
 cabal.mkDerivation (self: {
   pname = "yesod-auth";
-  version = "1.1.1.1";
-  sha256 = "1ryq3jxcgb55ijjmcv0j234n9nay2ianifb59gz9akyv0sc3zcl9";
+  version = "1.1.1.2";
+  sha256 = "1agyazzkgwmp63vwx84bzalf9lwg14k5jshj6n97g1iagsiaxqa0";
   buildDepends = [
     aeson authenticate blazeHtml blazeMarkup hamlet httpConduit
     liftedBase mimeMail persistent persistentTemplate pureMD5
diff --git a/pkgs/development/libraries/haskell/yesod-core/default.nix b/pkgs/development/libraries/haskell/yesod-core/default.nix
index c0bef5018ba0..0d7346ed589c 100644
--- a/pkgs/development/libraries/haskell/yesod-core/default.nix
+++ b/pkgs/development/libraries/haskell/yesod-core/default.nix
@@ -9,8 +9,8 @@
 
 cabal.mkDerivation (self: {
   pname = "yesod-core";
-  version = "1.1.2";
-  sha256 = "1pgwqghj9kc9kh90515nswz5ssbmm2y6miw5j6sx4dha0xncqvgs";
+  version = "1.1.3.1";
+  sha256 = "16fb0f9si5r65mw7d8j6221qjw61xgi2v60j7dm9j02ljp68i2bq";
   buildDepends = [
     aeson blazeBuilder blazeHtml blazeMarkup caseInsensitive cereal
     clientsession conduit cookie failure fastLogger hamlet httpTypes
diff --git a/pkgs/development/libraries/haskell/yesod-default/default.nix b/pkgs/development/libraries/haskell/yesod-default/default.nix
index c3dce8ca7d38..5a82c8b30af4 100644
--- a/pkgs/development/libraries/haskell/yesod-default/default.nix
+++ b/pkgs/development/libraries/haskell/yesod-default/default.nix
@@ -5,8 +5,8 @@
 
 cabal.mkDerivation (self: {
   pname = "yesod-default";
-  version = "1.1.0";
-  sha256 = "124407a0in474l71jja04ds0xh84ac5i3jv62iswxlcp1y9f52bq";
+  version = "1.1.0.2";
+  sha256 = "0gjf819mrg3h50c8qlnh8i3xzq0z8mdz8bbqrpjx1haljcgxrzm3";
   buildDepends = [
     dataDefault hamlet networkConduit shakespeareCss shakespeareJs text
     transformers unorderedContainers wai waiExtra warp yaml yesodCore
diff --git a/pkgs/development/libraries/haskell/yesod-routes/default.nix b/pkgs/development/libraries/haskell/yesod-routes/default.nix
index 9a801d62df83..12076d94f265 100644
--- a/pkgs/development/libraries/haskell/yesod-routes/default.nix
+++ b/pkgs/development/libraries/haskell/yesod-routes/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "yesod-routes";
-  version = "1.1.0";
-  sha256 = "0r0a3s1dngqp2vcq0cdsbqf1lsyhygj2x4a93csr2iyn244zgxnx";
+  version = "1.1.0.2";
+  sha256 = "07nrxqkpc5z32c8lk5wz9m6ql703hdhyd86pfk704frvbic02xly";
   buildDepends = [ pathPieces text vector ];
   meta = {
     homepage = "http://www.yesodweb.com/";
diff --git a/pkgs/development/libraries/haskell/yesod/default.nix b/pkgs/development/libraries/haskell/yesod/default.nix
index 10d8013f1b31..6115601f530b 100644
--- a/pkgs/development/libraries/haskell/yesod/default.nix
+++ b/pkgs/development/libraries/haskell/yesod/default.nix
@@ -8,8 +8,8 @@
 
 cabal.mkDerivation (self: {
   pname = "yesod";
-  version = "1.1.1";
-  sha256 = "0666g2ap6ignqif9vwis2bnsb45jb19llw9z20nsfs0q3wj8ykn3";
+  version = "1.1.2";
+  sha256 = "02d40crvsnhasa6jhl0k7hzxnwr9lxmbm7caf2mrvpr4sldzy1ss";
   isLibrary = true;
   isExecutable = true;
   buildDepends = [
@@ -19,7 +19,6 @@ cabal.mkDerivation (self: {
     transformers unixCompat unorderedContainers wai waiExtra warp yaml
     yesodAuth yesodCore yesodForm yesodJson yesodPersistent zlib
   ];
-  jailbreak = true;
   meta = {
     homepage = "http://www.yesodweb.com/";
     description = "Creation of type-safe, RESTful web applications";
diff --git a/pkgs/development/libraries/haskell/zip-archive/default.nix b/pkgs/development/libraries/haskell/zip-archive/default.nix
index 050d48280d2e..5ee2377147ed 100644
--- a/pkgs/development/libraries/haskell/zip-archive/default.nix
+++ b/pkgs/development/libraries/haskell/zip-archive/default.nix
@@ -1,12 +1,12 @@
-{ cabal, binary, digest, filepath, mtl, utf8String, zlib }:
+{ cabal, binary, digest, filepath, mtl, time, utf8String, zlib }:
 
 cabal.mkDerivation (self: {
   pname = "zip-archive";
-  version = "0.1.1.8";
-  sha256 = "0rq4jk1sxi6lrc7d7sh500lh83v2fxxrfh2gknqiyzxd3wh364y1";
+  version = "0.1.2.1";
+  sha256 = "1c0pjbrkfv44nbpz60b1c4xdbkdk8qaxlkfxl51rb2183gj1gkph";
   isLibrary = true;
   isExecutable = true;
-  buildDepends = [ binary digest filepath mtl utf8String zlib ];
+  buildDepends = [ binary digest filepath mtl time utf8String zlib ];
   meta = {
     homepage = "http://github.com/jgm/zip-archive";
     description = "Library for creating and modifying zip archives";
diff --git a/pkgs/development/libraries/json-glib/default.nix b/pkgs/development/libraries/json-glib/default.nix
index ace271b7a357..ad3af7778ff3 100644
--- a/pkgs/development/libraries/json-glib/default.nix
+++ b/pkgs/development/libraries/json-glib/default.nix
@@ -5,8 +5,8 @@ stdenv.mkDerivation rec {
 
   src = fetchurl_gnome {
     project = "json-glib";
-    major = "0"; minor = "14"; patchlevel = "0"; extension = "xz";
-    sha256 = "0mpw996cyidspjwns281l5haj9i8azpkfpl4jf98lh3kcqcr07l2";
+    major = "0"; minor = "14"; patchlevel = "2"; extension = "xz";
+    sha256 = "19wlpsbdnm3mq2a6yjpzj0cwrmlkarp2m5x6g63b0r2n7vxaa5mq";
   };
 
   propagatedBuildInputs = [ glib ];
diff --git a/pkgs/development/libraries/libc++/default.nix b/pkgs/development/libraries/libc++/default.nix
new file mode 100644
index 000000000000..bed953119151
--- /dev/null
+++ b/pkgs/development/libraries/libc++/default.nix
@@ -0,0 +1,28 @@
+{ stdenv, fetchsvn, cmake }:
+
+let rev = "165151"; in
+
+stdenv.mkDerivation {
+  name = "libc++-pre${rev}";
+
+  src = fetchsvn {
+    url = "http://llvm.org/svn/llvm-project/libcxx/trunk";
+    inherit rev;
+    sha256 = "00l8xx5nc3cjlmln7c1sy1i4v844has9kbfxrsziwkalzbgwaslz";
+  };
+
+  buildInputs = [ cmake ];
+
+  cmakeFlags = [ "-DCMAKE_BUILD_TYPE=Release" ];
+
+  enableParallelBuilding = true;
+
+  meta = {
+    homepage = http://libcxx.llvm.org/;
+    description = "A new implementation of the C++ standard library, targeting C++11";
+    license = "BSD";
+    maintainers = stdenv.lib.maintainers.shlevy;
+    platforms = stdenv.lib.platforms.all;
+  };
+}
+
diff --git a/pkgs/development/libraries/libdrm/default.nix b/pkgs/development/libraries/libdrm/default.nix
index a6b39e170bd3..3a1e101aa431 100644
--- a/pkgs/development/libraries/libdrm/default.nix
+++ b/pkgs/development/libraries/libdrm/default.nix
@@ -1,20 +1,20 @@
-{stdenv, fetchurl, pkgconfig, libpthreadstubs, libpciaccess, cairo, udev}:
+{ stdenv, fetchurl, pkgconfig, libpthreadstubs, libpciaccess, udev }:
 
 stdenv.mkDerivation rec {
-  name = "libdrm-2.4.29";
+  name = "libdrm-2.4.33";
   
   src = fetchurl {
     url = "http://dri.freedesktop.org/libdrm/${name}.tar.bz2";
-    sha256 = "0bj5ihmnzpbbgdrvp5f8bgsk0k19haixr893449pjd4k7v4jshz2";
+    sha256 = "1slgi61n4dlsfli47ql354fd1ppj7n40jd94wvnsdqx0mna9syrd";
   };
 
   buildNativeInputs = [ pkgconfig ];
-  buildInputs = [ libpthreadstubs libpciaccess cairo udev ];
+  buildInputs = [ libpthreadstubs libpciaccess udev ];
 
   patches = stdenv.lib.optional stdenv.isDarwin ./libdrm-apple.patch;
 
   preConfigure = stdenv.lib.optionalString stdenv.isDarwin
-  "echo : \\\${ac_cv_func_clock_gettime=\'yes\'} > config.cache";
+    "echo : \\\${ac_cv_func_clock_gettime=\'yes\'} > config.cache";
 
   configureFlags = [ "--enable-nouveau-experimental-api"
                      "--enable-radeon-experimental-api"
diff --git a/pkgs/development/libraries/libgsf/default.nix b/pkgs/development/libraries/libgsf/default.nix
index 3941fd4d694d..0acd4a77b46d 100644
--- a/pkgs/development/libraries/libgsf/default.nix
+++ b/pkgs/development/libraries/libgsf/default.nix
@@ -7,11 +7,11 @@ assert gnomeSupport -> gdk_pixbuf != null && gnome_vfs != null && libbonobo != n
   && glib != null;
 
 stdenv.mkDerivation rec {
-  name = "libgsf-1.14.22";
+  name = "libgsf-1.14.23";
 
   src = fetchurl {
-    url = mirror://gnome/sources/libgsf/1.14/libgsf-1.14.22.tar.xz;
-    sha256 = "0gvq1gbbcl078s3kgdc508jp7p3a3ps34fj4pf8vsamprbikpwm5";
+    url = "mirror://gnome/sources/libgsf/1.14/${name}.tar.xz";
+    sha256 = "05zvaazf0d584nfirwsz7889lbsl4v781hslv3kda6akiwbwdhdz";
   };
 
   buildNativeInputs = [ intltool pkgconfig ];
@@ -24,6 +24,8 @@ stdenv.mkDerivation rec {
 
   doCheck = true;
 
+  patches = [ ./syscall-name-clash.patch ];
+
   meta = {
     homepage = http://www.gnome.org/projects/libgsf;
     license = "LGPLv2";
diff --git a/pkgs/development/libraries/libgsf/syscall-name-clash.patch b/pkgs/development/libraries/libgsf/syscall-name-clash.patch
new file mode 100644
index 000000000000..01543ade4fdd
--- /dev/null
+++ b/pkgs/development/libraries/libgsf/syscall-name-clash.patch
@@ -0,0 +1,120 @@
+diff -Naur libgsf-1.14.23-orig/tests/test-cp-msole.c libgsf-1.14.23/tests/test-cp-msole.c
+--- libgsf-1.14.23-orig/tests/test-cp-msole.c	2009-05-18 21:55:48.000000000 -0400
++++ libgsf-1.14.23/tests/test-cp-msole.c	2012-07-15 03:52:03.858382670 -0400
+@@ -34,7 +34,7 @@
+ static void clone_dir (GsfInfile *in, GsfOutfile *out);
+ 
+ static void
+-clone (GsfInput *input, GsfOutput *output)
++clone_is_a_stupid_name_for_a_function_compiled_on_linux (GsfInput *input, GsfOutput *output)
+ {
+ 	if (gsf_input_size (input) > 0) {
+ 		guint8 const *data;
+@@ -87,7 +87,7 @@
+ 				gsf_infile_name_by_index  (in, i),
+ 				is_dir);
+ 
+-		clone (new_input, new_output);
++		clone_is_a_stupid_name_for_a_function_compiled_on_linux (new_input, new_output);
+ 	}
+ 	/* An observation: when you think about the explanation to is_dir
+ 	 * above, you realize that clone_dir is called even for regular files.
+@@ -137,7 +137,7 @@
+ 
+ 	outfile = gsf_outfile_msole_new (output);
+ 	g_object_unref (G_OBJECT (output));
+-	clone (GSF_INPUT (infile), GSF_OUTPUT (outfile));
++	clone_is_a_stupid_name_for_a_function_compiled_on_linux (GSF_INPUT (infile), GSF_OUTPUT (outfile));
+ 
+ 	return 0;
+ }
+diff -Naur libgsf-1.14.23-orig/tests/test-cp-zip.c libgsf-1.14.23/tests/test-cp-zip.c
+--- libgsf-1.14.23-orig/tests/test-cp-zip.c	2009-05-18 21:55:48.000000000 -0400
++++ libgsf-1.14.23/tests/test-cp-zip.c	2012-07-15 03:54:53.719198559 -0400
+@@ -32,7 +32,7 @@
+ #include <stdio.h>
+ 
+ static void
+-clone (GsfInfile *in, GsfOutfile *out)
++clone_is_a_stupid_name_for_a_function_compiled_on_linux (GsfInfile *in, GsfOutfile *out)
+ {
+ 	GsfInput *input = GSF_INPUT (in);
+ 	GsfOutput *output = GSF_OUTPUT (out);
+@@ -85,7 +85,7 @@
+ 			output = gsf_outfile_new_child_full  (out, name, is_dir,
+ 							      "compression-level", level,
+ 							      NULL);
+-			clone (GSF_INFILE (input), GSF_OUTFILE (output));
++			clone_is_a_stupid_name_for_a_function_compiled_on_linux (GSF_INFILE (input), GSF_OUTFILE (output));
+ 		}
+ 	}
+ 	gsf_output_close (GSF_OUTPUT (out));
+@@ -137,7 +137,7 @@
+ 
+ 	outfile = gsf_outfile_zip_new (output, &err);
+ 	g_object_unref (G_OBJECT (output));
+-	clone (infile, outfile);
++	clone_is_a_stupid_name_for_a_function_compiled_on_linux (infile, outfile);
+ 
+ 	return 0;
+ }
+diff -Naur libgsf-1.14.23-orig/tests/test-dump-msole.c libgsf-1.14.23/tests/test-dump-msole.c
+--- libgsf-1.14.23-orig/tests/test-dump-msole.c	2011-12-07 18:05:18.000000000 -0500
++++ libgsf-1.14.23/tests/test-dump-msole.c	2012-07-15 03:56:15.581110536 -0400
+@@ -32,7 +32,7 @@
+ #include <stdio.h>
+ 
+ static void
+-clone (GsfInput *input, GsfOutput *output)
++clone_is_a_stupid_name_for_a_function_compiled_on_linux (GsfInput *input, GsfOutput *output)
+ {
+ 	guint8 const *data;
+ 	size_t len;
+@@ -72,7 +72,7 @@
+ 			dst = gsf_outfile_new_child  (out,
+ 				gsf_infile_name_by_index  (in, i),
+ 				is_dir);
+-			clone (src, dst);
++			clone_is_a_stupid_name_for_a_function_compiled_on_linux (src, dst);
+ 		}
+ 	}
+ 
+@@ -118,7 +118,7 @@
+ 		g_error_free (err);
+ 		return 1;
+ 	}
+-	clone (GSF_INPUT (infile), GSF_OUTPUT (outfile));
++	clone_is_a_stupid_name_for_a_function_compiled_on_linux (GSF_INPUT (infile), GSF_OUTPUT (outfile));
+ 
+ 	return 0;
+ }
+diff -Naur libgsf-1.14.23-orig/tests/test-restore-msole.c libgsf-1.14.23/tests/test-restore-msole.c
+--- libgsf-1.14.23-orig/tests/test-restore-msole.c	2011-12-07 18:05:18.000000000 -0500
++++ libgsf-1.14.23/tests/test-restore-msole.c	2012-07-15 03:57:39.972017963 -0400
+@@ -32,7 +32,7 @@
+ #include <stdio.h>
+ 
+ static void
+-clone (GsfInput *input, GsfOutput *output)
++clone_is_a_stupid_name_for_a_function_compiled_on_linux (GsfInput *input, GsfOutput *output)
+ {
+ 	guint8 const *data;
+ 	size_t len;
+@@ -72,7 +72,7 @@
+ 			dst = gsf_outfile_new_child  (out,
+ 				gsf_infile_name_by_index (in, i),
+ 				is_dir);
+-			clone (src, dst);
++			clone_is_a_stupid_name_for_a_function_compiled_on_linux (src, dst);
+ 		}
+ 	}
+ 
+@@ -111,7 +111,7 @@
+ 
+ 	outfile = gsf_outfile_msole_new (output);
+ 	g_object_unref (G_OBJECT (output));
+-	clone (GSF_INPUT (infile), GSF_OUTPUT (outfile));
++	clone_is_a_stupid_name_for_a_function_compiled_on_linux (GSF_INPUT (infile), GSF_OUTPUT (outfile));
+ 
+ 	return 0;
+ }
diff --git a/pkgs/development/libraries/libicns/default.nix b/pkgs/development/libraries/libicns/default.nix
index 0e582c903c59..970a7a874979 100644
--- a/pkgs/development/libraries/libicns/default.nix
+++ b/pkgs/development/libraries/libicns/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl, libpng, jasper }:
 
-stdenv.mkDerivation {
-  name = "libicns-0.8.0";
+stdenv.mkDerivation rec {
+  name = "libicns-0.8.1";
 
   src = fetchurl {
-    url = mirror://sourceforge/icns/libicns-0.8.0.tar.gz;
-    sha256 = "0jh67nm07jr1nfkfjid3jjw7fyw5hvj6a2fqan1bhg6gyr2hswla";
+    url = "mirror://sourceforge/icns/${name}.tar.gz";
+    sha256 = "1hjm8lwap7bjyyxsyi94fh5817xzqhk4kb5y0b7mb6675xw10prk";
   };
 
   buildInputs = [ libpng jasper ];
diff --git a/pkgs/development/libraries/libmnl/default.nix b/pkgs/development/libraries/libmnl/default.nix
new file mode 100644
index 000000000000..fb6eacc366b0
--- /dev/null
+++ b/pkgs/development/libraries/libmnl/default.nix
@@ -0,0 +1,25 @@
+{ stdenv, fetchurl }:
+
+stdenv.mkDerivation rec {
+  name = "libmnl-1.0.3";
+
+  src = fetchurl {
+    url = "http://netfilter.org/projects/libmnl/files/${name}.tar.bz2";
+    sha1 = "c27e25f67c6422ebf893fc3a844af8085a1c5b63";
+  };
+
+  meta = {
+    description = "minimalistic user-space library oriented to Netlink developers";
+    longDescription = ''
+      libmnl is a minimalistic user-space library oriented to Netlink developers.
+      There are a lot of common tasks in parsing, validating, constructing of both the Netlink
+      header and TLVs that are repetitive and easy to get wrong.
+      This library aims to provide simple helpers that allows you to re-use code and to avoid
+      re-inventing the wheel.
+    '';
+    homepage = http://netfilter.org/projects/libmnl/index.html;
+    license = "GPLv2+";
+
+    platforms = stdenv.lib.platforms.linux;
+  };
+}
diff --git a/pkgs/development/libraries/libnetfilter_conntrack/default.nix b/pkgs/development/libraries/libnetfilter_conntrack/default.nix
new file mode 100644
index 000000000000..99624911077d
--- /dev/null
+++ b/pkgs/development/libraries/libnetfilter_conntrack/default.nix
@@ -0,0 +1,26 @@
+{ stdenv, fetchurl, pkgconfig, libnfnetlink, libmnl }:
+
+stdenv.mkDerivation rec {
+  name = "libnetfilter_conntrack-1.0.2";
+
+  src = fetchurl {
+    url = "http://netfilter.org/projects/libnetfilter_conntrack/files/${name}.tar.bz2";
+    md5 = "447114b5d61bb9a9617ead3217c3d3ff";
+  };
+
+  buildInputs = [ pkgconfig libnfnetlink libmnl ];
+
+  meta = {
+    description = "userspace library providing an API to the in-kernel connection tracking state table.";
+    longDescription = ''
+      libnetfilter_conntrack is a userspace library providing a programming interface (API) to the
+      in-kernel connection tracking state table. The library libnetfilter_conntrack has been
+      previously known as libnfnetlink_conntrack and libctnetlink. This library is currently used
+      by conntrack-tools among many other applications
+    '';
+    homepage = http://netfilter.org/projects/libnetfilter_conntrack/;
+    license = "GPLv2+";
+
+    platforms = stdenv.lib.platforms.linux;
+  };
+}
diff --git a/pkgs/development/libraries/libnfnetlink/default.nix b/pkgs/development/libraries/libnfnetlink/default.nix
new file mode 100644
index 000000000000..07a182dff10f
--- /dev/null
+++ b/pkgs/development/libraries/libnfnetlink/default.nix
@@ -0,0 +1,27 @@
+{ stdenv, fetchurl }:
+
+stdenv.mkDerivation rec {
+  name = "libnfnetlink-1.0.1";
+
+  src = fetchurl {
+    url = "http://www.netfilter.org/projects/libnfnetlink/files/${name}.tar.bz2";
+    md5 = "98927583d2016a9fb1936fed992e2c5e";
+  };
+
+  meta = {
+    description = "low-level library for netfilter related kernel/userspace communication.";
+    longDescription = ''
+      libnfnetlink is the low-level library for netfilter related kernel/userspace communication.
+      It provides a generic messaging infrastructure for in-kernel netfilter subsystems
+      (such as nfnetlink_log, nfnetlink_queue, nfnetlink_conntrack) and their respective users
+      and/or management tools in userspace.
+
+      This library is not meant as a public API for application developers.
+      It is only used by other netfilter.org projects, like the aforementioned ones.
+    '';
+    homepage = http://www.netfilter.org/projects/libnfnetlink/index.html;
+    license = "GPLv2";
+
+    platforms = stdenv.lib.platforms.linux;
+  };
+}
diff --git a/pkgs/development/libraries/libpng/12.nix b/pkgs/development/libraries/libpng/12.nix
index 5d6e439484d5..ebdb9e756aaa 100644
--- a/pkgs/development/libraries/libpng/12.nix
+++ b/pkgs/development/libraries/libpng/12.nix
@@ -3,11 +3,11 @@
 assert zlib != null;
 
 stdenv.mkDerivation rec {
-  name = "libpng-1.2.47";
+  name = "libpng-1.2.50";
 
   src = fetchurl {
     url = "mirror://sourceforge/libpng/${name}.tar.xz";
-    sha256 = "1lai3dnzw81y40jr17bdj1qh08hwv9mc1v74yybl7jdx2hiilsvx";
+    sha256 = "1rz8v3cvy1zzpagxn91lj8swb9vf75rz3yyi18v7zb4jihgzh927";
   };
 
   propagatedBuildInputs = [ zlib ];
diff --git a/pkgs/development/libraries/libpng/default.nix b/pkgs/development/libraries/libpng/default.nix
index a06e8e12543a..ce23cf48587a 100644
--- a/pkgs/development/libraries/libpng/default.nix
+++ b/pkgs/development/libraries/libpng/default.nix
@@ -3,11 +3,11 @@
 assert zlib != null;
 
 stdenv.mkDerivation rec {
-  name = "libpng-1.5.10";
+  name = "libpng-1.5.13";
 
   src = fetchurl {
     url = "mirror://sourceforge/libpng/${name}.tar.xz";
-    sha256 = "0pb096zn6iyza28js4j7krvcw23b979igfi315aqmvx622bw6jfx";
+    sha256 = "1vks4mqv4140b10kp53qrywsx9m4xan5ibwsrlmf42ni075zjhxq";
   };
 
   propagatedBuildInputs = [ zlib ];
diff --git a/pkgs/development/libraries/libraw1394/default.nix b/pkgs/development/libraries/libraw1394/default.nix
index 2ca4d1bd0904..81cac5be709e 100644
--- a/pkgs/development/libraries/libraw1394/default.nix
+++ b/pkgs/development/libraries/libraw1394/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl }:
 
 stdenv.mkDerivation rec {
-  name = "libraw1394-2.0.8";
+  name = "libraw1394-2.1.0";
 
   src = fetchurl {
     url = "mirror://kernel/linux/libs/ieee1394/${name}.tar.gz";
-    sha256 = "0cwd8xn7wsm7nddbz7xgynxcjb1m4v2vjw1ky4dd6r5cv454hslk";
+    sha256 = "0w5sw06p51wfq2ahgql93ljkkp3hqprifzcxq8dq71c8zcbgyg58";
   };
 
   meta = { 
diff --git a/pkgs/development/libraries/libsoup/default.nix b/pkgs/development/libraries/libsoup/default.nix
index 861f41cb7a4d..87aaafabcc4b 100644
--- a/pkgs/development/libraries/libsoup/default.nix
+++ b/pkgs/development/libraries/libsoup/default.nix
@@ -2,11 +2,11 @@
 , gnomeSupport ? true, libgnome_keyring, sqlite, glib_networking }:
 
 stdenv.mkDerivation {
-  name = "libsoup-2.36.1";
+  name = "libsoup-2.38.1";
 
   src = fetchurl {
-    url = mirror://gnome/sources/libsoup/2.36/libsoup-2.36.1.tar.xz;
-    sha256 = "0r8zkr0a328jkww4dv9z1q691rw59nh4lf5f5pzzr9szzw3j8wkk";
+    url = mirror://gnome/sources/libsoup/2.38/libsoup-2.38.1.tar.xz;
+    sha256 = "16iza4y8pmc4sn90iid88fgminvgcqypy3s2qnmzkzm5qwzr5f3i";
   };
 
 
diff --git a/pkgs/development/libraries/libtiff/default.nix b/pkgs/development/libraries/libtiff/default.nix
index d170c2fd2314..ba5966d13d4b 100644
--- a/pkgs/development/libraries/libtiff/default.nix
+++ b/pkgs/development/libraries/libtiff/default.nix
@@ -1,18 +1,22 @@
 { stdenv, fetchurl, zlib, libjpeg }:
 
-stdenv.mkDerivation {
-  name = "libtiff-3.9.4";
-  
+let version = "3.9.7"; in
+
+stdenv.mkDerivation rec {
+  name = "libtiff-${version}";
+
   src = fetchurl {
     urls =
-      [ ftp://ftp.remotesensing.org/pub/libtiff/tiff-3.9.4.tar.gz
-        http://download.osgeo.org/libtiff/tiff-3.9.4.tar.gz
+      [ "ftp://ftp.remotesensing.org/pub/libtiff/tiff-${version}.tar.gz"
+        "http://download.osgeo.org/libtiff/tiff-${version}.tar.gz"
       ];
-    sha256 = "19hxd773yxcs4lxlc3zfdkz5aiv705vj2jvy5srpqkxpbw3nvdv7";
+    sha256 = "0spg1hr5rsrmg88sfzb05qnf0haspq7r5hvdkxg5zib1rva4vmpm";
   };
-  
+
   propagatedBuildInputs = [ zlib libjpeg ];
 
+  enableParallelBuilding = true;
+
   meta = {
     description = "Library and utilities for working with the TIFF image file format";
     homepage = http://www.libtiff.org/;
diff --git a/pkgs/development/libraries/libusb1/default.nix b/pkgs/development/libraries/libusb1/default.nix
index dcdd9f46d763..8a1580d4fbe8 100644
--- a/pkgs/development/libraries/libusb1/default.nix
+++ b/pkgs/development/libraries/libusb1/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl }:
 
 stdenv.mkDerivation rec {
-  name = "libusb-1.0.8";
+  name = "libusb-1.0.9";
 
   src = fetchurl {
     url = "mirror://sourceforge/libusb/${name}.tar.bz2";
-    sha256 = "1afvpaqnl5plqg95nkvsl4sj9d6ckrmjq44mql8l4zqgf6jx7l11";
+    sha256 = "16sz34ix6hw2wwl3kqx6rf26fg210iryr68wc439dc065pffw879";
   };
 
   meta = {
diff --git a/pkgs/development/libraries/libxml2/default.nix b/pkgs/development/libraries/libxml2/default.nix
index defba390cf14..8fc32babd3b4 100644
--- a/pkgs/development/libraries/libxml2/default.nix
+++ b/pkgs/development/libraries/libxml2/default.nix
@@ -1,28 +1,34 @@
-{stdenv, fetchurl, zlib, python ? null, pythonSupport ? true }:
+{ stdenv, fetchurl, zlib, python ? null, pythonSupport ? true }:
 
 assert pythonSupport -> python != null;
 
-stdenv.mkDerivation {
-  name = "libxml2-2.7.8";
+stdenv.mkDerivation rec {
+  name = "libxml2-2.9.0";
 
   src = fetchurl {
-    url = ftp://xmlsoft.org/libxml2/libxml2-sources-2.7.8.tar.gz;
-    sha256 = "6a33c3a2d18b902cd049e0faa25dd39f9b554a5b09a3bb56ee07dd7938b11c54";
+    url = "ftp://xmlsoft.org/libxml2/${name}.tar.gz";
+    sha256 = "10ib8bpar2pl68aqksfinvfmqknwnk7i35ibq6yjl8dpb0cxj9dd";
   };
 
-  configureFlags = ''                                                  
-    ${if pythonSupport then "--with-python=${python}" else ""}         
-  '';
-  
-  propagatedBuildInputs = [zlib];
+  patches = [ ./pthread-once-init.patch ];
+
+  configureFlags = stdenv.lib.optionalString pythonSupport "--with-python=${python}";
+
+  buildInputs = stdenv.lib.optional pythonSupport [ python ];
+
+  propagatedBuildInputs = [ zlib ];
 
   setupHook = ./setup-hook.sh;
 
-  passthru = {inherit pythonSupport;};
+  passthru = { inherit pythonSupport; };
+
+  enableParallelBuilding = true;
 
   meta = {
     homepage = http://xmlsoft.org/;
     description = "A XML parsing library for C";
     license = "bsd";
+    platforms = stdenv.lib.platforms.linux;
+    maintainers = [ stdenv.lib.maintainers.eelco ];
   };
 }
diff --git a/pkgs/development/libraries/libxml2/pthread-once-init.patch b/pkgs/development/libraries/libxml2/pthread-once-init.patch
new file mode 100644
index 000000000000..fadfc27a9118
--- /dev/null
+++ b/pkgs/development/libraries/libxml2/pthread-once-init.patch
@@ -0,0 +1,35 @@
+http://git.gnome.org/browse/libxml2/commit/?id=3f6cfbd1d38d0634a2ddcb9a0a13e1b5a2195a5e
+
+From 3f6cfbd1d38d0634a2ddcb9a0a13e1b5a2195a5e Mon Sep 17 00:00:00 2001
+From: Friedrich Haubensak <hsk@fli-leibniz.de>
+Date: Wed, 12 Sep 2012 15:34:53 +0000
+Subject: Fix a thread portability problem
+
+cannot compile libxml2-2.9.0 using studio 12.1 compiler on solaris 10
+
+I.M.O. structure initializer (as PTHREAD_ONCE_INIT) cannot be used in
+a structure assignment anyway
+---
+diff --git a/threads.c b/threads.c
+index f206149..7e85a26 100644
+--- a/threads.c
++++ b/threads.c
+@@ -146,6 +146,7 @@ struct _xmlRMutex {
+ static pthread_key_t globalkey;
+ static pthread_t mainthread;
+ static pthread_once_t once_control = PTHREAD_ONCE_INIT;
++static pthread_once_t once_control_init = PTHREAD_ONCE_INIT;
+ static pthread_mutex_t global_init_lock = PTHREAD_MUTEX_INITIALIZER;
+ #elif defined HAVE_WIN32_THREADS
+ #if defined(HAVE_COMPILER_TLS)
+@@ -915,7 +916,7 @@ xmlCleanupThreads(void)
+ #ifdef HAVE_PTHREAD_H
+     if ((libxml_is_threaded)  && (pthread_key_delete != NULL))
+         pthread_key_delete(globalkey);
+-    once_control = PTHREAD_ONCE_INIT;
++    once_control = once_control_init;
+ #elif defined(HAVE_WIN32_THREADS) && !defined(HAVE_COMPILER_TLS) && (!defined(LIBXML_STATIC) || defined(LIBXML_STATIC_FOR_DLL))
+     if (globalkey != TLS_OUT_OF_INDEXES) {
+         xmlGlobalStateCleanupHelperParams *p;
+--
+cgit v0.9.0.2
diff --git a/pkgs/development/libraries/libxml2/setup-hook.sh b/pkgs/development/libraries/libxml2/setup-hook.sh
index d87c226506a8..f8e4f5e0fd64 100644
--- a/pkgs/development/libraries/libxml2/setup-hook.sh
+++ b/pkgs/development/libraries/libxml2/setup-hook.sh
@@ -1,10 +1,10 @@
 addXMLCatalogs () {
     for kind in dtd xsl; do
-	if test -d $1/xml/$kind; then
+        if test -d $1/xml/$kind; then
             for i in $(find $1/xml/$kind -name catalog.xml); do
-		export XML_CATALOG_FILES="$XML_CATALOG_FILES $i"
+                export XML_CATALOG_FILES="$XML_CATALOG_FILES $i"
             done
-	fi
+        fi
     done
 }
 
diff --git a/pkgs/development/libraries/libxslt/default.nix b/pkgs/development/libraries/libxslt/default.nix
index 05ce8019c4ec..d3b7769754e9 100644
--- a/pkgs/development/libraries/libxslt/default.nix
+++ b/pkgs/development/libraries/libxslt/default.nix
@@ -1,15 +1,15 @@
-{stdenv, fetchurl, libxml2 }:
+{ stdenv, fetchurl, libxml2 }:
 
 stdenv.mkDerivation rec {
-  name = "libxslt-1.1.26";
-  
+  name = "libxslt-1.1.27";
+
   src = fetchurl {
     url = "ftp://xmlsoft.org/libxml2/${name}.tar.gz";
-    sha256 = "1c9xdv39jvq1hp16gsbi56hbz032dmqyy0fpi4ls1y3152s55pam";
+    sha256 = "09ky3vhlaahvsb0q9gp6h3as53pfj70gincirachjqzj46jdka5n";
   };
-  
-  buildInputs = [libxml2];
-  
+
+  buildInputs = [ libxml2 ];
+
   postInstall = ''
     mkdir -p $out/nix-support
     ln -s ${libxml2}/nix-support/setup-hook $out/nix-support/
@@ -19,5 +19,7 @@ stdenv.mkDerivation rec {
     homepage = http://xmlsoft.org/XSLT/;
     description = "A C library and tools to do XSL transformations";
     license = "bsd";
+    platforms = stdenv.lib.platforms.linux;
+    maintainers = [ stdenv.lib.maintainers.eelco ];
   };
 }
diff --git a/pkgs/development/libraries/loudmouth/default.nix b/pkgs/development/libraries/loudmouth/default.nix
index ffa3ebdef926..ae9f3fc6c18d 100644
--- a/pkgs/development/libraries/loudmouth/default.nix
+++ b/pkgs/development/libraries/loudmouth/default.nix
@@ -1,16 +1,22 @@
-{stdenv, fetchurl, openssl, libidn, glib, pkgconfig, zlib}:
+{ stdenv, fetchurl, openssl, libidn, glib, pkgconfig, zlib }:
 
-stdenv.mkDerivation {
+stdenv.mkDerivation rec {
   name = "loudmouth-1.4.3";
-    
+
   src = fetchurl {
-    url = mirror://gnome/sources/loudmouth/1.4/loudmouth-1.4.3.tar.bz2;
+    url = "mirror://gnome/sources/loudmouth/1.4/${name}.tar.bz2";
     md5 = "55339ca42494690c3942ee1465a96937";
   };
-    
+
+  patches = [ ./glib-2.32.patch ];
+
   configureFlags = "--with-ssl=openssl";
-  
-  propagatedBuildInputs = [openssl libidn glib zlib];
-  
-  buildInputs = [pkgconfig];
+
+  propagatedBuildInputs = [ openssl libidn glib zlib ];
+
+  buildInputs = [ pkgconfig ];
+
+  meta = {
+    description = "A lightweight C library for the Jabber protocol";
+  };
 }
diff --git a/pkgs/development/libraries/loudmouth/glib-2.32.patch b/pkgs/development/libraries/loudmouth/glib-2.32.patch
new file mode 100644
index 000000000000..87fc170c80da
--- /dev/null
+++ b/pkgs/development/libraries/loudmouth/glib-2.32.patch
@@ -0,0 +1,13 @@
+Index: loudmouth-1.4.3/loudmouth/lm-error.c
+===================================================================
+--- loudmouth-1.4.3.orig/loudmouth/lm-error.c
++++ loudmouth-1.4.3/loudmouth/lm-error.c
+@@ -19,7 +19,7 @@
+  */
+ 
+ #include <config.h>
+-#include <glib/gerror.h>
++#include <glib.h>
+ #include "lm-error.h"
+ 
+ /**
diff --git a/pkgs/development/libraries/mesa/default.nix b/pkgs/development/libraries/mesa/default.nix
index 219dc161761b..f72638677d1c 100644
--- a/pkgs/development/libraries/mesa/default.nix
+++ b/pkgs/development/libraries/mesa/default.nix
@@ -7,27 +7,24 @@ if ! stdenv.lib.lists.elem stdenv.system stdenv.lib.platforms.mesaPlatforms then
   throw "unsupported platform for Mesa"
 else
 
-let version = "7.11.2"; in
+let version = "8.0.4"; in
 
 stdenv.mkDerivation {
   name = "mesa-${version}";
 
   src = fetchurl {
     url = "ftp://ftp.freedesktop.org/pub/mesa/${version}/MesaLib-${version}.tar.bz2";
-    sha256 = "0msk1fh4yw4yi7z37v75vhpa23z49lkwgin6drczbihbqsl6lx2p";
+    md5 = "d546f988adfdf986cff45b1efa2d8a46";
   };
 
-  patches = [ ./swrast-settexbuffer.patch ] ++ stdenv.lib.optional
-    (stdenv.system == "mips64el-linux") ./mips_wmb.patch;
+  patches =
+    stdenv.lib.optional (stdenv.system == "mips64el-linux") ./mips_wmb.patch;
 
   prePatch = "patchShebangs .";
 
-# r300
   configureFlags =
-      " --with-driver=dri --enable-gl-osmesa --enable-gles1"
+      " --enable-gles1 --enable-gles2 --enable-gallium-egl"
     + " --with-gallium-drivers=i915,nouveau,r600,svga,swrast"
-    + " --enable-gles2 --enable-gallium-egl --disable-glx-tls"
-    + " --enable-xcb --enable-egl --disable-glut"
     # Texture floats are patented, see docs/patents.txt
     + stdenv.lib.optionalString enableTextureFloats " --enable-texture-float";
 
@@ -44,7 +41,6 @@ stdenv.mkDerivation {
     description = "An open source implementation of OpenGL";
     homepage = http://www.mesa3d.org/;
     license = "bsd";
-
     platforms = stdenv.lib.platforms.mesaPlatforms;
     maintainers = [ stdenv.lib.maintainers.simons ];
   };
diff --git a/pkgs/development/libraries/nettle/default.nix b/pkgs/development/libraries/nettle/default.nix
index 6c7383435a8a..2a4d89bb4f0c 100644
--- a/pkgs/development/libraries/nettle/default.nix
+++ b/pkgs/development/libraries/nettle/default.nix
@@ -1,12 +1,11 @@
 { fetchurl, stdenv, gmp, gnum4 }:
 
 stdenv.mkDerivation (rec {
-  name = "nettle-2.4";
+  name = "nettle-2.5";
 
   src = fetchurl {
-    # Eventually use `mirror://gnu/'.
-    url = "ftp://ftp.lysator.liu.se/pub/security/lsh/${name}.tar.gz";
-    sha256 = "0gwwcipmjxkv7p2p01m19n4c3jiczg682w58l5dgg0b8vw494056";
+    url = "mirror://gnu/nettle/${name}.tar.gz";
+    sha256 = "0wicr7amx01l03rm0pzgr1qvw3f9blaw17vjsy1301dh13ll58aa";
   };
 
   buildInputs = [ gnum4 ];
@@ -14,6 +13,8 @@ stdenv.mkDerivation (rec {
 
   doCheck = (stdenv.system != "i686-cygwin");
 
+  enableParallelBuilding = true;
+
   patches = stdenv.lib.optional (stdenv.system == "i686-cygwin")
               ./cygwin.patch;
 
diff --git a/pkgs/development/libraries/openjpeg/default.nix b/pkgs/development/libraries/openjpeg/default.nix
index 575d580faf65..6024456652c6 100644
--- a/pkgs/development/libraries/openjpeg/default.nix
+++ b/pkgs/development/libraries/openjpeg/default.nix
@@ -1,11 +1,11 @@
-{ stdenv, fetchurl }: 
+{ stdenv, fetchurl }:
+
+stdenv.mkDerivation rec {
+  name = "openjpeg-1.5.1";
 
-stdenv.mkDerivation {
-  name = "openjpeg-1.5.0";
-  
   src = fetchurl {
-    url = http://openjpeg.googlecode.com/files/openjpeg-1.5.0.tar.gz;
-    sha256 = "1kja6s9dk0hh7p9064kg69y6vninwyvpqi8cap92waj38jmqz469";
+    url = "http://openjpeg.googlecode.com/files/${name}.tar.gz";
+    sha256 = "13dbyf3jwr4h2dn1k11zph3jgx17z7d66xmi640mbsf8l6bk1yvc";
   };
 
   meta = {
diff --git a/pkgs/development/libraries/pango/1.29.x.nix b/pkgs/development/libraries/pango/1.30.x.nix
index 6c5d0f4cebcc..7168c1b6c9d6 100644
--- a/pkgs/development/libraries/pango/1.29.x.nix
+++ b/pkgs/development/libraries/pango/1.30.x.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl, pkgconfig, gettext, x11, glib, cairo, libpng }:
 
 stdenv.mkDerivation rec {
-  name = "pango-1.29.4";
+  name = "pango-1.30.1";
 
   src = fetchurl {
-    url = mirror://gnome/sources/pango/1.29/pango-1.29.4.tar.xz;
-    sha256 = "0zqjq6ccv6mbah74rcvb03ksq1jwan21z37mdmqa56307sax3s3s";
+    url = "mirror://gnome/sources/pango/1.30/${name}.tar.xz";
+    sha256 = "3a8c061e143c272ddcd5467b3567e970cfbb64d1d1600a8f8e62435556220cbe";
   };
 
   buildInputs = stdenv.lib.optional stdenv.isDarwin gettext;
@@ -14,6 +14,8 @@ stdenv.mkDerivation rec {
 
   propagatedBuildInputs = [ x11 glib cairo libpng ];
 
+  enableParallelBuilding = true;
+
   postInstall = "rm -rf $out/share/gtk-doc";
 
   meta = {
diff --git a/pkgs/development/libraries/phat/default.nix b/pkgs/development/libraries/phat/default.nix
deleted file mode 100644
index 6e68e3d9da8c..000000000000
--- a/pkgs/development/libraries/phat/default.nix
+++ /dev/null
@@ -1,21 +0,0 @@
-{ stdenv, fetchurl, gtk, libgnomecanvas, pkgconfig }:
- 
-stdenv.mkDerivation rec {
-  name = "phat-${version}";
-  version = "0.4.1";
-
-  src = fetchurl {
-    url = "http://download.berlios.de/phat/${name}.tar.gz";
-    sha256 = "1icncp2d8hbarzz8mmflkw13blg7blgwfic8q2wll7s6n01ii2av";
-  };
-
-  buildInputs = [ gtk libgnomecanvas pkgconfig ];
-
-  meta = with stdenv.lib; {
-    description = "GTK+ widgets geared toward pro-audio apps";
-    homepage = http://phat.berlios.de;
-    license = licenses.gpl2Plus;
-    platforms = platforms.linux;
-    maintainers = [ maintainers.goibhniu ];
-  };
-}
diff --git a/pkgs/development/libraries/qt-4.x/4.8/default.nix b/pkgs/development/libraries/qt-4.x/4.8/default.nix
index f56886259a63..cea597806272 100644
--- a/pkgs/development/libraries/qt-4.x/4.8/default.nix
+++ b/pkgs/development/libraries/qt-4.x/4.8/default.nix
@@ -7,13 +7,13 @@
 , perl, coreutils, libXi
 , buildMultimedia ? true, alsaLib, gstreamer, gst_plugins_base
 , buildWebkit ? true
-, flashplayerFix ? true, gdk_pixbuf
+, flashplayerFix ? false, gdk_pixbuf
 , gtkStyle ? false, libgnomeui, gtk, GConf, gnome_vfs
 }:
 
-let
-  v = "4.8.2";
-in
+with stdenv.lib;
+
+let v = "4.8.3"; in
 
 # TODO:
 #  * move some plugins (e.g., SQL plugins) to dedicated derivations to avoid
@@ -24,27 +24,26 @@ stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "http://releases.qt-project.org/qt4/source/qt-everywhere-opensource-src-${v}.tar.gz";
-    sha256 = "0y93vkkn44md37gyg4y8sc9ylk27xkniaimfcpdcwd090qnjl6wj";
+    sha256 = "0a67riy4i0xj6j7vmckd0nakras3rl3rzx0r83h1p1i4z5s2kxzi";
   };
 
-  patches = [ ( substituteAll {
+  patches =
+    [ ./glib-2.32.patch
+      (substituteAll {
         src = ./dlopen-absolute-paths.diff;
         inherit cups icu libXfixes;
         glibc = stdenv.gcc.libc;
       })
-    ] ++ stdenv.lib.optional gtkStyle (
-      substituteAll {
+    ] ++ stdenv.lib.optional gtkStyle (substituteAll {
         src = ./dlopen-gtkstyle.diff;
         # substituteAll ignores env vars starting with capital letter
-        gconf = GConf; 
+        gconf = GConf;
         inherit gnome_vfs libgnomeui gtk;
-      }
-    ) ++ stdenv.lib.optional flashplayerFix (
-      substituteAll {
+      })
+    ++ stdenv.lib.optional flashplayerFix (substituteAll {
         src = ./dlopen-webkit-nsplugin.diff;
         inherit gtk gdk_pixbuf;
-      }
-    );
+      });
 
   preConfigure =
     ''
@@ -81,18 +80,16 @@ stdenv.mkDerivation rec {
     [ libXrender libXrandr libXinerama libXcursor libXext libXfixes
       libXv libXi libSM
     ]
-    ++ (stdenv.lib.optional (stdenv.lib.lists.elem stdenv.system
-                              stdenv.lib.platforms.mesaPlatforms)
-         mesa)
-    ++ (stdenv.lib.optional (buildWebkit || buildMultimedia) alsaLib)
+    ++ optional (stdenv.lib.lists.elem stdenv.system stdenv.lib.platforms.mesaPlatforms) mesa
+    ++ optional (buildWebkit || buildMultimedia) alsaLib
     ++ [ zlib libpng openssl dbus.libs freetype fontconfig glib ]
-    ++ (stdenv.lib.optionals (buildWebkit || buildMultimedia)
-        [ gstreamer gst_plugins_base ]);
+    ++ optionals (buildWebkit || buildMultimedia) [ gstreamer gst_plugins_base ];
 
   # The following libraries are only used in plugins
-  buildInputs = [ cups # Qt dlopen's libcups instead of linking to it
-    mysql postgresql sqlite libjpeg libmng libtiff icu ]
-    ++ stdenv.lib.optionals gtkStyle [ gtk gdk_pixbuf ];
+  buildInputs =
+    [ cups # Qt dlopen's libcups instead of linking to it
+      mysql postgresql sqlite libjpeg libmng libtiff icu ]
+    ++ optionals gtkStyle [ gtk gdk_pixbuf ];
 
   buildNativeInputs = [ perl pkgconfig which ];
 
@@ -119,7 +116,7 @@ stdenv.mkDerivation rec {
       -no-svg
       -make qmake -make libs -nomake tools
       -nomake demos -nomake examples -nomake docs
-    '' + stdenv.lib.optionalString isMingw " -xplatform win32-g++-4.6";
+    '' + optionalString isMingw " -xplatform win32-g++-4.6";
     patches = [];
     preConfigure = ''
       sed -i -e 's/ g++/ ${stdenv.cross.config}-g++/' \
@@ -136,12 +133,11 @@ stdenv.mkDerivation rec {
     '';
     dontSetConfigureCross = true;
     dontStrip = true;
-  } // (if isMingw then
-  {
+  } // optionalAttrs isMingw {
     propagatedBuildInputs = [ ];
-  } else {});
+  };
 
-  meta = with stdenv.lib; {
+  meta = {
     homepage = http://qt.nokia.com/products;
     description = "A cross-platform application framework for C++";
     license = "GPL/LGPL";
diff --git a/pkgs/development/libraries/qt-4.x/4.8/dlopen-absolute-paths.diff b/pkgs/development/libraries/qt-4.x/4.8/dlopen-absolute-paths.diff
index 9823d6493652..fe691996277e 100644
--- a/pkgs/development/libraries/qt-4.x/4.8/dlopen-absolute-paths.diff
+++ b/pkgs/development/libraries/qt-4.x/4.8/dlopen-absolute-paths.diff
@@ -1,5 +1,27 @@
---- a/src/gui/painting/qcups.cpp	2011-12-08 09:06:02.000000000 +0400
-+++ b/src/gui/painting/qcups.cpp	2011-12-18 12:17:07.000000000 +0400
+diff -ru qt-everywhere-opensource-src-4.8.3-orig/src/corelib/tools/qlocale_icu.cpp qt-everywhere-opensource-src-4.8.3/src/corelib/tools/qlocale_icu.cpp
+--- qt-everywhere-opensource-src-4.8.3-orig/src/corelib/tools/qlocale_icu.cpp	2012-09-10 21:36:50.000000000 -0400
++++ qt-everywhere-opensource-src-4.8.3/src/corelib/tools/qlocale_icu.cpp	2012-09-28 22:57:40.764153828 -0400
+@@ -81,7 +81,7 @@
+     if (status == NotLoaded) {
+ 
+         // resolve libicui18n
+-        QLibrary lib(QLatin1String("icui18n"), QLatin1String(U_ICU_VERSION_SHORT));
++        QLibrary lib(QLatin1String("@icu@/lib/libicui18n"), QLatin1String(U_ICU_VERSION_SHORT));
+         lib.setLoadHints(QLibrary::ImprovedSearchHeuristics);
+         if (!lib.load()) {
+             qWarning() << "Unable to load library icui18n" << lib.errorString();
+@@ -111,7 +111,7 @@
+         }
+ 
+         // resolve libicuuc
+-        QLibrary ucLib(QLatin1String("icuuc"), QLatin1String(U_ICU_VERSION_SHORT));
++        QLibrary ucLib(QLatin1String("@icu@/lib/libicuuc"), QLatin1String(U_ICU_VERSION_SHORT));
+         ucLib.setLoadHints(QLibrary::ImprovedSearchHeuristics);
+         if (!ucLib.load()) {
+             qWarning() << "Unable to load library icuuc" << ucLib.errorString();
+diff -ru qt-everywhere-opensource-src-4.8.3-orig/src/gui/painting/qcups.cpp qt-everywhere-opensource-src-4.8.3/src/gui/painting/qcups.cpp
+--- qt-everywhere-opensource-src-4.8.3-orig/src/gui/painting/qcups.cpp	2012-09-10 21:36:51.000000000 -0400
++++ qt-everywhere-opensource-src-4.8.3/src/gui/painting/qcups.cpp	2012-09-28 18:08:26.600720491 -0400
 @@ -87,7 +87,7 @@
  
  static void resolveCups()
@@ -9,8 +31,9 @@
      if(cupsLib.load()) {
          _cupsGetDests = (CupsGetDests) cupsLib.resolve("cupsGetDests");
          _cupsFreeDests = (CupsFreeDests) cupsLib.resolve("cupsFreeDests");
---- a/src/gui/painting/qprinterinfo_unix.cpp	2011-12-08 09:06:02.000000000 +0400
-+++ b/src/gui/painting/qprinterinfo_unix.cpp	2011-12-23 16:22:15.000000000 +0400
+diff -ru qt-everywhere-opensource-src-4.8.3-orig/src/gui/painting/qprinterinfo_unix.cpp qt-everywhere-opensource-src-4.8.3/src/gui/painting/qprinterinfo_unix.cpp
+--- qt-everywhere-opensource-src-4.8.3-orig/src/gui/painting/qprinterinfo_unix.cpp	2012-09-10 21:36:51.000000000 -0400
++++ qt-everywhere-opensource-src-4.8.3/src/gui/painting/qprinterinfo_unix.cpp	2012-09-28 18:08:26.601720488 -0400
 @@ -454,7 +454,7 @@
      char *domain;
      int err;
@@ -20,39 +43,21 @@
      typedef int (*ypGetDefaultDomain)(char **);
      ypGetDefaultDomain _ypGetDefaultDomain = (ypGetDefaultDomain)lib.resolve("yp_get_default_domain");
      typedef int (*ypAll)(const char *, const char *, const struct ypall_callback *);
---- a/src/network/kernel/qhostinfo_unix.cpp	2011-12-23 16:26:07.000000000 +0400
-+++ b/src/network/kernel/qhostinfo_unix.cpp	2011-12-23 16:25:55.000000000 +0400
+diff -ru qt-everywhere-opensource-src-4.8.3-orig/src/network/kernel/qhostinfo_unix.cpp qt-everywhere-opensource-src-4.8.3/src/network/kernel/qhostinfo_unix.cpp
+--- qt-everywhere-opensource-src-4.8.3-orig/src/network/kernel/qhostinfo_unix.cpp	2012-09-10 21:36:51.000000000 -0400
++++ qt-everywhere-opensource-src-4.8.3/src/network/kernel/qhostinfo_unix.cpp	2012-09-28 18:08:53.186643755 -0400
 @@ -95,7 +95,7 @@
  static void resolveLibrary()
  {
  #ifndef QT_NO_LIBRARY
 -    QLibrary lib(QLatin1String("resolv"));
 +    QLibrary lib(QLatin1String("@glibc@/lib/libresolv"));
+     lib.setLoadHints(QLibrary::ImprovedSearchHeuristics);
      if (!lib.load())
          return;
- 
---- a/src/corelib/tools/qlocale_icu.cpp	2011-12-08 09:06:03.000000000 +0400
-+++ b/src/corelib/tools/qlocale_icu.cpp	2011-12-23 16:29:15.000000000 +0400
-@@ -81,7 +81,7 @@
-     if (status == NotLoaded) {
- 
-         // resolve libicui18n
--        QLibrary lib(QLatin1String("icui18n"), QLatin1String(U_ICU_VERSION_SHORT));
-+        QLibrary lib(QLatin1String("@icu@/lib/libicui18n"), QLatin1String(U_ICU_VERSION_SHORT));
-         if (!lib.load()) {
-             qWarning() << "Unable to load library icui18n" << lib.errorString();
-             status = ErrorLoading;
-@@ -110,7 +110,7 @@
-         }
- 
-         // resolve libicuuc
--        QLibrary ucLib(QLatin1String("icuuc"), QLatin1String(U_ICU_VERSION_SHORT));
-+        QLibrary ucLib(QLatin1String("@icu@/lib/libicuuc"), QLatin1String(U_ICU_VERSION_SHORT));
-         if (!ucLib.load()) {
-             qWarning() << "Unable to load library icuuc" << ucLib.errorString();
-             status = ErrorLoading;
---- a/src/plugins/platforms/xlib/qxlibstatic.cpp	2011-12-08 09:06:02.000000000 +0400
-+++ b/src/plugins/platforms/xlib/qxlibstatic.cpp	2011-12-23 20:38:49.000000000 +0400
+diff -ru qt-everywhere-opensource-src-4.8.3-orig/src/plugins/platforms/xlib/qxlibstatic.cpp qt-everywhere-opensource-src-4.8.3/src/plugins/platforms/xlib/qxlibstatic.cpp
+--- qt-everywhere-opensource-src-4.8.3-orig/src/plugins/platforms/xlib/qxlibstatic.cpp	2012-09-10 21:36:51.000000000 -0400
++++ qt-everywhere-opensource-src-4.8.3/src/plugins/platforms/xlib/qxlibstatic.cpp	2012-09-28 18:08:26.601720488 -0400
 @@ -242,7 +242,7 @@
  }
  
diff --git a/pkgs/development/libraries/qt-4.x/4.8/glib-2.32.patch b/pkgs/development/libraries/qt-4.x/4.8/glib-2.32.patch
new file mode 100644
index 000000000000..4593c1b4ba8d
--- /dev/null
+++ b/pkgs/development/libraries/qt-4.x/4.8/glib-2.32.patch
@@ -0,0 +1,12 @@
+diff -Naur qt-everywhere-opensource-src-4.8.2-orig/src/3rdparty/javascriptcore/JavaScriptCore/wtf/Threading.h qt-everywhere-opensource-src-4.8.2/src/3rdparty/javascriptcore/JavaScriptCore/wtf/Threading.h
+--- qt-everywhere-opensource-src-4.8.2-orig/src/3rdparty/javascriptcore/JavaScriptCore/wtf/Threading.h	2012-04-26 15:46:22.000000000 -0400
++++ qt-everywhere-opensource-src-4.8.2/src/3rdparty/javascriptcore/JavaScriptCore/wtf/Threading.h	2012-07-14 22:47:02.145152876 -0400
+@@ -89,7 +89,7 @@
+ #include <pthread.h>
+ #elif PLATFORM(GTK)
+ #include <wtf/gtk/GOwnPtr.h>
+-typedef struct _GMutex GMutex;
++typedef union _GMutex GMutex;
+ typedef struct _GCond GCond;
+ #endif
+ 
diff --git a/pkgs/development/libraries/science/math/blas/default.nix b/pkgs/development/libraries/science/math/blas/default.nix
index 55654586eddf..7066ebad87c0 100644
--- a/pkgs/development/libraries/science/math/blas/default.nix
+++ b/pkgs/development/libraries/science/math/blas/default.nix
@@ -32,10 +32,14 @@ stdenv.mkDerivation {
     echo >>make.inc "RANLIB = ranlib"
     make
   '';
- 
-  installPhase = ''
-    install -D -m755 libblas.a "$out/lib/libblas.a"
-    install -D -m755 libblas.so.3.0.3 "$out/lib/libblas.so.3.0.3"
+
+  installPhase =
+    # FreeBSD's stdenv doesn't use Coreutils.
+    let dashD = if stdenv.isFreeBSD then "" else "-D"; in
+    (stdenv.lib.optionalString stdenv.isFreeBSD "mkdir -p $out/lib ;")
+    + ''
+    install ${dashD} -m755 libblas.a "$out/lib/libblas.a"
+    install ${dashD} -m755 libblas.so.3.0.3 "$out/lib/libblas.so.3.0.3"
     ln -s libblas.so.3.0.3 "$out/lib/libblas.so.3"
     ln -s libblas.so.3.0.3 "$out/lib/libblas.so"
   '';
diff --git a/pkgs/development/libraries/webkit/default.nix b/pkgs/development/libraries/webkit/default.nix
index c0fd878e0bb5..d229228b94f7 100644
--- a/pkgs/development/libraries/webkit/default.nix
+++ b/pkgs/development/libraries/webkit/default.nix
@@ -14,7 +14,7 @@ rec {
     sqlite icu gperf bison flex autoconf automake libtool 
     perl intltool pkgconfig libsoup gtkdoc libXt libproxy
     enchant python ruby which renderproto libXrender geoclue
-    kbproto
+    kbproto mesa
     ];
 
   propagatedBuildInputs = [
@@ -54,7 +54,7 @@ rec {
     ];
 
   /* doConfigure should be specified separately */
-  phaseNames = ["setVars" /* "paranoidFixComments" */ "doConfigure" (doPatchShebangs ".") 
+  phaseNames = ["setVars" "fixConfigure" /* "paranoidFixComments" */ "doConfigure" (doPatchShebangs ".") 
     "doReplaceUsrBin" "doMakeInstall" "doAddPrograms"];
 
   setVars = fullDepEntry (''
@@ -78,6 +78,13 @@ rec {
     sed -re 's@( |^)//.*@/* & */@' -i $(find . -name '*.c' -o -name '*.h')
   '') ["minInit" "doUnpack"];
 
+  # See http://archive.linuxfromscratch.org/mail-archives/blfs-dev/2012-April/022893.html
+  fixConfigure = fullDepEntry (''
+    sed   -i -e 's/=GSTREAMER_0_10_REQUIRED_VERSION/=\$GSTREAMER_0_10_REQUIRED_VERSION/' \
+      -e 's/=GSTREAMER_0_10_PLUGINS_BASE_REQUIRED_VERSION/=\$GSTREAMER_0_10_PLUGINS_BASE_REQUIRED_VERSION/' \
+      configure{,.ac}
+  '') ["minInit" "doUnpack"];
+
   name = s.name;
   meta = {
     description = "WebKit - a fast and correct HTML renderer";
diff --git a/pkgs/development/libraries/webkit/src-for-default.nix b/pkgs/development/libraries/webkit/src-for-default.nix
index 30e129e2faef..65bcd4350960 100644
--- a/pkgs/development/libraries/webkit/src-for-default.nix
+++ b/pkgs/development/libraries/webkit/src-for-default.nix
@@ -1,9 +1,10 @@
 rec {
-   version="1.6.3";
-   name="webkit-1.6.3";
-   hash="1hvph13ak7a85qmj1ikanwxf2nn53m5f6a50j627lp49db7dpl0j";
-   url="http://webkitgtk.org/webkit-1.6.3.tar.xz";
-   advertisedUrl="http://webkitgtk.org/webkit-1.6.3.tar.xz";
+   version="1.8.1";
+   name="webkit-1.8.1";
+   hash="0a1v3v8dp2cl332qr51j4fpl0rwpgxbf29hn3zdim9hcniv6l4ls";
+   url="http://webkitgtk.org/releases/webkit-1.8.1.tar.xz";
+   advertisedUrl="http://webkitgtk.org/releases/webkit-1.8.1.tar.xz";
   
   
 }
+
diff --git a/pkgs/development/ocaml-modules/extlib/default.nix b/pkgs/development/ocaml-modules/extlib/default.nix
index a520f8196d8a..d59dbae45fe9 100644
--- a/pkgs/development/ocaml-modules/extlib/default.nix
+++ b/pkgs/development/ocaml-modules/extlib/default.nix
@@ -4,11 +4,10 @@ stdenv.mkDerivation {
   name = "ocaml-extlib-1.5.2";
 
   src = fetchurl {
-    url = "http://ocaml-extlib.googlecode.com/files/extlib-1.5.2.tar.gz";
-    sha256 = "ca6d69adeba4242ce41c02a23746ba1e464c0bbec66e2d16b02c3c6e85dc10aa";
+    url = http://ocaml-extlib.googlecode.com/files/extlib-1.5.3.tar.gz;
+    sha256 = "c095eef4202a8614ff1474d4c08c50c32d6ca82d1015387785cf03d5913ec021";
   };
 
-  patches = [ ./hashtable-ocaml4-compat.patch ];
   buildInputs = [ocaml findlib];
 
   createFindlibDestdir = true;
@@ -19,9 +18,9 @@ stdenv.mkDerivation {
   '';
 
   meta = {
-    homepage = "http://code.google.com/p/ocaml-extlib/";
+    homepage = http://code.google.com/p/ocaml-extlib/;
     description = "Enhancements to the OCaml Standard Library modules";
-    license = "LGPL";
+    license = stdenv.lib.licenses.lgpl21;
     platforms = ocaml.meta.platforms;
   };
 }
diff --git a/pkgs/development/ocaml-modules/extlib/hashtable-ocaml4-compat.patch b/pkgs/development/ocaml-modules/extlib/hashtable-ocaml4-compat.patch
deleted file mode 100644
index c587f2b6cd3b..000000000000
--- a/pkgs/development/ocaml-modules/extlib/hashtable-ocaml4-compat.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-Revision 396 from the official extlib repository.
-
---- extlib/extHashtbl.ml	(revision 395)
-+++ extlib/extHashtbl.ml	(working copy)
-@@ -32,6 +32,7 @@
- 	}
- 
- 	include Hashtbl
-+	let create n = Hashtbl.create (* no seed *) n
- 
- 	external h_conv : ('a, 'b) t -> ('a, 'b) h_t = "%identity"
- 	external h_make : ('a, 'b) h_t -> ('a, 'b) t = "%identity"
\ No newline at end of file
diff --git a/pkgs/development/ocaml-modules/ocamlnet/default.nix b/pkgs/development/ocaml-modules/ocamlnet/default.nix
index e4dc43743f32..4d9e934b6283 100644
--- a/pkgs/development/ocaml-modules/ocamlnet/default.nix
+++ b/pkgs/development/ocaml-modules/ocamlnet/default.nix
@@ -2,15 +2,14 @@
 
 let
   ocaml_version = (builtins.parseDrvName ocaml.name).version;
-  version = "3.1";
 in
 
 stdenv.mkDerivation {
-  name = "ocamlnet-${version}";
+  name = "ocamlnet-3.6";
 
   src = fetchurl {
-    url = "http://download.camlcity.org/download/ocamlnet-${version}.tar.gz";
-    sha256 = "0kdc2540ad84j6haj9jxlwryz9cb8q8kjdr48f2wgvcaii38v9f5";
+    url = http://download.camlcity.org/download/ocamlnet-3.6.tar.gz;
+    sha256 = "306c20aee6512be3564c0f39872b70f929c06e1e893cfcf528ac47ae35cf7a69";
   };
 
   buildInputs = [ncurses ocaml findlib ocaml_pcre camlzip openssl ocaml_ssl];
diff --git a/pkgs/development/ocaml-modules/ounit/default.nix b/pkgs/development/ocaml-modules/ounit/default.nix
index 8f21ba649bf7..533f1ec8d1cd 100644
--- a/pkgs/development/ocaml-modules/ounit/default.nix
+++ b/pkgs/development/ocaml-modules/ounit/default.nix
@@ -5,11 +5,11 @@ let
 in
 
 stdenv.mkDerivation {
-  name = "ounit-1.1.0";
+  name = "ounit-1.1.2";
 
   src = fetchurl {
-    url = http://forge.ocamlcore.org/frs/download.php/495/ounit-1.1.0.tar.gz;
-    sha256 = "12vybg9xlw5c8ip23p8cljfzhkdsm25482sf1yh46fcqq8p2jmqx";
+    url = http://forge.ocamlcore.org/frs/download.php/886/ounit-1.1.2.tar.gz;
+    sha256 = "e6bc1b0cdbb5b5552d85bee653e23aafe20bb97fd7cd229c867d01ff999888e3";
   };
 
   buildInputs = [ocaml findlib];
@@ -25,7 +25,7 @@ stdenv.mkDerivation {
   meta = {
     homepage = http://www.xs4all.nl/~mmzeeman/ocaml/;
     description = "Unit test framework for OCaml";
-    license = "MIT/X11";
+    license = stdenv.lib.licenses.mit;
     platforms = ocaml.meta.platforms;
     maintainers = [
       stdenv.lib.maintainers.z77z
diff --git a/pkgs/development/tools/analysis/smatch/default.nix b/pkgs/development/tools/analysis/smatch/default.nix
new file mode 100644
index 000000000000..8b9deca409fe
--- /dev/null
+++ b/pkgs/development/tools/analysis/smatch/default.nix
@@ -0,0 +1,30 @@
+{ stdenv, fetchgit, sqlite, pkgconfig
+, buildllvmsparse ? true
+, buildc2xml ? true
+, llvm ? null, libxml2 ? null
+}:
+
+assert buildllvmsparse -> llvm != null;
+assert buildc2xml -> libxml2 != null;
+
+stdenv.mkDerivation {
+  name = "smatch";
+
+  src = fetchgit {
+    url = git://repo.or.cz/smatch.git;
+    rev = "23656e3e578b700cbf96d043f039e6341a3ba5b9";
+    sha256 = "09a44967d4cff026c67062f778e251d0b432af132e9d59a47b7d3167f379adfa";
+  };
+
+  buildInputs = [sqlite pkgconfig]
+   ++ stdenv.lib.optional buildllvmsparse llvm
+   ++ stdenv.lib.optional buildc2xml libxml2;
+
+  installFlags = "DESTDIR=$(out)";
+
+  meta = {
+    description = "A semantic analysis tool for C";
+    homepage = "http://smatch.sourceforge.net/";
+    license = "free"; /* OSL, see http://www.opensource.org */
+  };
+}
diff --git a/pkgs/development/tools/build-managers/cmake/default.nix b/pkgs/development/tools/build-managers/cmake/default.nix
index cab217fef97d..d66149a95096 100644
--- a/pkgs/development/tools/build-managers/cmake/default.nix
+++ b/pkgs/development/tools/build-managers/cmake/default.nix
@@ -7,7 +7,7 @@ with stdenv.lib;
 let
   os = stdenv.lib.optionalString;
   majorVersion = "2.8";
-  minorVersion = "7";
+  minorVersion = "9";
   version = "${majorVersion}.${minorVersion}";
 in
 
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "${meta.homepage}files/v${majorVersion}/cmake-${version}.tar.gz";
-    sha256 = "17zmxh0gyis6w05d2km0swlvy94h3w10jgra0fpa5qcg7l2j628k";
+    sha256 = "1yg68ng732cfm5c0h91chqwhg06zdh45bybm353kd1myk5rwqgfw";
   };
 
   patches =
diff --git a/pkgs/development/tools/documentation/haddock/2.13.1.nix b/pkgs/development/tools/documentation/haddock/2.13.1.nix
new file mode 100644
index 000000000000..1eed852f5370
--- /dev/null
+++ b/pkgs/development/tools/documentation/haddock/2.13.1.nix
@@ -0,0 +1,18 @@
+{ cabal, alex, Cabal, deepseq, filepath, ghcPaths, happy, xhtml }:
+
+cabal.mkDerivation (self: {
+  pname = "haddock";
+  version = "2.13.1";
+  sha256 = "0zsflbc3ayjsn542sa58zl62dd78ykr489f18sh467hrrnaj4pkf";
+  isLibrary = true;
+  isExecutable = true;
+  buildDepends = [ Cabal deepseq filepath ghcPaths xhtml ];
+  buildTools = [ alex happy ];
+  meta = {
+    homepage = "http://www.haskell.org/haddock/";
+    description = "A documentation-generation tool for Haskell libraries";
+    license = self.stdenv.lib.licenses.bsd3;
+    platforms = self.ghc.meta.platforms;
+    maintainers = [ self.stdenv.lib.maintainers.andres ];
+  };
+})
diff --git a/pkgs/development/tools/haskell/BNFC-meta/default.nix b/pkgs/development/tools/haskell/BNFC-meta/default.nix
index 1b0397ead1bc..198fb89f33ce 100644
--- a/pkgs/development/tools/haskell/BNFC-meta/default.nix
+++ b/pkgs/development/tools/haskell/BNFC-meta/default.nix
@@ -2,12 +2,12 @@
 
 cabal.mkDerivation (self: {
   pname = "BNFC-meta";
-  version = "0.3.0.3";
-  sha256 = "06k8jnb4gw96gc0ffmczbywn4q2n87zwqa0pl0ada3ldvwaagv4l";
+  version = "0.4";
+  sha256 = "0qmkc2h4fqryvq763k6skx6c24h9njh4bsdspfbyq1nzxxb9mvy0";
   buildDepends = [ alexMeta happyMeta haskellSrcMeta syb ];
   noHaddock = true;
   meta = {
-    description = "Deriving Quasi-Quoters from BNF Grammars";
+    description = "Deriving Parsers and Quasi-Quoters from BNF Grammars";
     license = self.stdenv.lib.licenses.gpl2;
     platforms = self.ghc.meta.platforms;
     maintainers = [ self.stdenv.lib.maintainers.andres ];
diff --git a/pkgs/development/tools/haskell/alex-meta/default.nix b/pkgs/development/tools/haskell/alex-meta/default.nix
index 661c9c7895b5..e28b37aafc6e 100644
--- a/pkgs/development/tools/haskell/alex-meta/default.nix
+++ b/pkgs/development/tools/haskell/alex-meta/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "alex-meta";
-  version = "0.3.0.3";
-  sha256 = "08w7z2iq2s557vi9kp2x8qp1lwvh49skffbjm8kxrf2bn2il5q48";
+  version = "0.3.0.5";
+  sha256 = "0f41q5l6z1dcpfx8rxacv4f544zcw7pgvq935mnzzha9fvsxqzk4";
   buildDepends = [ haskellSrcMeta QuickCheck ];
   noHaddock = true;
   meta = {
diff --git a/pkgs/development/tools/haskell/cabal2nix/default.nix b/pkgs/development/tools/haskell/cabal2nix/default.nix
index 72c032342d91..6eac3153009e 100644
--- a/pkgs/development/tools/haskell/cabal2nix/default.nix
+++ b/pkgs/development/tools/haskell/cabal2nix/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "cabal2nix";
-  version = "1.39";
-  sha256 = "0q2kgzjbcrqxml12hncsrkjdwjiq52dp00v6i3qdgiyj460iy60d";
+  version = "1.40";
+  sha256 = "0finmky9lyzg5gs0y95fb0gmzraszljv7l5271185jmhky4wppim";
   isLibrary = false;
   isExecutable = true;
   buildDepends = [ Cabal filepath hackageDb HTTP mtl regexPosix ];
diff --git a/pkgs/development/tools/haskell/happy-meta/default.nix b/pkgs/development/tools/haskell/happy-meta/default.nix
index 3b9a6d4c9838..a3d885c60084 100644
--- a/pkgs/development/tools/haskell/happy-meta/default.nix
+++ b/pkgs/development/tools/haskell/happy-meta/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "happy-meta";
-  version = "0.2.0.4";
-  sha256 = "1s1inv2l2hwdlvypn6wpiadmi5y5mpcjawiqjb1hv0d8y43dpz54";
+  version = "0.2.0.5";
+  sha256 = "103hi87azqv11l8lq1rv0v9v88sl227g31snvkn8db6b4cfrwrxk";
   buildDepends = [ haskellSrcMeta mtl ];
   meta = {
     description = "Quasi-quoter for Happy parsers";
diff --git a/pkgs/development/tools/haskell/tar/0.4.0.0.nix b/pkgs/development/tools/haskell/tar/0.4.0.1.nix
index 7f6b70a52e60..04257960a64c 100644
--- a/pkgs/development/tools/haskell/tar/0.4.0.0.nix
+++ b/pkgs/development/tools/haskell/tar/0.4.0.1.nix
@@ -1,10 +1,10 @@
-{ cabal, filepath }:
+{ cabal, filepath, time }:
 
 cabal.mkDerivation (self: {
   pname = "tar";
-  version = "0.4.0.0";
-  sha256 = "04qijdfyiqb64q58g0bf46qfgaxqjl3kl68x6z31cv36p3hpplx3";
-  buildDepends = [ filepath ];
+  version = "0.4.0.1";
+  sha256 = "0vbsv7h3zgp30mlgsw156jkv1rqy5zbm98as9haf7x15hd6jf254";
+  buildDepends = [ filepath time ];
   meta = {
     description = "Reading, writing and manipulating \".tar\" archive files.";
     license = self.stdenv.lib.licenses.bsd3;
diff --git a/pkgs/development/tools/misc/gnum4/default.nix b/pkgs/development/tools/misc/gnum4/default.nix
index 1f026f12f523..e603c398b026 100644
--- a/pkgs/development/tools/misc/gnum4/default.nix
+++ b/pkgs/development/tools/misc/gnum4/default.nix
@@ -10,7 +10,8 @@ stdenv.mkDerivation {
 
   doCheck = !stdenv.isDarwin
     && !stdenv.isCygwin                    # XXX: `test-dup2' fails on Cygwin
-    && !stdenv.isSunOS;                    # XXX: `test-setlocale2.sh' fails
+    && !stdenv.isSunOS                     # XXX: `test-setlocale2.sh' fails
+    && !stdenv.isArm;                      # XXX: `diversions' fails on SheevaPlug
 
   # Upstream is aware of it; it may be in the next release.
   patches = [ ./s_isdir.patch ./readlink-EINVAL.patch ];
diff --git a/pkgs/development/tools/ocaml/camlp5/default.nix b/pkgs/development/tools/ocaml/camlp5/default.nix
index 315bca38f361..74b3368293c1 100644
--- a/pkgs/development/tools/ocaml/camlp5/default.nix
+++ b/pkgs/development/tools/ocaml/camlp5/default.nix
@@ -2,28 +2,18 @@
 
 let
   ocaml_version = (builtins.parseDrvName ocaml.name).version;
-  pname = "camlp5";
-  version = "6.02.3";
-  webpage = http://pauillac.inria.fr/~ddr/camlp5/;
   metafile = ./META;
 in
 
 stdenv.mkDerivation {
 
-  name = "${pname}${if transitional then "_transitional" else ""}-${version}";
+  name = "camlp5${if transitional then "_transitional" else ""}-6.06";
 
   src = fetchurl {
-    url = "${webpage}/distrib/src/${pname}-${version}.tgz";
-    sha256 = "1z9bwh267117br0vlhirv9yy2niqp2n25zfnl14wg6kgg9bqx7rj";
+    url = http://pauillac.inria.fr/~ddr/camlp5/distrib/src/camlp5-6.06.tgz;
+    sha256 = "763f89ee6cde4ca063a50708c3fe252d55ea9f8037e3ae9801690411ea6180c5";
   };
 
-  patches = fetchurl {
-    url = "${webpage}/distrib/src/patch-${version}-1";
-    sha256 = "159qpvr07mnn72yqwx24c6mw7hs6bl77capsii7apg9dcxar8w7v";
-  };
-
-  patchFlags = "-p 0";
-
   buildInputs = [ ocaml ];
 
   prefixKey = "-prefix ";
@@ -41,8 +31,8 @@ stdenv.mkDerivation {
       Camlp5 is a preprocessor and pretty-printer for OCaml programs.
       It also provides parsing and printing tools.
     '';
-    homepage = "${webpage}";
-    license = "BSD";
+    homepage = http://pauillac.inria.fr/~ddr/camlp5/;
+    license = stdenv.lib.licenses.bsd3;
     platforms = ocaml.meta.platforms;
     maintainers = [
       stdenv.lib.maintainers.z77z
diff --git a/pkgs/games/openttd/default.nix b/pkgs/games/openttd/default.nix
index 66c296b487ad..616adf002243 100644
--- a/pkgs/games/openttd/default.nix
+++ b/pkgs/games/openttd/default.nix
@@ -1,22 +1,42 @@
-{stdenv, fetchurl, SDL, libpng, zlib}:
+{stdenv, fetchurl, pkgconfig, SDL, libpng, zlib, xz, freetype, fontconfig}:
 
 stdenv.mkDerivation rec {
   name = "openttd-${version}";
-  version = "0.6.0";
+  version = "1.2.2";
 
   src = fetchurl {
-    url = "mirror://sf/openttd/${name}-source.tar.bz2";
-    md5 = "dcf63687c73ff56887049fedaf6c6019";
+    url = "http://binaries.openttd.org/releases/${version}/${name}-source.tar.xz";
+    sha256 = "158znfx389bhs9gd2hadnbc2a32z4ma1vz8704cmw9yh0fmhbcap";
   };
 
-  buildInputs = [SDL libpng];
+  buildInputs = [SDL libpng pkgconfig xz zlib freetype fontconfig];
   prefixKey = "--prefix-dir=";
-  configureFlags = "--with-zlib=${zlib}/lib/libz.a";
+
+  configureFlags = ''
+    --with-zlib=${zlib}/lib/libz.a 
+    --without-liblzo2
+  '';
+
   makeFlags = "INSTALL_PERSONAL_DIR=";
 
+  postInstall = ''
+    mv $out/games/ $out/bin
+  '';
+
   meta = {
     description = ''OpenTTD is an open source clone of the Microprose game "Transport Tycoon Deluxe".'';
+    longDescription = ''
+      OpenTTD is a transportation economics simulator. In single player mode,
+      players controll a transportation business, and use rail, road, sea, and air
+      transport to move goods and people around the simulated world. 
+
+      In multiplayer networked mode, players may:
+        - play competitively as different businesses
+        - play cooperatively controling the same business
+        - observe as spectators
+    '';
     homepage = http://www.openttd.org/;
     license = "GPLv2";
+    maintainers = with stdenv.lib.maintainers; [ jcumming ];
   };
 }
diff --git a/pkgs/games/rili/default.nix b/pkgs/games/rili/default.nix
new file mode 100644
index 000000000000..934213279fad
--- /dev/null
+++ b/pkgs/games/rili/default.nix
@@ -0,0 +1,31 @@
+{stdenv, fetchurl, SDL_mixer, SDL, autoconf, automake}:
+
+stdenv.mkDerivation {
+  name = "ri_li-2.0.1"; 
+  
+  src = fetchurl {
+    url = mirror://sourceforge/ri-li/Ri-li-2.0.1.tar.bz2;
+    sha256 = "f71ccc20c37c601358d963e087ac0d524de8c68e96df09c3aac1ae65edd38dbd";
+  };
+
+  patches = [ ./moderinze_cpp.patch ];
+
+  preConfigure = ''
+    export CPPFLAGS="-I${SDL}/include -I${SDL}/include/SDL -I${SDL_mixer}/include"
+    autoreconf -i
+  '';
+  
+  buildInputs = [SDL SDL_mixer autoconf automake];
+  
+  meta = {
+    homepage = http://ri-li.sourceforge.net;
+    license = "GPL2+";
+    description = "A children's train game";
+    longDescription = ''
+     Ri-li is an arcade game licensed under the GPL (General Public License).
+You drive a toy wood engine in many levels and you must collect all the coaches
+to win.
+    '';
+    maintainers = with stdenv.lib.maintainers; [ jcumming ];
+  };
+}
diff --git a/pkgs/games/rili/moderinze_cpp.patch b/pkgs/games/rili/moderinze_cpp.patch
new file mode 100644
index 000000000000..3d076afb39e3
--- /dev/null
+++ b/pkgs/games/rili/moderinze_cpp.patch
@@ -0,0 +1,391 @@
+diff -r -u Ri-li-2.0.1.orig/src/audio.cc Ri-li-2.0.1/src/audio.cc
+--- Ri-li-2.0.1.orig/src/audio.cc	2012-01-22 00:40:56.928609371 -0800
++++ Ri-li-2.0.1/src/audio.cc	2012-01-22 00:28:33.360636539 -0800
+@@ -22,8 +22,8 @@
+ //    51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+ 
+ #include <stdlib.h>
+-#include <iostream.h>
+-#include <string.h>
++#include <iostream>
++#include <string>
+ 
+ #include "audio.h"
+ #include "utils.h"
+@@ -57,7 +57,7 @@
+   char PathFile[512];
+ 
+   if(Mix_OpenAudio(22050,AUDIO_S16,1,1024)) {
+-    cerr <<"Enable to init Sound card ! "<<SDL_GetError()<<endl;
++    std::cerr <<"Enable to init Sound card ! "<<SDL_GetError()<<std::endl;
+     return false;
+   }
+   
+diff -r -u Ri-li-2.0.1.orig/src/ecran.cc Ri-li-2.0.1/src/ecran.cc
+--- Ri-li-2.0.1.orig/src/ecran.cc	2007-11-02 04:48:16.000000000 -0700
++++ Ri-li-2.0.1/src/ecran.cc	2012-01-22 00:13:54.422798653 -0800
+@@ -21,7 +21,7 @@
+ //    with this program; if not, write to the Free Software Foundation, Inc.,
+ //    51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+ 
+-#include <iostream.h>
++#include <iostream>
+ #include <stdio.h>
+ #include <stdlib.h>
+ #include <math.h>
+diff -r -u Ri-li-2.0.1.orig/src/editeur.cc Ri-li-2.0.1/src/editeur.cc
+--- Ri-li-2.0.1.orig/src/editeur.cc	2007-11-02 04:48:17.000000000 -0700
++++ Ri-li-2.0.1/src/editeur.cc	2012-01-22 00:28:59.632635579 -0800
+@@ -25,10 +25,10 @@
+ #include <windows.h>
+ #endif
+ 
+-#include <iostream.h>
++#include <iostream>
+ #include <stdio.h>
+ #include <stdlib.h>
+-#include <string.h>
++#include <string>
+ #include <math.h>
+ #include <SDL/SDL.h>
+ 
+@@ -374,7 +374,7 @@
+     
+     // Sauve le niveau
+     if(Niveau.Save()==false) {
+-      cerr <<"ERREUR Saving levels!"<<endl;
++      std::cerr <<"ERREUR Saving levels!"<<std::endl;
+       exit(-1);
+     }
+     
+diff -r -u Ri-li-2.0.1.orig/src/jeux.cc Ri-li-2.0.1/src/jeux.cc
+--- Ri-li-2.0.1.orig/src/jeux.cc	2007-11-02 04:48:17.000000000 -0700
++++ Ri-li-2.0.1/src/jeux.cc	2012-01-22 00:14:08.422798143 -0800
+@@ -25,10 +25,10 @@
+ #include <windows.h>
+ #endif
+ 
+-#include <iostream.h>
++#include <iostream>
+ #include <stdio.h>
+ #include <stdlib.h>
+-#include <string.h>
++#include <string>
+ #include <math.h>
+ #include <SDL/SDL.h>
+ 
+diff -r -u Ri-li-2.0.1.orig/src/loco.cc Ri-li-2.0.1/src/loco.cc
+--- Ri-li-2.0.1.orig/src/loco.cc	2007-11-02 04:48:18.000000000 -0700
++++ Ri-li-2.0.1/src/loco.cc	2012-01-22 00:14:17.878797797 -0800
+@@ -21,10 +21,10 @@
+ //    with this program; if not, write to the Free Software Foundation, Inc.,
+ //    51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+ 
+-#include <iostream.h>
++#include <iostream>
+ #include <stdio.h>
+ #include <stdlib.h>
+-#include <string.h>
++#include <string>
+ #include <math.h>
+ #include "preference.h"
+ #include "loco.h"
+diff -r -u Ri-li-2.0.1.orig/src/main.cc Ri-li-2.0.1/src/main.cc
+--- Ri-li-2.0.1.orig/src/main.cc	2007-11-02 04:48:19.000000000 -0700
++++ Ri-li-2.0.1/src/main.cc	2012-01-22 00:29:40.080634136 -0800
+@@ -23,8 +23,8 @@
+ 
+ #include <stdio.h>
+ #include <stdlib.h>
+-#include <iostream.h>
+-#include <string.h>
++#include <iostream>
++#include <string>
+ #include <SDL/SDL.h>
+ #include <SDL/SDL_mixer.h>
+ 
+@@ -115,7 +115,7 @@
+  
+   // Initilise SDL
+   if( SDL_Init(SDL_INIT_VIDEO|SDL_INIT_TIMER|SDL_INIT_AUDIO|SDL_INIT_NOPARACHUTE) < 0 ) {
+-    cerr <<"Impossible d'initialiser SDL:"<<SDL_GetError()<<endl;
++    std::cerr <<"Impossible d'initialiser SDL:"<<SDL_GetError()<<std::endl;
+     exit(-1);
+   }
+   // Ferme le programme correctement quant quit
+@@ -125,7 +125,7 @@
+   sdlVideoInfo=(SDL_VideoInfo*)SDL_GetVideoInfo();
+ 
+   if(sdlVideoInfo->vfmt->BitsPerPixel==8) {
+-    cerr <<"Impossible d'utiliser 8bits pour la vidéo !"<<endl;
++    std::cerr <<"Impossible d'utiliser 8bits pour la vidéo !"<<std::endl;
+     exit(-1);
+   }
+   
+@@ -145,7 +145,7 @@
+   sdlVideo=SDL_SetVideoMode(800,600,sdlVideoInfo->vfmt->BitsPerPixel,vOption);
+ 
+   if(sdlVideo==NULL) {
+-    cerr <<"Impossible de passer dans le mode vidéo 800x600 !"<<endl;
++    std::cerr <<"Impossible de passer dans le mode vidéo 800x600 !"<<std::endl;
+     exit(-1);
+   }
+   // Change le nom de la fenetre
+diff -r -u Ri-li-2.0.1.orig/src/menu.cc Ri-li-2.0.1/src/menu.cc
+--- Ri-li-2.0.1.orig/src/menu.cc	2007-11-02 04:48:19.000000000 -0700
++++ Ri-li-2.0.1/src/menu.cc	2012-01-22 00:30:04.752633198 -0800
+@@ -21,10 +21,10 @@
+ //    with this program; if not, write to the Free Software Foundation, Inc.,
+ //    51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+ 
+-#include <iostream.h>
++#include <iostream>
+ #include <stdio.h>
+ #include <stdlib.h>
+-#include <string.h>
++#include <string>
+ #include "preference.h"
+ #include "menu.h"
+ #include "sprite.h"
+@@ -92,7 +92,7 @@
+   // Teste la resolution video
+   sdlVideoInfo=(SDL_VideoInfo*)SDL_GetVideoInfo();
+   if(sdlVideoInfo->vfmt->BitsPerPixel==8) {
+-    cerr <<"Impossible d'utiliser 8bits pour la vidéo !"<<endl;
++    std::cerr <<"Impossible d'utiliser 8bits pour la vidéo !"<<std::endl;
+     exit(-1);
+   }
+   
+@@ -112,7 +112,7 @@
+   if(Pref.FullScreen) vOption|=SDL_FULLSCREEN;
+   sdlVideo=SDL_SetVideoMode(800,600,sdlVideoInfo->vfmt->BitsPerPixel,vOption);
+   if(sdlVideo==NULL) {
+-    cerr <<"Impossible de passer dans le mode vidéo 800x600 !"<<endl;
++    std::cerr <<"Impossible de passer dans le mode vidéo 800x600 !"<<std::endl;
+     exit(-1);
+   }
+   
+diff -r -u Ri-li-2.0.1.orig/src/mouse.cc Ri-li-2.0.1/src/mouse.cc
+--- Ri-li-2.0.1.orig/src/mouse.cc	2007-11-02 04:48:20.000000000 -0700
++++ Ri-li-2.0.1/src/mouse.cc	2012-01-22 00:14:36.438797120 -0800
+@@ -21,7 +21,7 @@
+ //    with this program; if not, write to the Free Software Foundation, Inc.,
+ //    51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+ 
+-#include <iostream.h>
++#include <iostream>
+ #include <stdio.h>
+ #include "mouse.h"
+ #include "preference.h"
+diff -r -u Ri-li-2.0.1.orig/src/sprite.cc Ri-li-2.0.1/src/sprite.cc
+--- Ri-li-2.0.1.orig/src/sprite.cc	2007-11-02 04:48:20.000000000 -0700
++++ Ri-li-2.0.1/src/sprite.cc	2012-01-22 00:30:43.640631779 -0800
+@@ -21,10 +21,10 @@
+ //    with this program; if not, write to the Free Software Foundation, Inc.,
+ //    51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+ 
+-#include <iostream.h>
++#include <iostream>
+ #include <stdio.h>
+ #include <stdlib.h>
+-#include <string.h>
++#include <string>
+ #include <math.h>
+ #include "sprite.h"
+ #include "preference.h"
+@@ -84,7 +84,7 @@
+   strcpy(PathFile,Langue[Pref.Langue]);
+   GetPath(PathFile);
+   if(FileExiste(PathFile)==false) {
+-    cerr <<"Impossible de trouver "<<Langue[Pref.Langue]<<endl;
++    std::cerr <<"Impossible de trouver "<<Langue[Pref.Langue]<<std::endl;
+     return false;
+   }
+   L=ChargeFichier(PathFile,Buf);
+@@ -128,7 +128,7 @@
+   // *** Charge le fichier des langues ***
+   // *************************************
+   if(FileExiste(PathFile)==false) {
+-    cerr <<"Impossible de trouver 'language.dat'"<<endl;
++    std::cerr <<"Impossible de trouver 'language.dat'"<<std::endl;
+     return false;
+   }
+   L=ChargeFichier(PathFile,Buf);
+@@ -163,7 +163,7 @@
+   strcpy(PathFile,"sprites.dat");
+   GetPath(PathFile);
+   if(FileExiste(PathFile)==false) {
+-    cerr <<"Impossible de trouver 'sprites.dat'"<<endl;
++    std::cerr <<"Impossible de trouver 'sprites.dat'"<<std::endl;
+     return false;
+   }
+   L=ChargeFichier(PathFile,Buf);
+@@ -352,7 +352,7 @@
+     Image[i]=SDL_CreateRGBSurface((Dim[i].bpp-3)*SDL_SRCALPHA,Dim[i].L,Dim[i].H,Dim[i].bpp*8,
+ 				  0xff,0xff00,0xff0000,0xff000000*(Dim[i].bpp-3));
+     if(Image[i]<=NULL) {
+-      cerr <<"Impossible de créer une Surface SDL!"<<endl;
++      std::cerr <<"Impossible de créer une Surface SDL!"<<std::endl;
+       return false;
+     }
+     
+@@ -486,7 +486,7 @@
+   Image[0]=SDL_CreateRGBSurface((Dim[0].bpp-3)*SDL_SRCALPHA,Dim[0].L,Dim[0].H,Dim[0].bpp*8,
+ 				0xff,0xff00,0xff0000,0xff000000*(Dim[0].bpp-3));
+   if(Image[0]<=NULL) {
+-    cerr <<"Impossible de créer une Surface SDL!"<<endl;
++    std::cerr <<"Impossible de créer une Surface SDL!"<<std::endl;
+     return false;
+   }
+   return true;
+diff -r -u Ri-li-2.0.1.orig/src/tableau.cc Ri-li-2.0.1/src/tableau.cc
+--- Ri-li-2.0.1.orig/src/tableau.cc	2007-11-02 04:48:21.000000000 -0700
++++ Ri-li-2.0.1/src/tableau.cc	2012-01-22 00:14:50.710796598 -0800
+@@ -21,7 +21,7 @@
+ //    with this program; if not, write to the Free Software Foundation, Inc.,
+ //    51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+ 
+-#include <iostream.h>
++#include <iostream>
+ #include <stdio.h>
+ #include <stdlib.h>
+ #include "preference.h"
+diff -r -u Ri-li-2.0.1.orig/src/utils.cc Ri-li-2.0.1/src/utils.cc
+--- Ri-li-2.0.1.orig/src/utils.cc	2007-11-02 04:48:22.000000000 -0700
++++ Ri-li-2.0.1/src/utils.cc	2012-01-22 00:31:30.944630051 -0800
+@@ -21,10 +21,10 @@
+ //    with this program; if not, write to the Free Software Foundation, Inc.,
+ //    51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+ 
+-#include <iostream.h>
++#include <iostream>
+ #include <stdio.h>
+ #include <stdlib.h>
+-#include <string.h>
++#include <string>
+ 
+ #ifdef WINDOWS
+ #include <windows.h>
+@@ -77,7 +77,7 @@
+ 
+   file=fopen(Path,"r");
+   if(!file) {
+-    cerr <<"ERREUR: Impossible d'ouvrir '"<<Path<<"'"<<endl;
++    std::cerr <<"ERREUR: Impossible d'ouvrir '"<<Path<<"'"<<std::endl;
+     perror("fopen");
+     return -1;
+   }
+@@ -93,7 +93,7 @@
+ 
+   Buf=new unsigned char [L+1];
+   if(Buf==NULL) {
+-    cerr <<"ERREUR: Memoire insuffisante!"<<endl;
++    std::cerr <<"ERREUR: Memoire insuffisante!"<<std::endl;
+     fclose(file);
+     return -1;
+   }
+@@ -104,7 +104,7 @@
+   while(Compt>1024) {
+     AfficheChargeur();
+     if( fread(Po,1,1024,file) != 1024 ) {
+-      cerr <<"ERREUR de lecture du fichier '"<<Path<<"'"<<endl;
++      std::cerr <<"ERREUR de lecture du fichier '"<<Path<<"'"<<std::endl;
+       perror("fread");
+       fclose(file);
+       delete [] Buf;
+@@ -131,13 +131,13 @@
+ 
+   file=_lopen(Path,OF_READ);
+   if(file==-1) {
+-    cerr <<"Impossible d'ouvrir "<<Path<<endl;
++    std::cerr <<"Impossible d'ouvrir "<<Path<<std::endl;
+     exit(-1);
+   }
+   
+   long L=(long)_llseek(file,0,SEEK_END);
+   if(L==-1) {
+-    cerr <<"Impossible de trouver la longueur du fichier"<<endl;
++    std::cerr <<"Impossible de trouver la longueur du fichier"<<std::endl;
+     perror("lseek");
+     _lclose(file);
+     return -1;
+@@ -146,7 +146,7 @@
+   
+   Buf=new unsigned char [L+1];
+   if(Buf==NULL) {
+-    cerr <<"ERREUR: Memoire insuffisante!"<<endl;
++    std::cerr <<"ERREUR: Memoire insuffisante!"<<std::endl;
+     _lclose(file);
+     return -1;
+   }
+@@ -169,14 +169,14 @@
+   
+   file=fopen(Path,"w");
+   if(!file) {
+-    cerr <<"ERREUR: Impossible d'ouvrir '"<<Path<<"'"<<endl;
++    std::cerr <<"ERREUR: Impossible d'ouvrir '"<<Path<<"'"<<std::endl;
+     perror("fopen");
+     return false;
+   }
+   
+   while(L>512) {
+     if( fwrite(Buf,1,512,file) != 512 ) {
+-      cerr <<"ERREUR d'ecriture du fichier '"<<Path<<"'"<<endl;
++      std::cerr <<"ERREUR d'ecriture du fichier '"<<Path<<"'"<<std::endl;
+       perror("fwrite");
+       fclose(file);
+       return false;
+@@ -187,7 +187,7 @@
+ 
+   if(L>0) {
+     if( fwrite(Buf,1,(size_t)L,file) != (size_t)L ) {
+-      cerr <<"ERREUR d'ecriture du fichier '"<<Path<<"'"<<endl;
++      std::cerr <<"ERREUR d'ecriture du fichier '"<<Path<<"'"<<std::endl;
+       perror("fwrite");
+       fclose(file);
+       return false;
+@@ -208,7 +208,7 @@
+ 
+   file=_lcreat(Path,0);
+   if(!file) {
+-    cerr <<"ERREUR: Impossible de créer le fichier '"<<Path<<"'"<<endl;
++    std::cerr <<"ERREUR: Impossible de créer le fichier '"<<Path<<"'"<<std::endl;
+     return false;
+   }
+   
+@@ -216,7 +216,7 @@
+   _lclose(file);
+ 
+   if(Lec!=L) {
+-    cerr <<"Problème d'ecriture du fichier '"<<Path<<"' ecris="<<Lec<<" au lieux de ="<<L<<endl;
++    std::cerr <<"Problème d'ecriture du fichier '"<<Path<<"' ecris="<<Lec<<" au lieux de ="<<L<<std::endl;
+     return false;
+   }
+ 
+@@ -250,7 +250,7 @@
+   sprintf(Path,"/usr/share/games/Ri-li/%s",Provi);
+   if(FileExiste(Path)) return;
+   
+-  cerr <<"Impossible de trouver le fichier '"<<Provi<<endl;
++  std::cerr <<"Impossible de trouver le fichier '"<<Provi<<std::endl;
+   exit(-1);
+ }
+ #endif
+@@ -266,7 +266,7 @@
+   sprintf(Path,"PROGDIR:%s",Provi);
+   if(FileExiste(Path)) return;
+   
+-  cerr <<"Impossible de trouver le fichier '"<<Path<<endl;
++  std::cerr <<"Impossible de trouver le fichier '"<<Path<<std::endl;
+   exit(-1);
+ }
+ #endif
+@@ -282,7 +282,7 @@
+   sprintf(Path,"Ri-li.app/Contents/Resources/%s",Provi);
+   if(FileExiste(Path)) return;
+   
+-  cerr <<"Impossible de trouver le fichier '"<<Path<<endl;
++  std::cerr <<"Impossible de trouver le fichier '"<<Path<<std::endl;
+   exit(-1);
+ }
+ #endif
diff --git a/pkgs/games/sgt-puzzles/default.nix b/pkgs/games/sgt-puzzles/default.nix
index 83d012d35f12..b8043525719a 100644
--- a/pkgs/games/sgt-puzzles/default.nix
+++ b/pkgs/games/sgt-puzzles/default.nix
@@ -10,8 +10,8 @@ in
 rec {
   src = fetchsvn {
    url = svn://svn.tartarus.org/sgt/puzzles;
-   rev = "9437";
-   sha256 = "4820ce1e54e017a64dd9cb8991c020d0628329605a37af2a99b78bffbde43e85";
+   rev = "9689";
+   sha256 = "33285a971fee67324f8867de22582931135d8b8ee4cc2c41c46c3ba81eb99cb7";
   } + "/";
 
   inherit buildInputs;
@@ -27,6 +27,7 @@ rec {
 
   setVars = a.noDepEntry ''
     export NIX_LDFLAGS="$NIX_LDFLAGS -lX11"
+    export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -Wno-error=variadic-macros"
   '';
 
   /* doConfigure should be removed if not needed */
diff --git a/pkgs/games/uqm/default.nix b/pkgs/games/uqm/default.nix
new file mode 100644
index 000000000000..6e67ce660f14
--- /dev/null
+++ b/pkgs/games/uqm/default.nix
@@ -0,0 +1,78 @@
+{stdenv, fetchurl 
+, pkgconfig, mesa
+, SDL, SDL_image, libpng, zlib, libvorbis, libogg, libmikmod, unzip
+}:
+
+stdenv.mkDerivation rec {
+  name = "uqm-${version}";
+  version = "0.7.0";
+
+  src = fetchurl {
+    url = "mirror://sf/sc2/uqm-${version}-source.tgz";
+    sha256 = "a3695c5f7f0be7ec9c0f80ec569907b382023a1fee6e635532bd53b7b53bb221";
+  };
+
+  content = fetchurl {
+    url = "mirror://sf/sc2/uqm-${version}-content.uqm";
+    sha256 = "b8f6db8ba29f0628fb1d5c233830896b19f441aee3744bda671ea264b44da3bf";
+  };
+
+  voice = fetchurl {
+    url = "mirror://sf/sc2/uqm-${version}-voice.uqm";
+    sha256 = "bcccf801b4ba37594ff6217b292744ea586ee2d447e927804842ccae8b73c979";
+  };
+
+  music = fetchurl {
+    url = "mirror://sf/sc2/uqm-${version}-3domusic.uqm";
+    sha256 = "c57085e64dad4bddf8a679a9aa2adf63f2156d5f6cbabe63af80519033dbcb82";
+  };
+
+
+ /* uses pthread_cancel(), which requires libgcc_s.so.1 to be
+    loadable at run-time. Adding the flag below ensures that the
+    library can be found. Obviously, though, this is a hack. */
+  NIX_LDFLAGS="-lgcc_s";
+
+  buildInputs = [SDL SDL_image libpng libvorbis libogg libmikmod unzip pkgconfig mesa];
+
+  postUnpack = ''
+    mkdir -p uqm-${version}/content/packages
+    mkdir -p uqm-${version}/content/addons
+    cp $content uqm-${version}/content/packages/uqm-0.7.0-content.uqm
+    cp $music uqm-${version}/content/addons/uqm-0.7.0-3domusic.uqm
+    cp $voice uqm-${version}/content/addons/uqm-0.7.0-voice.uqm
+    '';
+
+  /* uqm has a 'unique' build system with a root script incidentally called
+ * 'build.sh'. */
+
+  configurePhase = ''
+    echo "INPUT_install_prefix_VALUE='$out'" >> config.state
+    echo "INPUT_install_bindir_VALUE='$out/bin'" >> config.state
+    echo "INPUT_install_libdir_VALUE='$out/lib'" >> config.state
+    echo "INPUT_install_sharedir_VALUE='$out/share'" >> config.state
+    PREFIX=$out ./build.sh uqm config
+    ''; 
+
+  buildPhase = ''
+    ./build.sh uqm
+    '';
+
+  installPhase = ''
+    ./build.sh uqm install
+    sed -i $out/bin/uqm -e "s%/usr/local/games/%$out%g"
+    '';
+
+  meta = {
+    description = "Remake of Star Control II";
+    longDescription = ''
+    The goals for the The Ur-Quan Masters project are:
+      - to bring Star Control II to modern platforms, thereby making a lot of people happy
+      - to make game translations easy, thereby making even more people happy
+      - to adapt the code so that people can more easily make their own spin-offs, thereby making zillions more people happy!
+    '';
+    homepage = http://sc2.sourceforge.net/;
+    license = "GPLv2";
+    maintainers = with stdenv.lib.maintainers; [ jcumming ];
+  };
+}
diff --git a/pkgs/games/widelands/boost_and_cmake_die_die_die.patch b/pkgs/games/widelands/boost_and_cmake_die_die_die.patch
new file mode 100644
index 000000000000..f008be35e378
--- /dev/null
+++ b/pkgs/games/widelands/boost_and_cmake_die_die_die.patch
@@ -0,0 +1,11 @@
+--- widelands-build17-src.old/CMakeLists.txt	2012-04-23 02:46:49.000000000 -0700
++++ widelands-build17-src/CMakeLists.txt	2012-07-14 19:49:14.000000000 -0700
+@@ -140,8 +140,6 @@
+ else (WL_UNIT_TESTS)
+   message(STATUS "Disabled Unit Tests")
+   set (Boost_FIND_COMPONENTS signals)
+-  set (Boost_USE_STATIC_LIBS   ON)
+-  set (Boost_USE_MULTITHREADED ON)
+   set (Boost_DETAILED_FAILURE_MSG ON)
+   find_package(Boost 1.35.0 COMPONENTS signals REQUIRED)
+ endif (WL_UNIT_TESTS)
diff --git a/pkgs/games/widelands/default.nix b/pkgs/games/widelands/default.nix
index 74d1f87e0be8..45538acdca3e 100644
--- a/pkgs/games/widelands/default.nix
+++ b/pkgs/games/widelands/default.nix
@@ -13,11 +13,11 @@ let
     (builtins.attrNames (builtins.removeAttrs x helperArgNames));
   sourceInfo = rec {
     baseName="widelands";
-    version="build16";
+    version="build17";
     name="${baseName}-${version}";
     project="${baseName}";
-    url="http://launchpad.net/${project}/${version}/${version}/+download/${name}-src.tar.bz2";
-    hash="0pb2d73c6hynhp1x54rcfbibrrri7lyxjybd1hicn503qcakrnyq";
+    url="https://launchpadlibrarian.net/102893896/widelands-build17-src.tar.bz2";
+    hash="be48b3b8f342a537b39a3aec2f7702250a6a47e427188ba3bece67d7d90f3cc5";
   };
 in
 rec {
@@ -30,7 +30,9 @@ rec {
   inherit buildInputs;
 
   /* doConfigure should be removed if not needed */
-  phaseNames = ["killBuildDir" "doCmake" "doMakeInstall" "createScript"];
+  phaseNames = ["killBuildDir" "doPatch"  "doCmake" "doMakeInstall" "createScript"];
+
+  patches = [ ./boost_and_cmake_die_die_die.patch ]; 
       
   killBuildDir = a.fullDepEntry ''
     rm -r build
@@ -38,6 +40,7 @@ rec {
 
   cmakeFlags = [
     "-DLUA_LIBRARIES=-llua"
+    "-DWL_PORTABLE=true"
   ];
 
   createScript = a.fullDepEntry ''
@@ -50,9 +53,16 @@ rec {
 
   meta = {
     description = "Widelands RTS with multiple-goods economy";
+    longDescription = ''
+      Widelands is a real time strategy game based on "The Settlers" and "The
+      Settlers II". It has a single player campaign mode, as well as a networked
+      multiplayer mode. 
+    '';
+
     maintainers = with a.lib.maintainers;
     [
       raskin
+      jcumming
     ];
     platforms = with a.lib.platforms;
       linux;
diff --git a/pkgs/lib/licenses.nix b/pkgs/lib/licenses.nix
index 87f9298706ed..e1743bddf697 100644
--- a/pkgs/lib/licenses.nix
+++ b/pkgs/lib/licenses.nix
@@ -34,6 +34,12 @@
     url = https://fedoraproject.org/wiki/Licensing/BSD;
   };
 
+  cddl = {
+    shortName = "CDDL";
+    fullName = "Common Development Distribution License ";
+    url = http://www.opensolaris.org/os/licensing/cddllicense.txt;
+  };
+
   cpl10 = {
     shortName = "CPL 1.0";
     fullName = "Common Public License version 1.0";
diff --git a/pkgs/lib/maintainers.nix b/pkgs/lib/maintainers.nix
index 127295a2feb5..18671255fce1 100644
--- a/pkgs/lib/maintainers.nix
+++ b/pkgs/lib/maintainers.nix
@@ -18,6 +18,7 @@
   garbas = "Rok Garbas <rok@garbas.si>";
   goibhniu = "Cillian de Róiste <cillian.deroiste@gmail.com>";
   guibert = "David Guibert <david.guibert@gmail.com>";
+  jcumming = "Jack Cummings <jack@mudshark.org>";
   kkallio = "Karn Kallio <tierpluspluslists@gmail.com>";
   ludo = "Ludovic Courtès <ludo@gnu.org>";
   marcweber = "Marc Weber <marco-oweber@gmx.de>";
diff --git a/pkgs/lib/strings.nix b/pkgs/lib/strings.nix
index 4bd7a5bebde3..19d1738182f4 100644
--- a/pkgs/lib/strings.nix
+++ b/pkgs/lib/strings.nix
@@ -155,6 +155,12 @@ rec {
   # Return true iff string v1 denotes a version older than v2.
   versionOlder = v1: v2: builtins.compareVersions v2 v1 == 1;
 
+
+  # Get the version of the specified derivation, as specified in its
+  # ‘name’ attribute.
+  getVersion = drv: (builtins.parseDrvName drv.name).version;
+
+
   # Extract name with version from URL. Ask for separator which is 
   # supposed to start extension
   nameFromURL = url: sep: let
diff --git a/pkgs/misc/cups/default.nix b/pkgs/misc/cups/default.nix
index bf4e4d1d7e51..f19298e7ccdd 100644
--- a/pkgs/misc/cups/default.nix
+++ b/pkgs/misc/cups/default.nix
@@ -1,9 +1,8 @@
 { stdenv, fetchurl, pkgconfig, zlib, libjpeg, libpng, libtiff, pam, openssl
-, dbus, libusb, acl }:
+, dbus, libusb1, acl }:
+
+let version = "1.5.4"; in
 
-let
-  version = "1.5.2";
-in
 stdenv.mkDerivation {
   name = "cups-${version}";
 
@@ -11,10 +10,10 @@ stdenv.mkDerivation {
 
   src = fetchurl {
     url = "http://ftp.easysw.com/pub/cups/${version}/cups-${version}-source.tar.bz2";
-    sha256 = "1yw7l5rq93zg91akqf68b871frrs4q0krc9cx43ly7v3ih8all5i";
+    md5 = "de3006e5cf1ee78a9c6145ce62c4e982";
   };
 
-  buildInputs = [ pkgconfig zlib libjpeg libpng libtiff libusb ]
+  buildInputs = [ pkgconfig zlib libjpeg libpng libtiff libusb1 ]
     ++ stdenv.lib.optionals stdenv.isLinux [ pam dbus acl ] ;
 
   propagatedBuildInputs = [ openssl ];
diff --git a/pkgs/misc/drivers/foomatic-filters/default.nix b/pkgs/misc/drivers/foomatic-filters/default.nix
index 867f4f440d54..ff03770014de 100644
--- a/pkgs/misc/drivers/foomatic-filters/default.nix
+++ b/pkgs/misc/drivers/foomatic-filters/default.nix
@@ -1,14 +1,14 @@
-{ stdenv, fetchurl, perl, cups, coreutils, gnused }:
+{ stdenv, fetchurl, pkgconfig, perl, cups, dbus }:
 
 stdenv.mkDerivation rec {
-  name = "foomatic-filters-4.0.6";
+  name = "foomatic-filters-4.0.12";
 
   src = fetchurl {
     url = "http://www.openprinting.org/download/foomatic/${name}.tar.gz";
-    sha256 = "0wa9hlq7s99sh50kl6bj8j0vxrz7pcbwdnqs1yfjjhqshfh7hsav";
+    sha256 = "17w26r15094j4fqifa7f7i7jad4gsy9zdlq69kffrykcw31qx3q8";
   };
 
-  buildInputs = [ perl cups ];
+  buildInputs = [ pkgconfig perl cups dbus ];
 
   preConfigure =
     ''
diff --git a/pkgs/misc/emulators/wine/default.nix b/pkgs/misc/emulators/wine/default.nix
index b35660daf5e2..a59bce94ab51 100644
--- a/pkgs/misc/emulators/wine/default.nix
+++ b/pkgs/misc/emulators/wine/default.nix
@@ -7,11 +7,11 @@ assert stdenv.isLinux;
 assert stdenv.gcc.gcc != null;
 
 stdenv.mkDerivation rec {
-  name = "wine-1.5.10";
+  name = "wine-1.5.15";
 
   src = fetchurl {
     url = "mirror://sourceforge/wine/${name}.tar.bz2";
-    sha256 = "04wydwc8q49bw8brlklx2nbgr453lx7bbfass5zn88xbz997lppk";
+    sha256 = "0m4lnqq4aniczp6m67m2n2ijz9h8z83ka3y30kyxkidv0j16jhi6";
   };
 
   gecko = fetchurl {
diff --git a/pkgs/misc/jackaudio/default.nix b/pkgs/misc/jackaudio/default.nix
index 7447421fc949..77d3c2f35ab9 100644
--- a/pkgs/misc/jackaudio/default.nix
+++ b/pkgs/misc/jackaudio/default.nix
@@ -9,7 +9,10 @@ stdenv.mkDerivation rec {
   version = "1.9.8";
 
   src = fetchurl {
-    url = "http://www.grame.fr/~letz/jack-1.9.8.tgz";
+    urls = [
+      "http://pkgs.fedoraproject.org/lookaside/pkgs/jack-audio-connection-kit/jack-1.9.8.tgz/1dd2ff054cab79dfc11d134756f27165/jack-1.9.8.tgz"
+      "http://www.grame.fr/~letz/jack-1.9.8.tgz"
+    ];
     sha256 = "0788092zxrivcfnfg15brpjkf14x8ma8cwjz4k0b9xdxajn2wwac";
   };
 
@@ -18,6 +21,8 @@ stdenv.mkDerivation rec {
       pkgconfig python pythonDBus
     ] ++ (stdenv.lib.optional firewireSupport ffado);
 
+  patches = ./ffado_setbuffsize-jack2.patch;
+
   configurePhase = ''
     cd jack-1.9.8
     python waf configure --prefix=$out --dbus --alsa ${if firewireSupport then "--firewire" else ""}
diff --git a/pkgs/misc/jackaudio/ffado_setbuffsize-jack2.patch b/pkgs/misc/jackaudio/ffado_setbuffsize-jack2.patch
new file mode 100644
index 000000000000..7771639280d8
--- /dev/null
+++ b/pkgs/misc/jackaudio/ffado_setbuffsize-jack2.patch
@@ -0,0 +1,140 @@
+https://projects.archlinux.org/svntogit/community.git/tree/trunk?h=packages/jack2
+
+From 96e0251234a29a1360c05d5d7dc98b83436b8183 Mon Sep 17 00:00:00 2001
+From: Adrian Knoth <adi@drcomp.erfurt.thur.de>
+Date: Sat, 17 Mar 2012 22:36:30 +0100
+Subject: [PATCH] [firewire] Allow FFADO backend to change the buffer size
+
+This is a port of Jonathan Woithe's patch from jackd1.
+With sufficiently recent versions of FFADO, it allows to change
+the buffersize at runtime.
+---
+ linux/firewire/JackFFADODriver.cpp |   65 ++++++++++++++++++++++++++++++++----
+ linux/firewire/JackFFADODriver.h   |    6 ++++
+ 2 files changed, 65 insertions(+), 6 deletions(-)
+
+diff --git a/jack-1.9.8/linux/firewire/JackFFADODriver.cpp b/jack-1.9.8/linux/firewire/JackFFADODriver.cpp
+index b33e1cd..085b78a 100644
+--- a/jack-1.9.8/linux/firewire/JackFFADODriver.cpp
++++ b/jack-1.9.8/linux/firewire/JackFFADODriver.cpp
+@@ -3,6 +3,7 @@
+ Copyright (C) 2004 Grame
+ Copyright (C) 2007 Pieter Palmers
+ Copyright (C) 2009 Devin Anderson
++Copyright (C) 2012 Jonathan Woithe, Adrian Knoth
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+@@ -48,7 +49,10 @@
+ namespace Jack
+ {
+
++// Basic functionality requires API version 8.  If version 9 or later
++// is present the buffers can be resized at runtime.
+ #define FIREWIRE_REQUIRED_FFADO_API_VERSION 8
++#define FIREWIRE_REQUIRED_FFADO_API_VERSION_FOR_SETBUFSIZE 9
+
+ #define jack_get_microseconds GetMicroSeconds
+
+@@ -281,19 +285,68 @@
+ int
+ JackFFADODriver::SetBufferSize (jack_nframes_t nframes)
+ {
+-    printError("Buffer size change requested but not supported!!!");
++    ffado_driver_t* driver = (ffado_driver_t*)fDriver;
++    signed int chn;
++
++    // The speed of this function isn't critical; we can afford the
++    // time to check the FFADO API version.
++    if (ffado_get_api_version() < FIREWIRE_REQUIRED_FFADO_API_VERSION_FOR_SETBUFSIZE ||
++		    ffado_streaming_set_period_size == NULL) {
++	    printError("unsupported on current version of FFADO; please upgrade FFADO");
++	    return -1;
++    }
+
+-    /*
+     driver->period_size = nframes;
+     driver->period_usecs =
+             (jack_time_t) floor ((((float) nframes) / driver->sample_rate)
+                                  * 1000000.0f);
+-    */
++
++
++    // Reallocate the null and scratch buffers.
++    driver->nullbuffer = (ffado_sample_t*) calloc(driver->period_size, sizeof(ffado_sample_t));
++    if(driver->nullbuffer == NULL) {
++	    printError("could not allocate memory for null buffer");
++	    return -1;
++    }
++    driver->scratchbuffer = (ffado_sample_t*) calloc(driver->period_size, sizeof(ffado_sample_t));
++    if(driver->scratchbuffer == NULL) {
++	    printError("could not allocate memory for scratch buffer");
++	    return -1;
++    }
++
++    // MIDI buffers need reallocating
++    for (chn = 0; chn < driver->capture_nchannels; chn++) {
++	    if(driver->capture_channels[chn].stream_type == ffado_stream_type_midi) {
++		    // setup the midi buffer
++		    if (driver->capture_channels[chn].midi_buffer != NULL)
++			    free(driver->capture_channels[chn].midi_buffer);
++		    driver->capture_channels[chn].midi_buffer = (ffado_sample_t*) calloc(driver->period_size, sizeof(uint32_t));
++	    }
++    }
++    for (chn = 0; chn < driver->playback_nchannels; chn++) {
++	    if(driver->playback_channels[chn].stream_type == ffado_stream_type_midi) {
++		    if (driver->playback_channels[chn].midi_buffer != NULL)
++			    free(driver->playback_channels[chn].midi_buffer);
++		    driver->playback_channels[chn].midi_buffer = (ffado_sample_t*) calloc(driver->period_size, sizeof(uint32_t));
++	    }
++    }
++
++    // Notify FFADO of the period size change
++    if (ffado_streaming_set_period_size(driver->dev, nframes) != 0) {
++	    printError("could not alter FFADO device period size");
++	    return -1;
++    }
++
++    // This is needed to give the shadow variables a chance to
++    // properly update to the changes.
++    sleep(1);
+
+     /* tell the engine to change its buffer size */
+-    //driver->engine->set_buffer_size (driver->engine, nframes);
++    JackAudioDriver::SetBufferSize(nframes);  // Generic change, never fails
+
+-    return -1; // unsupported
++    UpdateLatencies();
++
++    return 0;
+ }
+
+ typedef void (*JackDriverFinishFunction) (jack_driver_t *);
+@@ -306,7 +359,7 @@
+
+     assert(params);
+
+-    if (ffado_get_api_version() != FIREWIRE_REQUIRED_FFADO_API_VERSION) {
++    if (ffado_get_api_version() < FIREWIRE_REQUIRED_FFADO_API_VERSION) {
+         printError("Incompatible libffado version! (%s)", ffado_get_version());
+         return NULL;
+     }
+diff --git a/jack-1.9.8/linux/firewire/JackFFADODriver.h b/jack-1.9.8/linux/firewire/JackFFADODriver.h
+index cb2a45d..790f4dd 100644
+--- a/jack-1.9.8/linux/firewire/JackFFADODriver.h
++++ b/jack-1.9.8/linux/firewire/JackFFADODriver.h
+@@ -82,6 +82,12 @@ class JackFFADODriver : public JackAudioDriver
+         int Read();
+         int Write();
+
++        // BufferSize can be changed
++        bool IsFixedBufferSize()
++        {
++            return false;
++        }
++
+         int SetBufferSize(jack_nframes_t nframes);
+ };
+
+--
+1.7.10
diff --git a/pkgs/misc/sane-backends/default.nix b/pkgs/misc/sane-backends/default.nix
index 31372aa84186..ac6fed5deb46 100644
--- a/pkgs/misc/sane-backends/default.nix
+++ b/pkgs/misc/sane-backends/default.nix
@@ -1,21 +1,27 @@
-{ stdenv, fetchurl, hotplugSupport ? true, libusb ? null
+{ stdenv, fetchurl, hotplugSupport ? true, libusb ? null, libv4l ? null
+, pkgconfig ? null
 , gt68xxFirmware ? null }:
 let
   firmware = gt68xxFirmware {inherit fetchurl;};
 in
 assert hotplugSupport -> (stdenv.system == "i686-linux" || stdenv.system == "x86_64-linux");
 
-stdenv.mkDerivation {
-  name = "sane-backends-1.0.22";
+stdenv.mkDerivation rec {
+  version = "1.0.23";
+  name = "sane-backends-${version}";
   
   src = fetchurl {
-    url = http://alioth.debian.org/frs/download.php/3503/sane-backends-1.0.22.tar.gz;
-    sha256 = "0m0cz4ljw9asqvpryl6gx1ndwf7ll2qinlvql9whnzs901la314z";
+    url = "https://launchpad.net/ubuntu/+archive/primary/+files/sane-backends_${version}.orig.tar.gz";
+    sha256 = "4d4f5b2881615af7fc0ed75fdde7dc623a749e80e40f3f792fe4010163cbb029";
   };
   
   udevSupport = hotplugSupport;
 
-  buildInputs = if libusb != null then [libusb] else [];
+  buildInputs = []
+    ++ stdenv.lib.optional (libusb != null) libusb
+    ++ stdenv.lib.optional (libv4l != null) libv4l
+    ++ stdenv.lib.optional (pkgconfig != null) pkgconfig
+    ;
 
   postInstall = ''
     if test "$udevSupport" = "1"; then
diff --git a/pkgs/misc/screensavers/xscreensaver/default.nix b/pkgs/misc/screensavers/xscreensaver/default.nix
index cf4f81ea4072..e3932744286c 100644
--- a/pkgs/misc/screensavers/xscreensaver/default.nix
+++ b/pkgs/misc/screensavers/xscreensaver/default.nix
@@ -4,12 +4,12 @@
 }:
 
 stdenv.mkDerivation rec {
-  version = "5.18";
+  version = "5.19";
   name = "xscreensaver-${version}";
 
   src = fetchurl {
     url = "http://www.jwz.org/xscreensaver/${name}.tar.gz";
-    sha256 = "3d70edb8f46511f5427f21b4ba4d8323f336888f60268d16731f5231c6883db9";
+    sha256 = "fd62ea0f996abe1bea3770dd7141681454521b49302f9bced8af9c2ee428c0e0";
   };
 
   buildInputs =
@@ -22,7 +22,7 @@ stdenv.mkDerivation rec {
     ''
       # Fix build error in version 5.18. Remove this patch when updating
       # to a later version.
-      sed -i -e '/AF_LINK/d' hacks/glx/sonar-icmp.c
+      #sed -i -e '/AF_LINK/d' hacks/glx/sonar-icmp.c
       # Fix path to GTK.
       sed -e 's%@GTK_DATADIR@%@datadir@% ; s%@PO_DATADIR@%@datadir@%' \
 	  -i driver/Makefile.in po/Makefile.in.in
diff --git a/pkgs/os-specific/linux/alsa-lib/default.nix b/pkgs/os-specific/linux/alsa-lib/default.nix
index 36d9fa2ba9ee..3be6d0c3c333 100644
--- a/pkgs/os-specific/linux/alsa-lib/default.nix
+++ b/pkgs/os-specific/linux/alsa-lib/default.nix
@@ -1,11 +1,14 @@
 {stdenv, fetchurl}:
 
 stdenv.mkDerivation rec {
-  name = "alsa-lib-1.0.25";
+  name = "alsa-lib-1.0.26";
   
   src = fetchurl {
-    url = "ftp://ftp.alsa-project.org/pub/lib/${name}.tar.bz2";
-    sha256 = "1rl6wa06d1jiqnrshyqh5qb1lwg6dh8m1ilyaink21j1y1f806js";
+    urls = [
+     "ftp://ftp.alsa-project.org/pub/lib/${name}.tar.bz2"
+     "http://alsa.cybermirror.org/lib/${name}.tar.bz2"
+    ];
+    sha256 = "0zbfkwqn7ixa71lsna9llq6i2gic540h8r8r0rjdphrwc1hq37wc";
   };
   
   configureFlags = "--disable-xmlto";
diff --git a/pkgs/os-specific/linux/alsa-utils/default.nix b/pkgs/os-specific/linux/alsa-utils/default.nix
index 7e4a97a1ab1a..ebaef323491e 100644
--- a/pkgs/os-specific/linux/alsa-utils/default.nix
+++ b/pkgs/os-specific/linux/alsa-utils/default.nix
@@ -16,6 +16,12 @@ stdenv.mkDerivation rec {
 
   installFlags = "ASOUND_STATE_DIR=$(TMPDIR)/dummy";
 
+  preConfigure =
+    ''
+      # Ensure that ‘90-alsa-restore.rules.in’ gets rebuilt.
+      rm alsactl/90-alsa-restore.rules
+    '';
+
   meta = {
     description = "ALSA, the Advanced Linux Sound Architecture utils";
 
diff --git a/pkgs/os-specific/linux/consoletools/default.nix b/pkgs/os-specific/linux/consoletools/default.nix
new file mode 100644
index 000000000000..537cc386402b
--- /dev/null
+++ b/pkgs/os-specific/linux/consoletools/default.nix
@@ -0,0 +1,33 @@
+{ stdenv, fetchgit, SDL }:
+
+stdenv.mkDerivation rec {
+  name = "linuxconsoletools-${version}";
+  version = "1.4.3";
+
+  src = fetchgit {
+    url = "git://linuxconsole.git.sourceforge.net/gitroot/linuxconsole/linuxconsole";
+    rev = "dac2cae0e5795ddc27b76a92767dd9e07a10621e";
+    sha256 = "350b008e614923dbd548fcaaf2842b39433acdcf595e2ce8aaf1599f076d331d";
+  };
+
+  buildInputs = [ SDL ];
+  makeFlags = [ "PREFIX=$(out)" ];
+
+  meta = {
+    homepage = "https://sourceforge.net/projects/linuxconsole/";
+    description = "A set of tools for joysticks and serial peripherals";
+    license = stdenv.lib.licenses.gpl2Plus;
+
+    longDescription = ''
+      The included tools are:
+
+      ffcfstress(1)  - force-feedback stress test
+      ffmvforce(1)   - force-feedback orientation test
+      ffset(1)       - force-feedback configuration tool
+      fftest(1)      - general force-feedback test
+      jstest(1)      - joystick test
+      jscal(1)       - joystick calibration tool
+      inputattach(1) - connects legacy serial devices to the input layer
+    '';
+  };
+}
diff --git a/pkgs/os-specific/linux/ffado/default.nix b/pkgs/os-specific/linux/ffado/default.nix
index a78599c6a20f..834f98960dfb 100644
--- a/pkgs/os-specific/linux/ffado/default.nix
+++ b/pkgs/os-specific/linux/ffado/default.nix
@@ -1,13 +1,14 @@
-{ stdenv, fetchsvn, dbus, dbus_cplusplus, expat, glibmm, libconfig
+{ stdenv, fetchurl, dbus, dbus_cplusplus, expat, glibmm, libconfig
 , libavc1394, libiec61883, libraw1394, libxmlxx, makeWrapper, pkgconfig
 , pyqt4, python, pythonDBus, qt4, scons }:
 
 stdenv.mkDerivation rec {
-  name = "libffado-svn-1995";
+  name = "libffado-${version}";
+  version = "2.1.0";
 
-  src = fetchsvn {
-    url = "http://subversion.ffado.org/ffado/trunk/libffado";
-    rev = "1995";
+  src = fetchurl {
+    url = "http://www.ffado.org/files/${name}.tgz";
+    sha256 = "11cxmy31c19720j2171l735rpg7l8i41icsgqscfd2vkbscfmh6y";
   };
 
   buildInputs =
@@ -18,13 +19,16 @@ stdenv.mkDerivation rec {
 
   patches = [ ./enable-mixer-and-dbus.patch ];
 
-  preBuild = "export PYLIBSUFFIX=lib/${python.libPrefix}/site-packages";
-
   # TODO fix ffado-diag, it doesn't seem to use PYPKGDIR
-  buildPhase = "scons PYPKGDIR=$out/$PYLIBSUFFIX";
+  buildPhase = ''
+    export PYLIBSUFFIX=lib/${python.libPrefix}/site-packages
+    scons PYPKGDIR=$out/$PYLIBSUFFIX DEBUG=False
+    sed -e "s#/usr/local#$out#" -i support/mixer-qt4/ffado/config.py
+    '';
+
   installPhase = ''
     scons PREFIX=$out LIBDIR=$out/lib SHAREDIR=$out/share/libffado \
-      PYPKGDIR=$out/$PYLIBSUFFIX install
+      PYPKGDIR=$out/$PYLIBSUFFIX UDEVDIR=$out/lib/udev/rules.d install
 
     sed -e "s#/usr/local#$out#g" -i $out/bin/ffado-diag
 
diff --git a/pkgs/os-specific/linux/ffado/enable-mixer-and-dbus.patch b/pkgs/os-specific/linux/ffado/enable-mixer-and-dbus.patch
index 44c0b991e0ad..480e0f45a92d 100644
--- a/pkgs/os-specific/linux/ffado/enable-mixer-and-dbus.patch
+++ b/pkgs/os-specific/linux/ffado/enable-mixer-and-dbus.patch
@@ -1,24 +1,25 @@
---- libffado-r2117/SConstruct	1970-01-01 01:00:01.000000000 +0100
-+++ libffado-r2117/SConstruct	2012-04-06 18:26:45.521100690 +0200
-@@ -314,10 +314,8 @@
+--- libffado-2.1.0/SConstruct	1970-01-01 01:00:01.000000000 +0100
++++ libffado-2.1.0/SConstruct	2012-09-30 16:50:23.603283095 +0000
+@@ -349,11 +349,9 @@
+ # Optional checks follow:
  #
  
- # PyQT checks
+-# PyQT checks
 -build_mixer = False
 -if conf.CheckForApp( 'which pyuic4' ) and conf.CheckForPyModule( 'dbus' ) and conf.CheckForPyModule( 'PyQt4' ) and conf.CheckForPyModule( 'dbus.mainloop.qt' ):
 -    env['PYUIC4'] = True
 -    build_mixer = True
 +env['PYUIC4'] = True
 +build_mixer = True
++
  
  if conf.CheckForApp( 'xdg-desktop-menu --help' ):
      env['XDG_TOOLS'] = True
-@@ -348,7 +346,8 @@
+@@ -384,7 +382,7 @@
      name2 = pkg.replace("+","").replace(".","").replace("-","").upper()
      env['%s_FLAGS' % name2] = conf.GetPKGFlags( pkg, pkgs[pkg] )
  
 -if not env['DBUS1_FLAGS'] or not env['DBUSC1_FLAGS'] or not conf.CheckForApp('which dbusxx-xml2cpp'):
-+
 +if False:
      env['DBUS1_FLAGS'] = ""
      env['DBUSC1_FLAGS'] = ""
diff --git a/pkgs/os-specific/linux/firmware/firmware-linux-nonfree/default.nix b/pkgs/os-specific/linux/firmware/firmware-linux-nonfree/default.nix
index e2ba47abb9a0..f6173fcf5f53 100644
--- a/pkgs/os-specific/linux/firmware/firmware-linux-nonfree/default.nix
+++ b/pkgs/os-specific/linux/firmware/firmware-linux-nonfree/default.nix
@@ -6,25 +6,26 @@
 { stdenv, fetchurl, buildEnv, dpkg }:
 
 let
-  version = "0.35";
+  version = "0.36";
+
 
   packages = [
-    { name = "linux-nonfree"; sha256 = "8c0701500e5252e3e05ad0e5403cc5295899ccb2d6d731380b5f4c2d90003ed1"; }
-    { name = "atheros"; sha256 = "df411d76e3d55cb256b0974df16cf18f316c1325f33670fbc9e36abba5aa46c0"; }
-    { name = "bnx2"; sha256 = "124e74aa6ce477f7b6a0b5eff3870b0104fd885b4bdfb9977175e75bdb9a7525"; }
-    { name = "bnx2x"; sha256 = "4cbcf3422a9aaa6e31704770c724179765dceabd2e6867e24cf47039925e6545"; }
-    { name = "brcm80211"; sha256 = "eefba7ba31c018d514ea15878cfd7bca36a65b0df3e9024fc3875a990678a684"; }
-    { name = "intelwimax"; sha256 = "436a3bd128224f43988630318aa3e74abfbe838916e1e10a602ddc468b75d843"; }
-    { name = "ipw2x00"; sha256 = "9c214e3a9f7f7d710b5cb30282d5ca2b2ccafc3bb208dfe7e18de16d3aadc7a3"; }
-    { name = "ivtv"; sha256 = "ced47d8b87ff8ff70a8c32492cc4fb5818860ef018b5c04a4415ab26c9b16300"; }
-    { name = "iwlwifi"; sha256 = "5d9615ec128b59cc5834e0261ea74127c0bc64bafabdaef1028a8f1acf611568"; }
-    { name = "libertas"; sha256 = "b109fb5c392928ac5495f8ce1d0f41d123b193031f8b548e8b68e9563db37016"; }
-    { name = "linux"; sha256 = "8e87f75c120904f2ca5fd9017e4503c23d8705b9ccaeb570374d1747163620ab"; }
-    { name = "myricom"; sha256 = "4c9e19d8b2cea97eb05f9d577537dba81aa36ac06c6da9bbed0bfa20434b7acc"; }
-    { name = "netxen"; sha256 = "3bd129229cf548a533c79cb55deefa7e4919e09fcc1f655773f4fa5078d81b9b"; }
-    { name = "qlogic"; sha256 = "213d098435c657115d2754ef5ead52e64f5fa05be4dcbcb0d5d3ca745376959c"; }
-    { name = "ralink"; sha256 = "51f3001ed15ca72bb088297b9e6e4a821ba6250f0ccc8886d77d2f5386a21836"; }
-    { name = "realtek"; sha256 = "a6338f5cd8bbe9627fa994016ebb0a91b40914021bec280ddc8f8a56eab22287"; }
+    { name = "linux-nonfree"; sha256 = "668d262dfcf18ffef2fe2a0b853b81bf5855f49fd2133203cbda097b1507c953"; }
+    { name = "atheros"; sha256 = "27cbd2099ce28c742f42833b09a61bdc7fb5b2ebcf5b35a52e750160ea1001b6"; }
+    { name = "bnx2"; sha256 = "32730fdeb0fb15a36e0ca046bde69e1a6fece8561af57afc7d9f1cf978fd25ab"; }
+    { name = "bnx2x"; sha256 = "22f23f4abb4aa2dac22718f12cf3bbd3fd2d63870b13e81c8401e6f841a719e8"; }
+    { name = "brcm80211"; sha256 = "17055c4199cc7e2aaa7d1d76dd5e718d24dbebb84020bb2d95ffab03bcfc7e8a"; }
+    { name = "intelwimax"; sha256 = "cc1b894990d3074e93b3f79b2b617614aab554b5e832d34993b5a16f64bdb84a"; }
+    { name = "ipw2x00"; sha256 = "2ef0810e2e037f7d536b24cc35527c456ff13b7aa5fd2df607b7035227553c9d"; }
+    { name = "ivtv"; sha256 = "7bf30e142679d53ad376002f29026bbe28de51e1cb71bcc3ec5c5f5f119a7118"; }
+    { name = "iwlwifi"; sha256 = "46ce0915583674ec10bfde3840b66ff450237edf604804ff51b9872fe767c1bb"; }
+    { name = "libertas"; sha256 = "c5d370d244f1c3a42f0a0280ed0cab067dbf36fa2926d387c9d10cf4ccd1b000"; }
+    { name = "linux"; sha256 = "e19bedc2cacf2cd7a1fc38e25820effe9e58fdc56608e9f7c320c85b80cba6ea"; }
+    { name = "myricom"; sha256 = "038bd618c00e852206a8a1443ba47ea644c04052bd8f10af9392c716ebf16b3c"; }
+    { name = "netxen"; sha256 = "29e3c1707dab6439f391318a223e5d4b6508d493c8d8bad799aef4f35b4704e7"; }
+    { name = "qlogic"; sha256 = "cc43c6016f2b7661d39e1d678ac0e8ca70081be8a0c76c2ec4d2e71493afa7d8"; }
+    { name = "ralink"; sha256 = "4db8dc6b98821c59f008c8bf7464317443b031cebf6d7e56c06f0824e69e3922"; }
+    { name = "realtek"; sha256 = "c39e65e5a589325ceb365d11b9ea10b0244134b7e5b3b05fd91fe6ad66b2f093"; }
   ];
 
   fetchPackage =
diff --git a/pkgs/os-specific/linux/hal/default.nix b/pkgs/os-specific/linux/hal/default.nix
deleted file mode 100644
index f1757be94cf0..000000000000
--- a/pkgs/os-specific/linux/hal/default.nix
+++ /dev/null
@@ -1,63 +0,0 @@
-{ stdenv, fetchurl, pkgconfig, python, pciutils, expat
-, libusb, dbus, dbus_glib, glib, libuuid, perl
-, perlXMLParser, gettext, zlib, gperf, consolekit, policykit
-, libsmbios, dmidecode, udev, utillinux, pmutils, usbutils
-, eject, upstart
-}:
-
-assert stdenv ? glibc;
-
-let
-  isPC = stdenv.isi686 || stdenv.isx86_64;
-  changeDmidecode = if isPC then
-    "--replace /usr/sbin/dmidecode ${dmidecode}/sbin/dmidecode"
-    else "";
-in
-stdenv.mkDerivation rec {
-  name = "hal-0.5.14";
-
-  src = fetchurl {
-    url = "http://hal.freedesktop.org/releases/${name}.tar.gz";
-    sha256 = "00ld3afcbh4ckb8sli63mm2w69zh6ip4axhy1lxyybgiabxaqfij";
-  };
-
-  buildInputs = [
-    pkgconfig python pciutils expat libusb dbus.libs dbus_glib glib
-    libuuid perl perlXMLParser gettext zlib gperf
-    consolekit policykit
-  ];
-
-  # !!! Hm, maybe the pci/usb.ids location should be in /etc, so that
-  # we don't have to rebuild HAL when we update the PCI/USB IDs.
-  configureFlags = ''
-    --with-pci-ids=${pciutils}/share
-    --with-usb-ids=${usbutils}/share
-    --localstatedir=/var
-    --with-eject=${eject}/bin/eject
-    --with-linux-input-header=${stdenv.glibc}/include/linux/input.h
-    --enable-umount-helper
-  '';
-
-  propagatedBuildInputs = [ libusb ]
-    ++ stdenv.lib.optional isPC libsmbios;
-
-  preConfigure = ''
-    for i in hald/linux/probing/probe-smbios.c hald/linux/osspec.c \
-             hald/linux/coldplug.c hald/linux/blockdev.c \
-             tools/hal-storage-mount.c ./tools/hal-storage-shared.c \
-             tools/hal-system-power-pm-is-supported.c \
-             tools/linux/hal-*-linux
-    do
-      substituteInPlace $i \
-        ${changeDmidecode} \
-        ${if udev != null then "--replace /sbin/udevadm ${udev}/sbin/udevadm" else ""} \
-        --replace /bin/mount ${utillinux}/bin/mount \
-        --replace /bin/umount ${utillinux}/bin/umount \
-        --replace /usr/bin/pm-is-supported ${pmutils}/bin/pm-is-supported \
-        --replace /usr/sbin/pm ${pmutils}/sbin/pm \
-        --replace /sbin/shutdown ${upstart}/sbin/shutdown
-    done
-  '';
-
-  installFlags = "slashsbindir=$(out)/sbin";
-}
diff --git a/pkgs/os-specific/linux/hal/hal-evt.nix b/pkgs/os-specific/linux/hal/hal-evt.nix
deleted file mode 100644
index a49f4fcc0f8a..000000000000
--- a/pkgs/os-specific/linux/hal/hal-evt.nix
+++ /dev/null
@@ -1,20 +0,0 @@
-{ stdenv, fetchurl, libxml2, pkgconfig, boolstuff, hal, dbus_glib }:
-
-stdenv.mkDerivation {
-  name = "hal-evt-0.1.4";
-
-  src = fetchurl {
-    url = http://savannah.nongnu.org/download/halevt/halevt-0.1.4.tar.gz;
-    sha256 = "173dphyzpicjz5pnw0d6wmibvib5h99nh1gmyvcqpgvf8la5vrps";
-  };
-
-  buildInputs = [ libxml2 pkgconfig boolstuff hal dbus_glib ];
-
-  meta = { 
-    description = "Execute commands on hal events";
-    homepage = http://www.nongnu.org/halevt/;
-    license = "GPLv2";
-    maintainers = [ stdenv.lib.maintainers.marcweber ];
-    platforms = stdenv.lib.platforms.linux;
-  };
-}
diff --git a/pkgs/os-specific/linux/hal/info.nix b/pkgs/os-specific/linux/hal/info.nix
deleted file mode 100644
index 1a4e41c776f1..000000000000
--- a/pkgs/os-specific/linux/hal/info.nix
+++ /dev/null
@@ -1,15 +0,0 @@
-{stdenv, fetchurl, pkgconfig}:
-
-stdenv.mkDerivation rec {
-  name = "hal-info-20091130";
-  
-  src = fetchurl {
-    url = "http://hal.freedesktop.org/releases/${name}.tar.gz";
-    sha256 = "092jhzpxa2h8djf8pijql92m70q87yds22686ryrfna3xbm90niv";
-  };
-
-  meta = {
-    homepage = http://www.freedesktop.org/wiki/Software/hal;
-    description = "Hardware data and quirks for HAL";
-  };
-}
diff --git a/pkgs/os-specific/linux/hal/synaptics.nix b/pkgs/os-specific/linux/hal/synaptics.nix
deleted file mode 100644
index 20c4d1ec24fb..000000000000
--- a/pkgs/os-specific/linux/hal/synaptics.nix
+++ /dev/null
@@ -1,19 +0,0 @@
-{stdenv}:
-stdenv.mkDerivation {
-  name = "hal-info-synaptics";
-  buildCommand = ''
-    mkdir -p $out/share/hal/fdi/information/15-osvendor/
-    cat << EOF > $out/share/hal/fdi/information/15-osvendor/10-x11-synaptics.fdi
-<?xml version="1.0" encoding="UTF-8"?>
-       <deviceinfo version="0.2">
-           <device>
-               <match key="info.capabilities" contains="input.touchpad">
-                   <merge key="input.x11_driver" type="string">synaptics</merge>
-                   <merge key="input.x11_options.AlwaysCore" type="string">true</merge>
-                   <merge key="input.x11_options.Protocol" type="string">event</merge>
-               </match>
-           </device>
-       </deviceinfo>
-EOF
-  '';
-}
diff --git a/pkgs/os-specific/linux/iproute/default.nix b/pkgs/os-specific/linux/iproute/default.nix
index cc5339ba9000..c97c7416de1e 100644
--- a/pkgs/os-specific/linux/iproute/default.nix
+++ b/pkgs/os-specific/linux/iproute/default.nix
@@ -1,11 +1,11 @@
-{fetchurl, stdenv, flex, bison, db4, iptables}:
+{ fetchurl, stdenv, flex, bison, db4, iptables, pkgconfig }:
 
 stdenv.mkDerivation rec {
-  name = "iproute2-2.6.35";
+  name = "iproute2-3.6.0";
 
   src = fetchurl {
-    url = "http://pkgs.fedoraproject.org/repo/pkgs/iproute/iproute2-2.6.35.tar.bz2/b0f281b3124bf04669e18f5fe16d4934/iproute2-2.6.35.tar.bz2";
-    sha256 = "18why1wy0v859axgrlfxn80zmskss0410hh9rf5gn9cr29zg9cla";
+    url = http://kernel.org/pub/linux/utils/net/iproute2/iproute2-3.6.0.tar.xz;
+    sha256 = "0d05av2s7p552yszgj6glz6d74jlmg392s7n74hicgqfl16m85rd";
   };
 
   patches = [ ./vpnc.patch ];
@@ -15,20 +15,25 @@ stdenv.mkDerivation rec {
       patchShebangs ./configure
       sed -e '/ARPDDIR/d' -i Makefile
     '';
+
   postConfigure = "cat Config";
 
   makeFlags = "DESTDIR= LIBDIR=$(out)/lib SBINDIR=$(out)/sbin"
-   + " CONFDIR=$(out)/etc DOCDIR=$(out)/share/doc/${name}"
-  + " MANDIR=$(out)/share/man";
+    + " CONFDIR=$(out)/etc DOCDIR=$(out)/share/doc/${name}"
+    + " MANDIR=$(out)/share/man";
+
+  buildInputs = [ db4 iptables ];
+  buildNativeInputs = [ bison flex pkgconfig ];
+
+  enableParallelBuilding = true;
 
-  buildInputs = [db4 iptables];
-  buildNativeInputs = [bison flex db4];
+  # Get rid of useless TeX/SGML docs.
+  postInstall = "rm -rf $out/share/doc";
 
   meta = {
-    homepage =
-      http://www.linuxfoundation.org/collaborate/workgroups/networking/iproute2;
-    description = "A collection of utilities for controlling TCP / IP"
-      + " networking and traffic control in Linux";
+    homepage = http://www.linuxfoundation.org/collaborate/workgroups/networking/iproute2;
+    description = "A collection of utilities for controlling TCP/IP networking and traffic control in Linux";
     platforms = stdenv.lib.platforms.linux;
+    maintainers = [ stdenv.lib.maintainers.eelco ];
   };
 }
diff --git a/pkgs/os-specific/linux/ipsec-tools/default.nix b/pkgs/os-specific/linux/ipsec-tools/default.nix
new file mode 100644
index 000000000000..00676319b034
--- /dev/null
+++ b/pkgs/os-specific/linux/ipsec-tools/default.nix
@@ -0,0 +1,42 @@
+{ stdenv, fetchurl, linuxHeaders, readline, openssl, flex, krb5, pam }:
+
+# TODO: These tools are supposed to work under NetBSD and FreeBSD as
+# well, so I guess it's not appropriate to place this expression in
+# "os-specific/linux/ipsec-tools". Since I cannot verify that the
+# expression actually builds on those platforms, I'll leave it here for
+# the time being.
+
+stdenv.mkDerivation rec {
+  name = "ipsec-tools-0.8.0";
+
+  src = fetchurl {
+    url = "mirror://sourceforge/ipsec-tools/${name}.tar.bz2";
+    sha256 = "2359a24aa8eda9ca7043fc47950c8e6b7f58a07c5d5ad316aa7de2bc5e3a8717";
+  };
+
+  buildInputs = [ readline openssl flex krb5 pam ];
+
+  patches = [ ./dont-create-localstatedir-during-install.patch ];
+
+  configureFlags = ''
+    --sysconfdir=/etc --localstatedir=/var
+    --with-kernel-headers=${linuxHeaders}/include
+    --disable-security-context
+    --enable-adminport
+    --enable-dpd
+    --enable-frag
+    --enable-gssapi
+    --enable-hybrid
+    --enable-natt
+    --enable-shared
+    --enable-stats
+  '';
+
+  meta = {
+    homepage = "http://ipsec-tools.sourceforge.net/";
+    description = "Port of KAME's IPsec utilities to the Linux-2.6 IPsec implementation";
+
+    platforms = stdenv.lib.platforms.linux;
+    maintainers = [stdenv.lib.maintainers.simons];
+  };
+}
diff --git a/pkgs/os-specific/linux/ipsec-tools/dont-create-localstatedir-during-install.patch b/pkgs/os-specific/linux/ipsec-tools/dont-create-localstatedir-during-install.patch
new file mode 100644
index 000000000000..16b80c36d6a5
--- /dev/null
+++ b/pkgs/os-specific/linux/ipsec-tools/dont-create-localstatedir-during-install.patch
@@ -0,0 +1,13 @@
+diff -ubr ipsec-tools-0.8.0-orig/src/racoon/Makefile.in ipsec-tools-0.8.0/src/racoon/Makefile.in
+--- ipsec-tools-0.8.0-orig/src/racoon/Makefile.in	2012-10-20 13:01:07.700903316 +0200
++++ ipsec-tools-0.8.0/src/racoon/Makefile.in	2012-10-20 13:01:13.177832616 +0200
+@@ -1085,9 +1085,6 @@
+ 	uninstall-sbinPROGRAMS
+ 
+ 
+-install-exec-local:
+-	${mkinstalldirs} $(DESTDIR)${adminsockdir}
+-
+ # special object rules
+ crypto_openssl_test.o: crypto_openssl.c
+ 	$(COMPILE) -DEAYDEBUG -o crypto_openssl_test.o -c $(srcdir)/crypto_openssl.c
diff --git a/pkgs/os-specific/linux/iptables/default.nix b/pkgs/os-specific/linux/iptables/default.nix
index a1dace598fef..78d8ee52fb18 100644
--- a/pkgs/os-specific/linux/iptables/default.nix
+++ b/pkgs/os-specific/linux/iptables/default.nix
@@ -1,11 +1,11 @@
 {stdenv, fetchurl}:
 
 stdenv.mkDerivation rec {
-  name = "iptables-1.4.10";
+  name = "iptables-1.4.16.2";
 
   src = fetchurl {
     url = "http://www.netfilter.org/projects/iptables/files/${name}.tar.bz2";
-    md5 = "f382fe693f0b59d87bd47bea65eca198";
+    md5 = "57220bb26866a713073e5614f88071fc";
   };
 
   # Install header files required by miniupnpd.
diff --git a/pkgs/os-specific/linux/kernel/linux-3.0.nix b/pkgs/os-specific/linux/kernel/linux-3.0.nix
index def318a1f3a5..b5d54befc097 100644
--- a/pkgs/os-specific/linux/kernel/linux-3.0.nix
+++ b/pkgs/os-specific/linux/kernel/linux-3.0.nix
@@ -230,7 +230,7 @@ in
 import ./generic.nix (
 
   rec {
-    version = "3.0.43";
+    version = "3.0.46";
 
     preConfigure = ''
       substituteInPlace scripts/depmod.sh --replace '-b "$INSTALL_MOD_PATH"' ""
@@ -238,7 +238,7 @@ import ./generic.nix (
 
     src = fetchurl {
       url = "mirror://kernel/linux/kernel/v3.x/linux-${version}.tar.xz";
-      sha256 = "1mrsdqsphkixvd5x97nz465r490hr679rq6f98jbyr0g5m4fyc29";
+      sha256 = "1m5zxbnclv1b72pn7zwrmik45pxzsapcj94m39aqq5akq8i149ig";
     };
 
     config = configWithPlatform stdenv.platform;
diff --git a/pkgs/os-specific/linux/kernel/linux-3.2.nix b/pkgs/os-specific/linux/kernel/linux-3.2.nix
index 2f36792d3536..607e9deff0a8 100644
--- a/pkgs/os-specific/linux/kernel/linux-3.2.nix
+++ b/pkgs/os-specific/linux/kernel/linux-3.2.nix
@@ -237,7 +237,7 @@ in
 import ./generic.nix (
 
   rec {
-    version = "3.2.30";
+    version = "3.2.32";
     testing = false;
 
     modDirVersion = version;
@@ -248,7 +248,7 @@ import ./generic.nix (
 
     src = fetchurl {
       url = "mirror://kernel/linux/kernel/v3.0/${if testing then "testing/" else ""}linux-${version}.tar.xz";
-      sha256 = "1yg353alkk7vddd8b2d7dlgpwaxjigk8i9qq1xifln3i842zinvw";
+      sha256 = "0kp52fz5xkaypgn19qa47bbrawj04g0vv0lfmx5vc51cvxljipa0";
     };
 
     config = configWithPlatform stdenv.platform;
diff --git a/pkgs/os-specific/linux/kernel/linux-3.3.nix b/pkgs/os-specific/linux/kernel/linux-3.3.nix
index 395b93e9f3fd..0db9a5c375d5 100644
--- a/pkgs/os-specific/linux/kernel/linux-3.3.nix
+++ b/pkgs/os-specific/linux/kernel/linux-3.3.nix
@@ -253,6 +253,7 @@ import ./generic.nix (
 
     features.iwlwifi = true;
     features.efiBootStub = true;
+    features.netfilterRPFilter = true;
   }
 
   // removeAttrs args ["extraConfig"]
diff --git a/pkgs/os-specific/linux/kernel/linux-3.4.nix b/pkgs/os-specific/linux/kernel/linux-3.4.nix
index dbff9bba07e1..fe80e38eadea 100644
--- a/pkgs/os-specific/linux/kernel/linux-3.4.nix
+++ b/pkgs/os-specific/linux/kernel/linux-3.4.nix
@@ -239,7 +239,7 @@ in
 import ./generic.nix (
 
   rec {
-    version = "3.4.11";
+    version = "3.4.14";
     testing = false;
 
     preConfigure = ''
@@ -248,7 +248,7 @@ import ./generic.nix (
 
     src = fetchurl {
       url = "mirror://kernel/linux/kernel/v3.x/${if testing then "testing/" else ""}linux-${version}.tar.xz";
-      sha256 = "0fda9z5dxvn8sbgr1c143ly8ixm0grymwm4r94nryby9i03s03a2";
+      sha256 = "0kr7yjhw5di2srryd1aypyi8mlxjh9gvmsz1684mj1fdpxi5adq4";
     };
 
     config = configWithPlatform stdenv.platform;
@@ -257,6 +257,7 @@ import ./generic.nix (
     features.iwlwifi = true;
     features.efiBootStub = true;
     features.needsCifsUtils = true;
+    features.netfilterRPFilter = true;
   }
 
   // removeAttrs args ["extraConfig"]
diff --git a/pkgs/os-specific/linux/kernel/linux-3.5.nix b/pkgs/os-specific/linux/kernel/linux-3.5.nix
index 9bcc6514f497..78f60c9906a4 100644
--- a/pkgs/os-specific/linux/kernel/linux-3.5.nix
+++ b/pkgs/os-specific/linux/kernel/linux-3.5.nix
@@ -240,7 +240,7 @@ in
 import ./generic.nix (
 
   rec {
-    version = "3.5.4";
+    version = "3.5.7";
     testing = false;
 
     preConfigure = ''
@@ -249,7 +249,7 @@ import ./generic.nix (
 
     src = fetchurl {
       url = "mirror://kernel/linux/kernel/v3.x/${if testing then "testing/" else ""}linux-${version}.tar.xz";
-      sha256 = "09pi00sk55rpl4mbhd27mnfajgy22bm0zwcgi68iyilc5wir1m12";
+      sha256 = "0k3r0qrlfgn7yk35wf4c49yvyy79kzn42qcrf5kms5iir838kini";
     };
 
     config = configWithPlatform stdenv.platform;
@@ -258,6 +258,8 @@ import ./generic.nix (
     features.iwlwifi = true;
     features.efiBootStub = true;
     features.needsCifsUtils = true;
+    features.canDisableNetfilterConntrackHelpers = true;
+    features.netfilterRPFilter = true;
   }
 
   // removeAttrs args ["extraConfig"]
diff --git a/pkgs/os-specific/linux/kernel/linux-3.6.nix b/pkgs/os-specific/linux/kernel/linux-3.6.nix
new file mode 100644
index 000000000000..fdd01bc97e77
--- /dev/null
+++ b/pkgs/os-specific/linux/kernel/linux-3.6.nix
@@ -0,0 +1,270 @@
+args @ { stdenv, fetchurl, extraConfig ? ""
+, perl, mktemp, module_init_tools
+, ... }:
+
+let
+  configWithPlatform = kernelPlatform :
+    ''
+      # Power management and debugging for powertop.
+      DEBUG_KERNEL y
+      PM_ADVANCED_DEBUG y
+      PM_RUNTIME y
+      TIMER_STATS y
+      USB_SUSPEND y
+      BACKTRACE_SELF_TEST n
+      CPU_NOTIFIER_ERROR_INJECT? n
+      DEBUG_DEVRES n
+      DEBUG_NX_TEST n
+      DEBUG_STACK_USAGE n
+      DEBUG_STACKOVERFLOW n
+      RCU_TORTURE_TEST n
+      SCHEDSTATS n
+
+      # Support drivers that need external firmware.
+      STANDALONE n
+
+      # Make /proc/config.gz available.
+      IKCONFIG_PROC y
+
+      # Optimize with -O2, not -Os.
+      CC_OPTIMIZE_FOR_SIZE n
+
+      # Enable the kernel's built-in memory tester.
+      MEMTEST y
+
+      # Include the CFQ I/O scheduler in the kernel, rather than as a
+      # module, so that the initrd gets a good I/O scheduler.
+      IOSCHED_CFQ y
+      BLK_CGROUP y # required by CFQ
+
+      # Enable NUMA.
+      NUMA? y
+
+      # Disable some expensive (?) features.
+      FTRACE n
+      KPROBES n
+      PM_TRACE_RTC n
+
+      # Enable various subsystems.
+      ACCESSIBILITY y # Accessibility support
+      AUXDISPLAY y # Auxiliary Display support
+      DONGLE y # Serial dongle support
+      HIPPI? y
+      MTD_COMPLEX_MAPPINGS y # needed for many devices
+      SCSI_LOWLEVEL y # enable lots of SCSI devices
+      SCSI_LOWLEVEL_PCMCIA y
+      SPI y # needed for many devices
+      SPI_MASTER y
+      WAN y
+
+      # Networking options.
+      IP_PNP n
+      IPV6_PRIVACY y
+      NETFILTER_ADVANCED y
+      IP_VS_PROTO_TCP y
+      IP_VS_PROTO_UDP y
+      IP_VS_PROTO_ESP y
+      IP_VS_PROTO_AH y
+      IP_DCCP_CCID3 n # experimental
+      CLS_U32_PERF y
+      CLS_U32_MARK y
+
+      # Wireless networking.
+      IPW2100_MONITOR y # support promiscuous mode
+      IPW2200_MONITOR? y # support promiscuous mode
+      HOSTAP_FIRMWARE y # Support downloading firmware images with Host AP driver
+      HOSTAP_FIRMWARE_NVRAM y
+      ATH9K_PCI y # Detect Atheros AR9xxx cards on PCI(e) bus
+      ATH9K_AHB y # Ditto, AHB bus
+      B43_PHY_HT y
+      BCMA_HOST_PCI y
+
+      # Some settings to make sure that fbcondecor works - in particular,
+      # disable tileblitting and the drivers that need it.
+
+      # Enable various FB devices.
+      FB y
+      FB_EFI y
+      FB_NVIDIA_I2C y # Enable DDC Support
+      FB_RIVA_I2C y
+      FB_ATY_CT y # Mach64 CT/VT/GT/LT (incl. 3D RAGE) support
+      FB_ATY_GX y # Mach64 GX support
+      FB_SAVAGE_I2C y
+      FB_SAVAGE_ACCEL y
+      FB_SIS_300 y
+      FB_SIS_315 y
+      FB_3DFX_ACCEL y
+      FB_GEODE y
+
+      # Video configuration
+      # Enable KMS for devices whose X.org driver supports it.
+      DRM_I915_KMS y
+      DRM_RADEON_KMS y
+      # Hybrid graphics support
+      VGA_SWITCHEROO y
+
+      # Sound.
+      SND_AC97_POWER_SAVE y # AC97 Power-Saving Mode
+      SND_HDA_INPUT_BEEP y # Support digital beep via input layer
+      SND_USB_CAIAQ_INPUT y
+      PSS_MIXER y # Enable PSS mixer (Beethoven ADSP-16 and other compatible)
+
+      # USB serial devices.
+      USB_SERIAL_GENERIC y # USB Generic Serial Driver
+      USB_SERIAL_KEYSPAN_MPR y # include firmware for various USB serial devices
+      USB_SERIAL_KEYSPAN_USA28 y
+      USB_SERIAL_KEYSPAN_USA28X y
+      USB_SERIAL_KEYSPAN_USA28XA y
+      USB_SERIAL_KEYSPAN_USA28XB y
+      USB_SERIAL_KEYSPAN_USA19 y
+      USB_SERIAL_KEYSPAN_USA18X y
+      USB_SERIAL_KEYSPAN_USA19W y
+      USB_SERIAL_KEYSPAN_USA19QW y
+      USB_SERIAL_KEYSPAN_USA19QI y
+      USB_SERIAL_KEYSPAN_USA49W y
+      USB_SERIAL_KEYSPAN_USA49WLC y
+
+      # Filesystem options - in particular, enable extended attributes and
+      # ACLs for all filesystems that support them.
+      EXT2_FS_XATTR y # Ext2 extended attributes
+      EXT2_FS_POSIX_ACL y # Ext2 POSIX Access Control Lists
+      EXT2_FS_SECURITY y # Ext2 Security Labels
+      EXT2_FS_XIP y # Ext2 execute in place support
+      EXT4_FS_POSIX_ACL y
+      EXT4_FS_SECURITY y
+      REISERFS_FS_XATTR y
+      REISERFS_FS_POSIX_ACL y
+      REISERFS_FS_SECURITY y
+      JFS_POSIX_ACL y
+      JFS_SECURITY y
+      XFS_QUOTA y
+      XFS_POSIX_ACL y
+      XFS_RT y # XFS Realtime subvolume support
+      OCFS2_DEBUG_MASKLOG n
+      BTRFS_FS_POSIX_ACL y
+      UBIFS_FS_XATTR? y
+      UBIFS_FS_ADVANCED_COMPR y
+      NFSD_V2_ACL y
+      NFSD_V3 y
+      NFSD_V3_ACL y
+      NFSD_V4 y
+      CIFS_XATTR y
+      CIFS_POSIX y
+
+      # Security related features.
+      STRICT_DEVMEM y # Filter access to /dev/mem
+      SECURITY_SELINUX_BOOTPARAM_VALUE 0 # disable SELinux by default
+
+      # Misc. options.
+      8139TOO_8129 y
+      8139TOO_PIO n # PIO is slower
+      AIC79XX_DEBUG_ENABLE n
+      AIC7XXX_DEBUG_ENABLE n
+      AIC94XX_DEBUG n
+      B43_PCMCIA y
+      BLK_DEV_CMD640_ENHANCED y # CMD640 enhanced support
+      BLK_DEV_IDEACPI y # IDE ACPI support
+      BLK_DEV_INTEGRITY y
+      BSD_PROCESS_ACCT_V3 y
+      BT_HCIUART_BCSP y
+      BT_HCIUART_H4 y # UART (H4) protocol support
+      BT_HCIUART_LL y
+      BT_RFCOMM m
+      BT_RFCOMM_TTY y # RFCOMM TTY support
+      CRASH_DUMP n
+      DMAR? n # experimental
+      DVB_DYNAMIC_MINORS? y # we use udev
+      EFI_STUB y # EFI bootloader in the bzImage itself
+      FUSION y # Fusion MPT device support
+      IDE_GD_ATAPI y # ATAPI floppy support
+      IRDA_ULTRA y # Ultra (connectionless) protocol
+      JOYSTICK_IFORCE_232 y # I-Force Serial joysticks and wheels
+      JOYSTICK_IFORCE_USB y # I-Force USB joysticks and wheels
+      JOYSTICK_XPAD_FF y # X-Box gamepad rumble support
+      JOYSTICK_XPAD_LEDS y # LED Support for Xbox360 controller 'BigX' LED
+      LDM_PARTITION y # Windows Logical Disk Manager (Dynamic Disk) support
+      LEDS_TRIGGER_IDE_DISK y # LED IDE Disk Trigger
+      LOGIRUMBLEPAD2_FF y # Logitech Rumblepad 2 force feedback
+      LOGO n # not needed
+      MEDIA_ATTACH? y
+      MEGARAID_NEWGEN y
+      MICROCODE_AMD y
+      MODVERSIONS y
+      MOUSE_PS2_ELANTECH y # Elantech PS/2 protocol extension
+      MTRR_SANITIZER y
+      NET_FC y # Fibre Channel driver support
+      PPP_MULTILINK y # PPP multilink support
+      REGULATOR y # Voltage and Current Regulator Support
+      SCSI_LOGGING y # SCSI logging facility
+      SERIAL_8250 y # 8250/16550 and compatible serial support
+      SLIP_COMPRESSED y # CSLIP compressed headers
+      SLIP_SMART y
+      THERMAL_HWMON y # Hardware monitoring support
+      USB_DEBUG n
+      USB_EHCI_ROOT_HUB_TT y # Root Hub Transaction Translators
+      USB_EHCI_TT_NEWSCHED y # Improved transaction translator scheduling
+      X86_CHECK_BIOS_CORRUPTION y
+      X86_MCE y
+      XEN_DOM0 y
+
+      # Linux Containers
+      RT_GROUP_SCHED? y
+      CGROUP_DEVICE? y
+      CGROUP_MEM_RES_CTLR? y
+      CGROUP_MEM_RES_CTLR_SWAP? y
+      DEVPTS_MULTIPLE_INSTANCES? y
+
+      # Enable staging drivers.  These are somewhat experimental, but
+      # they generally don't hurt.
+      STAGING y
+
+      # PROC_EVENTS requires that the netlink connector is not built
+      # as a module.  This is required by libcgroup's cgrulesengd.
+      CONNECTOR y
+      PROC_EVENTS y
+
+      # Tracing
+      FTRACE y
+      FUNCTION_TRACER y
+      FTRACE_SYSCALLS y
+      SCHED_TRACER y
+
+      # Devtmpfs support.
+      DEVTMPFS y
+
+      # Media support
+      MEDIA_CAMERA_SUPPORT? y
+      MEDIA_RC_SUPPORT? y
+
+      ${if kernelPlatform ? kernelExtraConfig then kernelPlatform.kernelExtraConfig else ""}
+      ${extraConfig}
+    '';
+in
+
+import ./generic.nix (
+
+  rec {
+    version = "3.6.2";
+    testing = false;
+
+    preConfigure = ''
+      substituteInPlace scripts/depmod.sh --replace '-b "$INSTALL_MOD_PATH"' ""
+    '';
+
+    src = fetchurl {
+      url = "mirror://kernel/linux/kernel/v3.x/${if testing then "testing/" else ""}linux-${version}.tar.xz";
+      sha256 = "1clxrmxq09bjcxcxi2z2fmbfij0zah5jxy29b0b59hgpg24cfyb0";
+    };
+
+    config = configWithPlatform stdenv.platform;
+    configCross = configWithPlatform stdenv.cross.platform;
+
+    features.iwlwifi = true;
+    features.efiBootStub = true;
+    features.needsCifsUtils = true;
+    features.canDisableNetfilterConntrackHelpers = true;
+    features.netfilterRPFilter = true;
+  }
+
+  // removeAttrs args ["extraConfig"]
+)
diff --git a/pkgs/os-specific/linux/kernel/patches.nix b/pkgs/os-specific/linux/kernel/patches.nix
index a7f737d65e73..4fb7563c9a11 100644
--- a/pkgs/os-specific/linux/kernel/patches.nix
+++ b/pkgs/os-specific/linux/kernel/patches.nix
@@ -189,6 +189,21 @@ rec {
     features.aufs3 = true;
   };
 
+  # not officially released yet, but 3.x seems to work fine
+  aufs3_6 = rec {
+    name = "aufs3.6";
+    version = "3.x.20120827";
+    utilRev = "91af15f977d12e02165759620005f6ce1a4d7602";
+    utilHash = "dda4df89828dcf0e4012d88b4aa3eda8c30af69d6530ff5fedc2411de872c996";
+    patch = makeAufs3StandalonePatch {
+      inherit version;
+      rev = "46660ad144289fa1f0aca59bd00d592b560d0dbb";
+      sha256 = "823b7b4c011c103d63711900b3213008de3c9e408b909e0cc2b8697c1e82b67d";
+    };
+    features.aufsBase = true;
+    features.aufs3 = true;
+  };
+
   # Increase the timeout on CIFS requests from 15 to 120 seconds to
   # make CIFS more resilient to high load on the CIFS server.
   cifs_timeout_2_6_15 =
@@ -226,6 +241,7 @@ rec {
       patch = ./dell-rfkill.patch;
     };
 
+  # seems no longer necessary on 3.6
   perf3_5 =
     { name = "perf-3.5";
       patch = ./perf-3.5.patch;
diff --git a/pkgs/os-specific/linux/lvm2/assume-uevent-generated.patch b/pkgs/os-specific/linux/lvm2/assume-uevent-generated.patch
new file mode 100644
index 000000000000..4098d042fd53
--- /dev/null
+++ b/pkgs/os-specific/linux/lvm2/assume-uevent-generated.patch
@@ -0,0 +1,39 @@
+Work around LVM/cryptsetup errors like:
+
+  semid 32768: semop failed for cookie 0xd4d41f4: incorrect semaphore state
+  Failed to set a proper state for notification semaphore identified by cookie value 223166964 (0xd4d41f4) to initialize waiting for incoming notifications.
+
+and (when running "cryptsetup --debug"):
+
+  Uevent not generated! Calling udev_complete internally to avoid process lock-up.
+
+Here for some reason libdm *thinks* that the uevent hasn't been
+emitted, so it calls udev_complete.  But the uevent actually *has*
+been emitted, so udev calls ‘dmsetup udevcomplete’ as well, leading to
+a race.
+
+This is probably a reoccurence of the problem described here:
+
+  http://www.redhat.com/archives/dm-devel/2011-August/msg00075.html
+  http://www.redhat.com/archives/linux-lvm/2011-September/msg00023.html
+
+which was fixed in the kernel, so it's not clear why it's surfacing
+again.  Maybe netlink_broadcast_filtered() has started returning some
+other bogus error code.
+  
+diff -ru -x '*~' LVM2.2.02.98/libdm/ioctl/libdm-iface.c LVM2.2.02.98-new/libdm/ioctl/libdm-iface.c
+--- LVM2.2.02.98/libdm/ioctl/libdm-iface.c	2012-10-15 10:24:58.000000000 -0400
++++ LVM2.2.02.98-new/libdm/ioctl/libdm-iface.c	2012-10-15 14:19:06.774363736 -0400
+@@ -1754,9 +1754,12 @@
+ 
+ 	if (ioctl_with_uevent && dm_udev_get_sync_support() &&
+ 	    !_check_uevent_generated(dmi)) {
++		log_debug("warning: Uevent might not be generated!");
++#if 0
+ 		log_debug("Uevent not generated! Calling udev_complete "
+ 			  "internally to avoid process lock-up.");
+ 		_udev_complete(dmt);
++#endif
+ 	}
+ 
+ 	if (!_dm_ioctl_unmangle_names(dmt->type, dmi))
diff --git a/pkgs/os-specific/linux/lvm2/default.nix b/pkgs/os-specific/linux/lvm2/default.nix
index 1ebebfd634b7..ec68304c9355 100644
--- a/pkgs/os-specific/linux/lvm2/default.nix
+++ b/pkgs/os-specific/linux/lvm2/default.nix
@@ -1,7 +1,7 @@
 { stdenv, fetchurl, pkgconfig, udev, utillinux, coreutils }:
 
 let
-  v = "2.02.97";
+  v = "2.02.98";
 in
 
 stdenv.mkDerivation {
@@ -9,9 +9,11 @@ stdenv.mkDerivation {
 
   src = fetchurl {
     url = "ftp://sources.redhat.com/pub/lvm2/old/LVM2.${v}.tgz";
-    sha256 = "0azwa555dgvixbdw055yj8cj1q6kd0a36nms005iz7la5q0q5npd";
+    sha256 = "0r6q6z8ip6q5qgkzng0saljassp4912k6i21ra10vq7pzrc0l0vi";
   };
 
+  patches = [ ./assume-uevent-generated.patch ];
+
   configureFlags =
     "--disable-readline --enable-udev_rules --enable-udev_sync --enable-pkgconfig --enable-applib";
 
diff --git a/pkgs/applications/virtualization/lxc/default.nix b/pkgs/os-specific/linux/lxc/default.nix
index 26180b843687..be943f5df9e0 100644
--- a/pkgs/applications/virtualization/lxc/default.nix
+++ b/pkgs/os-specific/linux/lxc/default.nix
@@ -1,14 +1,11 @@
 { stdenv, fetchurl, libcap, perl, docbook2x, docbook_xml_dtd_45 }:
 
-let
-  name = "lxc-0.7.5";
-in
-stdenv.mkDerivation{
-  inherit name;
+stdenv.mkDerivation rec {
+  name = "lxc-0.8.0-rc2";
 
   src = fetchurl {
     url = "http://lxc.sf.net/download/lxc/${name}.tar.gz";
-    sha256 = "019ec63f250c874bf7625b1f1bf555b1a6e3a947937a4fca73100abddf829b1c";
+    sha256 = "1f0ee0464507d26e494784e841b68c765ecd3abc5976012e226f69d1aa361bef";
   };
 
   buildInputs = [ libcap perl docbook2x ];
@@ -42,7 +39,6 @@ stdenv.mkDerivation{
       mechanisms to Linux’s existing process management infrastructure.
     '';
 
-
     platforms = stdenv.lib.platforms.linux;
     maintainers = [ stdenv.lib.maintainers.simons ];
   };
diff --git a/pkgs/applications/virtualization/lxc/dont-run-ldconfig.patch b/pkgs/os-specific/linux/lxc/dont-run-ldconfig.patch
index e72ac0250f51..e72ac0250f51 100644
--- a/pkgs/applications/virtualization/lxc/dont-run-ldconfig.patch
+++ b/pkgs/os-specific/linux/lxc/dont-run-ldconfig.patch
diff --git a/pkgs/applications/virtualization/lxc/fix-documentation-build.patch b/pkgs/os-specific/linux/lxc/fix-documentation-build.patch
index 0189b35a33e9..0189b35a33e9 100644
--- a/pkgs/applications/virtualization/lxc/fix-documentation-build.patch
+++ b/pkgs/os-specific/linux/lxc/fix-documentation-build.patch
diff --git a/pkgs/applications/virtualization/lxc/fix-sgml-documentation.patch b/pkgs/os-specific/linux/lxc/fix-sgml-documentation.patch
index 4d2cce0dd62e..60c9027cca5c 100644
--- a/pkgs/applications/virtualization/lxc/fix-sgml-documentation.patch
+++ b/pkgs/os-specific/linux/lxc/fix-sgml-documentation.patch
@@ -1,7 +1,8 @@
-diff -ubr '--exclude=Makefile*' lxc-0.7.5-orig/doc/lxc-cgroup.sgml.in lxc-0.7.5/doc/lxc-cgroup.sgml.in
---- lxc-0.7.5-orig/doc/lxc-cgroup.sgml.in	2010-06-07 10:51:51.000000000 +0200
-+++ lxc-0.7.5/doc/lxc-cgroup.sgml.in	2011-09-26 10:05:01.753873426 +0200
-@@ -23,7 +23,7 @@
+diff --git a/doc/lxc-attach.sgml.in b/doc/lxc-attach.sgml.in
+index 7092f16..021da41 100644
+--- a/doc/lxc-attach.sgml.in
++++ b/doc/lxc-attach.sgml.in
+@@ -23,7 +23,7 @@ Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
  
  -->
  
@@ -10,10 +11,11 @@ diff -ubr '--exclude=Makefile*' lxc-0.7.5-orig/doc/lxc-cgroup.sgml.in lxc-0.7.5/
  
  <!ENTITY commonoptions SYSTEM "@builddir@/common_options.sgml">
  <!ENTITY seealso SYSTEM "@builddir@/see_also.sgml">
-diff -ubr '--exclude=Makefile*' lxc-0.7.5-orig/doc/lxc-checkpoint.sgml.in lxc-0.7.5/doc/lxc-checkpoint.sgml.in
---- lxc-0.7.5-orig/doc/lxc-checkpoint.sgml.in	2011-02-17 10:07:44.000000000 +0100
-+++ lxc-0.7.5/doc/lxc-checkpoint.sgml.in	2011-09-26 10:05:01.753873426 +0200
-@@ -23,7 +23,7 @@
+diff --git a/doc/lxc-cgroup.sgml.in b/doc/lxc-cgroup.sgml.in
+index 5acd313..856a544 100644
+--- a/doc/lxc-cgroup.sgml.in
++++ b/doc/lxc-cgroup.sgml.in
+@@ -23,7 +23,7 @@ Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
  
  -->
  
@@ -22,22 +24,24 @@ diff -ubr '--exclude=Makefile*' lxc-0.7.5-orig/doc/lxc-checkpoint.sgml.in lxc-0.
  
  <!ENTITY commonoptions SYSTEM "@builddir@/common_options.sgml">
  <!ENTITY seealso SYSTEM "@builddir@/see_also.sgml">
-diff -ubr '--exclude=Makefile*' lxc-0.7.5-orig/doc/lxc.conf.sgml.in lxc-0.7.5/doc/lxc.conf.sgml.in
---- lxc-0.7.5-orig/doc/lxc.conf.sgml.in	2011-08-09 16:51:01.000000000 +0200
-+++ lxc-0.7.5/doc/lxc.conf.sgml.in	2011-09-26 10:05:01.754873476 +0200
-@@ -23,7 +23,7 @@
+diff --git a/doc/lxc-checkpoint.sgml.in b/doc/lxc-checkpoint.sgml.in
+index bf0efd9..eeb0039 100644
+--- a/doc/lxc-checkpoint.sgml.in
++++ b/doc/lxc-checkpoint.sgml.in
+@@ -23,7 +23,7 @@ Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
  
  -->
  
 -<!DOCTYPE refentry PUBLIC "-//Davenport//DTD DocBook V3.0//EN" [
 +<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN" "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
  
+ <!ENTITY commonoptions SYSTEM "@builddir@/common_options.sgml">
  <!ENTITY seealso SYSTEM "@builddir@/see_also.sgml">
- ]>
-diff -ubr '--exclude=Makefile*' lxc-0.7.5-orig/doc/lxc-console.sgml.in lxc-0.7.5/doc/lxc-console.sgml.in
---- lxc-0.7.5-orig/doc/lxc-console.sgml.in	2010-06-07 10:51:51.000000000 +0200
-+++ lxc-0.7.5/doc/lxc-console.sgml.in	2011-09-26 10:05:01.754873476 +0200
-@@ -23,7 +23,7 @@
+diff --git a/doc/lxc-console.sgml.in b/doc/lxc-console.sgml.in
+index 606c868..62f9e07 100644
+--- a/doc/lxc-console.sgml.in
++++ b/doc/lxc-console.sgml.in
+@@ -23,7 +23,7 @@ Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
  
  -->
  
@@ -46,10 +50,11 @@ diff -ubr '--exclude=Makefile*' lxc-0.7.5-orig/doc/lxc-console.sgml.in lxc-0.7.5
  
  <!ENTITY commonoptions SYSTEM "@builddir@/common_options.sgml">
  <!ENTITY seealso SYSTEM "@builddir@/see_also.sgml">
-diff -ubr '--exclude=Makefile*' lxc-0.7.5-orig/doc/lxc-create.sgml.in lxc-0.7.5/doc/lxc-create.sgml.in
---- lxc-0.7.5-orig/doc/lxc-create.sgml.in	2011-07-25 00:27:10.000000000 +0200
-+++ lxc-0.7.5/doc/lxc-create.sgml.in	2011-09-26 10:05:01.755873526 +0200
-@@ -23,7 +23,7 @@
+diff --git a/doc/lxc-create.sgml.in b/doc/lxc-create.sgml.in
+index a3cca83..d59106d 100644
+--- a/doc/lxc-create.sgml.in
++++ b/doc/lxc-create.sgml.in
+@@ -23,7 +23,7 @@ Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
  
  -->
  
@@ -58,10 +63,19 @@ diff -ubr '--exclude=Makefile*' lxc-0.7.5-orig/doc/lxc-create.sgml.in lxc-0.7.5/
  
  <!ENTITY commonoptions SYSTEM "@builddir@/common_options.sgml">
  <!ENTITY seealso SYSTEM "@builddir@/see_also.sgml">
-diff -ubr '--exclude=Makefile*' lxc-0.7.5-orig/doc/lxc-destroy.sgml.in lxc-0.7.5/doc/lxc-destroy.sgml.in
---- lxc-0.7.5-orig/doc/lxc-destroy.sgml.in	2010-10-08 11:54:53.000000000 +0200
-+++ lxc-0.7.5/doc/lxc-destroy.sgml.in	2011-09-26 10:05:01.755873526 +0200
-@@ -23,7 +23,7 @@
+@@ -141,6 +141,7 @@ Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ 	    filesystem) of size SIZE rather than the default, which is 1G.
+ 	  </para>
+ 	</listitem>
++      </varlistentry>
+ 
+       <varlistentry>
+ 	<term>
+diff --git a/doc/lxc-destroy.sgml.in b/doc/lxc-destroy.sgml.in
+index e75de57..05f53d6 100644
+--- a/doc/lxc-destroy.sgml.in
++++ b/doc/lxc-destroy.sgml.in
+@@ -23,7 +23,7 @@ Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
  
  -->
  
@@ -70,10 +84,11 @@ diff -ubr '--exclude=Makefile*' lxc-0.7.5-orig/doc/lxc-destroy.sgml.in lxc-0.7.5
  
  <!ENTITY commonoptions SYSTEM "@builddir@/common_options.sgml">
  <!ENTITY seealso SYSTEM "@builddir@/see_also.sgml">
-diff -ubr '--exclude=Makefile*' lxc-0.7.5-orig/doc/lxc-execute.sgml.in lxc-0.7.5/doc/lxc-execute.sgml.in
---- lxc-0.7.5-orig/doc/lxc-execute.sgml.in	2011-07-25 00:27:10.000000000 +0200
-+++ lxc-0.7.5/doc/lxc-execute.sgml.in	2011-09-26 10:05:01.755873526 +0200
-@@ -23,7 +23,7 @@
+diff --git a/doc/lxc-execute.sgml.in b/doc/lxc-execute.sgml.in
+index 77d132a..1e58bef 100644
+--- a/doc/lxc-execute.sgml.in
++++ b/doc/lxc-execute.sgml.in
+@@ -23,7 +23,7 @@ Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
  
  -->
  
@@ -82,10 +97,11 @@ diff -ubr '--exclude=Makefile*' lxc-0.7.5-orig/doc/lxc-execute.sgml.in lxc-0.7.5
  
  <!ENTITY commonoptions SYSTEM "@builddir@/common_options.sgml">
  <!ENTITY seealso SYSTEM "@builddir@/see_also.sgml">
-diff -ubr '--exclude=Makefile*' lxc-0.7.5-orig/doc/lxc-freeze.sgml.in lxc-0.7.5/doc/lxc-freeze.sgml.in
---- lxc-0.7.5-orig/doc/lxc-freeze.sgml.in	2010-06-07 10:51:51.000000000 +0200
-+++ lxc-0.7.5/doc/lxc-freeze.sgml.in	2011-09-26 10:05:01.755873526 +0200
-@@ -23,7 +23,7 @@
+diff --git a/doc/lxc-freeze.sgml.in b/doc/lxc-freeze.sgml.in
+index 798ccf4..f0d0485 100644
+--- a/doc/lxc-freeze.sgml.in
++++ b/doc/lxc-freeze.sgml.in
+@@ -23,7 +23,7 @@ Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
  
  -->
  
@@ -94,10 +110,11 @@ diff -ubr '--exclude=Makefile*' lxc-0.7.5-orig/doc/lxc-freeze.sgml.in lxc-0.7.5/
  
  <!ENTITY commonoptions SYSTEM "@builddir@/common_options.sgml">
  <!ENTITY seealso SYSTEM "@builddir@/see_also.sgml">
-diff -ubr '--exclude=Makefile*' lxc-0.7.5-orig/doc/lxc-kill.sgml.in lxc-0.7.5/doc/lxc-kill.sgml.in
---- lxc-0.7.5-orig/doc/lxc-kill.sgml.in	2010-10-08 11:54:53.000000000 +0200
-+++ lxc-0.7.5/doc/lxc-kill.sgml.in	2011-09-26 10:05:01.756873576 +0200
-@@ -23,7 +23,7 @@
+diff --git a/doc/lxc-kill.sgml.in b/doc/lxc-kill.sgml.in
+index 5bec922..1f48820 100644
+--- a/doc/lxc-kill.sgml.in
++++ b/doc/lxc-kill.sgml.in
+@@ -23,7 +23,7 @@ Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
  
  -->
  
@@ -106,10 +123,11 @@ diff -ubr '--exclude=Makefile*' lxc-0.7.5-orig/doc/lxc-kill.sgml.in lxc-0.7.5/do
  
  <!ENTITY commonoptions SYSTEM "@builddir@/common_options.sgml">
  <!ENTITY seealso SYSTEM "@builddir@/see_also.sgml">
-diff -ubr '--exclude=Makefile*' lxc-0.7.5-orig/doc/lxc-ls.sgml.in lxc-0.7.5/doc/lxc-ls.sgml.in
---- lxc-0.7.5-orig/doc/lxc-ls.sgml.in	2010-06-07 10:51:51.000000000 +0200
-+++ lxc-0.7.5/doc/lxc-ls.sgml.in	2011-09-26 10:05:01.756873576 +0200
-@@ -24,7 +24,7 @@
+diff --git a/doc/lxc-ls.sgml.in b/doc/lxc-ls.sgml.in
+index 3ffd4f8..b11d211 100644
+--- a/doc/lxc-ls.sgml.in
++++ b/doc/lxc-ls.sgml.in
+@@ -24,7 +24,7 @@ Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
  
  -->
  
@@ -118,10 +136,11 @@ diff -ubr '--exclude=Makefile*' lxc-0.7.5-orig/doc/lxc-ls.sgml.in lxc-0.7.5/doc/
  
  <!ENTITY seealso SYSTEM "@builddir@/see_also.sgml">
  ]>
-diff -ubr '--exclude=Makefile*' lxc-0.7.5-orig/doc/lxc-monitor.sgml.in lxc-0.7.5/doc/lxc-monitor.sgml.in
---- lxc-0.7.5-orig/doc/lxc-monitor.sgml.in	2010-06-07 10:51:51.000000000 +0200
-+++ lxc-0.7.5/doc/lxc-monitor.sgml.in	2011-09-26 10:05:01.756873576 +0200
-@@ -23,7 +23,7 @@
+diff --git a/doc/lxc-monitor.sgml.in b/doc/lxc-monitor.sgml.in
+index 9d8711c..b492968 100644
+--- a/doc/lxc-monitor.sgml.in
++++ b/doc/lxc-monitor.sgml.in
+@@ -23,7 +23,7 @@ Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
  
  -->
  
@@ -130,10 +149,11 @@ diff -ubr '--exclude=Makefile*' lxc-0.7.5-orig/doc/lxc-monitor.sgml.in lxc-0.7.5
  
  <!ENTITY commonoptions SYSTEM "@builddir@/common_options.sgml">
  <!ENTITY seealso SYSTEM "@builddir@/see_also.sgml">
-diff -ubr '--exclude=Makefile*' lxc-0.7.5-orig/doc/lxc-ps.sgml.in lxc-0.7.5/doc/lxc-ps.sgml.in
---- lxc-0.7.5-orig/doc/lxc-ps.sgml.in	2011-08-11 17:54:57.000000000 +0200
-+++ lxc-0.7.5/doc/lxc-ps.sgml.in	2011-09-26 10:05:01.756873576 +0200
-@@ -24,7 +24,7 @@
+diff --git a/doc/lxc-ps.sgml.in b/doc/lxc-ps.sgml.in
+index bb7b5a6..05ed59f 100644
+--- a/doc/lxc-ps.sgml.in
++++ b/doc/lxc-ps.sgml.in
+@@ -24,7 +24,7 @@ Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
  
  -->
  
@@ -142,10 +162,11 @@ diff -ubr '--exclude=Makefile*' lxc-0.7.5-orig/doc/lxc-ps.sgml.in lxc-0.7.5/doc/
  
  <!ENTITY seealso SYSTEM "@builddir@/see_also.sgml">
  ]>
-diff -ubr '--exclude=Makefile*' lxc-0.7.5-orig/doc/lxc-restart.sgml.in lxc-0.7.5/doc/lxc-restart.sgml.in
---- lxc-0.7.5-orig/doc/lxc-restart.sgml.in	2011-02-17 10:07:44.000000000 +0100
-+++ lxc-0.7.5/doc/lxc-restart.sgml.in	2011-09-26 10:05:01.757873626 +0200
-@@ -23,7 +23,7 @@
+diff --git a/doc/lxc-restart.sgml.in b/doc/lxc-restart.sgml.in
+index eb556d9..d158cc7 100644
+--- a/doc/lxc-restart.sgml.in
++++ b/doc/lxc-restart.sgml.in
+@@ -23,7 +23,7 @@ Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
  
  -->
  
@@ -154,58 +175,37 @@ diff -ubr '--exclude=Makefile*' lxc-0.7.5-orig/doc/lxc-restart.sgml.in lxc-0.7.5
  
  <!ENTITY commonoptions SYSTEM "@builddir@/common_options.sgml">
  <!ENTITY seealso SYSTEM "@builddir@/see_also.sgml">
-diff -ubr '--exclude=Makefile*' lxc-0.7.5-orig/doc/lxc.sgml.in lxc-0.7.5/doc/lxc.sgml.in
---- lxc-0.7.5-orig/doc/lxc.sgml.in	2010-10-26 18:07:35.000000000 +0200
-+++ lxc-0.7.5/doc/lxc.sgml.in	2011-09-26 10:05:01.758873676 +0200
-@@ -23,7 +23,7 @@
+diff --git a/doc/lxc-start.sgml.in b/doc/lxc-start.sgml.in
+index 4504d58..f268185 100644
+--- a/doc/lxc-start.sgml.in
++++ b/doc/lxc-start.sgml.in
+@@ -23,7 +23,7 @@ Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
  
  -->
  
 -<!DOCTYPE refentry PUBLIC "-//Davenport//DTD DocBook V3.0//EN" [
 +<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN" "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
  
+ <!ENTITY commonoptions SYSTEM "@builddir@/common_options.sgml">
  <!ENTITY seealso SYSTEM "@builddir@/see_also.sgml">
- ]>
-@@ -280,7 +280,7 @@
-       </para>
+diff --git a/doc/lxc-stop.sgml.in b/doc/lxc-stop.sgml.in
+index d15e649..51179c4 100644
+--- a/doc/lxc-stop.sgml.in
++++ b/doc/lxc-stop.sgml.in
+@@ -23,7 +23,7 @@ Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
  
-       <programlisting>
--
-+<![CDATA[
-    ---------
-   | STOPPED |<---------------
-    ---------                 |
-@@ -305,7 +305,7 @@
-    ----------                |
-        |                     |
-         ---------------------
--
-+]]>
-       </programlisting>
-     </refsect2>
+ -->
  
-@@ -570,7 +570,7 @@
- 	to the background.
+-<!DOCTYPE refentry PUBLIC "-//Davenport//DTD DocBook V3.0//EN" [
++<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN" "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
  
- 	<programlisting>
--
-+<![CDATA[
- 	  # launch lxc-wait in background
- 	  lxc-wait -n foo -s STOPPED &
- 	  LXC_WAIT_PID=$!
-@@ -583,7 +583,7 @@
- 	  # is STOPPED
- 	  wait $LXC_WAIT_PID
- 	  echo "'foo' is finished"
--
-+]]>
- 	</programlisting>
-       </para>
-     </refsect2>
-diff -ubr '--exclude=Makefile*' lxc-0.7.5-orig/doc/lxc-start.sgml.in lxc-0.7.5/doc/lxc-start.sgml.in
---- lxc-0.7.5-orig/doc/lxc-start.sgml.in	2011-02-01 15:12:40.000000000 +0100
-+++ lxc-0.7.5/doc/lxc-start.sgml.in	2011-09-26 10:05:01.758873676 +0200
-@@ -23,7 +23,7 @@
+ <!ENTITY commonoptions SYSTEM "@builddir@/common_options.sgml">
+ <!ENTITY seealso SYSTEM "@builddir@/see_also.sgml">
+diff --git a/doc/lxc-unfreeze.sgml.in b/doc/lxc-unfreeze.sgml.in
+index bb00d85..3f8f59b 100644
+--- a/doc/lxc-unfreeze.sgml.in
++++ b/doc/lxc-unfreeze.sgml.in
+@@ -23,7 +23,7 @@ Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
  
  -->
  
@@ -214,10 +214,11 @@ diff -ubr '--exclude=Makefile*' lxc-0.7.5-orig/doc/lxc-start.sgml.in lxc-0.7.5/d
  
  <!ENTITY commonoptions SYSTEM "@builddir@/common_options.sgml">
  <!ENTITY seealso SYSTEM "@builddir@/see_also.sgml">
-diff -ubr '--exclude=Makefile*' lxc-0.7.5-orig/doc/lxc-stop.sgml.in lxc-0.7.5/doc/lxc-stop.sgml.in
---- lxc-0.7.5-orig/doc/lxc-stop.sgml.in	2010-06-07 10:51:51.000000000 +0200
-+++ lxc-0.7.5/doc/lxc-stop.sgml.in	2011-09-26 10:05:01.758873676 +0200
-@@ -23,7 +23,7 @@
+diff --git a/doc/lxc-wait.sgml.in b/doc/lxc-wait.sgml.in
+index 97a4c39..0c7c589 100644
+--- a/doc/lxc-wait.sgml.in
++++ b/doc/lxc-wait.sgml.in
+@@ -24,7 +24,7 @@ Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
  
  -->
  
@@ -226,27 +227,65 @@ diff -ubr '--exclude=Makefile*' lxc-0.7.5-orig/doc/lxc-stop.sgml.in lxc-0.7.5/do
  
  <!ENTITY commonoptions SYSTEM "@builddir@/common_options.sgml">
  <!ENTITY seealso SYSTEM "@builddir@/see_also.sgml">
-diff -ubr '--exclude=Makefile*' lxc-0.7.5-orig/doc/lxc-unfreeze.sgml.in lxc-0.7.5/doc/lxc-unfreeze.sgml.in
---- lxc-0.7.5-orig/doc/lxc-unfreeze.sgml.in	2010-06-07 10:51:51.000000000 +0200
-+++ lxc-0.7.5/doc/lxc-unfreeze.sgml.in	2011-09-26 10:05:01.759873726 +0200
-@@ -23,7 +23,7 @@
+diff --git a/doc/lxc.conf.sgml.in b/doc/lxc.conf.sgml.in
+index 9edabf8..daa2ff8 100644
+--- a/doc/lxc.conf.sgml.in
++++ b/doc/lxc.conf.sgml.in
+@@ -23,7 +23,7 @@ Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
  
  -->
  
 -<!DOCTYPE refentry PUBLIC "-//Davenport//DTD DocBook V3.0//EN" [
 +<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN" "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
  
- <!ENTITY commonoptions SYSTEM "@builddir@/common_options.sgml">
  <!ENTITY seealso SYSTEM "@builddir@/see_also.sgml">
-diff -ubr '--exclude=Makefile*' lxc-0.7.5-orig/doc/lxc-wait.sgml.in lxc-0.7.5/doc/lxc-wait.sgml.in
---- lxc-0.7.5-orig/doc/lxc-wait.sgml.in	2010-06-07 10:51:51.000000000 +0200
-+++ lxc-0.7.5/doc/lxc-wait.sgml.in	2011-09-26 10:05:01.759873726 +0200
-@@ -24,7 +24,7 @@
+ ]>
+diff --git a/doc/lxc.sgml.in b/doc/lxc.sgml.in
+index 1b30fed..d98ca21 100644
+--- a/doc/lxc.sgml.in
++++ b/doc/lxc.sgml.in
+@@ -23,7 +23,7 @@ Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
  
  -->
  
 -<!DOCTYPE refentry PUBLIC "-//Davenport//DTD DocBook V3.0//EN" [
 +<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN" "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
  
- <!ENTITY commonoptions SYSTEM "@builddir@/common_options.sgml">
  <!ENTITY seealso SYSTEM "@builddir@/see_also.sgml">
+ ]>
+@@ -280,7 +280,7 @@ rootfs
+       </para>
+ 
+       <programlisting>
+-
++<![CDATA[
+    ---------
+   | STOPPED |<---------------
+    ---------                 |
+@@ -305,7 +305,7 @@ rootfs
+    ----------                |
+        |                     |
+         ---------------------
+-
++]]>
+       </programlisting>
+     </refsect2>
+ 
+@@ -570,7 +570,7 @@ rootfs
+ 	to the background.
+ 
+ 	<programlisting>
+-
++<![CDATA[
+ 	  # launch lxc-wait in background
+ 	  lxc-wait -n foo -s STOPPED &
+ 	  LXC_WAIT_PID=$!
+@@ -583,7 +583,7 @@ rootfs
+ 	  # is STOPPED
+ 	  wait $LXC_WAIT_PID
+ 	  echo "'foo' is finished"
+-
++]]>
+ 	</programlisting>
+       </para>
+     </refsect2>
diff --git a/pkgs/os-specific/linux/mountall/default.nix b/pkgs/os-specific/linux/mountall/default.nix
index 67d7801fdb23..4cad810cc5f1 100644
--- a/pkgs/os-specific/linux/mountall/default.nix
+++ b/pkgs/os-specific/linux/mountall/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, pkgconfig, libnih, dbus, udev, autoconf, automake, libtool, gettext }:
+{ stdenv, fetchurl, pkgconfig, libnih, dbus, udev, gettext, autoreconfHook }:
 
 stdenv.mkDerivation {
   name = "mountall-2.35";
@@ -10,9 +10,7 @@ stdenv.mkDerivation {
 
   patches = [ ./no-plymouth.patch ./fix-usr1-race.patch ];
 
-  preConfigure = "rm -R aclocal.m4; gettextize -f; autoreconf -vfi";
-
-  buildInputs = [ pkgconfig libnih dbus.libs udev autoconf automake libtool gettext ];
+  buildInputs = [ pkgconfig libnih dbus.libs udev gettext autoreconfHook ];
 
   makeFlags = "initramfshookdir=$(out)/share/initramfs-tools/hooks upstart_jobs_initramfs_configdir=$(out)/share/initramfs-tools/event-driven/upstart-jobs";
 
diff --git a/pkgs/os-specific/linux/nvidia-x11/default.nix b/pkgs/os-specific/linux/nvidia-x11/default.nix
index 94a48e0f1796..dce5eec27a1d 100644
--- a/pkgs/os-specific/linux/nvidia-x11/default.nix
+++ b/pkgs/os-specific/linux/nvidia-x11/default.nix
@@ -8,7 +8,7 @@
 
 with stdenv.lib;
 
-let versionNumber = "304.43"; in
+let versionNumber = "304.51"; in
 
 stdenv.mkDerivation {
   name = "nvidia-x11-${versionNumber}${optionalString (!libsOnly) "-${kernel.version}"}";
@@ -19,12 +19,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 = "0k1csg547n6h3vb7phfhfcxnvqgqad55l7zgp0lai9d008rlhzvw";
+        sha256 = "08hc4w5ic1zbanfn5cpj3nqjk5s3brs6b4bcllzqd5nrfxizdzbq";
       }
     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 = "0m6dxlhpg6705qrg6czk98gn14zic3xgbxr02czwmhyppgsi3f9i";
+        sha256 = "0fix999d1fzryjs635krh1ff9ha3agbwzscicrj0apwsfrbvqf5w";
       }
     else throw "nvidia-x11 does not support platform ${stdenv.system}";
 
diff --git a/pkgs/os-specific/linux/nvidia-x11/legacy173.nix b/pkgs/os-specific/linux/nvidia-x11/legacy173.nix
index 0112270f3bf3..90ff989b759a 100644
--- a/pkgs/os-specific/linux/nvidia-x11/legacy173.nix
+++ b/pkgs/os-specific/linux/nvidia-x11/legacy173.nix
@@ -2,7 +2,7 @@
 
 let 
 
-  versionNumber = "173.14.35";
+  versionNumber = "173.14.36";
 
 in
 
@@ -15,12 +15,12 @@ stdenv.mkDerivation {
     if stdenv.system == "i686-linux" then
       fetchurl {
         url = "http://us.download.nvidia.com/XFree86/Linux-x86/${versionNumber}/NVIDIA-Linux-x86-${versionNumber}-pkg0.run";
-        sha256 = "16kjxj2bn78cgyb4xq39zajjv1hx1z5dw50n9r17w14ifq7i09id";
+        sha256 = "19wnikms9wradf1kmaywnp7hykrdm4xqz2ka7az66s3ma096y95c";
       }
     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}-pkg0.run";
-        sha256 = "0mk7pj7in090dx2v5yzkd7qkaf0qvz3jv4cmpiflpmzmg9p15x8n";
+        sha256 = "1xf1w6qvqw0a3vd807hp3cgqmzm1wkpz2by52p0qgpjqld421k2s";
       }
     else throw "nvidia-x11 does not support platform ${stdenv.system}";
 
diff --git a/pkgs/os-specific/linux/reptyr/default.nix b/pkgs/os-specific/linux/reptyr/default.nix
new file mode 100644
index 000000000000..573f1a578c72
--- /dev/null
+++ b/pkgs/os-specific/linux/reptyr/default.nix
@@ -0,0 +1,17 @@
+{stdenv, fetchgit}:
+stdenv.mkDerivation rec {
+  version = "0.4";
+  name = "reptyr-${version}";
+  src = fetchgit {
+    url = "https://github.com/nelhage/reptyr.git";
+    rev = "refs/tags/${name}";
+    sha256 = "2d2814c210e4bde6f9bcf3aa20477287d7e4a5aa7ee09110b37d2eaaf7e5ecae";
+  };
+  makeFlags = ["PREFIX=$(out)"];
+  meta = {
+    platforms = stdenv.lib.platforms.linux;
+    maintainers = with stdenv.lib.maintainers; [raskin];
+    license = stdenv.lib.licenses.mit;
+    description = ''A Linux tool to change controlling pty of a process'';
+  };
+}
diff --git a/pkgs/os-specific/linux/spl/default.nix b/pkgs/os-specific/linux/spl/default.nix
new file mode 100644
index 000000000000..63a2a8454aa0
--- /dev/null
+++ b/pkgs/os-specific/linux/spl/default.nix
@@ -0,0 +1,55 @@
+{ stdenv, fetchurl, kernel, perl, autoconf, automake, libtool, coreutils, gawk }:
+
+stdenv.mkDerivation {
+  name = "spl-0.6.0-rc11";
+  src = fetchurl {
+    url = http://github.com/downloads/zfsonlinux/spl/spl-0.6.0-rc11.tar.gz;
+    sha256 = "0brsrr9hvzlpx7a26nn8rw9k2kh9s75hmxp6h087hi64hzxysf8g";
+  };
+
+  patches = [ ./install_prefix.patch ./install_prefix_2.patch ./module_prefix.patch ];
+
+  buildInputs = [ perl kernel autoconf automake libtool ];
+
+  NIX_CFLAGS_COMPILE = "-I${kernel}/lib/modules/${kernel.modDirVersion}/build/include/generated";
+
+  preConfigure = ''
+    ./autogen.sh
+
+    substituteInPlace ./module/spl/spl-generic.c --replace /usr/bin/hostid   hostid
+    substituteInPlace ./module/spl/spl-module.c  --replace /bin/mknod        mknod 
+
+    substituteInPlace ./module/spl/spl-generic.c --replace "PATH=/sbin:/usr/sbin:/bin:/usr/bin" "PATH=${coreutils}:${gawk}:/bin"
+    substituteInPlace ./module/spl/spl-module.c  --replace "PATH=/sbin:/usr/sbin:/bin:/usr/bin" "PATH=${coreutils}:/bin"
+    substituteInPlace ./module/splat/splat-vnode.c --replace "PATH=/sbin:/usr/sbin:/bin:/usr/bin" "PATH=${coreutils}:/bin"
+  '';
+
+  configureFlags = ''
+     --with-linux=${kernel}/lib/modules/${kernel.version}/build
+     --with-linux-obj=${kernel}/lib/modules/${kernel.version}/build
+  '';
+
+  meta = {
+    description = "Kernel module driver for solaris porting layer (needed by in-kernel zfs)";
+
+    longDescription = ''
+      This kernel module is a porting layer for ZFS to work inside the linux kernel. 
+
+      LICENSE NOTE: the Linux kernel is licensed under the GNU General Public
+      License which is incompatible with ZFS which is licensed under the Sun CDDL.
+      While both the GPL and CDDL are open source licenses their terms are such that
+      it is impossible to simultaneously satisfy both licenses. This means that a
+      single derived work of the Linux kernel and ZFS cannot be legally distributed.
+
+      The ZFS code can be modified to build as a CDDL licensed kernel module
+      which is not distributed as part of the Linux kernel. This makes a Native ZFS
+      on Linux implementation possible if you are willing to download and build it
+      yourself.
+    '';
+
+    homepage = http://zfsonlinux.org/;
+    platforms = stdenv.lib.platforms.linux;
+    license = stdenv.lib.licenses.cddl;
+    maintainers = with stdenv.lib.maintainers; [ jcumming ];
+  };
+}
diff --git a/pkgs/os-specific/linux/spl/install_prefix.patch b/pkgs/os-specific/linux/spl/install_prefix.patch
new file mode 100644
index 000000000000..9a7393b7170c
--- /dev/null
+++ b/pkgs/os-specific/linux/spl/install_prefix.patch
@@ -0,0 +1,19 @@
+*** spl-0.6.0-rc10/Makefile.am.old	Fri Aug 17 14:49:16 2012
+--- spl-0.6.0-rc10/Makefile.am	Fri Aug 17 14:51:06 2012
+***************
+*** 32,38 ****
+  if CONFIG_KERNEL
+  install-data-local:
+  	release=$(SPL_META_VERSION)-$(SPL_META_RELEASE); \
+! 	instdest=$(DESTDIR)/usr/src/spl-$$release/$(LINUX_VERSION); \
+  	for instfile in $(noinst_HEADERS) module/$(LINUX_SYMBOLS); do \
+  		$(INSTALL) -D $$instfile $$instdest/$$instfile; \
+  	done
+--- 32,38 ----
+  if CONFIG_KERNEL
+  install-data-local:
+  	release=$(SPL_META_VERSION)-$(SPL_META_RELEASE); \
+! 	instdest=$(DESTDIR)/@libexecdir@/spl/$(LINUX_VERSION); \
+  	for instfile in $(noinst_HEADERS) module/$(LINUX_SYMBOLS); do \
+  		$(INSTALL) -D $$instfile $$instdest/$$instfile; \
+  	done
diff --git a/pkgs/os-specific/linux/spl/install_prefix_2.patch b/pkgs/os-specific/linux/spl/install_prefix_2.patch
new file mode 100644
index 000000000000..6068ad1d69c2
--- /dev/null
+++ b/pkgs/os-specific/linux/spl/install_prefix_2.patch
@@ -0,0 +1,32 @@
+*** git-export/include/Makefile.am	Tue Mar  6 00:05:28 2012
+--- git-export/include/Makefile.am.new	Tue Mar  6 00:04:46 2012
+***************
+*** 16,22 ****
+  
+  install-data-local:
+  	release=$(SPL_META_VERSION)-$(SPL_META_RELEASE); \
+! 	instdest=$(DESTDIR)/usr/src/spl-$$release/$(LINUX_VERSION); \
+  	instfiles=`find . -name '*.h'`; \
+          for instfile in $$instfiles; do \
+  		$(INSTALL) -D $$instfile $$instdest/$$instfile; \
+--- 16,22 ----
+  
+  install-data-local:
+  	release=$(SPL_META_VERSION)-$(SPL_META_RELEASE); \
+! 	instdest=$(DESTDIR)/@libexecdir@/spl/$(LINUX_VERSION); \
+  	instfiles=`find . -name '*.h'`; \
+          for instfile in $$instfiles; do \
+  		$(INSTALL) -D $$instfile $$instdest/$$instfile; \
+***************
+*** 24,28 ****
+  
+  uninstall-local:
+  	release=$(SPL_META_VERSION)-$(SPL_META_RELEASE); \
+! 	instdest=$(DESTDIR)/usr/src/spl-$$release/$(LINUX_VERSION); \
+  	$(RM) -R $$instdest
+--- 24,28 ----
+  
+  uninstall-local:
+  	release=$(SPL_META_VERSION)-$(SPL_META_RELEASE); \
+! 	instdest=$(DESTDIR)/@libexecdir@/spl/$(LINUX_VERSION); \
+  	$(RM) -R $$instdest
diff --git a/pkgs/os-specific/linux/spl/module_prefix.patch b/pkgs/os-specific/linux/spl/module_prefix.patch
new file mode 100644
index 000000000000..dd40711ccdb8
--- /dev/null
+++ b/pkgs/os-specific/linux/spl/module_prefix.patch
@@ -0,0 +1,33 @@
+*** git-export/module/Makefile.in	Wed Dec 31 16:00:01 1969
+--- git-export/module/Makefile.in.new	Sat Jan 28 21:42:06 2012
+***************
+*** 17,30 ****
+  modules_install:
+  	@# Install the kernel modules
+  	$(MAKE) -C @LINUX_OBJ@ SUBDIRS=`pwd` \
+! 		INSTALL_MOD_PATH=$(DESTDIR) \
+  		INSTALL_MOD_DIR=addon/spl $@
+  	@# Remove extraneous build products when packaging
+! 	if [ -n "$(DESTDIR)" ]; then \
+! 		find $(DESTDIR)/lib/modules/@LINUX_VERSION@ \
+  			-name 'modules.*' | xargs $(RM); \
+  	fi
+! 	sysmap=$(DESTDIR)/boot/System.map-@LINUX_VERSION@; \
+  	if [ -f $$sysmap ]; then \
+  		depmod -ae -F $$sysmap @LINUX_VERSION@; \
+  	fi
+--- 17,30 ----
+  modules_install:
+  	@# Install the kernel modules
+  	$(MAKE) -C @LINUX_OBJ@ SUBDIRS=`pwd` \
+! 		INSTALL_MOD_PATH=@prefix@ \
+  		INSTALL_MOD_DIR=addon/spl $@
+  	@# Remove extraneous build products when packaging
+! 	if [ -n "@prefix@" ]; then \
+! 		find @prefix@/lib/modules/@LINUX_VERSION@ \
+  			-name 'modules.*' | xargs $(RM); \
+  	fi
+! 	sysmap=@prefix@/boot/System.map-@LINUX_VERSION@; \
+  	if [ -f $$sysmap ]; then \
+  		depmod -ae -F $$sysmap @LINUX_VERSION@; \
+  	fi
diff --git a/pkgs/os-specific/linux/sysfsutils/default.nix b/pkgs/os-specific/linux/sysfsutils/default.nix
index cecb65f50a2f..bf6dafae10ac 100644
--- a/pkgs/os-specific/linux/sysfsutils/default.nix
+++ b/pkgs/os-specific/linux/sysfsutils/default.nix
@@ -4,7 +4,7 @@ stdenv.mkDerivation rec {
   name = "sysfsutils-2.1.0";
 
   src = fetchurl {
-    url = "http://kent.dl.sourceforge.net/sourceforge/linux-diag/${name}.tar.gz";
+    url = "mirror://sourceforge/linux-diag/${name}.tar.gz";
     sha256 = "e865de2c1f559fff0d3fc936e660c0efaf7afe662064f2fb97ccad1ec28d208a";
   };
 
diff --git a/pkgs/os-specific/linux/systemd/crypt-devices-are-ready.patch b/pkgs/os-specific/linux/systemd/crypt-devices-are-ready.patch
new file mode 100644
index 000000000000..4646ed0e44ca
--- /dev/null
+++ b/pkgs/os-specific/linux/systemd/crypt-devices-are-ready.patch
@@ -0,0 +1,22 @@
+Do start device units for uninitialised encrypted devices, because the
+service that initialises the filesystem depends on the appearance of
+the device unit.  Also, this makes more sense to me: the device is
+ready; it's the filesystem that's not, but taking care of that is the
+responsibility of the mount unit.  (However, this ignores the fsck
+unit, so it's not perfect...)
+
+diff --git a/rules/99-systemd.rules.in b/rules/99-systemd.rules.in
+index d17bdd9..040b10e 100644
+--- a/rules/99-systemd.rules.in
++++ b/rules/99-systemd.rules.in
+@@ -14,10 +14,6 @@ KERNEL=="vport*", TAG+="systemd"
+ SUBSYSTEM=="block", KERNEL!="ram*|loop*", TAG+="systemd"
+ SUBSYSTEM=="block", KERNEL!="ram*|loop*", ENV{DM_UDEV_DISABLE_OTHER_RULES_FLAG}=="1", ENV{SYSTEMD_READY}="0"
+ 
+-# Ignore encrypted devices with no identified superblock on it, since
+-# we are probably still calling mke2fs or mkswap on it.
+-SUBSYSTEM=="block", KERNEL!="ram*|loop*", ENV{DM_UUID}=="CRYPT-*", ENV{ID_PART_TABLE_TYPE}=="", ENV{ID_FS_USAGE}=="", ENV{SYSTEMD_READY}="0"
+-
+ # Ignore raid devices that are not yet assembled and started
+ SUBSYSTEM=="block", ENV{DEVTYPE}=="disk", KERNEL=="md*", TEST!="md/array_state", ENV{SYSTEMD_READY}="0"
+ SUBSYSTEM=="block", ENV{DEVTYPE}=="disk", KERNEL=="md*", ATTR{md/array_state}=="|clear|inactive", ENV{SYSTEMD_READY}="0"
diff --git a/pkgs/os-specific/linux/systemd/default.nix b/pkgs/os-specific/linux/systemd/default.nix
index abacee62ff36..cd9cc2dae2cb 100644
--- a/pkgs/os-specific/linux/systemd/default.nix
+++ b/pkgs/os-specific/linux/systemd/default.nix
@@ -1,23 +1,28 @@
 { stdenv, fetchurl, pkgconfig, intltool, gperf, libcap, dbus, kmod
 , xz, pam, acl, cryptsetup, libuuid, m4, utillinux, usbutils, pciutils
-, glib, kbd, libxslt
+, glib, kbd, libxslt, coreutils, libgcrypt
 }:
 
 assert stdenv.gcc.libc or null != null;
 
 stdenv.mkDerivation rec {
-  name = "systemd-193";
+  name = "systemd-194";
 
   src = fetchurl {
     url = "http://www.freedesktop.org/software/systemd/${name}.tar.xz";
-    sha256 = "1k8fmii15127y4b2kc9id2vkmrjdsbq3kv6fi308k72azbhnpnxr";
+    sha256 = "0cgnnl6kqaz3als5y9g8jvsvbs4c8ccp0vl4s1g8rwk69w2cwxd2";
   };
 
-  patches = [ ./reexec.patch ];
+  patches =
+    [ ./reexec.patch
+      ./ignore-duplicates.patch
+      ./fix-device-aliases.patch
+      ./crypt-devices-are-ready.patch
+    ];
 
   buildInputs =
     [ pkgconfig intltool gperf libcap dbus kmod xz pam acl
-      /* cryptsetup */ libuuid m4 usbutils pciutils glib libxslt
+      /* cryptsetup */ libuuid m4 usbutils pciutils glib libxslt libgcrypt
     ];
 
   configureFlags =
@@ -56,6 +61,9 @@ stdenv.mkDerivation rec {
       # lead to a cyclic dependency.
       "-DPOLKIT_AGENT_BINARY_PATH=\"/run/current-system/sw/bin/pkttyagent\""
       "-fno-stack-protector"
+      # Work around our kernel headers being too old.  FIXME: remove
+      # this after the next stdenv update.
+      "-DFS_NOCOW_FL=0x00800000"
     ];
 
   makeFlags = "CPPFLAGS=-I${stdenv.gcc.libc}/include";
@@ -75,7 +83,12 @@ stdenv.mkDerivation rec {
       for i in init halt poweroff runlevel reboot shutdown; do
         ln -s $out/bin/systemctl $out/sbin/$i
       done
-    '';
+
+      # Fix reference to /bin/false in the D-Bus services.
+      for i in $out/share/dbus-1/system-services/*.service; do
+        substituteInPlace $i --replace /bin/false ${coreutils}/bin/false
+      done
+    ''; # */
 
   enableParallelBuilding = true;
 
diff --git a/pkgs/os-specific/linux/systemd/fix-device-aliases.patch b/pkgs/os-specific/linux/systemd/fix-device-aliases.patch
new file mode 100644
index 000000000000..508fd0ec0749
--- /dev/null
+++ b/pkgs/os-specific/linux/systemd/fix-device-aliases.patch
@@ -0,0 +1,14 @@
+diff --git a/src/core/device.c b/src/core/device.c
+index 5307341..7bbe99a 100644
+--- a/src/core/device.c
++++ b/src/core/device.c
+@@ -255,8 +255,7 @@ static int device_update_unit(Manager *m, struct udev_device *dev, const char *p
+                         if (!is_path(alias))
+                                 log_warning("SYSTEMD_ALIAS for %s is not a path, ignoring: %s", sysfs, alias);
+                         else {
+-                                if ((r = device_add_escaped_name(u, alias)) < 0)
+-                                        goto fail;
++                                device_update_unit(m, dev, alias, false);
+                         }
+                 }
+ 
diff --git a/pkgs/os-specific/linux/systemd/ignore-duplicates.patch b/pkgs/os-specific/linux/systemd/ignore-duplicates.patch
new file mode 100644
index 000000000000..764eead54eac
--- /dev/null
+++ b/pkgs/os-specific/linux/systemd/ignore-duplicates.patch
@@ -0,0 +1,20 @@
+Ignore duplicate paths in "systemctl start".
+
+diff --git a/src/systemctl/systemctl.c b/src/systemctl/systemctl.c
+index a4290c4..d3ac3ad 100644
+--- a/src/systemctl/systemctl.c
++++ b/src/systemctl/systemctl.c
+@@ -1596,8 +1596,11 @@ static int start_unit_one(
+ 
+                 r = set_put(s, p);
+                 if (r < 0) {
+-                        log_error("Failed to add path to set.");
+-                        return r;
++                        free(p);
++                        if (r != -EEXIST) {
++                                log_error("Failed to add path %s to set.", p);
++                                return r;
++                        }
+                 }
+ 
+                 p = NULL;
diff --git a/pkgs/os-specific/linux/usbutils/default.nix b/pkgs/os-specific/linux/usbutils/default.nix
index 96ae5b93aa8d..5af28876dc19 100644
--- a/pkgs/os-specific/linux/usbutils/default.nix
+++ b/pkgs/os-specific/linux/usbutils/default.nix
@@ -1,25 +1,25 @@
-{ stdenv, fetchurl, pkgconfig, libusb }:
+{ stdenv, fetchurl, pkgconfig, libusb1 }:
 
 let
 
   # Obtained from http://www.linux-usb.org/usb.ids.bz2.
   usbids = fetchurl {
-    url = http://nixos.org/tarballs/usb.ids.20100720.bz2;
-    sha256 = "0krncssk0b10z6grw305824zma953l3g2rb7jkk25mb78pw5fd5d";
+    url = http://nixos.org/tarballs/usb.ids.20120920.bz2;
+    sha256 = "0sz860g7grf6kx22p49s6j8h85c69ymcw16a8110klzfl9hl9hli";
   };
 
 in
 
 stdenv.mkDerivation rec {
-  name = "usbutils-0.86";
-  
+  name = "usbutils-006";
+
   src = fetchurl {
-    url = "mirror://kernel/linux/utils/usb/usbutils/${name}.tar.gz";
-    sha256 = "1x0jkiwrgdb8qwy21iwhxpc8k61apxqp1901h866d1ydsakbxcmk";
+    url = mirror://kernel/linux/utils/usb/usbutils/usbutils-006.tar.xz;
+    sha256 = "03pd57vv8c6x0hgjqcbrxnzi14h8hcghmapg89p8k5zpwpkvbdfr";
   };
-  
-  buildInputs = [ pkgconfig libusb ];
-  
+
+  buildInputs = [ pkgconfig libusb1 ];
+
   preBuild = "bunzip2 < ${usbids} > usb.ids";
 
   meta = {
diff --git a/pkgs/os-specific/linux/xf86-input-mtrack/default.nix b/pkgs/os-specific/linux/xf86-input-mtrack/default.nix
index 405f722f70f7..4f74ce57ea84 100644
--- a/pkgs/os-specific/linux/xf86-input-mtrack/default.nix
+++ b/pkgs/os-specific/linux/xf86-input-mtrack/default.nix
@@ -10,10 +10,11 @@
 , xorgserver
 , xproto
 , inputproto
+, pixman
 }:
 
 stdenv.mkDerivation {
-  name = "xf86-input-mtrack-0.2.0";
+  name = "xf86-input-mtrack-0.3.0";
 
   preConfigure = "autoreconf -vfi";
 
@@ -27,12 +28,15 @@ stdenv.mkDerivation {
     xorgserver
     xproto
     inputproto
+    pixman
   ];
 
+  CFLAGS = "-I${pixman}/include/pixman-1";
+
   src = fetchurl {
     name = "xf86-input-mtrack.tar.gz";
-    url = "https://github.com/BlueDragonX/xf86-input-mtrack/tarball/v0.2.0";
-    sha256 = "1zvd68dxpjn44ys7ysi3yc95xdjw1rz0s3xwlh3fzpw1ib3wrr3x";
+    url = "https://github.com/BlueDragonX/xf86-input-mtrack/tarball/v0.3.0";
+    sha256 = "174rdw7gv0wsnjgmwpx4pgjn1zfbylflda4k2dzff6phzxj9yl6v";
   };
 
   meta = {
@@ -45,3 +49,4 @@ stdenv.mkDerivation {
     maintainers = [ stdenv.lib.maintainers.shlevy ];
   };
 }
+
diff --git a/pkgs/os-specific/linux/xf86-input-wacom/default.nix b/pkgs/os-specific/linux/xf86-input-wacom/default.nix
index 4bcf82a70527..e043b12e8201 100644
--- a/pkgs/os-specific/linux/xf86-input-wacom/default.nix
+++ b/pkgs/os-specific/linux/xf86-input-wacom/default.nix
@@ -1,6 +1,6 @@
 { stdenv, fetchurl
-, file, inputproto, libX11, libXext, libXi, libXrandr, libXrender, libXinerama
-, ncurses, pkgconfig, randrproto, xorgserver, xproto, udev }:
+, file, inputproto, libX11, libXext, libXi, libXrandr, libXrender
+, ncurses, pkgconfig, randrproto, xorgserver, xproto, udev, libXinerama, pixman }:
 
 stdenv.mkDerivation rec {
   name = "xf86-input-wacom-0.16.0";
@@ -10,8 +10,8 @@ stdenv.mkDerivation rec {
     sha256 = "0sc0hmbs3l3ad68iwglbwjv9lg1vd333n1lv72j4nqmk7g57yrii";
   };
 
-  buildInputs = [ inputproto libX11 libXext libXi libXrandr libXrender libXinerama
-    ncurses pkgconfig randrproto xorgserver xproto udev ];
+  buildInputs = [ inputproto libX11 libXext libXi libXrandr libXrender
+    ncurses pkgconfig randrproto xorgserver xproto udev libXinerama pixman ];
 
   preConfigure = ''
     mkdir -p $out/share/X11/xorg.conf.d
@@ -19,6 +19,8 @@ stdenv.mkDerivation rec {
     --with-sdkdir=$out/include/xorg --with-xorg-conf-dir=$out/share/X11/xorg.conf.d"
   '';
 
+  CFLAGS = "-I${pixman}/include/pixman-1";
+
   meta = with stdenv.lib; {
     maintainers = [ maintainers.goibhniu maintainers.urkud ];
     description = "Wacom digitizer driver for X11";
diff --git a/pkgs/os-specific/linux/zfs/default.nix b/pkgs/os-specific/linux/zfs/default.nix
new file mode 100644
index 000000000000..cbb8f30e1b32
--- /dev/null
+++ b/pkgs/os-specific/linux/zfs/default.nix
@@ -0,0 +1,53 @@
+{ stdenv, fetchurl, kernel, spl, perl, zlib, libuuid, coreutils, utillinux }:
+
+stdenv.mkDerivation {
+  name = "zfs-0.6.0-rc11";
+  src = fetchurl {
+    url = http://github.com/downloads/zfsonlinux/zfs/zfs-0.6.0-rc11.tar.gz;
+    sha256 = "0wx0srn2k31j9xdk3nvk7l847r0diyb7ph6hd006ax9l5p9zj0a7";
+  };
+
+  patches = [ ./module_perm_prefix.patch ./mount_zfs_prefix.patch ./kerneldir_path.patch ./no_absolute_paths_to_coreutils.patch ];
+
+  buildInputs = [ kernel spl perl zlib libuuid coreutils ];
+
+  NIX_CFLAGS_COMPILE = "-I${kernel}/lib/modules/${kernel.modDirVersion}/build/include/generated";
+
+  preConfigure = ''
+    substituteInPlace ./module/zfs/zfs_ctldir.c  --replace "umount -t zfs"   "${utillinux}/bin/umount -t zfs"
+    substituteInPlace ./module/zfs/zfs_ctldir.c  --replace "mount -t zfs"    "${utillinux}/bin/mount -t zfs"
+    substituteInPlace ./udev/rules.d/*           --replace "/lib/udev/vdev_id" "$out/lib/udev/vdev_id"
+  '';
+
+  configureFlags = ''
+    --with-linux=${kernel}/lib/modules/${kernel.version}/build 
+    --with-linux-obj=${kernel}/lib/modules/${kernel.version}/build 
+    --with-spl=${spl}/libexec/spl/${kernel.version}
+  '';
+
+  meta = {
+    description = "ZFS Filesystem Linux Kernel module";
+    longDescription = ''
+
+      ZFS is a filesystem that combines a logical volume manager with a
+      Copy-On-Write filesystem with data integrity detection and repair,
+      snapshotting, cloning, block devices, deduplication, and more. 
+
+      LICENSE NOTE: the Linux kernel is licensed under the GNU General Public
+      License which is incompatible with ZFS which is licensed under the Sun CDDL.
+      While both the GPL and CDDL are open source licenses their terms are such that
+      it is impossible to simultaneously satisfy both licenses. This means that a
+      single derived work of the Linux kernel and ZFS cannot be legally distributed.
+
+      The ZFS code can be modified to build as a CDDL licensed kernel module
+      which is not distributed as part of the Linux kernel. This makes a Native ZFS
+      on Linux implementation possible if you are willing to download and build it
+      yourself.
+      '';
+          
+    homepage = http://zfsonlinux.org/;
+    platforms = stdenv.lib.platforms.linux;
+    license = stdenv.lib.licenses.cddl;
+    maintainers = with stdenv.lib.maintainers; [ jcumming ];
+  };
+}
diff --git a/pkgs/os-specific/linux/zfs/kerneldir_path.patch b/pkgs/os-specific/linux/zfs/kerneldir_path.patch
new file mode 100644
index 000000000000..7deda946821b
--- /dev/null
+++ b/pkgs/os-specific/linux/zfs/kerneldir_path.patch
@@ -0,0 +1,140 @@
+diff -rc zfs-0.6.0-rc10.old/Makefile.in zfs-0.6.0-rc10/Makefile.in
+*** zfs-0.6.0-rc10.old/Makefile.in	Tue Aug 14 12:35:34 2012
+--- zfs-0.6.0-rc10/Makefile.in	Fri Aug 17 15:21:18 2012
+***************
+*** 1121,1127 ****
+  
+  @CONFIG_KERNEL_TRUE@install-data-local:
+  @CONFIG_KERNEL_TRUE@	release=$(ZFS_META_VERSION)-$(ZFS_META_RELEASE); \
+! @CONFIG_KERNEL_TRUE@	instdest=$(DESTDIR)/usr/src/zfs-$$release/$(LINUX_VERSION); \
+  @CONFIG_KERNEL_TRUE@	for instfile in $(noinst_HEADERS) module/$(LINUX_SYMBOLS); do \
+  @CONFIG_KERNEL_TRUE@		$(INSTALL) -D $$instfile $$instdest/$$instfile; \
+  @CONFIG_KERNEL_TRUE@	done
+--- 1121,1127 ----
+  
+  @CONFIG_KERNEL_TRUE@install-data-local:
+  @CONFIG_KERNEL_TRUE@	release=$(ZFS_META_VERSION)-$(ZFS_META_RELEASE); \
+! @CONFIG_KERNEL_TRUE@	instdest=$(DESTDIR)/@libexecdir@/zfs/$(LINUX_VERSION); \
+  @CONFIG_KERNEL_TRUE@	for instfile in $(noinst_HEADERS) module/$(LINUX_SYMBOLS); do \
+  @CONFIG_KERNEL_TRUE@		$(INSTALL) -D $$instfile $$instdest/$$instfile; \
+  @CONFIG_KERNEL_TRUE@	done
+diff -rc zfs-0.6.0-rc10.old/include/Makefile.in zfs-0.6.0-rc10/include/Makefile.in
+*** zfs-0.6.0-rc10.old/include/Makefile.in	Tue Aug 14 12:35:32 2012
+--- zfs-0.6.0-rc10/include/Makefile.in	Fri Aug 17 15:20:50 2012
+***************
+*** 402,408 ****
+  EXTRA_DIST = $(COMMON_H) $(KERNEL_H) $(USER_H)
+  @CONFIG_USER_TRUE@libzfsdir = $(includedir)/libzfs
+  @CONFIG_USER_TRUE@libzfs_HEADERS = $(COMMON_H) $(USER_H)
+! @CONFIG_KERNEL_TRUE@kerneldir = /usr/src/zfs-$(ZFS_META_VERSION)-$(ZFS_META_RELEASE)/$(LINUX_VERSION)
+  @CONFIG_KERNEL_TRUE@kernel_HEADERS = $(COMMON_H) $(KERNEL_H)
+  all: all-recursive
+  
+--- 402,408 ----
+  EXTRA_DIST = $(COMMON_H) $(KERNEL_H) $(USER_H)
+  @CONFIG_USER_TRUE@libzfsdir = $(includedir)/libzfs
+  @CONFIG_USER_TRUE@libzfs_HEADERS = $(COMMON_H) $(USER_H)
+! @CONFIG_KERNEL_TRUE@kerneldir = $(DESTDIR)/@libexecdir@/zfs/$(LINUX_VERSION)
+  @CONFIG_KERNEL_TRUE@kernel_HEADERS = $(COMMON_H) $(KERNEL_H)
+  all: all-recursive
+  
+diff -rc zfs-0.6.0-rc10.old/include/linux/Makefile.in zfs-0.6.0-rc10/include/linux/Makefile.in
+*** zfs-0.6.0-rc10.old/include/linux/Makefile.in	Tue Aug 14 12:35:32 2012
+--- zfs-0.6.0-rc10/include/linux/Makefile.in	Fri Aug 17 15:20:53 2012
+***************
+*** 337,343 ****
+  EXTRA_DIST = $(COMMON_H) $(KERNEL_H) $(USER_H)
+  @CONFIG_USER_TRUE@libzfsdir = $(includedir)/libzfs/linux
+  @CONFIG_USER_TRUE@libzfs_HEADERS = $(COMMON_H) $(USER_H)
+! @CONFIG_KERNEL_TRUE@kerneldir = /usr/src/zfs-$(ZFS_META_VERSION)-$(ZFS_META_RELEASE)/$(LINUX_VERSION)/linux
+  @CONFIG_KERNEL_TRUE@kernel_HEADERS = $(COMMON_H) $(KERNEL_H)
+  all: all-am
+  
+--- 337,343 ----
+  EXTRA_DIST = $(COMMON_H) $(KERNEL_H) $(USER_H)
+  @CONFIG_USER_TRUE@libzfsdir = $(includedir)/libzfs/linux
+  @CONFIG_USER_TRUE@libzfs_HEADERS = $(COMMON_H) $(USER_H)
+! @CONFIG_KERNEL_TRUE@kerneldir = $(DESTDIR)/@libexecdir@/zfs/$(LINUX_VERSION)/linux
+  @CONFIG_KERNEL_TRUE@kernel_HEADERS = $(COMMON_H) $(KERNEL_H)
+  all: all-am
+  
+diff -rc zfs-0.6.0-rc10.old/include/sys/Makefile.in zfs-0.6.0-rc10/include/sys/Makefile.in
+*** zfs-0.6.0-rc10.old/include/sys/Makefile.in	Tue Aug 14 12:35:32 2012
+--- zfs-0.6.0-rc10/include/sys/Makefile.in	Fri Aug 17 15:20:57 2012
+***************
+*** 590,596 ****
+  EXTRA_DIST = $(COMMON_H) $(KERNEL_H) $(USER_H)
+  @CONFIG_USER_TRUE@libzfsdir = $(includedir)/libzfs/sys
+  @CONFIG_USER_TRUE@libzfs_HEADERS = $(COMMON_H) $(USER_H)
+! @CONFIG_KERNEL_TRUE@kerneldir = /usr/src/zfs-$(ZFS_META_VERSION)-$(ZFS_META_RELEASE)/$(LINUX_VERSION)/sys
+  @CONFIG_KERNEL_TRUE@kernel_HEADERS = $(COMMON_H) $(KERNEL_H)
+  all: all-recursive
+  
+--- 590,596 ----
+  EXTRA_DIST = $(COMMON_H) $(KERNEL_H) $(USER_H)
+  @CONFIG_USER_TRUE@libzfsdir = $(includedir)/libzfs/sys
+  @CONFIG_USER_TRUE@libzfs_HEADERS = $(COMMON_H) $(USER_H)
+! @CONFIG_KERNEL_TRUE@kerneldir = $(DESTDIR)/@libexecdir@/zfs/$(LINUX_VERSION)/sys
+  @CONFIG_KERNEL_TRUE@kernel_HEADERS = $(COMMON_H) $(KERNEL_H)
+  all: all-recursive
+  
+diff -rc zfs-0.6.0-rc10.old/include/sys/fm/Makefile.in zfs-0.6.0-rc10/include/sys/fm/Makefile.in
+*** zfs-0.6.0-rc10.old/include/sys/fm/Makefile.in	Tue Aug 14 12:35:32 2012
+--- zfs-0.6.0-rc10/include/sys/fm/Makefile.in	Fri Aug 17 15:21:00 2012
+***************
+*** 374,380 ****
+  EXTRA_DIST = $(COMMON_H) $(KERNEL_H) $(USER_H)
+  @CONFIG_USER_TRUE@libzfsdir = $(includedir)/libzfs/sys/fm
+  @CONFIG_USER_TRUE@libzfs_HEADERS = $(COMMON_H) $(USER_H)
+! @CONFIG_KERNEL_TRUE@kerneldir = /usr/src/zfs-$(ZFS_META_VERSION)-$(ZFS_META_RELEASE)/$(LINUX_VERSION)/sys/fm
+  @CONFIG_KERNEL_TRUE@kernel_HEADERS = $(COMMON_H) $(KERNEL_H)
+  all: all-recursive
+  
+--- 374,380 ----
+  EXTRA_DIST = $(COMMON_H) $(KERNEL_H) $(USER_H)
+  @CONFIG_USER_TRUE@libzfsdir = $(includedir)/libzfs/sys/fm
+  @CONFIG_USER_TRUE@libzfs_HEADERS = $(COMMON_H) $(USER_H)
+! @CONFIG_KERNEL_TRUE@kerneldir = $(DESTDIR)/@libexecdir@/zfs/$(LINUX_VERSION)/sys/fm
+  @CONFIG_KERNEL_TRUE@kernel_HEADERS = $(COMMON_H) $(KERNEL_H)
+  all: all-recursive
+  
+diff -rc zfs-0.6.0-rc10.old/include/sys/fm/fs/Makefile.in zfs-0.6.0-rc10/include/sys/fm/fs/Makefile.in
+*** zfs-0.6.0-rc10.old/include/sys/fm/fs/Makefile.in	Tue Aug 14 12:35:32 2012
+--- zfs-0.6.0-rc10/include/sys/fm/fs/Makefile.in	Fri Aug 17 15:21:03 2012
+***************
+*** 332,338 ****
+  EXTRA_DIST = $(COMMON_H) $(KERNEL_H) $(USER_H)
+  @CONFIG_USER_TRUE@libzfsdir = $(includedir)/libzfs/sys/fm/fs
+  @CONFIG_USER_TRUE@libzfs_HEADERS = $(COMMON_H) $(USER_H)
+! @CONFIG_KERNEL_TRUE@kerneldir = /usr/src/zfs-$(ZFS_META_VERSION)-$(ZFS_META_RELEASE)/$(LINUX_VERSION)/sys/fm/fs
+  @CONFIG_KERNEL_TRUE@kernel_HEADERS = $(COMMON_H) $(KERNEL_H)
+  all: all-am
+  
+--- 332,338 ----
+  EXTRA_DIST = $(COMMON_H) $(KERNEL_H) $(USER_H)
+  @CONFIG_USER_TRUE@libzfsdir = $(includedir)/libzfs/sys/fm/fs
+  @CONFIG_USER_TRUE@libzfs_HEADERS = $(COMMON_H) $(USER_H)
+! @CONFIG_KERNEL_TRUE@kerneldir = $(DESTDIR)/@libexecdir@/zfs/$(LINUX_VERSION)/sys/fm/fs
+  @CONFIG_KERNEL_TRUE@kernel_HEADERS = $(COMMON_H) $(KERNEL_H)
+  all: all-am
+  
+diff -rc zfs-0.6.0-rc10.old/include/sys/fs/Makefile.in zfs-0.6.0-rc10/include/sys/fs/Makefile.in
+*** zfs-0.6.0-rc10.old/include/sys/fs/Makefile.in	Tue Aug 14 12:35:32 2012
+--- zfs-0.6.0-rc10/include/sys/fs/Makefile.in	Fri Aug 17 15:21:06 2012
+***************
+*** 332,338 ****
+  EXTRA_DIST = $(COMMON_H) $(KERNEL_H) $(USER_H)
+  @CONFIG_USER_TRUE@libzfsdir = $(includedir)/libzfs/sys/fs
+  @CONFIG_USER_TRUE@libzfs_HEADERS = $(COMMON_H) $(USER_H)
+! @CONFIG_KERNEL_TRUE@kerneldir = /usr/src/zfs-$(ZFS_META_VERSION)-$(ZFS_META_RELEASE)/$(LINUX_VERSION)/sys/fs
+  @CONFIG_KERNEL_TRUE@kernel_HEADERS = $(COMMON_H) $(KERNEL_H)
+  all: all-am
+  
+--- 332,338 ----
+  EXTRA_DIST = $(COMMON_H) $(KERNEL_H) $(USER_H)
+  @CONFIG_USER_TRUE@libzfsdir = $(includedir)/libzfs/sys/fs
+  @CONFIG_USER_TRUE@libzfs_HEADERS = $(COMMON_H) $(USER_H)
+! @CONFIG_KERNEL_TRUE@kerneldir = $(DESTDIR)/@libexecdir@/zfs/$(LINUX_VERSION)/sys/fs
+  @CONFIG_KERNEL_TRUE@kernel_HEADERS = $(COMMON_H) $(KERNEL_H)
+  all: all-am
+  
diff --git a/pkgs/os-specific/linux/zfs/module_perm_prefix.patch b/pkgs/os-specific/linux/zfs/module_perm_prefix.patch
new file mode 100644
index 000000000000..07cd04d1dded
--- /dev/null
+++ b/pkgs/os-specific/linux/zfs/module_perm_prefix.patch
@@ -0,0 +1,70 @@
+*** git-export/module/Makefile.in.orig	Wed Dec 31 16:00:01 1969
+--- git-export/module/Makefile.in	Tue Mar  6 00:23:07 2012
+***************
+*** 11,19 ****
+  	@# installed devel headers, or they may be in the module
+  	@# subdirectory when building against the spl source tree.
+  	@if [ -f @SPL_OBJ@/@SPL_SYMBOLS@ ]; then \
+! 		/bin/cp @SPL_OBJ@/@SPL_SYMBOLS@ .; \
+  	elif [ -f @SPL_OBJ@/module/@SPL_SYMBOLS@ ]; then \
+! 		/bin/cp @SPL_OBJ@/module/@SPL_SYMBOLS@ .; \
+  	else \
+  		echo -e "\n" \
+  		"*** Missing spl symbols ensure you have built the spl:\n" \
+--- 11,21 ----
+  	@# installed devel headers, or they may be in the module
+  	@# subdirectory when building against the spl source tree.
+  	@if [ -f @SPL_OBJ@/@SPL_SYMBOLS@ ]; then \
+! 		/bin/cp -f @SPL_OBJ@/@SPL_SYMBOLS@ .; \
+! 		chmod +w @SPL_SYMBOLS@ .; \
+  	elif [ -f @SPL_OBJ@/module/@SPL_SYMBOLS@ ]; then \
+! 		/bin/cp -f @SPL_OBJ@/module/@SPL_SYMBOLS@ .; \
+! 		chmod +w @SPL_SYMBOLS@ .; \
+  	else \
+  		echo -e "\n" \
+  		"*** Missing spl symbols ensure you have built the spl:\n" \
+***************
+*** 35,55 ****
+  modules_install:
+  	@# Install the kernel modules
+  	$(MAKE) -C @LINUX_OBJ@ SUBDIRS=`pwd` \
+! 		INSTALL_MOD_PATH=$(DESTDIR) \
+  		INSTALL_MOD_DIR=addon/zfs $@
+  	@# Remove extraneous build products when packaging
+! 	if [ -n "$(DESTDIR)" ]; then \
+! 		find $(DESTDIR)/lib/modules/@LINUX_VERSION@ \
+  			-name 'modules.*' | xargs $(RM); \
+  	fi
+! 	sysmap=$(DESTDIR)/boot/System.map-@LINUX_VERSION@; \
+  	if [ -f $$sysmap ]; then \
+  		depmod -ae -F $$sysmap @LINUX_VERSION@; \
+  	fi
+  
+  modules_uninstall:
+  	@# Uninstall the kernel modules
+! 	$(RM) -R $(DESTDIR)/lib/modules/@LINUX_VERSION@/addon/zfs
+  
+  distdir:
+  
+--- 37,57 ----
+  modules_install:
+  	@# Install the kernel modules
+  	$(MAKE) -C @LINUX_OBJ@ SUBDIRS=`pwd` \
+! 		INSTALL_MOD_PATH=@prefix@ \
+  		INSTALL_MOD_DIR=addon/zfs $@
+  	@# Remove extraneous build products when packaging
+! 	if [ -n "@prefix@" ]; then \
+! 		find @prefix@/lib/modules/@LINUX_VERSION@ \
+  			-name 'modules.*' | xargs $(RM); \
+  	fi
+! 	sysmap=@prefix@/boot/System.map-@LINUX_VERSION@; \
+  	if [ -f $$sysmap ]; then \
+  		depmod -ae -F $$sysmap @LINUX_VERSION@; \
+  	fi
+  
+  modules_uninstall:
+  	@# Uninstall the kernel modules
+! 	$(RM) -R @prefix@/lib/modules/@LINUX_VERSION@/addon/zfs
+  
+  distdir:
+  
diff --git a/pkgs/os-specific/linux/zfs/mount_zfs_prefix.patch b/pkgs/os-specific/linux/zfs/mount_zfs_prefix.patch
new file mode 100644
index 000000000000..94710c5c9854
--- /dev/null
+++ b/pkgs/os-specific/linux/zfs/mount_zfs_prefix.patch
@@ -0,0 +1,24 @@
+*** zfs-0.6.0-rc4.old/cmd/mount_zfs/Makefile.in	Thu May  5 15:12:25 2011
+--- zfs-0.6.0-rc4/cmd/mount_zfs/Makefile.in	Fri Jun  3 16:42:41 2011
+***************
+*** 285,296 ****
+  prefix = @prefix@
+  program_transform_name = @program_transform_name@
+  psdir = @psdir@
+! 
+! #
+! # Ignore the prefix for the mount helper.  It must be installed in /sbin/
+! # because this path is hardcoded in the mount(8) for security reasons.
+! #
+! sbindir = /sbin
+  sharedstatedir = @sharedstatedir@
+  srcdir = @srcdir@
+  sysconfdir = @sysconfdir@
+--- 285,291 ----
+  prefix = @prefix@
+  program_transform_name = @program_transform_name@
+  psdir = @psdir@
+! sbindir = @sbindir@
+  sharedstatedir = @sharedstatedir@
+  srcdir = @srcdir@
+  sysconfdir = @sysconfdir@
diff --git a/pkgs/os-specific/linux/zfs/no_absolute_paths_to_coreutils.patch b/pkgs/os-specific/linux/zfs/no_absolute_paths_to_coreutils.patch
new file mode 100644
index 000000000000..e223e34c3a43
--- /dev/null
+++ b/pkgs/os-specific/linux/zfs/no_absolute_paths_to_coreutils.patch
@@ -0,0 +1,25 @@
+*** git-export/module/Makefile.in.old	Tue Mar  6 01:04:48 2012
+--- git-export/module/Makefile.in	Tue Mar  6 01:04:59 2012
+***************
+*** 11,20 ****
+  	@# installed devel headers, or they may be in the module
+  	@# subdirectory when building against the spl source tree.
+  	@if [ -f @SPL_OBJ@/@SPL_SYMBOLS@ ]; then \
+! 		/bin/cp -f @SPL_OBJ@/@SPL_SYMBOLS@ .; \
+  		chmod +w @SPL_SYMBOLS@ .; \
+  	elif [ -f @SPL_OBJ@/module/@SPL_SYMBOLS@ ]; then \
+! 		/bin/cp -f @SPL_OBJ@/module/@SPL_SYMBOLS@ .; \
+  		chmod +w @SPL_SYMBOLS@ .; \
+  	else \
+  		echo -e "\n" \
+--- 11,20 ----
+  	@# installed devel headers, or they may be in the module
+  	@# subdirectory when building against the spl source tree.
+  	@if [ -f @SPL_OBJ@/@SPL_SYMBOLS@ ]; then \
+! 		cp -f @SPL_OBJ@/@SPL_SYMBOLS@ .; \
+  		chmod +w @SPL_SYMBOLS@ .; \
+  	elif [ -f @SPL_OBJ@/module/@SPL_SYMBOLS@ ]; then \
+! 		cp -f @SPL_OBJ@/module/@SPL_SYMBOLS@ .; \
+  		chmod +w @SPL_SYMBOLS@ .; \
+  	else \
+  		echo -e "\n" \
diff --git a/pkgs/servers/dns/bind/default.nix b/pkgs/servers/dns/bind/default.nix
index cdd8704739b6..54fa398a8e9a 100644
--- a/pkgs/servers/dns/bind/default.nix
+++ b/pkgs/servers/dns/bind/default.nix
@@ -1,15 +1,14 @@
 { stdenv, fetchurl, openssl, libtool, perl, libxml2 }:
 
-let
-  version = "9.7.6-P1";
-in
+let version = "9.9.2"; in
+
 stdenv.mkDerivation rec {
 
   name = "bind-${version}";
 
   src = fetchurl {
     url = "http://ftp.isc.org/isc/bind9/${version}/${name}.tar.gz";
-    sha256 = "1xp7c3fpi3b6y1bz77mf7c98ic7rxp5lpwlmzqwsdrllip33qw1k";
+    sha256 = "0j4v01ch4xkgnsnngmh6bpapzi53n4k79gbbhmxf44nmk2qk0rby";
   };
 
   patchPhase = ''
@@ -21,7 +20,7 @@ stdenv.mkDerivation rec {
   /* Why --with-libtool? */
   configureFlags = [ "--with-libtool" "--with-openssl=${openssl}"
     "--localstatedir=/var" ];
-      
+
   meta = {
     homepage = http://www.isc.org/software/bind;
     description = "ISC BIND: a domain name server";
diff --git a/pkgs/servers/http/apache-httpd/2.2.nix b/pkgs/servers/http/apache-httpd/2.2.nix
index f2a21ee28be2..d4def35c09f1 100644
--- a/pkgs/servers/http/apache-httpd/2.2.nix
+++ b/pkgs/servers/http/apache-httpd/2.2.nix
@@ -12,12 +12,12 @@ assert ldapSupport -> aprutil.ldapSupport && openldap != null;
 assert mpm == "prefork" || mpm == "worker" || mpm == "event";
 
 stdenv.mkDerivation rec {
-  version = "2.2.22";
+  version = "2.2.23";
   name = "apache-httpd-${version}";
 
   src = fetchurl {
     url = "mirror://apache/httpd/httpd-${version}.tar.bz2";
-    sha1 = "766cd0843050a8dfb781e48b976f3ba6ebcf8696";
+    sha1 = "2776145201068045d4ed83157a0e2e1c28c4c453";
   };
 
   buildInputs = [perl apr aprutil pcre] ++
diff --git a/pkgs/servers/http/apache-httpd/2.4.nix b/pkgs/servers/http/apache-httpd/2.4.nix
index 44fa145b6059..507ced85998a 100644
--- a/pkgs/servers/http/apache-httpd/2.4.nix
+++ b/pkgs/servers/http/apache-httpd/2.4.nix
@@ -24,7 +24,7 @@ stdenv.mkDerivation rec {
 
   buildInputs = [perl] ++
     optional ldapSupport openldap ++    # there is no --with-ldap flag
-    optional libxml2Support libxml2;    # there is --with-libxml2, but it doesn't work
+    optional libxml2Support libxml2;
 
   # Required for ‘pthread_cancel’.
   NIX_LDFLAGS = "-lgcc_s";
@@ -38,9 +38,13 @@ stdenv.mkDerivation rec {
     --disable-debugger-mode
     --enable-mods-shared=all
     --enable-mpms-shared=all
+    --enable-cern-meta
+    --enable-imagemap
+    --enable-cgi
     ${optionalString proxySupport "--enable-proxy"}
     ${optionalString sslSupport "--enable-ssl --with-ssl=${openssl}"}
     ${optionalString luaSupport "--enable-lua --with-lua=${lua5}"}
+    ${optionalString libxml2Support "--with-libxml2=${libxml2}/include/libxml2"}
   '';
 
   postInstall = ''
diff --git a/pkgs/servers/http/nginx/default.nix b/pkgs/servers/http/nginx/default.nix
index 4a1c0be649ff..5c0b1c2d7233 100644
--- a/pkgs/servers/http/nginx/default.nix
+++ b/pkgs/servers/http/nginx/default.nix
@@ -1,10 +1,13 @@
 { stdenv, fetchurl, openssl, zlib, pcre, libxml2, libxslt }:
+
 stdenv.mkDerivation rec {
-  name = "nginx-1.1.7";
+  name = "nginx-1.2.4";
+
   src = fetchurl {
     url = "http://nginx.org/download/${name}.tar.gz";
-    sha256 = "1y0bzmrgnyqw8ghc508nipy5k46byrxc2sycqp35fdx0jmjz3h51";
+    sha256 = "0hvcv4lgfcrsl40azkd3rxhf73l05jzzgflclpkdvjd95xgw51y5";
   };
+
   buildInputs = [ openssl zlib pcre libxml2 libxslt ];
 
   configureFlags = [
@@ -15,7 +18,7 @@ stdenv.mkDerivation rec {
     "--with-http_gzip_static_module"
     "--with-http_secure_link_module"
     # Install destination problems
-    # "--with-http_perl_module" 
+    # "--with-http_perl_module"
   ];
 
   preConfigure = ''
@@ -27,11 +30,8 @@ stdenv.mkDerivation rec {
   '';
 
   meta = {
-    description = "nginx - 'engine x' - reverse proxy and lightweight webserver";
-    maintainers = [
-      stdenv.lib.maintainers.raskin
-    ];
-    platforms = with stdenv.lib.platforms; 
-      all;
+    description = "A reverse proxy and lightweight webserver";
+    maintainers = [ stdenv.lib.maintainers.raskin];
+    platforms = stdenv.lib.platforms.all;
   };
 }
diff --git a/pkgs/servers/mail/spamassassin/default.nix b/pkgs/servers/mail/spamassassin/default.nix
index 0e623f7ac040..dc316267e6cc 100644
--- a/pkgs/servers/mail/spamassassin/default.nix
+++ b/pkgs/servers/mail/spamassassin/default.nix
@@ -1,5 +1,5 @@
 { stdenv, fetchurl, buildPerlPackage, perl, HTMLParser, NetDNS, NetAddrIP, DBFile
-, HTTPDate, MailDKIM, LWP, IOSocketSSL, IOSocketInet6, makeWrapper, gnupg1
+, HTTPDate, MailDKIM, LWP, IOSocketSSL, makeWrapper, gnupg1
 }:
 
 # TODO: Add the Perl modules ...
@@ -21,7 +21,7 @@ buildPerlPackage rec {
   };
 
   buildInputs = [ makeWrapper HTMLParser NetDNS NetAddrIP DBFile HTTPDate MailDKIM
-    LWP IOSocketSSL IOSocketInet6 ];
+    LWP IOSocketSSL ];
 
   # Enabling 'taint' mode is desirable, but that flag disables support
   # for the PERL5LIB environment variable. Needs further investigation.
diff --git a/pkgs/servers/samba/default.nix b/pkgs/servers/samba/default.nix
index 7a73a0417982..08c53182dd5d 100644
--- a/pkgs/servers/samba/default.nix
+++ b/pkgs/servers/samba/default.nix
@@ -18,11 +18,11 @@
 assert useKerberos -> kerberos != null;
 
 stdenv.mkDerivation rec {
-  name = "samba-3.6.7";
+  name = "samba-3.6.8";
 
   src = fetchurl {
     url = "http://us3.samba.org/samba/ftp/stable/${name}.tar.gz";
-    sha256 = "1jnl9v6axz30ymh6in1fwan7zjy9n5n7x70vi1afazxs27qa0n5q";
+    sha256 = "1phl6mmrc72jyvbyrw6cv6b92cxq3v2pbn1fh97nnb4hild1fnjg";
   };
 
   patches =
@@ -38,7 +38,7 @@ stdenv.mkDerivation rec {
   postPatch =
     # XXX: Awful hack to allow cross-compilation.
     '' sed -i source3/configure \
-           -e 's/^as_fn_error \("cannot run test program while cross compiling\)/$as_echo \1/g'
+           -e 's/^as_fn_error .. \("cannot run test program while cross compiling\)/$as_echo \1/g'
     ''; # "
 
   preConfigure =
@@ -68,7 +68,7 @@ stdenv.mkDerivation rec {
     ''
       mkdir -p $out
       mv $TMPDIR/inst/$out/* $out/
-  
+
       mkdir -pv $out/lib/cups/backend
       ln -sv ../../../bin/smbspool $out/lib/cups/backend/smb
       mkdir -pv $out/etc/openldap/schema
diff --git a/pkgs/servers/sql/mysql/jdbc/default.nix b/pkgs/servers/sql/mysql/jdbc/default.nix
index 0f411b43f9f0..07c4d6a0aba7 100644
--- a/pkgs/servers/sql/mysql/jdbc/default.nix
+++ b/pkgs/servers/sql/mysql/jdbc/default.nix
@@ -1,12 +1,12 @@
 {stdenv, fetchurl, ant, unzip}:
 
 stdenv.mkDerivation {
-  name = "mysql-connector-java-5.1.17";
+  name = "mysql-connector-java-5.1.22";
   builder = ./builder.sh;
 
   src = fetchurl {
-    url = ftp://mirror.leaseweb.com/mysql/Downloads/Connector-J/mysql-connector-java-5.1.17.zip;
-    sha256 = "1c4hsx0qwb3rp66a1dllnah2zi9gqqnr4aqm9p59yrqj5jr22ldp";
+    url = http://cdn.mysql.com/Downloads/Connector-J/mysql-connector-java-5.1.22.zip;
+    sha256 = "0hfx1znq0iqclkc8visca7x67lvlk3cswni69ghi2c5cpa2d4ijm";
   };
 
   buildInputs = [ unzip ant ];
diff --git a/pkgs/servers/sql/mysql55/default.nix b/pkgs/servers/sql/mysql55/default.nix
index 3f26ea1f98bf..a5f588f747da 100644
--- a/pkgs/servers/sql/mysql55/default.nix
+++ b/pkgs/servers/sql/mysql55/default.nix
@@ -2,16 +2,23 @@
 
 # Note: zlib is not required; MySQL can use an internal zlib.
 
-stdenv.mkDerivation {
-  name = "mysql-5.5.23";
+stdenv.mkDerivation rec {
+  name = "mysql-${version}";
+  version = "5.5.28";
 
   src = fetchurl {
-    url = ftp://ftp.inria.fr/pub/MySQL/Downloads/MySQL-5.5/mysql-5.5.23.tar.gz;
-    sha256 = "0sklcz6miff7nb6bi1pqncgjv819255y7if6jxcqgiqs50z319i0";
+    urls = [
+      "mirror://sourceforge/mysql.mirror/${name}.tar.gz"
+      "http://mysql.linux.cz/Downloads/MySQL-5.5/${name}.tar.gz"
+      "http://ftp.gwdg.de/pub/misc/mysql/Downloads/MySQL-5.5/${name}.tar.gz"
+    ];
+    sha256 = "13y7bhjmx4daidvyqjz88yffbswb6rc1khkmiqm896fx3lglkcpr";
   };
 
   buildInputs = [ cmake bison ncurses openssl readline zlib ];
 
+  enableParallelBuilding = true;
+
   cmakeFlags = "-DWITH_SSL=yes -DWITH_READLINE=yes -DWITH_EMBEDDED_SERVER=yes -DWITH_ZLIB=yes -DINSTALL_SCRIPTDIR=bin -DHAVE_IPV6=yes";
   
   NIX_LDFLAGS = stdenv.lib.optionalString stdenv.isLinux "-lgcc_s";
diff --git a/pkgs/servers/sql/postgresql/8.3.x.nix b/pkgs/servers/sql/postgresql/8.3.x.nix
index d4ddb36d4feb..7a153187cd5c 100644
--- a/pkgs/servers/sql/postgresql/8.3.x.nix
+++ b/pkgs/servers/sql/postgresql/8.3.x.nix
@@ -1,13 +1,13 @@
 { stdenv, fetchurl, zlib, ncurses, readline }:
 
-let version = "8.3.20"; in
+let version = "8.3.21"; in
 
 stdenv.mkDerivation rec {
   name = "postgresql-${version}";
 
   src = fetchurl {
     url = "mirror://postgresql/source/v${version}/${name}.tar.bz2";
-    sha256 = "0qqic4wx59lgbyfmdfcgip9nrcpk10zdb91bw9b96wr1vijn2awj";
+    sha256 = "1y1lw83jr3v91920xdhd4ypaa5iazmdh4snl5qzq0yq6z3lnsjx6";
   };
 
   buildInputs = [ zlib ncurses readline ];
diff --git a/pkgs/servers/sql/postgresql/8.4.x.nix b/pkgs/servers/sql/postgresql/8.4.x.nix
index e1150543f362..3500299b50d8 100644
--- a/pkgs/servers/sql/postgresql/8.4.x.nix
+++ b/pkgs/servers/sql/postgresql/8.4.x.nix
@@ -1,13 +1,13 @@
 { stdenv, fetchurl, zlib, ncurses, readline }:
 
-let version = "8.4.13"; in
+let version = "8.4.14"; in
 
 stdenv.mkDerivation rec {
   name = "postgresql-${version}";
 
   src = fetchurl {
     url = "mirror://postgresql/source/v${version}/${name}.tar.bz2";
-    sha256 = "1fccqkni64vg1pi4zzcl67bm9g2brrlzjn1vh6qlyfpsld139p90";
+    sha256 = "0fhk3mmk95p5gwmg2skqv1rfi7ylk8gw195hx8rska7fbdryfwhi";
   };
 
   buildInputs = [ zlib ncurses readline ];
diff --git a/pkgs/servers/sql/postgresql/9.0.x.nix b/pkgs/servers/sql/postgresql/9.0.x.nix
index a28e5c337791..9993732ebcd6 100644
--- a/pkgs/servers/sql/postgresql/9.0.x.nix
+++ b/pkgs/servers/sql/postgresql/9.0.x.nix
@@ -1,13 +1,13 @@
 { stdenv, fetchurl, zlib, readline }:
 
-let version = "9.0.9"; in
+let version = "9.0.10"; in
 
 stdenv.mkDerivation rec {
   name = "postgresql-${version}";
 
   src = fetchurl {
     url = "mirror://postgresql/source/v${version}/${name}.tar.bz2";
-    sha256 = "12nslml1mg3lyvrhmdvv5g15n7vj5fk1blx1dfllylqg38c7shc7";
+    sha256 = "0af7in1fp4qxkvzbipz74gxm06x31a9n4z9g91mcis4r015ii523";
   };
 
   buildInputs = [ zlib readline ];
diff --git a/pkgs/servers/sql/postgresql/9.1.x.nix b/pkgs/servers/sql/postgresql/9.1.x.nix
index 14488d4649e0..c8fa9327cf36 100644
--- a/pkgs/servers/sql/postgresql/9.1.x.nix
+++ b/pkgs/servers/sql/postgresql/9.1.x.nix
@@ -1,13 +1,13 @@
 { stdenv, fetchurl, zlib, readline }:
 
-let version = "9.1.5"; in
+let version = "9.1.6"; in
 
 stdenv.mkDerivation rec {
   name = "postgresql-${version}";
 
   src = fetchurl {
     url = "mirror://postgresql/source/v${version}/${name}.tar.bz2";
-    sha256 = "0i6fssldjp65xfxz9dcmkhz6bk4rpw9g26zbqbc6iz164h9rr20b";
+    sha256 = "1rridkybr55xw4a1h0ppqwv2x2ffwvmpjai9yzsvk58scb56lfbf";
   };
 
   buildInputs = [ zlib readline ];
diff --git a/pkgs/servers/sql/postgresql/psqlodbc/default.nix b/pkgs/servers/sql/postgresql/psqlodbc/default.nix
new file mode 100644
index 000000000000..ce57c2141834
--- /dev/null
+++ b/pkgs/servers/sql/postgresql/psqlodbc/default.nix
@@ -0,0 +1,20 @@
+{ stdenv, fetchurl, libiodbc, postgresql, openssl }:
+
+stdenv.mkDerivation rec {
+  name = "psqlodbc-09.01.0200";
+
+  src = fetchurl {
+    url = "http://ftp.postgresql.org/pub/odbc/versions/src/${name}.tar.gz";
+    sha256 = "0b4w1ahfpp34jpscfk2kv9050lh3xl9pvcysqvaigkcd0vsk1hl9";
+  };
+
+  buildInputs = [ libiodbc postgresql openssl ];
+
+  configureFlags = "--with-iodbc=${libiodbc}";
+
+  meta = {
+    homepage = http://psqlodbc.projects.postgresql.org/;
+    description = "ODBC driver for PostgreSQL";
+    license = "LGPL";
+  };
+}
diff --git a/pkgs/servers/squid/squids.nix b/pkgs/servers/squid/squids.nix
index 3e5e4ebbe6f4..b349ab617acd 100644
--- a/pkgs/servers/squid/squids.nix
+++ b/pkgs/servers/squid/squids.nix
@@ -30,16 +30,16 @@ rec {
     configureFlags = ["--enable-ipv6"];
   };
 
-  squid32Beta = squid30.merge rec {
-    name = "squid-3.2.0.16";
+  squid32 = squid30.merge rec {
+    name = "squid-3.2.2";
     src = args.fetchurl {
       url = "http://www.squid-cache.org/Versions/v3/3.2/${name}.tar.bz2";
-      sha256 = "2431f4f9372e4e1a9c5fca5a4fa0c4bb0761ce3e044642ea9362bb1580a36d25";
+      sha256 = "13jlx3d6rqq7ajxs8bgn8a0mh932jhq6aa8032q205nxnhqs0l4l";
     };
     configureFlags = ["--enable-ipv6"];
     buildInputs = [openldap pam db4 cyrus_sasl libcap expat libxml2
       libtool openssl];
   };
 
-  latest = squid32Beta;
+  latest = squid32;
 }
diff --git a/pkgs/servers/x11/xorg/default.nix b/pkgs/servers/x11/xorg/default.nix
index 4fbc6fbdfda8..8508f87e043f 100644
--- a/pkgs/servers/x11/xorg/default.nix
+++ b/pkgs/servers/x11/xorg/default.nix
@@ -8,11 +8,11 @@ let
   xorg = rec {
 
   applewmproto = (stdenv.mkDerivation ((if overrides ? applewmproto then overrides.applewmproto else x: x) {
-    name = "applewmproto-1.4.1";
+    name = "applewmproto-1.4.2";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/applewmproto-1.4.1.tar.bz2;
-      sha256 = "06fyixmx36qac2qqwmra3l9xr570rankm9kzmk0mgqyhgldrw1h8";
+      url = mirror://xorg/X11R7.7/src/everything/applewmproto-1.4.2.tar.bz2;
+      sha256 = "1zi4p07mp6jmk030p4gmglwxcwp0lzs5mi31y1b4rp8lsqxdxizw";
     };
     buildInputs = [pkgconfig ];
   })) // {inherit ;};
@@ -21,18 +21,18 @@ let
     name = "bdftopcf-1.0.3";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/bdftopcf-1.0.3.tar.bz2;
+      url = mirror://xorg/X11R7.7/src/everything/bdftopcf-1.0.3.tar.bz2;
       sha256 = "02hx981f7jfwylxj21s91yvv4h597nqqzz3vd6ar81zyn84b944w";
     };
     buildInputs = [pkgconfig libXfont ];
   })) // {inherit libXfont ;};
     
   bigreqsproto = (stdenv.mkDerivation ((if overrides ? bigreqsproto then overrides.bigreqsproto else x: x) {
-    name = "bigreqsproto-1.1.1";
+    name = "bigreqsproto-1.1.2";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/bigreqsproto-1.1.1.tar.bz2;
-      sha256 = "16phzxa55lr749rghpaa699h1lcpndmw7izxzgl1bljq5f3qafqw";
+      url = mirror://xorg/X11R7.7/src/everything/bigreqsproto-1.1.2.tar.bz2;
+      sha256 = "07hvfm84scz8zjw14riiln2v4w03jlhp756ypwhq27g48jmic8a6";
     };
     buildInputs = [pkgconfig ];
   })) // {inherit ;};
@@ -41,7 +41,7 @@ let
     name = "compositeproto-0.4.2";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/compositeproto-0.4.2.tar.bz2;
+      url = mirror://xorg/X11R7.7/src/everything/compositeproto-0.4.2.tar.bz2;
       sha256 = "1z0crmf669hirw4s7972mmp8xig80kfndja9h559haqbpvq5k4q4";
     };
     buildInputs = [pkgconfig ];
@@ -51,7 +51,7 @@ let
     name = "damageproto-1.2.1";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/damageproto-1.2.1.tar.bz2;
+      url = mirror://xorg/X11R7.7/src/everything/damageproto-1.2.1.tar.bz2;
       sha256 = "0nzwr5pv9hg7c21n995pdiv0zqhs91yz3r8rn3aska4ykcp12z2w";
     };
     buildInputs = [pkgconfig ];
@@ -61,18 +61,18 @@ let
     name = "dmxproto-2.3.1";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/individual/proto/dmxproto-2.3.1.tar.bz2;
+      url = mirror://xorg/X11R7.7/src/everything/dmxproto-2.3.1.tar.bz2;
       sha256 = "02b5x9dkgajizm8dqyx2w6hmqx3v25l67mgf35nj6sz0lgk52877";
     };
     buildInputs = [pkgconfig ];
   })) // {inherit ;};
     
   dri2proto = (stdenv.mkDerivation ((if overrides ? dri2proto then overrides.dri2proto else x: x) {
-    name = "dri2proto-2.6";
+    name = "dri2proto-2.8";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/individual/proto/dri2proto-2.6.tar.bz2;
-      sha256 = "02drlfqvjm2q7dvkkwli3fs2crb6rdb3kyd13vwx7z0rijrc10md";
+      url = mirror://xorg/individual/proto/dri2proto-2.8.tar.bz2;
+      sha256 = "015az1vfdqmil1yay5nlsmpf6cf7vcbpslxjb72cfkzlvrv59dgr";
     };
     buildInputs = [pkgconfig ];
   })) // {inherit ;};
@@ -81,18 +81,18 @@ let
     name = "encodings-1.0.4";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/encodings-1.0.4.tar.bz2;
+      url = mirror://xorg/X11R7.7/src/everything/encodings-1.0.4.tar.bz2;
       sha256 = "0ffmaw80vmfwdgvdkp6495xgsqszb6s0iira5j0j6pd4i0lk3mnf";
     };
     buildInputs = [pkgconfig ];
   })) // {inherit ;};
     
   fixesproto = (stdenv.mkDerivation ((if overrides ? fixesproto then overrides.fixesproto else x: x) {
-    name = "fixesproto-4.1.2";
+    name = "fixesproto-5.0";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/fixesproto-4.1.2.tar.bz2;
-      sha256 = "0mzq8kh1v1w2mrl4y82qzgv8jzlr3n4jmss56h3r1h9knp6byk6y";
+      url = mirror://xorg/X11R7.7/src/everything/fixesproto-5.0.tar.bz2;
+      sha256 = "1ki4wiq2iivx5g4w5ckzbjbap759kfqd72yg18m3zpbb4hqkybxs";
     };
     buildInputs = [pkgconfig xextproto ];
   })) // {inherit xextproto ;};
@@ -101,47 +101,47 @@ let
     name = "font-adobe-100dpi-1.0.3";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/font-adobe-100dpi-1.0.3.tar.bz2;
+      url = mirror://xorg/X11R7.7/src/everything/font-adobe-100dpi-1.0.3.tar.bz2;
       sha256 = "0m60f5bd0caambrk8ksknb5dks7wzsg7g7xaf0j21jxmx8rq9h5j";
     };
-    buildInputs = [pkgconfig bdftopcf fontutil mkfontdir ]; configureFlags = "--with-fontrootdir=$(out)/lib/X11/fonts"; 
-  })) // {inherit bdftopcf fontutil mkfontdir ;};
+    buildInputs = [pkgconfig bdftopcf fontutil mkfontdir mkfontscale ]; configureFlags = "--with-fontrootdir=$(out)/lib/X11/fonts"; 
+  })) // {inherit bdftopcf fontutil mkfontdir mkfontscale ;};
     
   fontadobe75dpi = (stdenv.mkDerivation ((if overrides ? fontadobe75dpi then overrides.fontadobe75dpi else x: x) {
     name = "font-adobe-75dpi-1.0.3";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/font-adobe-75dpi-1.0.3.tar.bz2;
+      url = mirror://xorg/X11R7.7/src/everything/font-adobe-75dpi-1.0.3.tar.bz2;
       sha256 = "02advcv9lyxpvrjv8bjh1b797lzg6jvhipclz49z8r8y98g4l0n6";
     };
-    buildInputs = [pkgconfig bdftopcf fontutil mkfontdir ]; configureFlags = "--with-fontrootdir=$(out)/lib/X11/fonts"; 
-  })) // {inherit bdftopcf fontutil mkfontdir ;};
+    buildInputs = [pkgconfig bdftopcf fontutil mkfontdir mkfontscale ]; configureFlags = "--with-fontrootdir=$(out)/lib/X11/fonts"; 
+  })) // {inherit bdftopcf fontutil mkfontdir mkfontscale ;};
     
   fontadobeutopia100dpi = (stdenv.mkDerivation ((if overrides ? fontadobeutopia100dpi then overrides.fontadobeutopia100dpi else x: x) {
     name = "font-adobe-utopia-100dpi-1.0.4";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/font-adobe-utopia-100dpi-1.0.4.tar.bz2;
+      url = mirror://xorg/X11R7.7/src/everything/font-adobe-utopia-100dpi-1.0.4.tar.bz2;
       sha256 = "19dd9znam1ah72jmdh7i6ny2ss2r6m21z9v0l43xvikw48zmwvyi";
     };
-    buildInputs = [pkgconfig bdftopcf fontutil mkfontdir ]; configureFlags = "--with-fontrootdir=$(out)/lib/X11/fonts"; 
-  })) // {inherit bdftopcf fontutil mkfontdir ;};
+    buildInputs = [pkgconfig bdftopcf fontutil mkfontdir mkfontscale ]; configureFlags = "--with-fontrootdir=$(out)/lib/X11/fonts"; 
+  })) // {inherit bdftopcf fontutil mkfontdir mkfontscale ;};
     
   fontadobeutopia75dpi = (stdenv.mkDerivation ((if overrides ? fontadobeutopia75dpi then overrides.fontadobeutopia75dpi else x: x) {
     name = "font-adobe-utopia-75dpi-1.0.4";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/font-adobe-utopia-75dpi-1.0.4.tar.bz2;
+      url = mirror://xorg/X11R7.7/src/everything/font-adobe-utopia-75dpi-1.0.4.tar.bz2;
       sha256 = "152wigpph5wvl4k9m3l4mchxxisgsnzlx033mn5iqrpkc6f72cl7";
     };
-    buildInputs = [pkgconfig bdftopcf fontutil mkfontdir ]; configureFlags = "--with-fontrootdir=$(out)/lib/X11/fonts"; 
-  })) // {inherit bdftopcf fontutil mkfontdir ;};
+    buildInputs = [pkgconfig bdftopcf fontutil mkfontdir mkfontscale ]; configureFlags = "--with-fontrootdir=$(out)/lib/X11/fonts"; 
+  })) // {inherit bdftopcf fontutil mkfontdir mkfontscale ;};
     
   fontadobeutopiatype1 = (stdenv.mkDerivation ((if overrides ? fontadobeutopiatype1 then overrides.fontadobeutopiatype1 else x: x) {
     name = "font-adobe-utopia-type1-1.0.4";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/font-adobe-utopia-type1-1.0.4.tar.bz2;
+      url = mirror://xorg/X11R7.7/src/everything/font-adobe-utopia-type1-1.0.4.tar.bz2;
       sha256 = "0xw0pdnzj5jljsbbhakc6q9ha2qnca1jr81zk7w70yl9bw83b54p";
     };
     buildInputs = [pkgconfig mkfontdir mkfontscale ]; configureFlags = "--with-fontrootdir=$(out)/lib/X11/fonts"; 
@@ -151,7 +151,7 @@ let
     name = "font-alias-1.0.3";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/font-alias-1.0.3.tar.bz2;
+      url = mirror://xorg/X11R7.7/src/everything/font-alias-1.0.3.tar.bz2;
       sha256 = "16ic8wfwwr3jicaml7b5a0sk6plcgc1kg84w02881yhwmqm3nicb";
     };
     buildInputs = [pkgconfig ];
@@ -161,7 +161,7 @@ let
     name = "font-arabic-misc-1.0.3";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/font-arabic-misc-1.0.3.tar.bz2;
+      url = mirror://xorg/X11R7.7/src/everything/font-arabic-misc-1.0.3.tar.bz2;
       sha256 = "1x246dfnxnmflzf0qzy62k8jdpkb6jkgspcjgbk8jcq9lw99npah";
     };
     buildInputs = [pkgconfig bdftopcf mkfontdir ]; configureFlags = "--with-fontrootdir=$(out)/lib/X11/fonts"; 
@@ -171,47 +171,47 @@ let
     name = "font-bh-100dpi-1.0.3";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/font-bh-100dpi-1.0.3.tar.bz2;
+      url = mirror://xorg/X11R7.7/src/everything/font-bh-100dpi-1.0.3.tar.bz2;
       sha256 = "10cl4gm38dw68jzln99ijix730y7cbx8np096gmpjjwff1i73h13";
     };
-    buildInputs = [pkgconfig bdftopcf fontutil mkfontdir ]; configureFlags = "--with-fontrootdir=$(out)/lib/X11/fonts"; 
-  })) // {inherit bdftopcf fontutil mkfontdir ;};
+    buildInputs = [pkgconfig bdftopcf fontutil mkfontdir mkfontscale ]; configureFlags = "--with-fontrootdir=$(out)/lib/X11/fonts"; 
+  })) // {inherit bdftopcf fontutil mkfontdir mkfontscale ;};
     
   fontbh75dpi = (stdenv.mkDerivation ((if overrides ? fontbh75dpi then overrides.fontbh75dpi else x: x) {
     name = "font-bh-75dpi-1.0.3";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/font-bh-75dpi-1.0.3.tar.bz2;
+      url = mirror://xorg/X11R7.7/src/everything/font-bh-75dpi-1.0.3.tar.bz2;
       sha256 = "073jmhf0sr2j1l8da97pzsqj805f7mf9r2gy92j4diljmi8sm1il";
     };
-    buildInputs = [pkgconfig bdftopcf fontutil mkfontdir ]; configureFlags = "--with-fontrootdir=$(out)/lib/X11/fonts"; 
-  })) // {inherit bdftopcf fontutil mkfontdir ;};
+    buildInputs = [pkgconfig bdftopcf fontutil mkfontdir mkfontscale ]; configureFlags = "--with-fontrootdir=$(out)/lib/X11/fonts"; 
+  })) // {inherit bdftopcf fontutil mkfontdir mkfontscale ;};
     
   fontbhlucidatypewriter100dpi = (stdenv.mkDerivation ((if overrides ? fontbhlucidatypewriter100dpi then overrides.fontbhlucidatypewriter100dpi else x: x) {
     name = "font-bh-lucidatypewriter-100dpi-1.0.3";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/font-bh-lucidatypewriter-100dpi-1.0.3.tar.bz2;
+      url = mirror://xorg/X11R7.7/src/everything/font-bh-lucidatypewriter-100dpi-1.0.3.tar.bz2;
       sha256 = "1fqzckxdzjv4802iad2fdrkpaxl4w0hhs9lxlkyraq2kq9ik7a32";
     };
-    buildInputs = [pkgconfig bdftopcf fontutil mkfontdir ]; configureFlags = "--with-fontrootdir=$(out)/lib/X11/fonts"; 
-  })) // {inherit bdftopcf fontutil mkfontdir ;};
+    buildInputs = [pkgconfig bdftopcf fontutil mkfontdir mkfontscale ]; configureFlags = "--with-fontrootdir=$(out)/lib/X11/fonts"; 
+  })) // {inherit bdftopcf fontutil mkfontdir mkfontscale ;};
     
   fontbhlucidatypewriter75dpi = (stdenv.mkDerivation ((if overrides ? fontbhlucidatypewriter75dpi then overrides.fontbhlucidatypewriter75dpi else x: x) {
     name = "font-bh-lucidatypewriter-75dpi-1.0.3";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/font-bh-lucidatypewriter-75dpi-1.0.3.tar.bz2;
+      url = mirror://xorg/X11R7.7/src/everything/font-bh-lucidatypewriter-75dpi-1.0.3.tar.bz2;
       sha256 = "0cfbxdp5m12cm7jsh3my0lym9328cgm7fa9faz2hqj05wbxnmhaa";
     };
-    buildInputs = [pkgconfig bdftopcf fontutil mkfontdir ]; configureFlags = "--with-fontrootdir=$(out)/lib/X11/fonts"; 
-  })) // {inherit bdftopcf fontutil mkfontdir ;};
+    buildInputs = [pkgconfig bdftopcf fontutil mkfontdir mkfontscale ]; configureFlags = "--with-fontrootdir=$(out)/lib/X11/fonts"; 
+  })) // {inherit bdftopcf fontutil mkfontdir mkfontscale ;};
     
   fontbhttf = (stdenv.mkDerivation ((if overrides ? fontbhttf then overrides.fontbhttf else x: x) {
     name = "font-bh-ttf-1.0.3";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/font-bh-ttf-1.0.3.tar.bz2;
+      url = mirror://xorg/X11R7.7/src/everything/font-bh-ttf-1.0.3.tar.bz2;
       sha256 = "0pyjmc0ha288d4i4j0si4dh3ncf3jiwwjljvddrb0k8v4xiyljqv";
     };
     buildInputs = [pkgconfig mkfontdir mkfontscale ]; configureFlags = "--with-fontrootdir=$(out)/lib/X11/fonts"; 
@@ -221,7 +221,7 @@ let
     name = "font-bh-type1-1.0.3";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/font-bh-type1-1.0.3.tar.bz2;
+      url = mirror://xorg/X11R7.7/src/everything/font-bh-type1-1.0.3.tar.bz2;
       sha256 = "1hb3iav089albp4sdgnlh50k47cdjif9p4axm0kkjvs8jyi5a53n";
     };
     buildInputs = [pkgconfig mkfontdir mkfontscale ]; configureFlags = "--with-fontrootdir=$(out)/lib/X11/fonts"; 
@@ -231,7 +231,7 @@ let
     name = "font-bitstream-100dpi-1.0.3";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/font-bitstream-100dpi-1.0.3.tar.bz2;
+      url = mirror://xorg/X11R7.7/src/everything/font-bitstream-100dpi-1.0.3.tar.bz2;
       sha256 = "1kmn9jbck3vghz6rj3bhc3h0w6gh0qiaqm90cjkqsz1x9r2dgq7b";
     };
     buildInputs = [pkgconfig bdftopcf mkfontdir ]; configureFlags = "--with-fontrootdir=$(out)/lib/X11/fonts"; 
@@ -241,7 +241,7 @@ let
     name = "font-bitstream-75dpi-1.0.3";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/font-bitstream-75dpi-1.0.3.tar.bz2;
+      url = mirror://xorg/X11R7.7/src/everything/font-bitstream-75dpi-1.0.3.tar.bz2;
       sha256 = "13plbifkvfvdfym6gjbgy9wx2xbdxi9hfrl1k22xayy02135wgxs";
     };
     buildInputs = [pkgconfig bdftopcf mkfontdir ]; configureFlags = "--with-fontrootdir=$(out)/lib/X11/fonts"; 
@@ -251,7 +251,7 @@ let
     name = "font-bitstream-type1-1.0.3";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/font-bitstream-type1-1.0.3.tar.bz2;
+      url = mirror://xorg/X11R7.7/src/everything/font-bitstream-type1-1.0.3.tar.bz2;
       sha256 = "1256z0jhcf5gbh1d03593qdwnag708rxqa032izmfb5dmmlhbsn6";
     };
     buildInputs = [pkgconfig mkfontdir mkfontscale ]; configureFlags = "--with-fontrootdir=$(out)/lib/X11/fonts"; 
@@ -261,7 +261,7 @@ let
     name = "font-cronyx-cyrillic-1.0.3";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/font-cronyx-cyrillic-1.0.3.tar.bz2;
+      url = mirror://xorg/X11R7.7/src/everything/font-cronyx-cyrillic-1.0.3.tar.bz2;
       sha256 = "0ai1v4n61k8j9x2a1knvfbl2xjxk3xxmqaq3p9vpqrspc69k31kf";
     };
     buildInputs = [pkgconfig bdftopcf mkfontdir ]; configureFlags = "--with-fontrootdir=$(out)/lib/X11/fonts"; 
@@ -271,7 +271,7 @@ let
     name = "font-cursor-misc-1.0.3";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/font-cursor-misc-1.0.3.tar.bz2;
+      url = mirror://xorg/X11R7.7/src/everything/font-cursor-misc-1.0.3.tar.bz2;
       sha256 = "0dd6vfiagjc4zmvlskrbjz85jfqhf060cpys8j0y1qpcbsrkwdhp";
     };
     buildInputs = [pkgconfig bdftopcf mkfontdir ]; configureFlags = "--with-fontrootdir=$(out)/lib/X11/fonts"; 
@@ -281,7 +281,7 @@ let
     name = "font-daewoo-misc-1.0.3";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/font-daewoo-misc-1.0.3.tar.bz2;
+      url = mirror://xorg/X11R7.7/src/everything/font-daewoo-misc-1.0.3.tar.bz2;
       sha256 = "1s2bbhizzgbbbn5wqs3vw53n619cclxksljvm759h9p1prqdwrdw";
     };
     buildInputs = [pkgconfig bdftopcf mkfontdir ]; configureFlags = "--with-fontrootdir=$(out)/lib/X11/fonts"; 
@@ -291,7 +291,7 @@ let
     name = "font-dec-misc-1.0.3";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/font-dec-misc-1.0.3.tar.bz2;
+      url = mirror://xorg/X11R7.7/src/everything/font-dec-misc-1.0.3.tar.bz2;
       sha256 = "0yzza0l4zwyy7accr1s8ab7fjqkpwggqydbm2vc19scdby5xz7g1";
     };
     buildInputs = [pkgconfig bdftopcf mkfontdir ]; configureFlags = "--with-fontrootdir=$(out)/lib/X11/fonts"; 
@@ -301,7 +301,7 @@ let
     name = "font-ibm-type1-1.0.3";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/font-ibm-type1-1.0.3.tar.bz2;
+      url = mirror://xorg/X11R7.7/src/everything/font-ibm-type1-1.0.3.tar.bz2;
       sha256 = "1pyjll4adch3z5cg663s6vhi02k8m6488f0mrasg81ssvg9jinzx";
     };
     buildInputs = [pkgconfig mkfontdir mkfontscale ]; configureFlags = "--with-fontrootdir=$(out)/lib/X11/fonts"; 
@@ -311,7 +311,7 @@ let
     name = "font-isas-misc-1.0.3";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/font-isas-misc-1.0.3.tar.bz2;
+      url = mirror://xorg/X11R7.7/src/everything/font-isas-misc-1.0.3.tar.bz2;
       sha256 = "0rx8q02rkx673a7skkpnvfkg28i8gmqzgf25s9yi0lar915sn92q";
     };
     buildInputs = [pkgconfig bdftopcf mkfontdir ]; configureFlags = "--with-fontrootdir=$(out)/lib/X11/fonts"; 
@@ -321,7 +321,7 @@ let
     name = "font-jis-misc-1.0.3";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/font-jis-misc-1.0.3.tar.bz2;
+      url = mirror://xorg/X11R7.7/src/everything/font-jis-misc-1.0.3.tar.bz2;
       sha256 = "0rdc3xdz12pnv951538q6wilx8mrdndpkphpbblszsv7nc8cw61b";
     };
     buildInputs = [pkgconfig bdftopcf mkfontdir ]; configureFlags = "--with-fontrootdir=$(out)/lib/X11/fonts"; 
@@ -331,7 +331,7 @@ let
     name = "font-micro-misc-1.0.3";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/font-micro-misc-1.0.3.tar.bz2;
+      url = mirror://xorg/X11R7.7/src/everything/font-micro-misc-1.0.3.tar.bz2;
       sha256 = "1dldxlh54zq1yzfnrh83j5vm0k4ijprrs5yl18gm3n9j1z0q2cws";
     };
     buildInputs = [pkgconfig bdftopcf mkfontdir ]; configureFlags = "--with-fontrootdir=$(out)/lib/X11/fonts"; 
@@ -341,7 +341,7 @@ let
     name = "font-misc-cyrillic-1.0.3";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/font-misc-cyrillic-1.0.3.tar.bz2;
+      url = mirror://xorg/X11R7.7/src/everything/font-misc-cyrillic-1.0.3.tar.bz2;
       sha256 = "0q2ybxs8wvylvw95j6x9i800rismsmx4b587alwbfqiw6biy63z4";
     };
     buildInputs = [pkgconfig bdftopcf mkfontdir ]; configureFlags = "--with-fontrootdir=$(out)/lib/X11/fonts"; 
@@ -351,7 +351,7 @@ let
     name = "font-misc-ethiopic-1.0.3";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/font-misc-ethiopic-1.0.3.tar.bz2;
+      url = mirror://xorg/X11R7.7/src/everything/font-misc-ethiopic-1.0.3.tar.bz2;
       sha256 = "19cq7iq0pfad0nc2v28n681fdq3fcw1l1hzaq0wpkgpx7bc1zjsk";
     };
     buildInputs = [pkgconfig mkfontdir mkfontscale ]; configureFlags = "--with-fontrootdir=$(out)/lib/X11/fonts"; 
@@ -361,7 +361,7 @@ let
     name = "font-misc-meltho-1.0.3";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/font-misc-meltho-1.0.3.tar.bz2;
+      url = mirror://xorg/X11R7.7/src/everything/font-misc-meltho-1.0.3.tar.bz2;
       sha256 = "148793fqwzrc3bmh2vlw5fdiwjc2n7vs25cic35gfp452czk489p";
     };
     buildInputs = [pkgconfig mkfontdir mkfontscale ]; configureFlags = "--with-fontrootdir=$(out)/lib/X11/fonts"; 
@@ -371,17 +371,17 @@ let
     name = "font-misc-misc-1.1.2";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/font-misc-misc-1.1.2.tar.bz2;
+      url = mirror://xorg/X11R7.7/src/everything/font-misc-misc-1.1.2.tar.bz2;
       sha256 = "150pq6n8n984fah34n3k133kggn9v0c5k07igv29sxp1wi07krxq";
     };
-    buildInputs = [pkgconfig bdftopcf fontutil mkfontdir ]; configureFlags = "--with-fontrootdir=$(out)/lib/X11/fonts"; 
-  })) // {inherit bdftopcf fontutil mkfontdir ;};
+    buildInputs = [pkgconfig bdftopcf fontutil mkfontdir mkfontscale ]; configureFlags = "--with-fontrootdir=$(out)/lib/X11/fonts"; 
+  })) // {inherit bdftopcf fontutil mkfontdir mkfontscale ;};
     
   fontmuttmisc = (stdenv.mkDerivation ((if overrides ? fontmuttmisc then overrides.fontmuttmisc else x: x) {
     name = "font-mutt-misc-1.0.3";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/font-mutt-misc-1.0.3.tar.bz2;
+      url = mirror://xorg/X11R7.7/src/everything/font-mutt-misc-1.0.3.tar.bz2;
       sha256 = "13qghgr1zzpv64m0p42195k1kc77pksiv059fdvijz1n6kdplpxx";
     };
     buildInputs = [pkgconfig bdftopcf mkfontdir ]; configureFlags = "--with-fontrootdir=$(out)/lib/X11/fonts"; 
@@ -391,17 +391,17 @@ let
     name = "font-schumacher-misc-1.1.2";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/font-schumacher-misc-1.1.2.tar.bz2;
+      url = mirror://xorg/X11R7.7/src/everything/font-schumacher-misc-1.1.2.tar.bz2;
       sha256 = "0nkym3n48b4v36y4s927bbkjnsmicajarnf6vlp7wxp0as304i74";
     };
-    buildInputs = [pkgconfig bdftopcf fontutil mkfontdir ]; configureFlags = "--with-fontrootdir=$(out)/lib/X11/fonts"; 
-  })) // {inherit bdftopcf fontutil mkfontdir ;};
+    buildInputs = [pkgconfig bdftopcf fontutil mkfontdir mkfontscale ]; configureFlags = "--with-fontrootdir=$(out)/lib/X11/fonts"; 
+  })) // {inherit bdftopcf fontutil mkfontdir mkfontscale ;};
     
   fontscreencyrillic = (stdenv.mkDerivation ((if overrides ? fontscreencyrillic then overrides.fontscreencyrillic else x: x) {
     name = "font-screen-cyrillic-1.0.4";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/font-screen-cyrillic-1.0.4.tar.bz2;
+      url = mirror://xorg/X11R7.7/src/everything/font-screen-cyrillic-1.0.4.tar.bz2;
       sha256 = "0yayf1qlv7irf58nngddz2f1q04qkpr5jwp4aja2j5gyvzl32hl2";
     };
     buildInputs = [pkgconfig bdftopcf mkfontdir ]; configureFlags = "--with-fontrootdir=$(out)/lib/X11/fonts"; 
@@ -411,18 +411,18 @@ let
     name = "font-sony-misc-1.0.3";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/font-sony-misc-1.0.3.tar.bz2;
+      url = mirror://xorg/X11R7.7/src/everything/font-sony-misc-1.0.3.tar.bz2;
       sha256 = "1xfgcx4gsgik5mkgkca31fj3w72jw9iw76qyrajrsz1lp8ka6hr0";
     };
     buildInputs = [pkgconfig bdftopcf mkfontdir ]; configureFlags = "--with-fontrootdir=$(out)/lib/X11/fonts"; 
   })) // {inherit bdftopcf mkfontdir ;};
     
   fontsproto = (stdenv.mkDerivation ((if overrides ? fontsproto then overrides.fontsproto else x: x) {
-    name = "fontsproto-2.1.1";
+    name = "fontsproto-2.1.2";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/fontsproto-2.1.1.tar.bz2;
-      sha256 = "1g1rsvj0lb7744x6fj18d989ymf7zgry3v3fzipnnzljwa0vr6lw";
+      url = mirror://xorg/X11R7.7/src/everything/fontsproto-2.1.2.tar.bz2;
+      sha256 = "1ab8mbqxdwvdz4k5x4xb9c4n5w7i1xw276cbpk4z7a1nlpjrg746";
     };
     buildInputs = [pkgconfig ];
   })) // {inherit ;};
@@ -431,18 +431,18 @@ let
     name = "font-sun-misc-1.0.3";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/font-sun-misc-1.0.3.tar.bz2;
+      url = mirror://xorg/X11R7.7/src/everything/font-sun-misc-1.0.3.tar.bz2;
       sha256 = "1q6jcqrffg9q5f5raivzwx9ffvf7r11g6g0b125na1bhpz5ly7s8";
     };
     buildInputs = [pkgconfig bdftopcf mkfontdir ]; configureFlags = "--with-fontrootdir=$(out)/lib/X11/fonts"; 
   })) // {inherit bdftopcf mkfontdir ;};
     
   fontutil = (stdenv.mkDerivation ((if overrides ? fontutil then overrides.fontutil else x: x) {
-    name = "font-util-1.2.0";
+    name = "font-util-1.3.0";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/font-util-1.2.0.tar.bz2;
-      sha256 = "04lp7xlrcqfyrsnvdgyqbanlnzr13lhn28v0kr2nzpvcmqbwdfnv";
+      url = mirror://xorg/X11R7.7/src/everything/font-util-1.3.0.tar.bz2;
+      sha256 = "15cijajwhjzpy3ydc817zz8x5z4gbkyv3fps687jbq544mbfbafz";
     };
     buildInputs = [pkgconfig ];
   })) // {inherit ;};
@@ -451,7 +451,7 @@ let
     name = "font-winitzki-cyrillic-1.0.3";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/font-winitzki-cyrillic-1.0.3.tar.bz2;
+      url = mirror://xorg/X11R7.7/src/everything/font-winitzki-cyrillic-1.0.3.tar.bz2;
       sha256 = "181n1bgq8vxfxqicmy1jpm1hnr6gwn1kdhl6hr4frjigs1ikpldb";
     };
     buildInputs = [pkgconfig bdftopcf mkfontdir ]; configureFlags = "--with-fontrootdir=$(out)/lib/X11/fonts"; 
@@ -461,7 +461,7 @@ let
     name = "font-xfree86-type1-1.0.4";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/font-xfree86-type1-1.0.4.tar.bz2;
+      url = mirror://xorg/X11R7.7/src/everything/font-xfree86-type1-1.0.4.tar.bz2;
       sha256 = "0jp3zc0qfdaqfkgzrb44vi9vi0a8ygb35wp082yz7rvvxhmg9sya";
     };
     buildInputs = [pkgconfig mkfontdir mkfontscale ]; configureFlags = "--with-fontrootdir=$(out)/lib/X11/fonts"; 
@@ -478,91 +478,91 @@ let
   })) // {inherit ;};
     
   glproto = (stdenv.mkDerivation ((if overrides ? glproto then overrides.glproto else x: x) {
-    name = "glproto-1.4.12";
+    name = "glproto-1.4.16";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/glproto-1.4.12.tar.bz2;
-      sha256 = "1pjpnj78hski4krvsbf55pkhhsrahvlb825dwl804q0b36fpmgj8";
+      url = mirror://xorg/individual/proto/glproto-1.4.16.tar.bz2;
+      sha256 = "13arnb4bz5pn89bxbh3shr8gihkhyznpjnq3zzr05msygwx6dpal";
     };
     buildInputs = [pkgconfig ];
   })) // {inherit ;};
     
   iceauth = (stdenv.mkDerivation ((if overrides ? iceauth then overrides.iceauth else x: x) {
-    name = "iceauth-1.0.4";
+    name = "iceauth-1.0.5";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/iceauth-1.0.4.tar.bz2;
-      sha256 = "13ck97rz53l490aba3xpgv4psgk4rywh1vi6slg1n4zhai2zvrhf";
+      url = mirror://xorg/X11R7.7/src/everything/iceauth-1.0.5.tar.bz2;
+      sha256 = "1aq6v671s2x5rc6zn0rgxb4wddg4vq94mckw3cpwl7ccrjjvd5hl";
     };
     buildInputs = [pkgconfig libICE xproto ];
   })) // {inherit libICE xproto ;};
     
   imake = (stdenv.mkDerivation ((if overrides ? imake then overrides.imake else x: x) {
-    name = "imake-1.0.4";
+    name = "imake-1.0.5";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/individual/util/imake-1.0.4.tar.bz2;
-      sha256 = "1zj6y59yip40hrdvvljjmnsfqddzxpxmbmd8842010rhkvq7zcmc";
+      url = mirror://xorg/individual/util/imake-1.0.5.tar.bz2;
+      sha256 = "1h8ww97aymm10l9qn21n1b9x5ypjrqr10qpf48jjcbc9fg77gklr";
     };
     buildInputs = [pkgconfig xproto ];
   })) // {inherit xproto ;};
     
   inputproto = (stdenv.mkDerivation ((if overrides ? inputproto then overrides.inputproto else x: x) {
-    name = "inputproto-2.0.1";
+    name = "inputproto-2.2";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/inputproto-2.0.1.tar.bz2;
-      sha256 = "0i2a28bnvv68i6z8qx09iw95c1wchqc2migx1s7764pqipc3srk3";
+      url = mirror://xorg/X11R7.7/src/everything/inputproto-2.2.tar.bz2;
+      sha256 = "1c5wqamfsd8g5i8kya5pjfmcac8q5zq1l3vclh6p96f24nmicxfy";
     };
     buildInputs = [pkgconfig ];
   })) // {inherit ;};
     
   kbproto = (stdenv.mkDerivation ((if overrides ? kbproto then overrides.kbproto else x: x) {
-    name = "kbproto-1.0.5";
+    name = "kbproto-1.0.6";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/kbproto-1.0.5.tar.bz2;
-      sha256 = "17glym611bbkca371ihpcnx9ydp4asay4psqq267j00pbr94zfhf";
+      url = mirror://xorg/X11R7.7/src/everything/kbproto-1.0.6.tar.bz2;
+      sha256 = "0yal11hhpiisy3w8wmacsdzzzcnc3xwnswxz8k7zri40xc5aqz03";
     };
     buildInputs = [pkgconfig ];
   })) // {inherit ;};
     
   libAppleWM = (stdenv.mkDerivation ((if overrides ? libAppleWM then overrides.libAppleWM else x: x) {
-    name = "libAppleWM-1.4.0";
+    name = "libAppleWM-1.4.1";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/libAppleWM-1.4.0.tar.bz2;
-      sha256 = "10hw7rvwc2b0v3v6mc6vaq8xs6vim4bg43rnhspf4p26mlb2dsf8";
+      url = mirror://xorg/X11R7.7/src/everything/libAppleWM-1.4.1.tar.bz2;
+      sha256 = "0r8x28n45q89x91mz8mv0zkkcxi8wazkac886fyvflhiv2y8ap2y";
     };
     buildInputs = [pkgconfig applewmproto libX11 libXext xextproto ];
   })) // {inherit applewmproto libX11 libXext xextproto ;};
     
   libFS = (stdenv.mkDerivation ((if overrides ? libFS then overrides.libFS else x: x) {
-    name = "libFS-1.0.3";
+    name = "libFS-1.0.4";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/libFS-1.0.3.tar.bz2;
-      sha256 = "0694iyc1rdz0fqnalgzpgzmxfaklrdk0jz769fsn1bv88mszjymb";
+      url = mirror://xorg/X11R7.7/src/everything/libFS-1.0.4.tar.bz2;
+      sha256 = "05c3bqgn5m7j4kx8wvy0p36faq6f9jv5yq12m6033m4lflg7cwvh";
     };
     buildInputs = [pkgconfig fontsproto xproto xtrans ];
   })) // {inherit fontsproto xproto xtrans ;};
     
   libICE = (stdenv.mkDerivation ((if overrides ? libICE then overrides.libICE else x: x) {
-    name = "libICE-1.0.7";
+    name = "libICE-1.0.8";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/libICE-1.0.7.tar.bz2;
-      sha256 = "00drapw7n793nqy23m76vxj5yzlgx7prmprkhzp3qiqs2lpnkcd8";
+      url = mirror://xorg/X11R7.7/src/everything/libICE-1.0.8.tar.bz2;
+      sha256 = "07mp13pb3s73kj7y490gnx619znzwk91mlf8kdw0rzq29ll93a94";
     };
     buildInputs = [pkgconfig xproto xtrans ];
   })) // {inherit xproto xtrans ;};
     
   libSM = (stdenv.mkDerivation ((if overrides ? libSM then overrides.libSM else x: x) {
-    name = "libSM-1.2.0";
+    name = "libSM-1.2.1";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/libSM-1.2.0.tar.bz2;
-      sha256 = "1jspgbd9g1d20kl18nnbzv37f1kpfybjff2xn08dmgv7f0dxzn0c";
+      url = mirror://xorg/X11R7.7/src/everything/libSM-1.2.1.tar.bz2;
+      sha256 = "07bzi6xwlhq36f60qfspjbz0qjj7zcgayi1vp4ihgx34kib1vhck";
     };
     buildInputs = [pkgconfig libICE libuuid xproto xtrans ];
   })) // {inherit libICE libuuid xproto xtrans ;};
@@ -571,48 +571,48 @@ let
     name = "libWindowsWM-1.0.1";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/libWindowsWM-1.0.1.tar.bz2;
+      url = mirror://xorg/X11R7.7/src/everything/libWindowsWM-1.0.1.tar.bz2;
       sha256 = "1p0flwb67xawyv6yhri9w17m1i4lji5qnd0gq8v1vsfb8zw7rw15";
     };
     buildInputs = [pkgconfig windowswmproto libX11 libXext xextproto ];
   })) // {inherit windowswmproto libX11 libXext xextproto ;};
     
   libX11 = (stdenv.mkDerivation ((if overrides ? libX11 then overrides.libX11 else x: x) {
-    name = "libX11-1.4.1";
+    name = "libX11-1.5.0";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/individual/lib/libX11-1.4.1.tar.bz2;
-      sha256 = "1qiwyqaf9vfn52nwp7nxlbixld3r9jyzsarnkwk0ynk4k3vy1x3h";
+      url = mirror://xorg/X11R7.7/src/everything/libX11-1.5.0.tar.bz2;
+      sha256 = "11jdpl15bxwpwv0knpkh990s8jvlybng3dx477pkrz1bx7byz0n3";
     };
     buildInputs = [pkgconfig inputproto kbproto libxcb xextproto xf86bigfontproto xproto xtrans ];
   })) // {inherit inputproto kbproto libxcb xextproto xf86bigfontproto xproto xtrans ;};
     
   libXScrnSaver = (stdenv.mkDerivation ((if overrides ? libXScrnSaver then overrides.libXScrnSaver else x: x) {
-    name = "libXScrnSaver-1.2.1";
+    name = "libXScrnSaver-1.2.2";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/libXScrnSaver-1.2.1.tar.bz2;
-      sha256 = "16i59gac2sixgi692w4lvq5cp8hkl6rc375bh0ib51gsyvi6cfnf";
+      url = mirror://xorg/X11R7.7/src/everything/libXScrnSaver-1.2.2.tar.bz2;
+      sha256 = "07ff4r20nkkrj7h08f9fwamds9b3imj8jz5iz6y38zqw6jkyzwcg";
     };
     buildInputs = [pkgconfig scrnsaverproto libX11 libXext xextproto ];
   })) // {inherit scrnsaverproto libX11 libXext xextproto ;};
     
   libXau = (stdenv.mkDerivation ((if overrides ? libXau then overrides.libXau else x: x) {
-    name = "libXau-1.0.6";
+    name = "libXau-1.0.7";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/libXau-1.0.6.tar.bz2;
-      sha256 = "1z3h07wj2kg2hnzj4gd9pc3rkj4n0mfw6f9skg9w1hfwzrgl317f";
+      url = mirror://xorg/X11R7.7/src/everything/libXau-1.0.7.tar.bz2;
+      sha256 = "12d4f7sdv2pjxhk0lcay0pahccddszkw579dc59daqi37r8bllvi";
     };
     buildInputs = [pkgconfig xproto ];
   })) // {inherit xproto ;};
     
   libXaw = (stdenv.mkDerivation ((if overrides ? libXaw then overrides.libXaw else x: x) {
-    name = "libXaw-1.0.9";
+    name = "libXaw-1.0.11";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/individual/lib/libXaw-1.0.9.tar.bz2;
-      sha256 = "0dxh5ldcmzl6afq0a9172ryah1341g0zysm8vk2lmqkqdda7ffd8";
+      url = mirror://xorg/X11R7.7/src/everything/libXaw-1.0.11.tar.bz2;
+      sha256 = "14ll7ndf5njc30hz2w197qvwp7fqj7y14wq4p1cyxlbipfn79a47";
     };
     buildInputs = [pkgconfig libX11 libXext xextproto libXmu libXpm xproto libXt ];
   })) // {inherit libX11 libXext xextproto libXmu libXpm xproto libXt ;};
@@ -621,18 +621,18 @@ let
     name = "libXcomposite-0.4.3";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/libXcomposite-0.4.3.tar.bz2;
+      url = mirror://xorg/X11R7.7/src/everything/libXcomposite-0.4.3.tar.bz2;
       sha256 = "1b8sniijb85v4my6v30ma9yqnwl4hkclci9l1hqxnipfyhl4sa9j";
     };
     buildInputs = [pkgconfig compositeproto libX11 libXfixes xproto ];
   })) // {inherit compositeproto libX11 libXfixes xproto ;};
     
   libXcursor = (stdenv.mkDerivation ((if overrides ? libXcursor then overrides.libXcursor else x: x) {
-    name = "libXcursor-1.1.11";
+    name = "libXcursor-1.1.13";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/libXcursor-1.1.11.tar.bz2;
-      sha256 = "1zpn5dx66l5ql9qv0yz41qlbap4imkkvi0p6j2a6zh72g52zfvm0";
+      url = mirror://xorg/X11R7.7/src/everything/libXcursor-1.1.13.tar.bz2;
+      sha256 = "13xd1dyb06gwdwb0bxb22fkgdlmis6wrljm2xk6fhz0v9bg2g27p";
     };
     buildInputs = [pkgconfig fixesproto libX11 libXfixes xproto libXrender ];
   })) // {inherit fixesproto libX11 libXfixes xproto libXrender ;};
@@ -641,88 +641,88 @@ let
     name = "libXdamage-1.1.3";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/libXdamage-1.1.3.tar.bz2;
+      url = mirror://xorg/X11R7.7/src/everything/libXdamage-1.1.3.tar.bz2;
       sha256 = "1a678bwap74sqczbr2z4y4fvbr35km3inkm8bi1igjyk4v46jqdw";
     };
     buildInputs = [pkgconfig damageproto fixesproto libX11 xextproto libXfixes xproto ];
   })) // {inherit damageproto fixesproto libX11 xextproto libXfixes xproto ;};
     
   libXdmcp = (stdenv.mkDerivation ((if overrides ? libXdmcp then overrides.libXdmcp else x: x) {
-    name = "libXdmcp-1.1.0";
+    name = "libXdmcp-1.1.1";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/libXdmcp-1.1.0.tar.bz2;
-      sha256 = "0wh0q4ih9p3nsxsjjj9a3d03nhiyjggpl7gbavdzsfia36iyk85q";
+      url = mirror://xorg/X11R7.7/src/everything/libXdmcp-1.1.1.tar.bz2;
+      sha256 = "13highx4xpgkiwykpcl7z2laslrjc4pzi4h617ny9p7r6116vkls";
     };
     buildInputs = [pkgconfig xproto ];
   })) // {inherit xproto ;};
     
   libXext = (stdenv.mkDerivation ((if overrides ? libXext then overrides.libXext else x: x) {
-    name = "libXext-1.2.0";
+    name = "libXext-1.3.1";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/libXext-1.2.0.tar.bz2;
-      sha256 = "1xvgvrbg9lc812zi44hsyr461hiiwy05alckq847ki213qhkxvaa";
+      url = mirror://xorg/X11R7.7/src/everything/libXext-1.3.1.tar.bz2;
+      sha256 = "0ng8clhn7srbkadxjc7ih3z3v27v9ny0aa0dqkgddgxpgrhrq8jn";
     };
     buildInputs = [pkgconfig libX11 xextproto xproto ];
   })) // {inherit libX11 xextproto xproto ;};
     
   libXfixes = (stdenv.mkDerivation ((if overrides ? libXfixes then overrides.libXfixes else x: x) {
-    name = "libXfixes-4.0.5";
+    name = "libXfixes-5.0";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/libXfixes-4.0.5.tar.bz2;
-      sha256 = "0x4drdxrslxf4vgcfyba0f0fbxg98c8x5dfrl7azakhf8qhd0v1f";
+      url = mirror://xorg/X11R7.7/src/everything/libXfixes-5.0.tar.bz2;
+      sha256 = "1qx2rmwhmca2n7rgafy0arp15k5vwhdhhh6v6mx76hlj29328yjk";
     };
     buildInputs = [pkgconfig fixesproto libX11 xextproto xproto ];
   })) // {inherit fixesproto libX11 xextproto xproto ;};
     
   libXfont = (stdenv.mkDerivation ((if overrides ? libXfont then overrides.libXfont else x: x) {
-    name = "libXfont-1.4.3";
+    name = "libXfont-1.4.5";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/libXfont-1.4.3.tar.bz2;
-      sha256 = "1k79f8vcibd114ydndvna8axx39bsdaj351f16901lh155jlb4pp";
+      url = mirror://xorg/X11R7.7/src/everything/libXfont-1.4.5.tar.bz2;
+      sha256 = "0w3irg00k6b6mziddnacln9q2rkf5848b04nvjqwv5bb1fw6zydv";
     };
     buildInputs = [pkgconfig libfontenc fontsproto freetype xproto xtrans zlib ];
   })) // {inherit libfontenc fontsproto freetype xproto xtrans zlib ;};
     
   libXft = (stdenv.mkDerivation ((if overrides ? libXft then overrides.libXft else x: x) {
-    name = "libXft-2.2.0";
+    name = "libXft-2.3.1";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/libXft-2.2.0.tar.bz2;
-      sha256 = "1cprbz7xnxkb7axblw8sdaw9ibkngmz60d0ypk1drhd0dpjmls68";
+      url = mirror://xorg/X11R7.7/src/everything/libXft-2.3.1.tar.bz2;
+      sha256 = "1gdv6559cdz1lfw73x7wsvax1fkvphmayrymprljhyyb5nwk5kkz";
     };
-    buildInputs = [pkgconfig fontconfig freetype xproto libXrender ];
-  })) // {inherit fontconfig freetype xproto libXrender ;};
+    buildInputs = [pkgconfig fontconfig freetype libX11 xproto libXrender ];
+  })) // {inherit fontconfig freetype libX11 xproto libXrender ;};
     
   libXi = (stdenv.mkDerivation ((if overrides ? libXi then overrides.libXi else x: x) {
-    name = "libXi-1.4.1";
+    name = "libXi-1.6.1";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/individual/lib/libXi-1.4.1.tar.bz2;
-      sha256 = "19i92if8anv5pg2mwyy93jcllk1mgxx5gchi8zkjlk7r604ir7sr";
+      url = mirror://xorg/X11R7.7/src/everything/libXi-1.6.1.tar.bz2;
+      sha256 = "029ihw4jq8mng8rx7a3jdvq64jm1zdkqidca93zmxv4jf9yn5qzj";
     };
     buildInputs = [pkgconfig inputproto libX11 libXext xextproto xproto ];
   })) // {inherit inputproto libX11 libXext xextproto xproto ;};
     
   libXinerama = (stdenv.mkDerivation ((if overrides ? libXinerama then overrides.libXinerama else x: x) {
-    name = "libXinerama-1.1.1";
+    name = "libXinerama-1.1.2";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/libXinerama-1.1.1.tar.bz2;
-      sha256 = "17vpsscracg1hza0avrczm9fc7xx3229qhicy101mw6cx2hb9qmv";
+      url = mirror://xorg/X11R7.7/src/everything/libXinerama-1.1.2.tar.bz2;
+      sha256 = "1b3aq1762hxzchd9ndavdjlksq93991s0g2z6spf8wl3v0pprrx4";
     };
     buildInputs = [pkgconfig libX11 libXext xextproto xineramaproto ];
   })) // {inherit libX11 libXext xextproto xineramaproto ;};
     
   libXmu = (stdenv.mkDerivation ((if overrides ? libXmu then overrides.libXmu else x: x) {
-    name = "libXmu-1.1.0";
+    name = "libXmu-1.1.1";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/libXmu-1.1.0.tar.bz2;
-      sha256 = "1b9nkml1mk8yi76bv23cikbfrd7hlp48h710yqgcrpkh7cq1za8g";
+      url = mirror://xorg/X11R7.7/src/everything/libXmu-1.1.1.tar.bz2;
+      sha256 = "1pbym8rrznxqd60zwf7w4xpf27sa72bky2knginqcfnca32q343h";
     };
     buildInputs = [pkgconfig libX11 libXext xextproto xproto libXt ];
   })) // {inherit libX11 libXext xextproto xproto libXt ;};
@@ -738,91 +738,91 @@ let
   })) // {inherit printproto libX11 libXau libXext xextproto ;};
     
   libXpm = (stdenv.mkDerivation ((if overrides ? libXpm then overrides.libXpm else x: x) {
-    name = "libXpm-3.5.9";
+    name = "libXpm-3.5.10";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/libXpm-3.5.9.tar.bz2;
-      sha256 = "07k2zpiadck1p986pgksfm5zfdm6h5vjy6p0hv59h1dbkh103pca";
+      url = mirror://xorg/X11R7.7/src/everything/libXpm-3.5.10.tar.bz2;
+      sha256 = "0dd737ch4q9gr151wff1m3q2j7wf3pip4y81601xdrsh8wipxnx6";
     };
     buildInputs = [pkgconfig libX11 libXext xextproto xproto libXt ];
   })) // {inherit libX11 libXext xextproto xproto libXt ;};
     
   libXrandr = (stdenv.mkDerivation ((if overrides ? libXrandr then overrides.libXrandr else x: x) {
-    name = "libXrandr-1.3.1";
+    name = "libXrandr-1.4.0";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/libXrandr-1.3.1.tar.bz2;
-      sha256 = "0qf6aywqk2mgd5hw0nr24xxp5k015aa11sax5yycn14wch4agfv2";
+      url = mirror://xorg/individual/lib/libXrandr-1.4.0.tar.bz2;
+      sha256 = "1hzm2ndra4nf8xxzm4lzd225zj05hzbzcq464q2znah15ynd0fh3";
     };
     buildInputs = [pkgconfig randrproto renderproto libX11 libXext xextproto xproto libXrender ];
   })) // {inherit randrproto renderproto libX11 libXext xextproto xproto libXrender ;};
     
   libXrender = (stdenv.mkDerivation ((if overrides ? libXrender then overrides.libXrender else x: x) {
-    name = "libXrender-0.9.6";
+    name = "libXrender-0.9.7";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/libXrender-0.9.6.tar.bz2;
-      sha256 = "0s567qgys8m6782lbrpvpscm8fkk2jm2717g7s3hm7hhcgib2n3z";
+      url = mirror://xorg/X11R7.7/src/everything/libXrender-0.9.7.tar.bz2;
+      sha256 = "1rmvja2gkf5v0k2n1bcghw8v98m2kfn3af0rbmsda5dwr69npd7r";
     };
     buildInputs = [pkgconfig renderproto libX11 xproto ];
   })) // {inherit renderproto libX11 xproto ;};
     
   libXres = (stdenv.mkDerivation ((if overrides ? libXres then overrides.libXres else x: x) {
-    name = "libXres-1.0.5";
+    name = "libXres-1.0.6";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/libXres-1.0.5.tar.bz2;
-      sha256 = "0nd032jn3im6ar71xm1wgcmb4pa76c73nl8lavdkih609d30y2x0";
+      url = mirror://xorg/X11R7.7/src/everything/libXres-1.0.6.tar.bz2;
+      sha256 = "1478pm70gdi6l70r4jpkyyg2am9wv6xh53z9ibwq5cg84p4n31pz";
     };
     buildInputs = [pkgconfig resourceproto libX11 libXext xextproto xproto ];
   })) // {inherit resourceproto libX11 libXext xextproto xproto ;};
     
   libXt = (stdenv.mkDerivation ((if overrides ? libXt then overrides.libXt else x: x) {
-    name = "libXt-1.0.9";
+    name = "libXt-1.1.3";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/libXt-1.0.9.tar.bz2;
-      sha256 = "00bbms32fkzrxhdm9kybb2404ad6f3d6v4qgl83py7w09dcipfga";
+      url = mirror://xorg/X11R7.7/src/everything/libXt-1.1.3.tar.bz2;
+      sha256 = "1g85gwnhs7lg5f01gfi1cpb916xc3spm1fjlv2f4xz2zzk1r7dcd";
     };
     buildInputs = [pkgconfig libICE kbproto libSM libX11 xproto ];
   })) // {inherit libICE kbproto libSM libX11 xproto ;};
     
   libXtst = (stdenv.mkDerivation ((if overrides ? libXtst then overrides.libXtst else x: x) {
-    name = "libXtst-1.2.0";
+    name = "libXtst-1.2.1";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/libXtst-1.2.0.tar.bz2;
-      sha256 = "022lx3c57pkkw11j2k5s1f5idf53li5qg291766bvxi1nl90jbks";
+      url = mirror://xorg/X11R7.7/src/everything/libXtst-1.2.1.tar.bz2;
+      sha256 = "1q750hjplq1rfyxkr4545z1y2a1wfnc828ynvbws7b4jwdk3xsky";
     };
     buildInputs = [pkgconfig inputproto recordproto libX11 libXext xextproto libXi ];
   })) // {inherit inputproto recordproto libX11 libXext xextproto libXi ;};
     
   libXv = (stdenv.mkDerivation ((if overrides ? libXv then overrides.libXv else x: x) {
-    name = "libXv-1.0.6";
+    name = "libXv-1.0.7";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/libXv-1.0.6.tar.bz2;
-      sha256 = "1vpmr9wnbz990ivarsp5rcmdg483fd2nk695plzlzx5h9dcqw3z2";
+      url = mirror://xorg/X11R7.7/src/everything/libXv-1.0.7.tar.bz2;
+      sha256 = "044hllz013afhzywwpxz007l4zjy99bv9im065rqd30zckmllrjx";
     };
     buildInputs = [pkgconfig videoproto libX11 libXext xextproto xproto ];
   })) // {inherit videoproto libX11 libXext xextproto xproto ;};
     
   libXvMC = (stdenv.mkDerivation ((if overrides ? libXvMC then overrides.libXvMC else x: x) {
-    name = "libXvMC-1.0.6";
+    name = "libXvMC-1.0.7";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/libXvMC-1.0.6.tar.bz2;
-      sha256 = "14ik1kgpnds213dsa16i8cf5qg3hc7vccy9jz4a4ml8zqzlq1nix";
+      url = mirror://xorg/X11R7.7/src/everything/libXvMC-1.0.7.tar.bz2;
+      sha256 = "18yf6ysc01pqkbk9704914ghalq1sl2hfdjmwggxm8qqhpy8bw18";
     };
     buildInputs = [pkgconfig videoproto libX11 libXext xextproto xproto libXv ];
   })) // {inherit videoproto libX11 libXext xextproto xproto libXv ;};
     
   libXxf86dga = (stdenv.mkDerivation ((if overrides ? libXxf86dga then overrides.libXxf86dga else x: x) {
-    name = "libXxf86dga-1.1.2";
+    name = "libXxf86dga-1.1.3";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/libXxf86dga-1.1.2.tar.bz2;
-      sha256 = "01jsc0jg7mjngfbh3j942595pwbyxf2m9kljy3zb6gyfcbsm59hv";
+      url = mirror://xorg/X11R7.7/src/everything/libXxf86dga-1.1.3.tar.bz2;
+      sha256 = "15291ddhyr54sribwbg8hxx2psgzm5gh0pgkw5yrf3zgvdsa67sm";
     };
     buildInputs = [pkgconfig libX11 libXext xextproto xf86dgaproto xproto ];
   })) // {inherit libX11 libXext xextproto xf86dgaproto xproto ;};
@@ -838,41 +838,41 @@ let
   })) // {inherit libX11 libXext xextproto xf86miscproto xproto ;};
     
   libXxf86vm = (stdenv.mkDerivation ((if overrides ? libXxf86vm then overrides.libXxf86vm else x: x) {
-    name = "libXxf86vm-1.1.1";
+    name = "libXxf86vm-1.1.2";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/libXxf86vm-1.1.1.tar.bz2;
-      sha256 = "17i342h7a2nqfz4lpk8cay0vc0h4i7nxdc6xli9r7mggk8iykji1";
+      url = mirror://xorg/X11R7.7/src/everything/libXxf86vm-1.1.2.tar.bz2;
+      sha256 = "117w92xz39rcqcahspi48nc04cc9110x1dycpf3vbcb6p0pifr55";
     };
     buildInputs = [pkgconfig libX11 libXext xextproto xf86vidmodeproto xproto ];
   })) // {inherit libX11 libXext xextproto xf86vidmodeproto xproto ;};
     
   libdmx = (stdenv.mkDerivation ((if overrides ? libdmx then overrides.libdmx else x: x) {
-    name = "libdmx-1.1.1";
+    name = "libdmx-1.1.2";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/libdmx-1.1.1.tar.bz2;
-      sha256 = "066yndshwq2nzkd0z0w96wq37rnhb23s6vq50bg4kiqb8y3nxpm6";
+      url = mirror://xorg/X11R7.7/src/everything/libdmx-1.1.2.tar.bz2;
+      sha256 = "1fiq73sfxcbyjval118ialwrzxhzb08xsxmg69adcs47i9j0p1x7";
     };
     buildInputs = [pkgconfig dmxproto libX11 libXext xextproto ];
   })) // {inherit dmxproto libX11 libXext xextproto ;};
     
   libfontenc = (stdenv.mkDerivation ((if overrides ? libfontenc then overrides.libfontenc else x: x) {
-    name = "libfontenc-1.1.0";
+    name = "libfontenc-1.1.1";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/libfontenc-1.1.0.tar.bz2;
-      sha256 = "1gww1cbi17q15lh2ws6qzspp807issbyk5wlzjmgw6pn880ip2il";
+      url = mirror://xorg/X11R7.7/src/everything/libfontenc-1.1.1.tar.bz2;
+      sha256 = "0zq1483xy31sssq0h3xxf8y1v4q14cp8rv164ayn7fsn30pq2wny";
     };
     buildInputs = [pkgconfig xproto zlib ];
   })) // {inherit xproto zlib ;};
     
   libpciaccess = (stdenv.mkDerivation ((if overrides ? libpciaccess then overrides.libpciaccess else x: x) {
-    name = "libpciaccess-0.12.1";
+    name = "libpciaccess-0.13.1";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/individual/lib/libpciaccess-0.12.1.tar.bz2;
-      sha256 = "0i3kdmvl1mcjrkhklpli45sqsy4pvipm6swifbcyxx4cwkqdfiyc";
+      url = mirror://xorg/X11R7.7/src/everything/libpciaccess-0.13.1.tar.bz2;
+      sha256 = "11509lkgd5j4g5wy0g13z4sf31h50hqx3jfwb2i4q6k98pv6iar7";
     };
     buildInputs = [pkgconfig zlib ];
   })) // {inherit zlib ;};
@@ -881,91 +881,91 @@ let
     name = "libpthread-stubs-0.3";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/libpthread-stubs-0.3.tar.bz2;
+      url = mirror://xorg/X11R7.7/src/everything/libpthread-stubs-0.3.tar.bz2;
       sha256 = "16bjv3in19l84hbri41iayvvg4ls9gv1ma0x0qlbmwy67i7dbdim";
     };
     buildInputs = [pkgconfig ];
   })) // {inherit ;};
     
   libxcb = (stdenv.mkDerivation ((if overrides ? libxcb then overrides.libxcb else x: x) {
-    name = "libxcb-1.7";
+    name = "libxcb-1.9";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/libxcb-1.7.tar.bz2;
-      sha256 = "1pr40wa3i1f0iwx83c8alcycy9sfzd2y1qlc63kr8q56w8sxqxp7";
+      url = mirror://xorg/individual/xcb/libxcb-1.9.tar.bz2;
+      sha256 = "15icn78x610dvvgnji6b3pyn8nd88lz68hq0w73pcadf78mycmw8";
     };
     buildInputs = [pkgconfig libxslt libpthreadstubs python libXau xcbproto libXdmcp ];
   })) // {inherit libxslt libpthreadstubs python libXau xcbproto libXdmcp ;};
     
   libxkbfile = (stdenv.mkDerivation ((if overrides ? libxkbfile then overrides.libxkbfile else x: x) {
-    name = "libxkbfile-1.0.7";
+    name = "libxkbfile-1.0.8";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/libxkbfile-1.0.7.tar.bz2;
-      sha256 = "1r9a1xnn57431hfp1am2r5h23pa1zh646482li3vd5ivfc53fzk6";
+      url = mirror://xorg/X11R7.7/src/everything/libxkbfile-1.0.8.tar.bz2;
+      sha256 = "0flg5arw6n3njagmsi4i4l0zl5bfx866a1h9ydc3bi1pqlclxaca";
     };
     buildInputs = [pkgconfig kbproto libX11 ];
   })) // {inherit kbproto libX11 ;};
     
   lndir = (stdenv.mkDerivation ((if overrides ? lndir then overrides.lndir else x: x) {
-    name = "lndir-1.0.2";
+    name = "lndir-1.0.3";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/individual/util/lndir-1.0.2.tar.bz2;
-      sha256 = "1d988z0ywy2k53s7i43ff0j5qac1cpy9j0gjwmiprq66w8rh24z5";
+      url = mirror://xorg/individual/util/lndir-1.0.3.tar.bz2;
+      sha256 = "0pdngiy8zdhsiqx2am75yfcl36l7kd7d7nl0rss8shcdvsqgmx29";
     };
     buildInputs = [pkgconfig xproto ];
   })) // {inherit xproto ;};
     
   luit = (stdenv.mkDerivation ((if overrides ? luit then overrides.luit else x: x) {
-    name = "luit-1.1.0";
+    name = "luit-1.1.1";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/luit-1.1.0.tar.bz2;
-      sha256 = "1l83b5yknh4svqzwsppvmm2q9l0mvsfwm16ik7q3yss8m5zgvypi";
+      url = mirror://xorg/X11R7.7/src/everything/luit-1.1.1.tar.bz2;
+      sha256 = "0dn694mk56x6hdk6y9ylx4f128h5jcin278gnw2gb807rf3ygc1h";
     };
-    buildInputs = [pkgconfig libfontenc zlib ];
-  })) // {inherit libfontenc zlib ;};
+    buildInputs = [pkgconfig libfontenc ];
+  })) // {inherit libfontenc ;};
     
   makedepend = (stdenv.mkDerivation ((if overrides ? makedepend then overrides.makedepend else x: x) {
-    name = "makedepend-1.0.3";
+    name = "makedepend-1.0.4";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/makedepend-1.0.3.tar.bz2;
-      sha256 = "0dxpz376bvphjg8q0nqrcf4y0dbni0c6jj5y16qymr37wlq1s99s";
+      url = mirror://xorg/X11R7.7/src/everything/makedepend-1.0.4.tar.bz2;
+      sha256 = "1zpp2b9dfvlnfj2i1mzdyn785rpl7vih5lap7kcpiv80xspbhmmb";
     };
     buildInputs = [pkgconfig xproto ];
   })) // {inherit xproto ;};
     
   mkfontdir = (stdenv.mkDerivation ((if overrides ? mkfontdir then overrides.mkfontdir else x: x) {
-    name = "mkfontdir-1.0.6";
+    name = "mkfontdir-1.0.7";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/mkfontdir-1.0.6.tar.bz2;
-      sha256 = "0nf8p0zsndd9qmrw70h2wdq7sz6j066q73lpp262dlpq21inrmam";
+      url = mirror://xorg/X11R7.7/src/everything/mkfontdir-1.0.7.tar.bz2;
+      sha256 = "0c3563kw9fg15dpgx4dwvl12qz6sdqdns1pxa574hc7i5m42mman";
     };
     buildInputs = [pkgconfig ];
   })) // {inherit ;};
     
   mkfontscale = (stdenv.mkDerivation ((if overrides ? mkfontscale then overrides.mkfontscale else x: x) {
-    name = "mkfontscale-1.0.8";
+    name = "mkfontscale-1.1.0";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/mkfontscale-1.0.8.tar.bz2;
-      sha256 = "1yah41gr5hlihbjm5l1kykdqj1p5rx6y4vrqraxbzvkrrn37gdbf";
+      url = mirror://xorg/X11R7.7/src/everything/mkfontscale-1.1.0.tar.bz2;
+      sha256 = "1539h3ws66vcql6sf2831bcs0r4d9b05lcgpswkw33lvcxighmff";
     };
     buildInputs = [pkgconfig libfontenc freetype xproto zlib ];
   })) // {inherit libfontenc freetype xproto zlib ;};
     
   pixman = (stdenv.mkDerivation ((if overrides ? pixman then overrides.pixman else x: x) {
-    name = "pixman-0.20.2";
+    name = "pixman-0.26.2";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/individual/lib/pixman-0.20.2.tar.bz2;
-      sha256 = "1agl6f63y2wiqr6n9slzhisnilcg8byafp2l8wmw713bk8k6yc9h";
+      url = mirror://xorg/individual/lib/pixman-0.26.2.tar.bz2;
+      sha256 = "0z34jb75wpbyj3gxn34icd8j81fk5d6s6qnwp2ncz7m8icf6afqr";
     };
-    buildInputs = [pkgconfig perl ];
-  })) // {inherit perl ;};
+    buildInputs = [pkgconfig libpng perl ];
+  })) // {inherit libpng perl ;};
     
   printproto = (stdenv.mkDerivation ((if overrides ? printproto then overrides.printproto else x: x) {
     name = "printproto-1.0.5";
@@ -978,21 +978,21 @@ let
   })) // {inherit libXau ;};
     
   randrproto = (stdenv.mkDerivation ((if overrides ? randrproto then overrides.randrproto else x: x) {
-    name = "randrproto-1.3.2";
+    name = "randrproto-1.4.0";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/randrproto-1.3.2.tar.bz2;
-      sha256 = "0wfwcq85wbm0g5r0snc7prgki1wi3kxrxhcxinyr54n45ihh03fr";
+      url = mirror://xorg/individual/proto/randrproto-1.4.0.tar.bz2;
+      sha256 = "1kq9h93qdnniiivry8jmhlgwn9fbx9xp5r9cmzfihlx5cs62xi45";
     };
     buildInputs = [pkgconfig ];
   })) // {inherit ;};
     
   recordproto = (stdenv.mkDerivation ((if overrides ? recordproto then overrides.recordproto else x: x) {
-    name = "recordproto-1.14.1";
+    name = "recordproto-1.14.2";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/recordproto-1.14.1.tar.bz2;
-      sha256 = "1389fc3r8h8xqix11y9ngw7a13i1mvw68jkhicgvq676sd1v0zmj";
+      url = mirror://xorg/X11R7.7/src/everything/recordproto-1.14.2.tar.bz2;
+      sha256 = "0w3kgr1zabwf79bpc28dcnj0fpni6r53rpi82ngjbalj5s6m8xx7";
     };
     buildInputs = [pkgconfig ];
   })) // {inherit ;};
@@ -1001,78 +1001,78 @@ let
     name = "renderproto-0.11.1";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/renderproto-0.11.1.tar.bz2;
+      url = mirror://xorg/X11R7.7/src/everything/renderproto-0.11.1.tar.bz2;
       sha256 = "0dr5xw6s0qmqg0q5pdkb4jkdhaja0vbfqla79qh5j1xjj9dmlwq6";
     };
     buildInputs = [pkgconfig ];
   })) // {inherit ;};
     
   resourceproto = (stdenv.mkDerivation ((if overrides ? resourceproto then overrides.resourceproto else x: x) {
-    name = "resourceproto-1.1.1";
+    name = "resourceproto-1.2.0";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/resourceproto-1.1.1.tar.bz2;
-      sha256 = "1imqlkvn4mfjsflwvqx8dj0n7i7frdpzkdafq001r25ak6782yc5";
+      url = mirror://xorg/X11R7.7/src/everything/resourceproto-1.2.0.tar.bz2;
+      sha256 = "0638iyfiiyjw1hg3139pai0j6m65gkskrvd9684zgc6ydcx00riw";
     };
     buildInputs = [pkgconfig ];
   })) // {inherit ;};
     
   scrnsaverproto = (stdenv.mkDerivation ((if overrides ? scrnsaverproto then overrides.scrnsaverproto else x: x) {
-    name = "scrnsaverproto-1.2.1";
+    name = "scrnsaverproto-1.2.2";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/scrnsaverproto-1.2.1.tar.bz2;
-      sha256 = "1w94c1an7cy9v68289xbqszaj6g5qx5a29qx67fwsvqkmhygglps";
+      url = mirror://xorg/X11R7.7/src/everything/scrnsaverproto-1.2.2.tar.bz2;
+      sha256 = "0rfdbfwd35d761xkfifcscx56q0n56043ixlmv70r4v4l66hmdwb";
     };
     buildInputs = [pkgconfig ];
   })) // {inherit ;};
     
   sessreg = (stdenv.mkDerivation ((if overrides ? sessreg then overrides.sessreg else x: x) {
-    name = "sessreg-1.0.6";
+    name = "sessreg-1.0.7";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/sessreg-1.0.6.tar.bz2;
-      sha256 = "143ivrs2pbkid4wr1hri9221z4gi9dlkq7x60jarcz9bhiq1dwvk";
+      url = mirror://xorg/X11R7.7/src/everything/sessreg-1.0.7.tar.bz2;
+      sha256 = "0lifgjxdvc6lwyjk90slddnr12fsv88ldy6qhklr5av409cfwd47";
     };
     buildInputs = [pkgconfig xproto ];
   })) // {inherit xproto ;};
     
   setxkbmap = (stdenv.mkDerivation ((if overrides ? setxkbmap then overrides.setxkbmap else x: x) {
-    name = "setxkbmap-1.2.0";
+    name = "setxkbmap-1.3.0";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/setxkbmap-1.2.0.tar.bz2;
-      sha256 = "0fdfvc0fqdp11ly5iywrsi4w7rln4dq02b0b91yjmjm83fzr35cr";
+      url = mirror://xorg/X11R7.7/src/everything/setxkbmap-1.3.0.tar.bz2;
+      sha256 = "1inygpvlgc6vr5h9laxw9lnvafnccl3fy0g5n9ll28iq3yfmqc1x";
     };
     buildInputs = [pkgconfig libX11 libxkbfile ];
   })) // {inherit libX11 libxkbfile ;};
     
   smproxy = (stdenv.mkDerivation ((if overrides ? smproxy then overrides.smproxy else x: x) {
-    name = "smproxy-1.0.4";
+    name = "smproxy-1.0.5";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/smproxy-1.0.4.tar.bz2;
-      sha256 = "0wj4z4ars9j4k5pysl42jpx4zclrz3ifwgqxrcdlmb3l5xvyb4ip";
+      url = mirror://xorg/X11R7.7/src/everything/smproxy-1.0.5.tar.bz2;
+      sha256 = "02fn5wa1gs2jap6sr9j9yk6zsvz82j8l61pf74iyqwa99q4wnb67";
     };
-    buildInputs = [pkgconfig libSM libXmu libXt ];
-  })) // {inherit libSM libXmu libXt ;};
+    buildInputs = [pkgconfig libICE libSM libXmu libXt ];
+  })) // {inherit libICE libSM libXmu libXt ;};
     
   twm = (stdenv.mkDerivation ((if overrides ? twm then overrides.twm else x: x) {
-    name = "twm-1.0.6";
+    name = "twm-1.0.7";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/individual/app/twm-1.0.6.tar.bz2;
-      sha256 = "1scly9kv3kx8zh8bfljsdd32dsb4j05xzn8c5x270xcshzbwmp77";
+      url = mirror://xorg/individual/app/twm-1.0.7.tar.bz2;
+      sha256 = "0i6dbf5vafi5hm4bcmnj6r412cncjlv9hkkbr6bzlh15qvg56p8g";
     };
-    buildInputs = [pkgconfig libICE libSM libX11 libXext libXmu libXt ];
-  })) // {inherit libICE libSM libX11 libXext libXmu libXt ;};
+    buildInputs = [pkgconfig libICE libSM libX11 libXext libXmu xproto libXt ];
+  })) // {inherit libICE libSM libX11 libXext libXmu xproto libXt ;};
     
   utilmacros = (stdenv.mkDerivation ((if overrides ? utilmacros then overrides.utilmacros else x: x) {
-    name = "util-macros-1.11.0";
+    name = "util-macros-1.17";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/util-macros-1.11.0.tar.bz2;
-      sha256 = "1kya7z5rad93zmc0ij7jhl3shh1k37szmjg1rv75lizqlib4slz8";
+      url = mirror://xorg/X11R7.7/src/everything/util-macros-1.17.tar.bz2;
+      sha256 = "1vbmrcn5n3wp4pyw0n4c3pyvzlc4yf7jzgngavfdq5zwfbgfsybx";
     };
     buildInputs = [pkgconfig ];
   })) // {inherit ;};
@@ -1081,7 +1081,7 @@ let
     name = "videoproto-2.3.1";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/videoproto-2.3.1.tar.bz2;
+      url = mirror://xorg/X11R7.7/src/everything/videoproto-2.3.1.tar.bz2;
       sha256 = "0nk3i6gwkqq1w8zwn7bxz344pi1dwcjrmf6hr330h7hxjcj6viry";
     };
     buildInputs = [pkgconfig ];
@@ -1091,88 +1091,88 @@ let
     name = "windowswmproto-1.0.4";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/windowswmproto-1.0.4.tar.bz2;
+      url = mirror://xorg/X11R7.7/src/everything/windowswmproto-1.0.4.tar.bz2;
       sha256 = "0syjxgy4m8l94qrm03nvn5k6bkxc8knnlld1gbllym97nvnv0ny0";
     };
     buildInputs = [pkgconfig ];
   })) // {inherit ;};
     
   x11perf = (stdenv.mkDerivation ((if overrides ? x11perf then overrides.x11perf else x: x) {
-    name = "x11perf-1.5.3";
+    name = "x11perf-1.5.4";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/individual/app/x11perf-1.5.3.tar.bz2;
-      sha256 = "1g91ksfrvj59hvxvfj1xb730aqscg5wdnc3grrab1wz7mxap6k9r";
+      url = mirror://xorg/X11R7.7/src/everything/x11perf-1.5.4.tar.bz2;
+      sha256 = "111iwpxhnxjiq44w96zf0kszg5zpgv1g3ayx18v4nhdzl9bqivi4";
     };
     buildInputs = [pkgconfig libX11 libXext libXft libXmu libXrender ];
   })) // {inherit libX11 libXext libXft libXmu libXrender ;};
     
   xauth = (stdenv.mkDerivation ((if overrides ? xauth then overrides.xauth else x: x) {
-    name = "xauth-1.0.5";
+    name = "xauth-1.0.7";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/xauth-1.0.5.tar.bz2;
-      sha256 = "0v3lmm3qil8shgm7731pl0wd32kpq7w73w5d4mjq1bqxzw09a4vd";
+      url = mirror://xorg/X11R7.7/src/everything/xauth-1.0.7.tar.bz2;
+      sha256 = "1382wdfiakgckbw1xxavzh1nm34q21b1zzy96qp7ws66xc48rxw4";
     };
     buildInputs = [pkgconfig libX11 libXau libXext libXmu ];
   })) // {inherit libX11 libXau libXext libXmu ;};
     
   xbacklight = (stdenv.mkDerivation ((if overrides ? xbacklight then overrides.xbacklight else x: x) {
-    name = "xbacklight-1.1.2";
+    name = "xbacklight-1.2.0";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/xbacklight-1.1.2.tar.bz2;
-      sha256 = "02b5jfys2msla2yvg5s0knzyxg2104r25czkwd49i8g8kp804bxg";
+      url = mirror://xorg/individual/app/xbacklight-1.2.0.tar.bz2;
+      sha256 = "199n9qszjiz82nbjz6ychh0xl15igm535mv0830wk4m59w9xclji";
     };
-    buildInputs = [pkgconfig libX11 libXrandr ];
-  })) // {inherit libX11 libXrandr ;};
+    buildInputs = [pkgconfig libxcb xcbutil ];
+  })) // {inherit libxcb xcbutil ;};
     
   xbitmaps = (stdenv.mkDerivation ((if overrides ? xbitmaps then overrides.xbitmaps else x: x) {
     name = "xbitmaps-1.1.1";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/xbitmaps-1.1.1.tar.bz2;
+      url = mirror://xorg/X11R7.7/src/everything/xbitmaps-1.1.1.tar.bz2;
       sha256 = "178ym90kwidia6nas4qr5n5yqh698vv8r02js0r4vg3b6lsb0w9n";
     };
     buildInputs = [pkgconfig ];
   })) // {inherit ;};
     
   xcbproto = (stdenv.mkDerivation ((if overrides ? xcbproto then overrides.xcbproto else x: x) {
-    name = "xcb-proto-1.6";
+    name = "xcb-proto-1.8";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/xcb-proto-1.6.tar.bz2;
-      sha256 = "18jwkgd2ayvd0zzwawnbh86b4xqjq29mgsq44h06yj8jkcaw2azm";
+      url = mirror://xorg/individual/xcb/xcb-proto-1.8.tar.bz2;
+      sha256 = "1c11652h9sjynw3scm1pn5z3a6ci888pq7hij8q5n8qrl33icg93";
     };
     buildInputs = [pkgconfig python ];
   })) // {inherit python ;};
     
   xcbutil = (stdenv.mkDerivation ((if overrides ? xcbutil then overrides.xcbutil else x: x) {
-    name = "xcb-util-0.3.8";
+    name = "xcb-util-0.3.9";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/individual/xcb/xcb-util-0.3.8.tar.bz2;
-      sha256 = "1fa7njhg7dsqbrkwrzbkfszdp1dmggvlsrb05qshkg2h8wldkvn1";
+      url = mirror://xorg/individual/xcb/xcb-util-0.3.9.tar.bz2;
+      sha256 = "1i0qbhqkcdlbbsj7ifkyjsffl61whj24d3zlg5pxf3xj1af2a4f6";
     };
     buildInputs = [pkgconfig gperf m4 libxcb xproto ];
   })) // {inherit gperf m4 libxcb xproto ;};
     
   xcbutilimage = (stdenv.mkDerivation ((if overrides ? xcbutilimage then overrides.xcbutilimage else x: x) {
-    name = "xcb-util-image-0.3.8";
+    name = "xcb-util-image-0.3.9";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/individual/xcb/xcb-util-image-0.3.8.tar.bz2;
-      sha256 = "1nd67105lb8qfa7r2lli5sxnipi1p1wnbwa04l9k30kfq8l0afa0";
+      url = mirror://xorg/individual/xcb/xcb-util-image-0.3.9.tar.bz2;
+      sha256 = "1pr1l1nkg197gyl9d0fpwmn72jqpxjfgn9y13q4gawg1m873qnnk";
     };
     buildInputs = [pkgconfig gperf m4 libxcb xcbutil xproto ];
   })) // {inherit gperf m4 libxcb xcbutil xproto ;};
     
   xcbutilkeysyms = (stdenv.mkDerivation ((if overrides ? xcbutilkeysyms then overrides.xcbutilkeysyms else x: x) {
-    name = "xcb-util-keysyms-0.3.8";
+    name = "xcb-util-keysyms-0.3.9";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/individual/xcb/xcb-util-keysyms-0.3.8.tar.bz2;
-      sha256 = "08b1d19gaqv3agpkvh5mgcir11vjy89ywdknva0cb073mzvk4gci";
+      url = mirror://xorg/individual/xcb/xcb-util-keysyms-0.3.9.tar.bz2;
+      sha256 = "0vjwk7vrcfnlhiadv445c6skfxmdrg5v4qf81y8s2s5xagqarqbv";
     };
     buildInputs = [pkgconfig gperf m4 libxcb xproto ];
   })) // {inherit gperf m4 libxcb xproto ;};
@@ -1188,51 +1188,51 @@ let
   })) // {inherit gperf m4 libxcb xproto ;};
     
   xcbutilwm = (stdenv.mkDerivation ((if overrides ? xcbutilwm then overrides.xcbutilwm else x: x) {
-    name = "xcb-util-wm-0.3.8";
+    name = "xcb-util-wm-0.3.9";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/individual/xcb/xcb-util-wm-0.3.8.tar.bz2;
-      sha256 = "01shwv13rfcxycrsla6c5xlrk1qska7kvvj10n7jcibx9jzanmy5";
+      url = mirror://xorg/individual/xcb/xcb-util-wm-0.3.9.tar.bz2;
+      sha256 = "0c30fj33gvwzwhyz1dhsfwni0ai16bxpvxb4l6c6s7vvj7drp3q3";
     };
     buildInputs = [pkgconfig gperf m4 libxcb xproto ];
   })) // {inherit gperf m4 libxcb xproto ;};
     
   xclock = (stdenv.mkDerivation ((if overrides ? xclock then overrides.xclock else x: x) {
-    name = "xclock-1.0.5";
+    name = "xclock-1.0.6";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/individual/app/xclock-1.0.5.tar.bz2;
-      sha256 = "16jcmsmhz503mqv7wz7daqqhm11phsws0g7fryzlz0gk4jg1daak";
+      url = mirror://xorg/individual/app/xclock-1.0.6.tar.bz2;
+      sha256 = "1l1zxr69p0734fnx9rdqw79ahr273hr050sm8xdc0n51n1bnzfr1";
     };
     buildInputs = [pkgconfig libX11 libXaw libXft libxkbfile libXmu libXrender libXt ];
   })) // {inherit libX11 libXaw libXft libxkbfile libXmu libXrender libXt ;};
     
   xcmiscproto = (stdenv.mkDerivation ((if overrides ? xcmiscproto then overrides.xcmiscproto else x: x) {
-    name = "xcmiscproto-1.2.1";
+    name = "xcmiscproto-1.2.2";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/xcmiscproto-1.2.1.tar.bz2;
-      sha256 = "05acy1axzkrq6z9xlbmz1kg66lbgfqzky8v4qfdl16gv5gi2f3kk";
+      url = mirror://xorg/X11R7.7/src/everything/xcmiscproto-1.2.2.tar.bz2;
+      sha256 = "1pyjv45wivnwap2wvsbrzdvjc5ql8bakkbkrvcv6q9bjjf33ccmi";
     };
     buildInputs = [pkgconfig ];
   })) // {inherit ;};
     
   xcmsdb = (stdenv.mkDerivation ((if overrides ? xcmsdb then overrides.xcmsdb else x: x) {
-    name = "xcmsdb-1.0.3";
+    name = "xcmsdb-1.0.4";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/xcmsdb-1.0.3.tar.bz2;
-      sha256 = "102s9lsghdp5n3bsg4chlkhrk0jh0kxvg2g0pyi1zmzfy5hd0dxj";
+      url = mirror://xorg/X11R7.7/src/everything/xcmsdb-1.0.4.tar.bz2;
+      sha256 = "03ms731l3kvaldq7ycbd30j6134b61i3gbll4b2gl022wyzbjq74";
     };
     buildInputs = [pkgconfig libX11 ];
   })) // {inherit libX11 ;};
     
   xcursorgen = (stdenv.mkDerivation ((if overrides ? xcursorgen then overrides.xcursorgen else x: x) {
-    name = "xcursorgen-1.0.4";
+    name = "xcursorgen-1.0.5";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/xcursorgen-1.0.4.tar.bz2;
-      sha256 = "07azdw6w18hdgrd6z3nawrhn1m18nyp24cz54ih91vpz8hpxnany";
+      url = mirror://xorg/X11R7.7/src/everything/xcursorgen-1.0.5.tar.bz2;
+      sha256 = "10f5wk1326mm45gvgpf4m2p0j80fcd0i4c52zikahb91zah72wdw";
     };
     buildInputs = [pkgconfig libpng libX11 libXcursor ];
   })) // {inherit libpng libX11 libXcursor ;};
@@ -1241,58 +1241,58 @@ let
     name = "xcursor-themes-1.0.3";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/xcursor-themes-1.0.3.tar.bz2;
+      url = mirror://xorg/X11R7.7/src/everything/xcursor-themes-1.0.3.tar.bz2;
       sha256 = "1is4bak0qkkhv63mfa5l7492r475586y52yzfxyv3psppn662ilr";
     };
     buildInputs = [pkgconfig libXcursor ];
   })) // {inherit libXcursor ;};
     
   xdm = (stdenv.mkDerivation ((if overrides ? xdm then overrides.xdm else x: x) {
-    name = "xdm-1.1.10";
+    name = "xdm-1.1.11";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/individual/app/xdm-1.1.10.tar.bz2;
-      sha256 = "0zzrlkmppy6mma49db2x1il47rhjqkg9rs91ryl7xyv5iqbgg1ql";
+      url = mirror://xorg/individual/app/xdm-1.1.11.tar.bz2;
+      sha256 = "0iqw11977lpr9nk1is4fca84d531vck0mq7jldwl44m0vrnl5nnl";
     };
     buildInputs = [pkgconfig libX11 libXau libXaw libXdmcp libXext libXft libXinerama libXmu libXpm libXt ];
   })) // {inherit libX11 libXau libXaw libXdmcp libXext libXft libXinerama libXmu libXpm libXt ;};
     
   xdpyinfo = (stdenv.mkDerivation ((if overrides ? xdpyinfo then overrides.xdpyinfo else x: x) {
-    name = "xdpyinfo-1.2.0";
+    name = "xdpyinfo-1.3.0";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/xdpyinfo-1.2.0.tar.bz2;
-      sha256 = "1kmmfawcjxgmp06jb3w7d0pxbrcxrrgfx3m1lbwj3gygir4ssnzy";
+      url = mirror://xorg/X11R7.7/src/everything/xdpyinfo-1.3.0.tar.bz2;
+      sha256 = "0gypsvpmay3lsh3b1dg29pjxv95pkrr21d4w6ys02mrbld24kvi3";
     };
-    buildInputs = [pkgconfig libdmx libX11 libXcomposite libXext libXi libXinerama libXrender libXtst libXxf86dga libXxf86misc libXxf86vm ];
-  })) // {inherit libdmx libX11 libXcomposite libXext libXi libXinerama libXrender libXtst libXxf86dga libXxf86misc libXxf86vm ;};
+    buildInputs = [pkgconfig libdmx libX11 libxcb libXcomposite libXext libXi libXinerama libXrender libXtst libXxf86dga libXxf86misc libXxf86vm ];
+  })) // {inherit libdmx libX11 libxcb libXcomposite libXext libXi libXinerama libXrender libXtst libXxf86dga libXxf86misc libXxf86vm ;};
     
   xdriinfo = (stdenv.mkDerivation ((if overrides ? xdriinfo then overrides.xdriinfo else x: x) {
     name = "xdriinfo-1.0.4";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/xdriinfo-1.0.4.tar.bz2;
+      url = mirror://xorg/X11R7.7/src/everything/xdriinfo-1.0.4.tar.bz2;
       sha256 = "076bjix941znyjmh3j5jjsnhp2gv2iq53d0ks29mvvv87cyy9iim";
     };
     buildInputs = [pkgconfig glproto libX11 ];
   })) // {inherit glproto libX11 ;};
     
   xev = (stdenv.mkDerivation ((if overrides ? xev then overrides.xev else x: x) {
-    name = "xev-1.1.0";
+    name = "xev-1.2.0";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/xev-1.1.0.tar.bz2;
-      sha256 = "1ih1rxf2b6bpsggvbx4ibyx70bzgcyjl98l1894d0smjxmlc4n9q";
+      url = mirror://xorg/X11R7.7/src/everything/xev-1.2.0.tar.bz2;
+      sha256 = "13xk5z7vy87rnn4574z0jfzymdivyc7pl4axim81sx0pmdysg1ip";
     };
-    buildInputs = [pkgconfig libX11 ];
-  })) // {inherit libX11 ;};
+    buildInputs = [pkgconfig libX11 xproto libXrandr ];
+  })) // {inherit libX11 xproto libXrandr ;};
     
   xextproto = (stdenv.mkDerivation ((if overrides ? xextproto then overrides.xextproto else x: x) {
-    name = "xextproto-7.1.2";
+    name = "xextproto-7.2.1";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/xextproto-7.1.2.tar.bz2;
-      sha256 = "16ci2mc9g85fsb7lgml349rbgf97v7l9688by71agv682bhjky7n";
+      url = mirror://xorg/X11R7.7/src/everything/xextproto-7.2.1.tar.bz2;
+      sha256 = "06kdanbnprxvgl56l5h0lqj4b0f1fbb1ndha33mv5wvy802v2lvw";
     };
     buildInputs = [pkgconfig ];
   })) // {inherit ;};
@@ -1311,7 +1311,7 @@ let
     name = "xf86bigfontproto-1.2.0";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/xf86bigfontproto-1.2.0.tar.bz2;
+      url = mirror://xorg/X11R7.7/src/everything/xf86bigfontproto-1.2.0.tar.bz2;
       sha256 = "0j0n7sj5xfjpmmgx6n5x556rw21hdd18fwmavp95wps7qki214ms";
     };
     buildInputs = [pkgconfig ];
@@ -1321,7 +1321,7 @@ let
     name = "xf86dgaproto-2.1";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/xf86dgaproto-2.1.tar.bz2;
+      url = mirror://xorg/X11R7.7/src/everything/xf86dgaproto-2.1.tar.bz2;
       sha256 = "0l4hx48207mx0hp09026r6gy9nl3asbq0c75hri19wp1118zcpmc";
     };
     buildInputs = [pkgconfig ];
@@ -1331,98 +1331,78 @@ let
     name = "xf86driproto-2.1.1";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/individual/proto/xf86driproto-2.1.1.tar.bz2;
+      url = mirror://xorg/X11R7.7/src/everything/xf86driproto-2.1.1.tar.bz2;
       sha256 = "07v69m0g2dfzb653jni4x656jlr7l84c1k39j8qc8vfb45r8sjww";
     };
     buildInputs = [pkgconfig ];
   })) // {inherit ;};
     
-  xf86inputacecad = (stdenv.mkDerivation ((if overrides ? xf86inputacecad then overrides.xf86inputacecad else x: x) {
-    name = "xf86-input-acecad-1.4.0";
-    builder = ./builder.sh;
-    src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/xf86-input-acecad-1.4.0.tar.bz2;
-      sha256 = "0mnmvffxwgcvsa208vffsqlai7lldjc46rdk6j0j4q00df5isd28";
-    };
-    buildInputs = [pkgconfig inputproto randrproto xorgserver xproto ];
-  })) // {inherit inputproto randrproto xorgserver xproto ;};
-    
-  xf86inputaiptek = (stdenv.mkDerivation ((if overrides ? xf86inputaiptek then overrides.xf86inputaiptek else x: x) {
-    name = "xf86-input-aiptek-1.3.1";
-    builder = ./builder.sh;
-    src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/xf86-input-aiptek-1.3.1.tar.bz2;
-      sha256 = "16pby473s65lfd2v60fwayzfhf1n6x696lrx720zwb2p22rlsna3";
-    };
-    buildInputs = [pkgconfig inputproto randrproto xorgserver xproto ];
-  })) // {inherit inputproto randrproto xorgserver xproto ;};
-    
   xf86inputevdev = (stdenv.mkDerivation ((if overrides ? xf86inputevdev then overrides.xf86inputevdev else x: x) {
-    name = "xf86-input-evdev-2.6.0";
+    name = "xf86-input-evdev-2.7.3";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/individual/driver/xf86-input-evdev-2.6.0.tar.bz2;
-      sha256 = "1b2kcxm7bc255ym56dpl1fw3km44f5ny3hwn65sa90w13acz7rxh";
+      url = mirror://xorg/individual/driver/xf86-input-evdev-2.7.3.tar.bz2;
+      sha256 = "01557w1kmsaqdsc42pxyypig10l5r5vh9axz9g22hg9cc09r8f7b";
     };
-    buildInputs = [pkgconfig inputproto xorgserver xproto ];
-  })) // {inherit inputproto xorgserver xproto ;};
+    buildInputs = [pkgconfig inputproto udev xorgserver xproto ];
+  })) // {inherit inputproto udev xorgserver xproto ;};
     
   xf86inputjoystick = (stdenv.mkDerivation ((if overrides ? xf86inputjoystick then overrides.xf86inputjoystick else x: x) {
-    name = "xf86-input-joystick-1.5.0";
+    name = "xf86-input-joystick-1.6.1";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/xf86-input-joystick-1.5.0.tar.bz2;
-      sha256 = "1ac2lap4npylyzg0pi0zy0n48wvicgz9kw0z9ih9ylk9sz2ii0bi";
+      url = mirror://xorg/X11R7.7/src/everything/xf86-input-joystick-1.6.1.tar.bz2;
+      sha256 = "1xgpkdmfw4ahjlva97gs9sllzw8nlpa8mxj59g28fxhak67mvv8x";
     };
     buildInputs = [pkgconfig inputproto kbproto xorgserver xproto ];
   })) // {inherit inputproto kbproto xorgserver xproto ;};
     
   xf86inputkeyboard = (stdenv.mkDerivation ((if overrides ? xf86inputkeyboard then overrides.xf86inputkeyboard else x: x) {
-    name = "xf86-input-keyboard-1.5.0";
+    name = "xf86-input-keyboard-1.6.1";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/xf86-input-keyboard-1.5.0.tar.bz2;
-      sha256 = "1c4ww4yj23shqwhc52r512qsy5baf1sxsb7jj7pfnralj07520r3";
+      url = mirror://xorg/X11R7.7/src/everything/xf86-input-keyboard-1.6.1.tar.bz2;
+      sha256 = "1hwc1bjw5mxv186xbrxiky0agfglwqg8fsxqdh4br1vzgxpck7ma";
     };
     buildInputs = [pkgconfig inputproto xorgserver xproto ];
   })) // {inherit inputproto xorgserver xproto ;};
     
   xf86inputmouse = (stdenv.mkDerivation ((if overrides ? xf86inputmouse then overrides.xf86inputmouse else x: x) {
-    name = "xf86-input-mouse-1.6.0";
+    name = "xf86-input-mouse-1.7.2";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/xf86-input-mouse-1.6.0.tar.bz2;
-      sha256 = "1nzvlbhvdyki3h1s4x2i3ps1immf3wfns6az2i3669v8a5g29bn7";
+      url = mirror://xorg/X11R7.7/src/everything/xf86-input-mouse-1.7.2.tar.bz2;
+      sha256 = "0fs1lwnycyv3d0m6l2wrnlgvbs8qw66d93hwlnmrsswfq5bp6ark";
     };
     buildInputs = [pkgconfig inputproto xorgserver xproto ];
   })) // {inherit inputproto xorgserver xproto ;};
     
   xf86inputsynaptics = (stdenv.mkDerivation ((if overrides ? xf86inputsynaptics then overrides.xf86inputsynaptics else x: x) {
-    name = "xf86-input-synaptics-1.5.0";
+    name = "xf86-input-synaptics-1.6.2";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/individual/driver/xf86-input-synaptics-1.5.0.tar.bz2;
-      sha256 = "0khwda8lrrvrdb37i4i1kdhg8f44kgcjq9y209ds7ja9zjcm7k4m";
+      url = mirror://xorg/individual/driver/xf86-input-synaptics-1.6.2.tar.bz2;
+      sha256 = "082rlbyw63sashjbwd7dd0a0smp5n8yv9bihy19c706lhnhddxy3";
     };
     buildInputs = [pkgconfig inputproto randrproto recordproto libX11 libXi xorgserver xproto libXtst ];
   })) // {inherit inputproto randrproto recordproto libX11 libXi xorgserver xproto libXtst ;};
     
   xf86inputvmmouse = (stdenv.mkDerivation ((if overrides ? xf86inputvmmouse then overrides.xf86inputvmmouse else x: x) {
-    name = "xf86-input-vmmouse-12.6.10";
+    name = "xf86-input-vmmouse-12.9.0";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/xf86-input-vmmouse-12.6.10.tar.bz2;
-      sha256 = "0409lkwk1ws8vw4axxilwmcs8qxj8lq5dma2i2iz49q6hrd9sdm6";
+      url = mirror://xorg/individual/driver/xf86-input-vmmouse-12.9.0.tar.bz2;
+      sha256 = "1gwrna96f0p4gpjhin8yx01y5xvns2j15f7hw1jvqf7fpzv01kzv";
     };
     buildInputs = [pkgconfig inputproto randrproto xorgserver xproto ];
   })) // {inherit inputproto randrproto xorgserver xproto ;};
     
   xf86inputvoid = (stdenv.mkDerivation ((if overrides ? xf86inputvoid then overrides.xf86inputvoid else x: x) {
-    name = "xf86-input-void-1.3.1";
+    name = "xf86-input-void-1.4.0";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/xf86-input-void-1.3.1.tar.bz2;
-      sha256 = "0x662i756p0nqmfv76ppm28ir2sbvcm32r71ycd9bxc3mj29g9mb";
+      url = mirror://xorg/X11R7.7/src/everything/xf86-input-void-1.4.0.tar.bz2;
+      sha256 = "01bmk324fq48wydvy1qrnxbw6qz0fjd0i80g0n4cqr1c4mjmif9a";
     };
     buildInputs = [pkgconfig xorgserver xproto ];
   })) // {inherit xorgserver xproto ;};
@@ -1437,145 +1417,115 @@ let
     buildInputs = [pkgconfig ];
   })) // {inherit ;};
     
-  xf86videoapm = (stdenv.mkDerivation ((if overrides ? xf86videoapm then overrides.xf86videoapm else x: x) {
-    name = "xf86-video-apm-1.2.3";
-    builder = ./builder.sh;
-    src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/xf86-video-apm-1.2.3.tar.bz2;
-      sha256 = "1nih9ayiw13aa1s8j6gr99b207215if055c6yvsrssnpvccflij0";
-    };
-    buildInputs = [pkgconfig fontsproto libpciaccess randrproto renderproto videoproto xextproto xorgserver xproto ];
-  })) // {inherit fontsproto libpciaccess randrproto renderproto videoproto xextproto xorgserver xproto ;};
-    
   xf86videoark = (stdenv.mkDerivation ((if overrides ? xf86videoark then overrides.xf86videoark else x: x) {
-    name = "xf86-video-ark-0.7.3";
+    name = "xf86-video-ark-0.7.4";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/xf86-video-ark-0.7.3.tar.bz2;
-      sha256 = "164gyaaddjjma0xqys0knid2rsd0c7jlab02c8wh3bk4bib9l51r";
+      url = mirror://xorg/X11R7.7/src/everything/xf86-video-ark-0.7.4.tar.bz2;
+      sha256 = "194zc35ivfh3vcxcilf9nbi88c2di8kbh84x535cljlpiajdnk5x";
     };
     buildInputs = [pkgconfig fontsproto libpciaccess randrproto renderproto xextproto xorgserver xproto ];
   })) // {inherit fontsproto libpciaccess randrproto renderproto xextproto xorgserver xproto ;};
     
   xf86videoast = (stdenv.mkDerivation ((if overrides ? xf86videoast then overrides.xf86videoast else x: x) {
-    name = "xf86-video-ast-0.91.10";
+    name = "xf86-video-ast-0.93.10";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/xf86-video-ast-0.91.10.tar.bz2;
-      sha256 = "05fcp0svdd4skkfgag1rrram6v3xzgasf582dihpyrwlz28186vy";
+      url = mirror://xorg/X11R7.7/src/everything/xf86-video-ast-0.93.10.tar.bz2;
+      sha256 = "1q64z8qqa0ix3cymqiwk1s3sphd1fvvz30lvyxhgkgciygz6dm69";
     };
     buildInputs = [pkgconfig fontsproto libpciaccess randrproto renderproto videoproto xextproto xorgserver xproto ];
   })) // {inherit fontsproto libpciaccess randrproto renderproto videoproto xextproto xorgserver xproto ;};
     
   xf86videoati = (stdenv.mkDerivation ((if overrides ? xf86videoati then overrides.xf86videoati else x: x) {
-    name = "xf86-video-ati-6.14.3";
+    name = "xf86-video-ati-6.14.6";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/individual/driver/xf86-video-ati-6.14.3.tar.bz2;
-      sha256 = "1d1ph7xvgcr7rdf5sgibhas625aghvm3f61yzwmfk8znxx4jcjl4";
+      url = mirror://xorg/individual/driver/xf86-video-ati-6.14.6.tar.bz2;
+      sha256 = "0dpcdgw7vmx53l3byp900na5s980v1nw11a7y5yps67hwjrqclma";
     };
     buildInputs = [pkgconfig fontsproto libdrm udev libpciaccess randrproto renderproto videoproto xextproto xf86driproto xorgserver xproto ];
   })) // {inherit fontsproto libdrm udev libpciaccess randrproto renderproto videoproto xextproto xf86driproto xorgserver xproto ;};
     
-  xf86videochips = (stdenv.mkDerivation ((if overrides ? xf86videochips then overrides.xf86videochips else x: x) {
-    name = "xf86-video-chips-1.2.3";
-    builder = ./builder.sh;
-    src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/xf86-video-chips-1.2.3.tar.bz2;
-      sha256 = "07fb03cxdlis2rjphz2pl59cjhldrhqric8p0gi4wkgq0s72fq85";
-    };
-    buildInputs = [pkgconfig fontsproto libpciaccess randrproto renderproto videoproto xextproto xorgserver xproto ];
-  })) // {inherit fontsproto libpciaccess randrproto renderproto videoproto xextproto xorgserver xproto ;};
-    
   xf86videocirrus = (stdenv.mkDerivation ((if overrides ? xf86videocirrus then overrides.xf86videocirrus else x: x) {
-    name = "xf86-video-cirrus-1.3.2";
+    name = "xf86-video-cirrus-1.5.1";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/xf86-video-cirrus-1.3.2.tar.bz2;
-      sha256 = "06na525xy5d6xf5g13bjsk9cyxly5arzgrk9j8dmxfll5jj9i6jj";
+      url = mirror://xorg/individual/driver/xf86-video-cirrus-1.5.1.tar.bz2;
+      sha256 = "0my54x52fsa82bsh196hz79750xjlv8ddbvin7230ck7pnf44md9";
     };
     buildInputs = [pkgconfig fontsproto libpciaccess randrproto renderproto videoproto xextproto xorgserver xproto ];
   })) // {inherit fontsproto libpciaccess randrproto renderproto videoproto xextproto xorgserver xproto ;};
     
   xf86videodummy = (stdenv.mkDerivation ((if overrides ? xf86videodummy then overrides.xf86videodummy else x: x) {
-    name = "xf86-video-dummy-0.3.4";
+    name = "xf86-video-dummy-0.3.5";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/xf86-video-dummy-0.3.4.tar.bz2;
-      sha256 = "1p0vhxvx25d8fp59i72664smhd0z5zw0i2kipk0879xk1vsxz13y";
+      url = mirror://xorg/X11R7.7/src/everything/xf86-video-dummy-0.3.5.tar.bz2;
+      sha256 = "0pyr50kqh7g84r4p0x09ay5kxax20dip9sh8h3cbd4xv8cswdbfm";
     };
     buildInputs = [pkgconfig fontsproto randrproto renderproto videoproto xf86dgaproto xorgserver xproto ];
   })) // {inherit fontsproto randrproto renderproto videoproto xf86dgaproto xorgserver xproto ;};
     
   xf86videofbdev = (stdenv.mkDerivation ((if overrides ? xf86videofbdev then overrides.xf86videofbdev else x: x) {
-    name = "xf86-video-fbdev-0.4.2";
+    name = "xf86-video-fbdev-0.4.3";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/xf86-video-fbdev-0.4.2.tar.bz2;
-      sha256 = "1mc23w0bfmak5216411xh58nrs93jlxmi6l412hmqzhxnjs73clk";
+      url = mirror://xorg/individual/driver/xf86-video-fbdev-0.4.3.tar.bz2;
+      sha256 = "0ca8khgy3wv0fys7s4087apvnp8j86blxj5m5m70l10hs5x06yzz";
     };
     buildInputs = [pkgconfig fontsproto libpciaccess randrproto renderproto videoproto xorgserver xproto ];
   })) // {inherit fontsproto libpciaccess randrproto renderproto videoproto xorgserver xproto ;};
     
   xf86videogeode = (stdenv.mkDerivation ((if overrides ? xf86videogeode then overrides.xf86videogeode else x: x) {
-    name = "xf86-video-geode-2.11.10";
+    name = "xf86-video-geode-2.11.13";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/xf86-video-geode-2.11.10.tar.bz2;
-      sha256 = "1zdb3y5df1dcqlvijg8hxcd6520a5c69jk52yz7ww194ka2c8icf";
+      url = mirror://xorg/X11R7.7/src/everything/xf86-video-geode-2.11.13.tar.bz2;
+      sha256 = "09p2cjd2fb7h32k9qs4wp7qvhfn2zv454spv5mfplv7w2jis4863";
     };
     buildInputs = [pkgconfig fontsproto libpciaccess randrproto renderproto videoproto xextproto xorgserver xproto ];
   })) // {inherit fontsproto libpciaccess randrproto renderproto videoproto xextproto xorgserver xproto ;};
     
   xf86videoglide = (stdenv.mkDerivation ((if overrides ? xf86videoglide then overrides.xf86videoglide else x: x) {
-    name = "xf86-video-glide-1.1.0";
+    name = "xf86-video-glide-1.2.0";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/xf86-video-glide-1.1.0.tar.bz2;
-      sha256 = "1wf35ai8z3qqk2a97rp72jzvm28ylw2wj2hllrsn29p7jpznh5aw";
+      url = mirror://xorg/X11R7.7/src/everything/xf86-video-glide-1.2.0.tar.bz2;
+      sha256 = "0byapm9mnpqk3wijfnnan3d22ii5cw6dmg4xn1625iiz89j5vs1l";
     };
     buildInputs = [pkgconfig xextproto xorgserver xproto ];
   })) // {inherit xextproto xorgserver xproto ;};
     
   xf86videoglint = (stdenv.mkDerivation ((if overrides ? xf86videoglint then overrides.xf86videoglint else x: x) {
-    name = "xf86-video-glint-1.2.5";
+    name = "xf86-video-glint-1.2.7";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/xf86-video-glint-1.2.5.tar.bz2;
-      sha256 = "0jw1kkyja8hvvhrr3ldl1r5vpqfhn1xmqkpgd2jrkc5p59rz4xan";
+      url = mirror://xorg/X11R7.7/src/everything/xf86-video-glint-1.2.7.tar.bz2;
+      sha256 = "0nf36jryabpncqq4m6sfsnmzk00f7gvfmjnl8l8sfy7w6sa6iacs";
     };
-    buildInputs = [pkgconfig fontsproto libdrm libpciaccess randrproto renderproto videoproto xextproto xf86dgaproto xf86driproto xorgserver xproto ];
-  })) // {inherit fontsproto libdrm libpciaccess randrproto renderproto videoproto xextproto xf86dgaproto xf86driproto xorgserver xproto ;};
+    buildInputs = [pkgconfig libpciaccess videoproto xextproto xf86dgaproto xorgserver xproto ];
+  })) // {inherit libpciaccess videoproto xextproto xf86dgaproto xorgserver xproto ;};
     
   xf86videoi128 = (stdenv.mkDerivation ((if overrides ? xf86videoi128 then overrides.xf86videoi128 else x: x) {
-    name = "xf86-video-i128-1.3.4";
+    name = "xf86-video-i128-1.3.5";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/xf86-video-i128-1.3.4.tar.bz2;
-      sha256 = "1kwb4ifxwm77s1ks19csmq2ymgs36bxqwvwv24ssvxb9znki76xn";
-    };
-    buildInputs = [pkgconfig fontsproto libpciaccess randrproto renderproto videoproto xextproto xorgserver xproto ];
-  })) // {inherit fontsproto libpciaccess randrproto renderproto videoproto xextproto xorgserver xproto ;};
-    
-  xf86videoi740 = (stdenv.mkDerivation ((if overrides ? xf86videoi740 then overrides.xf86videoi740 else x: x) {
-    name = "xf86-video-i740-1.3.2";
-    builder = ./builder.sh;
-    src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/xf86-video-i740-1.3.2.tar.bz2;
-      sha256 = "0hzr5fz6d5jk9jxh9plfgvgias3w7xzyg1n4gx0hs2lc7mm9qm28";
+      url = mirror://xorg/X11R7.7/src/everything/xf86-video-i128-1.3.5.tar.bz2;
+      sha256 = "1sik8ck410hb2885vy7rlc590hw5br8lr2fzxgmv55jyawgfpv9y";
     };
     buildInputs = [pkgconfig fontsproto libpciaccess randrproto renderproto videoproto xextproto xorgserver xproto ];
   })) // {inherit fontsproto libpciaccess randrproto renderproto videoproto xextproto xorgserver xproto ;};
     
   xf86videointel = (stdenv.mkDerivation ((if overrides ? xf86videointel then overrides.xf86videointel else x: x) {
-    name = "xf86-video-intel-2.15.0";
+    name = "xf86-video-intel-2.20.10";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/individual/driver/xf86-video-intel-2.15.0.tar.bz2;
-      sha256 = "080pkhjp910wy36crpgi0dmcwpcx8w2r3k4s0dz6v14bmgly2xy3";
+      url = mirror://xorg/individual/driver/xf86-video-intel-2.20.10.tar.bz2;
+      sha256 = "1kfd6qiqxyqhjp8g1xcipkldsf7xa47q8zfdhxg3qzw77n6a4hfz";
     };
-    buildInputs = [pkgconfig dri2proto fontsproto libdrm udev libpciaccess randrproto renderproto libX11 xcbutil libxcb libXext xextproto xf86driproto libXfixes xorgserver xproto libXvMC ];
-  })) // {inherit dri2proto fontsproto libdrm udev libpciaccess randrproto renderproto libX11 xcbutil libxcb libXext xextproto xf86driproto libXfixes xorgserver xproto libXvMC ;};
+    buildInputs = [pkgconfig dri2proto fontsproto libdrm udev libpciaccess pixman randrproto renderproto libX11 xcbutil libxcb libXext xextproto xf86driproto libXfixes xorgserver xproto libXrender libXvMC ];
+  })) // {inherit dri2proto fontsproto libdrm udev libpciaccess pixman randrproto renderproto libX11 xcbutil libxcb libXext xextproto xf86driproto libXfixes xorgserver xproto libXrender libXvMC ;};
     
   xf86videointel_2_14_901 = (stdenv.mkDerivation ((if overrides ? xf86videointel_2_14_901 then overrides.xf86videointel_2_14_901 else x: x) {
     name = "xf86-video-intel-2.14.901";
@@ -1598,170 +1548,110 @@ let
   })) // {inherit dri2proto fontsproto libdrm udev libpciaccess pixman randrproto renderproto libX11 xcbutil libxcb libXext xextproto xf86driproto libXfixes xorgserver xproto libXrender libXvMC ;};
     
   xf86videomach64 = (stdenv.mkDerivation ((if overrides ? xf86videomach64 then overrides.xf86videomach64 else x: x) {
-    name = "xf86-video-mach64-6.8.2";
+    name = "xf86-video-mach64-6.9.1";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/xf86-video-mach64-6.8.2.tar.bz2;
-      sha256 = "07b7dkb6xc10pvf483dg52r2klpikmw339i5ln9ig913601r84dr";
+      url = mirror://xorg/X11R7.7/src/everything/xf86-video-mach64-6.9.1.tar.bz2;
+      sha256 = "0kl3kvpc2ny48z89313i9fi4cxzwb2pllvxcr9j5ly680ygx8slz";
     };
-    buildInputs = [pkgconfig fontsproto libdrm libpciaccess randrproto renderproto videoproto xextproto xf86driproto xf86miscproto xineramaproto xorgserver xproto ];
-  })) // {inherit fontsproto libdrm libpciaccess randrproto renderproto videoproto xextproto xf86driproto xf86miscproto xineramaproto xorgserver xproto ;};
+    buildInputs = [pkgconfig fontsproto libdrm libpciaccess randrproto renderproto videoproto xextproto xf86driproto xorgserver xproto ];
+  })) // {inherit fontsproto libdrm libpciaccess randrproto renderproto videoproto xextproto xf86driproto xorgserver xproto ;};
     
   xf86videomga = (stdenv.mkDerivation ((if overrides ? xf86videomga then overrides.xf86videomga else x: x) {
-    name = "xf86-video-mga-1.4.13";
+    name = "xf86-video-mga-1.5.0";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/xf86-video-mga-1.4.13.tar.bz2;
-      sha256 = "1xnzxmp9cfpi6q7fx2r74iwyb33wkdrqcf38dhwydbaaxigvsmxn";
+      url = mirror://xorg/X11R7.7/src/everything/xf86-video-mga-1.5.0.tar.bz2;
+      sha256 = "03l3wz5kz0hmxmzqqbkgn7pf9d956jlag04rb701a0fr1mw3v66a";
     };
     buildInputs = [pkgconfig fontsproto libdrm libpciaccess randrproto renderproto videoproto xextproto xf86driproto xorgserver xproto ];
   })) // {inherit fontsproto libdrm libpciaccess randrproto renderproto videoproto xextproto xf86driproto xorgserver xproto ;};
     
   xf86videoneomagic = (stdenv.mkDerivation ((if overrides ? xf86videoneomagic then overrides.xf86videoneomagic else x: x) {
-    name = "xf86-video-neomagic-1.2.5";
+    name = "xf86-video-neomagic-1.2.6";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/xf86-video-neomagic-1.2.5.tar.bz2;
-      sha256 = "0jshn5k1byq0msl1ymip3m2xycrd8jkk6nzm5dx2av5xlj1rxdn0";
+      url = mirror://xorg/X11R7.7/src/everything/xf86-video-neomagic-1.2.6.tar.bz2;
+      sha256 = "124qci48xrk0w2jy91n7vqs7s6q397zyiqqszhmkx6ld7six57mi";
     };
     buildInputs = [pkgconfig fontsproto libpciaccess randrproto renderproto videoproto xextproto xf86dgaproto xorgserver xproto ];
   })) // {inherit fontsproto libpciaccess randrproto renderproto videoproto xextproto xf86dgaproto xorgserver xproto ;};
     
   xf86videonewport = (stdenv.mkDerivation ((if overrides ? xf86videonewport then overrides.xf86videonewport else x: x) {
-    name = "xf86-video-newport-0.2.3";
+    name = "xf86-video-newport-0.2.4";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/xf86-video-newport-0.2.3.tar.bz2;
-      sha256 = "0w02rz49gipnfl33vak3zgis8bh9i0v5ykyj8qh9vzddjm7ypjp6";
+      url = mirror://xorg/X11R7.7/src/everything/xf86-video-newport-0.2.4.tar.bz2;
+      sha256 = "1yafmp23jrfdmc094i6a4dsizapsc9v0pl65cpc8w1kvn7343k4i";
     };
     buildInputs = [pkgconfig fontsproto randrproto renderproto videoproto xorgserver xproto ];
   })) // {inherit fontsproto randrproto renderproto videoproto xorgserver xproto ;};
     
   xf86videonv = (stdenv.mkDerivation ((if overrides ? xf86videonv then overrides.xf86videonv else x: x) {
-    name = "xf86-video-nv-2.1.18";
+    name = "xf86-video-nv-2.1.20";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/xf86-video-nv-2.1.18.tar.bz2;
-      sha256 = "05glbi9jc7j9nm4sf4qvl3z87s48ibm3i283lqz85kbphg62dxvc";
+      url = mirror://xorg/individual/driver/xf86-video-nv-2.1.20.tar.bz2;
+      sha256 = "1gqh1khc4zalip5hh2nksgs7i3piqq18nncgmsx9qvzi05azd5c3";
     };
     buildInputs = [pkgconfig fontsproto libpciaccess randrproto renderproto videoproto xextproto xorgserver xproto ];
   })) // {inherit fontsproto libpciaccess randrproto renderproto videoproto xextproto xorgserver xproto ;};
     
   xf86videoopenchrome = (stdenv.mkDerivation ((if overrides ? xf86videoopenchrome then overrides.xf86videoopenchrome else x: x) {
-    name = "xf86-video-openchrome-0.2.904";
+    name = "xf86-video-openchrome-0.2.906";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/xf86-video-openchrome-0.2.904.tar.bz2;
-      sha256 = "1sksddn0pc3izvab5ppxhprs1xzk5ijwqz5ylivx1cb5hg2gggf7";
+      url = mirror://xorg/X11R7.7/src/everything/xf86-video-openchrome-0.2.906.tar.bz2;
+      sha256 = "0hgzn1r7ig94xbr9dvq0bp1nxqlfp2ki8823jca3f22a2kf8wmg7";
     };
     buildInputs = [pkgconfig fontsproto libdrm libpciaccess randrproto renderproto videoproto libX11 libXext xextproto xf86driproto xorgserver xproto libXvMC ];
   })) // {inherit fontsproto libdrm libpciaccess randrproto renderproto videoproto libX11 libXext xextproto xf86driproto xorgserver xproto libXvMC ;};
     
   xf86videor128 = (stdenv.mkDerivation ((if overrides ? xf86videor128 then overrides.xf86videor128 else x: x) {
-    name = "xf86-video-r128-6.8.1";
+    name = "xf86-video-r128-6.8.2";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/xf86-video-r128-6.8.1.tar.bz2;
-      sha256 = "1jlybabm3k09hhlzx1xilndqngk3xgdck66n94sr02w5hg622zji";
+      url = mirror://xorg/X11R7.7/src/everything/xf86-video-r128-6.8.2.tar.bz2;
+      sha256 = "1c84x40k9qz9dnf5qs6nnjcgz7px6mpc3rbk8mj62zhp7mf16hbv";
     };
-    buildInputs = [pkgconfig fontsproto libdrm libpciaccess randrproto renderproto videoproto xextproto xf86driproto xf86miscproto xineramaproto xorgserver xproto ];
-  })) // {inherit fontsproto libdrm libpciaccess randrproto renderproto videoproto xextproto xf86driproto xf86miscproto xineramaproto xorgserver xproto ;};
-    
-  xf86videorendition = (stdenv.mkDerivation ((if overrides ? xf86videorendition then overrides.xf86videorendition else x: x) {
-    name = "xf86-video-rendition-4.2.4";
-    builder = ./builder.sh;
-    src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/xf86-video-rendition-4.2.4.tar.bz2;
-      sha256 = "1a9anxgqs7wc8d7jb5nw6dgmynw0sxiwp9p90h4w19y315kqx6rv";
-    };
-    buildInputs = [pkgconfig fontsproto libpciaccess randrproto renderproto xextproto xorgserver xproto ];
-  })) // {inherit fontsproto libpciaccess randrproto renderproto xextproto xorgserver xproto ;};
-    
-  xf86videos3 = (stdenv.mkDerivation ((if overrides ? xf86videos3 then overrides.xf86videos3 else x: x) {
-    name = "xf86-video-s3-0.6.3";
-    builder = ./builder.sh;
-    src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/xf86-video-s3-0.6.3.tar.bz2;
-      sha256 = "0i2i1080cw3pxy1pm43bskb80n7wql0cxpyd2s61v0didsm6b7zd";
-    };
-    buildInputs = [pkgconfig fontsproto libpciaccess randrproto renderproto videoproto xextproto xorgserver xproto ];
-  })) // {inherit fontsproto libpciaccess randrproto renderproto videoproto xextproto xorgserver xproto ;};
-    
-  xf86videos3virge = (stdenv.mkDerivation ((if overrides ? xf86videos3virge then overrides.xf86videos3virge else x: x) {
-    name = "xf86-video-s3virge-1.10.4";
-    builder = ./builder.sh;
-    src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/xf86-video-s3virge-1.10.4.tar.bz2;
-      sha256 = "1f3zjs6a3j2a8lfdilijggpwbg9cs88qksrvzvd71ggxf5p0vl0w";
-    };
-    buildInputs = [pkgconfig fontsproto libpciaccess randrproto renderproto videoproto xextproto xorgserver xproto ];
-  })) // {inherit fontsproto libpciaccess randrproto renderproto videoproto xextproto xorgserver xproto ;};
+    buildInputs = [pkgconfig fontsproto libdrm libpciaccess randrproto renderproto videoproto xextproto xf86driproto xf86miscproto xorgserver xproto ];
+  })) // {inherit fontsproto libdrm libpciaccess randrproto renderproto videoproto xextproto xf86driproto xf86miscproto xorgserver xproto ;};
     
   xf86videosavage = (stdenv.mkDerivation ((if overrides ? xf86videosavage then overrides.xf86videosavage else x: x) {
-    name = "xf86-video-savage-2.3.1";
+    name = "xf86-video-savage-2.3.4";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/xf86-video-savage-2.3.1.tar.bz2;
-      sha256 = "1ays1l4phyjcdikc9d1zwgswivcrb1grkh7klv5klvqahbfxqjib";
+      url = mirror://xorg/X11R7.7/src/everything/xf86-video-savage-2.3.4.tar.bz2;
+      sha256 = "0jdy4wv3k3ylx3lajjcbsg37z2hf6366a1jvv16sv1ln6dk6lris";
     };
     buildInputs = [pkgconfig fontsproto libdrm libpciaccess randrproto renderproto videoproto xextproto xf86driproto xorgserver xproto ];
   })) // {inherit fontsproto libdrm libpciaccess randrproto renderproto videoproto xextproto xf86driproto xorgserver xproto ;};
     
   xf86videosiliconmotion = (stdenv.mkDerivation ((if overrides ? xf86videosiliconmotion then overrides.xf86videosiliconmotion else x: x) {
-    name = "xf86-video-siliconmotion-1.7.4";
+    name = "xf86-video-siliconmotion-1.7.6";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/xf86-video-siliconmotion-1.7.4.tar.bz2;
-      sha256 = "1mq4dsg2f77wxl0n4fnm6a5p3lajyhra6rxx29z52p5b1x412xdl";
+      url = mirror://xorg/X11R7.7/src/everything/xf86-video-siliconmotion-1.7.6.tar.bz2;
+      sha256 = "01sdl6ky1vmvmfgx2d44i35rqafi0z07xdy40cvindcr2k91p7x5";
     };
-    buildInputs = [pkgconfig fontsproto libpciaccess randrproto renderproto videoproto xextproto xorgserver xproto ];
-  })) // {inherit fontsproto libpciaccess randrproto renderproto videoproto xextproto xorgserver xproto ;};
+    buildInputs = [pkgconfig fontsproto libpciaccess videoproto xextproto xorgserver xproto ];
+  })) // {inherit fontsproto libpciaccess videoproto xextproto xorgserver xproto ;};
     
   xf86videosis = (stdenv.mkDerivation ((if overrides ? xf86videosis then overrides.xf86videosis else x: x) {
-    name = "xf86-video-sis-0.10.3";
+    name = "xf86-video-sis-0.10.4";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/xf86-video-sis-0.10.3.tar.bz2;
-      sha256 = "0dy7a7iil35nz1xlazrcq0sp474p6wy0f1pa5y0spbfj5zib6fcv";
+      url = mirror://xorg/X11R7.7/src/everything/xf86-video-sis-0.10.4.tar.bz2;
+      sha256 = "03diq0l93lfsipmwkpdb2ysgbxxryl6yakpghzc3fksjxa01112f";
     };
     buildInputs = [pkgconfig fontsproto libdrm libpciaccess randrproto renderproto videoproto xextproto xf86dgaproto xf86driproto xineramaproto xorgserver xproto ];
   })) // {inherit fontsproto libdrm libpciaccess randrproto renderproto videoproto xextproto xf86dgaproto xf86driproto xineramaproto xorgserver xproto ;};
     
-  xf86videosisusb = (stdenv.mkDerivation ((if overrides ? xf86videosisusb then overrides.xf86videosisusb else x: x) {
-    name = "xf86-video-sisusb-0.9.4";
-    builder = ./builder.sh;
-    src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/xf86-video-sisusb-0.9.4.tar.bz2;
-      sha256 = "0b5afc1dqj8h34fldl35hzf7wphj1x76czkd461bfarnvyljgfrb";
-    };
-    buildInputs = [pkgconfig fontsproto randrproto renderproto videoproto xextproto xineramaproto xorgserver xproto ];
-  })) // {inherit fontsproto randrproto renderproto videoproto xextproto xineramaproto xorgserver xproto ;};
-    
-  xf86videosuncg14 = (stdenv.mkDerivation ((if overrides ? xf86videosuncg14 then overrides.xf86videosuncg14 else x: x) {
-    name = "xf86-video-suncg14-1.1.1";
-    builder = ./builder.sh;
-    src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/xf86-video-suncg14-1.1.1.tar.bz2;
-      sha256 = "1n108xbwg803v2sk51galx66ph8wdb0ym84fx45h0jrr41wh0hyb";
-    };
-    buildInputs = [pkgconfig fontsproto randrproto renderproto xorgserver xproto ];
-  })) // {inherit fontsproto randrproto renderproto xorgserver xproto ;};
-    
-  xf86videosuncg3 = (stdenv.mkDerivation ((if overrides ? xf86videosuncg3 then overrides.xf86videosuncg3 else x: x) {
-    name = "xf86-video-suncg3-1.1.1";
-    builder = ./builder.sh;
-    src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/xf86-video-suncg3-1.1.1.tar.bz2;
-      sha256 = "06c4hzmd5cfzbw79yrv3knss80hllciamz734ij1pbzj6j6fjvym";
-    };
-    buildInputs = [pkgconfig fontsproto randrproto renderproto xorgserver xproto ];
-  })) // {inherit fontsproto randrproto renderproto xorgserver xproto ;};
-    
   xf86videosuncg6 = (stdenv.mkDerivation ((if overrides ? xf86videosuncg6 then overrides.xf86videosuncg6 else x: x) {
     name = "xf86-video-suncg6-1.1.1";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/xf86-video-suncg6-1.1.1.tar.bz2;
+      url = mirror://xorg/X11R7.7/src/everything/xf86-video-suncg6-1.1.1.tar.bz2;
       sha256 = "07w0hm63fiy5l3cpcjsl0ig8z84z9r36xm0cmnpiv3g75dy6q8fi";
     };
     buildInputs = [pkgconfig fontsproto randrproto renderproto xorgserver xproto ];
@@ -1771,38 +1661,18 @@ let
     name = "xf86-video-sunffb-1.2.1";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/xf86-video-sunffb-1.2.1.tar.bz2;
+      url = mirror://xorg/X11R7.7/src/everything/xf86-video-sunffb-1.2.1.tar.bz2;
       sha256 = "04byax4sc1fn183vyyq0q11q730k16h2by4ggjky7s36wgv7ldzx";
     };
     buildInputs = [pkgconfig fontsproto randrproto renderproto xextproto xorgserver xproto ];
   })) // {inherit fontsproto randrproto renderproto xextproto xorgserver xproto ;};
     
-  xf86videosunleo = (stdenv.mkDerivation ((if overrides ? xf86videosunleo then overrides.xf86videosunleo else x: x) {
-    name = "xf86-video-sunleo-1.2.0";
-    builder = ./builder.sh;
-    src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/xf86-video-sunleo-1.2.0.tar.bz2;
-      sha256 = "01kffjbshmwix2cdb95j0cx2qmrss6yfjj7y5qssw83h36bvw5dk";
-    };
-    buildInputs = [pkgconfig fontsproto randrproto renderproto xorgserver xproto ];
-  })) // {inherit fontsproto randrproto renderproto xorgserver xproto ;};
-    
-  xf86videosuntcx = (stdenv.mkDerivation ((if overrides ? xf86videosuntcx then overrides.xf86videosuntcx else x: x) {
-    name = "xf86-video-suntcx-1.1.1";
-    builder = ./builder.sh;
-    src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/xf86-video-suntcx-1.1.1.tar.bz2;
-      sha256 = "07lqah5sizhwjpzr4vcpwgvbl86fwz4k0c3skp63sq58ng21acal";
-    };
-    buildInputs = [pkgconfig fontsproto randrproto renderproto xorgserver xproto ];
-  })) // {inherit fontsproto randrproto renderproto xorgserver xproto ;};
-    
   xf86videotdfx = (stdenv.mkDerivation ((if overrides ? xf86videotdfx then overrides.xf86videotdfx else x: x) {
-    name = "xf86-video-tdfx-1.4.3";
+    name = "xf86-video-tdfx-1.4.4";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/xf86-video-tdfx-1.4.3.tar.bz2;
-      sha256 = "0cxz1rsc87cnf0ba1zfwhk0lhfas92ysc9b13q6x21m31b53bn9s";
+      url = mirror://xorg/X11R7.7/src/everything/xf86-video-tdfx-1.4.4.tar.bz2;
+      sha256 = "124gsi30rj547jjd7gvv7xykfnwlyrxw0gcacamby7pvl3g33fg0";
     };
     buildInputs = [pkgconfig fontsproto libdrm libpciaccess randrproto renderproto videoproto xextproto xf86driproto xorgserver xproto ];
   })) // {inherit fontsproto libdrm libpciaccess randrproto renderproto videoproto xextproto xf86driproto xorgserver xproto ;};
@@ -1811,58 +1681,48 @@ let
     name = "xf86-video-tga-1.2.1";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/xf86-video-tga-1.2.1.tar.bz2;
+      url = mirror://xorg/X11R7.7/src/everything/xf86-video-tga-1.2.1.tar.bz2;
       sha256 = "0mdqrn02zzkdnmhg4vh9djaawg6b2p82g5qbj66z8b30yr77b93h";
     };
     buildInputs = [pkgconfig fontsproto libpciaccess randrproto renderproto videoproto xextproto xf86dgaproto xorgserver xproto ];
   })) // {inherit fontsproto libpciaccess randrproto renderproto videoproto xextproto xf86dgaproto xorgserver xproto ;};
     
   xf86videotrident = (stdenv.mkDerivation ((if overrides ? xf86videotrident then overrides.xf86videotrident else x: x) {
-    name = "xf86-video-trident-1.3.4";
+    name = "xf86-video-trident-1.3.5";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/xf86-video-trident-1.3.4.tar.bz2;
-      sha256 = "1a4wybqwd617mg8lzn1xvi5m0iibimxpvyqsr31mhb7gw0qidrjq";
+      url = mirror://xorg/X11R7.7/src/everything/xf86-video-trident-1.3.5.tar.bz2;
+      sha256 = "02y5pzdp0a1c12jr8gghbrzgbyfbgq67x7kd7n4f323pmf8x1csb";
     };
     buildInputs = [pkgconfig fontsproto libpciaccess randrproto renderproto videoproto xextproto xf86dgaproto xorgserver xproto ];
   })) // {inherit fontsproto libpciaccess randrproto renderproto videoproto xextproto xf86dgaproto xorgserver xproto ;};
     
-  xf86videotseng = (stdenv.mkDerivation ((if overrides ? xf86videotseng then overrides.xf86videotseng else x: x) {
-    name = "xf86-video-tseng-1.2.4";
-    builder = ./builder.sh;
-    src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/xf86-video-tseng-1.2.4.tar.bz2;
-      sha256 = "0gfiwx2p51k3k78qic8y9y0d3d6nhhbmzfvzmw5hx3ba9kxmvpfh";
-    };
-    buildInputs = [pkgconfig fontsproto libpciaccess randrproto renderproto videoproto xextproto xorgserver xproto ];
-  })) // {inherit fontsproto libpciaccess randrproto renderproto videoproto xextproto xorgserver xproto ;};
-    
   xf86videov4l = (stdenv.mkDerivation ((if overrides ? xf86videov4l then overrides.xf86videov4l else x: x) {
     name = "xf86-video-v4l-0.2.0";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/xf86-video-v4l-0.2.0.tar.bz2;
+      url = mirror://xorg/X11R7.7/src/everything/xf86-video-v4l-0.2.0.tar.bz2;
       sha256 = "0pcjc75hgbih3qvhpsx8d4fljysfk025slxcqyyhr45dzch93zyb";
     };
     buildInputs = [pkgconfig randrproto videoproto xorgserver xproto ];
   })) // {inherit randrproto videoproto xorgserver xproto ;};
     
   xf86videovesa = (stdenv.mkDerivation ((if overrides ? xf86videovesa then overrides.xf86videovesa else x: x) {
-    name = "xf86-video-vesa-2.3.0";
+    name = "xf86-video-vesa-2.3.2";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/xf86-video-vesa-2.3.0.tar.bz2;
-      sha256 = "0yhdj39d8rfv2n4i52dg7cg1rsrclagn7rjs3pc3jdajjh75mn4f";
+      url = mirror://xorg/individual/driver/xf86-video-vesa-2.3.2.tar.bz2;
+      sha256 = "1qqf97baii1dcsm3y8gqw674j4r8llhkbqsavhyn11iwmvzifjhl";
     };
     buildInputs = [pkgconfig fontsproto libpciaccess randrproto renderproto xextproto xorgserver xproto ];
   })) // {inherit fontsproto libpciaccess randrproto renderproto xextproto xorgserver xproto ;};
     
   xf86videovmware = (stdenv.mkDerivation ((if overrides ? xf86videovmware then overrides.xf86videovmware else x: x) {
-    name = "xf86-video-vmware-11.0.3";
+    name = "xf86-video-vmware-12.0.2";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/xf86-video-vmware-11.0.3.tar.bz2;
-      sha256 = "18rqkzr1dvzgdr2khlhhpai69z28rnrfl8jiw9hnahbyv2r7qjmj";
+      url = mirror://xorg/X11R7.7/src/everything/xf86-video-vmware-12.0.2.tar.bz2;
+      sha256 = "0isiwx516gww8hfk3vy7js83yziyjym9mq2zjadyq1a8v5gqf9y8";
     };
     buildInputs = [pkgconfig fontsproto libdrm libpciaccess randrproto renderproto videoproto libX11 libXext xextproto xineramaproto xorgserver xproto ];
   })) // {inherit fontsproto libdrm libpciaccess randrproto renderproto videoproto libX11 libXext xextproto xineramaproto xorgserver xproto ;};
@@ -1871,78 +1731,58 @@ let
     name = "xf86-video-voodoo-1.2.4";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/xf86-video-voodoo-1.2.4.tar.bz2;
+      url = mirror://xorg/X11R7.7/src/everything/xf86-video-voodoo-1.2.4.tar.bz2;
       sha256 = "0ha748yz92yzn6hp2rhin3il8f4j2rs4vkgdvqkagnv1ryxkh0ph";
     };
     buildInputs = [pkgconfig fontsproto libpciaccess randrproto renderproto xextproto xf86dgaproto xorgserver xproto ];
   })) // {inherit fontsproto libpciaccess randrproto renderproto xextproto xf86dgaproto xorgserver xproto ;};
     
   xf86videowsfb = (stdenv.mkDerivation ((if overrides ? xf86videowsfb then overrides.xf86videowsfb else x: x) {
-    name = "xf86-video-wsfb-0.3.0";
+    name = "xf86-video-wsfb-0.4.0";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/xf86-video-wsfb-0.3.0.tar.bz2;
-      sha256 = "17lqhir0adcccfkrzz2sr8cpv5vkakk0w7xfc22vv7c6jz9vdgbq";
+      url = mirror://xorg/X11R7.7/src/everything/xf86-video-wsfb-0.4.0.tar.bz2;
+      sha256 = "0hr8397wpd0by1hc47fqqrnaw3qdqd8aqgwgzv38w5k3l3jy6p4p";
     };
     buildInputs = [pkgconfig xorgserver xproto ];
   })) // {inherit xorgserver xproto ;};
     
-  xf86videoxgi = (stdenv.mkDerivation ((if overrides ? xf86videoxgi then overrides.xf86videoxgi else x: x) {
-    name = "xf86-video-xgi-1.6.0";
-    builder = ./builder.sh;
-    src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/xf86-video-xgi-1.6.0.tar.bz2;
-      sha256 = "05wl9a51pik5swkzpyhh4y2gf6m3hd458r4142p5w39bbkmhcd78";
-    };
-    buildInputs = [pkgconfig fontsproto glproto libdrm libpciaccess randrproto renderproto videoproto xextproto xf86driproto xineramaproto xorgserver xproto ];
-  })) // {inherit fontsproto glproto libdrm libpciaccess randrproto renderproto videoproto xextproto xf86driproto xineramaproto xorgserver xproto ;};
-    
-  xf86videoxgixp = (stdenv.mkDerivation ((if overrides ? xf86videoxgixp then overrides.xf86videoxgixp else x: x) {
-    name = "xf86-video-xgixp-1.8.0";
-    builder = ./builder.sh;
-    src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/xf86-video-xgixp-1.8.0.tar.bz2;
-      sha256 = "06np5s3f3451vmjwpxbn8hb7d4dhsxff2af8qy8jlc24rinnv9is";
-    };
-    buildInputs = [pkgconfig fontsproto libdrm libpciaccess randrproto renderproto videoproto xextproto xf86driproto xorgserver xproto ];
-  })) // {inherit fontsproto libdrm libpciaccess randrproto renderproto videoproto xextproto xf86driproto xorgserver xproto ;};
-    
   xf86vidmodeproto = (stdenv.mkDerivation ((if overrides ? xf86vidmodeproto then overrides.xf86vidmodeproto else x: x) {
     name = "xf86vidmodeproto-2.3.1";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/individual/proto/xf86vidmodeproto-2.3.1.tar.bz2;
+      url = mirror://xorg/X11R7.7/src/everything/xf86vidmodeproto-2.3.1.tar.bz2;
       sha256 = "0w47d7gfa8zizh2bshdr2rffvbr4jqjv019mdgyh6cmplyd4kna5";
     };
     buildInputs = [pkgconfig ];
   })) // {inherit ;};
     
   xfs = (stdenv.mkDerivation ((if overrides ? xfs then overrides.xfs else x: x) {
-    name = "xfs-1.1.1";
+    name = "xfs-1.1.2";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/individual/app/xfs-1.1.1.tar.bz2;
-      sha256 = "1yxm87az3xghngcsd50zz6mdgi9j6vm8pw90sjqzshwq7hx7d0qc";
+      url = mirror://xorg/individual/app/xfs-1.1.2.tar.bz2;
+      sha256 = "17g34yq789grnic83cqj5khq0knda1w2rgabhjflsyw9wg663shd";
     };
-    buildInputs = [pkgconfig libFS libXfont xtrans ];
-  })) // {inherit libFS libXfont xtrans ;};
+    buildInputs = [pkgconfig libXfont xproto xtrans ];
+  })) // {inherit libXfont xproto xtrans ;};
     
   xgamma = (stdenv.mkDerivation ((if overrides ? xgamma then overrides.xgamma else x: x) {
-    name = "xgamma-1.0.4";
+    name = "xgamma-1.0.5";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/xgamma-1.0.4.tar.bz2;
-      sha256 = "05lfx9517why64b3n14drid7vn1d2g2ymg22034vqq50h9437j3x";
+      url = mirror://xorg/X11R7.7/src/everything/xgamma-1.0.5.tar.bz2;
+      sha256 = "0463sawps86jnxn121ramsz4sicy3az5wa5wsq4rqm8dm3za48p3";
     };
     buildInputs = [pkgconfig libX11 libXxf86vm ];
   })) // {inherit libX11 libXxf86vm ;};
     
   xhost = (stdenv.mkDerivation ((if overrides ? xhost then overrides.xhost else x: x) {
-    name = "xhost-1.0.4";
+    name = "xhost-1.0.5";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/xhost-1.0.4.tar.bz2;
-      sha256 = "15558q9hgmw6vbwc2sgjkfpzw342lxci9w8vcbrmi8mpmrnc00jy";
+      url = mirror://xorg/X11R7.7/src/everything/xhost-1.0.5.tar.bz2;
+      sha256 = "0l483y6wfrjh37j16b41kpi2nc7ss5rvndafpbaylrs87ygx2w18";
     };
     buildInputs = [pkgconfig libX11 libXau libXmu ];
   })) // {inherit libX11 libXau libXmu ;};
@@ -1951,48 +1791,48 @@ let
     name = "xineramaproto-1.2.1";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/individual/proto/xineramaproto-1.2.1.tar.bz2;
+      url = mirror://xorg/X11R7.7/src/everything/xineramaproto-1.2.1.tar.bz2;
       sha256 = "0ns8abd27x7gbp4r44z3wc5k9zqxxj8zjnazqpcyr4n17nxp8xcp";
     };
     buildInputs = [pkgconfig ];
   })) // {inherit ;};
     
   xinit = (stdenv.mkDerivation ((if overrides ? xinit then overrides.xinit else x: x) {
-    name = "xinit-1.3.0";
+    name = "xinit-1.3.2";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/individual/app/xinit-1.3.0.tar.bz2;
-      sha256 = "0k70bw6x2zgvmd0l7xyzbps18pbzfz26yzjva1vcz9s239pf6xms";
+      url = mirror://xorg/individual/app/xinit-1.3.2.tar.bz2;
+      sha256 = "0d821rlqwyn2js7bkzicyp894n9gqv1hahxs285pas1zm3d7z1m1";
     };
     buildInputs = [pkgconfig libX11 ];
   })) // {inherit libX11 ;};
     
   xinput = (stdenv.mkDerivation ((if overrides ? xinput then overrides.xinput else x: x) {
-    name = "xinput-1.5.3";
+    name = "xinput-1.6.0";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/xinput-1.5.3.tar.bz2;
-      sha256 = "0xjwi1sjmvmmzgcvzvz4q8wn0gs7x3aivknx77yfxnndrqqy3bba";
+      url = mirror://xorg/X11R7.7/src/everything/xinput-1.6.0.tar.bz2;
+      sha256 = "0zl4cdgnzh9shz20yn7hz889v4nkbyqwx0nb7dh6arn7abchgc2a";
     };
-    buildInputs = [pkgconfig inputproto libX11 libXext libXi ];
-  })) // {inherit inputproto libX11 libXext libXi ;};
+    buildInputs = [pkgconfig inputproto libX11 libXext libXi libXinerama libXrandr ];
+  })) // {inherit inputproto libX11 libXext libXi libXinerama libXrandr ;};
     
   xkbcomp = (stdenv.mkDerivation ((if overrides ? xkbcomp then overrides.xkbcomp else x: x) {
-    name = "xkbcomp-1.2.1";
+    name = "xkbcomp-1.2.4";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/individual/app/xkbcomp-1.2.1.tar.bz2;
-      sha256 = "1sv51rliqs6wygrp2hc79a5pgn6ly0bbr4sa8a8x00j4j4kjaqdp";
+      url = mirror://xorg/X11R7.7/src/everything/xkbcomp-1.2.4.tar.bz2;
+      sha256 = "0bas1d2wjiy5zy9d0g92d2p9pwv4aapfbfidi7hxy8ax8jmwkl4i";
     };
-    buildInputs = [pkgconfig libX11 libxkbfile ];
-  })) // {inherit libX11 libxkbfile ;};
+    buildInputs = [pkgconfig libX11 libxkbfile xproto ];
+  })) // {inherit libX11 libxkbfile xproto ;};
     
   xkbevd = (stdenv.mkDerivation ((if overrides ? xkbevd then overrides.xkbevd else x: x) {
-    name = "xkbevd-1.1.2";
+    name = "xkbevd-1.1.3";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/xkbevd-1.1.2.tar.bz2;
-      sha256 = "0qzbh1wb2fg0wsyfqr4j15443caa1xfcxwdf1gzb4gpbkxn98qnd";
+      url = mirror://xorg/X11R7.7/src/everything/xkbevd-1.1.3.tar.bz2;
+      sha256 = "05h1xcnbalndbrryyqs8wzy9h3wz655vc0ymhlk2q4aik17licjm";
     };
     buildInputs = [pkgconfig libX11 libxkbfile ];
   })) // {inherit libX11 libxkbfile ;};
@@ -2001,28 +1841,38 @@ let
     name = "xkbutils-1.0.3";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/xkbutils-1.0.3.tar.bz2;
+      url = mirror://xorg/X11R7.7/src/everything/xkbutils-1.0.3.tar.bz2;
       sha256 = "1ga913pw6chssf2016kjyjl6ar2lj83pa497w97ak2kq603sy2g4";
     };
     buildInputs = [pkgconfig inputproto libX11 libXaw xproto libXt ];
   })) // {inherit inputproto libX11 libXaw xproto libXt ;};
     
+  xkeyboardconfig = (stdenv.mkDerivation ((if overrides ? xkeyboardconfig then overrides.xkeyboardconfig else x: x) {
+    name = "xkeyboard-config-2.6";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = mirror://xorg/X11R7.7/src/everything/xkeyboard-config-2.6.tar.bz2;
+      sha256 = "1nmb7ma8rqryicc5xqrn2hm5pwp5lkf7nj28bwbf63mz2r0mk892";
+    };
+    buildInputs = [pkgconfig ];
+  })) // {inherit ;};
+    
   xkill = (stdenv.mkDerivation ((if overrides ? xkill then overrides.xkill else x: x) {
     name = "xkill-1.0.3";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/xkill-1.0.3.tar.bz2;
+      url = mirror://xorg/X11R7.7/src/everything/xkill-1.0.3.tar.bz2;
       sha256 = "1ac110qbb9a4x1dim3vaghvdk3jc708i2p3f4rmag33458khg0xx";
     };
     buildInputs = [pkgconfig libX11 libXmu ];
   })) // {inherit libX11 libXmu ;};
     
   xlsatoms = (stdenv.mkDerivation ((if overrides ? xlsatoms then overrides.xlsatoms else x: x) {
-    name = "xlsatoms-1.1.0";
+    name = "xlsatoms-1.1.1";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/xlsatoms-1.1.0.tar.bz2;
-      sha256 = "03fbknvq7rixfgpv5945s7r82jz2xc06a0n09w1p22hl4pd7l0aa";
+      url = mirror://xorg/X11R7.7/src/everything/xlsatoms-1.1.1.tar.bz2;
+      sha256 = "1y9nfl8s7njxbnci8c20j986xixharasgg40vdw92y593j6dk2rv";
     };
     buildInputs = [pkgconfig libxcb ];
   })) // {inherit libxcb ;};
@@ -2031,7 +1881,7 @@ let
     name = "xlsclients-1.1.2";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/individual/app/xlsclients-1.1.2.tar.bz2;
+      url = mirror://xorg/X11R7.7/src/everything/xlsclients-1.1.2.tar.bz2;
       sha256 = "1l97j15mg4wfzpm81wlpzagfjff7v4fwn7s2z2rpksk3gfcg7r8w";
     };
     buildInputs = [pkgconfig libxcb ];
@@ -2048,14 +1898,14 @@ let
   })) // {inherit libXaw libXt ;};
     
   xmodmap = (stdenv.mkDerivation ((if overrides ? xmodmap then overrides.xmodmap else x: x) {
-    name = "xmodmap-1.0.5";
+    name = "xmodmap-1.0.7";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/xmodmap-1.0.5.tar.bz2;
-      sha256 = "00il5y6q2m90f62cqzgc0ni5qg3y946gf98jj325kx8cgfhyf7j2";
+      url = mirror://xorg/X11R7.7/src/everything/xmodmap-1.0.7.tar.bz2;
+      sha256 = "1dg47lay4vhrl9mfq3cfc6741a0m2n8wd4ljagd21ix3qklys8pg";
     };
-    buildInputs = [pkgconfig libX11 ];
-  })) // {inherit libX11 ;};
+    buildInputs = [pkgconfig libX11 xproto ];
+  })) // {inherit libX11 xproto ;};
     
   xorgcffiles = (stdenv.mkDerivation ((if overrides ? xorgcffiles then overrides.xorgcffiles else x: x) {
     name = "xorg-cf-files-1.0.4";
@@ -2068,81 +1918,91 @@ let
   })) // {inherit ;};
     
   xorgdocs = (stdenv.mkDerivation ((if overrides ? xorgdocs then overrides.xorgdocs else x: x) {
-    name = "xorg-docs-1.6";
+    name = "xorg-docs-1.7";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/xorg-docs-1.6.tar.bz2;
-      sha256 = "0clxy41642jx77mmw5j2fnwa88ms1a7z1z8xpzrgs45bhv21pcpn";
+      url = mirror://xorg/X11R7.7/src/everything/xorg-docs-1.7.tar.bz2;
+      sha256 = "0prphdba6kgr1bxk7r07wxxx6x6pqjw6prr5qclypsb5sf5r3cdr";
     };
     buildInputs = [pkgconfig ];
   })) // {inherit ;};
     
   xorgserver = (stdenv.mkDerivation ((if overrides ? xorgserver then overrides.xorgserver else x: x) {
-    name = "xorg-server-1.9.5";
+    name = "xorg-server-1.12.4";
+    builder = ./builder.sh;
+    src = fetchurl {
+      url = mirror://xorg/individual/xserver/xorg-server-1.12.4.tar.bz2;
+      sha256 = "1xscr6rf0q15hv3hmm51xhwk0c0rx7a2swkj14ygp8vb60sprh4a";
+    };
+    buildInputs = [pkgconfig renderproto libdrm openssl libX11 libXau libXaw libXdmcp libXfixes libxkbfile libXmu libXpm libXrender libXres libXt libXv ];
+  })) // {inherit renderproto libdrm openssl libX11 libXau libXaw libXdmcp libXfixes libxkbfile libXmu libXpm libXrender libXres libXt libXv ;};
+
+  xorgserver_1_13_0 = (stdenv.mkDerivation ((if overrides ? xorgserver_1_13_0 then overrides.xorgserver_1_13_0 else x: x) {
+    name = "xorg-server-1.13.0";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/individual/xserver/xorg-server-1.9.5.tar.bz2;
-      sha256 = "1p19w1s840jb1ah6na0c9k23gbh9wwz1il272irqy3jggh4pbirz";
+      url = mirror://xorg/individual/xserver/xorg-server-1.13.0.tar.bz2;
+      sha256 = "12pjis236ss3402cg1iy749cylajjp27m3j2jbwd8yh8075r32sl";
     };
-    buildInputs = [pkgconfig bigreqsproto damageproto fixesproto fontsproto inputproto kbproto libdrm openssl libpciaccess perl randrproto renderproto libX11 libXau libXaw xcmiscproto libXdmcp xextproto libXfixes libxkbfile libXmu libXpm xproto libXrender libXres libXt xtrans libXv ];
-  })) // {inherit bigreqsproto damageproto fixesproto fontsproto inputproto kbproto libdrm openssl libpciaccess perl randrproto renderproto libX11 libXau libXaw xcmiscproto libXdmcp xextproto libXfixes libxkbfile libXmu libXpm xproto libXrender libXres libXt xtrans libXv ;};
+    buildInputs = [pkgconfig renderproto libdrm openssl libX11 libXau libXaw libXdmcp libXfixes libxkbfile libXmu libXpm libXrender libXres libXt libXv pixman glproto ];
+  })) // {inherit renderproto libdrm openssl libX11 libXau libXaw libXdmcp libXfixes libxkbfile libXmu libXpm libXrender libXres libXt libXv pixman glproto ;};
     
   xorgsgmldoctools = (stdenv.mkDerivation ((if overrides ? xorgsgmldoctools then overrides.xorgsgmldoctools else x: x) {
-    name = "xorg-sgml-doctools-1.6";
+    name = "xorg-sgml-doctools-1.11";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/xorg-sgml-doctools-1.6.tar.bz2;
-      sha256 = "0smfsman09dqqw6h638w44lgp2kng2jwk53sb74i7r53x1v09llq";
+      url = mirror://xorg/X11R7.7/src/everything/xorg-sgml-doctools-1.11.tar.bz2;
+      sha256 = "0k5pffyi5bx8dmfn033cyhgd3gf6viqj3x769fqixifwhbgy2777";
     };
     buildInputs = [pkgconfig ];
   })) // {inherit ;};
     
   xpr = (stdenv.mkDerivation ((if overrides ? xpr then overrides.xpr else x: x) {
-    name = "xpr-1.0.3";
+    name = "xpr-1.0.4";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/xpr-1.0.3.tar.bz2;
-      sha256 = "0zckkd45lzbikmdn29r12faby8g5prjkacc1z8aw87pq9sqdcy18";
+      url = mirror://xorg/X11R7.7/src/everything/xpr-1.0.4.tar.bz2;
+      sha256 = "1dbcv26w2yand2qy7b3h5rbvw1mdmdd57jw88v53sgdr3vrqvngy";
     };
-    buildInputs = [pkgconfig libX11 libXmu ];
-  })) // {inherit libX11 libXmu ;};
+    buildInputs = [pkgconfig libX11 libXmu xproto ];
+  })) // {inherit libX11 libXmu xproto ;};
     
   xprop = (stdenv.mkDerivation ((if overrides ? xprop then overrides.xprop else x: x) {
-    name = "xprop-1.2.0";
+    name = "xprop-1.2.1";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/xprop-1.2.0.tar.bz2;
-      sha256 = "173bpq7x2amr77xy28f9m4nfdwr340wj3jw9hkbbznq35c48ql2k";
+      url = mirror://xorg/X11R7.7/src/everything/xprop-1.2.1.tar.bz2;
+      sha256 = "18zi2any13zlb7f34fzyw6lkiwkd6k2scp3b800a1f4rj0c7m407";
     };
-    buildInputs = [pkgconfig libX11 ];
-  })) // {inherit libX11 ;};
+    buildInputs = [pkgconfig libX11 xproto ];
+  })) // {inherit libX11 xproto ;};
     
   xproto = (stdenv.mkDerivation ((if overrides ? xproto then overrides.xproto else x: x) {
-    name = "xproto-7.0.20";
+    name = "xproto-7.0.23";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/xproto-7.0.20.tar.bz2;
-      sha256 = "0alyxrd8wmdvdqm1v3q4x5brv4prj0gxf59pp9h5wycvgpj7zs1z";
+      url = mirror://xorg/X11R7.7/src/everything/xproto-7.0.23.tar.bz2;
+      sha256 = "17lkmi12f89qvg4jj5spqzwzc24fmsqq68dv6kpy7r7b944lmq5d";
     };
     buildInputs = [pkgconfig ];
   })) // {inherit ;};
     
   xrandr = (stdenv.mkDerivation ((if overrides ? xrandr then overrides.xrandr else x: x) {
-    name = "xrandr-1.3.4";
+    name = "xrandr-1.3.5";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/xrandr-1.3.4.tar.bz2;
-      sha256 = "1nsadgvn57b9way7v0s4yk2729rwqj1m5fbilmd38lfcws928jjy";
+      url = mirror://xorg/X11R7.7/src/everything/xrandr-1.3.5.tar.bz2;
+      sha256 = "03lq1c1q4w5cf2ijs4b34v008lshibha9zv5lw08xpyhk9xgyn8h";
     };
-    buildInputs = [pkgconfig libX11 libXrandr libXrender ];
-  })) // {inherit libX11 libXrandr libXrender ;};
+    buildInputs = [pkgconfig libX11 xproto libXrandr libXrender ];
+  })) // {inherit libX11 xproto libXrandr libXrender ;};
     
   xrdb = (stdenv.mkDerivation ((if overrides ? xrdb then overrides.xrdb else x: x) {
-    name = "xrdb-1.0.8";
+    name = "xrdb-1.0.9";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/individual/app/xrdb-1.0.8.tar.bz2;
-      sha256 = "1r2k50qnflj40iandhxhvnrvnhy4qliz5kymlh682455gjmlgn7z";
+      url = mirror://xorg/X11R7.7/src/everything/xrdb-1.0.9.tar.bz2;
+      sha256 = "1dza5a34nj68fzhlgwf18i5bk0n24ig28yihwpjy7vwn57hh2934";
     };
     buildInputs = [pkgconfig libX11 libXmu ];
   })) // {inherit libX11 libXmu ;};
@@ -2151,38 +2011,38 @@ let
     name = "xrefresh-1.0.4";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/xrefresh-1.0.4.tar.bz2;
+      url = mirror://xorg/X11R7.7/src/everything/xrefresh-1.0.4.tar.bz2;
       sha256 = "0ywxzwa4kmnnmf8idr8ssgcil9xvbhnk155zpsh2i8ay93mh5586";
     };
     buildInputs = [pkgconfig libX11 ];
   })) // {inherit libX11 ;};
     
   xset = (stdenv.mkDerivation ((if overrides ? xset then overrides.xset else x: x) {
-    name = "xset-1.2.1";
+    name = "xset-1.2.2";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/xset-1.2.1.tar.bz2;
-      sha256 = "18cja8b9xrilpshz0z8bkmpjm6pjb20w71xf41jgm70h4dymz6gc";
+      url = mirror://xorg/X11R7.7/src/everything/xset-1.2.2.tar.bz2;
+      sha256 = "1s61mvscd0h7y6anljarj7nkii6plhs8ndx1fm8b1f1h00a1qdv1";
     };
-    buildInputs = [pkgconfig libX11 libXext libXmu libXxf86misc ];
-  })) // {inherit libX11 libXext libXmu libXxf86misc ;};
+    buildInputs = [pkgconfig libX11 libXext libXmu xproto libXxf86misc ];
+  })) // {inherit libX11 libXext libXmu xproto libXxf86misc ;};
     
   xsetroot = (stdenv.mkDerivation ((if overrides ? xsetroot then overrides.xsetroot else x: x) {
     name = "xsetroot-1.1.0";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/xsetroot-1.1.0.tar.bz2;
+      url = mirror://xorg/X11R7.7/src/everything/xsetroot-1.1.0.tar.bz2;
       sha256 = "1bazzsf9sy0q2bj4lxvh1kvyrhmpggzb7jg575i15sksksa3xwc8";
     };
     buildInputs = [pkgconfig libX11 xbitmaps libXcursor libXmu ];
   })) // {inherit libX11 xbitmaps libXcursor libXmu ;};
     
   xtrans = (stdenv.mkDerivation ((if overrides ? xtrans then overrides.xtrans else x: x) {
-    name = "xtrans-1.2.6";
+    name = "xtrans-1.2.7";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/xtrans-1.2.6.tar.bz2;
-      sha256 = "1im5kj6y8j8m9i5lf1c33dkag6sb7g1zmi0niydqrfyx0lvsgyf5";
+      url = mirror://xorg/X11R7.7/src/everything/xtrans-1.2.7.tar.bz2;
+      sha256 = "19p1bw3qyn0ia1znx6q3gx92rr9rl88ylrfijjclm8vhpa8i30bz";
     };
     buildInputs = [pkgconfig ];
   })) // {inherit ;};
@@ -2191,40 +2051,40 @@ let
     name = "xvinfo-1.1.1";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/xvinfo-1.1.1.tar.bz2;
+      url = mirror://xorg/X11R7.7/src/everything/xvinfo-1.1.1.tar.bz2;
       sha256 = "119rd93d7661ll1rfcdssn78l0b97326smziyr2f5wdwj2hlmiv0";
     };
     buildInputs = [pkgconfig libX11 libXv ];
   })) // {inherit libX11 libXv ;};
     
   xwd = (stdenv.mkDerivation ((if overrides ? xwd then overrides.xwd else x: x) {
-    name = "xwd-1.0.4";
+    name = "xwd-1.0.5";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/xwd-1.0.4.tar.bz2;
-      sha256 = "07mh72j794hwq5rnqkmdd4wj27mqmdc3da4jkwpva2hsj64wi9mp";
+      url = mirror://xorg/X11R7.7/src/everything/xwd-1.0.5.tar.bz2;
+      sha256 = "0fkg6msy2zg7rda2rpxb7j6vmrdmqmk72xsxnyhz97196ykjnx82";
     };
-    buildInputs = [pkgconfig libX11 ];
-  })) // {inherit libX11 ;};
+    buildInputs = [pkgconfig libX11 xproto ];
+  })) // {inherit libX11 xproto ;};
     
   xwininfo = (stdenv.mkDerivation ((if overrides ? xwininfo then overrides.xwininfo else x: x) {
-    name = "xwininfo-1.1.1";
+    name = "xwininfo-1.1.2";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/xwininfo-1.1.1.tar.bz2;
-      sha256 = "0g9ll8hv0k5cjz4l5kdv64xzmalf9mpwjzcy8nx6myvh92z5fnk4";
+      url = mirror://xorg/X11R7.7/src/everything/xwininfo-1.1.2.tar.bz2;
+      sha256 = "0fmcr5yl03xw7m8p9h1rk67rrj7gp5x16a547xhmg8idw2f6r9lg";
     };
     buildInputs = [pkgconfig libX11 libxcb xproto ];
   })) // {inherit libX11 libxcb xproto ;};
     
   xwud = (stdenv.mkDerivation ((if overrides ? xwud then overrides.xwud else x: x) {
-    name = "xwud-1.0.3";
+    name = "xwud-1.0.4";
     builder = ./builder.sh;
     src = fetchurl {
-      url = mirror://xorg/X11R7.6/src/everything/xwud-1.0.3.tar.bz2;
-      sha256 = "0hrc6gbipg7cximgkaxixlha9m2fph31dpzhzdfw7g63bkhfmzc8";
+      url = mirror://xorg/X11R7.7/src/everything/xwud-1.0.4.tar.bz2;
+      sha256 = "1ggql6maivah58kwsh3z9x1hvzxm1a8888xx4s78cl77ryfa1cyn";
     };
-    buildInputs = [pkgconfig libX11 ];
-  })) // {inherit libX11 ;};
+    buildInputs = [pkgconfig libX11 xproto ];
+  })) // {inherit libX11 xproto ;};
     
 }; in xorg
diff --git a/pkgs/servers/x11/xorg/extra.list b/pkgs/servers/x11/xorg/extra.list
index 744eb66d84c8..f7f139b19c1c 100644
--- a/pkgs/servers/x11/xorg/extra.list
+++ b/pkgs/servers/x11/xorg/extra.list
@@ -1,8 +1,7 @@
-mirror://xorg/individual/driver/xf86-video-intel-2.14.901.tar.bz2:xf86videointel_2_14_901
-mirror://xorg/individual/driver/xf86-video-intel-2.17.0.tar.bz2:xf86videointel_2_17_0
-mirror://xorg/individual/lib/pixman-0.20.2.tar.bz2
-mirror://xorg/individual/xcb/xcb-util-0.3.8.tar.bz2
-mirror://xorg/individual/xcb/xcb-util-image-0.3.8.tar.bz2
-mirror://xorg/individual/xcb/xcb-util-keysyms-0.3.8.tar.bz2
+mirror://xorg/individual/lib/pixman-0.26.2.tar.bz2
+mirror://xorg/individual/xcb/xcb-util-0.3.9.tar.bz2
+mirror://xorg/individual/xcb/xcb-util-image-0.3.9.tar.bz2
+mirror://xorg/individual/xcb/xcb-util-keysyms-0.3.9.tar.bz2
 mirror://xorg/individual/xcb/xcb-util-renderutil-0.3.8.tar.bz2
-mirror://xorg/individual/xcb/xcb-util-wm-0.3.8.tar.bz2
+mirror://xorg/individual/xcb/xcb-util-wm-0.3.9.tar.bz2
+mirror://xorg/individual/xserver/xorg-server-1.13.0.tar.bz2:xorgserver_1_13_0
diff --git a/pkgs/servers/x11/xorg/generate-expr-from-tarballs.pl b/pkgs/servers/x11/xorg/generate-expr-from-tarballs.pl
index 89edb571e0f5..7b00e5e90432 100755
--- a/pkgs/servers/x11/xorg/generate-expr-from-tarballs.pl
+++ b/pkgs/servers/x11/xorg/generate-expr-from-tarballs.pl
@@ -169,7 +169,7 @@ while (<>) {
     }
 
     if ($file =~ /XORG_FONT_UCS2ANY/) {
-        push @requires, "fontutil";
+        push @requires, "fontutil", "mkfontscale";
         $isFont = 1;
     }
 
diff --git a/pkgs/servers/x11/xorg/old.list b/pkgs/servers/x11/xorg/old.list
index 5eacf46d1c36..94fae784488e 100644
--- a/pkgs/servers/x11/xorg/old.list
+++ b/pkgs/servers/x11/xorg/old.list
@@ -1,15 +1,15 @@
-mirror://xorg/individual/app/twm-1.0.6.tar.bz2
-mirror://xorg/individual/app/xclock-1.0.5.tar.bz2
-mirror://xorg/individual/app/xdm-1.1.10.tar.bz2
+mirror://xorg/individual/app/twm-1.0.7.tar.bz2
+mirror://xorg/individual/app/xclock-1.0.6.tar.bz2
+mirror://xorg/individual/app/xdm-1.1.11.tar.bz2
 mirror://xorg/individual/app/xeyes-1.1.1.tar.bz2
-mirror://xorg/individual/app/xfs-1.1.1.tar.bz2
-mirror://xorg/individual/app/xinit-1.3.0.tar.bz2
+mirror://xorg/individual/app/xfs-1.1.2.tar.bz2
+mirror://xorg/individual/app/xinit-1.3.2.tar.bz2
 mirror://xorg/individual/app/xmessage-1.0.3.tar.bz2
 mirror://xorg/individual/lib/libXp-1.0.1.tar.bz2
 mirror://xorg/individual/lib/libXxf86misc-1.0.3.tar.bz2
 mirror://xorg/individual/proto/printproto-1.0.5.tar.bz2
 mirror://xorg/individual/proto/xf86miscproto-0.9.3.tar.bz2
 mirror://xorg/individual/util/gccmakedep-1.0.2.tar.bz2
-mirror://xorg/individual/util/imake-1.0.4.tar.bz2
-mirror://xorg/individual/util/lndir-1.0.2.tar.bz2
+mirror://xorg/individual/util/imake-1.0.5.tar.bz2
+mirror://xorg/individual/util/lndir-1.0.3.tar.bz2
 mirror://xorg/individual/util/xorg-cf-files-1.0.4.tar.bz2
diff --git a/pkgs/servers/x11/xorg/overrides.nix b/pkgs/servers/x11/xorg/overrides.nix
index ad6534b3df51..d34ccce7fe99 100644
--- a/pkgs/servers/x11/xorg/overrides.nix
+++ b/pkgs/servers/x11/xorg/overrides.nix
@@ -8,6 +8,10 @@ let
 in
 {
 
+  fontcursormisc = attrs: attrs // {
+    buildInputs = attrs.buildInputs ++ [ xorg.mkfontscale ];
+  };
+
   fontmiscmisc = attrs: attrs // {
     postInstall =
       ''
@@ -24,7 +28,7 @@ in
   };
 
   mkfontdir = attrs: attrs // {
-    preBuild = "substituteInPlace mkfontdir.cpp --replace BINDIR ${xorg.mkfontscale}/bin";
+    preBuild = "substituteInPlace mkfontdir.in --replace @bindir@ ${xorg.mkfontscale}/bin";
   };
 
   libxcb = attrs : attrs // {
@@ -83,21 +87,19 @@ in
   compositeproto = attrs: attrs // {
     propagatedBuildInputs = [ xorg.fixesproto ];
   };
-  
+
   libXcomposite = attrs: attrs // {
     propagatedBuildInputs = [ xorg.libXfixes ];
   };
-  
+
   libXaw = attrs: attrs // {
     propagatedBuildInputs = [ xorg.libXmu ];
   };
-  
+
   libXft = attrs: attrs // {
     buildInputs = attrs.buildInputs ++
       [ xorg.xproto xorg.libX11 xorg.renderproto ];
-    # probably, fontconfig and freetype could be added
-    # pkgconfig seems to be nice, too...
-    propagatedBuildInputs = [ xorg.libXrender ];
+    propagatedBuildInputs = [ xorg.libXrender args.freetype args.fontconfig ];
     preConfigure = setMalloc0ReturnsNullCrossCompiling;
   };
 
@@ -124,13 +126,30 @@ in
     buildInputs = attrs.buildInputs ++ [ args.freetype args.fontconfig ];
   };
 
+  xev = attrs: attrs // {
+    buildInputs = attrs.buildInputs ++ [ xorg.libXrender ];
+  };
+
   xf86inputevdev = attrs: attrs // {
     preBuild = "sed -e '/motion_history_proc/d; /history_size/d;' -i src/*.c";
-    buildInputs = attrs.buildInputs ++ [xorg.kbproto xorg.libxkbfile xorg.randrproto];
+    NIX_CFLAGS_COMPILE = "-I${xorg.pixman}/include/pixman-1";
+    buildInputs = attrs.buildInputs ++ [xorg.kbproto xorg.libxkbfile xorg.randrproto xorg.pixman];
     installFlags = "sdkdir=\${out}/include/xorg";
   };
 
+  xf86inputkeyboard = attrs: attrs // {
+    NIX_CFLAGS_COMPILE = "-I${xorg.pixman}/include/pixman-1";
+    buildInputs = attrs.buildInputs ++ [xorg.pixman];
+  };
+
+  xf86inputmouse = attrs: attrs // {
+    NIX_CFLAGS_COMPILE = "-I${xorg.pixman}/include/pixman-1";
+    buildInputs = attrs.buildInputs ++ [xorg.pixman];
+  };
+
   xf86inputsynaptics = attrs: attrs // {
+    NIX_CFLAGS_COMPILE = "-I${xorg.pixman}/include/pixman-1";
+    buildInputs = attrs.buildInputs ++ [args.mtdev xorg.pixman];
     installFlags = "sdkdir=\${out}/include/xorg configdir=\${out}/include/xorg";
   };
 
@@ -143,7 +162,18 @@ in
   };
 
   xf86videoati = attrs: attrs // {
-    buildInputs = attrs.buildInputs ++ [xorg.glproto args.mesa];
+    NIX_CFLAGS_COMPILE = "-I${xorg.pixman}/include/pixman-1";
+    buildInputs = attrs.buildInputs ++ [xorg.glproto args.mesa xorg.pixman];
+  };
+
+  xf86videocirrus = attrs: attrs // {
+    NIX_CFLAGS_COMPILE = "-I${xorg.pixman}/include/pixman-1";
+    buildInputs = attrs.buildInputs ++ [xorg.pixman];
+  };
+
+  xf86videofbdev = attrs: attrs // {
+    NIX_CFLAGS_COMPILE = "-I${xorg.pixman}/include/pixman-1";
+    buildInputs = attrs.buildInputs ++ [xorg.pixman];
   };
 
   xf86videoopenchrome = attrs: attrs // rec {
@@ -155,6 +185,16 @@ in
     buildInputs = attrs.buildInputs ++ [xorg.glproto args.mesa xorg.libXext];
   };
 
+  xf86videonv = attrs: attrs // {
+    NIX_CFLAGS_COMPILE = "-I${xorg.pixman}/include/pixman-1";
+    buildInputs = attrs.buildInputs ++ [xorg.pixman];
+  };
+
+  xf86videovesa = attrs: attrs // {
+    NIX_CFLAGS_COMPILE = "-I${xorg.pixman}/include/pixman-1";
+    buildInputs = attrs.buildInputs ++ [xorg.pixman];
+  };
+
   xdriinfo = attrs: attrs // {
     buildInputs = attrs.buildInputs ++ [xorg.glproto args.mesa];
   };
@@ -177,6 +217,7 @@ in
         xorg.xineramaproto xorg.xf86dgaproto
         xorg.dmxproto xorg.libdmx xorg.xf86vidmodeproto
         xorg.recordproto xorg.libXext xorg.pixman xorg.libXfont
+        xorg.damageproto xorg.xcmiscproto xorg.xtrans xorg.bigreqsproto
       ];
     propagatedBuildInputs =
       [ xorg.libpciaccess xorg.inputproto xorg.xextproto xorg.randrproto
@@ -189,10 +230,35 @@ in
       '';
   };
 
-  libSM = attrs: attrs // args.stdenv.lib.optionalAttrs (args.stdenv.system == "i686-darwin") {
-    configureFlags = "LIBUUID_CFLAGS='' LIBUUID_LIBS=''";
+  xorgserver_1_13_0 = attrs: attrs // {
+    configureFlags = "--enable-xcsecurity"; # enable SECURITY extension
+    patches = [./xorgserver-dri-path.patch ./xorgserver-xkbcomp-path.patch];
+    buildInputs = attrs.buildInputs ++
+      [ args.zlib args.udev args.mesa args.dbus.libs
+        xorg.xf86bigfontproto xorg.glproto xorg.xf86driproto
+        xorg.compositeproto xorg.scrnsaverproto xorg.resourceproto
+        xorg.xineramaproto xorg.xf86dgaproto
+        xorg.dmxproto xorg.libdmx xorg.xf86vidmodeproto
+        xorg.recordproto xorg.libXext xorg.pixman xorg.libXfont
+        xorg.damageproto xorg.xcmiscproto xorg.xtrans xorg.bigreqsproto
+      ];
+    propagatedBuildInputs =
+      [ xorg.libpciaccess xorg.inputproto xorg.xextproto xorg.randrproto
+        xorg.dri2proto xorg.kbproto
+      ];
+    postInstall =
+      ''
+        rm -fr $out/share/X11/xkb/compiled
+        ln -s /var/tmp $out/share/X11/xkb/compiled
+      '';
   };
 
+  libSM = attrs: attrs
+    // { propagatedBuildInputs = [ xorg.libICE ]; }
+    // args.stdenv.lib.optionalAttrs (args.stdenv.system == "i686-darwin") {
+      configureFlags = "LIBUUID_CFLAGS='' LIBUUID_LIBS=''";
+    };
+
   lndir = attrs: attrs // {
     preConfigure = ''
       substituteInPlace lndir.c \
@@ -208,4 +274,11 @@ in
     buildInputs = attrs.buildInputs ++ [xorg.libXrender];
   };
 
+  xinput = attrs: attrs // {
+    buildInputs = attrs.buildInputs ++ [xorg.libXrender];
+  };
+
+  xwd = attrs: attrs // {
+    buildInputs = attrs.buildInputs ++ [xorg.libXt];
+  };
 }
diff --git a/pkgs/servers/x11/xorg/tarballs-7.6.list b/pkgs/servers/x11/xorg/tarballs-7.6.list
deleted file mode 100644
index 613c3107c867..000000000000
--- a/pkgs/servers/x11/xorg/tarballs-7.6.list
+++ /dev/null
@@ -1,199 +0,0 @@
-mirror://xorg/X11R7.6/src/everything/applewmproto-1.4.1.tar.bz2
-mirror://xorg/X11R7.6/src/everything/bdftopcf-1.0.3.tar.bz2
-mirror://xorg/X11R7.6/src/everything/bigreqsproto-1.1.1.tar.bz2
-mirror://xorg/X11R7.6/src/everything/compositeproto-0.4.2.tar.bz2
-mirror://xorg/X11R7.6/src/everything/damageproto-1.2.1.tar.bz2
-mirror://xorg/individual/proto/dri2proto-2.6.tar.bz2
-mirror://xorg/individual/proto/dmxproto-2.3.1.tar.bz2
-mirror://xorg/X11R7.6/src/everything/encodings-1.0.4.tar.bz2
-mirror://xorg/X11R7.6/src/everything/fixesproto-4.1.2.tar.bz2
-mirror://xorg/X11R7.6/src/everything/font-adobe-100dpi-1.0.3.tar.bz2
-mirror://xorg/X11R7.6/src/everything/font-adobe-75dpi-1.0.3.tar.bz2
-mirror://xorg/X11R7.6/src/everything/font-adobe-utopia-100dpi-1.0.4.tar.bz2
-mirror://xorg/X11R7.6/src/everything/font-adobe-utopia-75dpi-1.0.4.tar.bz2
-mirror://xorg/X11R7.6/src/everything/font-adobe-utopia-type1-1.0.4.tar.bz2
-mirror://xorg/X11R7.6/src/everything/font-alias-1.0.3.tar.bz2
-mirror://xorg/X11R7.6/src/everything/font-arabic-misc-1.0.3.tar.bz2
-mirror://xorg/X11R7.6/src/everything/font-bh-100dpi-1.0.3.tar.bz2
-mirror://xorg/X11R7.6/src/everything/font-bh-75dpi-1.0.3.tar.bz2
-mirror://xorg/X11R7.6/src/everything/font-bh-lucidatypewriter-100dpi-1.0.3.tar.bz2
-mirror://xorg/X11R7.6/src/everything/font-bh-lucidatypewriter-75dpi-1.0.3.tar.bz2
-mirror://xorg/X11R7.6/src/everything/font-bh-ttf-1.0.3.tar.bz2
-mirror://xorg/X11R7.6/src/everything/font-bh-type1-1.0.3.tar.bz2
-mirror://xorg/X11R7.6/src/everything/font-bitstream-100dpi-1.0.3.tar.bz2
-mirror://xorg/X11R7.6/src/everything/font-bitstream-75dpi-1.0.3.tar.bz2
-mirror://xorg/X11R7.6/src/everything/font-bitstream-type1-1.0.3.tar.bz2
-mirror://xorg/X11R7.6/src/everything/font-cronyx-cyrillic-1.0.3.tar.bz2
-mirror://xorg/X11R7.6/src/everything/font-cursor-misc-1.0.3.tar.bz2
-mirror://xorg/X11R7.6/src/everything/font-daewoo-misc-1.0.3.tar.bz2
-mirror://xorg/X11R7.6/src/everything/font-dec-misc-1.0.3.tar.bz2
-mirror://xorg/X11R7.6/src/everything/font-ibm-type1-1.0.3.tar.bz2
-mirror://xorg/X11R7.6/src/everything/font-isas-misc-1.0.3.tar.bz2
-mirror://xorg/X11R7.6/src/everything/font-jis-misc-1.0.3.tar.bz2
-mirror://xorg/X11R7.6/src/everything/font-micro-misc-1.0.3.tar.bz2
-mirror://xorg/X11R7.6/src/everything/font-misc-cyrillic-1.0.3.tar.bz2
-mirror://xorg/X11R7.6/src/everything/font-misc-ethiopic-1.0.3.tar.bz2
-mirror://xorg/X11R7.6/src/everything/font-misc-meltho-1.0.3.tar.bz2
-mirror://xorg/X11R7.6/src/everything/font-misc-misc-1.1.2.tar.bz2
-mirror://xorg/X11R7.6/src/everything/font-mutt-misc-1.0.3.tar.bz2
-mirror://xorg/X11R7.6/src/everything/font-schumacher-misc-1.1.2.tar.bz2
-mirror://xorg/X11R7.6/src/everything/font-screen-cyrillic-1.0.4.tar.bz2
-mirror://xorg/X11R7.6/src/everything/font-sony-misc-1.0.3.tar.bz2
-mirror://xorg/X11R7.6/src/everything/fontsproto-2.1.1.tar.bz2
-mirror://xorg/X11R7.6/src/everything/font-sun-misc-1.0.3.tar.bz2
-mirror://xorg/X11R7.6/src/everything/font-util-1.2.0.tar.bz2
-mirror://xorg/X11R7.6/src/everything/font-winitzki-cyrillic-1.0.3.tar.bz2
-mirror://xorg/X11R7.6/src/everything/font-xfree86-type1-1.0.4.tar.bz2
-mirror://xorg/X11R7.6/src/everything/glproto-1.4.12.tar.bz2
-mirror://xorg/X11R7.6/src/everything/iceauth-1.0.4.tar.bz2
-mirror://xorg/X11R7.6/src/everything/inputproto-2.0.1.tar.bz2
-mirror://xorg/X11R7.6/src/everything/kbproto-1.0.5.tar.bz2
-mirror://xorg/X11R7.6/src/everything/libAppleWM-1.4.0.tar.bz2
-mirror://xorg/X11R7.6/src/everything/libdmx-1.1.1.tar.bz2
-mirror://xorg/X11R7.6/src/everything/libfontenc-1.1.0.tar.bz2
-mirror://xorg/X11R7.6/src/everything/libFS-1.0.3.tar.bz2
-mirror://xorg/X11R7.6/src/everything/libICE-1.0.7.tar.bz2
-mirror://xorg/individual/lib/libpciaccess-0.12.1.tar.bz2
-mirror://xorg/X11R7.6/src/everything/libpthread-stubs-0.3.tar.bz2
-mirror://xorg/X11R7.6/src/everything/libSM-1.2.0.tar.bz2
-mirror://xorg/X11R7.6/src/everything/libWindowsWM-1.0.1.tar.bz2
-mirror://xorg/individual/lib/libX11-1.4.1.tar.bz2
-mirror://xorg/X11R7.6/src/everything/libXau-1.0.6.tar.bz2
-mirror://xorg/individual/lib/libXaw-1.0.9.tar.bz2
-mirror://xorg/X11R7.6/src/everything/libxcb-1.7.tar.bz2
-mirror://xorg/X11R7.6/src/everything/libXcomposite-0.4.3.tar.bz2
-mirror://xorg/X11R7.6/src/everything/libXcursor-1.1.11.tar.bz2
-mirror://xorg/X11R7.6/src/everything/libXdamage-1.1.3.tar.bz2
-mirror://xorg/X11R7.6/src/everything/libXdmcp-1.1.0.tar.bz2
-mirror://xorg/X11R7.6/src/everything/libXext-1.2.0.tar.bz2
-mirror://xorg/X11R7.6/src/everything/libXfixes-4.0.5.tar.bz2
-mirror://xorg/X11R7.6/src/everything/libXfont-1.4.3.tar.bz2
-mirror://xorg/X11R7.6/src/everything/libXft-2.2.0.tar.bz2
-mirror://xorg/individual/lib/libXi-1.4.1.tar.bz2
-mirror://xorg/X11R7.6/src/everything/libXinerama-1.1.1.tar.bz2
-mirror://xorg/X11R7.6/src/everything/libxkbfile-1.0.7.tar.bz2
-mirror://xorg/X11R7.6/src/everything/libXmu-1.1.0.tar.bz2
-mirror://xorg/X11R7.6/src/everything/libXpm-3.5.9.tar.bz2
-mirror://xorg/X11R7.6/src/everything/libXrandr-1.3.1.tar.bz2
-mirror://xorg/X11R7.6/src/everything/libXrender-0.9.6.tar.bz2
-mirror://xorg/X11R7.6/src/everything/libXres-1.0.5.tar.bz2
-mirror://xorg/X11R7.6/src/everything/libXScrnSaver-1.2.1.tar.bz2
-mirror://xorg/X11R7.6/src/everything/libXt-1.0.9.tar.bz2
-mirror://xorg/X11R7.6/src/everything/libXtst-1.2.0.tar.bz2
-mirror://xorg/X11R7.6/src/everything/libXv-1.0.6.tar.bz2
-mirror://xorg/X11R7.6/src/everything/libXvMC-1.0.6.tar.bz2
-mirror://xorg/X11R7.6/src/everything/libXxf86dga-1.1.2.tar.bz2
-mirror://xorg/X11R7.6/src/everything/libXxf86vm-1.1.1.tar.bz2
-mirror://xorg/X11R7.6/src/everything/luit-1.1.0.tar.bz2
-mirror://xorg/X11R7.6/src/everything/makedepend-1.0.3.tar.bz2
-mirror://xorg/X11R7.6/src/everything/mkfontdir-1.0.6.tar.bz2
-mirror://xorg/X11R7.6/src/everything/mkfontscale-1.0.8.tar.bz2
-mirror://xorg/X11R7.6/src/everything/randrproto-1.3.2.tar.bz2
-mirror://xorg/X11R7.6/src/everything/recordproto-1.14.1.tar.bz2
-mirror://xorg/X11R7.6/src/everything/renderproto-0.11.1.tar.bz2
-mirror://xorg/X11R7.6/src/everything/resourceproto-1.1.1.tar.bz2
-mirror://xorg/X11R7.6/src/everything/scrnsaverproto-1.2.1.tar.bz2
-mirror://xorg/X11R7.6/src/everything/sessreg-1.0.6.tar.bz2
-mirror://xorg/X11R7.6/src/everything/setxkbmap-1.2.0.tar.bz2
-mirror://xorg/X11R7.6/src/everything/smproxy-1.0.4.tar.bz2
-mirror://xorg/X11R7.6/src/everything/util-macros-1.11.0.tar.bz2
-mirror://xorg/X11R7.6/src/everything/videoproto-2.3.1.tar.bz2
-mirror://xorg/X11R7.6/src/everything/windowswmproto-1.0.4.tar.bz2
-mirror://xorg/individual/app/x11perf-1.5.3.tar.bz2
-mirror://xorg/X11R7.6/src/everything/xauth-1.0.5.tar.bz2
-mirror://xorg/X11R7.6/src/everything/xbacklight-1.1.2.tar.bz2
-mirror://xorg/X11R7.6/src/everything/xbitmaps-1.1.1.tar.bz2
-mirror://xorg/X11R7.6/src/everything/xcb-proto-1.6.tar.bz2
-mirror://xorg/X11R7.6/src/everything/xcmiscproto-1.2.1.tar.bz2
-mirror://xorg/X11R7.6/src/everything/xcmsdb-1.0.3.tar.bz2
-mirror://xorg/X11R7.6/src/everything/xcursorgen-1.0.4.tar.bz2
-mirror://xorg/X11R7.6/src/everything/xcursor-themes-1.0.3.tar.bz2
-mirror://xorg/X11R7.6/src/everything/xdpyinfo-1.2.0.tar.bz2
-mirror://xorg/X11R7.6/src/everything/xdriinfo-1.0.4.tar.bz2
-mirror://xorg/X11R7.6/src/everything/xev-1.1.0.tar.bz2
-mirror://xorg/X11R7.6/src/everything/xextproto-7.1.2.tar.bz2
-mirror://xorg/X11R7.6/src/everything/xf86bigfontproto-1.2.0.tar.bz2
-mirror://xorg/X11R7.6/src/everything/xf86dgaproto-2.1.tar.bz2
-mirror://xorg/individual/proto/xf86driproto-2.1.1.tar.bz2
-mirror://xorg/X11R7.6/src/everything/xf86-input-acecad-1.4.0.tar.bz2
-mirror://xorg/X11R7.6/src/everything/xf86-input-aiptek-1.3.1.tar.bz2
-mirror://xorg/individual/driver/xf86-input-evdev-2.6.0.tar.bz2
-mirror://xorg/X11R7.6/src/everything/xf86-input-joystick-1.5.0.tar.bz2
-mirror://xorg/X11R7.6/src/everything/xf86-input-keyboard-1.5.0.tar.bz2
-mirror://xorg/X11R7.6/src/everything/xf86-input-mouse-1.6.0.tar.bz2
-mirror://xorg/individual/driver/xf86-input-synaptics-1.5.0.tar.bz2
-mirror://xorg/X11R7.6/src/everything/xf86-input-vmmouse-12.6.10.tar.bz2
-mirror://xorg/X11R7.6/src/everything/xf86-input-void-1.3.1.tar.bz2
-mirror://xorg/X11R7.6/src/everything/xf86-video-apm-1.2.3.tar.bz2
-mirror://xorg/X11R7.6/src/everything/xf86-video-ark-0.7.3.tar.bz2
-mirror://xorg/X11R7.6/src/everything/xf86-video-ast-0.91.10.tar.bz2
-mirror://xorg/individual/driver/xf86-video-ati-6.14.3.tar.bz2
-mirror://xorg/X11R7.6/src/everything/xf86-video-chips-1.2.3.tar.bz2
-mirror://xorg/X11R7.6/src/everything/xf86-video-cirrus-1.3.2.tar.bz2
-mirror://xorg/X11R7.6/src/everything/xf86-video-dummy-0.3.4.tar.bz2
-mirror://xorg/X11R7.6/src/everything/xf86-video-fbdev-0.4.2.tar.bz2
-mirror://xorg/X11R7.6/src/everything/xf86-video-geode-2.11.10.tar.bz2
-mirror://xorg/X11R7.6/src/everything/xf86-video-glide-1.1.0.tar.bz2
-mirror://xorg/X11R7.6/src/everything/xf86-video-glint-1.2.5.tar.bz2
-mirror://xorg/X11R7.6/src/everything/xf86-video-i128-1.3.4.tar.bz2
-mirror://xorg/X11R7.6/src/everything/xf86-video-i740-1.3.2.tar.bz2
-mirror://xorg/individual/driver/xf86-video-intel-2.15.0.tar.bz2
-mirror://xorg/X11R7.6/src/everything/xf86-video-mach64-6.8.2.tar.bz2
-mirror://xorg/X11R7.6/src/everything/xf86-video-mga-1.4.13.tar.bz2
-mirror://xorg/X11R7.6/src/everything/xf86-video-neomagic-1.2.5.tar.bz2
-mirror://xorg/X11R7.6/src/everything/xf86-video-newport-0.2.3.tar.bz2
-mirror://xorg/X11R7.6/src/everything/xf86-video-nv-2.1.18.tar.bz2
-mirror://xorg/X11R7.6/src/everything/xf86-video-openchrome-0.2.904.tar.bz2
-mirror://xorg/X11R7.6/src/everything/xf86-video-r128-6.8.1.tar.bz2
-mirror://xorg/X11R7.6/src/everything/xf86-video-rendition-4.2.4.tar.bz2
-mirror://xorg/X11R7.6/src/everything/xf86-video-s3-0.6.3.tar.bz2
-mirror://xorg/X11R7.6/src/everything/xf86-video-s3virge-1.10.4.tar.bz2
-mirror://xorg/X11R7.6/src/everything/xf86-video-savage-2.3.1.tar.bz2
-mirror://xorg/X11R7.6/src/everything/xf86-video-siliconmotion-1.7.4.tar.bz2
-mirror://xorg/X11R7.6/src/everything/xf86-video-sis-0.10.3.tar.bz2
-mirror://xorg/X11R7.6/src/everything/xf86-video-sisusb-0.9.4.tar.bz2
-mirror://xorg/X11R7.6/src/everything/xf86-video-suncg14-1.1.1.tar.bz2
-mirror://xorg/X11R7.6/src/everything/xf86-video-suncg3-1.1.1.tar.bz2
-mirror://xorg/X11R7.6/src/everything/xf86-video-suncg6-1.1.1.tar.bz2
-mirror://xorg/X11R7.6/src/everything/xf86-video-sunffb-1.2.1.tar.bz2
-mirror://xorg/X11R7.6/src/everything/xf86-video-sunleo-1.2.0.tar.bz2
-mirror://xorg/X11R7.6/src/everything/xf86-video-suntcx-1.1.1.tar.bz2
-mirror://xorg/X11R7.6/src/everything/xf86-video-tdfx-1.4.3.tar.bz2
-mirror://xorg/X11R7.6/src/everything/xf86-video-tga-1.2.1.tar.bz2
-mirror://xorg/X11R7.6/src/everything/xf86-video-trident-1.3.4.tar.bz2
-mirror://xorg/X11R7.6/src/everything/xf86-video-tseng-1.2.4.tar.bz2
-mirror://xorg/X11R7.6/src/everything/xf86-video-v4l-0.2.0.tar.bz2
-mirror://xorg/X11R7.6/src/everything/xf86-video-vesa-2.3.0.tar.bz2
-mirror://xorg/X11R7.6/src/everything/xf86-video-vmware-11.0.3.tar.bz2
-mirror://xorg/X11R7.6/src/everything/xf86-video-voodoo-1.2.4.tar.bz2
-mirror://xorg/X11R7.6/src/everything/xf86-video-wsfb-0.3.0.tar.bz2
-mirror://xorg/X11R7.6/src/everything/xf86-video-xgi-1.6.0.tar.bz2
-mirror://xorg/X11R7.6/src/everything/xf86-video-xgixp-1.8.0.tar.bz2
-mirror://xorg/individual/proto/xf86vidmodeproto-2.3.1.tar.bz2
-mirror://xorg/X11R7.6/src/everything/xgamma-1.0.4.tar.bz2
-mirror://xorg/X11R7.6/src/everything/xhost-1.0.4.tar.bz2
-mirror://xorg/individual/proto/xineramaproto-1.2.1.tar.bz2
-mirror://xorg/X11R7.6/src/everything/xinput-1.5.3.tar.bz2
-mirror://xorg/individual/app/xkbcomp-1.2.1.tar.bz2
-mirror://xorg/X11R7.6/src/everything/xkbevd-1.1.2.tar.bz2
-mirror://xorg/X11R7.6/src/everything/xkbutils-1.0.3.tar.bz2
-mirror://xorg/X11R7.6/src/everything/xkill-1.0.3.tar.bz2
-mirror://xorg/X11R7.6/src/everything/xlsatoms-1.1.0.tar.bz2
-mirror://xorg/individual/app/xlsclients-1.1.2.tar.bz2
-mirror://xorg/X11R7.6/src/everything/xmodmap-1.0.5.tar.bz2
-mirror://xorg/X11R7.6/src/everything/xorg-docs-1.6.tar.bz2
-mirror://xorg/individual/xserver/xorg-server-1.9.5.tar.bz2
-mirror://xorg/X11R7.6/src/everything/xorg-sgml-doctools-1.6.tar.bz2
-mirror://xorg/X11R7.6/src/everything/xpr-1.0.3.tar.bz2
-mirror://xorg/X11R7.6/src/everything/xprop-1.2.0.tar.bz2
-mirror://xorg/X11R7.6/src/everything/xproto-7.0.20.tar.bz2
-mirror://xorg/X11R7.6/src/everything/xrandr-1.3.4.tar.bz2
-mirror://xorg/individual/app/xrdb-1.0.8.tar.bz2
-mirror://xorg/X11R7.6/src/everything/xrefresh-1.0.4.tar.bz2
-mirror://xorg/X11R7.6/src/everything/xset-1.2.1.tar.bz2
-mirror://xorg/X11R7.6/src/everything/xsetroot-1.1.0.tar.bz2
-mirror://xorg/X11R7.6/src/everything/xtrans-1.2.6.tar.bz2
-mirror://xorg/X11R7.6/src/everything/xvinfo-1.1.1.tar.bz2
-mirror://xorg/X11R7.6/src/everything/xwd-1.0.4.tar.bz2
-mirror://xorg/X11R7.6/src/everything/xwininfo-1.1.1.tar.bz2
-mirror://xorg/X11R7.6/src/everything/xwud-1.0.3.tar.bz2
diff --git a/pkgs/servers/x11/xorg/tarballs-7.7.list b/pkgs/servers/x11/xorg/tarballs-7.7.list
new file mode 100644
index 000000000000..5511f3f043f9
--- /dev/null
+++ b/pkgs/servers/x11/xorg/tarballs-7.7.list
@@ -0,0 +1,184 @@
+mirror://xorg/X11R7.7/src/everything/applewmproto-1.4.2.tar.bz2
+mirror://xorg/X11R7.7/src/everything/bdftopcf-1.0.3.tar.bz2
+mirror://xorg/X11R7.7/src/everything/bigreqsproto-1.1.2.tar.bz2
+mirror://xorg/X11R7.7/src/everything/compositeproto-0.4.2.tar.bz2
+mirror://xorg/X11R7.7/src/everything/damageproto-1.2.1.tar.bz2
+mirror://xorg/X11R7.7/src/everything/dmxproto-2.3.1.tar.bz2
+mirror://xorg/individual/proto/dri2proto-2.8.tar.bz2
+mirror://xorg/X11R7.7/src/everything/encodings-1.0.4.tar.bz2
+mirror://xorg/X11R7.7/src/everything/fixesproto-5.0.tar.bz2
+mirror://xorg/X11R7.7/src/everything/font-adobe-100dpi-1.0.3.tar.bz2
+mirror://xorg/X11R7.7/src/everything/font-adobe-75dpi-1.0.3.tar.bz2
+mirror://xorg/X11R7.7/src/everything/font-adobe-utopia-100dpi-1.0.4.tar.bz2
+mirror://xorg/X11R7.7/src/everything/font-adobe-utopia-75dpi-1.0.4.tar.bz2
+mirror://xorg/X11R7.7/src/everything/font-adobe-utopia-type1-1.0.4.tar.bz2
+mirror://xorg/X11R7.7/src/everything/font-alias-1.0.3.tar.bz2
+mirror://xorg/X11R7.7/src/everything/font-arabic-misc-1.0.3.tar.bz2
+mirror://xorg/X11R7.7/src/everything/font-bh-100dpi-1.0.3.tar.bz2
+mirror://xorg/X11R7.7/src/everything/font-bh-75dpi-1.0.3.tar.bz2
+mirror://xorg/X11R7.7/src/everything/font-bh-lucidatypewriter-100dpi-1.0.3.tar.bz2
+mirror://xorg/X11R7.7/src/everything/font-bh-lucidatypewriter-75dpi-1.0.3.tar.bz2
+mirror://xorg/X11R7.7/src/everything/font-bh-ttf-1.0.3.tar.bz2
+mirror://xorg/X11R7.7/src/everything/font-bh-type1-1.0.3.tar.bz2
+mirror://xorg/X11R7.7/src/everything/font-bitstream-100dpi-1.0.3.tar.bz2
+mirror://xorg/X11R7.7/src/everything/font-bitstream-75dpi-1.0.3.tar.bz2
+mirror://xorg/X11R7.7/src/everything/font-bitstream-type1-1.0.3.tar.bz2
+mirror://xorg/X11R7.7/src/everything/font-cronyx-cyrillic-1.0.3.tar.bz2
+mirror://xorg/X11R7.7/src/everything/font-cursor-misc-1.0.3.tar.bz2
+mirror://xorg/X11R7.7/src/everything/font-daewoo-misc-1.0.3.tar.bz2
+mirror://xorg/X11R7.7/src/everything/font-dec-misc-1.0.3.tar.bz2
+mirror://xorg/X11R7.7/src/everything/font-ibm-type1-1.0.3.tar.bz2
+mirror://xorg/X11R7.7/src/everything/font-isas-misc-1.0.3.tar.bz2
+mirror://xorg/X11R7.7/src/everything/font-jis-misc-1.0.3.tar.bz2
+mirror://xorg/X11R7.7/src/everything/font-micro-misc-1.0.3.tar.bz2
+mirror://xorg/X11R7.7/src/everything/font-misc-cyrillic-1.0.3.tar.bz2
+mirror://xorg/X11R7.7/src/everything/font-misc-ethiopic-1.0.3.tar.bz2
+mirror://xorg/X11R7.7/src/everything/font-misc-meltho-1.0.3.tar.bz2
+mirror://xorg/X11R7.7/src/everything/font-misc-misc-1.1.2.tar.bz2
+mirror://xorg/X11R7.7/src/everything/font-mutt-misc-1.0.3.tar.bz2
+mirror://xorg/X11R7.7/src/everything/font-schumacher-misc-1.1.2.tar.bz2
+mirror://xorg/X11R7.7/src/everything/font-screen-cyrillic-1.0.4.tar.bz2
+mirror://xorg/X11R7.7/src/everything/font-sony-misc-1.0.3.tar.bz2
+mirror://xorg/X11R7.7/src/everything/fontsproto-2.1.2.tar.bz2
+mirror://xorg/X11R7.7/src/everything/font-sun-misc-1.0.3.tar.bz2
+mirror://xorg/X11R7.7/src/everything/font-util-1.3.0.tar.bz2
+mirror://xorg/X11R7.7/src/everything/font-winitzki-cyrillic-1.0.3.tar.bz2
+mirror://xorg/X11R7.7/src/everything/font-xfree86-type1-1.0.4.tar.bz2
+mirror://xorg/individual/proto/glproto-1.4.16.tar.bz2
+mirror://xorg/X11R7.7/src/everything/iceauth-1.0.5.tar.bz2
+mirror://xorg/X11R7.7/src/everything/inputproto-2.2.tar.bz2
+mirror://xorg/X11R7.7/src/everything/kbproto-1.0.6.tar.bz2
+mirror://xorg/X11R7.7/src/everything/libAppleWM-1.4.1.tar.bz2
+mirror://xorg/X11R7.7/src/everything/libdmx-1.1.2.tar.bz2
+mirror://xorg/X11R7.7/src/everything/libfontenc-1.1.1.tar.bz2
+mirror://xorg/X11R7.7/src/everything/libFS-1.0.4.tar.bz2
+mirror://xorg/X11R7.7/src/everything/libICE-1.0.8.tar.bz2
+mirror://xorg/X11R7.7/src/everything/libpciaccess-0.13.1.tar.bz2
+mirror://xorg/X11R7.7/src/everything/libpthread-stubs-0.3.tar.bz2
+mirror://xorg/X11R7.7/src/everything/libSM-1.2.1.tar.bz2
+mirror://xorg/X11R7.7/src/everything/libWindowsWM-1.0.1.tar.bz2
+mirror://xorg/X11R7.7/src/everything/libX11-1.5.0.tar.bz2
+mirror://xorg/X11R7.7/src/everything/libXau-1.0.7.tar.bz2
+mirror://xorg/X11R7.7/src/everything/libXaw-1.0.11.tar.bz2
+mirror://xorg/individual/xcb/libxcb-1.9.tar.bz2
+mirror://xorg/X11R7.7/src/everything/libXcomposite-0.4.3.tar.bz2
+mirror://xorg/X11R7.7/src/everything/libXcursor-1.1.13.tar.bz2
+mirror://xorg/X11R7.7/src/everything/libXdamage-1.1.3.tar.bz2
+mirror://xorg/X11R7.7/src/everything/libXdmcp-1.1.1.tar.bz2
+mirror://xorg/X11R7.7/src/everything/libXext-1.3.1.tar.bz2
+mirror://xorg/X11R7.7/src/everything/libXfixes-5.0.tar.bz2
+mirror://xorg/X11R7.7/src/everything/libXfont-1.4.5.tar.bz2
+mirror://xorg/X11R7.7/src/everything/libXft-2.3.1.tar.bz2
+mirror://xorg/X11R7.7/src/everything/libXi-1.6.1.tar.bz2
+mirror://xorg/X11R7.7/src/everything/libXinerama-1.1.2.tar.bz2
+mirror://xorg/X11R7.7/src/everything/libxkbfile-1.0.8.tar.bz2
+mirror://xorg/X11R7.7/src/everything/libXmu-1.1.1.tar.bz2
+mirror://xorg/X11R7.7/src/everything/libXpm-3.5.10.tar.bz2
+mirror://xorg/individual/lib/libXrandr-1.4.0.tar.bz2
+mirror://xorg/X11R7.7/src/everything/libXrender-0.9.7.tar.bz2
+mirror://xorg/X11R7.7/src/everything/libXres-1.0.6.tar.bz2
+mirror://xorg/X11R7.7/src/everything/libXScrnSaver-1.2.2.tar.bz2
+mirror://xorg/X11R7.7/src/everything/libXt-1.1.3.tar.bz2
+mirror://xorg/X11R7.7/src/everything/libXtst-1.2.1.tar.bz2
+mirror://xorg/X11R7.7/src/everything/libXv-1.0.7.tar.bz2
+mirror://xorg/X11R7.7/src/everything/libXvMC-1.0.7.tar.bz2
+mirror://xorg/X11R7.7/src/everything/libXxf86dga-1.1.3.tar.bz2
+mirror://xorg/X11R7.7/src/everything/libXxf86vm-1.1.2.tar.bz2
+mirror://xorg/X11R7.7/src/everything/luit-1.1.1.tar.bz2
+mirror://xorg/X11R7.7/src/everything/makedepend-1.0.4.tar.bz2
+mirror://xorg/X11R7.7/src/everything/mkfontdir-1.0.7.tar.bz2
+mirror://xorg/X11R7.7/src/everything/mkfontscale-1.1.0.tar.bz2
+mirror://xorg/individual/proto/randrproto-1.4.0.tar.bz2
+mirror://xorg/X11R7.7/src/everything/recordproto-1.14.2.tar.bz2
+mirror://xorg/X11R7.7/src/everything/renderproto-0.11.1.tar.bz2
+mirror://xorg/X11R7.7/src/everything/resourceproto-1.2.0.tar.bz2
+mirror://xorg/X11R7.7/src/everything/scrnsaverproto-1.2.2.tar.bz2
+mirror://xorg/X11R7.7/src/everything/sessreg-1.0.7.tar.bz2
+mirror://xorg/X11R7.7/src/everything/setxkbmap-1.3.0.tar.bz2
+mirror://xorg/X11R7.7/src/everything/smproxy-1.0.5.tar.bz2
+mirror://xorg/X11R7.7/src/everything/util-macros-1.17.tar.bz2
+mirror://xorg/X11R7.7/src/everything/videoproto-2.3.1.tar.bz2
+mirror://xorg/X11R7.7/src/everything/windowswmproto-1.0.4.tar.bz2
+mirror://xorg/X11R7.7/src/everything/x11perf-1.5.4.tar.bz2
+mirror://xorg/X11R7.7/src/everything/xauth-1.0.7.tar.bz2
+mirror://xorg/individual/app/xbacklight-1.2.0.tar.bz2
+mirror://xorg/X11R7.7/src/everything/xbitmaps-1.1.1.tar.bz2
+mirror://xorg/individual/xcb/xcb-proto-1.8.tar.bz2
+mirror://xorg/X11R7.7/src/everything/xcmiscproto-1.2.2.tar.bz2
+mirror://xorg/X11R7.7/src/everything/xcmsdb-1.0.4.tar.bz2
+mirror://xorg/X11R7.7/src/everything/xcursorgen-1.0.5.tar.bz2
+mirror://xorg/X11R7.7/src/everything/xcursor-themes-1.0.3.tar.bz2
+mirror://xorg/X11R7.7/src/everything/xdpyinfo-1.3.0.tar.bz2
+mirror://xorg/X11R7.7/src/everything/xdriinfo-1.0.4.tar.bz2
+mirror://xorg/X11R7.7/src/everything/xev-1.2.0.tar.bz2
+mirror://xorg/X11R7.7/src/everything/xextproto-7.2.1.tar.bz2
+mirror://xorg/X11R7.7/src/everything/xf86bigfontproto-1.2.0.tar.bz2
+mirror://xorg/X11R7.7/src/everything/xf86dgaproto-2.1.tar.bz2
+mirror://xorg/X11R7.7/src/everything/xf86driproto-2.1.1.tar.bz2
+mirror://xorg/individual/driver/xf86-input-evdev-2.7.3.tar.bz2
+mirror://xorg/X11R7.7/src/everything/xf86-input-joystick-1.6.1.tar.bz2
+mirror://xorg/X11R7.7/src/everything/xf86-input-keyboard-1.6.1.tar.bz2
+mirror://xorg/X11R7.7/src/everything/xf86-input-mouse-1.7.2.tar.bz2
+mirror://xorg/individual/driver/xf86-input-synaptics-1.6.2.tar.bz2
+mirror://xorg/individual/driver/xf86-input-vmmouse-12.9.0.tar.bz2
+mirror://xorg/X11R7.7/src/everything/xf86-input-void-1.4.0.tar.bz2
+mirror://xorg/X11R7.7/src/everything/xf86-video-ark-0.7.4.tar.bz2
+mirror://xorg/X11R7.7/src/everything/xf86-video-ast-0.93.10.tar.bz2
+mirror://xorg/individual/driver/xf86-video-ati-6.14.6.tar.bz2
+mirror://xorg/individual/driver/xf86-video-cirrus-1.5.1.tar.bz2
+mirror://xorg/X11R7.7/src/everything/xf86-video-dummy-0.3.5.tar.bz2
+mirror://xorg/individual/driver/xf86-video-fbdev-0.4.3.tar.bz2
+mirror://xorg/X11R7.7/src/everything/xf86-video-geode-2.11.13.tar.bz2
+mirror://xorg/X11R7.7/src/everything/xf86-video-glide-1.2.0.tar.bz2
+mirror://xorg/X11R7.7/src/everything/xf86-video-glint-1.2.7.tar.bz2
+mirror://xorg/X11R7.7/src/everything/xf86-video-i128-1.3.5.tar.bz2
+mirror://xorg/individual/driver/xf86-video-intel-2.20.10.tar.bz2
+mirror://xorg/X11R7.7/src/everything/xf86-video-mach64-6.9.1.tar.bz2
+mirror://xorg/X11R7.7/src/everything/xf86-video-mga-1.5.0.tar.bz2
+mirror://xorg/X11R7.7/src/everything/xf86-video-neomagic-1.2.6.tar.bz2
+mirror://xorg/X11R7.7/src/everything/xf86-video-newport-0.2.4.tar.bz2
+mirror://xorg/individual/driver/xf86-video-nv-2.1.20.tar.bz2
+mirror://xorg/X11R7.7/src/everything/xf86-video-openchrome-0.2.906.tar.bz2
+mirror://xorg/X11R7.7/src/everything/xf86-video-r128-6.8.2.tar.bz2
+mirror://xorg/X11R7.7/src/everything/xf86-video-savage-2.3.4.tar.bz2
+mirror://xorg/X11R7.7/src/everything/xf86-video-siliconmotion-1.7.6.tar.bz2
+mirror://xorg/X11R7.7/src/everything/xf86-video-sis-0.10.4.tar.bz2
+mirror://xorg/X11R7.7/src/everything/xf86-video-suncg6-1.1.1.tar.bz2
+mirror://xorg/X11R7.7/src/everything/xf86-video-sunffb-1.2.1.tar.bz2
+mirror://xorg/X11R7.7/src/everything/xf86-video-tdfx-1.4.4.tar.bz2
+mirror://xorg/X11R7.7/src/everything/xf86-video-tga-1.2.1.tar.bz2
+mirror://xorg/X11R7.7/src/everything/xf86-video-trident-1.3.5.tar.bz2
+mirror://xorg/X11R7.7/src/everything/xf86-video-v4l-0.2.0.tar.bz2
+mirror://xorg/individual/driver/xf86-video-vesa-2.3.2.tar.bz2
+mirror://xorg/X11R7.7/src/everything/xf86-video-vmware-12.0.2.tar.bz2
+mirror://xorg/X11R7.7/src/everything/xf86-video-voodoo-1.2.4.tar.bz2
+mirror://xorg/X11R7.7/src/everything/xf86-video-wsfb-0.4.0.tar.bz2
+mirror://xorg/X11R7.7/src/everything/xf86vidmodeproto-2.3.1.tar.bz2
+mirror://xorg/X11R7.7/src/everything/xgamma-1.0.5.tar.bz2
+mirror://xorg/X11R7.7/src/everything/xhost-1.0.5.tar.bz2
+mirror://xorg/X11R7.7/src/everything/xineramaproto-1.2.1.tar.bz2
+mirror://xorg/X11R7.7/src/everything/xinput-1.6.0.tar.bz2
+mirror://xorg/X11R7.7/src/everything/xkbcomp-1.2.4.tar.bz2
+mirror://xorg/X11R7.7/src/everything/xkbevd-1.1.3.tar.bz2
+mirror://xorg/X11R7.7/src/everything/xkbutils-1.0.3.tar.bz2
+mirror://xorg/X11R7.7/src/everything/xkeyboard-config-2.6.tar.bz2
+mirror://xorg/X11R7.7/src/everything/xkill-1.0.3.tar.bz2
+mirror://xorg/X11R7.7/src/everything/xlsatoms-1.1.1.tar.bz2
+mirror://xorg/X11R7.7/src/everything/xlsclients-1.1.2.tar.bz2
+mirror://xorg/X11R7.7/src/everything/xmodmap-1.0.7.tar.bz2
+mirror://xorg/X11R7.7/src/everything/xorg-docs-1.7.tar.bz2
+mirror://xorg/individual/xserver/xorg-server-1.12.4.tar.bz2
+mirror://xorg/X11R7.7/src/everything/xorg-sgml-doctools-1.11.tar.bz2
+mirror://xorg/X11R7.7/src/everything/xpr-1.0.4.tar.bz2
+mirror://xorg/X11R7.7/src/everything/xprop-1.2.1.tar.bz2
+mirror://xorg/X11R7.7/src/everything/xproto-7.0.23.tar.bz2
+mirror://xorg/X11R7.7/src/everything/xrandr-1.3.5.tar.bz2
+mirror://xorg/X11R7.7/src/everything/xrdb-1.0.9.tar.bz2
+mirror://xorg/X11R7.7/src/everything/xrefresh-1.0.4.tar.bz2
+mirror://xorg/X11R7.7/src/everything/xset-1.2.2.tar.bz2
+mirror://xorg/X11R7.7/src/everything/xsetroot-1.1.0.tar.bz2
+mirror://xorg/X11R7.7/src/everything/xtrans-1.2.7.tar.bz2
+mirror://xorg/X11R7.7/src/everything/xvinfo-1.1.1.tar.bz2
+mirror://xorg/X11R7.7/src/everything/xwd-1.0.5.tar.bz2
+mirror://xorg/X11R7.7/src/everything/xwininfo-1.1.2.tar.bz2
+mirror://xorg/X11R7.7/src/everything/xwud-1.0.4.tar.bz2
diff --git a/pkgs/servers/x11/xorg/unichrome/default.nix b/pkgs/servers/x11/xorg/unichrome/default.nix
index 5cc26338c953..720ccd10158d 100644
--- a/pkgs/servers/x11/xorg/unichrome/default.nix
+++ b/pkgs/servers/x11/xorg/unichrome/default.nix
@@ -1,24 +1,25 @@
 {stdenv, fetchgit, pkgconfig, fontsproto, libdrm, libpciaccess, randrproto, renderproto,
 videoproto, libX11,
 xextproto, xf86driproto, xorgserver, xproto, libXvMC, glproto, mesa, automake,
-autoconf, libtool, libXext, utilmacros}:
+autoconf, libtool, libXext, utilmacros, pixman}:
 
 stdenv.mkDerivation {
   name = "xf86-video-unichrome-git";
   src = fetchgit {
-    url = "git://anongit.freedesktop.org/~libv/xf86-video-unichrome";
+    url = "git://people.freedesktop.org/~libv/xf86-video-unichrome";
     md5 = "6e5e0f8ee204af2385a02e502d1ca8f1";
     rev = "6260e0fc9f0754d101dda014a8f4b5f76f58e978";
   };
   buildInputs = [pkgconfig fontsproto libdrm libpciaccess randrproto renderproto
     videoproto libX11 libXext xextproto xf86driproto xorgserver xproto libXvMC
-    glproto mesa automake autoconf libtool libXext utilmacros ];
+    glproto mesa automake autoconf libtool libXext utilmacros pixman ];
   preConfigure = "chmod +x autogen.sh";
   prePatch = ''
     sed s,/bin/bash,/bin/sh, -i git_version.sh
   '';
   patches = [ ./configure.patch ];
   configureScript = "./autogen.sh";
+  CFLAGS="-I${pixman}/include/pixman-1";
 
   meta = {
     homepage = "http://unichrome.sourceforge.net/";
diff --git a/pkgs/servers/x11/xorg/xorgserver-dri-path.patch b/pkgs/servers/x11/xorg/xorgserver-dri-path.patch
index 30e423ba3cbe..3a5f061eb9a1 100644
--- a/pkgs/servers/x11/xorg/xorgserver-dri-path.patch
+++ b/pkgs/servers/x11/xorg/xorgserver-dri-path.patch
@@ -1,52 +1,19 @@
-diff --git a/glx/glxdri.c b/glx/glxdri.c
-index 6122653..3f5fc2b 100644
---- a/glx/glxdri.c
-+++ b/glx/glxdri.c
-@@ -1042,8 +1042,11 @@ __glXDRIscreenProbe(ScreenPtr pScreen)
- 	goto handle_error;
-     }
+diff -Naur xorg-server-1.12.2-orig/glx/glxdricommon.c xorg-server-1.12.2/glx/glxdricommon.c
+--- xorg-server-1.12.2-orig/glx/glxdricommon.c	2012-05-17 13:09:02.000000000 -0400
++++ xorg-server-1.12.2/glx/glxdricommon.c	2012-07-14 14:57:37.972791909 -0400
+@@ -219,10 +219,14 @@
+     int i;
+     void *driver;
+     char filename[PATH_MAX];
++    char *real_dri_driver_path;
+     const __DRIextension **extensions;
  
-+    char *real_dri_driver_path = getenv("XORG_DRI_DRIVER_PATH");
++    real_dri_driver_path = getenv("XORG_DRI_DRIVER_PATH");
 +    if (!real_dri_driver_path) real_dri_driver_path = dri_driver_path;
 +
      snprintf(filename, sizeof filename, "%s/%s_dri.so",
 -             dri_driver_path, driverName);
 +             real_dri_driver_path, driverName);
  
-     screen->driver = dlopen(filename, RTLD_LAZY | RTLD_LOCAL);
-     if (screen->driver == NULL) {
-diff --git a/glx/glxdri2.c b/glx/glxdri2.c
-index ed7fb4c..135b1c8 100644
---- a/glx/glxdri2.c
-+++ b/glx/glxdri2.c
-@@ -617,8 +617,11 @@ __glXDRIscreenProbe(ScreenPtr pScreen)
- 
-     __glXInitExtensionEnableBits(screen->glx_enable_bits);
- 
--    snprintf(filename, sizeof filename,
--	     "%s/%s_dri.so", dri_driver_path, driverName);
-+     char *real_dri_driver_path = getenv("XORG_DRI_DRIVER_PATH");
-+     if (!real_dri_driver_path) real_dri_driver_path = dri_driver_path;
-+ 
-+     snprintf(filename, sizeof filename, "%s/%s_dri.so",
-+              real_dri_driver_path, driverName);
- 
-     screen->driver = dlopen(filename, RTLD_LAZY | RTLD_LOCAL);
-     if (screen->driver == NULL) {
-diff --git a/glx/glxdriswrast.c b/glx/glxdriswrast.c
-index 44f658f..8922414 100644
---- a/glx/glxdriswrast.c
-+++ b/glx/glxdriswrast.c
-@@ -458,8 +458,11 @@ __glXDRIscreenProbe(ScreenPtr pScreen)
-     screen->base.swapInterval   = NULL;
-     screen->base.pScreen       = pScreen;
- 
-+    char *real_dri_driver_path = getenv("XORG_DRI_DRIVER_PATH");
-+    if (!real_dri_driver_path) real_dri_driver_path = dri_driver_path;
-+
-     snprintf(filename, sizeof filename,
--	     "%s/%s_dri.so", dri_driver_path, driverName);
-+	     "%s/%s_dri.so", real_dri_driver_path, driverName);
- 
-     screen->driver = dlopen(filename, RTLD_LAZY | RTLD_LOCAL);
-     if (screen->driver == NULL) {
+     driver = dlopen(filename, RTLD_LAZY | RTLD_LOCAL);
+     if (driver == NULL) {
diff --git a/pkgs/servers/x11/xorg/xorgserver-xkbcomp-path.patch b/pkgs/servers/x11/xorg/xorgserver-xkbcomp-path.patch
index 825d09ba1e0c..f5196c60c7c6 100644
--- a/pkgs/servers/x11/xorg/xorgserver-xkbcomp-path.patch
+++ b/pkgs/servers/x11/xorg/xorgserver-xkbcomp-path.patch
@@ -9,7 +9,7 @@ diff -rc xorg-server-X11R7.2-1.2.0-orig/xkb/xkbInit.c xorg-server-X11R7.2-1.2.0/
       }
 +     char *xkbBinDir = getenv("XKB_BINDIR");
 +     if (xkbBinDir)
-+         XkbBinDirectory = _XkbDupString(xkbBinDir);
++         XkbBinDirectory = Xstrdup(xkbBinDir);
       return 0;
   }
   
diff --git a/pkgs/servers/xinetd/default.nix b/pkgs/servers/xinetd/default.nix
index 6f752a7194fe..c841f8431deb 100644
--- a/pkgs/servers/xinetd/default.nix
+++ b/pkgs/servers/xinetd/default.nix
@@ -1,11 +1,11 @@
 { fetchurl, stdenv }:
 
 stdenv.mkDerivation rec {
-  name = "xinetd-2.3.14";
-  
+  name = "xinetd-2.3.15";
+
   src = fetchurl {
     url = "http://www.xinetd.org/${name}.tar.gz";
-    sha256 = "07xws1ydxrrx4xinvfqkc66diwfjh2apxz33xw4hb6k0gihhw3kn";
+    sha256 = "1qsv1al506x33gh92bqa8w21k7mxqrbsrwmxvkj0amn72420ckmz";
   };
 
   meta = {
diff --git a/pkgs/shells/bash-completion/default.nix b/pkgs/shells/bash-completion/default.nix
index d79c9774569b..7e4c0f230155 100644
--- a/pkgs/shells/bash-completion/default.nix
+++ b/pkgs/shells/bash-completion/default.nix
@@ -11,11 +11,6 @@ stdenv.mkDerivation {
     sha256 = "e5a490a4301dfb228361bdca2ffca597958e47dd6056005ef9393a5852af5804";
   };
 
-  postInstall = ''
-    sed -i "$out/share/bash-completion/bash_completion" \
-        -e 's|: .{BASH_COMPLETION_COMPAT_DIR:=.*}|BASH_COMPLETION_COMPAT_DIR="$HOME/.nix-profile/etc/bash_completion.d"|'
-  '';
-
   doCheck = true;
 
   meta = {
diff --git a/pkgs/tools/X11/xdg-utils/default.nix b/pkgs/tools/X11/xdg-utils/default.nix
index cc166ba20d99..df5d59c7b57c 100644
--- a/pkgs/tools/X11/xdg-utils/default.nix
+++ b/pkgs/tools/X11/xdg-utils/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl }:
+{ stdenv, fetchurl, file }:
 
 stdenv.mkDerivation rec {
   name = "xdg-utils-1.0.2";
@@ -7,6 +7,10 @@ stdenv.mkDerivation rec {
     url = "http://portland.freedesktop.org/download/${name}.tgz";
     sha256 = "1b019d3r1379b60p33d6z44kx589xjgga62ijz9vha95dg8vgbi1";
   };
+
+  postInstall = ''
+    substituteInPlace $out/bin/xdg-mime --replace /usr/bin/file ${file}/bin/file
+  '';
   
   meta = {
     homepage = http://portland.freedesktop.org/wiki/;
diff --git a/pkgs/tools/admin/tigervnc/default.nix b/pkgs/tools/admin/tigervnc/default.nix
index 36aae0684385..f74463b10635 100644
--- a/pkgs/tools/admin/tigervnc/default.nix
+++ b/pkgs/tools/admin/tigervnc/default.nix
@@ -3,23 +3,25 @@
 , fontDirectories, fontutil, libgcrypt, gnutls, pam, flex, bison
 , fixesproto, damageproto, xcmiscproto, bigreqsproto, randrproto, renderproto
 , fontsproto, videoproto, compositeproto, scrnsaverproto, resourceproto
-, libxkbfile, libXfont, libpciaccess
+, libxkbfile, libXfont, libpciaccess, cmake, libjpeg_turbo, libXft, fltk, libXinerama
+, xineramaproto, libXcursor, fetchsvn, libxcrypt
 }:
 
-
-
 with stdenv.lib;
 
 stdenv.mkDerivation rec {
-  name = "tigervnc-1.1.0";
+  # Release version = "1.2.0";
+  revision = 5005;
+  version = "r${toString revision}";
+  name = "tigervnc-${version}";
   
-  src = fetchurl {
-    url = "mirror://sourceforge/tigervnc/${name}.tar.gz";
-    sha256 = "1x30s12fwv9rk0fnwwn631qq0d8rpjjx53bvzlx8c91cba170jsr";
+  src = fetchsvn {
+    # Release url = "mirror://sourceforge/tigervnc/${version}/${name}.tar.gz";
+    url = "https://tigervnc.svn.sourceforge.net/svnroot/tigervnc/trunk";
+    rev = revision;
+    sha256 = "2401e0ede9a2d50a37caeb094e5e832d24878749239578f44ae2acd42de01b43";
   };
 
-  configureFlags = "--enable-nls";
-
   inherit fontDirectories;
 
   patchPhase = ''
@@ -41,7 +43,11 @@ stdenv.mkDerivation rec {
   # this:  ${concatStringsSep " " (map (f: "${f}") xorgserver.patches)}
   xorgPatches = xorgserver.patches;
 
+  dontUseCmakeBuildDir = "yes";
+
   postBuild = ''
+    export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -fpermissive -Wno-error=int-to-pointer-cast"
+
     # Build Xvnc
     tar xf ${xorgserver.src}
     cp -R xorg*/* unix/xserver
@@ -50,19 +56,13 @@ stdenv.mkDerivation rec {
     do
       patch -p1 < $a
     done
-    patch -p1 < ../xserver18.patch
+    patch -p1 < ../xserver113.patch
     autoreconf -vfi
-    ./configure $configureFlags --disable-xinerama --disable-xvfb --disable-xnest --disable-xorg --disable-dmx --disable-dri --disable-dri2 --disable-glx
+    ./configure $configureFlags --disable-xinerama --disable-xvfb --disable-xnest --disable-xorg --disable-dmx --disable-dri --disable-dri2 --disable-glx --prefix="$out"
     make TIGERVNC_SRCDIR=`pwd`/../..
     popd
   '';
 
-  # I don't know why I need this; it may have to do with this problem:
-  # http://bugs.gentoo.org/show_bug.cgi?id=142852
-  preInstall = ''
-    sed -i -e s,@MKINSTALLDIRS@,`pwd`/mkinstalldirs, po/Makefile
-  '';
-
   postInstall = ''
     pushd unix/xserver
     make TIGERVNC_SRCDIR=`pwd`/../.. install
@@ -72,17 +72,20 @@ stdenv.mkDerivation rec {
     buildInputs = (map (x : x.hostDrv) (buildInputs ++ [
       fixesproto damageproto xcmiscproto bigreqsproto randrproto renderproto
       fontsproto videoproto compositeproto scrnsaverproto resourceproto
-      libxkbfile libXfont libpciaccess
+      libxkbfile libXfont libpciaccess xineramaproto
     ]));
   };
 
   buildInputs =
-    [ libX11 libXext gettext libICE libXtst libXi libSM
-      nasm libgcrypt gnutls pam pixman
+    [ libX11 libXext gettext libICE libXtst libXi libSM libXft
+      nasm libgcrypt gnutls pam pixman libjpeg_turbo fltk xineramaproto
+      libXinerama libXcursor libxcrypt
     ];
   
   buildNativeInputs = 
-    [ autoconf automake cvs utilmacros fontutil libtool flex bison ] 
+    [ autoconf automake cvs utilmacros fontutil libtool flex bison 
+      cmake
+    ] 
       ++ xorgserver.buildNativeInputs;
 
   propagatedBuildNativeInputs = xorgserver.propagatedBuildNativeInputs;
diff --git a/pkgs/tools/archivers/cabextract/default.nix b/pkgs/tools/archivers/cabextract/default.nix
index 9e11a1bf761e..79be818bfb39 100644
--- a/pkgs/tools/archivers/cabextract/default.nix
+++ b/pkgs/tools/archivers/cabextract/default.nix
@@ -1,10 +1,11 @@
-{stdenv, fetchurl}:
+{ stdenv, fetchurl }:
 
 stdenv.mkDerivation rec {
-  name = "cabextract-1.3";
+  name = "cabextract-1.4";
+
   src = fetchurl {
-    url = meta.homepage + name + ".tar.gz";
-    sha256 = "00f0qcrz9f2gwvm98qglbrjpwrzwrfdgh0hck6im93dl6lx3hr6l";
+    url = "http://www.cabextract.org.uk/${name}.tar.gz";
+    sha256 = "07p49053a727nwnw7vnx1bpj4xqa43cvx8mads2146fpqai8pfpp";
   };
 
   meta = {
diff --git a/pkgs/tools/archivers/p7zip/default.nix b/pkgs/tools/archivers/p7zip/default.nix
index bb9743e8e5d9..767e85d67733 100644
--- a/pkgs/tools/archivers/p7zip/default.nix
+++ b/pkgs/tools/archivers/p7zip/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl }:
 
 stdenv.mkDerivation rec {
-  name = "p7zip-9.13";
+  name = "p7zip-9.20.1";
   
   src = fetchurl {
-    url = mirror://sourceforge/p7zip/p7zip_9.13_src_all.tar.bz2;
-    sha256 = "08yr0cfbjx60r1ia7vhphzvc3gax62xhgsn3vdm7sdmxxai0z77w";
+    url = mirror://sourceforge/p7zip/p7zip_9.20.1_src_all.tar.bz2;
+    sha256 = "10j7rc1nzdp7vvcpc3340yi3qw7abby4szv8zkwh10d0zizpwma9";
   };
 
   preConfigure =
@@ -14,6 +14,8 @@ stdenv.mkDerivation rec {
       buildFlags=all3
     '';
 
+  enableParallelBuilding = true;
+
   meta = {
     homepage = http://p7zip.sourceforge.net/;
     description = "A port of the 7-zip archiver";
diff --git a/pkgs/tools/backup/obnam/default.nix b/pkgs/tools/backup/obnam/default.nix
index 119633e06387..07b86c2e41ed 100644
--- a/pkgs/tools/backup/obnam/default.nix
+++ b/pkgs/tools/backup/obnam/default.nix
@@ -1,12 +1,12 @@
 { stdenv, fetchurl, python, pythonPackages, pycrypto, attr }:
 
 pythonPackages.buildPythonPackage {
-  name = "obnam-1.1";
+  name = "obnam-1.2";
   namePrefix = "";
 
   src = fetchurl rec {
-    url = "http://code.liw.fi/debian/pool/main/o/obnam/obnam_1.1.orig.tar.gz";
-    sha256 = "763693e5ea4e8d6a63b1a16c2aacd5fe0dc97abc687c8f0dde5840f77d549349";
+    url = "http://code.liw.fi/debian/pool/main/o/obnam/obnam_1.2.orig.tar.gz";
+    sha256 = "33457452726d5c393d98c565b8e1ab3ac11276cc42bf67c4eee6c4e4ac9976d6";
   };
 
   buildInputs = [ pythonPackages.sphinx attr ];
diff --git a/pkgs/tools/filesystems/btrfsprogs/default.nix b/pkgs/tools/filesystems/btrfsprogs/default.nix
index 861bacd46c2a..4c1963f46332 100644
--- a/pkgs/tools/filesystems/btrfsprogs/default.nix
+++ b/pkgs/tools/filesystems/btrfsprogs/default.nix
@@ -1,14 +1,14 @@
 { stdenv, fetchgit, zlib, libuuid, acl, attr, e2fsprogs }:
 
-let version = "0.19-20120328"; in
+let version = "0.20pre20121005"; in
 
 stdenv.mkDerivation {
   name = "btrfs-progs-${version}";
 
   src = fetchgit {
     url = "git://git.kernel.org/pub/scm/linux/kernel/git/mason/btrfs-progs.git";
-    rev = "1957076ab4fefa47b6efed3da541bc974c83eed7";
-    sha256 = "566d863c5500652e999d0d6b823365fb06f2f8f9523e65e69eaa3e993e9b26e1";
+    rev = "91d9eec1ff044394f2b98ee7fcb76713dd33b994";
+    sha256 = "72d4cd4fb23d876a17146d6231ad40a2151fa47c648485c54cf7478239b43764";
   };
 
   buildInputs = [ zlib libuuid acl attr e2fsprogs ];
diff --git a/pkgs/tools/filesystems/dosfstools/default.nix b/pkgs/tools/filesystems/dosfstools/default.nix
index 21e2ceea9dd8..b0ee47e23b56 100644
--- a/pkgs/tools/filesystems/dosfstools/default.nix
+++ b/pkgs/tools/filesystems/dosfstools/default.nix
@@ -4,7 +4,10 @@ stdenv.mkDerivation rec {
   name = "dosfstools-3.0.11";
 
   src = fetchurl {
-    url = "http://www.daniel-baumann.ch/software/dosfstools/${name}.tar.bz2";
+    urls = [
+      "http://www.daniel-baumann.ch/software/dosfstools/${name}.tar.bz2"
+      "http://pkgs.fedoraproject.org/repo/pkgs/dosfstools/${name}.tar.bz2/8d2211d5bd813164e20740e7c852aa06/${name}.tar.bz2"
+    ];
     sha256 = "1a6rzjy82f6579ywaln33g1wc7k8gbgjdss9q2q8daplac7pmcll";
   };
 
diff --git a/pkgs/tools/graphics/asymptote/src-for-default.nix b/pkgs/tools/graphics/asymptote/src-for-default.nix
index ddd0860ccd19..277393283abb 100644
--- a/pkgs/tools/graphics/asymptote/src-for-default.nix
+++ b/pkgs/tools/graphics/asymptote/src-for-default.nix
@@ -1,7 +1,7 @@
 rec {
-   version="2.18";
-   name="asymptote-2.18";
-   hash="0i7jm12lzj983gvpa95a85wxb4v4ksk3cxb0cq359x2kka0b6g5m";
+   version="2.20";
+   name="asymptote-2.20";
+   hash="0ji45v0d9jps8clsl86pvmr22acci3f0ciicmyzak6dbczqyrj80";
    url="http://downloads.sourceforge.net/project/asymptote/${version}/asymptote-${version}.src.tgz";
-   advertisedUrl="http://downloads.sourceforge.net/project/asymptote/2.18/asymptote-2.18.src.tgz";
+   advertisedUrl="http://downloads.sourceforge.net/project/asymptote/2.20/asymptote-2.20.src.tgz";
 }
diff --git a/pkgs/tools/misc/debian-devscripts/default.nix b/pkgs/tools/misc/debian-devscripts/default.nix
new file mode 100644
index 000000000000..ddf30f342d15
--- /dev/null
+++ b/pkgs/tools/misc/debian-devscripts/default.nix
@@ -0,0 +1,36 @@
+{stdenv, fetchurl, perl, CryptSSLeay, LWP, unzip, xz, dpkg, TimeDate, DBFile
+  , FileDesktopEntry, libxslt, docbook_xsl, python, setuptools, makeWrapper
+}:
+stdenv.mkDerivation rec {
+  version = "2.12.4";
+  name = "debian-devscripts-${version}";
+  src = fetchurl {
+    url = "mirror://debian/pool/main/d/devscripts/devscripts_${version}.tar.gz";
+    sha256 = "34bcbec78bd4fe34d9f1326b9d1477ff2410e20e2dca6b7bfbf2bf92dbb83904";
+  };
+  buildInputs = [ perl CryptSSLeay LWP unzip xz dpkg TimeDate DBFile 
+    FileDesktopEntry libxslt python setuptools makeWrapper ];
+  preConfigure = ''
+    export PERL5LIB="$PERL5LIB''${PERL5LIB:+:}${dpkg}";
+    sed -e "s@/usr/share/sgml/[^ ]*/manpages/docbook.xsl@${docbook_xsl}/xml/xsl/docbook/manpages/docbook.xsl@" -i scripts/Makefile
+    sed -e 's/ translated_manpages//; s/--install-layout=deb//; s@--root="[^ ]*"@--prefix="'"$out"'"@' -i Makefile */Makefile
+    tgtpy="$out/lib/${python.libPrefix}/site-packages"
+    mkdir -p "$tgtpy"
+    export PYTHONPATH="$PYTHONPATH''${PYTHONPATH:+:}$tgtpy"
+    sed -re "s@/usr( |$|/)@$out\\1@" -i Makefile* */Makefile*
+    sed -re "s@/etc( |$|/)@$out/etc\\1@" -i Makefile* */Makefile*
+  '';
+  postInstall = ''
+    sed -re 's@(^|[ !`"])/bin/bash@\1${stdenv.shell}@g' -i "$out/bin"/*
+    for i in "$out/bin"/*; do
+      wrapProgram "$i" \
+        --prefix PERL5LIB : "$PERL5LIB" \
+        --prefix PERL5LIB : "$out/share/devscripts"
+    done
+  '';
+  meta = {
+    description = ''Debian package maintenance scripts'';
+    license = "GPL (various)"; # Mix of public domain, Artistic+GPL, GPL1+, GPL2+, GPL3+, and GPL2-only...
+    maintainers = with stdenv.lib.maintainers; [raskin];
+  };
+}
diff --git a/pkgs/tools/misc/debootstrap/default.nix b/pkgs/tools/misc/debootstrap/default.nix
index 33a1fc839ce0..388cfa14e41e 100644
--- a/pkgs/tools/misc/debootstrap/default.nix
+++ b/pkgs/tools/misc/debootstrap/default.nix
@@ -1,55 +1,65 @@
-{ stdenv, fetchurl, dpkg, gettext, gawk, perl, wget }:
+{ stdenv, fetchurl, dpkg, gettext, gawk, perl, wget, coreutils, fakeroot }:
 
 let
 
-  devices = fetchurl {
-    url = mirror://gentoo/distfiles/devices.tar.gz;
-    sha256 = "0j4yhajmlgvbksr2ij0dm7jy3q52j3wzhx2fs5lh05i1icygk4qd";
+# USAGE like this: debootstrap sid /tmp/target-chroot-directory
+
+# There is also cdebootstrap now. Is that easier to maintain?
+
+  makedev = stdenv.mkDerivation {
+    name = "makedev-for-debootstrap";
+    src = fetchurl {
+            url = mirror://debian/pool/main/m/makedev/makedev_2.3.1.orig.tar.gz;
+            sha256 = "1yhxlj2mhn1nqkx1f0sn0bl898nf28arxxa4lgp7hdrb5cpp36c5";
+    };
+    patches = [
+      (fetchurl {
+       url = "http://ftp.de.debian.org/debian/pool/main/m/makedev/makedev_2.3.1-89.diff.gz";
+       sha256 = "1zbifw2jkq6471fb67y893nq4lq009xbfbi57jbjwxnhqmrppcy9";
+       })
+    ];
+    # TODO install man
+    installPhase = ''
+      ensureDir $out/sbin
+      ls -l
+      t=$out/sbin/MAKEDEV
+      cp MAKEDEV $t
+      chmod +x $t
+    '';
   };
   
 in
 
 stdenv.mkDerivation {
-  name = "debootstrap-1.0.10lenny";
+
+  name = "debootstrap-1.0.42";
 
   src = fetchurl {
-    # I'd like to use the source. However it's lacking the lanny script ?
-    url = mirror://debian/pool/main/d/debootstrap/debootstrap_1.0.10lenny1_all.deb;
-    sha256 = "a70af8e3369408ce9d6314fb5219de73f9523b347b75a3b07ee17ea92c445051";
+    # git clone git://git.debian.org/d-i/debootstrap.git
+    # I'd like to use the source. However it's lacking the lanny script ? (still true?)
+    url = http://ftp.de.debian.org/debian/pool/main/d/debootstrap/debootstrap_1.0.42.tar.gz;
+    sha256 = "0a5azl22wz1q92b2c91zlpz6krd7wqyi63yk87vyczp363ml0nz0";
   };
-  
+
   buildInputs = [ dpkg gettext gawk perl ];
 
-  unpackPhase = ''
-    dpkg-deb --extract "$src" .
-  '';
-  
   buildPhase = ":";
 
-  patches = [
-    # replace /usr/* and /sbin/* executables by @executable@ so that they can be replaced by substitute
-    # Be careful not to replace code being run in the debian chroot !
-    ./subst.patch
-  ];
-
-  # from deb 
+  # If you have to update the patch for functions a vim regex like this
+  # can help you identify which lines are used to write scripts on TARGET and
+  # which should /bin/ paths should be replaced:
+  # \<echo\>\|\/bin\/\|^\s*\<cat\>\|EOF\|END
   installPhase = ''
-    cp -r . $out; cd $out
-    t=bin/debootstrap
-    mkdir -p bin man/man8
-    cat >> $t << EOF
-    #!/bin/sh
-    export DEBOOTSTRAP_DIR=$out/usr/share/debootstrap
-    # mount and other tools must be found in chroot. So add default debain paths!
-    # TODO only add paths which are required by the scripts!
-    export PATH=$PATH:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
-    $out/usr/sbin/debootstrap "\$@"
-    EOF
-    chmod +x $t
-    mv usr/share/man/man8/debootstrap.8.gz man/man8
 
-    set -x
-    for file in usr/share/debootstrap/functions usr/sbin/debootstrap; do
+    sed -i \
+      -e 's@/usr/bin/id@id@' \
+      -e 's@/usr/bin/dpkg@${dpkg}/bin/dpkg@' \
+      -e 's@/usr/bin/sha@${coreutils}/bin/sha@' \
+      -e 's@/bin/sha@${coreutils}/bin/sha@' \
+      debootstrap
+
+
+    for file in functions debootstrap; do
       substituteInPlace "$file" \
         --subst-var-by gunzip "$(type -p gunzip)" \
         --subst-var-by bunzip "$(type -p bunzip)" \
@@ -61,28 +71,36 @@ stdenv.mkDerivation {
         --subst-var-by uname "$(type -p uname)" \
         --subst-var-by wget "${wget}/bin/wget"
     done
-  '';
 
-  /* build from source:
-  installPhase = ''
-    cp ${devices} devices.tar.gz
-    mkdir -p $out/{bin,man/man8};
-    cp debootstrap.8 $out/man/man8
+
     sed -i  \
-      -e 's@-o root@@'   \
-      -e 's@-g root@@'   \
-      -e 's@chown@true@' \
-      Makefile
-    make pkgdetails debootstrap-arch
-    make DESTDIR="''\${out}" install-arch
-    t=$out/bin/debootstrap
-    cat >> $t << EOF
+      -e 's@\<wget\>@${wget}/bin/wget@' \
+      functions
+
+    d=$out/share/debootstrap
+    ensureDir $out/{share/debootstrap,bin}
+
+    ${fakeroot}/bin/fakeroot -- make devices.tar.gz MAKEDEV=${makedev}/sbin/MAKEDEV
+
+    cp -r . $d
+
+    cat >> $out/bin/debootstrap << EOF
     #!/bin/sh
-    DEBOOTSTRAP_DIR=$out/usr/share/debootstrap $out/usr/sbin/debootstrap "\$@"
+    export DEBOOTSTRAP_DIR="''${DEBOOTSTRAP_DIR:-$d}"
+    # mount and other tools must be found in chroot. So add default debain paths!
+    # TODO only add paths which are required by the scripts!
+    export PATH=$PATH:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
+    exec $d/debootstrap "\$@"
     EOF
-    chmod +x $t
+    chmod +x $out/bin/debootstrap
+
+    ensureDir $out/man/man8
+    mv debootstrap.8 $out/man/man8
   '';
-  */
+
+  passthru = {
+    inherit makedev;
+  };
 
   meta = { 
     description = "Tool to create a Debian system in a chroot";
diff --git a/pkgs/tools/misc/grub/2.0x.nix b/pkgs/tools/misc/grub/2.0x.nix
index 4186a4405353..d37ce9f5aac4 100644
--- a/pkgs/tools/misc/grub/2.0x.nix
+++ b/pkgs/tools/misc/grub/2.0x.nix
@@ -4,14 +4,14 @@
 let
 
   prefix = "grub${if EFIsupport then "-efi" else ""}";
-  
+
   version = "2.00";
-  
+
   unifont_bdf = fetchurl {
     url = "http://unifoundry.com/unifont-5.1.20080820.bdf.gz";
     sha256 = "0s0qfff6n6282q28nwwblp5x295zd6n71kl43xj40vgvdqxv0fxx";
   };
-  
+
 in
 
 stdenv.mkDerivation rec {
@@ -51,6 +51,8 @@ stdenv.mkDerivation rec {
            -e "s|/usr/src/unifont.bdf|$PWD/unifont.bdf|g"
     '';
 
+  patches = [ ./fix-bash-completion.patch ];
+
   configureFlags =
     let arch = if stdenv.system == "i686-linux" then "i386"
                else if stdenv.system == "x86_64-linux" then "x86_64"
diff --git a/pkgs/tools/misc/grub/fix-bash-completion.patch b/pkgs/tools/misc/grub/fix-bash-completion.patch
new file mode 100644
index 000000000000..97cecdce373f
--- /dev/null
+++ b/pkgs/tools/misc/grub/fix-bash-completion.patch
@@ -0,0 +1,24 @@
+diff -ubr grub-2.00-orig/util/bash-completion.d/grub-completion.bash.in grub-2.00/util/bash-completion.d/grub-completion.bash.in
+--- grub-2.00-orig/util/bash-completion.d/grub-completion.bash.in	2012-10-16 19:02:36.342733957 +0200
++++ grub-2.00/util/bash-completion.d/grub-completion.bash.in	2012-10-16 19:04:48.262733941 +0200
+@@ -17,6 +17,12 @@
+ # along with GRUB.  If not, see <http://www.gnu.org/licenses/>.
+ # bash completion for grub
+ 
++have()
++{
++    unset -v have
++    _have $1 && have=yes
++}
++
+ __grub_dir() {
+     local i c=1 boot_dir
+ 
+@@ -479,6 +485,7 @@
+ have ${__grub_script_check_program} && \
+  complete -F _grub_script_check -o filenames ${__grub_script_check_program}
+ 
++unset -f have
+ 
+ # Local variables:
+ # mode: shell-script
diff --git a/pkgs/tools/misc/gsmartcontrol/default.nix b/pkgs/tools/misc/gsmartcontrol/default.nix
new file mode 100644
index 000000000000..60003b3b5d53
--- /dev/null
+++ b/pkgs/tools/misc/gsmartcontrol/default.nix
@@ -0,0 +1,23 @@
+{ fetchurl, stdenv, smartmontools, gtk, gtkmm, libglademm, pkgconfig, pcre }:
+
+stdenv.mkDerivation rec {
+  version="0.8.7";
+  name = "gsmartcontrol";
+
+  src = fetchurl {
+    url = "http://artificialtime.com/gsmartcontrol/gsmartcontrol-${version}.tar.bz2";
+    sha256 = "1ipykzqpfvlr84j38hr7q2cag4imrn1gql10slp8bfrs4h1si3vh";
+  };
+
+  buildInputs = [ smartmontools gtk gtkmm libglademm pkgconfig pcre ];
+
+  #installTargets = "install datainstall";
+
+  meta = {
+    description = "GSmartControl is a graphical user interface for smartctl (from smartmontools package), which is a tool for querying and controlling SMART (Self-Monitoring, Analysis, and Reporting Technology) data on modern hard disk drives.";
+    homepage = http://gsmartcontrol.berlios.de;
+    license = "GPLv2+";
+    maintainers = with stdenv.lib.maintainers; [qknight];
+    platforms = with stdenv.lib.platforms; linux;
+  };
+}
diff --git a/pkgs/tools/misc/plowshare/default.nix b/pkgs/tools/misc/plowshare/default.nix
index d98dc33478aa..4634585cbd26 100644
--- a/pkgs/tools/misc/plowshare/default.nix
+++ b/pkgs/tools/misc/plowshare/default.nix
@@ -4,10 +4,10 @@ stdenv.mkDerivation rec {
 
   name = "plowshare-${version}";
 
-  version = "git20120916";
+  version = "20120916";
 
   src = fetchurl {
-    url = "http://plowshare.googlecode.com/files/plowshare-snapshot-${version}.tar.gz";
+    url = "http://plowshare.googlecode.com/files/plowshare-snapshot-git${version}.tar.gz";
     sha256 = "eccdb28d49ac47782abc8614202b3a88426cd587371641ecf2ec008880dc6067";
   };
 
diff --git a/pkgs/tools/misc/refind/default.nix b/pkgs/tools/misc/refind/default.nix
index bd0a7040adff..1fbb177afa06 100644
--- a/pkgs/tools/misc/refind/default.nix
+++ b/pkgs/tools/misc/refind/default.nix
@@ -1,22 +1,22 @@
 { stdenv, fetchurl, gnu_efi, unzip }:
 
-let version = "0.2.3"; in
+let version = "0.4.5"; in
 
 stdenv.mkDerivation {
   name = "refind-${version}";
 
   src = fetchurl {
     url = "mirror://sourceforge/refind/refind-src-${version}.zip";
-    sha256 = "0q3p4mczr6wchk4vbgsb0cq7829vk3b3kg9qaizrb02pdak3s2nf";
+    sha256 = "05nbalsl5csgph0v2amzgay9k2vzm47z8n1n6blbh9hvb7j5vn2c";
   };
 
   buildInputs = [ unzip ];
 
-  buildFlags = [ "prefix=" "EFIINC=${gnu_efi}/include/efi" "GNUEFILIB=${gnu_efi}/lib" "EFILIB=${gnu_efi}/lib" "EFICRT0=${gnu_efi}/lib" ];
+  buildFlags = [ "prefix=" "EFIINC=${gnu_efi}/include/efi" "GNUEFILIB=${gnu_efi}/lib" "EFILIB=${gnu_efi}/lib" "EFICRT0=${gnu_efi}/lib" "LOCAL_CFLAGS=-I${gnu_efi}/include" ];
 
   installPhase = ''
     mkdir -pv $out
-    install -v -m644 refind/refind.efi refind.conf-sample $out
+    install -v -m644 refind/refind*.efi refind.conf-sample $out
     mv -v icons $out
   '';
 
diff --git a/pkgs/tools/misc/testdisk/default.nix b/pkgs/tools/misc/testdisk/default.nix
index fd9f45782940..6ccfea50482b 100644
--- a/pkgs/tools/misc/testdisk/default.nix
+++ b/pkgs/tools/misc/testdisk/default.nix
@@ -1,18 +1,18 @@
-{stdenv, fetchurl, ncurses, libjpeg, e2fsprogs, zlib, openssl}:
+{stdenv, fetchurl, ncurses, libjpeg, e2fsprogs, zlib, openssl, libuuid}:
 
 stdenv.mkDerivation {
-  name = "testdisk-6.8";
+  name = "testdisk-6.13";
   
   src = fetchurl {
-    url = http://www.cgsecurity.org/testdisk-6.8.tar.bz2;
-    sha256 = "0cyqikcyi6zj671kkr8vydqskh2r7f3n1v3xks1vh1biaffqq2ir";
+    url = http://www.cgsecurity.org/testdisk-6.13.tar.bz2;
+    sha256 = "087jrn41z3ymf1b6njl2bg99pr79v8l1f63f7rn5ni69vz6mq9s8";
   };
 
-  buildInputs = [ncurses libjpeg e2fsprogs zlib openssl];
+  buildInputs = [ncurses libjpeg e2fsprogs zlib openssl libuuid];
 
   meta = {
     homepage = http://www.cgsecurity.org/wiki/TestDisk;
-    license = "GPL";
+    license = "GPLv2+";
     longDescription = ''
       TestDisk is a program for data recovery, primarily designed to
       help recover lost partitions and/or make non-booting disks
diff --git a/pkgs/tools/misc/timidity/default.nix b/pkgs/tools/misc/timidity/default.nix
index 4fae21250cac..89ff6f4677fc 100644
--- a/pkgs/tools/misc/timidity/default.nix
+++ b/pkgs/tools/misc/timidity/default.nix
@@ -7,7 +7,7 @@ composableDerivation.composableDerivation {} {
   name = "timidity-2.13.0";
 
   src = fetchurl {
-    url = http://ovh.dl.sourceforge.net/sourceforge/timidity/TiMidity++-2.13.0.tar.bz2;
+    url = mirror://sourceforge/timidity/TiMidity++-2.13.0.tar.bz2;
     sha256 = "1jbmk0m375fh5nj2awqzns7pdjbi7dxpjdwcix04zipfcilppbmf";
   };
 
diff --git a/pkgs/tools/misc/youtube-dl/default.nix b/pkgs/tools/misc/youtube-dl/default.nix
index a810001d0ccf..1fc5c08042cb 100644
--- a/pkgs/tools/misc/youtube-dl/default.nix
+++ b/pkgs/tools/misc/youtube-dl/default.nix
@@ -1,7 +1,7 @@
 {stdenv, fetchgit, python}:
 
 let pkgname = "youtube-dl";
-    pkgver  = "2012.02.27";
+    pkgver  = "2012.09.27";
     
 in
 stdenv.mkDerivation {
@@ -10,7 +10,7 @@ stdenv.mkDerivation {
   src = fetchgit {
     url = "git://github.com/rg3/${pkgname}";
     rev = "refs/tags/${pkgver}";
-    sha256 = "17270ba14f42e8f2813bc6a0eb3674e51592eede69612e156e7d99a96fd147ce";
+    sha256 = "a98f3339301324ddd6620f7b1353abed807cd8dea5586d6901d7fe69bc6a397c";
   };
 
   buildInputs = [python];
diff --git a/pkgs/tools/networking/miniupnpd/default.nix b/pkgs/tools/networking/miniupnpd/default.nix
index 6db47f8e079f..b5002d229903 100644
--- a/pkgs/tools/networking/miniupnpd/default.nix
+++ b/pkgs/tools/networking/miniupnpd/default.nix
@@ -1,33 +1,34 @@
-{ stdenv, fetchurl, iptables }:
+{ stdenv, fetchurl, iptables, libnfnetlink, libnetfilter_conntrack }:
 
 assert stdenv.isLinux;
 
 stdenv.mkDerivation rec {
-  name = "miniupnpd-1.4";
+  name = "miniupnpd-1.7.20121005";
 
   src = fetchurl {
     url = "http://miniupnp.free.fr/files/download.php?file=${name}.tar.gz";
-    sha256 = "06q5agkzv2snjxcsszpm27h8bqv41jijahs8jqnarxdrik97rfl5";
+    sha256 = "03kaxj808hgj1zf2528pzilgywgh70mh0qivjb5nm3spziiq32sv";
   };
 
-  buildInputs = [ iptables ];
+  buildInputs = [ iptables libnfnetlink libnetfilter_conntrack ];
+
+  patchPhase = ''
+    sed -i -e 's/upnputils\.o -lnfnetlink/upnputils.o/' Makefile.linux
+  '';
 
   NIX_CFLAGS_COMPILE = "-DIPTABLES_143";
 
-  NIX_CFLAGS_LINK = "-liptc";
-  
+  NIX_CFLAGS_LINK = "-liptc -lnfnetlink";
+
   makefile = "Makefile.linux";
 
   makeFlags = "LIBS=";
 
-  postBuild = "cat config.h";
-
   installFlags = "PREFIX=$(out) INSTALLPREFIX=$(out)";
 
-  postInstall =
+  preInstall =
     ''
-      mkdir -p $out/share/man/man1
-      cp miniupnpd.1 $out/share/man/man1/
+      mkdir -p $out/share/man/man8
     '';
 
   meta = {
diff --git a/pkgs/tools/networking/nss-myhostname/default.nix b/pkgs/tools/networking/nss-myhostname/default.nix
new file mode 100644
index 000000000000..80296b0d992c
--- /dev/null
+++ b/pkgs/tools/networking/nss-myhostname/default.nix
@@ -0,0 +1,19 @@
+{ stdenv, fetchurl }:
+
+stdenv.mkDerivation rec {
+  name = "nss-myhostname-0.3";
+
+  src = fetchurl {
+    url = "http://0pointer.de/lennart/projects/nss-myhostname/${name}.tar.gz";
+    sha256 = "1wnawxklsv3z796l752j7a21gvj2615fk12qr1bir3apipm499rb";
+  };
+
+  patches = [ ./nscd-segfault.patch ./ignore-ipv6-link-local.patch ];
+
+  meta = {
+    description = "Name Service Switch module ensuring that the hostname always resolves to a valid address";
+    homepage = http://0pointer.de/lennart/projects/nss-myhostname/;
+    maintainers = [ stdenv.lib.maintainers.eelco ];
+    platforms = stdenv.lib.platforms.linux;
+  };
+}
diff --git a/pkgs/tools/networking/nss-myhostname/ignore-ipv6-link-local.patch b/pkgs/tools/networking/nss-myhostname/ignore-ipv6-link-local.patch
new file mode 100644
index 000000000000..396bb2e10ccd
--- /dev/null
+++ b/pkgs/tools/networking/nss-myhostname/ignore-ipv6-link-local.patch
@@ -0,0 +1,13 @@
+--- nss-myhostname-0.3/netlink.c	2011-05-09 08:56:34.344579140 -0400
++++ nss-myhostname-0.3-new/netlink.c	2012-10-06 23:52:10.577755588 -0400
+@@ -179,6 +179,10 @@
+                             ifaddrmsg->ifa_scope == RT_SCOPE_NOWHERE)
+                                 continue;
+ 
++                        if (ifaddrmsg->ifa_family == AF_INET6 &&
++                            ifaddrmsg->ifa_scope == RT_SCOPE_LINK)
++                                continue;
++
+                         if (ifaddrmsg->ifa_flags & IFA_F_DEPRECATED)
+                                 continue;
+ 
diff --git a/pkgs/tools/networking/nss-myhostname/nscd-segfault.patch b/pkgs/tools/networking/nss-myhostname/nscd-segfault.patch
new file mode 100644
index 000000000000..a2947461c87d
--- /dev/null
+++ b/pkgs/tools/networking/nss-myhostname/nscd-segfault.patch
@@ -0,0 +1,15 @@
+--- nss-myhostname-0.3/nss-myhostname.c	2011-05-09 09:01:27.421581560 -0400
++++ nss-myhostname-0.3-new/nss-myhostname.c	2012-10-06 23:40:09.836894004 -0400
+@@ -177,7 +177,11 @@
+         /* Verify the size matches */
+         assert(idx == ms);
+ 
+-        *pat = r_tuple_prev;
++        /* Nscd expects us to store the first record in **pat. */
++        if (*pat)
++                **pat = *r_tuple_prev;
++        else
++                *pat = r_tuple_prev;
+ 
+         if (ttlp)
+                 *ttlp = 0;
diff --git a/pkgs/tools/networking/sitecopy/default.nix b/pkgs/tools/networking/sitecopy/default.nix
index 6beaff56aeab..5667744ef221 100644
--- a/pkgs/tools/networking/sitecopy/default.nix
+++ b/pkgs/tools/networking/sitecopy/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, neon, zlib, openssl, autoconf, automake, libtool }:
+{ stdenv, fetchurl, neon, zlib, openssl, autoreconfHook }:
 
 stdenv.mkDerivation rec {
   name = "sitecopy-0.16.6";
@@ -10,9 +10,7 @@ stdenv.mkDerivation rec {
 
   patches = [ ./neon-29.patch ];
 
-  preConfigure = "autoreconf";
-
-  buildInputs = [ openssl neon zlib autoconf automake libtool ]; 
+  buildInputs = [ openssl neon zlib autoreconfHook ]; 
 
   configureFlags= "--with-ssl=openssl"; 
 }
diff --git a/pkgs/tools/package-management/cabal-install/1.16.0.nix b/pkgs/tools/package-management/cabal-install/1.16.0.nix
new file mode 100644
index 000000000000..7c977989471e
--- /dev/null
+++ b/pkgs/tools/package-management/cabal-install/1.16.0.nix
@@ -0,0 +1,23 @@
+{ cabal, Cabal, filepath, HTTP, mtl, network, random, time, zlib }:
+
+cabal.mkDerivation (self: {
+  pname = "cabal-install";
+  version = "1.16.0";
+  sha256 = "0yg8h028sixvzx42v1spjyx4qfhpsar38cvz9188m62rac8ak8az";
+  isLibrary = false;
+  isExecutable = true;
+  buildDepends = [
+    Cabal filepath HTTP mtl network random time zlib
+  ];
+  postInstall = ''
+    mkdir $out/etc
+    mv bash-completion $out/etc/bash_completion.d
+  '';
+  meta = {
+    homepage = "http://www.haskell.org/cabal/";
+    description = "The command-line interface for Cabal and Hackage";
+    license = self.stdenv.lib.licenses.bsd3;
+    platforms = self.ghc.meta.platforms;
+    maintainers = [ self.stdenv.lib.maintainers.andres ];
+  };
+})
diff --git a/pkgs/tools/package-management/dpkg/default.nix b/pkgs/tools/package-management/dpkg/default.nix
index 2ffacb084793..95682df5d39c 100644
--- a/pkgs/tools/package-management/dpkg/default.nix
+++ b/pkgs/tools/package-management/dpkg/default.nix
@@ -1,16 +1,16 @@
-{stdenv, fetchurl, perl, zlib, bzip2}:
+{stdenv, fetchurl, perl, zlib, bzip2, xz}:
 
-let version = "1.14.29"; in
+let version = "1.16.8"; in
 
 stdenv.mkDerivation {
   name = "dpkg-${version}";
 
   src = fetchurl {
-    url = "mirror://debian/pool/main/d/dpkg/dpkg_${version}.tar.gz";
-    sha256 = "0cynms4vziy957r4zskybbid87sz99vrfy8d999vlhxgc74c2zpa";
+    url = "mirror://debian/pool/main/d/dpkg/dpkg_${version}.tar.xz";
+    sha256 = "4a1f4611390d93f1f198d910d3a4e4913b3cf81702b31f585a1872ca98df0eaa";
   };
 
-  configureFlags = "--without-dselect --with-admindir=/var/lib/dpkg";
+  configureFlags = "--disable-dselect --with-admindir=/var/lib/dpkg ";
 
   preConfigure = ''
     # Can't use substitute pending resolution of NIXPKGS-89.
@@ -24,11 +24,12 @@ stdenv.mkDerivation {
     chmod +x $TMPDIR/dpkg
     PATH=$TMPDIR:$PATH
 
-    substituteInPlace src/Makefile.in --replace "install-data-local:" "disabled:"
-    substituteInPlace dpkg-split/Makefile.in --replace "install-data-local:" "disabled:"
+    for i in $(find . -name Makefile.in); do 
+      substituteInPlace $i --replace "install-data-local:" "disabled:" ;
+    done
   '';
 
-  buildInputs = [ perl zlib bzip2 ];
+  buildInputs = [ perl zlib bzip2 xz ];
 
   meta = {
     description = "The Debian package manager";
diff --git a/pkgs/tools/package-management/nix/unstable.nix b/pkgs/tools/package-management/nix/unstable.nix
index dfe6e491c37e..72af812efc9f 100644
--- a/pkgs/tools/package-management/nix/unstable.nix
+++ b/pkgs/tools/package-management/nix/unstable.nix
@@ -5,11 +5,11 @@
 }:
 
 stdenv.mkDerivation rec {
-  name = "nix-1.2pre2910_b674665";
+  name = "nix-1.2pre2950_ac238d6";
 
   src = fetchurl {
-    url = "http://hydra.nixos.org/build/3031673/download/4/${name}.tar.bz2";
-    sha256 = "fa9849f69a262547856190fe1a24e6d6bd15344fe2ef0a0e54c35ab172074a22";
+    url = "http://hydra.nixos.org/build/3185460/download/4/${name}.tar.bz2";
+    sha256 = "a8aacdf4d459142843848d35a4d51304aaa1e41ca0a6dfdfc287748aa3ca7231";
   };
 
   buildNativeInputs = [ perl pkgconfig ];
diff --git a/pkgs/tools/system/fakeroot/default.nix b/pkgs/tools/system/fakeroot/default.nix
index d80b35e1a111..1bf18ed867c3 100644
--- a/pkgs/tools/system/fakeroot/default.nix
+++ b/pkgs/tools/system/fakeroot/default.nix
@@ -1,13 +1,21 @@
-{stdenv, fetchurl}:
+{stdenv, fetchurl, utillinux}:
 
-stdenv.mkDerivation {
-  name = "fakeroot-1.18.1";
+stdenv.mkDerivation rec {
+  name = "fakeroot-1.18.4";
 
   src = fetchurl {
-    url = http://ftp.de.debian.org/debian/pool/main/f/fakeroot/fakeroot_1.18.1.orig.tar.bz2;
-    sha256 = "0h5jsw715a9hv32cb1m1bajy26l7xxrbgrk6qk1b6m91lxh6rnw9";
+    url = https://launchpad.net/ubuntu/+archive/primary/+files/fakeroot_1.18.4.orig.tar.bz2;
+    sha256 = "18mydrz49n7ic7147pikkpdb96x00s9wisdk6hrc75ll7vx9wd8a";
   };
 
+  buildInputs = [ utillinux /* provides getopt */ ];
+
+  postUnpack = ''
+    for prog in getopt; do
+      sed -i "s@getopt@$(type -p getopt)@g" ${name}/scripts/fakeroot.in
+    done
+  '';
+
   meta = {
     homepage = http://fakeroot.alioth.debian.org/;
     description = "Give a fake root environment through LD_PRELOAD";
diff --git a/pkgs/tools/system/pciutils/default.nix b/pkgs/tools/system/pciutils/default.nix
index 563521429a8e..3cab8b0ef104 100644
--- a/pkgs/tools/system/pciutils/default.nix
+++ b/pkgs/tools/system/pciutils/default.nix
@@ -1,19 +1,19 @@
 { stdenv, fetchurl, zlib }:
 
 stdenv.mkDerivation rec {
-  name = "pciutils-3.1.7";
-  
+  name = "pciutils-3.1.10";
+
   src = fetchurl {
     url = "mirror://kernel/software/utils/pciutils/${name}.tar.bz2";
-    sha256 = "0i7mqf1fkmdqsawdk2badv6k3xrkryq0i2xknclvy6kcjsv27znq";
+    sha256 = "0xdahcxd00c921wnxi0f0w3lzjqdfphwa5vglfcpf0lv3l2w40pl";
   };
-  
+
   buildInputs = [ zlib ];
 
   pciids = fetchurl {
     # Obtained from http://pciids.sourceforge.net/v2.2/pci.ids.bz2.
-    url = http://nixos.org/tarballs/pci.ids.20100714.bz2;
-    sha256 = "0vll4svr60l6217yna7bfhcjm3prxr2b62ynq4jaagdp1rilfbap";
+    url = http://nixos.org/tarballs/pci.ids.20120929.bz2;
+    sha256 = "1q3i479ay88wam1zz1vbgkbqb2axg8av9qjxaigrqbnw2pv0srmb";
   };
 
   # Override broken auto-detect logic.
@@ -27,6 +27,9 @@ stdenv.mkDerivation rec {
 
   installTargets = "install install-lib";
 
+  # Get rid of update-pciids as it won't work.
+  postInstall = "rm $out/sbin/update-pciids $out/man/man8/update-pciids.8";
+
   meta = {
     homepage = http://mj.ucw.cz/pciutils.shtml;
     description = "A collection of programs for inspecting and manipulating configuration of PCI devices";
diff --git a/pkgs/tools/system/smartmontools/default.nix b/pkgs/tools/system/smartmontools/default.nix
index b79e92b52370..2f93f18ade59 100644
--- a/pkgs/tools/system/smartmontools/default.nix
+++ b/pkgs/tools/system/smartmontools/default.nix
@@ -7,14 +7,14 @@ let
   };
 in
 stdenv.mkDerivation rec {
-  name = "smartmontools-5.43";
+  name = "smartmontools-6.0";
 
   src = fetchurl {
     url = "mirror://sourceforge/smartmontools/${name}.tar.gz";
-    sha256 = "d845187d1500b87ef8d2c43772bd0218a59114fe58474a903c56777c9175351e";
+    sha256 = "9fe4ff2b7bcd00fde19db82bba168f5462ed6e857d3ef439495e304e3231d3a6";
   };
 
-  patchPhase = "cp ${driverdb} drivedb.h";
+  # patchPhase = "cp ${driverdb} drivedb.h";
 
   meta = {
     description = "Tools for monitoring the health of hard drivers";
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 4a9a201cbb9b..e67afe2562e3 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -242,6 +242,10 @@ let
     theAttrSet = arg;
   };
 
+  autoreconfHook = makeSetupHook
+    { substitutions = { inherit autoconf automake libtool; }; }
+    ../build-support/setup-hooks/autoreconf.sh;
+
   buildEnv = import ../build-support/buildenv {
     inherit (pkgs) runCommand perl;
   };
@@ -324,7 +328,7 @@ let
     inherit stdenv perl cpio contents ubootChooser;
   };
 
-  makeWrapper = makeSetupHook {} ../build-support/make-wrapper/make-wrapper.sh;
+  makeWrapper = makeSetupHook { } ../build-support/setup-hooks/make-wrapper.sh;
 
   makeModulesClosure = {kernel, rootModules, allowMissing ? false}:
     import ../build-support/kernel/modules-closure.nix {
@@ -587,6 +591,10 @@ let
 
   dcraw = callPackage ../tools/graphics/dcraw { };
 
+  debian_devscripts = callPackage ../tools/misc/debian-devscripts {
+    inherit (perlPackages) CryptSSLeay LWP TimeDate DBFile FileDesktopEntry;
+  };
+
   debootstrap = callPackage ../tools/misc/debootstrap { };
 
   detox = callPackage ../tools/misc/detox { };
@@ -1016,7 +1024,7 @@ let
 
   lshw = callPackage ../tools/system/lshw { };
 
-  lxc = callPackage ../applications/virtualization/lxc { };
+  lxc = callPackage ../os-specific/linux/lxc { };
 
   lzma = xz;
 
@@ -1161,6 +1169,8 @@ let
     inherit (pythonPackages) pysqlite;
   };
 
+  nss_myhostname = callPackage ../tools/networking/nss-myhostname {};
+
   nss_pam_ldapd = callPackage ../tools/networking/nss-pam-ldapd {};
 
   ntfs3g = callPackage ../tools/filesystems/ntfs-3g { };
@@ -1260,6 +1270,8 @@ let
            { hurd = gnu.hurdCrossIntermediate; })
     else null;
 
+  ipsecTools = callPackage ../os-specific/linux/ipsec-tools { };
+
   patch = gnupatch;
 
   pbzip2 = callPackage ../tools/compression/pbzip2 { };
@@ -1385,6 +1397,8 @@ let
 
   replace = callPackage ../tools/text/replace { };
 
+  reptyr = callPackage ../os-specific/linux/reptyr {};
+
   rdiff_backup = callPackage ../tools/backup/rdiff-backup { };
 
   ripmime = callPackage ../tools/networking/ripmime {};
@@ -1605,6 +1619,8 @@ let
   tigervnc = callPackage ../tools/admin/tigervnc {
     fontDirectories = [ xorg.fontadobe75dpi xorg.fontmiscmisc xorg.fontcursormisc
       xorg.fontbhlucidatypewriter75dpi ];
+    xorgserver = xorg.xorgserver_1_13_0;
+    fltk = fltk13;
   };
 
   tightvnc = callPackage ../tools/admin/tightvnc {
@@ -2280,6 +2296,11 @@ let
     };
   };
 
+  jhc = callPackage ../development/compilers/jhc {
+    inherit (haskellPackages_ghc6123) ghc binary zlib utf8String readline fgl
+    regexCompat HsSyck random;
+  };
+
   # Haskell and GHC
 
   # Import Haskell infrastructure.
@@ -2319,15 +2340,12 @@ let
   haskellPackages_ghc741_profiling    = recurseIntoAttrs (haskell.packages_ghc741.profiling);
   haskellPackages_ghc741              = recurseIntoAttrs (haskell.packages_ghc741.highPrio);
   haskellPackages_ghc742              = recurseIntoAttrs (haskell.packages_ghc742);
+  haskellPackages_ghc742_pedantic     =                   haskell.packages_ghc742_pedantic;
   haskellPackages_ghc761              = recurseIntoAttrs (haskell.packages_ghc761);
   # Reasonably current HEAD snapshot.
   haskellPackages_ghcHEAD             =                   haskell.packages_ghcHEAD;
 
-  haxeDist = import ../development/compilers/haxe {
-    inherit fetchurl sourceFromHead stdenv lib ocaml zlib makeWrapper neko;
-  };
-  haxe = haxeDist.haxe;
-  haxelib = haxeDist.haxelib;
+  haxe = callPackage ../development/compilers/haxe { };
 
   falcon = builderDefsPackage (import ../development/interpreters/falcon) {
     inherit cmake;
@@ -2354,31 +2372,36 @@ let
 
   openjdkBootstrap = callPackage ../development/compilers/openjdk/bootstrap.nix {};
 
+  openjdkStage1 = callPackage ../development/compilers/openjdk {
+    jdk = pkgs.openjdkBootstrap;
+    ant = pkgs.ant.override { jdk = pkgs.openjdkBootstrap; };
+  };
+
   openjdk =
     if stdenv.isDarwin then
       callPackage ../development/compilers/openjdk-darwin { }
     else
       callPackage ../development/compilers/openjdk {
-        jdk = pkgs.openjdkBootstrap;
-        ant = pkgs.ant.override { jdk = pkgs.openjdkBootstrap; };
+        jdk = pkgs.openjdkStage1;
+        ant = pkgs.ant.override { jdk = pkgs.openjdkStage1; };
       };
 
-  openjre = callPackage ../development/compilers/openjdk {
+  openjre = pkgs.openjdk.override {
     jreOnly = true;
   };
 
   jdk = if (stdenv.isDarwin || stdenv.system == "i686-linux" || stdenv.system == "x86_64-linux")
-    then openjdk
-    else jdkdistro true false;
+    then pkgs.openjdk
+    else pkgs.oraclejdk;
   jre = if (stdenv.system == "i686-linux" || stdenv.system == "x86_64-linux")
-    then openjre
-    else jdkdistro false false;
+    then pkgs.openjre
+    else pkgs.oraclejre;
 
-  oraclejdk = jdkdistro true false;
+  oraclejdk = pkgs.jdkdistro true false;
 
-  oraclejre = jdkdistro false false;
+  oraclejre = pkgs.jdkdistro false false;
 
-  jrePlugin = lowPrio (jdkdistro false true);
+  jrePlugin = lowPrio (pkgs.jdkdistro false true);
 
   supportsJDK =
     system == "i686-linux" ||
@@ -2394,7 +2417,6 @@ let
   jikes = callPackage ../development/compilers/jikes { };
 
   julia = callPackage ../development/compilers/julia {
-    llvm = llvm_3_1;
     pcre = pcre_8_30;
     liblapack = liblapack.override {shared = true;};
     fftw = fftw.override {pthreads = true;};
@@ -2408,7 +2430,6 @@ let
   };
 
   llvm = callPackage ../development/compilers/llvm { };
-  llvm_3_1 = callPackage ../development/compilers/llvm/3.1.nix { };
 
   mitscheme = callPackage ../development/compilers/mit-scheme { };
 
@@ -2436,7 +2457,7 @@ let
 
   ocaml_3_12_1 = callPackage ../development/compilers/ocaml/3.12.1.nix { };
 
-  ocaml_4_00_0 = callPackage ../development/compilers/ocaml/4.00.0.nix { };
+  ocaml_4_00_1 = callPackage ../development/compilers/ocaml/4.00.1.nix { };
 
   metaocaml_3_09 = callPackage ../development/compilers/ocaml/metaocaml-3.09.nix { };
 
@@ -2535,7 +2556,7 @@ let
   ocamlPackages_3_10_0 = mkOcamlPackages ocaml_3_10_0 pkgs.ocamlPackages_3_10_0;
   ocamlPackages_3_11_2 = mkOcamlPackages ocaml_3_11_2 pkgs.ocamlPackages_3_11_2;
   ocamlPackages_3_12_1 = mkOcamlPackages ocaml_3_12_1 pkgs.ocamlPackages_3_12_1;
-  ocamlPackages_4_00_0 = mkOcamlPackages ocaml_4_00_0 pkgs.ocamlPackages_4_00_0;
+  ocamlPackages_4_00_1 = mkOcamlPackages ocaml_4_00_1 pkgs.ocamlPackages_4_00_1;
 
   ocaml_make = callPackage ../development/ocaml-modules/ocamlmake { };
 
@@ -2710,10 +2731,9 @@ let
   love = callPackage ../development/interpreters/love {};
 
   lua4 = callPackage ../development/interpreters/lua-4 { };
-
   lua5 = callPackage ../development/interpreters/lua-5 { };
-
   lua5_0 = callPackage ../development/interpreters/lua-5/5.0.3.nix { };
+  lua5_1 = callPackage ../development/interpreters/lua-5/5.1.nix { };
 
   maude = callPackage ../development/interpreters/maude { };
 
@@ -2736,21 +2756,7 @@ let
 
   perl = if system != "i686-cygwin" then perl514 else sysPerl;
 
-  php = php5_3;
-
-  php5_2 = makeOverridable (import ../development/interpreters/php/5.2.nix) {
-    inherit
-      stdenv fetchurl lib composableDerivation autoconf automake
-      flex bison apacheHttpd mysql libxml2 readline
-      zlib curl gd postgresql openssl pkgconfig sqlite config libiconv libjpeg libpng;
-  };
-
-  php5_3 = makeOverridable (import ../development/interpreters/php/5.3.nix) {
-    inherit
-      stdenv fetchurl lib composableDerivation autoconf automake
-      flex bison apacheHttpd mysql libxml2 readline
-      zlib curl gd postgresql openssl pkgconfig sqlite config libiconv libjpeg libpng;
-  };
+  php = callPackage ../development/interpreters/php/5.3.nix { };
 
   php_apc = callPackage ../development/libraries/php-apc { };
 
@@ -3024,6 +3030,8 @@ let
 
   csslint = callPackage ../development/web/csslint { };
 
+  libcxx = callPackage ../development/libraries/libc++ { stdenv = pkgs.clangStdenv; };
+
   dejagnu = callPackage ../development/tools/misc/dejagnu { };
 
   ddd = callPackage ../development/tools/misc/ddd { };
@@ -3194,6 +3202,11 @@ let
 
   sloccount = callPackage ../development/tools/misc/sloccount { };
 
+  smatch = callPackage ../development/tools/analysis/smatch {
+    buildllvmsparse = false;
+    buildc2xml = false;
+  };
+
   sparse = callPackage ../development/tools/analysis/sparse { };
 
   spin = callPackage ../development/tools/analysis/spin { };
@@ -3495,11 +3508,15 @@ let
   fcgi = callPackage ../development/libraries/fcgi { };
 
   ffmpeg = callPackage ../development/libraries/ffmpeg {
-    vpxSupport = if !stdenv.isMips then true else false;
+    vpxSupport = !stdenv.isMips;
   };
 
   ffmpeg_0_6_90 = callPackage ../development/libraries/ffmpeg/0.6.90.nix {
-    vpxSupport = if !stdenv.isMips then true else false;
+    vpxSupport = !stdenv.isMips;
+  };
+
+  ffmpeg_1_0 = callPackage ../development/libraries/ffmpeg/1.0.nix {
+    vpxSupport = !stdenv.isMips;
   };
 
   fftw = callPackage ../development/libraries/fftw {
@@ -3812,23 +3829,23 @@ let
       gtkmm;
   };
 
-  glib = callPackage ../development/libraries/glib/2.30.x.nix { };
+  glib = callPackage ../development/libraries/glib/2.34.x.nix { };
 
   glibmm = callPackage ../development/libraries/glibmm/2.30.x.nix { };
 
   glib_networking = callPackage ../development/libraries/glib-networking {};
 
-  atk = callPackage ../development/libraries/atk/2.2.x.nix { };
+  atk = callPackage ../development/libraries/atk/2.6.x.nix { };
 
   atkmm = callPackage ../development/libraries/atkmm/2.22.x.nix { };
 
   cairo = callPackage ../development/libraries/cairo { };
 
-  pango = callPackage ../development/libraries/pango/1.29.x.nix { };
+  pango = callPackage ../development/libraries/pango/1.30.x.nix { };
 
   pangomm = callPackage ../development/libraries/pangomm/2.28.x.nix { };
 
-  gdk_pixbuf = callPackage ../development/libraries/gdk-pixbuf/2.24.x.nix { };
+  gdk_pixbuf = callPackage ../development/libraries/gdk-pixbuf/2.26.x.nix { };
 
   gtk2 = callPackage ../development/libraries/gtk+/2.24.x.nix { };
 
@@ -3869,6 +3886,8 @@ let
   # TODO : Add MIT Kerberos and let admin choose.
   kerberos = heimdal;
 
+  harfbuzz = callPackage ../development/libraries/harfbuzz { };
+
   hawknl = callPackage ../development/libraries/hawknl { };
 
   heimdal = callPackage ../development/libraries/kerberos/heimdal.nix { };
@@ -4236,6 +4255,8 @@ let
 
   libmng = callPackage ../development/libraries/libmng { };
 
+  libmnl = callPackage ../development/libraries/libmnl { };
+
   libmodplug = callPackage ../development/libraries/libmodplug {};
 
   libmpcdec = callPackage ../development/libraries/libmpcdec { };
@@ -4254,6 +4275,10 @@ let
 
   libmusicbrainz = libmusicbrainz3;
 
+  libnetfilter_conntrack = callPackage ../development/libraries/libnetfilter_conntrack { };
+
+  libnfnetlink = callPackage ../development/libraries/libnfnetlink { };
+
   libnih = callPackage ../development/libraries/libnih { };
 
   libnova = callPackage ../development/libraries/libnova { };
@@ -4953,7 +4978,7 @@ let
         libjpeg libtiff libxml2 libxslt sqlite
         icu cairo intltool automake libtool
         pkgconfig autoconf bison libproxy enchant
-        python ruby which flex geoclue;
+        python ruby which flex geoclue mesa;
       inherit gstreamer gst_plugins_base gst_ffmpeg
         gst_plugins_good;
       inherit (xlibs) libXt renderproto libXrender kbproto;
@@ -5414,6 +5439,10 @@ let
 
   postgresql_jdbc = callPackage ../servers/sql/postgresql/jdbc { };
 
+  psqlodbc = callPackage ../servers/sql/postgresql/psqlodbc {
+    postgresql = postgresql91;
+  };
+
   pyIRCt = builderDefsPackage (import ../servers/xmpp/pyIRCt) {
     inherit xmpppy pythonIRClib python makeWrapper;
   };
@@ -5434,7 +5463,7 @@ let
 
   spamassassin = callPackage ../servers/mail/spamassassin {
     inherit (perlPackages) HTMLParser NetDNS NetAddrIP DBFile
-      HTTPDate MailDKIM LWP IOSocketSSL IOSocketInet6;
+      HTTPDate MailDKIM LWP IOSocketSSL;
   };
 
   samba = callPackage ../servers/samba { };
@@ -5480,7 +5509,7 @@ let
     inherit fetchurl fetchsvn stdenv pkgconfig freetype fontconfig
       libxslt expat libdrm libpng zlib perl mesa
       xkeyboard_config dbus libuuid openssl gperf m4
-      autoconf libtool xmlto asciidoc udev flex bison python;
+      autoconf libtool xmlto asciidoc udev flex bison python mtdev;
     automake = automake110x;
   });
 
@@ -5620,14 +5649,6 @@ let
 
   gpm = callPackage ../servers/gpm { };
 
-  hal = callPackage ../os-specific/linux/hal { };
-
-  halevt = callPackage ../os-specific/linux/hal/hal-evt.nix { };
-
-  hal_info = callPackage ../os-specific/linux/hal/info.nix { };
-
-  hal_info_synaptics = callPackage ../os-specific/linux/hal/synaptics.nix { };
-
   hdparm = callPackage ../os-specific/linux/hdparm { };
 
   hibernate = callPackage ../os-specific/linux/hibernate { };
@@ -5697,6 +5718,8 @@ let
 
   libnl = callPackage ../os-specific/linux/libnl { };
 
+  linuxConsoleTools = callPackage ../os-specific/linux/consoletools { };
+
   linuxHeaders = callPackage ../os-specific/linux/kernel-headers { };
 
   linuxHeaders33 = callPackage ../os-specific/linux/kernel-headers/3.3.5.nix { };
@@ -5846,6 +5869,18 @@ let
       ];
   };
 
+  linux_3_6 = makeOverridable (import ../os-specific/linux/kernel/linux-3.6.nix) {
+    inherit fetchurl stdenv perl mktemp module_init_tools ubootChooser;
+    kernelPatches =
+      [
+        kernelPatches.sec_perm_2_6_24
+        kernelPatches.aufs3_6
+      ] ++ lib.optionals (platform.kernelArch == "mips")
+      [ kernelPatches.mips_fpureg_emu
+        kernelPatches.mips_fpu_sigill
+      ];
+  };
+
   /* Linux kernel modules are inherently tied to a specific kernel.  So
      rather than provide specific instances of those packages for a
      specific kernel, we have a function that builds those packages
@@ -5939,6 +5974,8 @@ let
 
     perf = callPackage ../os-specific/linux/kernel/perf.nix { };
 
+    spl = callPackage ../os-specific/linux/spl/default.nix { };
+
     sysprof = callPackage ../development/tools/profiling/sysprof {
       inherit (gnome) libglade;
     };
@@ -5958,6 +5995,8 @@ let
     };
 
     virtualboxGuestAdditions = callPackage ../applications/virtualization/virtualbox/guest-additions { };
+
+    zfs = callPackage ../os-specific/linux/zfs/default.nix { };
   };
 
   # Build the kernel modules for the some of the kernels.
@@ -5971,6 +6010,7 @@ let
   linuxPackages_3_3 = recurseIntoAttrs (linuxPackagesFor pkgs.linux_3_3 pkgs.linuxPackages_3_3);
   linuxPackages_3_4 = recurseIntoAttrs (linuxPackagesFor pkgs.linux_3_4 pkgs.linuxPackages_3_4);
   linuxPackages_3_5 = recurseIntoAttrs (linuxPackagesFor pkgs.linux_3_5 pkgs.linuxPackages_3_5);
+  linuxPackages_3_6 = recurseIntoAttrs (linuxPackagesFor pkgs.linux_3_6 pkgs.linuxPackages_3_6);
 
   # The current default kernel / kernel modules.
   linux = linuxPackages.kernel;
@@ -6033,9 +6073,7 @@ let
 
   module_init_tools = callPackage ../os-specific/linux/module-init-tools { };
 
-  mountall = callPackage ../os-specific/linux/mountall {
-    automake = automake111x;
-  };
+  mountall = callPackage ../os-specific/linux/mountall { };
 
   aggregateModules = modules:
     import ../os-specific/linux/module-init-tools/aggregator.nix {
@@ -6089,10 +6127,6 @@ let
     config = config.pcmciaUtils.config or null;
   };
 
-  phat = callPackage ../development/libraries/phat {
-    inherit (gnome) libgnomecanvas;
-  };
-
   pmount = callPackage ../os-specific/linux/pmount { };
 
   pmutils = callPackage ../os-specific/linux/pm-utils { };
@@ -6606,6 +6640,8 @@ let
     inherit (gnome) libgnomeui GConf;
   };
 
+  csound = callPackage ../applications/audio/csound { };
+
   libcompizconfig = callPackage ../applications/window-managers/compiz/libcompizconfig.nix { };
 
   compiz_bcop = callPackage ../applications/window-managers/compiz/bcop.nix { };
@@ -6651,6 +6687,8 @@ let
     inherit (pkgs.gnome) libart_lgpl libgnomeui;
   };
 
+  distrho = callPackage ../applications/audio/distrho {};
+
   djvulibre = callPackage ../applications/misc/djvulibre { };
 
   djview = callPackage ../applications/graphics/djview { };
@@ -6934,17 +6972,16 @@ let
 
   firefox15Wrapper = lowPrio (wrapFirefox { browser = firefox15Pkgs.firefox; });
 
-  flac = callPackage ../applications/audio/flac { };
-
-  flashplayer = flashplayer11;
+  firefox16Pkgs = callPackage ../applications/networking/browsers/firefox/16.0.nix {
+    inherit (gnome) libIDL;
+    inherit (pythonPackages) pysqlite;
+  };
 
-  flashplayer9 = callPackage ../applications/networking/browsers/mozilla-plugins/flashplayer-9 { };
+  firefox16Wrapper = lowPrio (wrapFirefox { browser = firefox16Pkgs.firefox; });
 
-  flashplayer10 = callPackage ../applications/networking/browsers/mozilla-plugins/flashplayer-10 {
-    debug = config.flashplayer.debug or false;
-  };
+  flac = callPackage ../applications/audio/flac { };
 
-  flashplayer11 = callPackage ../applications/networking/browsers/mozilla-plugins/flashplayer-11 {
+  flashplayer = callPackage ../applications/networking/browsers/mozilla-plugins/flashplayer-11 {
     debug = config.flashplayer.debug or false;
     # !!! Fix the dependency on two different builds of nss.
   };
@@ -7423,6 +7460,8 @@ let
 
   navit = callPackage ../applications/misc/navit { };
 
+  netbeans = callPackage ../applications/editors/netbeans { };
+
   ncdu = callPackage ../tools/misc/ncdu { };
 
   nedit = callPackage ../applications/editors/nedit {
@@ -7686,6 +7725,8 @@ let
 
   svk = perlPackages.SVK;
 
+  swh_lv2 = callPackage ../applications/audio/swh-lv2 { };
+
   sylpheed = callPackage ../applications/networking/mailreaders/sylpheed {
     sslSupport = true;
     gpgSupport = true;
@@ -7738,7 +7779,7 @@ let
 
   thinkingRock = callPackage ../applications/misc/thinking-rock { };
 
-  thunderbird = callPackage ../applications/networking/mailreaders/thunderbird/11.x.nix {
+  thunderbird = callPackage ../applications/networking/mailreaders/thunderbird/15.x.nix {
     inherit (gnome) libIDL;
   };
 
@@ -7831,7 +7872,9 @@ let
     inherit (xlibs) libX11;
   };
 
-  vlc = callPackage ../applications/video/vlc { };
+  vlc = callPackage ../applications/video/vlc {
+    ffmpeg = ffmpeg_1_0;
+  };
 
   vnstat = callPackage ../applications/networking/vnstat { };
 
@@ -7889,7 +7932,7 @@ let
           ++ lib.optional (cfg.enableGoogleTalkPlugin or false) google_talk_plugin
          );
       libs =
-        if config.browserNameenableQuakeLive or false
+        if config.browserName.enableQuakeLive or false
         then with xlibs; [ stdenv.gcc libX11 libXxf86dga libXxf86vm libXext libXt alsaLib zlib ]
         else [ ];
     };
@@ -8098,6 +8141,10 @@ let
     inherit (gnome) gnomedocutils;
   };
 
+  gsmartcontrol = callPackage ../tools/misc/gsmartcontrol {
+    inherit (gnome) libglademm;
+  };
+
   gtypist = callPackage ../games/gtypist { };
 
   hexen = callPackage ../games/hexen { };
@@ -8155,6 +8202,8 @@ let
     mygui = myguiSvn;
   };
 
+  rili = callPackage ../games/rili { };
+
   rogue = callPackage ../games/rogue { };
 
   sauerbraten = callPackage ../games/sauerbraten {};
@@ -8235,6 +8284,8 @@ let
     lua = lua5;
   };
 
+  uqm = callPackage ../games/uqm { };
+
   urbanterror = callPackage ../games/urbanterror { };
 
   ut2004demo = callPackage ../games/ut2004demo { };
@@ -8315,15 +8366,15 @@ let
 
   kde4 = recurseIntoAttrs pkgs.kde47;
 
-  kde47 = kdePackagesFor pkgs.kde47 "4.7";
+  kde47 = kdePackagesFor (pkgs.kde47 // {boost = boost149;}) ../desktops/kde-4.7;
 
-  kde48 = kdePackagesFor pkgs.kde48 "4.8";
+  kde48 = kdePackagesFor (pkgs.kde48 // {boost = boost149;}) ../desktops/kde-4.8;
 
-  kdePackagesFor = self: version:
+  kdePackagesFor = self: dir:
     let callPackageOrig = callPackage; in
     let
       callPackage = newScope self;
-      kde4 = callPackageOrig (../desktops/kde- + version) {
+      kde4 = callPackageOrig dir {
         inherit callPackage callPackageOrig;
       };
     in kde4 // {
diff --git a/pkgs/top-level/haskell-defaults.nix b/pkgs/top-level/haskell-defaults.nix
index 4b2f5fc46136..b4489fe72e5a 100644
--- a/pkgs/top-level/haskell-defaults.nix
+++ b/pkgs/top-level/haskell-defaults.nix
@@ -20,9 +20,20 @@
       haskellPlatform = null;
       binary = null; # now a core package
       extensibleExceptions = self.extensibleExceptions_0_1_1_4;
-      regexCompat = self.regexCompat_0_95_1.override { regexPosix = self.regexPosix_0_95_2; };
     };
 
+  ghc742Prefs_pedantic =
+    self : self.haskellPlatformArgs_2012_4_0_0 self // {
+      haskellPlatform = self.haskellPlatform_2012_4_0_0;
+      binary = null; # now a core package
+    };
+
+  # until the Haskell Platform for 7.4.2 is released, this works fine/better;
+  # mainly because the Haskell Platform 2012.4.0.0 release candidate mandates
+  # vector 0.10 and primitive 0.5, which at this time aren't supported widely
+  # by other packages
+  ghc742Prefs = ghc741Prefs;
+
   ghc741Prefs =
     self : self.haskellPlatformArgs_2012_2_0_0 self // {
       haskellPlatform = self.haskellPlatform_2012_2_0_0;
@@ -259,9 +270,12 @@
   packages_ghc742 =
     packages { ghcPath = ../development/compilers/ghc/7.4.2.nix;
                ghcBinary = ghc6121BinaryDarwin;
-               prefFun = ghc741Prefs;
+               prefFun = ghc742Prefs;
              };
 
+  packages_ghc742_pedantic =
+    packages_ghc742.override { prefFun = ghc742Prefs_pedantic; };
+
   packages_ghc761 =
     packages { ghcPath = ../development/compilers/ghc/7.6.1.nix;
                ghcBinary = ghc704Binary;
diff --git a/pkgs/top-level/haskell-packages.nix b/pkgs/top-level/haskell-packages.nix
index 7be018fbeb8f..4acc9ab0186b 100644
--- a/pkgs/top-level/haskell-packages.nix
+++ b/pkgs/top-level/haskell-packages.nix
@@ -120,6 +120,7 @@ let result = let callPackage = x : y : modifyPrio (newScope result.final x y);
 
   haskellPlatformArgs_future = self : {
     inherit (self) cabal ghc;
+    async        = self.async_2_0_1_3;          # 7.6 ok
     cgi          = self.cgi_3001_1_8_3;         # 7.6 ok
     fgl          = self.fgl_5_4_2_4;            # 7.6 ok
     GLUT         = self.GLUT_2_3_0_0;           # 7.6 ok
@@ -137,18 +138,60 @@ let result = let callPackage = x : y : modifyPrio (newScope result.final x y);
     regexBase    = self.regexBase_0_93_2;       # 7.6 ok
     regexCompat  = self.regexCompat_0_95_1;     # 7.6 ok
     regexPosix   = self.regexPosix_0_95_2;      # 7.6 ok
+    split        = self.split_0_2_1_1;          # 7.6 ok
     stm          = self.stm_2_4;                # 7.6 ok
     syb          = self.syb_0_3_7;              # 7.6 ok
     text         = self.text_0_11_2_3;          # 7.6 ok
     transformers = self.transformers_0_3_0_0;   # 7.6 ok
+    vector       = self.vector_0_10;            # 7.6 ok
     xhtml        = self.xhtml_3000_2_1;         # 7.6 ok
     zlib         = self.zlib_0_5_4_0;           # 7.6 ok
-    cabalInstall = self.cabalInstall_0_14_0;    # 7.6 ok
-    alex         = self.alex_3_0_1;             # 7.6 ok
-    haddock      = self.haddock_2_12_0;         # 7.6 ok
+    cabalInstall = self.cabalInstall_1_16_0;    # 7.6 ok
+    alex         = self.alex_3_0_2;             # 7.6 ok
+    haddock      = self.haddock_2_13_1;         # 7.6 ok
     happy        = self.happy_1_18_10;          # 7.6 ok
+    primitive    = self.primitive_0_5_0_1; # semi-official, but specified
   };
 
+  haskellPlatformArgs_2012_4_0_0 = self : {
+    inherit (self) cabal ghc;
+    async        = self.async_2_0_1_3;
+    cgi          = self.cgi_3001_1_7_4;
+    fgl          = self.fgl_5_4_2_4;
+    GLUT         = self.GLUT_2_1_2_1;
+    haskellSrc   = self.haskellSrc_1_0_1_5;
+    html         = self.html_1_0_1_2;
+    HTTP         = self.HTTP_4000_2_5;
+    HUnit        = self.HUnit_1_2_5_1;
+    mtl          = self.mtl_2_1_2;
+    network      = self.network_2_3_1_0;
+    OpenGL       = self.OpenGL_2_2_3_1;
+    parallel     = self.parallel_3_2_0_3;
+    parsec       = self.parsec_3_1_3;
+    QuickCheck   = self.QuickCheck_2_5_1_1;
+    random       = self.random_1_0_1_1;
+    regexBase    = self.regexBase_0_93_2;
+    regexCompat  = self.regexCompat_0_95_1;
+    regexPosix   = self.regexPosix_0_95_2;
+    split        = self.split_0_2_1_1;
+    stm          = self.stm_2_4;
+    syb          = self.syb_0_3_7;
+    text         = self.text_0_11_2_3;
+    transformers = self.transformers_0_3_0_0;
+    vector       = self.vector_0_10;
+    xhtml        = self.xhtml_3000_2_1;
+    zlib         = self.zlib_0_5_4_0;
+    cabalInstall = self.cabalInstall_0_14_0;
+    alex         = self.alex_3_0_2;
+    haddock      = self.haddock_2_11_0;
+    happy        = self.happy_1_18_10;
+    primitive    = self.primitive_0_5; # semi-official, but specified
+  };
+
+  haskellPlatform_2012_4_0_0 =
+    callPackage ../development/libraries/haskell/haskell-platform/2012.4.0.0.nix
+      (self.haskellPlatformArgs_2012_4_0_0 self);
+
   haskellPlatformArgs_2012_2_0_0 = self : {
     inherit (self) cabal ghc;
     cgi          = self.cgi_3001_1_7_4;         # 7.4.1 ok
@@ -419,7 +462,8 @@ let result = let callPackage = x : y : modifyPrio (newScope result.final x y);
 
   AspectAG = callPackage ../development/libraries/haskell/AspectAG {};
 
-  async = callPackage ../development/libraries/haskell/async {};
+  async_2_0_1_3 = callPackage ../development/libraries/haskell/async/2.0.1.3.nix {};
+  async = self.async_2_0_1_3;
 
   attempt = callPackage ../development/libraries/haskell/attempt {};
 
@@ -497,7 +541,7 @@ let result = let callPackage = x : y : modifyPrio (newScope result.final x y);
   };
 
   Cabal_1_14_0 = callPackage ../development/libraries/haskell/Cabal/1.14.0.nix { cabal = self.cabal.override { Cabal = null; }; };
-  Cabal_1_16_0 = callPackage ../development/libraries/haskell/Cabal/1.16.0.nix { cabal = self.cabal.override { Cabal = null; }; };
+  Cabal_1_16_0_1 = callPackage ../development/libraries/haskell/Cabal/1.16.0.1.nix { cabal = self.cabal.override { Cabal = null; }; };
   Cabal = null; # core package in GHC
 
   cabalFileTh = callPackage ../development/libraries/haskell/cabal-file-th {};
@@ -616,6 +660,8 @@ let result = let callPackage = x : y : modifyPrio (newScope result.final x y);
 
   datetime = callPackage ../development/libraries/haskell/datetime {};
 
+  dbus = callPackage ../development/libraries/haskell/dbus {};
+
   deepseq_1_1_0_0 = callPackage ../development/libraries/haskell/deepseq/1.1.0.0.nix {};
   deepseq_1_1_0_2 = callPackage ../development/libraries/haskell/deepseq/1.1.0.2.nix {};
   deepseq_1_2_0_1 = callPackage ../development/libraries/haskell/deepseq/1.2.0.1.nix {};
@@ -1045,6 +1091,8 @@ let result = let callPackage = x : y : modifyPrio (newScope result.final x y);
 
   liblastfm = callPackage ../development/libraries/haskell/liblastfm {};
 
+  libxmlSax = callPackage ../development/libraries/haskell/libxml-sax {};
+
   liftedBase = callPackage ../development/libraries/haskell/lifted-base {};
 
   ListLike = callPackage ../development/libraries/haskell/ListLike {};
@@ -1139,11 +1187,14 @@ let result = let callPackage = x : y : modifyPrio (newScope result.final x y);
   network_2_3_0_2 = callPackage ../development/libraries/haskell/network/2.3.0.2.nix {};
   network_2_3_0_5 = callPackage ../development/libraries/haskell/network/2.3.0.5.nix {};
   network_2_3_0_13 = callPackage ../development/libraries/haskell/network/2.3.0.13.nix {};
+  network_2_3_1_0 = callPackage ../development/libraries/haskell/network/2.3.1.0.nix {};
   network_2_4_0_1 = callPackage ../development/libraries/haskell/network/2.4.0.1.nix {};
   network = self.network_2_4_0_1;
 
   networkConduit = callPackage ../development/libraries/haskell/network-conduit {};
 
+  networkInfo = callPackage ../development/libraries/haskell/network-info {};
+
   networkMulticast = callPackage ../development/libraries/haskell/network-multicast {};
 
   networkTransport = callPackage ../development/libraries/haskell/network-transport {};
@@ -1249,7 +1300,10 @@ let result = let callPackage = x : y : modifyPrio (newScope result.final x y);
 
   prettyShow = callPackage ../development/libraries/haskell/pretty-show {};
 
-  primitive = callPackage ../development/libraries/haskell/primitive {};
+  primitive_0_4_1 = callPackage ../development/libraries/haskell/primitive/0.4.1.nix {};
+  primitive_0_5   = callPackage ../development/libraries/haskell/primitive/0.5.nix   {};
+  primitive_0_5_0_1 = callPackage ../development/libraries/haskell/primitive/0.5.0.1.nix   {};
+  primitive = self.primitive_0_5_0_1;
 
   processExtras = callPackage ../development/libraries/haskell/process-extras {};
 
@@ -1315,9 +1369,7 @@ let result = let callPackage = x : y : modifyPrio (newScope result.final x y);
   regexCompat_0_71_0_1 = callPackage ../development/libraries/haskell/regex-compat/0.71.0.1.nix {};
   regexCompat_0_92     = callPackage ../development/libraries/haskell/regex-compat/0.92.nix     {};
   regexCompat_0_93_1   = callPackage ../development/libraries/haskell/regex-compat/0.93.1.nix   {};
-  regexCompat_0_95_1   = callPackage ../development/libraries/haskell/regex-compat/0.95.1.nix   {
-    regexPosix = self.regexPosix_0_95_1;
-  };
+  regexCompat_0_95_1   = callPackage ../development/libraries/haskell/regex-compat/0.95.1.nix   {};
   regexCompat93 = self.regexCompat_0_93_1;
   regexCompat = self.regexCompat_0_71_0_1;
 
@@ -1325,12 +1377,8 @@ let result = let callPackage = x : y : modifyPrio (newScope result.final x y);
   regexPosix_0_94_1 = callPackage ../development/libraries/haskell/regex-posix/0.94.1.nix {};
   regexPosix_0_94_2 = callPackage ../development/libraries/haskell/regex-posix/0.94.2.nix {};
   regexPosix_0_94_4 = callPackage ../development/libraries/haskell/regex-posix/0.94.4.nix {};
-  regexPosix_0_95_1 = callPackage ../development/libraries/haskell/regex-posix/0.95.1.nix {
-    regexBase = self.regexBase_0_93_2;
-  };
-  regexPosix_0_95_2 = callPackage ../development/libraries/haskell/regex-posix/0.95.2.nix {
-    regexBase = self.regexBase_0_93_2;
-  };
+  regexPosix_0_95_1 = callPackage ../development/libraries/haskell/regex-posix/0.95.1.nix {};
+  regexPosix_0_95_2 = callPackage ../development/libraries/haskell/regex-posix/0.95.2.nix {};
   regexPosix = self.regexPosix_0_95_2;
 
   regexTDFA = callPackage ../development/libraries/haskell/regex-tdfa {};
@@ -1453,7 +1501,8 @@ let result = let callPackage = x : y : modifyPrio (newScope result.final x y);
 
   SMTPClient = callPackage ../development/libraries/haskell/SMTPClient {};
 
-  split = callPackage ../development/libraries/haskell/split {};
+  split_0_2_1_1 = callPackage ../development/libraries/haskell/split/0.2.1.1.nix {};
+  split = self.split_0_2_1_1;
 
   stbImage = callPackage ../development/libraries/haskell/stb-image {};
 
@@ -1595,7 +1644,10 @@ let result = let callPackage = x : y : modifyPrio (newScope result.final x y);
 
   Vec = callPackage ../development/libraries/haskell/Vec {};
 
-  vector = callPackage ../development/libraries/haskell/vector {};
+  vector_0_9_1 = callPackage ../development/libraries/haskell/vector/0.9.1.nix {};
+  vector_0_10 = callPackage ../development/libraries/haskell/vector/0.10.nix  {};
+  vector_0_10_0_1  = callPackage ../development/libraries/haskell/vector/0.10.0.1.nix  {};
+  vector = self.vector_0_10_0_1;
 
   vectorAlgorithms = callPackage ../development/libraries/haskell/vector-algorithms {};
 
@@ -1774,7 +1826,8 @@ let result = let callPackage = x : y : modifyPrio (newScope result.final x y);
   haddock_2_10_0 = callPackage ../development/tools/documentation/haddock/2.10.0.nix {};
   haddock_2_11_0 = callPackage ../development/tools/documentation/haddock/2.11.0.nix {};
   haddock_2_12_0 = callPackage ../development/tools/documentation/haddock/2.12.0.nix {};
-  haddock = self.haddock_2_12_0;
+  haddock_2_13_1 = callPackage ../development/tools/documentation/haddock/2.13.1.nix {};
+  haddock = self.haddock_2_13_1;
 
   happy_1_18_4 = callPackage ../development/tools/parsing/happy/1.18.4.nix {};
   happy_1_18_5 = callPackage ../development/tools/parsing/happy/1.18.5.nix {};
@@ -1801,8 +1854,8 @@ let result = let callPackage = x : y : modifyPrio (newScope result.final x y);
   };
 
   tar_0_3_2_0 = callPackage ../development/tools/haskell/tar/0.3.2.0.nix {};
-  tar_0_4_0_0 = callPackage ../development/tools/haskell/tar/0.4.0.0.nix {};
-  tar = self.tar_0_4_0_0;
+  tar_0_4_0_1 = callPackage ../development/tools/haskell/tar/0.4.0.1.nix {};
+  tar = self.tar_0_4_0_1;
 
   threadscope = callPackage ../development/tools/haskell/threadscope {};
 
@@ -1849,7 +1902,8 @@ let result = let callPackage = x : y : modifyPrio (newScope result.final x y);
   cabalInstall_0_8_2  = callPackage ../tools/package-management/cabal-install/0.8.2.nix  {};
   cabalInstall_0_10_2 = callPackage ../tools/package-management/cabal-install/0.10.2.nix {};
   cabalInstall_0_14_0 = callPackage ../tools/package-management/cabal-install/0.14.0.nix {};
-  cabalInstall = self.cabalInstall_0_14_0;
+  cabalInstall_1_16_0 = callPackage ../tools/package-management/cabal-install/1.16.0.nix {};
+  cabalInstall = self.cabalInstall_1_16_0;
 
   jailbreakCabal = callPackage ../development/tools/haskell/jailbreak-cabal {};
 
diff --git a/pkgs/top-level/node-packages.nix b/pkgs/top-level/node-packages.nix
index 5c6301ed2e01..2b92d291b1f8 100644
--- a/pkgs/top-level/node-packages.nix
+++ b/pkgs/top-level/node-packages.nix
@@ -53,6 +53,19 @@ let self = {
     ];
   };
 
+  "async" = self."async-0.1.22";
+
+  "async-0.1.22" = self.buildNodePackage rec {
+    name = "async-0.1.22";
+    src = fetchurl {
+      url = "http://registry.npmjs.org/async/-/${name}.tgz";
+      sha256 = "6fd2750cd519a754b0e32ef3423e64768055129e00a95d9297005bda29fdef18";
+    };
+    deps = [
+
+    ];
+  };
+
   "backbone" = self."backbone-0.9.2";
 
   "backbone-0.9.2" = self.buildNodePackage rec {
@@ -109,15 +122,27 @@ let self = {
     ];
   };
 
-  "bson" = self."bson-0.1.3";
+  "bson" = self."bson-0.1.5";
 
-  "bson-0.1.3" = self.buildNodePackage rec {
-    name = "bson-0.1.3";
+  "bson-0.1.5" = self.buildNodePackage rec {
+    name = "bson-0.1.5";
     src = fetchurl {
       url = "http://registry.npmjs.org/bson/-/${name}.tgz";
-      sha256 = "86ed2b1465e30a4089c8c88dee3d97fafcd7deb60edc3819c00a0604c84d5040";
+      sha256 = "3fad2209466740ea81d0bc285b92d940efe5104a6314946ea40180c431a19692";
+    };
+    deps = [
+
+    ];
+  };
+
+  "buffertools" = self."buffertools-~1";
+
+  "buffertools-~1" = self.buildNodePackage rec {
+    name = "buffertools-1.1.0";
+    src = fetchurl {
+      url = "http://registry.npmjs.org/buffertools/-/${name}.tgz";
+      sha256 = "a0520dbf39eedbd8c685ac4989bf822ac57cc161924abf82ba567234620380a5";
     };
-    flags = [ "mongodb:native" ];
     deps = [
 
     ];
@@ -536,16 +561,16 @@ let self = {
     ];
   };
 
-  "mongodb" = self."mongodb-1.1.7";
+  "mongodb" = self."mongodb-1.1.11";
 
-  "mongodb-1.1.7" = self.buildNodePackage rec {
-    name = "mongodb-1.1.7";
+  "mongodb-1.1.11" = self.buildNodePackage rec {
+    name = "mongodb-1.1.11";
     src = fetchurl {
       url = "http://registry.npmjs.org/mongodb/-/${name}.tgz";
-      sha256 = "10ed2903b839907e854a4ae4508940207f260500bfaff028497e9df865ead475";
+      sha256 = "fedd14b097a58ae5c2c83e5cb0af85a191ad00c2ce8d6db46520ee6cc1650277";
     };
     deps = [
-      self."bson-0.1.3"
+      self."bson-0.1.5"
     ];
   };
 
@@ -821,6 +846,21 @@ let self = {
     ];
   };
 
+  "requirejs" = self."requirejs-0.26.0";
+
+  "requirejs-==0.26.0" = self."requirejs-0.26.0";
+
+  "requirejs-0.26.0" = self.buildNodePackage rec {
+    name = "requirejs-0.26.0";
+    src = fetchurl {
+      url = "http://registry.npmjs.org/requirejs/-/${name}.tgz";
+      sha256 = "5ec7264031784fd1b5844aba813ace9045918a0b004a52fafa6b52e9e9760407";
+    };
+    deps = [
+
+    ];
+  };
+
   "rimraf" = self."rimraf-2";
 
   "rimraf-2" = self.buildNodePackage rec {
@@ -922,6 +962,19 @@ let self = {
     ];
   };
 
+  "source-map" = self."source-map-0.1.2";
+
+  "source-map-0.1.2" = self.buildNodePackage rec {
+    name = "source-map-0.1.2";
+    src = fetchurl {
+      url = "http://registry.npmjs.org/source-map/-/${name}.tgz";
+      sha256 = "4465bb3a293c0e86092affb7cbdd6d9356cad69231c56f6e73bba7750497035f";
+    };
+    deps = [
+      self."requirejs-==0.26.0"
+    ];
+  };
+
   "tar" = self."tar-~0.1.12";
 
   "tar-~0.1.12" = self.buildNodePackage rec {
@@ -1000,14 +1053,14 @@ let self = {
     ];
   };
 
-  "underscore" = self."underscore-1.3.3";
-  "underscore->=1.3.1" = self."underscore-1.3.3";
+  "underscore" = self."underscore-1.4.2";
+  "underscore->=1.3.1" = self."underscore-1.4.2";
 
-  "underscore-1.3.3" = self.buildNodePackage rec {
-    name = "underscore-1.3.3";
+  "underscore-1.4.2" = self.buildNodePackage rec {
+    name = "underscore-1.4.2";
     src = fetchurl {
       url = "http://registry.npmjs.org/underscore/-/${name}.tgz";
-      sha256 = "e710644e53f5a6d75a41a3e19d8c35eedbce0db1e886e470daf9f909c9d1ea8a";
+      sha256 = "329ab22ba9b37be4a0c694ca21b9ed85b99256a45c2e0cf3624c4719443366d6";
     };
     deps = [
 
@@ -1070,6 +1123,19 @@ let self = {
     ];
   };
 
+  "wu" = self."wu-0.1.8";
+
+  "wu-0.1.8" = self.buildNodePackage rec {
+    name = "wu-0.1.8";
+    src = fetchurl {
+      url = "http://registry.npmjs.org/wu/-/${name}.tgz";
+      sha256 = "2400d0ca7da862a9063a6a8d914bb4e585f81a5121b0fda8e40b1f6e782c72c6";
+    };
+    deps = [
+
+    ];
+  };
+
   "xmlhttprequest" = self."xmlhttprequest-1.2.2";
 
   "xmlhttprequest-1.2.2" = self.buildNodePackage rec {
diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index eeba996990dc..0e1f11d0b8ae 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -1578,6 +1578,19 @@ rec {
     };
   };
 
+  FileBaseDir = buildPerlPackage rec {
+    version = "0.03";
+    name = "File-BaseDir-${version}";
+    configurePhase = ''
+      preConfigure || true
+      perl Build.PL PREFIX="$out" prefix="$out"
+    '';
+    src = fetchurl {
+      url = "mirror://cpan/modules/by-module/File/${name}.tar.gz";
+      sha256 = "0029cba7a3b5d8aa5f7d03cb1b7ba2bcf2829382f7f26aa3bee06fce8611a886";
+    };
+  };
+
   FileCopyRecursive = buildPerlPackage rec {
     name = "File-Copy-Recursive-0.38";
     src = fetchurl {
@@ -1586,6 +1599,20 @@ rec {
     };
   };
 
+  FileDesktopEntry = buildPerlPackage rec {
+    version = "0.04";
+    name = "File-DesktopEntry-${version}";
+    configurePhase = ''
+      preConfigure || true
+      perl Build.PL PREFIX="$out" prefix="$out"
+    '';
+    src = fetchurl {
+      url = "mirror://cpan/modules/by-module/File/${name}.tar.gz";
+      sha256 = "d7f80d8bd303651a43dc1810c73740d38a0d2b158fb33cd3b6ca4d3a566da7cb";
+    };
+    propagatedBuildInputs = [ FileBaseDir ];
+  };
+
   FileFindRule = buildPerlPackage rec {
     name = "File-Find-Rule-0.32";
     src = fetchurl {
diff --git a/pkgs/top-level/platforms.nix b/pkgs/top-level/platforms.nix
index 14d4f87d2855..14f967bf8cf8 100644
--- a/pkgs/top-level/platforms.nix
+++ b/pkgs/top-level/platforms.nix
@@ -73,6 +73,7 @@ rec {
         IP_NF_TARGET_LOG y
         IP_NF_MANGLE y
         IPV6 m
+        VLAN_8021Q m
 
         CIFS y
         CIFS_XATTR y
@@ -80,6 +81,10 @@ rec {
         CIFS_FSCACHE y
         CIFS_ACL y
 
+        WATCHDOG y
+        WATCHDOG_CORE y
+        ORION_WATCHDOG m
+
         ZRAM m
         NETCONSOLE m
 
diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix
index ed7a03ac1ee3..9ef6887d2be1 100644
--- a/pkgs/top-level/python-packages.nix
+++ b/pkgs/top-level/python-packages.nix
@@ -187,14 +187,15 @@ let pythonPackages = python.modules // rec {
   });
 
 
-  astng = buildPythonPackage rec {
-    name = "logilab-astng-0.21.1";
+  logilab_astng = buildPythonPackage rec {
+    name = "logilab-astng-0.24.1";
 
     src = fetchurl {
-      url = "ftp://ftp.logilab.org/pub/astng/${name}.tar.gz";
-      sha256 = "0rqp2vwrnv6gkzdd96j078h1sz26plh49cmnyswy2wb6l4wans67";
+      url = "http://download.logilab.org/pub/astng/${name}.tar.gz";
+      sha256 = "00qxaxsax80sknwv25xl1r49lc4gbhkxs1kjywji4ad8y1npax0s";
     };
-    propagatedBuildInputs = [logilabCommon];
+
+    propagatedBuildInputs = [ logilab_common ];
   };
 
   beautifulsoup = buildPythonPackage (rec {
@@ -925,18 +926,21 @@ let pythonPackages = python.modules // rec {
 
 
   httplib2 = buildPythonPackage rec {
-    name = "httplib2-0.6.0";
+    name = "httplib2-0.7.6";
 
     src = fetchurl {
       url = "http://httplib2.googlecode.com/files/${name}.tar.gz";
-      sha256 = "134pldyxayc0x4akzzvkciz2kj1w2dsim1xvd9b1qrpmba70dpjq";
+      sha256 = "baa7bf431fa9d3c1016562de717e1ebb322a99df72a2918f6b5b8f65fa65bc2e";
     };
 
     doCheck = false; # doesn't have a test
 
     meta = {
-      homepage = http://code.google.com/p/httplib2/;
+      homepage = "http://code.google.com/p/httplib2";
       description = "A comprehensive HTTP client library";
+      license = pkgs.lib.licenses.mit;
+      maintainers = [ stdenv.lib.maintainers.garbas ];
+      platforms = python.meta.platforms;
     };
   };
 
@@ -1050,14 +1054,15 @@ let pythonPackages = python.modules // rec {
     };
   };
 
-  logilabCommon = buildPythonPackage rec {
-    name = "logilab-common-0.56.0";
+  logilab_common = buildPythonPackage rec {
+    name = "logilab-common-0.58.2";
 
     src = fetchurl {
-      url = "ftp://ftp.logilab.org/pub/common/${name}.tar.gz";
-      sha256 = "14p557nqypbd10d8k7qs6jlm58pksiwh86wvvl0axyki00hj6971";
+      url = "http://download.logilab.org/pub/common/${name}.tar.gz";
+      sha256 = "0qfdyj2is0scpnkgpnqm12lh4yl27617l0irlilhk25cpgbbfbf9";
     };
-    propagatedBuildInputs = [unittest2];
+
+    propagatedBuildInputs = [ unittest2 ];
   };
 
   lxml = buildPythonPackage ( rec {
@@ -1445,6 +1450,26 @@ let pythonPackages = python.modules // rec {
     };
   });
 
+  oauth2 = buildPythonPackage (rec {
+    name = "auth2-1.5.211";
+
+    src = fetchurl {
+      url = "http://pypi.python.org/packages/source/o/oauth2/oauth2-1.5.211.tar.gz";
+      sha256 = "82a38f674da1fa496c0fc4df714cbb058540bed72a30c50a2e344b0d984c4d21";
+    };
+
+    propagatedBuildInputs = [ httplib2  ];
+    doCheck = false;
+
+    meta = {
+      homepage = "https://github.com/simplegeo/python-oauth2";
+      description = "library for OAuth version 1.0";
+      license = pkgs.lib.licenses.mit;
+      maintainers = [ stdenv.lib.maintainers.garbas ];
+      platforms = stdenv.lib.platforms.linux;
+    };
+  });
+
   optfunc = buildPythonPackage ( rec {
     name = "optfunc-git";
 
@@ -1627,6 +1652,25 @@ let pythonPackages = python.modules // rec {
   };
 
 
+  polib = buildPythonPackage rec {
+    name = "polib-${version}";
+    version = "1.0.1";
+
+    src = fetchurl {
+      url = "http://bitbucket.org/izi/polib/downloads/${name}.tar.gz";
+      sha256 = "1sr2bb3g7rl7gr6156j5qv71kg06q1x01r1lbps9ksnyz37djn2q";
+    };
+
+    doCheck = false;
+
+    meta = {
+      description = "A library to manipulate gettext files (po and mo files)";
+      homepage = "http://bitbucket.org/izi/polib/";
+      license = pkgs.lib.licenses.mit;
+    };
+  };
+
+
   prettytable = buildPythonPackage rec {
     name = "prettytable-0.5";
 
@@ -1674,6 +1718,23 @@ let pythonPackages = python.modules // rec {
   };
 
 
+  publicsuffix = buildPythonPackage rec {
+    name = "publicsuffix-${version}";
+    version = "1.0.2";
+
+    src = fetchurl {
+      url = "http://pypi.python.org/packages/source/p/publicsuffix/${name}.tar.gz";
+      md5 = "f86babf56f6e58b564d3853adebcf37a";
+    };
+
+    meta = {
+      description = "Allows to get the public suffix of a domain name";
+      homepage = "http://pypi.python.org/pypi/publicsuffix/";
+      license = pkgs.lib.licenses.mit;
+    };
+  };
+
+
   pyasn1 = buildPythonPackage ({
     name = "pyasn1-0.0.11a";
 
@@ -1693,6 +1754,32 @@ let pythonPackages = python.modules // rec {
     };
   });
 
+
+  pyaudio = pkgs.stdenv.mkDerivation rec {
+    name = "python-pyaudio-${version}";
+    version = "0.2.4";
+
+    src = fetchurl {
+      url = "http://people.csail.mit.edu/hubert/pyaudio/packages/pyaudio-${version}.tar.gz";
+      md5 = "623809778f3d70254a25492bae63b575";
+    };
+
+    buildInputs = [ python pkgs.portaudio ];
+
+    installPhase = ''
+      python setup.py install --prefix=$out
+    '';
+
+    doCheck = false;
+
+    meta = {
+      description = "Python bindings for PortAudio";
+      homepage = "http://people.csail.mit.edu/hubert/pyaudio/";
+      license = stdenv.lib.licenses.mit;
+    };
+  };
+
+
   Babel = buildPythonPackage (rec {
     name = "Babel-0.9.6";
 
@@ -1908,13 +1995,20 @@ let pythonPackages = python.modules // rec {
 
 
   pylint = buildPythonPackage rec {
-    name = "pylint-0.23.0";
+    name = "pylint-0.26.0";
+    namePrefix = "";
 
     src = fetchurl {
       url = "ftp://ftp.logilab.org/pub/pylint/${name}.tar.gz";
-      sha256 = "07091avcc2b374i5f3blszmawjcin8xssjfryz91qbxybb8r7c6d";
+      sha256 = "1mg1ywpj0klklv63s2hwn5xwxi3wfwgnyz9d4pz32hzb53azq835";
+    };
+
+    propagatedBuildInputs = [ logilab_astng ];
+
+    meta = {
+      homepage = http://www.logilab.org/project/pylint;
+      description = "A bug and style checker for Python";
     };
-    propagatedBuildInputs = [astng];
   };
 
 
@@ -2516,11 +2610,11 @@ let pythonPackages = python.modules // rec {
   });
 
   sphinx = buildPythonPackage (rec {
-    name = "Sphinx-1.0.7";
+    name = "Sphinx-1.1.3";
 
     src = fetchurl {
       url = "http://pypi.python.org/packages/source/S/Sphinx/${name}.tar.gz";
-      md5 = "42c722d48e52d4888193965dd473adb5";
+      md5 = "8f55a6d4f87fc6d528120c5d1f983e98";
     };
 
     propagatedBuildInputs = [docutils jinja2 pygments];
@@ -2679,6 +2773,45 @@ let pythonPackages = python.modules // rec {
     };
   };
 
+  turses = buildPythonPackage (rec {
+    name = "turses-0.2.5";
+
+    src = fetchurl {
+      url = "http://pypi.python.org/packages/source/t/turses/${name}.tar.gz";
+      sha256 = "fbbc0ca93324535bcafa8434395caded8047e40c25d7a4004806415dd6ca023f";
+    };
+
+    propagatedBuildInputs = [ oauth2 urwid tweepy ];
+    doCheck = false;
+
+    meta = {
+      homepage = "https://github.com/alejandrogomez/turses";
+      description = "A Twitter client for the console.";
+      license = pkgs.lib.licenses.gpl3;
+      maintainers = [ stdenv.lib.maintainers.garbas ];
+      platforms = stdenv.lib.platforms.linux;
+    };
+  });
+
+  tweepy = buildPythonPackage (rec {
+    name = "tweepy-1.11";
+
+    src = fetchurl {
+      url = "http://pypi.python.org/packages/source/t/tweepy/${name}.tar.gz";
+      sha256 = "2b9fa225e9254e2cbbb01e59c6e92d9c42e5d41d97e8c74dee93eb09babffde5";
+    };
+
+    doCheck = false;
+
+    meta = {
+      homepage = "https://github.com/tweepy/tweepy";
+      description = "Twitter library for python";
+      license = pkgs.lib.licenses.mit;
+      maintainers = [ stdenv.lib.maintainers.garbas ];
+      platforms = stdenv.lib.platforms.linux;
+    };
+  });
+
   twisted = buildPythonPackage rec {
     name = "twisted-10.2.0";
 
@@ -3013,11 +3146,11 @@ let pythonPackages = python.modules // rec {
   };
 
   cliapp = buildPythonPackage rec {
-    name = "cliapp-1.20120630";
+    name = "cliapp-1.20120929";
 
     src = fetchurl rec {
-      url = "http://code.liw.fi/debian/pool/main/p/python-cliapp/python-cliapp_1.20120630.orig.tar.gz";
-      sha256 = "6beeb1fb3077561540094584ce36055266ac67b80f158b9b82fe4075096f4716";
+      url = "http://code.liw.fi/debian/pool/main/p/python-cliapp/python-cliapp_1.20120929.orig.tar.gz";
+      sha256 = "30d5077e53b3e45f892b1c49feaaf4f47e4664400ed71435e77a82a2b823a0f8";
     };
 
     buildInputs = [ sphinx ];
@@ -3033,11 +3166,11 @@ let pythonPackages = python.modules // rec {
   };
 
   tracing = buildPythonPackage rec {
-    name = "tracing-0.6";
+    name = "tracing-0.7";
 
     src = fetchurl rec {
-      url = "http://code.liw.fi/debian/pool/main/p/python-tracing/python-tracing_0.6.orig.tar.gz";
-      sha256 = "1164cf05891f9bca93fb87413f32d2c4da90348adbf69b0ad36a464b7adcd354";
+      url = "http://code.liw.fi/debian/pool/main/p/python-tracing/python-tracing_0.7.orig.tar.gz";
+      sha256 = "9954a1b0cc6b957d15975b048f929bbdd46766d397a6fa51bf8f6498b9459276";
     };
 
     buildInputs = [ sphinx ];
@@ -3053,11 +3186,11 @@ let pythonPackages = python.modules // rec {
   };
 
   ttystatus = buildPythonPackage rec {
-    name = "ttystatus-0.19";
+    name = "ttystatus-0.21";
 
     src = fetchurl rec {
-      url = "http://code.liw.fi/debian/pool/main/p/python-ttystatus/python-ttystatus_0.19.orig.tar.gz";
-      sha256 = "7cc112a4783f2e0c354c5244f8e50b18733b5957677b56a755c1016e04c0c28d";
+      url = "http://code.liw.fi/debian/pool/main/p/python-ttystatus/python-ttystatus_0.21.orig.tar.gz";
+      sha256 = "4a1f3a41c9bd3b5d2bd8e6f093890857301e590aa1d428fc9a6dca591227244c";
     };
 
     buildInputs = [ sphinx ];
@@ -3073,11 +3206,11 @@ let pythonPackages = python.modules // rec {
   };
 
   larch = buildPythonPackage rec {
-    name = "larch-1.20120527";
+    name = "larch-1.20121006";
 
     src = fetchurl rec {
-      url = "http://code.liw.fi/debian/pool/main/p/python-larch/python-larch_1.20120527.orig.tar.gz";
-      sha256 = "2865a1bfa6bd276bf746e8e7cb73d5199d0b6d00045d8c92e158626687d3bbe1";
+      url = "http://code.liw.fi/debian/pool/main/p/python-larch/python-larch_1.20121006.orig.tar.gz";
+      sha256 = "b4482981010e9c22ee3fce6fdc664b8fc0a1a3a18ed30b40f247f3b44437ccfa";
     };
 
     buildInputs = [ sphinx ];
diff --git a/pkgs/top-level/release.nix b/pkgs/top-level/release.nix
index 0f8ea5574e36..9af498e63775 100644
--- a/pkgs/top-level/release.nix
+++ b/pkgs/top-level/release.nix
@@ -136,8 +136,6 @@ with (import ./release-lib.nix);
   guile = linux;  # tests fail on Cygwin
   gv = linux;
   gzip = all;
-  hal = linux;
-  hal_info = linux;
   hddtemp = linux;
   hello = all;
   host = linux;
@@ -170,8 +168,6 @@ with (import ./release-lib.nix);
   libsmbios = linux;
   libtool = all;
   libtool_2 = all;
-  libxml2 = all;
-  libxslt = all;
   lout = linux;
   lsh = linux;
   lsof = linux;
@@ -360,6 +356,7 @@ with (import ./release-lib.nix);
   firefox36Pkgs.firefox = linux;
   firefox12Pkgs.firefox = linux;
   firefox15Pkgs.firefox = linux;
+  firefox16Pkgs.firefox = linux;
 
   gnome = {
     gnome_panel = linux;