summary refs log tree commit diff
path: root/pkgs/development
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/development')
-rw-r--r--pkgs/development/arduino/ino/default.nix3
-rw-r--r--pkgs/development/compilers/aldor/default.nix2
-rw-r--r--pkgs/development/compilers/ats2/default.nix19
-rw-r--r--pkgs/development/compilers/avra/default.nix7
-rw-r--r--pkgs/development/compilers/clean/default.nix2
-rw-r--r--pkgs/development/compilers/edk2/default.nix12
-rw-r--r--pkgs/development/compilers/elm/elm.nix15
-rw-r--r--pkgs/development/compilers/ghc/6.10.1-binary.nix4
-rw-r--r--pkgs/development/compilers/ghc/6.10.2-binary.nix4
-rw-r--r--pkgs/development/compilers/ghc/6.12.1-binary.nix4
-rw-r--r--pkgs/development/compilers/ghc/7.0.4-binary.nix4
-rw-r--r--pkgs/development/compilers/ghc/7.4.2-binary.nix4
-rw-r--r--pkgs/development/compilers/ghc/7.4.2.nix1
-rw-r--r--pkgs/development/compilers/ghc/7.6.3.nix5
-rw-r--r--pkgs/development/compilers/ghc/head.nix5
-rw-r--r--pkgs/development/compilers/ghc/with-packages.nix141
-rw-r--r--pkgs/development/compilers/ghc/wrapper.nix96
-rw-r--r--pkgs/development/compilers/go/1.1-darwin.nix74
-rw-r--r--pkgs/development/compilers/go/1.1.nix5
-rw-r--r--pkgs/development/compilers/gwt/2.4.0.nix2
-rw-r--r--pkgs/development/compilers/idris/default.nix20
-rw-r--r--pkgs/development/compilers/jdk/dlj-bundle-builder.sh5
-rw-r--r--pkgs/development/compilers/jdk/jdk6-linux.nix12
-rw-r--r--pkgs/development/compilers/julia/default.nix8
-rw-r--r--pkgs/development/compilers/mlton/default.nix2
-rw-r--r--pkgs/development/compilers/ocaml/4.01.0.nix63
-rw-r--r--pkgs/development/compilers/sbcl/default.nix8
-rw-r--r--pkgs/development/compilers/smlnj/default.nix66
-rw-r--r--pkgs/development/compilers/swi-prolog/default.nix4
-rw-r--r--pkgs/development/compilers/uhc/default.nix2
-rw-r--r--pkgs/development/compilers/urweb/default.nix2
-rw-r--r--pkgs/development/compilers/yap/default.nix22
-rw-r--r--pkgs/development/interpreters/angelscript/default.nix2
-rw-r--r--pkgs/development/interpreters/clisp/default.nix5
-rw-r--r--pkgs/development/interpreters/elixir/default.nix10
-rw-r--r--pkgs/development/interpreters/falcon/default.nix2
-rw-r--r--pkgs/development/interpreters/hiphopvm/default.nix2
-rw-r--r--pkgs/development/interpreters/lua-4/default.nix2
-rw-r--r--pkgs/development/interpreters/lua-5/5.0.3.nix2
-rw-r--r--pkgs/development/interpreters/lua-5/5.1.nix10
-rw-r--r--pkgs/development/interpreters/lua-5/5.2.nix67
-rw-r--r--pkgs/development/interpreters/lua-5/default.nix51
-rw-r--r--pkgs/development/interpreters/php/5.4.nix9
-rw-r--r--pkgs/development/interpreters/pure/default.nix14
-rw-r--r--pkgs/development/interpreters/pure/new-gcc.patch62
-rw-r--r--pkgs/development/interpreters/python/2.6/default.nix5
-rw-r--r--pkgs/development/interpreters/python/2.7/default.nix5
-rw-r--r--pkgs/development/interpreters/python/wrapper.nix29
-rw-r--r--pkgs/development/interpreters/racket/default.nix2
-rw-r--r--pkgs/development/interpreters/ruby/generated.nix109
-rw-r--r--pkgs/development/libraries/SDL2/default.nix56
-rw-r--r--pkgs/development/libraries/SDL2_gfx/default.nix54
-rw-r--r--pkgs/development/libraries/SDL2_image/default.nix27
-rw-r--r--pkgs/development/libraries/SDL2_mixer/default.nix20
-rw-r--r--pkgs/development/libraries/Xaw3d/default.nix4
-rw-r--r--pkgs/development/libraries/a52dec/default.nix1
-rw-r--r--pkgs/development/libraries/aalib/default.nix4
-rw-r--r--pkgs/development/libraries/agg/default.nix2
-rw-r--r--pkgs/development/libraries/apache-activemq/default.nix4
-rw-r--r--pkgs/development/libraries/aspell/default.nix2
-rw-r--r--pkgs/development/libraries/atk/default.nix2
-rw-r--r--pkgs/development/libraries/attica/default.nix2
-rw-r--r--pkgs/development/libraries/aubio/default.nix2
-rw-r--r--pkgs/development/libraries/audiofile/default.nix2
-rw-r--r--pkgs/development/libraries/avahi/default.nix2
-rw-r--r--pkgs/development/libraries/bwidget/default.nix2
-rw-r--r--pkgs/development/libraries/classads/default.nix2
-rw-r--r--pkgs/development/libraries/clucene-core/2.x.nix12
-rw-r--r--pkgs/development/libraries/clucene-core/default.nix12
-rw-r--r--pkgs/development/libraries/cogl/default.nix2
-rw-r--r--pkgs/development/libraries/coin3d/default.nix3
-rw-r--r--pkgs/development/libraries/dbus/default.nix6
-rw-r--r--pkgs/development/libraries/eventlog/default.nix10
-rw-r--r--pkgs/development/libraries/ffmpeg/1.x.nix4
-rw-r--r--pkgs/development/libraries/fox/fox-1.6.nix2
-rw-r--r--pkgs/development/libraries/freetds/default.nix2
-rw-r--r--pkgs/development/libraries/gamin/default.nix17
-rw-r--r--pkgs/development/libraries/geoclue/2.0.nix30
-rw-r--r--pkgs/development/libraries/gettext/default.nix22
-rw-r--r--pkgs/development/libraries/glew/default.nix4
-rw-r--r--pkgs/development/libraries/gnu-efi/default.nix6
-rw-r--r--pkgs/development/libraries/gnutls/3.2.nix73
-rw-r--r--pkgs/development/libraries/gssdp/default.nix2
-rw-r--r--pkgs/development/libraries/gtk+/3.x.nix6
-rw-r--r--pkgs/development/libraries/gurobi/default.nix25
-rw-r--r--pkgs/development/libraries/gusb/default.nix30
-rw-r--r--pkgs/development/libraries/harfbuzz/default.nix10
-rw-r--r--pkgs/development/libraries/haskell/Agda/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/Cabal/1.18.1.2.nix (renamed from pkgs/development/libraries/haskell/Cabal/1.18.0.nix)4
-rw-r--r--pkgs/development/libraries/haskell/ChasingBottoms/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/GLFW/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/GLURaw/1.4.0.0.nix16
-rw-r--r--pkgs/development/libraries/haskell/GLUT/2.5.0.1.nix18
-rw-r--r--pkgs/development/libraries/haskell/HDBC/HDBC-postgresql.nix4
-rw-r--r--pkgs/development/libraries/haskell/HTF/default.nix26
-rw-r--r--pkgs/development/libraries/haskell/HTTP/4000.2.8.nix1
-rw-r--r--pkgs/development/libraries/haskell/Hipmunk/default.nix6
-rw-r--r--pkgs/development/libraries/haskell/JuicyPixels/default.nix10
-rw-r--r--pkgs/development/libraries/haskell/MonadRandom/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/OpenGL/2.9.1.0.nix16
-rw-r--r--pkgs/development/libraries/haskell/OpenGLRaw/1.4.0.0.nix15
-rw-r--r--pkgs/development/libraries/haskell/accelerate-cuda/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/accelerate-fft/default.nix2
-rw-r--r--pkgs/development/libraries/haskell/accelerate/default.nix1
-rw-r--r--pkgs/development/libraries/haskell/acid-state/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/active/default.nix5
-rw-r--r--pkgs/development/libraries/haskell/aeson-pretty/default.nix20
-rw-r--r--pkgs/development/libraries/haskell/aeson/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/amqp/default.nix23
-rw-r--r--pkgs/development/libraries/haskell/asn1-types/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/basic-prelude/default.nix8
-rw-r--r--pkgs/development/libraries/haskell/bifunctors/default.nix6
-rw-r--r--pkgs/development/libraries/haskell/bindings-DSL/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/bindings-libusb/default.nix15
-rw-r--r--pkgs/development/libraries/haskell/blaze-builder/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/bson/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/bytestring-progress/default.nix1
-rw-r--r--pkgs/development/libraries/haskell/cabal-macosx/default.nix8
-rw-r--r--pkgs/development/libraries/haskell/case-insensitive/1.1.0.1.nix (renamed from pkgs/development/libraries/haskell/case-insensitive/1.1.nix)4
-rw-r--r--pkgs/development/libraries/haskell/cereal/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/certificate/default.nix5
-rw-r--r--pkgs/development/libraries/haskell/charset/default.nix14
-rw-r--r--pkgs/development/libraries/haskell/cipher-aes/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/cipher-blowfish/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/cipher-camellia/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/cipher-des/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/cipher-rc4/default.nix12
-rw-r--r--pkgs/development/libraries/haskell/citeproc-hs/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/classy-prelude-conduit/default.nix10
-rw-r--r--pkgs/development/libraries/haskell/classy-prelude/default.nix16
-rw-r--r--pkgs/development/libraries/haskell/clock/default.nix13
-rw-r--r--pkgs/development/libraries/haskell/comonad-transformers/default.nix17
-rw-r--r--pkgs/development/libraries/haskell/comonad/default.nix14
-rw-r--r--pkgs/development/libraries/haskell/comonads-fd/default.nix15
-rw-r--r--pkgs/development/libraries/haskell/conduit/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/connection/default.nix18
-rw-r--r--pkgs/development/libraries/haskell/constraints/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/crypto-cipher-tests/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/crypto-cipher-types/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/crypto-conduit/default.nix5
-rw-r--r--pkgs/development/libraries/haskell/cryptocipher/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/cryptohash/default.nix6
-rw-r--r--pkgs/development/libraries/haskell/cufft/default.nix2
-rw-r--r--pkgs/development/libraries/haskell/data-lens/default.nix11
-rw-r--r--pkgs/development/libraries/haskell/data-pprint/default.nix13
-rw-r--r--pkgs/development/libraries/haskell/dbus/default.nix1
-rw-r--r--pkgs/development/libraries/haskell/diagrams/core.nix4
-rw-r--r--pkgs/development/libraries/haskell/diagrams/diagrams.nix4
-rw-r--r--pkgs/development/libraries/haskell/diagrams/lib.nix5
-rw-r--r--pkgs/development/libraries/haskell/diagrams/svg.nix4
-rw-r--r--pkgs/development/libraries/haskell/distributive/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/dns/default.nix13
-rw-r--r--pkgs/development/libraries/haskell/doctest/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/dual-tree/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/either/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/entropy/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/enumerator/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/enummapset/default.nix14
-rw-r--r--pkgs/development/libraries/haskell/errors/default.nix5
-rw-r--r--pkgs/development/libraries/haskell/esqueleto/default.nix25
-rw-r--r--pkgs/development/libraries/haskell/fclabels/default.nix6
-rw-r--r--pkgs/development/libraries/haskell/feed/default.nix8
-rw-r--r--pkgs/development/libraries/haskell/file-embed/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/free/default.nix13
-rw-r--r--pkgs/development/libraries/haskell/generic-deriving/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/ghc-mod/default.nix12
-rw-r--r--pkgs/development/libraries/haskell/gitit/default.nix6
-rw-r--r--pkgs/development/libraries/haskell/gloss/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/groupoids/default.nix7
-rw-r--r--pkgs/development/libraries/haskell/groups/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/hS3/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/hakyll/default.nix29
-rw-r--r--pkgs/development/libraries/haskell/hamlet/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/happstack/happstack-server.nix4
-rw-r--r--pkgs/development/libraries/haskell/hashable/1.2.1.0.nix (renamed from pkgs/development/libraries/haskell/hashable/1.2.0.10.nix)4
-rw-r--r--pkgs/development/libraries/haskell/hashtables/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/haskell-src-meta/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/haxr/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/heist/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/hexpat/default.nix12
-rw-r--r--pkgs/development/libraries/haskell/hflags/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/hjsmin/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/hoogle/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/hslua/default.nix15
-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/http-types/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/intervals/default.nix7
-rw-r--r--pkgs/development/libraries/haskell/keys/default.nix16
-rw-r--r--pkgs/development/libraries/haskell/lambdabot/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/language-ecmascript/default.nix23
-rw-r--r--pkgs/development/libraries/haskell/language-java/default.nix2
-rw-r--r--pkgs/development/libraries/haskell/language-javascript/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/lens-datetime/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/lens/default.nix24
-rw-r--r--pkgs/development/libraries/haskell/linear/default.nix21
-rw-r--r--pkgs/development/libraries/haskell/list-tries/default.nix16
-rw-r--r--pkgs/development/libraries/haskell/llvm-general-pure/default.nix20
-rw-r--r--pkgs/development/libraries/haskell/llvm-general/default.nix19
-rw-r--r--pkgs/development/libraries/haskell/math-functions/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/modular-arithmetic/default.nix5
-rw-r--r--pkgs/development/libraries/haskell/monad-control/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/monad-logger/default.nix13
-rw-r--r--pkgs/development/libraries/haskell/monad-par/0.3.4.5.nix (renamed from pkgs/development/libraries/haskell/monad-par/0.3.4.4.nix)4
-rw-r--r--pkgs/development/libraries/haskell/mono-traversable/default.nix20
-rw-r--r--pkgs/development/libraries/haskell/monoid-extras/default.nix5
-rw-r--r--pkgs/development/libraries/haskell/multiarg/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/multirec/default.nix1
-rw-r--r--pkgs/development/libraries/haskell/mwc-random/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/nats/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/ncurses/default.nix11
-rw-r--r--pkgs/development/libraries/haskell/network-conduit-tls/default.nix17
-rw-r--r--pkgs/development/libraries/haskell/network/2.4.2.0.nix20
-rw-r--r--pkgs/development/libraries/haskell/numbers/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/optparse-applicative/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/pandoc-citeproc/default.nix27
-rw-r--r--pkgs/development/libraries/haskell/pandoc-types/default.nix8
-rw-r--r--pkgs/development/libraries/haskell/pandoc/default.nix28
-rw-r--r--pkgs/development/libraries/haskell/parsers/0.10.nix19
-rw-r--r--pkgs/development/libraries/haskell/parsers/0.9.nix17
-rw-r--r--pkgs/development/libraries/haskell/path-pieces/default.nix8
-rw-r--r--pkgs/development/libraries/haskell/pem/default.nix13
-rw-r--r--pkgs/development/libraries/haskell/persistent-template/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/pipes-bytestring/default.nix14
-rw-r--r--pkgs/development/libraries/haskell/pipes-concurrency/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/pipes-parse/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/pointed/default.nix19
-rw-r--r--pkgs/development/libraries/haskell/postgresql-simple/default.nix14
-rw-r--r--pkgs/development/libraries/haskell/primitive/0.5.1.0.nix14
-rw-r--r--pkgs/development/libraries/haskell/profunctor-extras/default.nix15
-rw-r--r--pkgs/development/libraries/haskell/profunctors/default.nix10
-rw-r--r--pkgs/development/libraries/haskell/pwstore-fast/default.nix8
-rw-r--r--pkgs/development/libraries/haskell/reducers/default.nix20
-rw-r--r--pkgs/development/libraries/haskell/regex-compat-tdfa/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/resourcet/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/rfc5051/default.nix14
-rw-r--r--pkgs/development/libraries/haskell/scotty/default.nix9
-rw-r--r--pkgs/development/libraries/haskell/semigroupoid-extras/default.nix10
-rw-r--r--pkgs/development/libraries/haskell/semigroupoids/default.nix14
-rw-r--r--pkgs/development/libraries/haskell/semigroups/default.nix10
-rw-r--r--pkgs/development/libraries/haskell/setenv/default.nix7
-rw-r--r--pkgs/development/libraries/haskell/shake/default.nix13
-rw-r--r--pkgs/development/libraries/haskell/shakespeare-css/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/shakespeare-js/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/shakespeare-text/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/shakespeare/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/shelly/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/simple-sendfile/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/skein/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/snap/snap.nix4
-rw-r--r--pkgs/development/libraries/haskell/snaplet-acid-state/default.nix15
-rw-r--r--pkgs/development/libraries/haskell/socks/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/statistics/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/stringable/default.nix13
-rw-r--r--pkgs/development/libraries/haskell/symbol/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/system-filepath/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/tagsoup/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/tagstream-conduit/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/tasty/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/test-framework-hunit/default.nix6
-rw-r--r--pkgs/development/libraries/haskell/test-framework-quickcheck2/default.nix6
-rw-r--r--pkgs/development/libraries/haskell/test-framework/default.nix13
-rw-r--r--pkgs/development/libraries/haskell/text-format/default.nix14
-rw-r--r--pkgs/development/libraries/haskell/th-lift/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/th-orphans/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/thyme/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/tls-extra/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/trifecta/1.1.nix30
-rw-r--r--pkgs/development/libraries/haskell/trifecta/1.2.nix30
-rw-r--r--pkgs/development/libraries/haskell/uniplate/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/unix-time/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/unordered-containers/0.2.3.3.nix (renamed from pkgs/development/libraries/haskell/unordered-containers/0.2.3.2.nix)4
-rw-r--r--pkgs/development/libraries/haskell/usb/default.nix14
-rw-r--r--pkgs/development/libraries/haskell/utf8-light/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/uuid/default.nix19
-rw-r--r--pkgs/development/libraries/haskell/vault/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/vector-instances/default.nix17
-rw-r--r--pkgs/development/libraries/haskell/vector/0.10.9.1.nix15
-rw-r--r--pkgs/development/libraries/haskell/wai-app-static/default.nix12
-rw-r--r--pkgs/development/libraries/haskell/warp/default.nix8
-rw-r--r--pkgs/development/libraries/haskell/word8/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/wxHaskell/wxc.nix1
-rw-r--r--pkgs/development/libraries/haskell/xdot/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/xmlgen/default.nix15
-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-bin/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/yesod-core/default.nix5
-rw-r--r--pkgs/development/libraries/haskell/yesod-form/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/yesod-platform/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/yst/default.nix13
-rw-r--r--pkgs/development/libraries/haskell/zip-archive/default.nix4
-rw-r--r--pkgs/development/libraries/hunspell/default.nix8
-rw-r--r--pkgs/development/libraries/jansson/default.nix2
-rw-r--r--pkgs/development/libraries/jsoncpp/default.nix32
-rw-r--r--pkgs/development/libraries/leveldb/default.nix2
-rw-r--r--pkgs/development/libraries/libav/default.nix2
-rw-r--r--pkgs/development/libraries/libdevil/default.nix2
-rw-r--r--pkgs/development/libraries/libedit/default.nix10
-rw-r--r--pkgs/development/libraries/libedit/freebsd.patch13
-rw-r--r--pkgs/development/libraries/libedit/freebsd_weak_ref.patch20
-rw-r--r--pkgs/development/libraries/libffi/default.nix4
-rw-r--r--pkgs/development/libraries/libgsf/default.nix23
-rw-r--r--pkgs/development/libraries/libical/default.nix12
-rw-r--r--pkgs/development/libraries/libid3tag/default.nix2
-rw-r--r--pkgs/development/libraries/libimobiledevice/default.nix4
-rw-r--r--pkgs/development/libraries/libjson-rpc-cpp/default.nix28
-rw-r--r--pkgs/development/libraries/liblockfile/default.nix2
-rw-r--r--pkgs/development/libraries/libmcrypt/default.nix2
-rw-r--r--pkgs/development/libraries/libmemcached/default.nix2
-rw-r--r--pkgs/development/libraries/libnet/default.nix18
-rw-r--r--pkgs/development/libraries/libnetfilter_conntrack/default.nix2
-rw-r--r--pkgs/development/libraries/libnfnetlink/default.nix2
-rw-r--r--pkgs/development/libraries/liboop/default.nix2
-rw-r--r--pkgs/development/libraries/libpng/default.nix13
-rw-r--r--pkgs/development/libraries/librdf/default.nix2
-rw-r--r--pkgs/development/libraries/librsvg/default.nix19
-rw-r--r--pkgs/development/libraries/libsodium/default.nix21
-rw-r--r--pkgs/development/libraries/libsoup/2.40.nix32
-rw-r--r--pkgs/development/libraries/libtoxcore/default.nix36
-rw-r--r--pkgs/development/libraries/libtxc_dxtn/default.nix11
-rw-r--r--pkgs/development/libraries/libunibreak/default.nix18
-rw-r--r--pkgs/development/libraries/libusb1/default.nix2
-rw-r--r--pkgs/development/libraries/libvirt/default.nix10
-rw-r--r--pkgs/development/libraries/libvirt/securtyfs_userns.patch30
-rw-r--r--pkgs/development/libraries/libvncserver/default.nix48
-rw-r--r--pkgs/development/libraries/libvncserver/default.upstream4
-rw-r--r--pkgs/development/libraries/libxtc_dxtn/default.nix12
-rw-r--r--pkgs/development/libraries/libyaml-cpp/0.3.x.nix18
-rw-r--r--pkgs/development/libraries/libyaml-cpp/default.nix18
-rw-r--r--pkgs/development/libraries/mesa/default.nix3
-rw-r--r--pkgs/development/libraries/mlt/default.nix4
-rw-r--r--pkgs/development/libraries/nspr/default.nix4
-rw-r--r--pkgs/development/libraries/nss/default.nix6
-rw-r--r--pkgs/development/libraries/oniguruma/default.nix2
-rw-r--r--pkgs/development/libraries/openjpeg/default.nix9
-rw-r--r--pkgs/development/libraries/phonon-backend-vlc/default.nix2
-rw-r--r--pkgs/development/libraries/polkit/default.nix2
-rw-r--r--pkgs/development/libraries/poppler/default.nix4
-rw-r--r--pkgs/development/libraries/portmidi/default.nix54
-rw-r--r--pkgs/development/libraries/qhull/default.nix2
-rw-r--r--pkgs/development/libraries/qt-4.x/4.8/default.nix16
-rw-r--r--pkgs/development/libraries/qwt/default.nix9
-rw-r--r--pkgs/development/libraries/science/math/blas/default.nix4
-rw-r--r--pkgs/development/libraries/sfml/default.nix7
-rw-r--r--pkgs/development/libraries/silgraphite/graphite2.nix21
-rw-r--r--pkgs/development/libraries/simgear/default.nix6
-rw-r--r--pkgs/development/libraries/sodium/default.nix8
-rw-r--r--pkgs/development/libraries/spice-protocol/default.nix2
-rw-r--r--pkgs/development/libraries/sqlite/3.7.14.nix25
-rw-r--r--pkgs/development/libraries/sqlite/3.7.9-full.nix44
-rw-r--r--pkgs/development/libraries/sqlite/default.nix (renamed from pkgs/development/libraries/sqlite/3.7.16.nix)6
-rw-r--r--pkgs/development/libraries/tinyxml/2.6.2.nix2
-rw-r--r--pkgs/development/libraries/unixODBCDrivers/default.nix28
-rw-r--r--pkgs/development/libraries/v8/default.nix2
-rw-r--r--pkgs/development/libraries/vcdimager/default.nix2
-rw-r--r--pkgs/development/lisp-modules/asdf/default.nix40
-rw-r--r--pkgs/development/lisp-modules/asdf/default.upstream2
-rwxr-xr-xpkgs/development/lisp-modules/clwrapper/cl-wrapper.sh44
-rwxr-xr-xpkgs/development/lisp-modules/clwrapper/common-lisp.sh3
-rw-r--r--pkgs/development/lisp-modules/clwrapper/default.nix28
-rw-r--r--pkgs/development/lisp-modules/clwrapper/setup-hook.sh39
-rw-r--r--pkgs/development/lisp-modules/define-package.nix50
-rwxr-xr-xpkgs/development/lisp-modules/from-quicklisp/asdf-description.sh16
-rwxr-xr-xpkgs/development/lisp-modules/from-quicklisp/barebones-quicklisp-expression.sh78
-rwxr-xr-xpkgs/development/lisp-modules/from-quicklisp/quicklisp-beta-env.sh16
-rwxr-xr-xpkgs/development/lisp-modules/from-quicklisp/quicklisp-dependencies.sh11
-rw-r--r--pkgs/development/lisp-modules/from-quicklisp/tmp.nix0
-rw-r--r--pkgs/development/lisp-modules/lisp-packages.nix103
-rw-r--r--pkgs/development/lisp-modules/stumpwm/default.nix33
-rw-r--r--pkgs/development/misc/avr-gcc-with-avr-libc/default.nix2
-rw-r--r--pkgs/development/mobile/androidenv/addon.xml26
-rw-r--r--pkgs/development/mobile/androidenv/addons.nix4
-rw-r--r--pkgs/development/mobile/androidenv/androidsdk.nix10
-rw-r--r--pkgs/development/mobile/androidenv/build-app.nix9
-rw-r--r--pkgs/development/mobile/androidenv/build-tools.nix10
-rw-r--r--pkgs/development/mobile/androidenv/default.nix6
-rwxr-xr-xpkgs/development/mobile/androidenv/fetch15
-rw-r--r--pkgs/development/mobile/androidenv/platforms-linux.nix4
-rw-r--r--pkgs/development/mobile/androidenv/platforms-macosx.nix4
-rw-r--r--pkgs/development/mobile/androidenv/repository-8.xml73
-rw-r--r--pkgs/development/mobile/androidenv/sys-img-x86.xml15
-rw-r--r--pkgs/development/mobile/androidenv/sysimages.nix12
-rw-r--r--pkgs/development/mobile/titaniumenv/titaniumsdk.nix10
-rw-r--r--pkgs/development/mobile/xcodeenv/xcodewrapper.nix3
-rw-r--r--pkgs/development/ocaml-modules/ocamlgraph/default.nix2
-rw-r--r--pkgs/development/ocaml-modules/sexplib/default.nix2
-rw-r--r--pkgs/development/perl-modules/maatkit/default.nix10
-rw-r--r--pkgs/development/python-modules/blivet/default.nix5
-rw-r--r--pkgs/development/python-modules/buildout-nix/nix.patch25
-rw-r--r--pkgs/development/python-modules/gyp/no-xcode.patch6
-rw-r--r--pkgs/development/python-modules/pyside/default.nix2
-rw-r--r--pkgs/development/python-modules/pyside/tools.nix2
-rw-r--r--pkgs/development/qtcreator/default.nix10
-rw-r--r--pkgs/development/r-modules/generic/builder.sh23
-rw-r--r--pkgs/development/r-modules/generic/default.nix17
-rw-r--r--pkgs/development/tools/analysis/checkstyle/default.nix7
-rw-r--r--pkgs/development/tools/analysis/cppcheck/default.nix2
-rw-r--r--pkgs/development/tools/analysis/jdepend/default.nix2
-rw-r--r--pkgs/development/tools/analysis/pmd/default.nix2
-rw-r--r--pkgs/development/tools/build-managers/apache-ant/default.nix4
-rw-r--r--pkgs/development/tools/build-managers/apache-ant/from-source.nix2
-rw-r--r--pkgs/development/tools/build-managers/colormake/default.nix2
-rw-r--r--pkgs/development/tools/build-managers/gradle/default.nix21
-rw-r--r--pkgs/development/tools/build-managers/leiningen/builder.sh4
-rw-r--r--pkgs/development/tools/build-managers/leiningen/default.nix12
-rw-r--r--pkgs/development/tools/build-managers/ninja/default.nix4
-rw-r--r--pkgs/development/tools/build-managers/rebar/default.nix2
-rw-r--r--pkgs/development/tools/casperjs/default.nix4
-rw-r--r--pkgs/development/tools/documentation/haddock/2.7.2.nix2
-rw-r--r--pkgs/development/tools/documentation/haddock/2.9.2.nix2
-rw-r--r--pkgs/development/tools/gnulib/default.nix6
-rw-r--r--pkgs/development/tools/haskell/HaRe/default.nix4
-rw-r--r--pkgs/development/tools/haskell/cabal2nix/default.nix4
-rw-r--r--pkgs/development/tools/haskell/hlint/default.nix4
-rw-r--r--pkgs/development/tools/haskell/keter/default.nix4
-rw-r--r--pkgs/development/tools/haskell/packunused/default.nix5
-rw-r--r--pkgs/development/tools/misc/astyle/default.nix2
-rw-r--r--pkgs/development/tools/misc/autobuild/default.nix2
-rw-r--r--pkgs/development/tools/misc/autoconf/2.13.nix2
-rw-r--r--pkgs/development/tools/misc/autoconf/default.nix2
-rw-r--r--pkgs/development/tools/misc/autogen/default.nix2
-rw-r--r--pkgs/development/tools/misc/automake/automake-1.10.x.nix2
-rw-r--r--pkgs/development/tools/misc/automake/automake-1.11.x.nix2
-rw-r--r--pkgs/development/tools/misc/automake/automake-1.12.x.nix2
-rw-r--r--pkgs/development/tools/misc/automake/automake-1.13.x.nix2
-rw-r--r--pkgs/development/tools/misc/avarice/default.nix2
-rw-r--r--pkgs/development/tools/misc/avrdude/default.nix4
-rw-r--r--pkgs/development/tools/misc/ccache/default.nix2
-rw-r--r--pkgs/development/tools/misc/cl-launch/default.nix8
-rw-r--r--pkgs/development/tools/misc/gtkdialog/default.nix8
-rw-r--r--pkgs/development/tools/misc/luarocks/default.nix8
-rw-r--r--pkgs/development/tools/misc/ninka/default.nix31
-rw-r--r--pkgs/development/tools/misc/stm32flash/default.nix10
-rw-r--r--pkgs/development/tools/misc/sysbench/default.nix2
-rw-r--r--pkgs/development/tools/misc/texinfo/5.1.nix2
-rw-r--r--pkgs/development/tools/misc/xc3sprog/default.nix25
-rw-r--r--pkgs/development/tools/parsing/alex/3.1.0.nix18
-rw-r--r--pkgs/development/tools/parsing/happy/1.18.11.nix18
-rw-r--r--pkgs/development/tools/parsing/happy/1.19.0.nix18
-rw-r--r--pkgs/development/tools/parsing/re2c/default.nix2
-rw-r--r--pkgs/development/tools/phantomjs/default.nix13
-rw-r--r--pkgs/development/tools/slimerjs/default.nix46
-rw-r--r--pkgs/development/tools/slimerjs/default.upstream2
-rw-r--r--pkgs/development/tools/slimerjs/default.upstream.git3
-rw-r--r--pkgs/development/web/nodejs/default.nix4
446 files changed, 3767 insertions, 1321 deletions
diff --git a/pkgs/development/arduino/ino/default.nix b/pkgs/development/arduino/ino/default.nix
index e77c2251b36..89501f11269 100644
--- a/pkgs/development/arduino/ino/default.nix
+++ b/pkgs/development/arduino/ino/default.nix
@@ -29,11 +29,12 @@ buildPythonPackage rec {
       --replace "self.e['avrdude']" "'${avrdude}/bin/avrdude'" \
       --replace "'-C', self.e['avrdude.conf']," ""
   '';
- 
+
   meta = {
     description = "Command line toolkit for working with Arduino hardware";
     homepage = http://inotool.org/;
     license = stdenv.lib.licenses.mit;
     maintainers = with stdenv.lib.maintainers; [ antono the-kenny ];
+    platforms = stdenv.lib.platforms.linux;
   };
 }
diff --git a/pkgs/development/compilers/aldor/default.nix b/pkgs/development/compilers/aldor/default.nix
index fcd0c9fd453..57d1bf74154 100644
--- a/pkgs/development/compilers/aldor/default.nix
+++ b/pkgs/development/compilers/aldor/default.nix
@@ -29,7 +29,7 @@ stdenv.mkDerivation {
 
   meta = {
     homepage = "http://www.aldor.org/";
-    description = "Aldor is a programming language with an expressive type system";
+    description = "Programming language with an expressive type system";
     license = stdenv.lib.licenses.asl20;
 
     longDescription = ''
diff --git a/pkgs/development/compilers/ats2/default.nix b/pkgs/development/compilers/ats2/default.nix
new file mode 100644
index 00000000000..074fc4f334f
--- /dev/null
+++ b/pkgs/development/compilers/ats2/default.nix
@@ -0,0 +1,19 @@
+{ stdenv, fetchurl, gmp }:
+
+let version = "0.0.3"; in stdenv.mkDerivation {
+  name = "ats2-postiats-${version}";
+
+  src = fetchurl {
+    url = "mirror://sourceforge/ats2-lang/ATS2-Postiats-${version}.tgz";
+    sha256 = "0hq63zrmm92j5ffnsmylhhllm8kgjpjkaj4xvzz1zlshz39lijxp";
+  };
+
+  buildInputs = [ gmp ];
+
+  meta = {
+    description = "A statically typed programming language that unifies implementation with formal specification";
+    homepage = http://www.ats-lang.org/;
+    license = stdenv.lib.licenses.gpl3Plus;
+    maintainers = [ stdenv.lib.maintainers.shlevy ];
+  };
+}
diff --git a/pkgs/development/compilers/avra/default.nix b/pkgs/development/compilers/avra/default.nix
index db9fafa42f1..70665919400 100644
--- a/pkgs/development/compilers/avra/default.nix
+++ b/pkgs/development/compilers/avra/default.nix
@@ -19,10 +19,11 @@ stdenv.mkDerivation rec {
     automake -a
   '';
 
-  meta = {
+  meta = with stdenv.lib; {
     description = "Assember for the Atmel AVR microcontroller family";
     homepage = http://avra.sourceforge.net/;
-    license = stdenv.lib.licenses.gpl2Plus;
-    maintainers = with stdenv.lib.maintainers; [ the-kenny ];
+    license = licenses.gpl2Plus;
+    platforms = platforms.all;
+    maintainers = with maintainers; [ the-kenny ];
   };
 }
diff --git a/pkgs/development/compilers/clean/default.nix b/pkgs/development/compilers/clean/default.nix
index bd051a95699..7f3e679e847 100644
--- a/pkgs/development/compilers/clean/default.nix
+++ b/pkgs/development/compilers/clean/default.nix
@@ -34,7 +34,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = {
-    description = "Clean is a general purpose, state-of-the-art, pure and lazy functional programming language.";
+    description = "General purpose, state-of-the-art, pure and lazy functional programming language";
     longDescription = ''
       Clean is a general purpose, state-of-the-art, pure and lazy functional
       programming language designed for making real-world applications. Some
diff --git a/pkgs/development/compilers/edk2/default.nix b/pkgs/development/compilers/edk2/default.nix
index 949324ba8b1..3c2a4f779fd 100644
--- a/pkgs/development/compilers/edk2/default.nix
+++ b/pkgs/development/compilers/edk2/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchsvn, libuuid, pythonFull, iasl }:
+{ stdenv, fetchgit, libuuid, pythonFull, iasl }:
 
 let
 
@@ -10,12 +10,12 @@ else
   throw "Unsupported architecture";
 
 edk2 = stdenv.mkDerivation {
-  name = "edk2-2013-03-19";
+  name = "edk2-2013-10-09";
   
-  src = fetchsvn {
-    url = https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2;
-    rev = "14211";
-    sha256 = "1rhrv7cyazb1d4gw3s8fv0c245iankvb9pqx6nngbkkxkcswvnw7";
+  src = fetchgit {
+    url = git://github.com/tianocore/edk2;
+    rev = "5bcb62a4098c9bde9be6af0833a025adc768e08d";
+    sha256 = "3e2958877061bf6bbfb28b150743d7244486929c1c320bdb1ff2586774aa042a";
   };
 
   buildInputs = [ libuuid pythonFull ];
diff --git a/pkgs/development/compilers/elm/elm.nix b/pkgs/development/compilers/elm/elm.nix
index 2c851ebbf3f..c9e9fb9e14b 100644
--- a/pkgs/development/compilers/elm/elm.nix
+++ b/pkgs/development/compilers/elm/elm.nix
@@ -1,17 +1,20 @@
-{ cabal, binary, blazeHtml, blazeMarkup, cmdargs, filepath, hjsmin
-, indents, mtl, pandoc, parsec, transformers, unionFind, uniplate
+{ cabal, aeson, aesonPretty, binary, blazeHtml, blazeMarkup
+, cmdargs, filepath, HTF, indents, languageEcmascript, mtl, pandoc
+, parsec, text, transformers, unionFind, uniplate
 }:
 
 cabal.mkDerivation (self: {
   pname = "Elm";
-  version = "0.9.0.2";
-  sha256 = "0yr395wsj0spi6h9d6lm5hvdryybpf8i1qpv4gz9dk0bwlyc8iwh";
+  version = "0.10.0.1";
+  sha256 = "1r7z2fw9v6ngr9w4lmj1l6sc78rmxvqkqlxv4a9yc5jm80k3ar0i";
   isLibrary = true;
   isExecutable = true;
   buildDepends = [
-    binary blazeHtml blazeMarkup cmdargs filepath hjsmin indents mtl
-    pandoc parsec transformers unionFind uniplate
+    aeson aesonPretty binary blazeHtml blazeMarkup cmdargs filepath
+    indents languageEcmascript mtl pandoc parsec text transformers
+    unionFind uniplate
   ];
+  testDepends = [ HTF ];
   doCheck = false;
   meta = {
     homepage = "http://elm-lang.org";
diff --git a/pkgs/development/compilers/ghc/6.10.1-binary.nix b/pkgs/development/compilers/ghc/6.10.1-binary.nix
index dd79ef9c8e7..e7d4d3c1946 100644
--- a/pkgs/development/compilers/ghc/6.10.1-binary.nix
+++ b/pkgs/development/compilers/ghc/6.10.1-binary.nix
@@ -36,10 +36,10 @@ stdenv.mkDerivation rec {
      ''
       mkdir "$TMP/bin"
       for i in strip; do
-        echo '#!/bin/sh' >> "$TMP/bin/$i"
+        echo '#! ${stdenv.shell}' > "$TMP/bin/$i"
         chmod +x "$TMP/bin/$i"
-        PATH="$TMP/bin:$PATH"
       done
+      PATH="$TMP/bin:$PATH"
      '' +
     # On Linux, use patchelf to modify the executables so that they can
     # find editline/gmp.
diff --git a/pkgs/development/compilers/ghc/6.10.2-binary.nix b/pkgs/development/compilers/ghc/6.10.2-binary.nix
index 7effff83c69..5af89e38c21 100644
--- a/pkgs/development/compilers/ghc/6.10.2-binary.nix
+++ b/pkgs/development/compilers/ghc/6.10.2-binary.nix
@@ -30,10 +30,10 @@ stdenv.mkDerivation rec {
      ''
       mkdir "$TMP/bin"
       for i in strip; do
-        echo '#!/bin/sh' >> "$TMP/bin/$i"
+        echo '#! ${stdenv.shell}' > "$TMP/bin/$i"
         chmod +x "$TMP/bin/$i"
-        PATH="$TMP/bin:$PATH"
       done
+      PATH="$TMP/bin:$PATH"
      '' +
     # On Linux, use patchelf to modify the executables so that they can
     # find editline/gmp.
diff --git a/pkgs/development/compilers/ghc/6.12.1-binary.nix b/pkgs/development/compilers/ghc/6.12.1-binary.nix
index 6f3411da4af..da4658c3829 100644
--- a/pkgs/development/compilers/ghc/6.12.1-binary.nix
+++ b/pkgs/development/compilers/ghc/6.12.1-binary.nix
@@ -28,10 +28,10 @@ stdenv.mkDerivation rec {
      ''
       mkdir "$TMP/bin"
       for i in strip; do
-        echo '#!/bin/sh' >> "$TMP/bin/$i"
+        echo '#! ${stdenv.shell}' > "$TMP/bin/$i"
         chmod +x "$TMP/bin/$i"
-        PATH="$TMP/bin:$PATH"
       done
+      PATH="$TMP/bin:$PATH"
      '' +
     # We have to patch the GMP paths for the integer-gmp package.
      ''
diff --git a/pkgs/development/compilers/ghc/7.0.4-binary.nix b/pkgs/development/compilers/ghc/7.0.4-binary.nix
index 455d552b91a..2c9b11f2b65 100644
--- a/pkgs/development/compilers/ghc/7.0.4-binary.nix
+++ b/pkgs/development/compilers/ghc/7.0.4-binary.nix
@@ -38,10 +38,10 @@ stdenv.mkDerivation rec {
      ''
       mkdir "$TMP/bin"
       for i in strip; do
-        echo '#!/bin/sh' >> "$TMP/bin/$i"
+        echo '#! ${stdenv.shell}' > "$TMP/bin/$i"
         chmod +x "$TMP/bin/$i"
-        PATH="$TMP/bin:$PATH"
       done
+      PATH="$TMP/bin:$PATH"
      '' +
     # We have to patch the GMP paths for the integer-gmp package.
      ''
diff --git a/pkgs/development/compilers/ghc/7.4.2-binary.nix b/pkgs/development/compilers/ghc/7.4.2-binary.nix
index 59eb957a45f..7000081e5db 100644
--- a/pkgs/development/compilers/ghc/7.4.2-binary.nix
+++ b/pkgs/development/compilers/ghc/7.4.2-binary.nix
@@ -38,10 +38,10 @@ stdenv.mkDerivation rec {
      ''
       mkdir "$TMP/bin"
       for i in strip; do
-        echo '#!/bin/sh' >> "$TMP/bin/$i"
+        echo '#! ${stdenv.shell}' > "$TMP/bin/$i"
         chmod +x "$TMP/bin/$i"
-        PATH="$TMP/bin:$PATH"
       done
+      PATH="$TMP/bin:$PATH"
      '' +
     # We have to patch the GMP paths for the integer-gmp package.
      ''
diff --git a/pkgs/development/compilers/ghc/7.4.2.nix b/pkgs/development/compilers/ghc/7.4.2.nix
index 51f3f7f9df4..0bc2a855306 100644
--- a/pkgs/development/compilers/ghc/7.4.2.nix
+++ b/pkgs/development/compilers/ghc/7.4.2.nix
@@ -22,6 +22,7 @@ stdenv.mkDerivation rec {
   preConfigure = ''
     echo "${buildMK}" > mk/build.mk
     sed -i -e 's|-isysroot /Developer/SDKs/MacOSX10.5.sdk||' configure
+    export NIX_LDFLAGS="$NIX_LDFLAGS -rpath $out/lib/ghc-${version}"
   '';
 
   configureFlags=[
diff --git a/pkgs/development/compilers/ghc/7.6.3.nix b/pkgs/development/compilers/ghc/7.6.3.nix
index dc3a912a34a..427d21660b8 100644
--- a/pkgs/development/compilers/ghc/7.6.3.nix
+++ b/pkgs/development/compilers/ghc/7.6.3.nix
@@ -22,11 +22,10 @@ stdenv.mkDerivation rec {
   preConfigure = ''
     echo "${buildMK}" > mk/build.mk
     sed -i -e 's|-isysroot /Developer/SDKs/MacOSX10.5.sdk||' configure
+    export NIX_LDFLAGS="$NIX_LDFLAGS -rpath $out/lib/ghc-${version}"
   '';
 
-  configureFlags = [
-    "--with-gcc=${stdenv.gcc}/bin/gcc"
-  ];
+  configureFlags = "--with-gcc=${stdenv.gcc}/bin/gcc";
 
   # required, because otherwise all symbols from HSffi.o are stripped, and
   # that in turn causes GHCi to abort
diff --git a/pkgs/development/compilers/ghc/head.nix b/pkgs/development/compilers/ghc/head.nix
index c9cd71fc2b5..e7483700ab0 100644
--- a/pkgs/development/compilers/ghc/head.nix
+++ b/pkgs/development/compilers/ghc/head.nix
@@ -1,12 +1,12 @@
 { stdenv, fetchurl, ghc, perl, gmp, ncurses }:
 
 stdenv.mkDerivation rec {
-  version = "7.7.20130816";
+  version = "7.7.20130828";
   name = "ghc-${version}";
 
   src = fetchurl {
     url = "http://darcs.haskell.org/ghcBuilder/uploads/tn23/${name}-src.tar.bz2";
-    sha256 = "0w636gfjn3xigrlj31z4hy9kv44svyifsqcshrq95qxijx396j5m";
+    sha256 = "180nkd77kz3mv4g7yq8ipx34p5q8k714l0z2527y49lghy118jzv";
   };
 
   buildInputs = [ ghc perl gmp ncurses ];
@@ -22,6 +22,7 @@ stdenv.mkDerivation rec {
   preConfigure = ''
     echo "${buildMK}" > mk/build.mk
     sed -i -e 's|-isysroot /Developer/SDKs/MacOSX10.5.sdk||' configure
+    export NIX_LDFLAGS="$NIX_LDFLAGS -rpath $out/lib/ghc-${version}"
   '';
 
   configureFlags = "--with-gcc=${stdenv.gcc}/bin/gcc";
diff --git a/pkgs/development/compilers/ghc/with-packages.nix b/pkgs/development/compilers/ghc/with-packages.nix
index e3cc71bbccf..b32b12d5b95 100644
--- a/pkgs/development/compilers/ghc/with-packages.nix
+++ b/pkgs/development/compilers/ghc/with-packages.nix
@@ -1,127 +1,42 @@
-{stdenv, ghc, packages ? [], makeWrapper}:
+{ stdenv, ghc, packages, buildEnv, makeWrapper }:
 
-stdenv.mkDerivation rec {
-  name = "haskell-env-${ghc.name}";
-
-  allPackages = stdenv.lib.closePropagation packages;
-  buildInputs = allPackages ++ [makeWrapper];
-  propagatedBuildInputs = packages;
-
-  unpackPhase = "true";
-
-  installPhase = ''
-    numversion=$(${ghc}/bin/ghc --numeric-version)
-    majorversion=''${numversion%%.*}
-    minorversion=''${numversion#*.}
-    minorversion=''${minorversion%%.*}
-
-    if [[ $majorversion -gt 6 ]] && [[ $minorversion -gt 4 ]]; then
-      globalConf="--global-package-db"
-    else
-      globalConf="--global-conf"
-    fi
-
-    originalTopDir="${ghc}/lib/ghc-${ghc.version}"
-    originalPkgDir="$originalTopDir/package.conf.d"
-    linkedTopDir="$out/lib"
-    linkedPkgDir="$linkedTopDir/package.conf.d"
-
-    mkdir -p $out/bin
-    mkdir -p $linkedTopDir
-    mkdir -p $linkedPkgDir
-
-    echo "Linking GHC core libraries:"
-
-    echo -n "Linking $originalTopDir "
-    for f in "$originalTopDir/"*; do
-      if test -f $f; then
-        ln -s $f $linkedTopDir
-        echo -n .
-      fi
-    done
-    echo
+assert packages != [];
 
-    echo -n "Linking $originalPkgDir "
-    for f in "$originalPkgDir/"*.conf; do
-      ln -s $f $linkedPkgDir
-      echo -n .
-    done
-    echo
-
-    echo "Linking selected packages and dependencies:"
-
-    for currentPath in ${stdenv.lib.concatStringsSep " " allPackages}; do
-      currentPkgDir="$currentPath/lib/ghc-pkgs/ghc-${ghc.version}"
-      # Check if current path is a Cabal package for the current GHC
-      if test -d $currentPkgDir; then
-        echo -n "Linking $currentPath "
-        for f in "$currentPath/bin/"*; do
-          ln -s $f $out/bin
-          echo -n .
-        done
-        for f in "$currentPath/etc/bash_completion.d/"*; do
-          mkdir -p $out/etc/bash_completion.d
-          ln -s $f $out/etc/bash_completion.d/
-          echo -n .
-        done
-        for s in 1 2 3 4 5 6 7 8 9; do
-          for f in "$currentPath/share/man/man$s/"*; do
-            mkdir -p $out/share/man/man$s
-            ln -sv $f $out/share/man/man$s/
-            echo -n .
-          done
-        done
-        for f in "$currentPath/share/emacs/site-lisp/"*; do
-          mkdir -p $out/share/emacs/site-lisp
-          ln -s $f $out/share/emacs/site-lisp/
-          echo -n .
-        done
-        for f in "$currentPath/share/ghci/"*; do
-          mkdir -p $out/share/ghci
-          ln -s $f $out/share/ghci/
-          echo -n .
-        done
-        for f in "$currentPkgDir/"*.conf; do
-          ln -s $f $linkedPkgDir
-          echo -n .
-        done
-        echo
-      fi
-    done
-
-    echo -n "Generating package cache "
-    ${ghc}/bin/ghc-pkg $globalConf $linkedPkgDir recache
-    echo .
-
-    echo -n "Generating wrappers "
+let
+  ghc761OrLater = stdenv.lib.versionOlder "7.6.1" ghc.version;
+  packageDBFlag = if ghc761OrLater then "--package-db" else "--package-conf";
+  libDir        = "$out/lib/ghc-${ghc.version}";
+  packageCfgDir = "${libDir}/package.conf.d";
+in
+buildEnv {
+  name = "haskell-env-${ghc.name}";
+  paths = stdenv.lib.filter (x: x ? ghc) (stdenv.lib.closePropagation packages) ++ [ghc];
+  postBuild = ''
+    . ${makeWrapper}/nix-support/setup-hook
 
     for prg in ghc ghci ghc-${ghc.version} ghci-${ghc.version}; do
-      # The NIX env-vars are picked up by our patched version of ghc-paths.
-      makeWrapper ${ghc}/bin/$prg $out/bin/$prg \
-        --add-flags "-B$linkedTopDir" \
-        --set "NIX_GHC"        "$out/bin/ghc"     \
-        --set "NIX_GHCPKG"     "$out/bin/ghc-pkg" \
-        --set "NIX_GHC_LIBDIR" "$linkedTopDir"
-      echo -n .
+      rm -f $out/bin/$prg
+      makeWrapper ${ghc}/bin/$prg $out/bin/$prg         \
+        --add-flags '"-B$NIX_GHC_LIBDIR"'               \
+        --set "NIX_GHC"        "$out/bin/ghc"           \
+        --set "NIX_GHCPKG"     "$out/bin/ghc-pkg"       \
+        --set "NIX_GHC_LIBDIR" "${libDir}"
     done
 
     for prg in runghc runhaskell; do
-      makeWrapper ${ghc}/bin/$prg $out/bin/$prg --add-flags "-f $out/bin/ghc"
-      echo -n .
+      rm -f $out/bin/$prg
+      makeWrapper ${ghc}/bin/$prg $out/bin/$prg         \
+        --add-flags "-f $out/bin/ghc"                   \
+        --set "NIX_GHC"        "$out/bin/ghc"           \
+        --set "NIX_GHCPKG"     "$out/bin/ghc-pkg"       \
+        --set "NIX_GHC_LIBDIR" "${libDir}"
     done
 
     for prg in ghc-pkg ghc-pkg-${ghc.version}; do
-      makeWrapper ${ghc}/bin/$prg $out/bin/$prg --add-flags "$globalConf $linkedPkgDir"
-      echo -n .
+      rm -f $out/bin/$prg
+      makeWrapper ${ghc}/bin/$prg $out/bin/$prg --add-flags "${packageDBFlag} ${packageCfgDir}"
     done
 
-    for prg in hp2ps hpc hasktags hsc2hs haddock haddock-${ghc.version}; do
-      if test -x ${ghc}/bin/$prg -a ! -x $out/bin/$prg; then
-        ln -s ${ghc}/bin/$prg $out/bin/$prg && echo -n .
-      fi
-    done
-    echo
+    $out/bin/ghc-pkg recache
   '';
-
-  meta = ghc.meta;
 }
diff --git a/pkgs/development/compilers/ghc/wrapper.nix b/pkgs/development/compilers/ghc/wrapper.nix
index 55fd16be5ed..bcfbd49b98a 100644
--- a/pkgs/development/compilers/ghc/wrapper.nix
+++ b/pkgs/development/compilers/ghc/wrapper.nix
@@ -1,10 +1,53 @@
-{ stdenv, ghc, makeWrapper, coreutils, forUserEnv ? false }:
+{ stdenv, ghc, makeWrapper, coreutils, writeScript }:
 
 let
   ghc761OrLater = !stdenv.lib.versionOlder ghc.version "7.6.1";
   packageDBFlag = if ghc761OrLater then "-package-db" else "-package-conf";
+
+  GHCGetPackages = writeScript "ghc-get-packages.sh" ''
+    #! ${stdenv.shell}
+    # Usage:
+    #  $1: version of GHC
+    #  $2: invocation path of GHC
+    #  $3: prefix
+    version="$1"
+    if test -z "$3"; then
+      prefix="${packageDBFlag} "
+    else
+      prefix="$3"
+    fi
+    PATH="$2:$PATH"
+    IFS=":"
+    for p in $PATH; do
+      PkgDir="$p/../lib/ghc-$version/package.conf.d"
+      for i in "$PkgDir/"*.installedconf; do
+        # output takes place here
+        test -f $i && echo -n " $prefix$i"
+      done
+    done
+    test -f "$2/../lib/ghc-$version/package.conf" && echo -n " $prefix$2/../lib/ghc-$version/package.conf"
+  '';
+
+  GHCPackages = writeScript "ghc-packages.sh" ''
+    #! ${stdenv.shell} -e
+    declare -A GHC_PACKAGES_HASH # using bash4 hashs to get uniq paths
+
+    for arg in $(${GHCGetPackages} ${ghc.version} "$(dirname $0)"); do
+      case "$arg" in
+        ${packageDBFlag}) ;;
+        *)
+          CANONICALIZED="$(${coreutils}/bin/readlink -f -- "$arg")"
+          GHC_PACKAGES_HASH["$CANONICALIZED"]= ;;
+      esac
+    done
+
+    for path in ''${!GHC_PACKAGES_HASH[@]}; do
+      echo -n "$path:"
+    done
+  '';
+
 in
-stdenv.mkDerivation ({
+stdenv.mkDerivation {
   name = "ghc-${ghc.version}-wrapper";
 
   buildInputs = [makeWrapper];
@@ -12,53 +55,32 @@ stdenv.mkDerivation ({
 
   unpackPhase = "true";
   installPhase = ''
+    runHook preInstall
+
     mkdir -p $out/bin
-    cp $GHCGetPackages $out/bin/ghc-get-packages.sh
-    chmod 755 $out/bin/ghc-get-packages.sh
     for prg in ghc ghci ghc-${ghc.version} ghci-${ghc.version}; do
-      makeWrapper $ghc/bin/$prg $out/bin/$prg --add-flags "\$($out/bin/ghc-get-packages.sh ${ghc.version} \"\$(dirname \$0)\")"
+      makeWrapper $ghc/bin/$prg $out/bin/$prg --add-flags "\$(${GHCGetPackages} ${ghc.version} \"\$(dirname \$0)\")"
     done
     for prg in runghc runhaskell; do
-      makeWrapper $ghc/bin/$prg $out/bin/$prg --add-flags "\$($out/bin/ghc-get-packages.sh ${ghc.version} \"\$(dirname \$0)\" \" ${packageDBFlag} --ghc-arg=\")"
+      makeWrapper $ghc/bin/$prg $out/bin/$prg --add-flags "\$(${GHCGetPackages} ${ghc.version} \"\$(dirname \$0)\" \" ${packageDBFlag} --ghc-arg=\")"
     done
     for prg in ghc-pkg ghc-pkg-${ghc.version}; do
-      makeWrapper $ghc/bin/$prg $out/bin/$prg --add-flags "\$($out/bin/ghc-get-packages.sh ${ghc.version} \"\$(dirname \$0)\" -${packageDBFlag}=)"
+      makeWrapper $ghc/bin/$prg $out/bin/$prg --add-flags "\$(${GHCGetPackages} ${ghc.version} \"\$(dirname \$0)\" -${packageDBFlag}=)"
     done
     for prg in hp2ps hpc hasktags hsc2hs; do
       test -x $ghc/bin/$prg && ln -s $ghc/bin/$prg $out/bin/$prg
     done
-    cat >> $out/bin/ghc-packages << EOF
-    #! /bin/bash -e
-    declare -A GHC_PACKAGES_HASH # using bash4 hashs to get uniq paths
-
-    for arg in \$($out/bin/ghc-get-packages.sh ${ghc.version} \"\$(dirname \$0)\"); do
-      case "\$arg" in
-        ${packageDBFlag}) ;;
-        *)
-          CANONICALIZED="\$(${stdenv.lib.optionalString stdenv.isDarwin "${coreutils}/bin/"}readlink -f "\$arg")"
-          GHC_PACKAGES_HASH["\$CANONICALIZED"]= ;;
-      esac
-    done
 
-    for path in \''${!GHC_PACKAGES_HASH[@]}; do
-      echo -n "\$path:"
-    done
-    EOF
-    chmod +x $out/bin/ghc-packages
     mkdir -p $out/nix-support
     ln -s $out/nix-support/propagated-build-inputs $out/nix-support/propagated-user-env-packages
-  '';
 
-  GHCGetPackages = ./ghc-get-packages.sh;
+    mkdir -p $out/share/doc
+    ln -s $ghc/lib $out/lib
+    ln -s $ghc/share/doc/ghc $out/share/doc/ghc-${ghc.version}
+
+    runHook postInstall
+  '';
 
-  inherit ghc;
-  inherit (ghc) meta;
-  ghcVersion = ghc.version;
-} // (stdenv.lib.optionalAttrs ghc761OrLater { preFixup = "sed -i -e 's|-package-conf|${packageDBFlag}|' $out/bin/ghc-get-packages.sh"; })
-  // (stdenv.lib.optionalAttrs forUserEnv {
-       postFixup= ''
-         ln -s $ghc/lib $out/lib;
-         mkdir -p $out/share/doc
-         ln -s $ghc/share/doc/ghc $out/share/doc/ghc-${ghc.version}
-       '';
-     }))
+  inherit ghc GHCGetPackages GHCPackages;
+  inherit (ghc) meta version;
+}
diff --git a/pkgs/development/compilers/go/1.1-darwin.nix b/pkgs/development/compilers/go/1.1-darwin.nix
new file mode 100644
index 00000000000..2cbb8d49611
--- /dev/null
+++ b/pkgs/development/compilers/go/1.1-darwin.nix
@@ -0,0 +1,74 @@
+{ stdenv, fetchurl, bison, bash, makeWrapper }:
+
+stdenv.mkDerivation {
+  name = "go-1.1.2";
+
+  src = fetchurl {
+    url = http://go.googlecode.com/files/go1.1.2.src.tar.gz;
+    sha256 = "0w7bchhb4b053az3wjp6z342rs9lp9nxf4w2mnfd1b89d6sb7izz";
+  };
+
+  buildInputs = [ bison bash makeWrapper ];
+
+  preUnpack = ''
+    mkdir -p $out/share
+    cd $out/share
+  '';
+
+  prePatch = ''
+    cd ..
+    if [ ! -d go ]; then
+      mv * go
+    fi
+    cd go
+
+    patchShebangs ./ # replace /bin/bash
+    rm src/pkg/net/{multicast_test.go,parse_test.go,port_test.go}
+    # The os test wants to read files in an existing path. Just it don't be /usr/bin.
+    sed -i 's,/usr/bin,'"`pwd`", src/pkg/os/os_test.go
+    sed -i 's,/bin/pwd,'"`type -P pwd`", src/pkg/os/os_test.go
+    # Disable some tests
+    sed -i '/TestHostname/areturn' src/pkg/os/os_test.go
+    sed -i '/TestShutdownUnix/areturn' src/pkg/net/net_test.go
+
+  '';
+
+  # Unfortunately we have to use Mac OS X's own GCC
+  preBuild = ''
+    export PATH=/usr/bin:$PATH
+  '';
+
+  #patches = [ ./cacert.patch ];
+
+  GOOS = "darwin";
+  GOARCH = if stdenv.system == "x86_64-darwin" then "amd64" else "386";
+
+  installPhase = ''
+    mkdir -p "$out/bin"
+    export GOROOT="$(pwd)/"
+    export GOBIN="$out/bin"
+    export PATH="$GOBIN:$PATH"
+    cd ./src
+    ./all.bash
+    cd -
+
+    # Wrap the tools to define the location of the
+    # libraries.
+    for a in go gofmt godoc; do
+	    wrapProgram "$out/bin/$a" \
+	      --set "GOROOT" $out/share/go
+    done
+
+    # Copy the emacs configuration for Go files.
+    mkdir -p "$out/share/emacs/site-lisp"
+    cp ./misc/emacs/* $out/share/emacs/site-lisp/
+  '';
+
+  meta = {
+    homepage = http://golang.org/;
+    description = "The Go Programming language";
+    license = "BSD";
+    maintainers = with stdenv.lib.maintainers; [ zef ];
+    platforms = stdenv.lib.platforms.darwin;
+  };
+}
diff --git a/pkgs/development/compilers/go/1.1.nix b/pkgs/development/compilers/go/1.1.nix
index 5aeb053e110..dfb545bb368 100644
--- a/pkgs/development/compilers/go/1.1.nix
+++ b/pkgs/development/compilers/go/1.1.nix
@@ -1,4 +1,5 @@
-{ stdenv, fetchurl, bison, glibc, bash, coreutils, makeWrapper, tzdata, iana_etc }:
+{ stdenv, fetchurl, bison, glibc, bash, coreutils, makeWrapper, tzdata, iana_etc
+, removeGodocExternals ? false }:
 
 let
   loader386 = "${glibc}/lib/ld-linux.so.2";
@@ -50,6 +51,8 @@ stdenv.mkDerivation {
     sed -i 's,/bin/pwd,'"`type -P pwd`", src/pkg/os/os_test.go
     # Disable the hostname test
     sed -i '/TestHostname/areturn' src/pkg/os/os_test.go
+  '' + stdenv.lib.optionalString removeGodocExternals ''
+    sed -i -e '/googleapi/d' -e '/javascript">$/,+6d' lib/godoc/godoc.html 
   '';
 
   patches = [ ./cacert.patch ];
diff --git a/pkgs/development/compilers/gwt/2.4.0.nix b/pkgs/development/compilers/gwt/2.4.0.nix
index c5c7841d72a..65208b062c2 100644
--- a/pkgs/development/compilers/gwt/2.4.0.nix
+++ b/pkgs/development/compilers/gwt/2.4.0.nix
@@ -18,6 +18,6 @@ stdenv.mkDerivation {
 
   meta = {
     homepage = http://code.google.com/webtoolkit/;
-    description = "Google Web Toolkit (GWT) is a development toolkit for building and optimizing complex browser-based applications.";
+    description = "Google Web Toolkit (GWT) is a development toolkit for building and optimizing complex browser-based applications";
   };
 }
diff --git a/pkgs/development/compilers/idris/default.nix b/pkgs/development/compilers/idris/default.nix
index e36924f63fe..30ef18a1ef9 100644
--- a/pkgs/development/compilers/idris/default.nix
+++ b/pkgs/development/compilers/idris/default.nix
@@ -1,20 +1,24 @@
-{ cabal, binary, Cabal, filepath, gmp, happy, haskeline
-, languageJava, libffi, llvmGeneral, mtl, parsec, split, text
-, transformers, vector, vectorBinaryInstances, boehmgc
+{ cabal, ansiTerminal, ansiWlPprint, binary, boehmgc, Cabal
+, filepath, gmp, happy, haskeline, languageJava, libffi
+, llvmGeneral, llvmGeneralPure, mtl, parsec, parsers, split, text
+, time, transformers, trifecta, unorderedContainers, utf8String
+, vector, vectorBinaryInstances
 }:
 
 cabal.mkDerivation (self: {
   pname = "idris";
-  version = "0.9.9";
-  sha256 = "0wwssgpiyn7akyfrpi1khvqxx1k8753kk7151zvvymz0zkks643m";
+  version = "0.9.9.3";
+  sha256 = "1l19xx0xbcwlnnh2w0rmri7wwixffzfrafpbji64nwyx1awz4iab";
   isLibrary = false;
   isExecutable = true;
   buildDepends = [
-    binary Cabal filepath haskeline languageJava libffi llvmGeneral mtl
-    parsec split text transformers vector vectorBinaryInstances
+    ansiTerminal ansiWlPprint binary Cabal filepath haskeline
+    languageJava libffi llvmGeneral llvmGeneralPure mtl parsec parsers
+    split text time transformers trifecta unorderedContainers
+    utf8String vector vectorBinaryInstances
   ];
   buildTools = [ happy ];
-  extraLibraries = [ gmp boehmgc ];
+  extraLibraries = [ boehmgc gmp ];
   meta = {
     homepage = "http://www.idris-lang.org/";
     description = "Functional Programming Language with Dependent Types";
diff --git a/pkgs/development/compilers/jdk/dlj-bundle-builder.sh b/pkgs/development/compilers/jdk/dlj-bundle-builder.sh
index cf59a28164b..028164ac395 100644
--- a/pkgs/development/compilers/jdk/dlj-bundle-builder.sh
+++ b/pkgs/development/compilers/jdk/dlj-bundle-builder.sh
@@ -37,6 +37,11 @@ else
   jrePath=$out/jre
 fi
 
+if test -n "$jce"; then
+  unzip $jce
+  cp -v jce/*.jar $jrePath/lib/security
+fi
+
 rpath=$rpath${rpath:+:}$jrePath/lib/$architecture/jli
 
 # set all the dynamic linkers
diff --git a/pkgs/development/compilers/jdk/jdk6-linux.nix b/pkgs/development/compilers/jdk/jdk6-linux.nix
index 340bbdf91ac..97ec6b56305 100644
--- a/pkgs/development/compilers/jdk/jdk6-linux.nix
+++ b/pkgs/development/compilers/jdk/jdk6-linux.nix
@@ -6,6 +6,7 @@
 , xlibs ? null
 , installjdk ? true
 , pluginSupport ? true
+, installjce ? false
 }:
 
 assert stdenv.system == "i686-linux" || stdenv.system == "x86_64-linux";
@@ -24,6 +25,15 @@ let
     else
       abort "jdk requires i686-linux or x86_64 linux";
 
+  jce =
+    if installjce then
+      requireFile {
+        name = "jce_policy-6.zip";
+        url = http://www.oracle.com/technetwork/java/javase/downloads/jce-6-download-429243.html;
+        sha256 = "0qljzfxbikm8br5k7rkamibp1vkyjrf6blbxpx6hn4k46f62bhnh";
+      }
+    else
+      null;
 in
 
 stdenv.mkDerivation {
@@ -65,7 +75,7 @@ stdenv.mkDerivation {
     [stdenv.gcc.libc] ++
     (if swingSupport then [xlibs.libX11 xlibs.libXext xlibs.libXtst xlibs.libXi xlibs.libXp xlibs.libXt] else []);
 
-  inherit swingSupport pluginSupport architecture;
+  inherit swingSupport pluginSupport architecture jce;
   inherit (xlibs) libX11;
 
   mozillaPlugin = if installjdk then "/jre/lib/${architecture}/plugins" else "/lib/${architecture}/plugins";
diff --git a/pkgs/development/compilers/julia/default.nix b/pkgs/development/compilers/julia/default.nix
index 3e45fc6d5e3..ae550f5692d 100644
--- a/pkgs/development/compilers/julia/default.nix
+++ b/pkgs/development/compilers/julia/default.nix
@@ -8,7 +8,7 @@ let
 in
 stdenv.mkDerivation rec {
   pname = "julia";
-  date = "20130611";
+  date = "20131013";
   name = "${pname}-git-${date}";
 
   grisu_ver = "1.1.1";
@@ -65,8 +65,8 @@ stdenv.mkDerivation rec {
 
   src = fetchgit {
     url = "git://github.com/JuliaLang/julia.git";
-    rev = "60cc4e44bf415dcda90f2bbe22300f842fe44098";
-    sha256 = "018s0zyvdkxjldbvcdv40q3v2gcjznyyql5pv3zhhy1iq11jddfz";
+    rev = "76d2b87a45fff637473c4c342c9f5f9387675fda";
+    sha256 = "079g44r27lv0wsfbg84ihrmgzl73djjjr41xjiaqdph55zqfbn4f";
   };
 
   buildInputs = [ gfortran perl m4 gmp pcre llvm readline zlib
@@ -131,7 +131,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = {
-    description = "High-level performance-oriented dynamical language for technical computing.";
+    description = "High-level performance-oriented dynamical language for technical computing";
     homepage = "http://julialang.org/";
     license = stdenv.lib.licenses.mit;
     maintainers = [ stdenv.lib.maintainers.raskin ];
diff --git a/pkgs/development/compilers/mlton/default.nix b/pkgs/development/compilers/mlton/default.nix
index 770a6b17b15..a5ff613a9b4 100644
--- a/pkgs/development/compilers/mlton/default.nix
+++ b/pkgs/development/compilers/mlton/default.nix
@@ -77,7 +77,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = {
-    description = "MLton is an open-source, whole-program, optimizing Standard ML compiler.";
+    description = "Open-source, whole-program, optimizing Standard ML compiler";
     longDescription = ''
       MLton is an open source, whole-program optimizing compiler for the Standard ML programming language.
       MLton aims to produce fast executables, and to encourage rapid prototyping and modular programming
diff --git a/pkgs/development/compilers/ocaml/4.01.0.nix b/pkgs/development/compilers/ocaml/4.01.0.nix
new file mode 100644
index 00000000000..c11bb7536be
--- /dev/null
+++ b/pkgs/development/compilers/ocaml/4.01.0.nix
@@ -0,0 +1,63 @@
+{ stdenv, fetchurl, ncurses, x11 }:
+
+let
+   useX11 = !stdenv.isArm && !stdenv.isMips;
+   useNativeCompilers = !stdenv.isMips;
+   inherit (stdenv.lib) optionals optionalString;
+in
+
+stdenv.mkDerivation rec {
+
+  name = "ocaml-4.01.0";
+
+  src = fetchurl {
+    url = "http://caml.inria.fr/pub/distrib/ocaml-4.01/${name}.tar.bz2";
+    sha256 = "b1ca708994180236917ae79e17606da5bd334ca6acd6873a550027e1c0ec874a";
+  };
+
+  prefixKey = "-prefix ";
+  configureFlags = ["-no-tk"] ++ optionals useX11 [ "-x11lib" x11 ];
+  buildFlags = "world" + optionalString useNativeCompilers " bootstrap world.opt";
+  buildInputs = [ncurses] ++ optionals useX11 [ x11 ];
+  installTargets = "install" + optionalString useNativeCompilers " installopt";
+  preConfigure = ''
+    CAT=$(type -tp cat)
+    sed -e "s@/bin/cat@$CAT@" -i config/auto-aux/sharpbang
+  '';
+  postBuild = ''
+    mkdir -p $out/include
+    ln -sv $out/lib/ocaml/caml $out/include/caml
+  '';
+
+  passthru = {
+    nativeCompilers = useNativeCompilers;
+  };
+
+  meta = {
+    homepage = http://caml.inria.fr/ocaml;
+    licenses = [ "QPL" /* compiler */ "LGPLv2" /* library */ ];
+    description = "OCaml, the most popular variant of the Caml language";
+
+    longDescription =
+      ''
+        OCaml is the most popular variant of the Caml language.  From a
+        language standpoint, it extends the core Caml language with a
+        fully-fledged object-oriented layer, as well as a powerful module
+        system, all connected by a sound, polymorphic type system featuring
+        type inference.
+
+        The OCaml system is an industrial-strength implementation of this
+        language, featuring a high-performance native-code compiler (ocamlopt)
+        for 9 processor architectures (IA32, PowerPC, AMD64, Alpha, Sparc,
+        Mips, IA64, HPPA, StrongArm), as well as a bytecode compiler (ocamlc)
+        and an interactive read-eval-print loop (ocaml) for quick development
+        and portability.  The OCaml distribution includes a comprehensive
+        standard library, a replay debugger (ocamldebug), lexer (ocamllex) and
+        parser (ocamlyacc) generators, a pre-processor pretty-printer (camlp4)
+        and a documentation generator (ocamldoc).
+      '';
+
+    platforms = stdenv.lib.platforms.linux ++ stdenv.lib.platforms.darwin;
+  };
+
+}
diff --git a/pkgs/development/compilers/sbcl/default.nix b/pkgs/development/compilers/sbcl/default.nix
index 1e4feff1107..288fdb33454 100644
--- a/pkgs/development/compilers/sbcl/default.nix
+++ b/pkgs/development/compilers/sbcl/default.nix
@@ -4,11 +4,11 @@ let
   s= # Generated upstream information
   rec {
     baseName="sbcl";
-    version="1.1.8";
+    version="1.1.12";
     name="${baseName}-${version}";
-    hash="1fmcpsi2bddfpz3impm9i62y9p15r3mc4xgm1dg0k77l33859jip";
-    url="mirror://sourceforge/project/sbcl/sbcl/1.1.8/sbcl-1.1.8-source.tar.bz2";
-    sha256="1fmcpsi2bddfpz3impm9i62y9p15r3mc4xgm1dg0k77l33859jip";
+    hash="0mvl6lpi44yv6jv3xhyyzvf9g7bdlj691iz3ydpn66v0vg5i554c";
+    url="mirror://sourceforge/project/sbcl/sbcl/1.1.12/sbcl-1.1.12-source.tar.bz2";
+    sha256="0mvl6lpi44yv6jv3xhyyzvf9g7bdlj691iz3ydpn66v0vg5i554c";
   };
   buildInputs = with a; [
     clisp makeWrapper
diff --git a/pkgs/development/compilers/smlnj/default.nix b/pkgs/development/compilers/smlnj/default.nix
new file mode 100644
index 00000000000..b3a29a1e1c7
--- /dev/null
+++ b/pkgs/development/compilers/smlnj/default.nix
@@ -0,0 +1,66 @@
+{ stdenv, fetchurl }:
+let
+  version = "110.76";
+  baseurl = "http://smlnj.cs.uchicago.edu/dist/working/${version}";
+
+  sources = map fetchurl [
+    { url = "${baseurl}/config.tgz";              sha256 = "0mx5gib1jq5hl3j6gvkkfh60x2hx146xiisclaz4jgy452ywikj1"; }
+    { url = "${baseurl}/cm.tgz";                  sha256 = "14y1pqqw5p5va3rvpk2jddx2gcm37z5hwp5zdm43z02afscq37jk"; }
+    { url = "${baseurl}/compiler.tgz";            sha256 = "10gn7cwqzbnh4k3l6brb9hp59k9vz2m9fcaarv2fw1gilfw5a9rj"; }
+    { url = "${baseurl}/runtime.tgz";             sha256 = "0zqajizayzrlrxm47q492mqgfxya7rwqrq4faafai8qfwga6q27n"; }
+    { url = "${baseurl}/system.tgz";              sha256 = "0dys0f0cdgnivk1niam9g736c3mzrjf9r29051g0579an8yi8slg"; }
+    { url = "${baseurl}/MLRISC.tgz";              sha256 = "00n1zk65cwf2kf669mn09lp0ya6bfap1czhyq0nfza409vm4v54x"; }
+    { url = "${baseurl}/smlnj-lib.tgz";           sha256 = "1mx1vjxbpfgcq6fkmh2qirjfqzn3wcnjf4a9ijr7k2bwgnh99sc1"; }
+    { url = "${baseurl}/ckit.tgz";                sha256 = "1fqdxs2cgzffj0i9rmzv1aljwnhx98hyvj3c2kivw3ligxp4wly4"; }
+    { url = "${baseurl}/nlffi.tgz";               sha256 = "08dmvs95xmbas3hx7n0csxxl0d0bmhxg7gav1ay02gy9n8iw3g87"; }
+    { url = "${baseurl}/cml.tgz";                 sha256 = "1qc1hs2k2xmn03ldyz2zf0pzbryd1n4bwix226ch8z9pnfimglyb"; }
+    { url = "${baseurl}/eXene.tgz";               sha256 = "01z69rgmshh694wkcwrzi72z5d5glpijj7mqxb17yz106xyzmgim"; }
+    { url = "${baseurl}/ml-lpt.tgz";              sha256 = "13gw4197ivzvd6qcbg5pzclhv1f2jy2c433halh021d60qjv4w4r"; }
+    { url = "${baseurl}/ml-lex.tgz";              sha256 = "0sqa533zca1l7p79qhkb7lspvhk4k2r3839745sci32fzwy1804x"; }
+    { url = "${baseurl}/ml-yacc.tgz";             sha256 = "1kzi0dpybd9hkklk460mgbwfkixjhav225kkmwnk3jxby3zgflci"; }
+    { url = "${baseurl}/ml-burg.tgz";             sha256 = "0kjrba8l0v6jn3g6gv9dvrklpvxx9x57b7czwnrrd33pi28sv7fm"; }
+    { url = "${baseurl}/pgraph.tgz";              sha256 = "174n22m7zibgk68033qql86kyk6mxjni4j0kcadafs0g2xmh6i6z"; }
+    { url = "${baseurl}/trace-debug-profile.tgz"; sha256 = "1pq4wwx5ad7zx1306ka06lqwnjv446zz6ndpq6s9ak6ha79f2s9p"; }
+    { url = "${baseurl}/heap2asm.tgz";            sha256 = "0p91fzwkfr7hng7c026gy5ggl5l9isxpm007iq6ivpjrfjy547wc"; }
+    { url = "${baseurl}/smlnj-c.tgz";             sha256 = "0vra4gi91w0cjsw3rm162hgz5xsqbr7yds44q7zhs27kccsirpqc"; }
+    { url = "${baseurl}/boot.x86-unix.tgz";       sha256 = "0qcvdhlvpr02c1ssk4jz6175lb9pkdg7zrfscqz6f7crnsgmc5nx"; }
+  ];
+in stdenv.mkDerivation {
+  name = "smlnj-${version}";
+
+  inherit sources;
+
+  patchPhase = ''
+    sed -i '/PATH=/d' config/_arch-n-opsys base/runtime/config/gen-posix-names.sh
+    echo SRCARCHIVEURL="file:/$TMP" > config/srcarchiveurl
+  '';
+
+  unpackPhase = ''
+    for s in $sources; do
+      b=$(basename $s)
+      cp $s ''${b#*-}
+    done
+    unpackFile config.tgz
+    mkdir base
+    ./config/unpack $TMP runtime
+  '';
+
+  buildPhase = ''
+    ./config/install.sh
+  '';
+
+  installPhase = ''
+    mkdir -pv $out
+    cp -rv bin lib $out
+
+    for i in $out/bin/*; do
+      sed -i "2iSMLNJ_HOME=$out/" $i
+    done
+  '';
+
+  meta = {
+    description = "Standard ML of New Jersey, a compiler";
+    homepage = http://smlnj.org;
+    license = stdenv.lib.licenses.bsd3;
+  };
+}
diff --git a/pkgs/development/compilers/swi-prolog/default.nix b/pkgs/development/compilers/swi-prolog/default.nix
index e8db962d9c4..a2dae290f44 100644
--- a/pkgs/development/compilers/swi-prolog/default.nix
+++ b/pkgs/development/compilers/swi-prolog/default.nix
@@ -3,14 +3,14 @@
    fontconfig }:
 
 let
-  version = "6.2.6";
+  version = "6.4.1";
 in
 stdenv.mkDerivation {
   name = "swi-prolog-${version}";
 
   src = fetchurl {
     url = "http://www.swi-prolog.org/download/stable/src/pl-${version}.tar.gz";
-    sha256 = "0ii14ghmky91kkh017khahl00s4igkz03b5gy6y0vhv179sz04ll";
+    sha256 = "1szqqwypqfd0qr3sk0qlip1ar22kpqgba6b44klmr1aag0lrahs8";
   };
 
   buildInputs = [gmp readline openssl libjpeg unixODBC libXinerama
diff --git a/pkgs/development/compilers/uhc/default.nix b/pkgs/development/compilers/uhc/default.nix
index fa66306721d..31f45086ba0 100644
--- a/pkgs/development/compilers/uhc/default.nix
+++ b/pkgs/development/compilers/uhc/default.nix
@@ -4,7 +4,7 @@
 
 # this check won't be needed anymore after ghc-wrapper is fixed
 # to show ghc-builtin packages in "ghc-pkg list" output.
-let binaryIsBuiltIn = builtins.compareVersions "7.2.1" ghc.ghcVersion != 1;
+let binaryIsBuiltIn = builtins.compareVersions "7.2.1" ghc.version != 1;
 
 in stdenv.mkDerivation {
   name = "uhc-svn-git20120502";
diff --git a/pkgs/development/compilers/urweb/default.nix b/pkgs/development/compilers/urweb/default.nix
index 66b15e3499d..a2423bee9b9 100644
--- a/pkgs/development/compilers/urweb/default.nix
+++ b/pkgs/development/compilers/urweb/default.nix
@@ -32,7 +32,7 @@ stdenv.mkDerivation rec {
   dontDisableStatic = true;
 
   meta = {
-    description = "Ur/Web supports construction of dynamic web applications backed by SQL databases.";
+    description = "Construct dynamic web applications backed by SQL databases";
     longDescription = ''
       Ur is a programming language in the tradition of ML and Haskell, but
       featuring a significantly richer type system. Ur is functional, pure,
diff --git a/pkgs/development/compilers/yap/default.nix b/pkgs/development/compilers/yap/default.nix
index f9a48468df3..a29c0de65b8 100644
--- a/pkgs/development/compilers/yap/default.nix
+++ b/pkgs/development/compilers/yap/default.nix
@@ -1,16 +1,24 @@
-{ stdenv, fetchurl }:
-        
+{ stdenv, fetchurl, readline, gmp, zlib }:
+
 stdenv.mkDerivation rec {
-  name = "yap-5.1.1";
+  version = "6.2.2";
+  name = "yap-${version}";
 
   src = fetchurl {
-    url = "mirror://sourceforge/yap/Yap-5.1.1.tar.gz";
-    sha256 = "0bajxmlla9gay4m4l7y7x6qldxzi0jcq2ykgpjk9liky7g5kbnya";
+    url = "http://www.dcc.fc.up.pt/~vsc/Yap/${name}.tar.gz";
+    sha256 = "0l6p0vy667wws64cvwf74ssl6h9gypjzrsl3b2d32hs422186pzi";
   };
 
-  meta = { 
+  buildInputs = [ readline gmp zlib ];
+
+  configureFlags = "--enable-tabling=yes";
+
+  meta = {
+    homepage = "http://www.dcc.fc.up.pt/~vsc/Yap/";
     description = "Yap Prolog System is a ISO-compatible high-performance Prolog compiler";
-    homepage = http://yap.sourceforge.net/;
     license = "artistic";
+
+    maintainers = [ stdenv.lib.maintainers.simons ];
+    platforms = stdenv.lib.platforms.linux;
   };
 }
diff --git a/pkgs/development/interpreters/angelscript/default.nix b/pkgs/development/interpreters/angelscript/default.nix
index a092172c8ca..22f92f40183 100644
--- a/pkgs/development/interpreters/angelscript/default.nix
+++ b/pkgs/development/interpreters/angelscript/default.nix
@@ -47,7 +47,7 @@ rec {
   '' ["defEnsureDir" "prepareBuild"];
       
   meta = {
-    description = "A light-weight scripting library";
+    description = "Light-weight scripting library";
     maintainers = with a.lib.maintainers;
     [
       raskin
diff --git a/pkgs/development/interpreters/clisp/default.nix b/pkgs/development/interpreters/clisp/default.nix
index bd19d738860..b8af3f6d747 100644
--- a/pkgs/development/interpreters/clisp/default.nix
+++ b/pkgs/development/interpreters/clisp/default.nix
@@ -48,6 +48,11 @@ stdenv.mkDerivation rec {
     cd builddir
   '';
 
+  postInstall = ''
+    ./clisp-link add "$out"/lib/clisp*/base "$(dirname "$out"/lib/clisp*/base)"/full \
+        clx/new-clx bindings/glibc pcre rawsock wildcard zlib
+  '';
+
   NIX_CFLAGS_COMPILE="-O0";
 
   # TODO : make mod-check fails
diff --git a/pkgs/development/interpreters/elixir/default.nix b/pkgs/development/interpreters/elixir/default.nix
index 3ac2368342d..9eba4275dd3 100644
--- a/pkgs/development/interpreters/elixir/default.nix
+++ b/pkgs/development/interpreters/elixir/default.nix
@@ -29,9 +29,9 @@ stdenv.mkDerivation {
     done
   '';
 
-  meta = {
+  meta = with stdenv.lib; {
     homepage = "http://elixir-lang.org/";
-    description = "Elixir is a functional, meta-programming aware language built on top of the Erlang VM.";
+    description = "A functional, meta-programming aware language built on top of the Erlang VM";
 
     longDescription = ''
       Elixir is a functional, meta-programming
@@ -41,8 +41,8 @@ stdenv.mkDerivation {
       fault-tolerant applications with hot code upgrades.p
     '';
 
-    platforms = stdenv.lib.platforms.linux;
-
-    maintainers = [ stdenv.lib.maintainers.the-kenny ];
+    license = licenses.epl10;
+    platforms = platforms.linux;
+    maintainers = [ maintainers.the-kenny ];
   };
 }
diff --git a/pkgs/development/interpreters/falcon/default.nix b/pkgs/development/interpreters/falcon/default.nix
index 9800e895400..0b4bfacb6de 100644
--- a/pkgs/development/interpreters/falcon/default.nix
+++ b/pkgs/development/interpreters/falcon/default.nix
@@ -29,6 +29,6 @@ rec {
 
   name = "falcon-" + version;
   meta = {
-    description = "A programming language. Has macros and syntax at once.";
+    description = "Programming language with macros and syntax at once";
   };
 }
diff --git a/pkgs/development/interpreters/hiphopvm/default.nix b/pkgs/development/interpreters/hiphopvm/default.nix
index 57e3e93c646..c18c81caff0 100644
--- a/pkgs/development/interpreters/hiphopvm/default.nix
+++ b/pkgs/development/interpreters/hiphopvm/default.nix
@@ -56,7 +56,7 @@ stdenv.mkDerivation {
   patches = [./tbb.patch];
 
   meta = {
-    description = "HipHop is a high performance PHP toolchain.";
+    description = "High performance PHP toolchain";
     homepage = https://github.com/facebook/hiphop-php;
     platforms = ["x86_64-linux"];
   };
diff --git a/pkgs/development/interpreters/lua-4/default.nix b/pkgs/development/interpreters/lua-4/default.nix
index a95e4e4c35e..13f7964769c 100644
--- a/pkgs/development/interpreters/lua-4/default.nix
+++ b/pkgs/development/interpreters/lua-4/default.nix
@@ -14,7 +14,7 @@ stdenv.mkDerivation {
 
   meta = {
     homepage = "http://www.lua.org";
-    description = "Lua is a powerful, fast, lightweight, embeddable scripting language.";
+    description = "Powerful, fast, lightweight, embeddable scripting language";
     longDescription = ''
       Lua combines simple procedural syntax with powerful data
       description constructs based on associative arrays and extensible
diff --git a/pkgs/development/interpreters/lua-5/5.0.3.nix b/pkgs/development/interpreters/lua-5/5.0.3.nix
index ff2a8140191..eae2d82d5d0 100644
--- a/pkgs/development/interpreters/lua-5/5.0.3.nix
+++ b/pkgs/development/interpreters/lua-5/5.0.3.nix
@@ -15,7 +15,7 @@ stdenv.mkDerivation {
 
   meta = {
     homepage = "http://www.lua.org";
-    description = "Lua is a powerful, fast, lightweight, embeddable scripting language.";
+    description = "Powerful, fast, lightweight, embeddable scripting language";
     longDescription = ''
       Lua combines simple procedural syntax with powerful data
       description constructs based on associative arrays and extensible
diff --git a/pkgs/development/interpreters/lua-5/5.1.nix b/pkgs/development/interpreters/lua-5/5.1.nix
index 8b1e1529095..2923a8f960d 100644
--- a/pkgs/development/interpreters/lua-5/5.1.nix
+++ b/pkgs/development/interpreters/lua-5/5.1.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, readline}:
+{ stdenv, fetchurl, readline }:
 
 let
   dsoPatch = fetchurl {
@@ -20,20 +20,20 @@ stdenv.mkDerivation rec {
   patches = [ dsoPatch ];
 
   configurePhase = ''
-    makeFlagsArray=( INSTALL_TOP=$out INSTALL_MAN=$out/share/man/man1 PLAT=linux CFLAGS="-O2 -fPIC" LDLAGS="-fPIC" )
-    installFlagsArray=( TO_BIN="lua luac" TO_LIB="liblua.a liblua.so liblua.so.5.1" INSTALL_DATA='cp -d' )
+    makeFlagsArray=( INSTALL_TOP=$out INSTALL_MAN=$out/share/man/man1 PLAT=linux CFLAGS="-DLUA_USE_LINUX -O2 -fPIC" LDLAGS="-fPIC" )
+    installFlagsArray=( TO_BIN="lua luac" TO_LIB="liblua.a liblua.so liblua.so.5.1 liblua.so.5.1.5" INSTALL_DATA='cp -d' )
   '';
 
   postInstall = ''
     mkdir -p "$out/share/doc/lua" "$out/lib/pkgconfig"
-    mv "etc/lua.pc" "$out/lib/pkgconfig/"
+    sed <"etc/lua.pc" >"$out/lib/pkgconfig/lua.pc" -e "s|^prefix=.*|prefix=$out|"
     mv "doc/"*.{gif,png,css,html} "$out/share/doc/lua/"
     rmdir $out/{share,lib}/lua/5.1 $out/{share,lib}/lua
   '';
 
   meta = {
     homepage = "http://www.lua.org";
-    description = "Lua is a powerful, fast, lightweight, embeddable scripting language.";
+    description = "Powerful, fast, lightweight, embeddable scripting language";
     longDescription = ''
       Lua combines simple procedural syntax with powerful data
       description constructs based on associative arrays and extensible
diff --git a/pkgs/development/interpreters/lua-5/5.2.nix b/pkgs/development/interpreters/lua-5/5.2.nix
new file mode 100644
index 00000000000..5b4c2459872
--- /dev/null
+++ b/pkgs/development/interpreters/lua-5/5.2.nix
@@ -0,0 +1,67 @@
+{ stdenv, fetchurl, readline }:
+
+let
+  dsoPatch = fetchurl {
+    url = "https://projects.archlinux.org/svntogit/packages.git/plain/trunk/liblua.so.patch?h=packages/lua";
+    sha256 = "1by1dy4ql61f5c6njq9ibf9kaqm3y633g2q8j54iyjr4cxvqwqz9";
+    name = "lua-arch.patch";
+  };
+in
+stdenv.mkDerivation rec {
+  name = "lua-${version}";
+  majorVersion = "5.2";
+  version = "${majorVersion}.2";
+
+  src = fetchurl {
+    url = "http://www.lua.org/ftp/${name}.tar.gz";
+    sha256 = "004zyh9p3lpvbwhyhlmrw6wwcia5abx84q4h2brkn4zdypipvmiz";
+  };
+
+  buildInputs = [ readline ];
+
+  patches = [ dsoPatch ];
+
+  configurePhase = ''
+    makeFlagsArray=( INSTALL_TOP=$out INSTALL_MAN=$out/share/man/man1 PLAT=linux CFLAGS="-DLUA_USE_LINUX -O2 -fPIC" LDLAGS="-fPIC" V=${majorVersion} R=${version} )
+    installFlagsArray=( TO_BIN="lua luac" TO_LIB="liblua.a liblua.so liblua.so.${majorVersion} liblua.so.${version}" INSTALL_DATA='cp -d' )
+  '';
+
+  postInstall = ''
+    mkdir -p "$out/share/doc/lua" "$out/lib/pkgconfig"
+    mv "doc/"*.{gif,png,css,html} "$out/share/doc/lua/"
+    rmdir $out/{share,lib}/lua/${majorVersion} $out/{share,lib}/lua
+    mkdir -p "$out/lib/pkgconfig"
+    cat >"$out/lib/pkgconfig/lua.pc" <<EOF
+    prefix=$out
+    libdir=$out/lib
+    includedir=$out/include
+    INSTALL_BIN=$out/bin
+    INSTALL_INC=$out/include
+    INSTALL_LIB=$out/lib
+    INSTALL_MAN=$out/man/man1
+
+    Name: Lua
+    Description: An Extensible Extension Language
+    Version: ${version}
+    Requires:
+    Libs: -L$out/lib -llua -lm
+    Cflags: -I$out/include
+    EOF
+  '';
+
+  meta = {
+    homepage = "http://www.lua.org";
+    description = "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 = [ stdenv.lib.maintainers.simons ];
+  };
+}
diff --git a/pkgs/development/interpreters/lua-5/default.nix b/pkgs/development/interpreters/lua-5/default.nix
deleted file mode 100644
index c11a9d10d7b..00000000000
--- a/pkgs/development/interpreters/lua-5/default.nix
+++ /dev/null
@@ -1,51 +0,0 @@
-{stdenv, fetchurl, ncurses, readline}:
-
-stdenv.mkDerivation {
-  name = "lua-5.1.4";
-
-  src = fetchurl {
-    url = "http://www.lua.org/ftp/lua-5.1.4.tar.gz";
-    sha256 = "0fmgk100ficm1jbm4ga9xy484v4cm89wsdfckdybb9gjx8jy4f5h";
-  };
-
-  NIX_CFLAGS_COMPILE = "-fPIC";
-  buildFlags = if stdenv.isLinux then "linux" else
-	       if stdenv.isDarwin then "macosx" else
-	       if stdenv.isFreeBSD then "freebsd" else
-	       if stdenv.isBSD then "bsd" else
-	       "posix";
-  installFlags = "install INSTALL_TOP=\${out}";
-  postInstall = ''
-    sed -i -e "s@/usr/local@$out@" etc/lua.pc
-    sed -i -e "s@-llua -lm@-llua -lm -ldl@" etc/lua.pc
-    mkdir -p "$out/lib/pkgconfig"
-    install -m 644 etc/lua.pc $out/lib/pkgconfig/lua.pc
-  '';
-  buildInputs = [ ncurses readline ];
-
-  crossAttrs = {
-    preBuild = ''
-      sed -i -e "s/ gcc/$crossConfig-gcc/" \
-        -e "s/ ar/$crossConfig-ar/" \
-        -e "s/ ranlib/$crossConfig-ranlib/" \
-        src/Makefile
-    '';
-    dontStrip = true;
-  };
-
-  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.4.nix b/pkgs/development/interpreters/php/5.4.nix
index 394278dea74..3edf25b0cd9 100644
--- a/pkgs/development/interpreters/php/5.4.nix
+++ b/pkgs/development/interpreters/php/5.4.nix
@@ -9,7 +9,7 @@ in
 
 composableDerivation.composableDerivation {} ( fixed : let inherit (fixed.fixed) version; in {
 
-  version = "5.4.18";
+  version = "5.4.20";
 
   name = "php-${version}";
 
@@ -58,6 +58,10 @@ composableDerivation.composableDerivation {} ( fixed : let inherit (fixed.fixed)
         buildInputs = [ libxml2 ];
       };
 
+      pcntl = {
+        configureFlags = [ "--enable-pcntl" ];
+      };
+
       readline = {
         configureFlags = ["--with-readline=${readline}"];
         buildInputs = [ readline ];
@@ -188,6 +192,7 @@ composableDerivation.composableDerivation {} ( fixed : let inherit (fixed.fixed)
     socketsSupport = config.php.sockets or true;
     curlSupport = config.php.curl or true;
     gettextSupport = config.php.gettext or true;
+    pcntlSupport = config.php.pcntl or true;
     postgresqlSupport = config.php.postgresql or true;
     readlineSupport = config.php.readline or true;
     sqliteSupport = config.php.sqlite or true;
@@ -230,7 +235,7 @@ composableDerivation.composableDerivation {} ( fixed : let inherit (fixed.fixed)
       "http://nl1.php.net/get/php-${version}.tar.bz2/from/this/mirror"
       "http://se1.php.net/get/php-${version}.tar.bz2/from/this/mirror"
     ];
-    sha256 = "1ncizy992nfy3i3lzns7qcinj5376d840hchaqs5jlfn2nz0k50x";
+    sha256 = "1qarcxj46rzkmql3w2dln0hxzs349ph31fxcslizxch1ig7l43nd";
     name = "php-${version}.tar.bz2";
   };
 
diff --git a/pkgs/development/interpreters/pure/default.nix b/pkgs/development/interpreters/pure/default.nix
index 83a1c0ac500..84ae789150d 100644
--- a/pkgs/development/interpreters/pure/default.nix
+++ b/pkgs/development/interpreters/pure/default.nix
@@ -1,5 +1,5 @@
 x@{builderDefsPackage
-  , llvm, gmp, mpfr, readline, bison, flex
+  , llvm, gmp, mpfr, readline, bison, flex, makeWrapper
   , ...}:
 builderDefsPackage
 (a :  
@@ -12,11 +12,11 @@ let
   sourceInfo = rec {
     baseName="pure";
     project="pure-lang";
-    version="0.56";
+    version="0.58";
     name="${baseName}-${version}";
     extension="tar.gz";
-    url="http://${project}.googlecode.com/files/${name}.${extension}";
-    hash="1ll29j31lp7ymp1kq57328q8md7pkp8jmwsadp67j4cdlzc3zdhj";
+    url="https://bitbucket.org/purelang/${project}/downloads/${name}.${extension}";
+    hash="180ygv8nmfy8v4696km8jdahn5cnr454sc8i1av7s6z4ss7mrxmi";
   };
 in
 rec {
@@ -29,9 +29,9 @@ rec {
   inherit buildInputs;
 
   /* doConfigure should be removed if not needed */
-  phaseNames = ["doPatch" "doConfigure" "doMakeInstall"];
+  phaseNames = ["doConfigure" "doMakeInstall" "doWrap"];
 
-  patches = [ ./new-gcc.patch ];
+  doWrap = a.makeManyWrappers ''$out/bin/pure'' ''--prefix LD_LIBRARY_PATH : "${llvm}/lib"'';
 
   meta = {
     description = "A purely functional programming language based on term rewriting";
@@ -45,7 +45,7 @@ rec {
   };
   passthru = {
     updateInfo = {
-      downloadPage = "http://code.google.com/p/pure-lang/downloads/list";
+      downloadPage = "https://bitbucket.org/purelang/pure-lang/downloads";
     };
   };
 }) x
diff --git a/pkgs/development/interpreters/pure/new-gcc.patch b/pkgs/development/interpreters/pure/new-gcc.patch
deleted file mode 100644
index ea2cd845059..00000000000
--- a/pkgs/development/interpreters/pure/new-gcc.patch
+++ /dev/null
@@ -1,62 +0,0 @@
-diff --git a/runtime.cc b/runtime.cc
-index 04cbc40..54a0b43 100644
---- a/runtime.cc
-+++ b/runtime.cc
-@@ -13121,39 +13121,6 @@ unsigned int sleep(unsigned int secs)
- }
- #endif
- 
--/* Horrible kludge to get round, trunc and the inverse hyperbolic functions
--   from libmingwex.a (these are in C99, but not in the Windows system
--   libraries, and LLVM doesn't know how to get them either). */
--
--extern "C"
--double __round(double x)
--{
--  return round(x);
--}
--
--extern "C"
--double __trunc(double x)
--{
--  return trunc(x);
--}
--
--extern "C"
--double __asinh(double x)
--{
--  return asinh(x);
--}
--
--extern "C"
--double __acosh(double x)
--{
--  return acosh(x);
--}
--
--extern "C"
--double __atanh(double x)
--{
--  return atanh(x);
--}
- 
- /* File type bits. */
- 
-diff --git a/util.hh b/util.hh
-index ae95b79..eab3330 100644
---- a/util.hh
-+++ b/util.hh
-@@ -58,13 +58,6 @@ char *default_encoding();
- double my_strtod(const char  *nptr, char **endptr);
- char *my_formatd(char *buffer, const char  *format, double d);
- 
--/* Windows doesn't have strptime, so we provide a suitable replacement from
--   GNU libc (see strptime.c). */
--
--#ifndef HAVE_STRPTIME
--extern "C"
--char *strptime(const char *s, const char *format, struct tm *tm);
--#endif
- 
- /* Windows doesn't have mkstemp, so we provide a suitable replacement. */
- 
diff --git a/pkgs/development/interpreters/python/2.6/default.nix b/pkgs/development/interpreters/python/2.6/default.nix
index 4b55f7150d3..6192c9e11e7 100644
--- a/pkgs/development/interpreters/python/2.6/default.nix
+++ b/pkgs/development/interpreters/python/2.6/default.nix
@@ -160,6 +160,11 @@ let
       deps = [ ncurses ];
     };
 
+    curses_panel = buildInternalPythonModule {
+      moduleName = "curses_panel";
+      deps = [ ncurses modules.curses ];
+    };
+
     gdbm = buildInternalPythonModule {
       moduleName = "gdbm";
       internalName = "gdbm";
diff --git a/pkgs/development/interpreters/python/2.7/default.nix b/pkgs/development/interpreters/python/2.7/default.nix
index aea2d21fd8d..617be4f29f1 100644
--- a/pkgs/development/interpreters/python/2.7/default.nix
+++ b/pkgs/development/interpreters/python/2.7/default.nix
@@ -164,6 +164,11 @@ let
       deps = [ ncurses ];
     };
 
+    curses_panel = buildInternalPythonModule {
+      moduleName = "curses_panel";
+      deps = [ ncurses modules.curses ];
+    };
+
     crypt = buildInternalPythonModule {
       moduleName = "crypt";
       internalName = "crypt";
diff --git a/pkgs/development/interpreters/python/wrapper.nix b/pkgs/development/interpreters/python/wrapper.nix
index d2783ffb085..1699690749f 100644
--- a/pkgs/development/interpreters/python/wrapper.nix
+++ b/pkgs/development/interpreters/python/wrapper.nix
@@ -1,23 +1,26 @@
-# Create a python that knows about additional python packages via
-# PYTHONPATH
+{ stdenv, python, buildEnv, makeWrapper, recursivePthLoader, extraLibs ? [] }:
 
-{ stdenv, python, makeWrapper, recursivePthLoader, extraLibs ? [] }:
+# Create a python executable that knows about additional packages.
 
-stdenv.mkDerivation {
+(buildEnv {
   name = "python-${python.version}-wrapper";
+  paths = extraLibs ++ [ python makeWrapper recursivePthLoader ];
+  ignoreCollisions = false;
 
-  propagatedBuildInputs = extraLibs ++ [ python makeWrapper recursivePthLoader ];
-
-  unpackPhase = "true";
-  installPhase = ''
+  postBuild = ''
+    . "${makeWrapper}/nix-support/setup-hook"
+    if [ -L "$out/bin" ]; then
+        unlink "$out/bin"
+    fi
     mkdir -p "$out/bin"
-    for prg in 2to3 idle pdb pdb${python.majorVersion} pydoc python python-config python${python.majorVersion} python${python.majorVersion}-config smtpd.py; do
-      makeWrapper "$python/bin/$prg" "$out/bin/$prg" --suffix PYTHONPATH : "$PYTHONPATH"
+    cd "${python}/bin"
+    for prg in *; do
+      echo "$prg --> $out/bin/$prg"
+      rm -f "$out/bin/$prg"
+      makeWrapper "${python}/bin/$prg" "$out/bin/$prg" --set PYTHONHOME "$out"
     done
-    ensureDir "$out/share"
-    ln -s "$python/share/man" "$out/share/man"
   '';
-
+}) // {
   inherit python;
   inherit (python) meta;
 }
diff --git a/pkgs/development/interpreters/racket/default.nix b/pkgs/development/interpreters/racket/default.nix
index ddcf2634039..f45c96d2805 100644
--- a/pkgs/development/interpreters/racket/default.nix
+++ b/pkgs/development/interpreters/racket/default.nix
@@ -44,7 +44,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = {
-    description = "A programming language derived from Scheme (formerly called PLT Scheme).";
+    description = "Programming language derived from Scheme (formerly called PLT Scheme)";
     longDescription = ''
       Racket (formerly called PLT Scheme) is a programming language derived
       from Scheme. The Racket project has four primary components: the
diff --git a/pkgs/development/interpreters/ruby/generated.nix b/pkgs/development/interpreters/ruby/generated.nix
index 7c062a44ca1..f0cfa7b0152 100644
--- a/pkgs/development/interpreters/ruby/generated.nix
+++ b/pkgs/development/interpreters/ruby/generated.nix
@@ -24,6 +24,7 @@ g: # Get dependencies from patched gems
     childprocess = g.childprocess_0_3_9;
     chronic = g.chronic_0_10_1;
     coderay = g.coderay_1_0_9;
+    cucumber = g.cucumber_1_3_8;
     daemons = g.daemons_1_1_9;
     diff_lcs = g.diff_lcs_1_1_3;
     dimensions = g.dimensions_1_2_0;
@@ -42,6 +43,7 @@ g: # Get dependencies from patched gems
     foreman = g.foreman_0_63_0;
     gettext = g.gettext_3_0_0;
     gh = g.gh_0_12_0;
+    gherkin = g.gherkin_2_12_1;
     highline = g.highline_1_6_19;
     hike = g.hike_1_2_3;
     hoe = g.hoe_3_1_0;
@@ -64,6 +66,7 @@ g: # Get dependencies from patched gems
     minitar = g.minitar_0_5_3;
     minitest = g.minitest_4_7_5;
     multi_json = g.multi_json_1_7_9;
+    multi_test = g.multi_test_0_0_2;
     multipart_post = g.multipart_post_1_2_0;
     net_http_digest_auth = g.net_http_digest_auth_1_4;
     net_http_persistent = g.net_http_persistent_2_9;
@@ -94,6 +97,7 @@ g: # Get dependencies from patched gems
     rjb = g.rjb_1_4_8;
     rkelly_remix = g.rkelly_remix_0_0_4;
     rmail = g.rmail_1_0_0;
+    rmail_sup = g.rmail_sup_1_0_1;
     rspec = g.rspec_2_11_0;
     rspec_core = g.rspec_core_2_11_1;
     rspec_expectations = g.rspec_expectations_2_11_3;
@@ -112,6 +116,7 @@ g: # Get dependencies from patched gems
     systemu = g.systemu_2_5_2;
     taskjuggler = g.taskjuggler_3_5_0;
     term_ansicolor = g.term_ansicolor_1_2_2;
+    terminal_notifier = g.terminal_notifier_1_5_1;
     text = g.text_1_2_3;
     thin = g.thin_1_5_1;
     thor = g.thor_0_18_1;
@@ -125,6 +130,7 @@ g: # Get dependencies from patched gems
     tzinfo = g.tzinfo_0_3_37;
     unf = g.unf_0_1_2;
     unf_ext = g.unf_ext_0_0_6;
+    unicode = g.unicode_0_4_4;
     uuid = g.uuid_2_3_7;
     uuidtools = g.uuidtools_2_1_4;
     webrobots = g.webrobots_0_1_1;
@@ -134,7 +140,7 @@ g: # Get dependencies from patched gems
     xml_simple = g.xml_simple_1_1_1;
     yajl_ruby = g.yajl_ruby_1_1_0;
   };
-  gem_nix_args = [ ''autotest-rails'' ''aws-sdk'' ''bitbucket-backup'' ''buildr'' ''fakes3'' ''foreman'' ''gettext'' ''iconv'' ''jsduck'' ''lockfile'' ''mechanize'' ''nix'' ''papertrail-cli'' ''rails'' ''rake'' ''rb-fsevent'' ''remote_syslog'' ''right_aws'' ''rmail'' ''sass'' ''selenium-webdriver'' ''sinatra-1.3.2'' ''taskjuggler'' ''thin'' ''travis'' ''trollop'' ''uuid'' ''xapian-full'' ''xapian-ruby'' ];
+  gem_nix_args = [ ''autotest-rails'' ''aws-sdk'' ''bitbucket-backup'' ''buildr'' ''cucumber'' ''fakes3'' ''foreman'' ''gettext'' ''iconv'' ''jsduck'' ''lockfile'' ''mechanize'' ''nix'' ''papertrail-cli'' ''rails'' ''rake'' ''rb-fsevent'' ''remote_syslog'' ''right_aws'' ''rmail'' ''sass'' ''selenium-webdriver'' ''sinatra-1.3.2'' ''taskjuggler'' ''thin'' ''travis'' ''trollop'' ''uuid'' ''xapian-full'' ''xapian-ruby'' ];
   gems = {
     ZenTest_4_9_3 = {
       basename = ''ZenTest'';
@@ -429,6 +435,17 @@ for those one-off tasks, with a language that's a joy to use.
       requiredGems = [ g.ffi_1_9_0 ];
       sha256 = ''0jbz2ix7ff9ry8717lhcq9w8j8yd45akw48giwgdqccay5mlph7d'';
     };
+    chronic_0_9_1 = {
+      basename = ''chronic'';
+      meta = {
+        description = ''Natural language date/time parsing.'';
+        homepage = ''http://github.com/mojombo/chronic'';
+        longDescription = ''Chronic is a natural language date/time parser written in pure Ruby.'';
+      };
+      name = ''chronic-0.9.1'';
+      requiredGems = [  ];
+      sha256 = ''0kspaxpfy7yvyk1lvpx31w852qfj8wb9z04mcj5bzi70ljb9awqk'';
+    };
     chronic_0_10_1 = {
       basename = ''chronic'';
       meta = {
@@ -451,6 +468,17 @@ for those one-off tasks, with a language that's a joy to use.
       requiredGems = [  ];
       sha256 = ''1pbjsvd6r2daxd6aicp19fnb1j5z7fxadflsm1h0r33cy3vi7iy8'';
     };
+    cucumber_1_3_8 = {
+      basename = ''cucumber'';
+      meta = {
+        description = ''cucumber-1.3.8'';
+        homepage = ''http://cukes.info'';
+        longDescription = ''Behaviour Driven Development with elegance and joy'';
+      };
+      name = ''cucumber-1.3.8'';
+      requiredGems = [ g.builder_3_2_2 g.diff_lcs_1_2_4 g.gherkin_2_12_1 g.multi_json_1_7_9 g.multi_test_0_0_2 ];
+      sha256 = ''0b4igj1vxlcwky11nkrrgg57chbc0n5gmv984dld5s0f1ilkx1ma'';
+    };
     daemons_1_1_9 = {
       basename = ''daemons'';
       meta = {
@@ -487,6 +515,28 @@ is the MIT license.'';
       requiredGems = [  ];
       sha256 = ''15wqs3md9slif6ag43vp6gw63r3a2zdqiyfapnnzkb7amgg930pv'';
     };
+    diff_lcs_1_2_4 = {
+      basename = ''diff_lcs'';
+      meta = {
+        description = ''Diff::LCS computes the difference between two Enumerable sequences using the McIlroy-Hunt longest common subsequence (LCS) algorithm'';
+        homepage = ''http://diff-lcs.rubyforge.org/'';
+        longDescription = ''Diff::LCS computes the difference between two Enumerable sequences using the
+McIlroy-Hunt longest common subsequence (LCS) algorithm. It includes utilities
+to create a simple HTML diff output format and a standard diff-like tool.
+
+This is release 1.2.4, fixing a bug introduced after diff-lcs 1.1.3 that did
+not properly prune common sequences at the beginning of a comparison set.
+Thanks to Paul Kunysch for fixing this issue.
+
+Coincident with the release of diff-lcs 1.2.3, we reported an issue with
+Rubinius in 1.9 mode
+({rubinius/rubinius#2268}[https://github.com/rubinius/rubinius/issues/2268]).
+We are happy to report that this issue has been resolved.'';
+      };
+      name = ''diff-lcs-1.2.4'';
+      requiredGems = [  ];
+      sha256 = ''09xbffjg639y8n43zp88ki0m489vv2c86znmfib2fg1di6svi1xd'';
+    };
     dimensions_1_2_0 = {
       basename = ''dimensions'';
       meta = {
@@ -699,6 +749,17 @@ So you can use GNU gettext tools for maintaining.
       requiredGems = [ g.faraday_0_8_8 g.backports_3_3_3 g.multi_json_1_7_9 g.addressable_2_3_5 g.net_http_persistent_2_9 g.net_http_pipeline_1_0_1 ];
       sha256 = ''180jmg6rwilzcbzvyg74q27zpr09pv6pw3cfcjxr0bcklv203q3n'';
     };
+    gherkin_2_12_1 = {
+      basename = ''gherkin'';
+      meta = {
+        description = ''gherkin-2.12.1'';
+        homepage = ''http://github.com/cucumber/gherkin'';
+        longDescription = ''A fast Gherkin lexer/parser based on the Ragel State Machine Compiler.'';
+      };
+      name = ''gherkin-2.12.1'';
+      requiredGems = [ g.multi_json_1_7_9 ];
+      sha256 = ''07nzchdvkkd35m9k7d9k8j72jm3imv56ccn734mxa5klv1xx2d45'';
+    };
     highline_1_6_19 = {
       basename = ''highline'';
       meta = {
@@ -1083,6 +1144,17 @@ extract-method refactorings still apply.'';
       requiredGems = [  ];
       sha256 = ''1q13ldcc8shlfisy90k19zrar87208gs3za6jmr78p11ip21picx'';
     };
+    multi_test_0_0_2 = {
+      basename = ''multi_test'';
+      meta = {
+        description = ''multi-test-0.0.2'';
+        homepage = ''http://cukes.info'';
+        longDescription = ''Wafter-thin gem to help control rogue test/unit/autorun requires'';
+      };
+      name = ''multi_test-0.0.2'';
+      requiredGems = [  ];
+      sha256 = ''0y8i0v0awc87laicqz1348k54z6wsyf141xqd7gh2bjgm9pc9pkr'';
+    };
     multipart_post_1_2_0 = {
       basename = ''multipart_post'';
       meta = {
@@ -1553,6 +1625,20 @@ in JSDuck.
       requiredGems = [  ];
       sha256 = ''0nsg7yda1gdwa96j4hlrp2s0m06vrhcc4zy5mbq7gxmlmwf9yixp'';
     };
+    rmail_sup_1_0_1 = {
+      basename = ''rmail_sup'';
+      meta = {
+        description = ''A MIME mail parsing and generation library.'';
+        homepage = ''http://supmua.org'';
+        longDescription = ''    RMail is a lightweight mail library containing various utility classes and
+    modules that allow ruby scripts to parse, modify, and generate MIME mail
+    messages.
+'';
+      };
+      name = ''rmail-sup-1.0.1'';
+      requiredGems = [  ];
+      sha256 = ''1xswk101s560lxqaax3plqh8vjx7jjspnggdwb3q80m358f92q9g'';
+    };
     rspec_2_11_0 = {
       basename = ''rspec'';
       meta = {
@@ -1774,6 +1860,16 @@ management.
       requiredGems = [ g.tins_0_9_0 ];
       sha256 = ''1b41q1q6mqcgzq9fhzhmjvfg5sfs5v7gkb8z57r4hajcp89lflxr'';
     };
+    terminal_notifier_1_5_1 = {
+      basename = ''terminal_notifier'';
+      meta = {
+        description = ''Send User Notifications on Mac OS X 10.8 or higher.'';
+        homepage = ''https://github.com/alloy/terminal-notifier'';
+      };
+      name = ''terminal-notifier-1.5.1'';
+      requiredGems = [  ];
+      sha256 = ''1vvdfj83bsa2rglwbqmk11yghivsywl6ka76zb51c3xm7gdd768k'';
+    };
     text_1_2_3 = {
       basename = ''text'';
       meta = {
@@ -1922,6 +2018,17 @@ to Ruby/JRuby.
       requiredGems = [  ];
       sha256 = ''07zbmkzcid6pzdqgla3456ipfdka7j1v4hsx1iaa8rbnllqbmkdg'';
     };
+    unicode_0_4_4 = {
+      basename = ''unicode'';
+      meta = {
+        description = ''Unicode normalization library.'';
+        homepage = ''http://www.yoshidam.net/Ruby.html#unicode'';
+        longDescription = ''Unicode normalization library.'';
+      };
+      name = ''unicode-0.4.4'';
+      requiredGems = [  ];
+      sha256 = ''0la9dyxj7pr57g5727gj1h5c6h5kpbjdjpiv2vqi5gw5iglg0yqi'';
+    };
     uuid_2_3_7 = {
       basename = ''uuid'';
       meta = {
diff --git a/pkgs/development/libraries/SDL2/default.nix b/pkgs/development/libraries/SDL2/default.nix
new file mode 100644
index 00000000000..7bc27362a29
--- /dev/null
+++ b/pkgs/development/libraries/SDL2/default.nix
@@ -0,0 +1,56 @@
+{ stdenv, fetchurl, pkgconfig, audiofile
+, openglSupport ? false, mesa ? null
+, alsaSupport ? true, alsaLib ? null
+, x11Support ? true, x11 ? null, libXrandr ? null
+, pulseaudioSupport ? true, pulseaudio ? null
+}:
+
+# OSS is no longer supported, for it's much crappier than ALSA and
+# PulseAudio.
+assert alsaSupport || pulseaudioSupport;
+
+assert openglSupport -> (mesa != null && x11Support);
+assert x11Support -> (x11 != null && libXrandr != null);
+assert alsaSupport -> alsaLib != null;
+assert pulseaudioSupport -> pulseaudio != null;
+
+let
+  configureFlagsFun = attrs: ''
+        --disable-oss --disable-video-x11-xme
+        --disable-x11-shared --disable-alsa-shared --enable-rpath --disable-pulseaudio-shared
+        --disable-osmesa-shared --enable-static
+        ${if alsaSupport then "--with-alsa-prefix=${attrs.alsaLib}/lib" else ""}
+      '';
+in
+stdenv.mkDerivation rec {
+  name = "SDL2-2.0.0";
+
+  src = fetchurl {
+    url = "http://www.libsdl.org/release/${name}.tar.gz";
+    sha256 = "0y3in99brki7vc2mb4c0w39v70mf4h341mblhh8nmq4h7lawhskg";
+  };
+
+  # Since `libpulse*.la' contain `-lgdbm', PulseAudio must be propagated.
+  propagatedBuildInputs = stdenv.lib.optionals x11Support [ x11 libXrandr ] ++
+    stdenv.lib.optional pulseaudioSupport pulseaudio;
+
+  buildInputs = [ pkgconfig audiofile ] ++
+    stdenv.lib.optional openglSupport [ mesa ] ++
+    stdenv.lib.optional alsaSupport alsaLib;
+
+  # XXX: By default, SDL wants to dlopen() PulseAudio, in which case
+  # we must arrange to add it to its RPATH; however, `patchelf' seems
+  # to fail at doing this, hence `--disable-pulseaudio-shared'.
+  configureFlags = configureFlagsFun { inherit alsaLib; };
+
+  crossAttrs = {
+      configureFlags = configureFlagsFun { alsaLib = alsaLib.crossDrv; };
+  };
+
+  passthru = {inherit openglSupport;};
+
+  meta = {
+    description = "A cross-platform multimedia library";
+    homepage = http://www.libsdl.org/;
+  };
+}
diff --git a/pkgs/development/libraries/SDL2_gfx/default.nix b/pkgs/development/libraries/SDL2_gfx/default.nix
new file mode 100644
index 00000000000..693b7bf8fe1
--- /dev/null
+++ b/pkgs/development/libraries/SDL2_gfx/default.nix
@@ -0,0 +1,54 @@
+{stdenv, fetchsvn, SDL2} :
+
+let rev = 5; in
+stdenv.mkDerivation rec {
+  name = "SDL2_gfx-${toString rev}";
+
+  src = fetchsvn {
+    url = http://svn.code.sf.net/p/sdl2gfx/code/trunk;
+    inherit rev;
+    sha256 = "1hzilbn1412m2b44mygrbdfh1gvks4v5p0kmafz248jf9ifsvmzp";
+  };
+
+  buildInputs = [ SDL2 ] ;
+
+  configureFlags = "--disable-mmx";
+
+  postInstall = ''
+    sed -i -e 's,"SDL.h",<SDL2/SDL.h>,' \
+      $out/include/SDL2/*.h
+    
+    ln -s $out/include/SDL2/SDL2_framerate.h $out/include/SDL2/SDL_framerate.h;
+    ln -s $out/include/SDL2/SDL2_gfxPrimitives.h $out/include/SDL2/SDL_gfxPrimitives.h;
+    ln -s $out/include/SDL2/SDL2_rotozoom.h $out/include/SDL2/SDL_rotozoom.h;
+    ln -s $out/include/SDL2/*.h $out/include/;
+  '';
+
+  meta = {
+    description = "SDL graphics drawing primitives and support functions";
+
+    longDescription =
+      '' The SDL_gfx library evolved out of the SDL_gfxPrimitives code
+	 which provided basic drawing routines such as lines, circles or
+	 polygons and SDL_rotozoom which implemented a interpolating
+	 rotozoomer for SDL surfaces.
+
+	 The current components of the SDL_gfx library are:
+
+	    * Graphic Primitives (SDL_gfxPrimitves.h)
+	    * Rotozoomer (SDL_rotozoom.h)
+	    * Framerate control (SDL_framerate.h)
+	    * MMX image filters (SDL_imageFilter.h)
+	    * Custom Blit functions (SDL_gfxBlitFunc.h)
+
+	 The library is backwards compatible to the above mentioned
+         code. Its is written in plain C and can be used in C++ code.
+       '';
+
+    homepage = https://sourceforge.net/projects/sdlgfx/;
+    license = "LGPLv2+";
+
+    maintainers = [ stdenv.lib.maintainers.bjg ];
+    platforms = stdenv.lib.platforms.linux;
+  };
+}
diff --git a/pkgs/development/libraries/SDL2_image/default.nix b/pkgs/development/libraries/SDL2_image/default.nix
new file mode 100644
index 00000000000..73b5ba8d929
--- /dev/null
+++ b/pkgs/development/libraries/SDL2_image/default.nix
@@ -0,0 +1,27 @@
+{ stdenv, fetchurl, SDL2, libpng, libjpeg, libtiff, libungif, libXpm, zlib }:
+
+stdenv.mkDerivation rec {
+  name = "SDL2_image-2.0.0";
+
+  src = fetchurl {
+    url = "http://www.libsdl.org/projects/SDL_image/release/${name}.tar.gz";
+    sha256 = "0d3jlhkmr0j5a2dd5h6y29jfcsj7mkl16wghm6n3nqqp7g3ib65j";
+  };
+
+  buildInputs = [SDL2 libpng libjpeg libtiff libungif libXpm zlib];
+
+  postInstall = ''
+    sed -i -e 's,"SDL.h",<SDL2/SDL.h>,' \
+      -e 's,"SDL_version.h",<SDL2/SDL_version.h>,' \
+      -e 's,"begin_code.h",<SDL2/begin_code.h>,' \
+      -e 's,"close_code.h",<SDL2/close_code.h>,' \
+      $out/include/SDL2/SDL_image.h
+    ln -sv SDL2/SDL_image.h $out/include/SDL_image.h
+  '';
+
+  meta = {
+    description = "SDL image library";
+    homepage = "http://www.libsdl.org/projects/SDL_image/";
+    platforms = stdenv.lib.platforms.linux;
+  };
+}
diff --git a/pkgs/development/libraries/SDL2_mixer/default.nix b/pkgs/development/libraries/SDL2_mixer/default.nix
new file mode 100644
index 00000000000..6d29ddf6eea
--- /dev/null
+++ b/pkgs/development/libraries/SDL2_mixer/default.nix
@@ -0,0 +1,20 @@
+{ stdenv, fetchurl, SDL2, libogg, libvorbis, enableNativeMidi ? false }:
+
+stdenv.mkDerivation rec {
+  name = "SDL2_mixer-2.0.0";
+
+  src = fetchurl {
+    url = "http://www.libsdl.org/projects/SDL_mixer/release/${name}.tar.gz";
+    sha256 = "0nvjdxjchrajrn0jag877hdx9zb788hsd315zzg1lyck2wb0xkm8";
+  };
+
+  buildInputs = [SDL2 libogg libvorbis];
+
+  configureFlags = "--disable-music-ogg-shared" + stdenv.lib.optionalString enableNativeMidi "--enable-music-native-midi-gpl";
+
+  postInstall = "ln -s $out/include/SDL2/SDL_mixer.h $out/include/";
+
+  meta = {
+    description = "SDL multi-channel audio mixer library";
+  };
+}
diff --git a/pkgs/development/libraries/Xaw3d/default.nix b/pkgs/development/libraries/Xaw3d/default.nix
index a0603b546cf..454c4e882f5 100644
--- a/pkgs/development/libraries/Xaw3d/default.nix
+++ b/pkgs/development/libraries/Xaw3d/default.nix
@@ -10,4 +10,8 @@ stdenv.mkDerivation {
   patches = [./config.patch ./laylex.patch];
   buildInputs = [x11 imake gccmakedep libXmu libXpm libXp bison flex];
   propagatedBuildInputs = [x11 libXmu];
+
+  meta = {
+    description = "3D widget set based on the Athena Widget set";
+  };
 }
diff --git a/pkgs/development/libraries/a52dec/default.nix b/pkgs/development/libraries/a52dec/default.nix
index 82fef49cfc1..84a87df03e4 100644
--- a/pkgs/development/libraries/a52dec/default.nix
+++ b/pkgs/development/libraries/a52dec/default.nix
@@ -11,6 +11,7 @@ stdenv.mkDerivation rec {
   NIX_CFLAGS_COMPILE = "-fpic";
 
   meta = {
+    description = "ATSC A/52 stream decoder";
     homepage = http://liba52.sourceforge.net/;
   };
 }
diff --git a/pkgs/development/libraries/aalib/default.nix b/pkgs/development/libraries/aalib/default.nix
index 2da006a6ceb..897fc9db8de 100644
--- a/pkgs/development/libraries/aalib/default.nix
+++ b/pkgs/development/libraries/aalib/default.nix
@@ -15,4 +15,8 @@ stdenv.mkDerivation {
 
   buildInputs = [ncurses];
   inherit ncurses;
+
+  meta = {
+    description = "ASCII art graphics library";
+  };
 }
diff --git a/pkgs/development/libraries/agg/default.nix b/pkgs/development/libraries/agg/default.nix
index 8c24ae6fdbe..59124f011dd 100644
--- a/pkgs/development/libraries/agg/default.nix
+++ b/pkgs/development/libraries/agg/default.nix
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
   configureFlags = "--x-includes=${libX11}/include --x-libraries=${libX11}/lib";
 
   meta = {
-    description = "The Anti-Grain Geometry (AGG) library, a high quality rendering engine for C++";
+    description = "High quality rendering engine for C++";
 
     longDescription = ''
       Anti-Grain Geometry (AGG) is an Open Source, free of charge
diff --git a/pkgs/development/libraries/apache-activemq/default.nix b/pkgs/development/libraries/apache-activemq/default.nix
index 90d0dafdd95..d55ff9049ed 100644
--- a/pkgs/development/libraries/apache-activemq/default.nix
+++ b/pkgs/development/libraries/apache-activemq/default.nix
@@ -22,9 +22,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     homepage = http://activemq.apache.org/;
-    description = ''
-      Messaging and Integration Patterns server written in Java.
-    '';
+    description = "Messaging and Integration Patterns server written in Java";
     license = stdenv.lib.licenses.asl20;
   };
 
diff --git a/pkgs/development/libraries/aspell/default.nix b/pkgs/development/libraries/aspell/default.nix
index dd8b68717aa..a69cee99b2b 100644
--- a/pkgs/development/libraries/aspell/default.nix
+++ b/pkgs/development/libraries/aspell/default.nix
@@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
   # doesn't expand environment variables such as `$HOME'.
 
   meta = {
-    description = "GNU Aspell, A spell checker for many languages";
+    description = "Spell checker for many languages";
     homepage = http://aspell.net/;
     license = "LGPLv2+";
     maintainers = [ ];
diff --git a/pkgs/development/libraries/atk/default.nix b/pkgs/development/libraries/atk/default.nix
index 454f395a008..d358b9c4231 100644
--- a/pkgs/development/libraries/atk/default.nix
+++ b/pkgs/development/libraries/atk/default.nix
@@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
   propagatedBuildInputs = [ glib gobjectIntrospection /*ToDo: why propagate*/ ];
 
   meta = {
-    description = "ATK, the accessibility toolkit";
+    description = "Accessibility toolkit";
 
     longDescription = ''
       ATK is the Accessibility Toolkit.  It provides a set of generic
diff --git a/pkgs/development/libraries/attica/default.nix b/pkgs/development/libraries/attica/default.nix
index 87f6c019fb7..3174dc57667 100644
--- a/pkgs/development/libraries/attica/default.nix
+++ b/pkgs/development/libraries/attica/default.nix
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [ cmake ];
   
   meta = with stdenv.lib; {
-    description = "A library to access Open Collaboration Service providers";
+    description = "Library to access Open Collaboration Service providers";
     license = "LGPL";
     maintainers = [ maintainers.sander maintainers.urkud maintainers.phreedom ];
     inherit (qt4.meta) platforms;
diff --git a/pkgs/development/libraries/aubio/default.nix b/pkgs/development/libraries/aubio/default.nix
index 91d27254aed..abfb3985f26 100644
--- a/pkgs/development/libraries/aubio/default.nix
+++ b/pkgs/development/libraries/aubio/default.nix
@@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
     ];
 
   meta = { 
-    description = "A library for audio labelling";
+    description = "Library for audio labelling";
     homepage = http://aubio.org/;
     license = "GPLv2";
     maintainers = [ stdenv.lib.maintainers.marcweber ];
diff --git a/pkgs/development/libraries/audiofile/default.nix b/pkgs/development/libraries/audiofile/default.nix
index 2f4de88c94c..73f38f02814 100644
--- a/pkgs/development/libraries/audiofile/default.nix
+++ b/pkgs/development/libraries/audiofile/default.nix
@@ -11,7 +11,7 @@ stdenv.mkDerivation rec {
   };
 
   meta = with stdenv.lib; {
-    description = "A library for reading and writing audio files in various formats";
+    description = "Library for reading and writing audio files in various formats";
     homepage    = http://www.68k.org/~michael/audiofile/; 
     license     = licenses.lgpl21Plus;
     maintainers = with maintainers; [ lovek323 shlevy ];
diff --git a/pkgs/development/libraries/avahi/default.nix b/pkgs/development/libraries/avahi/default.nix
index f62dc200447..f4795286e09 100644
--- a/pkgs/development/libraries/avahi/default.nix
+++ b/pkgs/development/libraries/avahi/default.nix
@@ -38,7 +38,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    description = "Avahi, an mDNS/DNS-SD implementation";
+    description = "mDNS/DNS-SD implementation";
     homepage    = http://avahi.org;
     license     = licenses.lgpl2Plus;
     platforms   = platforms.unix;
diff --git a/pkgs/development/libraries/bwidget/default.nix b/pkgs/development/libraries/bwidget/default.nix
index 31dc885bc43..17f2b545168 100644
--- a/pkgs/development/libraries/bwidget/default.nix
+++ b/pkgs/development/libraries/bwidget/default.nix
@@ -24,7 +24,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     homepage = "http://tcl.activestate.com/software/tcllib/";
-    description = "The BWidget toolkit is a high-level widget set for Tcl/Tk.";
+    description = "High-level widget set for Tcl/Tk";
     license = stdenv.lib.licenses.tcltk;
   };
 }
diff --git a/pkgs/development/libraries/classads/default.nix b/pkgs/development/libraries/classads/default.nix
index 5739690e59a..080e854315d 100644
--- a/pkgs/development/libraries/classads/default.nix
+++ b/pkgs/development/libraries/classads/default.nix
@@ -16,7 +16,7 @@ stdenv.mkDerivation {
   
   meta = {
     homepage = http://www.cs.wisc.edu/condor/classad/;
-    description = "The Classified Advertisements library provides a generic means for matching resources.";
+    description = "The Classified Advertisements library provides a generic means for matching resources";
     license = "Apache-2.0";
   };
 }
diff --git a/pkgs/development/libraries/clucene-core/2.x.nix b/pkgs/development/libraries/clucene-core/2.x.nix
index 97c7a4c9f53..60e8da9c3fc 100644
--- a/pkgs/development/libraries/clucene-core/2.x.nix
+++ b/pkgs/development/libraries/clucene-core/2.x.nix
@@ -21,7 +21,17 @@ stdenv.mkDerivation rec {
     ];
 
   meta = {
-    description = "CLucene is a port of the very popular Java Lucene text search engine API. Core package, 2.x branch.";
+    description = "Core library for full-featured text search engine";
+    longDescription = ''
+      CLucene is a high-performance, scalable, cross platform, full-featured,
+      open-source indexing and searching API. Specifically, CLucene is the guts
+      of a search engine, the hard stuff. You write the easy stuff: the UI and
+      the process of selecting and parsing your data files to pump them into
+      the search engine yourself, and any specialized queries to pull it back
+      for display or further processing.
+
+      CLucene is a port of the very popular Java Lucene text search engine API.
+    '';
     homepage = http://clucene.sourceforge.net;
   };
 }
diff --git a/pkgs/development/libraries/clucene-core/default.nix b/pkgs/development/libraries/clucene-core/default.nix
index abd6712736f..33a789266d4 100644
--- a/pkgs/development/libraries/clucene-core/default.nix
+++ b/pkgs/development/libraries/clucene-core/default.nix
@@ -9,7 +9,17 @@ stdenv.mkDerivation rec {
   };
   
   meta = {
-    description = "CLucene is a port of the very popular Java Lucene text search engine API. Core package.";
+    description = "Core library for full-featured text search engine";
+    longDescription = ''
+      CLucene is a high-performance, scalable, cross platform, full-featured,
+      open-source indexing and searching API. Specifically, CLucene is the guts
+      of a search engine, the hard stuff. You write the easy stuff: the UI and
+      the process of selecting and parsing your data files to pump them into
+      the search engine yourself, and any specialized queries to pull it back
+      for display or further processing.
+
+      CLucene is a port of the very popular Java Lucene text search engine API.
+    '';
     homepage = http://clucene.sourceforge.net;
   };
 }
diff --git a/pkgs/development/libraries/cogl/default.nix b/pkgs/development/libraries/cogl/default.nix
index 9c3a1a4d674..abb92f7b08b 100644
--- a/pkgs/development/libraries/cogl/default.nix
+++ b/pkgs/development/libraries/cogl/default.nix
@@ -35,6 +35,6 @@ stdenv.mkDerivation rec {
       render without stepping on each other's toes.
     '';
 
-    inherit (glib.meta) platforms;
+    platforms = stdenv.lib.platforms.mesaPlatforms;
   };
 }
diff --git a/pkgs/development/libraries/coin3d/default.nix b/pkgs/development/libraries/coin3d/default.nix
index b477a88ed53..2ada0244149 100644
--- a/pkgs/development/libraries/coin3d/default.nix
+++ b/pkgs/development/libraries/coin3d/default.nix
@@ -14,8 +14,7 @@ stdenv.mkDerivation rec {
   meta = {
     homepage = http://www.coin3d.org/;
     license = "GPLv2+";
-    description = "High-level, retained-mode toolkit for effective 3D graphics development.";
-
+    description = "High-level, retained-mode toolkit for effective 3D graphics development";
     maintainers = [ stdenv.lib.maintainers.viric ];
     platforms = stdenv.lib.platforms.linux;
   };
diff --git a/pkgs/development/libraries/dbus/default.nix b/pkgs/development/libraries/dbus/default.nix
index b47e3c4a0e0..8ec47f86e34 100644
--- a/pkgs/development/libraries/dbus/default.nix
+++ b/pkgs/development/libraries/dbus/default.nix
@@ -77,7 +77,8 @@ let
   });
 
 
-in rec {
+  attrs = rec {
+  # If you change much fix indentation
 
   # This package has been split because most applications only need dbus.lib
   # which serves as an interface to a *system-wide* daemon,
@@ -114,4 +115,5 @@ in rec {
   docs = dbus_drv "docs" "doc" {
     postInstall = ''rm -r "$out/lib"'';
   };
-}
+};
+in attrs.libs // attrs
diff --git a/pkgs/development/libraries/eventlog/default.nix b/pkgs/development/libraries/eventlog/default.nix
index b1239d6f4cf..7a8ab8e464b 100644
--- a/pkgs/development/libraries/eventlog/default.nix
+++ b/pkgs/development/libraries/eventlog/default.nix
@@ -9,7 +9,15 @@ stdenv.mkDerivation {
   };
 
   meta = {
-    description = "A new API to format and send structured log messages.";
+    description = "Syslog event logger library";
+    longDescription = ''
+      The EventLog library aims to be a replacement of the simple syslog() API
+      provided on UNIX systems. The major difference between EventLog and
+      syslog is that EventLog tries to add structure to messages.
+
+      Where you had a simple non-structrured string in syslog() you have a
+      combination of description and tag/value pairs.
+    '';
     homepage = "http://www.balabit.com/support/community/products/";
     license = "BSD";
   };
diff --git a/pkgs/development/libraries/ffmpeg/1.x.nix b/pkgs/development/libraries/ffmpeg/1.x.nix
index 9f731d118bc..be9f1c56d97 100644
--- a/pkgs/development/libraries/ffmpeg/1.x.nix
+++ b/pkgs/development/libraries/ffmpeg/1.x.nix
@@ -29,11 +29,11 @@ assert x11grabSupport -> libXext != null && libXfixes != null;
 assert playSupport -> SDL != null;
 
 stdenv.mkDerivation rec {
-  name = "ffmpeg-1.2";
+  name = "ffmpeg-1.2.3";
 
   src = fetchurl {
     url = "http://www.ffmpeg.org/releases/${name}.tar.bz2";
-    sha256 = "1bssxbn4p813xlgb8whg4b60j90yzfy92x70b4q8j35fgp0gnfcs";
+    sha256 = "0nvilgwaivzvikgp9lpvrwi4p1clxl4w8j961599bg0r2v7n4x6r";
   };
 
   # `--enable-gpl' (as well as the `postproc' and `swscale') mean that
diff --git a/pkgs/development/libraries/fox/fox-1.6.nix b/pkgs/development/libraries/fox/fox-1.6.nix
index 540c2c61d94..2a7bb1dc31a 100644
--- a/pkgs/development/libraries/fox/fox-1.6.nix
+++ b/pkgs/development/libraries/fox/fox-1.6.nix
@@ -31,6 +31,6 @@ stdenv.mkDerivation rec {
     homepage = "http://fox-toolkit.org";
     license = "LGPLv3";
     maintainers = [ stdenv.lib.maintainers.bbenoist ];
-    platforms = stdenv.lib.platforms.all;
+    platforms = stdenv.lib.platforms.mesaPlatforms;
   };
 }
diff --git a/pkgs/development/libraries/freetds/default.nix b/pkgs/development/libraries/freetds/default.nix
index 87a7f879be8..b39da46e4a2 100644
--- a/pkgs/development/libraries/freetds/default.nix
+++ b/pkgs/development/libraries/freetds/default.nix
@@ -4,7 +4,7 @@ stdenv.mkDerivation {
   name = "freetds-0.91";
 
   src = fetchurl {
-    url = ftp://ftp.ibiblio.org/pub/Linux/ALPHA/freetds/stable/freetds-stable.tgz;
+    url = ftp://ftp.astron.com/pub/freetds/stable/freetds-stable.tgz;
     sha256 = "0r946axzxs0czsmr7283w7vmk5jx3jnxxc32d2ncxsrsh2yli0ba";
   };
 
diff --git a/pkgs/development/libraries/gamin/default.nix b/pkgs/development/libraries/gamin/default.nix
index b61101654ba..22a4597abbe 100644
--- a/pkgs/development/libraries/gamin/default.nix
+++ b/pkgs/development/libraries/gamin/default.nix
@@ -1,6 +1,6 @@
 { stdenv, fetchurl, python, pkgconfig, glib }:
 
-stdenv.mkDerivation rec {
+stdenv.mkDerivation (rec {
   name = "gamin-0.1.10";
 
   src = fetchurl {
@@ -17,4 +17,19 @@ stdenv.mkDerivation rec {
   configureFlags = "--disable-debug --with-python=${python} CPPFLAGS=-D_GNU_SOURCE";
 
   patches = [ ./deadlock.patch ] ++ map fetchurl (import ./debian-patches.nix);
+
+
+  meta = with stdenv.lib; {
+    homepage    = https://people.gnome.org/~veillard/gamin/;
+    description = "A file and directory monitoring system";
+    maintainers = with maintainers; [ lovek323 ];
+    platforms   = platforms.unix;
+  };
 }
+
+// stdenv.lib.optionalAttrs stdenv.isDarwin {
+  preBuild =  ''
+    sed -i 's/,--version-script=.*$/\\/' libgamin/Makefile
+  '';
+})
+
diff --git a/pkgs/development/libraries/geoclue/2.0.nix b/pkgs/development/libraries/geoclue/2.0.nix
new file mode 100644
index 00000000000..d799dfb6027
--- /dev/null
+++ b/pkgs/development/libraries/geoclue/2.0.nix
@@ -0,0 +1,30 @@
+{ fetchurl, stdenv, intltool, pkgconfig, glib, json_glib, libsoup, geoip
+, dbus, dbus_glib
+}:
+
+stdenv.mkDerivation rec {
+  name = "geoclue-2.0.0";
+
+  src = fetchurl {
+    url = "http://www.freedesktop.org/software/geoclue/releases/2.0/${name}.tar.xz";
+    sha256 = "18b7ikdcw2rm04gzw82216shp5m9pghvnsddw233s5jswn2g30ja";
+  };
+
+  buildInputs =
+   [ intltool pkgconfig glib json_glib libsoup geoip
+     dbus dbus_glib
+   ];
+
+  preConfigure = ''
+     substituteInPlace configure --replace "-Werror" ""
+  '';
+
+  propagatedBuildInputs = [ dbus dbus_glib glib ];
+
+  meta = {
+    description = "Geolocation framework and some data providers";
+    maintainers = with stdenv.lib.maintainers; [ raskin garbas ];
+    platforms = stdenv.lib.platforms.linux;
+    license = stdenv.lib.licenses.lgpl2;
+  };
+}
diff --git a/pkgs/development/libraries/gettext/default.nix b/pkgs/development/libraries/gettext/default.nix
index 5468c9f2336..4908662591c 100644
--- a/pkgs/development/libraries/gettext/default.nix
+++ b/pkgs/development/libraries/gettext/default.nix
@@ -1,8 +1,10 @@
-{ stdenv, fetchurl, libiconv }:
+{ stdenv, fetchurl, libiconvOrEmpty }:
+
+with { inherit (stdenv.lib) optionals optionalAttrs; };
 
 stdenv.mkDerivation (rec {
   name = "gettext-0.18.1.1";
-  
+
   src = fetchurl {
     url = "mirror://gnu/gettext/${name}.tar.gz";
     sha256 = "1sa3ch12qxa4h3ya6hkz119yclcccmincl9j20dhrdx5mykp3b4k";
@@ -11,7 +13,7 @@ stdenv.mkDerivation (rec {
   patches = [ ./no-gets.patch ];
 
   configureFlags = [ "--disable-csharp" ]
-     ++ (stdenv.lib.optionals stdenv.isCygwin
+     ++ (optionals stdenv.isCygwin
           [ # We have a static libiconv, so we can only build the static lib.
             "--disable-shared" "--enable-static"
 
@@ -30,12 +32,12 @@ stdenv.mkDerivation (rec {
     fi
   '';
 
-  buildInputs = stdenv.lib.optional (!stdenv.isLinux) libiconv;
-  
+  buildInputs = libiconvOrEmpty;
+
   enableParallelBuilding = true;
-      
+
   crossAttrs = {
-    buildInputs = stdenv.lib.optional (stdenv.gccCross.libc ? libiconv)
+    buildInputs = optional (stdenv.gccCross.libc ? libiconv)
       stdenv.gccCross.libc.libiconv.crossDrv;
     # Gettext fails to guess the cross compiler
     configureFlags = "CXX=${stdenv.cross.config}-g++";
@@ -70,9 +72,11 @@ stdenv.mkDerivation (rec {
   };
 }
 
-//
+// optionalAttrs stdenv.isDarwin {
+  makeFlags = "CFLAGS=-D_FORTIFY_SOURCE=0";
+}
 
-stdenv.lib.optionalAttrs stdenv.isCygwin {
+// optionalAttrs stdenv.isCygwin {
   patchPhase =
    # Make sure `error.c' gets compiled and is part of `libgettextlib.la'.
    # This fixes:
diff --git a/pkgs/development/libraries/glew/default.nix b/pkgs/development/libraries/glew/default.nix
index 14b44801e76..313eec0bc7d 100644
--- a/pkgs/development/libraries/glew/default.nix
+++ b/pkgs/development/libraries/glew/default.nix
@@ -8,6 +8,7 @@ stdenv.mkDerivation rec {
     sha256 = "11xpmsw7m5qn7y8fa2ihhqcislz1bdd83mp99didd5ac84756dlv";
   };
 
+
   buildInputs = [ x11 libXmu libXi ];
   propagatedBuildInputs = [ mesa_glu ]; # GL/glew.h includes GL/glu.h
 
@@ -15,8 +16,9 @@ stdenv.mkDerivation rec {
     sed -i 's|lib64|lib|' config/Makefile.linux
   '';
 
+buildPhase = "make all";
   installPhase = ''
-    GLEW_DEST=$out make install
+    GLEW_DEST=$out make install.all
     mkdir -pv $out/share/doc/glew
     mkdir -p $out/lib/pkgconfig
     cp glew*.pc $out/lib/pkgconfig
diff --git a/pkgs/development/libraries/gnu-efi/default.nix b/pkgs/development/libraries/gnu-efi/default.nix
index ca24db94cd0..f741a0b4f34 100644
--- a/pkgs/development/libraries/gnu-efi/default.nix
+++ b/pkgs/development/libraries/gnu-efi/default.nix
@@ -2,13 +2,13 @@
 , fetchurl
 }:
 
-let version = "3.0s"; in stdenv.mkDerivation {
+let version = "3.0u"; in stdenv.mkDerivation {
 
   name = "gnu-efi-${version}";
 
   src = fetchurl {
     url = "mirror://sourceforge/gnu-efi/gnu-efi_${version}.orig.tar.gz";
-    sha256 = "18bpswzkj81dadq1b7n2s9g0cz60l34ggzxlq21mb8va10j9zmhh";
+    sha256 = "0klkdxh1aqwwfm393q67nxww6liffyp2lfybbnh4q819b06la39w";
   };
 
   meta = {
@@ -34,7 +34,7 @@ let version = "3.0s"; in stdenv.mkDerivation {
   '';
 
   installPhase = ''
-    make INSTALLROOT="$out" install
+    make PREFIX="$out" install
     mkdir -pv $out/share/gnu-efi
     install -D -m644 apps/*.efi $out/share/gnu-efi
   '';
diff --git a/pkgs/development/libraries/gnutls/3.2.nix b/pkgs/development/libraries/gnutls/3.2.nix
new file mode 100644
index 00000000000..5a5b6aa94e2
--- /dev/null
+++ b/pkgs/development/libraries/gnutls/3.2.nix
@@ -0,0 +1,73 @@
+{ fetchurl, stdenv, zlib, lzo, libtasn1, nettle, pkgconfig, lzip
+, guileBindings, guile, perl, gmp }:
+
+assert guileBindings -> guile != null;
+
+stdenv.mkDerivation (rec {
+
+  name = "gnutls-3.2.4";
+
+  src = fetchurl {
+    url = "ftp://ftp.gnutls.org/gcrypt/gnutls/v3.2/${name}.tar.lz";
+    sha256 = "0zl4h37g51xyaalv3qp2hvn1m6z7xzfw4yvpvi6mby4x5sqrrp8i";
+  };
+
+  # 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-libnettle-prefix="${nettle}"                       \
+      CPPFLAGS="-I${gmp}/include"                               \
+      ${if guileBindings
+        then "--enable-guile --with-guile-site-dir=\"$out/share/guile/site\""
+        else ""}
+  '';
+
+  # Build of the Guile bindings is not parallel-safe.  See
+  # <http://git.savannah.gnu.org/cgit/gnutls.git/commit/?id=330995a920037b6030ec0282b51dde3f8b493cad>
+  # for the actual fix.
+  enableParallelBuilding = false;
+
+  buildInputs = [ zlib lzo lzip ]
+    ++ stdenv.lib.optional guileBindings guile;
+
+  nativeBuildInputs = [ perl pkgconfig ];
+
+  propagatedBuildInputs = [ nettle libtasn1 ];
+
+  # XXX: Gnulib's `test-select' fails on FreeBSD:
+  # http://hydra.nixos.org/build/2962084/nixlog/1/raw .
+  doCheck = (!stdenv.isFreeBSD && !stdenv.isDarwin);
+
+  meta = with stdenv.lib; {
+    description = "The GNU Transport Layer Security Library";
+
+    longDescription = ''
+       GnuTLS is a project that aims to develop a library which
+       provides a secure layer, over a reliable transport
+       layer. Currently the GnuTLS library implements the proposed
+       standards by the IETF's TLS working group.
+
+       Quoting from the TLS protocol specification:
+
+       "The TLS protocol provides communications privacy over the
+       Internet. The protocol allows client/server applications to
+       communicate in a way that is designed to prevent eavesdropping,
+       tampering, or message forgery."
+    '';
+
+    homepage = http://www.gnu.org/software/gnutls/;
+    license = "LGPLv2.1+";
+    maintainers = [ ];
+  };
+}
+
+//
+
+(stdenv.lib.optionalAttrs stdenv.isFreeBSD {
+  # FreeBSD doesn't have <alloca.h>, and Gnulib's `alloca' module isn't used.
+  patches = [ ./guile-gnulib-includes.patch ];
+}))
diff --git a/pkgs/development/libraries/gssdp/default.nix b/pkgs/development/libraries/gssdp/default.nix
index 28bad546084..c33457544f5 100644
--- a/pkgs/development/libraries/gssdp/default.nix
+++ b/pkgs/development/libraries/gssdp/default.nix
@@ -11,7 +11,7 @@ stdenv.mkDerivation {
   buildInputs = [pkgconfig libsoup glib libxml2];
 
   meta = {
-    description = "A GObject-based API for handling resource discovery and announcement over SSDP.";
+    description = "GObject-based API for handling resource discovery and announcement over SSDP";
     homepage = http://www.gupnp.org/;
     license = "LGPL v2";
     platforms = stdenv.lib.platforms.all;
diff --git a/pkgs/development/libraries/gtk+/3.x.nix b/pkgs/development/libraries/gtk+/3.x.nix
index 31bdba716b9..76424d79d7a 100644
--- a/pkgs/development/libraries/gtk+/3.x.nix
+++ b/pkgs/development/libraries/gtk+/3.x.nix
@@ -8,11 +8,11 @@ assert xineramaSupport -> xlibs.libXinerama != null;
 assert cupsSupport -> cups != null;
 
 stdenv.mkDerivation rec {
-  name = "gtk+-3.8.2";
+  name = "gtk+-3.8.4";
 
   src = fetchurl {
     url = "mirror://gnome/sources/gtk+/3.8/${name}.tar.xz";
-    sha256 = "15zjmyky4yw70ipi12dllira4av8wjpw5f7g9kbrbpx12nf0ra0w";
+    sha256 = "1qlj0qdhkp8j5xiris4l4xnx47g4pbk4qnj3nf8rwa82fwb610xh";
   };
 
   enableParallelBuilding = true;
@@ -45,7 +45,7 @@ stdenv.mkDerivation rec {
 
     license = "LGPLv2+";
 
-    maintainers = with stdenv.lib.maintainers; [urkud raskin];
+    maintainers = with stdenv.lib.maintainers; [ urkud raskin vcunat];
     platforms = stdenv.lib.platforms.all;
   };
 }
diff --git a/pkgs/development/libraries/gurobi/default.nix b/pkgs/development/libraries/gurobi/default.nix
new file mode 100644
index 00000000000..4bdee56ae99
--- /dev/null
+++ b/pkgs/development/libraries/gurobi/default.nix
@@ -0,0 +1,25 @@
+{ stdenv, requireFile }:
+
+stdenv.mkDerivation {
+  name = "gurobi-5.6.0";
+
+  src = requireFile {
+    name = "gurobi5.6.0_linux64.tar.gz";
+    sha256 = "1qwfjyx5y71x97gkndqnl9h4xc8hl48zwcwss7jagqfj3gxwvnky";
+    url = "http://www.gurobi.com/download/gurobi-optimizer";
+  };
+
+  installPhase = "mv linux64 $out";
+
+  fixupPhase = ''
+    interp=`cat $NIX_GCC/nix-support/dynamic-linker`
+    find $out/bin -type f -executable -exec patchelf --interpreter "$interp" --set-rpath $out/lib {} \;
+  '';
+
+  meta = {
+    description = "State-of-the-art mathematical programming solver";
+    homepage = http://www.gurobi.com/;
+    license = "unfree";
+    maintainers = [ stdenv.lib.maintainers.shlevy ];
+  };
+}
diff --git a/pkgs/development/libraries/gusb/default.nix b/pkgs/development/libraries/gusb/default.nix
new file mode 100644
index 00000000000..0534df821cc
--- /dev/null
+++ b/pkgs/development/libraries/gusb/default.nix
@@ -0,0 +1,30 @@
+{stdenv, fetchurl, fetchgit
+, automake, autoconf, libtool, which, gtkdoc, gettext, pkgconfig, gobjectIntrospection, libxslt
+, glib, systemd, libusb1
+}:
+stdenv.mkDerivation {
+  name = "gusb-git";
+  enableParallelBuilding = true;
+
+  src = fetchgit {
+    url = git://gitorious.org/gusb/gusb.git;
+    rev = "53226a15a627b20fde38303c2141a17985d741ae";
+    sha256 = "01daf09f663e27bdd92532e3e2a3e87de895e9cc1f150d4e0fc75b0dc489fccf";
+  };
+
+  preConfigure = "./autogen.sh";
+
+  buildInputs = [
+    pkgconfig autoconf automake libtool which gtkdoc gettext gobjectIntrospection libxslt
+    systemd libusb1
+    glib
+  ];
+
+  meta = {
+    description = "GLib libusb wrapper";
+    homepage = http://gitorious.org/gusb;
+    license = stdenv.lib.licenses.lgpl21;
+    maintainers = [stdenv.lib.maintainers.marcweber];
+    platforms = stdenv.lib.platforms.linux;
+  };
+}
diff --git a/pkgs/development/libraries/harfbuzz/default.nix b/pkgs/development/libraries/harfbuzz/default.nix
index 4fb024db0e1..1202ab5825d 100644
--- a/pkgs/development/libraries/harfbuzz/default.nix
+++ b/pkgs/development/libraries/harfbuzz/default.nix
@@ -1,4 +1,5 @@
-{ stdenv, fetchurl, pkgconfig, glib, freetype, libintlOrEmpty }:
+{ stdenv, fetchurl, pkgconfig, glib, freetype,
+  icu ? null, graphite2 ? null, libintlOrEmpty }:
 
 stdenv.mkDerivation rec {
   name = "harfbuzz-0.9.12";
@@ -8,7 +9,12 @@ stdenv.mkDerivation rec {
     sha256 = "19cx5y2m20rp7z5j7mwqfb4ph2g8lrri69zim44x362y4w5gfly6";
   };
 
-  buildInputs = [ pkgconfig glib freetype ] ++ libintlOrEmpty;
+  buildInputs = [ pkgconfig glib freetype ]
+    ++ libintlOrEmpty;
+  propagatedBuildInputs = []
+    ++ (stdenv.lib.optionals (icu != null) [icu])
+    ++ (stdenv.lib.optionals (graphite2 != null) [graphite2])
+    ;
 
   meta = {
     description = "An OpenType text shaping engine";
diff --git a/pkgs/development/libraries/haskell/Agda/default.nix b/pkgs/development/libraries/haskell/Agda/default.nix
index 64c9d9d51e5..749802f95b2 100644
--- a/pkgs/development/libraries/haskell/Agda/default.nix
+++ b/pkgs/development/libraries/haskell/Agda/default.nix
@@ -5,8 +5,8 @@
 
 cabal.mkDerivation (self: {
   pname = "Agda";
-  version = "2.3.2.1";
-  sha256 = "1dlf0cs913ma8wjvra8x6p0lwi1pk7ynbdq4lxgbdfgqkbnh43kr";
+  version = "2.3.2.2";
+  sha256 = "0zr2rg2yvq6pqg69c6h7hqqpc5nj8prfhcvj5p2alkby0vs110qc";
   isLibrary = true;
   isExecutable = true;
   buildDepends = [
diff --git a/pkgs/development/libraries/haskell/Cabal/1.18.0.nix b/pkgs/development/libraries/haskell/Cabal/1.18.1.2.nix
index 6e0d3074bdb..024a4d5c135 100644
--- a/pkgs/development/libraries/haskell/Cabal/1.18.0.nix
+++ b/pkgs/development/libraries/haskell/Cabal/1.18.1.2.nix
@@ -5,8 +5,8 @@
 
 cabal.mkDerivation (self: {
   pname = "Cabal";
-  version = "1.18.0";
-  sha256 = "1nxvkfkjkyxsa4nbrwl59r84j63qh2qx4cbd3vnr6vvdnflbix8f";
+  version = "1.18.1.2";
+  sha256 = "0pbg9d40lskcps248fdcnm4hnib3vl10mbcdf830zw45q29gfkjr";
   buildDepends = [ deepseq filepath time ];
   testDepends = [
     extensibleExceptions filepath HUnit QuickCheck regexPosix
diff --git a/pkgs/development/libraries/haskell/ChasingBottoms/default.nix b/pkgs/development/libraries/haskell/ChasingBottoms/default.nix
index 719e5eb2cee..b22272a7703 100644
--- a/pkgs/development/libraries/haskell/ChasingBottoms/default.nix
+++ b/pkgs/development/libraries/haskell/ChasingBottoms/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "ChasingBottoms";
-  version = "1.3.0.6";
-  sha256 = "1l40n1ylzrbp0lhm80q9djl8mf39zvmw7zzlg0gzxsqbzwbsggx8";
+  version = "1.3.0.7";
+  sha256 = "0g1bx6d2mi27qsb4bxvby50g39fm56gyi2658fyjiq1gamy50ypa";
   isLibrary = true;
   isExecutable = true;
   buildDepends = [ mtl QuickCheck random syb ];
diff --git a/pkgs/development/libraries/haskell/GLFW/default.nix b/pkgs/development/libraries/haskell/GLFW/default.nix
index f204bcdf655..26a132ae028 100644
--- a/pkgs/development/libraries/haskell/GLFW/default.nix
+++ b/pkgs/development/libraries/haskell/GLFW/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "GLFW";
-  version = "0.5.1.0";
-  sha256 = "190d75w84y9gayxvdz13dnzpyflc5qy4vdg5iv9p2dpcamcih3km";
+  version = "0.5.2.0";
+  sha256 = "06vps929dmk9yimfv7jj12m0p0bf4ih0ssf6rbcq2j6i9wbhpxq3";
   buildDepends = [ OpenGL ];
   extraLibraries = [ libX11 mesa ];
   meta = {
diff --git a/pkgs/development/libraries/haskell/GLURaw/1.4.0.0.nix b/pkgs/development/libraries/haskell/GLURaw/1.4.0.0.nix
new file mode 100644
index 00000000000..a6f0e61d273
--- /dev/null
+++ b/pkgs/development/libraries/haskell/GLURaw/1.4.0.0.nix
@@ -0,0 +1,16 @@
+{ cabal, freeglut, mesa, OpenGLRaw }:
+
+cabal.mkDerivation (self: {
+  pname = "GLURaw";
+  version = "1.4.0.0";
+  sha256 = "0q86rpd5cx0vrb9d3y1fljc3mg0p8wy6xdn37ngv2s0f4kslq63g";
+  buildDepends = [ OpenGLRaw ];
+  extraLibraries = [ freeglut mesa ];
+  meta = {
+    homepage = "http://www.haskell.org/haskellwiki/Opengl";
+    description = "A raw binding for the OpenGL graphics system";
+    license = self.stdenv.lib.licenses.bsd3;
+    platforms = self.ghc.meta.platforms;
+    maintainers = [ self.stdenv.lib.maintainers.andres ];
+  };
+})
diff --git a/pkgs/development/libraries/haskell/GLUT/2.5.0.1.nix b/pkgs/development/libraries/haskell/GLUT/2.5.0.1.nix
new file mode 100644
index 00000000000..f57cb34fb4a
--- /dev/null
+++ b/pkgs/development/libraries/haskell/GLUT/2.5.0.1.nix
@@ -0,0 +1,18 @@
+{ cabal, freeglut, libICE, libSM, libXi, libXmu, mesa, OpenGL
+, OpenGLRaw
+}:
+
+cabal.mkDerivation (self: {
+  pname = "GLUT";
+  version = "2.5.0.1";
+  sha256 = "0f0bz64j7fxa0np8w53n51ri5m0pkwyc1kv7pvdnx02h181gl6l0";
+  buildDepends = [ OpenGL OpenGLRaw ];
+  extraLibraries = [ freeglut libICE libSM libXi libXmu mesa ];
+  meta = {
+    homepage = "http://www.haskell.org/haskellwiki/Opengl";
+    description = "A binding for the OpenGL Utility Toolkit";
+    license = self.stdenv.lib.licenses.bsd3;
+    platforms = self.ghc.meta.platforms;
+    maintainers = [ self.stdenv.lib.maintainers.andres ];
+  };
+})
diff --git a/pkgs/development/libraries/haskell/HDBC/HDBC-postgresql.nix b/pkgs/development/libraries/haskell/HDBC/HDBC-postgresql.nix
index b66ed3ce28f..94fcd71adbd 100644
--- a/pkgs/development/libraries/haskell/HDBC/HDBC-postgresql.nix
+++ b/pkgs/development/libraries/haskell/HDBC/HDBC-postgresql.nix
@@ -4,8 +4,8 @@
 
 cabal.mkDerivation (self: {
   pname = "HDBC-postgresql";
-  version = "2.3.2.1";
-  sha256 = "1ji10w4d91dp3ci7pn1jd8nb3wasszwlsy1lfbb4mqnr15c9vnpb";
+  version = "2.3.2.2";
+  sha256 = "0x42lf429dxjkz22jn5fybimlixxs20zq01ap40344qlwh01hd90";
   isLibrary = true;
   isExecutable = true;
   buildDepends = [ convertible HDBC mtl parsec time utf8String ];
diff --git a/pkgs/development/libraries/haskell/HTF/default.nix b/pkgs/development/libraries/haskell/HTF/default.nix
new file mode 100644
index 00000000000..7abdc9b4730
--- /dev/null
+++ b/pkgs/development/libraries/haskell/HTF/default.nix
@@ -0,0 +1,26 @@
+{ cabal, aeson, cpphs, Diff, filepath, haskellSrcExts, HUnit
+, liftedBase, monadControl, mtl, QuickCheck, random, regexCompat
+, temporary, text, unorderedContainers, xmlgen
+}:
+
+cabal.mkDerivation (self: {
+  pname = "HTF";
+  version = "0.11.0.1";
+  sha256 = "0c4z76rsmdck60p7p2ypxx0d0r7k2vcb9viqp2yalyxzaaj7a9f5";
+  isLibrary = true;
+  isExecutable = true;
+  buildDepends = [
+    aeson cpphs Diff haskellSrcExts HUnit liftedBase monadControl mtl
+    QuickCheck random regexCompat text xmlgen
+  ];
+  testDepends = [
+    aeson filepath mtl random regexCompat temporary text
+    unorderedContainers
+  ];
+  meta = {
+    homepage = "https://github.com/skogsbaer/HTF/";
+    description = "The Haskell Test Framework";
+    license = "LGPL";
+    platforms = self.ghc.meta.platforms;
+  };
+})
diff --git a/pkgs/development/libraries/haskell/HTTP/4000.2.8.nix b/pkgs/development/libraries/haskell/HTTP/4000.2.8.nix
index 1b52261dea0..09f0b25910b 100644
--- a/pkgs/development/libraries/haskell/HTTP/4000.2.8.nix
+++ b/pkgs/development/libraries/haskell/HTTP/4000.2.8.nix
@@ -12,6 +12,7 @@ cabal.mkDerivation (self: {
     caseInsensitive conduit deepseq httpdShed httpTypes HUnit mtl
     network pureMD5 split testFramework testFrameworkHunit wai warp
   ];
+  jailbreak = true;
   doCheck = false;
   meta = {
     homepage = "https://github.com/haskell/HTTP";
diff --git a/pkgs/development/libraries/haskell/Hipmunk/default.nix b/pkgs/development/libraries/haskell/Hipmunk/default.nix
index 7ee64f4254e..e2f78497a7a 100644
--- a/pkgs/development/libraries/haskell/Hipmunk/default.nix
+++ b/pkgs/development/libraries/haskell/Hipmunk/default.nix
@@ -2,11 +2,11 @@
 
 cabal.mkDerivation (self: {
   pname = "Hipmunk";
-  version = "5.2.0.11";
-  sha256 = "0pcbwlq0njgj6dzh8h94gml63wv52f6l9hdas378lm7v8gbizxl7";
+  version = "5.2.0.12";
+  sha256 = "0gybmwwij6gs3gsklcvck0nc1niyh6pvirnxgrcwclrz94ivpj42";
   buildDepends = [ StateVar transformers ];
   meta = {
-    homepage = "http://patch-tag.com/r/felipe/hipmunk/home";
+    homepage = "https://github.com/meteficha/Hipmunk";
     description = "A Haskell binding for Chipmunk";
     license = "unknown";
     platforms = self.ghc.meta.platforms;
diff --git a/pkgs/development/libraries/haskell/JuicyPixels/default.nix b/pkgs/development/libraries/haskell/JuicyPixels/default.nix
index 2a7bc888c48..b2947318a1f 100644
--- a/pkgs/development/libraries/haskell/JuicyPixels/default.nix
+++ b/pkgs/development/libraries/haskell/JuicyPixels/default.nix
@@ -1,13 +1,13 @@
-{ cabal, binary, deepseq, mmap, mtl, primitive, transformers
-, vector, zlib
+{ cabal, binary, deepseq, mtl, primitive, transformers, vector
+, zlib
 }:
 
 cabal.mkDerivation (self: {
   pname = "JuicyPixels";
-  version = "3.1";
-  sha256 = "1z3adva85qgdyx85hldqi99lnb3pg7a42q44zxil4gxwi62pw4xr";
+  version = "3.1.1.1";
+  sha256 = "0lvhaa8pqknkcsfps5gcbwiqx0y1rhasiw9hwy7975vgpsh58dph";
   buildDepends = [
-    binary deepseq mmap mtl primitive transformers vector zlib
+    binary deepseq mtl primitive transformers vector zlib
   ];
   meta = {
     homepage = "https://github.com/Twinside/Juicy.Pixels";
diff --git a/pkgs/development/libraries/haskell/MonadRandom/default.nix b/pkgs/development/libraries/haskell/MonadRandom/default.nix
index 9018bc603cf..32c2f9eeffe 100644
--- a/pkgs/development/libraries/haskell/MonadRandom/default.nix
+++ b/pkgs/development/libraries/haskell/MonadRandom/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "MonadRandom";
-  version = "0.1.11";
-  sha256 = "107f3ch84riagxa9x6yk4gxq2vq5dsk63rd0780g1fdplnf1sky3";
+  version = "0.1.12";
+  sha256 = "0lr1lvpcj96i6n0w810bjy8k9jygx97nnv0k2zb51d7saw6y95p4";
   buildDepends = [ mtl random transformers ];
   meta = {
     description = "Random-number generation monad";
diff --git a/pkgs/development/libraries/haskell/OpenGL/2.9.1.0.nix b/pkgs/development/libraries/haskell/OpenGL/2.9.1.0.nix
new file mode 100644
index 00000000000..6f79b5c7a06
--- /dev/null
+++ b/pkgs/development/libraries/haskell/OpenGL/2.9.1.0.nix
@@ -0,0 +1,16 @@
+{ cabal, GLURaw, libX11, mesa, OpenGLRaw, text }:
+
+cabal.mkDerivation (self: {
+  pname = "OpenGL";
+  version = "2.9.1.0";
+  sha256 = "09xzjaa9qyh7bfsnq226v9zi6lhnalhmlqlca3808hgax8ijwhp3";
+  buildDepends = [ GLURaw OpenGLRaw text ];
+  extraLibraries = [ libX11 mesa ];
+  meta = {
+    homepage = "http://www.haskell.org/haskellwiki/Opengl";
+    description = "A binding for the OpenGL graphics system";
+    license = self.stdenv.lib.licenses.bsd3;
+    platforms = self.ghc.meta.platforms;
+    maintainers = [ self.stdenv.lib.maintainers.andres ];
+  };
+})
diff --git a/pkgs/development/libraries/haskell/OpenGLRaw/1.4.0.0.nix b/pkgs/development/libraries/haskell/OpenGLRaw/1.4.0.0.nix
new file mode 100644
index 00000000000..1145c16b4f8
--- /dev/null
+++ b/pkgs/development/libraries/haskell/OpenGLRaw/1.4.0.0.nix
@@ -0,0 +1,15 @@
+{ cabal, mesa }:
+
+cabal.mkDerivation (self: {
+  pname = "OpenGLRaw";
+  version = "1.4.0.0";
+  sha256 = "112xaz01950pyjaw3cv9yvw4w3gqbf79idyyh05ain7x29m7bxkh";
+  extraLibraries = [ mesa ];
+  meta = {
+    homepage = "http://www.haskell.org/haskellwiki/Opengl";
+    description = "A raw binding for the OpenGL graphics system";
+    license = self.stdenv.lib.licenses.bsd3;
+    platforms = self.ghc.meta.platforms;
+    maintainers = [ self.stdenv.lib.maintainers.andres ];
+  };
+})
diff --git a/pkgs/development/libraries/haskell/accelerate-cuda/default.nix b/pkgs/development/libraries/haskell/accelerate-cuda/default.nix
index bc428ab1dc4..cabfccc0266 100644
--- a/pkgs/development/libraries/haskell/accelerate-cuda/default.nix
+++ b/pkgs/development/libraries/haskell/accelerate-cuda/default.nix
@@ -5,8 +5,8 @@
 
 cabal.mkDerivation (self: {
   pname = "accelerate-cuda";
-  version = "0.13.0.3";
-  sha256 = "1y0v7w08pywb8qlw0b5aw4f8pkx4bjlfwxpqq2zfqmjsclnlifkb";
+  version = "0.13.0.4";
+  sha256 = "0zdb02mj9sbkj51a1q7sl6kmjx51gvps52dwc70qpm3rk71qnp1k";
   buildDepends = [
     accelerate binary cryptohash cuda fclabels filepath hashable
     hashtables languageCQuote mainlandPretty mtl SafeSemaphore srcloc
diff --git a/pkgs/development/libraries/haskell/accelerate-fft/default.nix b/pkgs/development/libraries/haskell/accelerate-fft/default.nix
index 523e5ae1504..b3c1cb90b29 100644
--- a/pkgs/development/libraries/haskell/accelerate-fft/default.nix
+++ b/pkgs/development/libraries/haskell/accelerate-fft/default.nix
@@ -9,6 +9,6 @@ cabal.mkDerivation (self: {
     homepage = "https://github.com/AccelerateHS/accelerate-fft";
     description = "FFT using the Accelerate library";
     license = self.stdenv.lib.licenses.bsd3;
-    platforms = self.ghc.meta.platforms;
+    platforms = self.stdenv.lib.platforms.none;
   };
 })
diff --git a/pkgs/development/libraries/haskell/accelerate/default.nix b/pkgs/development/libraries/haskell/accelerate/default.nix
index c2484116f46..b7979f6f5f2 100644
--- a/pkgs/development/libraries/haskell/accelerate/default.nix
+++ b/pkgs/development/libraries/haskell/accelerate/default.nix
@@ -5,6 +5,7 @@ cabal.mkDerivation (self: {
   version = "0.13.0.5";
   sha256 = "1vqkv3k0w1zy0111a786npf3hypbcg675lbdkv2cf3zx5hqcnn6j";
   buildDepends = [ fclabels hashable hashtables ];
+  jailbreak = true;
   meta = {
     homepage = "https://github.com/AccelerateHS/accelerate/";
     description = "An embedded language for accelerated array processing";
diff --git a/pkgs/development/libraries/haskell/acid-state/default.nix b/pkgs/development/libraries/haskell/acid-state/default.nix
index 28d8def56cf..8b9bce21d73 100644
--- a/pkgs/development/libraries/haskell/acid-state/default.nix
+++ b/pkgs/development/libraries/haskell/acid-state/default.nix
@@ -4,8 +4,8 @@
 
 cabal.mkDerivation (self: {
   pname = "acid-state";
-  version = "0.11.4";
-  sha256 = "1z9jswg5c2wp9k2lfp0yx7mvw6iiyizm72s552lgjn8i3slq8481";
+  version = "0.12.1";
+  sha256 = "0smqhj4layckdsm8xjz1rwgpcqwm5xj2vr8g4i463vgq776fl0q6";
   buildDepends = [
     cereal extensibleExceptions filepath mtl network safecopy stm
   ];
diff --git a/pkgs/development/libraries/haskell/active/default.nix b/pkgs/development/libraries/haskell/active/default.nix
index c51663a9d09..1d6df75e5fa 100644
--- a/pkgs/development/libraries/haskell/active/default.nix
+++ b/pkgs/development/libraries/haskell/active/default.nix
@@ -4,12 +4,13 @@
 
 cabal.mkDerivation (self: {
   pname = "active";
-  version = "0.1.0.6";
-  sha256 = "0hh52hkmma4lxfv3gj7x23cwx8v6wd1cm9hblvhzhylxk8dyl5m7";
+  version = "0.1.0.8";
+  sha256 = "1q2zrx1i5j04c9bss7c19nm6lqasmwxyfzkh49my7yaik95k7bw9";
   buildDepends = [ newtype semigroupoids semigroups vectorSpace ];
   testDepends = [
     newtype QuickCheck semigroupoids semigroups vectorSpace
   ];
+  jailbreak = true;
   meta = {
     description = "Abstractions for animation";
     license = self.stdenv.lib.licenses.bsd3;
diff --git a/pkgs/development/libraries/haskell/aeson-pretty/default.nix b/pkgs/development/libraries/haskell/aeson-pretty/default.nix
new file mode 100644
index 00000000000..d51274c83e9
--- /dev/null
+++ b/pkgs/development/libraries/haskell/aeson-pretty/default.nix
@@ -0,0 +1,20 @@
+{ cabal, aeson, attoparsec, cmdargs, text, unorderedContainers
+, vector
+}:
+
+cabal.mkDerivation (self: {
+  pname = "aeson-pretty";
+  version = "0.7";
+  sha256 = "0zkqs3f4mr0v0j582h9ssq7dxgfkk59s7y66b640hc4zf0b5p7g7";
+  isLibrary = true;
+  isExecutable = true;
+  buildDepends = [
+    aeson attoparsec cmdargs text unorderedContainers vector
+  ];
+  meta = {
+    homepage = "http://github.com/informatikr/aeson-pretty";
+    description = "JSON pretty-printing library and command-line tool";
+    license = self.stdenv.lib.licenses.bsd3;
+    platforms = self.ghc.meta.platforms;
+  };
+})
diff --git a/pkgs/development/libraries/haskell/aeson/default.nix b/pkgs/development/libraries/haskell/aeson/default.nix
index bcb202c64d0..edd2a21040e 100644
--- a/pkgs/development/libraries/haskell/aeson/default.nix
+++ b/pkgs/development/libraries/haskell/aeson/default.nix
@@ -5,8 +5,8 @@
 
 cabal.mkDerivation (self: {
   pname = "aeson";
-  version = "0.6.2.0";
-  sha256 = "1f7bzgwl9pm5a79gr3a8wxh7dyz4k2508d0bw4l0mbjgv6r7s4an";
+  version = "0.6.2.1";
+  sha256 = "00fa13qr38s4c0fwfvpks3x3sb21kh71cv1v0x2zqg0adnaydknb";
   buildDepends = [
     attoparsec blazeBuilder deepseq dlist hashable mtl syb text time
     unorderedContainers vector
diff --git a/pkgs/development/libraries/haskell/amqp/default.nix b/pkgs/development/libraries/haskell/amqp/default.nix
new file mode 100644
index 00000000000..432d353a0af
--- /dev/null
+++ b/pkgs/development/libraries/haskell/amqp/default.nix
@@ -0,0 +1,23 @@
+{ cabal, binary, clock, dataBinaryIeee754, hspec, hspecExpectations
+, network, split, text, xml
+}:
+
+cabal.mkDerivation (self: {
+  pname = "amqp";
+  version = "0.7.0";
+  sha256 = "09zazmbdw8nphbjkmixn2dpwdgkjqjfbn6jv522ykvrcnsn35kc4";
+  isLibrary = true;
+  isExecutable = true;
+  buildDepends = [
+    binary clock dataBinaryIeee754 network split text xml
+  ];
+  testDepends = [
+    binary dataBinaryIeee754 hspec hspecExpectations network split text
+  ];
+  meta = {
+    homepage = "https://github.com/hreinhardt/amqp";
+    description = "Client library for AMQP servers (currently only RabbitMQ)";
+    license = self.stdenv.lib.licenses.bsd3;
+    platforms = self.ghc.meta.platforms;
+  };
+})
diff --git a/pkgs/development/libraries/haskell/asn1-types/default.nix b/pkgs/development/libraries/haskell/asn1-types/default.nix
index a50ee82a38d..c28885b38ed 100644
--- a/pkgs/development/libraries/haskell/asn1-types/default.nix
+++ b/pkgs/development/libraries/haskell/asn1-types/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "asn1-types";
-  version = "0.2.0";
-  sha256 = "0350g5p3zbvm29nnjd554i6fyc47vmzpb42w6q46v3i9fiy23kvd";
+  version = "0.2.1";
+  sha256 = "1gnyvinimxb9vw3gwvsdvja8ascm07v9f5grxh42fzqkx6fm5xvr";
   buildDepends = [ time ];
   meta = {
     homepage = "http://github.com/vincenthz/hs-asn1-types";
diff --git a/pkgs/development/libraries/haskell/basic-prelude/default.nix b/pkgs/development/libraries/haskell/basic-prelude/default.nix
index cdf929d8027..8d31acb399f 100644
--- a/pkgs/development/libraries/haskell/basic-prelude/default.nix
+++ b/pkgs/development/libraries/haskell/basic-prelude/default.nix
@@ -1,13 +1,13 @@
-{ cabal, hashable, liftedBase, ReadArgs, systemFilepath, text
+{ cabal, hashable, liftedBase, ReadArgs, safe, systemFilepath, text
 , transformers, unorderedContainers, vector
 }:
 
 cabal.mkDerivation (self: {
   pname = "basic-prelude";
-  version = "0.3.5.0";
-  sha256 = "1nrfibvvh5vzzr2jz5hipsj29b7ml6d90ijlr917n9aq200w14ar";
+  version = "0.3.6.0";
+  sha256 = "1sm89mva8vkhqp230g965b0k4n3g0c8w4sfsad8m1wh434g3k732";
   buildDepends = [
-    hashable liftedBase ReadArgs systemFilepath text transformers
+    hashable liftedBase ReadArgs safe systemFilepath text transformers
     unorderedContainers vector
   ];
   meta = {
diff --git a/pkgs/development/libraries/haskell/bifunctors/default.nix b/pkgs/development/libraries/haskell/bifunctors/default.nix
index c659c3bc3be..d7c8fa6debb 100644
--- a/pkgs/development/libraries/haskell/bifunctors/default.nix
+++ b/pkgs/development/libraries/haskell/bifunctors/default.nix
@@ -2,12 +2,12 @@
 
 cabal.mkDerivation (self: {
   pname = "bifunctors";
-  version = "3.2.0.1";
-  sha256 = "1biicx0zi48wzzi7vkhzvrdyk59hmmm1bqbsga6x5nbrbf3qrkm6";
+  version = "4.1.0.1";
+  sha256 = "1mf1v64g5pr2k1jpc7i4994ki2fp5vkxg4n5v84lfbl2r3kr92yg";
   buildDepends = [ semigroupoids semigroups tagged ];
   meta = {
     homepage = "http://github.com/ekmett/bifunctors/";
-    description = "Haskell 98 bifunctors";
+    description = "Bifunctors";
     license = self.stdenv.lib.licenses.bsd3;
     platforms = self.ghc.meta.platforms;
   };
diff --git a/pkgs/development/libraries/haskell/bindings-DSL/default.nix b/pkgs/development/libraries/haskell/bindings-DSL/default.nix
index d333a287749..ed2a631419a 100644
--- a/pkgs/development/libraries/haskell/bindings-DSL/default.nix
+++ b/pkgs/development/libraries/haskell/bindings-DSL/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "bindings-DSL";
-  version = "1.0.17";
-  sha256 = "1203n6wzdp21hd7zdhvhppxhkz4xr3qykwkb8j5mb2s4kijx01bn";
+  version = "1.0.20";
+  sha256 = "11qc02fkmrpy6c1a85lwlz06m4fpvfpbpbxgv5rkyb1amg2cnklq";
   meta = {
     homepage = "http://bitbucket.org/mauricio/bindings-dsl";
     description = "FFI domain specific language, on top of hsc2hs";
diff --git a/pkgs/development/libraries/haskell/bindings-libusb/default.nix b/pkgs/development/libraries/haskell/bindings-libusb/default.nix
new file mode 100644
index 00000000000..aeea654577a
--- /dev/null
+++ b/pkgs/development/libraries/haskell/bindings-libusb/default.nix
@@ -0,0 +1,15 @@
+{ cabal, bindingsDSL, libusb }:
+
+cabal.mkDerivation (self: {
+  pname = "bindings-libusb";
+  version = "1.4.4.1";
+  sha256 = "1cip5a0n8svjkzawpx3wi9z7nywmn9bl3k2w559b3awy0wixybrx";
+  buildDepends = [ bindingsDSL ];
+  pkgconfigDepends = [ libusb ];
+  meta = {
+    homepage = "https://github.com/basvandijk/bindings-libusb";
+    description = "Low level bindings to libusb";
+    license = self.stdenv.lib.licenses.bsd3;
+    platforms = self.ghc.meta.platforms;
+  };
+})
diff --git a/pkgs/development/libraries/haskell/blaze-builder/default.nix b/pkgs/development/libraries/haskell/blaze-builder/default.nix
index 816537b1ab6..7c2ee140c1a 100644
--- a/pkgs/development/libraries/haskell/blaze-builder/default.nix
+++ b/pkgs/development/libraries/haskell/blaze-builder/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "blaze-builder";
-  version = "0.3.1.1";
-  sha256 = "1pnw5kjpyxf3mh72cb9a0f1qwpq3a2bkgqp1j3ny8l6nmzw0c9d1";
+  version = "0.3.2.0";
+  sha256 = "169q318jxhk7rmb8r679zhcdcmcca87d55341cnzajmc0580n6ih";
   buildDepends = [ text ];
   meta = {
     homepage = "http://github.com/meiersi/blaze-builder";
diff --git a/pkgs/development/libraries/haskell/bson/default.nix b/pkgs/development/libraries/haskell/bson/default.nix
index e572e366bdd..1fa5f3fb79f 100644
--- a/pkgs/development/libraries/haskell/bson/default.nix
+++ b/pkgs/development/libraries/haskell/bson/default.nix
@@ -4,8 +4,8 @@
 
 cabal.mkDerivation (self: {
   pname = "bson";
-  version = "0.2.2";
-  sha256 = "043lbaj4rrvh4a1yc033np51vi8xlbczflbhyx2bsiryzbi27waf";
+  version = "0.2.3";
+  sha256 = "0p8c4cq8ldspwj4pmg0l8pg8bkwsk9xan07md32ikm4bfqsnv2rb";
   buildDepends = [
     binary cryptohash dataBinaryIeee754 mtl network text time
   ];
diff --git a/pkgs/development/libraries/haskell/bytestring-progress/default.nix b/pkgs/development/libraries/haskell/bytestring-progress/default.nix
index e9bb268b9fc..c73932b3760 100644
--- a/pkgs/development/libraries/haskell/bytestring-progress/default.nix
+++ b/pkgs/development/libraries/haskell/bytestring-progress/default.nix
@@ -5,7 +5,6 @@ cabal.mkDerivation (self: {
   version = "1.0.3";
   sha256 = "1v9cl7d4fcchbdrpbgjj4ilg79cj241vzijiifdsgkq30ikv2yxs";
   buildDepends = [ terminalProgressBar time ];
-  noHaddock = true;
   meta = {
     homepage = "http://github.com/acw/bytestring-progress";
     description = "A library for tracking the consumption of a lazy ByteString";
diff --git a/pkgs/development/libraries/haskell/cabal-macosx/default.nix b/pkgs/development/libraries/haskell/cabal-macosx/default.nix
index 0f651e1eaae..351979627cb 100644
--- a/pkgs/development/libraries/haskell/cabal-macosx/default.nix
+++ b/pkgs/development/libraries/haskell/cabal-macosx/default.nix
@@ -1,12 +1,12 @@
-{ cabal, Cabal, fgl, filepath, MissingH, parsec }:
+{ cabal, Cabal, fgl, filepath, parsec, text }:
 
 cabal.mkDerivation (self: {
   pname = "cabal-macosx";
-  version = "0.2.2";
-  sha256 = "14dc7swk03q2kp5fmhwibjh0x0pzf9ah1004skgd5six0vzfc1ch";
+  version = "0.2.3";
+  sha256 = "0rvmb6lx2alr7f0v7nbv48xzg7wp4nrn03hdkjc4a4c97rai14i9";
   isLibrary = true;
   isExecutable = true;
-  buildDepends = [ Cabal fgl filepath MissingH parsec ];
+  buildDepends = [ Cabal fgl filepath parsec text ];
   meta = {
     homepage = "http://github.com/gimbo/cabal-macosx";
     description = "Cabal support for creating Mac OSX application bundles";
diff --git a/pkgs/development/libraries/haskell/case-insensitive/1.1.nix b/pkgs/development/libraries/haskell/case-insensitive/1.1.0.1.nix
index fb3a9d27101..4f63796850a 100644
--- a/pkgs/development/libraries/haskell/case-insensitive/1.1.nix
+++ b/pkgs/development/libraries/haskell/case-insensitive/1.1.0.1.nix
@@ -4,8 +4,8 @@
 
 cabal.mkDerivation (self: {
   pname = "case-insensitive";
-  version = "1.1";
-  sha256 = "1likcqdlhbbk78s887n5g9a4jjxxyh46hj4wc7l7snf6f9ygd5lj";
+  version = "1.1.0.1";
+  sha256 = "1hwkdkpr88r3s7c8w1msw1pawz8cfi0lwj1z9dcsp0xs788yzapp";
   buildDepends = [ deepseq hashable text ];
   testDepends = [ HUnit testFramework testFrameworkHunit text ];
   meta = {
diff --git a/pkgs/development/libraries/haskell/cereal/default.nix b/pkgs/development/libraries/haskell/cereal/default.nix
index a28ea11c511..4770d5216e2 100644
--- a/pkgs/development/libraries/haskell/cereal/default.nix
+++ b/pkgs/development/libraries/haskell/cereal/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "cereal";
-  version = "0.3.5.2";
-  sha256 = "0yjxvhagsm552idfrs6d9lzlz6x5878xj1vfg0zxf8w1kixgghil";
+  version = "0.4.0.0";
+  sha256 = "0q6lrfa2p70mh3d08mbj89anc3p9ycy6wyyiycj5pm62kcimv7rj";
   meta = {
     description = "A binary serialization library";
     license = self.stdenv.lib.licenses.bsd3;
diff --git a/pkgs/development/libraries/haskell/certificate/default.nix b/pkgs/development/libraries/haskell/certificate/default.nix
index db314a12296..95b990b464b 100644
--- a/pkgs/development/libraries/haskell/certificate/default.nix
+++ b/pkgs/development/libraries/haskell/certificate/default.nix
@@ -4,13 +4,14 @@
 
 cabal.mkDerivation (self: {
   pname = "certificate";
-  version = "1.3.8";
-  sha256 = "1id3jfaisl04n1mjj9lbq3gyz8hyn3r9p9chzmfbra0pcj3vf1m0";
+  version = "1.3.9";
+  sha256 = "18g5rq7lpxmvmlnz610537w6mix6z6kxjrfj2ylbhkc81r5pn9g6";
   isLibrary = true;
   isExecutable = true;
   buildDepends = [
     asn1Data cryptohash cryptoPubkeyTypes filepath mtl pem time
   ];
+  jailbreak = true;
   meta = {
     homepage = "http://github.com/vincenthz/hs-certificate";
     description = "Certificates and Key Reader/Writer";
diff --git a/pkgs/development/libraries/haskell/charset/default.nix b/pkgs/development/libraries/haskell/charset/default.nix
new file mode 100644
index 00000000000..829c35b7563
--- /dev/null
+++ b/pkgs/development/libraries/haskell/charset/default.nix
@@ -0,0 +1,14 @@
+{ cabal, semigroups, unorderedContainers }:
+
+cabal.mkDerivation (self: {
+  pname = "charset";
+  version = "0.3.5.1";
+  sha256 = "0bf9s5r2j9bkwmjxzvj5c2c7bhnf5gyh2kkx67lmy8xqalfxgmwn";
+  buildDepends = [ semigroups unorderedContainers ];
+  meta = {
+    homepage = "http://github.com/ekmett/charset";
+    description = "Fast unicode character sets based on complemented PATRICIA tries";
+    license = self.stdenv.lib.licenses.bsd3;
+    platforms = self.ghc.meta.platforms;
+  };
+})
diff --git a/pkgs/development/libraries/haskell/cipher-aes/default.nix b/pkgs/development/libraries/haskell/cipher-aes/default.nix
index 5fc5905ebb9..d68d2389e0e 100644
--- a/pkgs/development/libraries/haskell/cipher-aes/default.nix
+++ b/pkgs/development/libraries/haskell/cipher-aes/default.nix
@@ -4,8 +4,8 @@
 
 cabal.mkDerivation (self: {
   pname = "cipher-aes";
-  version = "0.2.5";
-  sha256 = "1ayypdfn2nnxp595dpyivmzw2jc4iyjz2in3z7ldccx36gn5j6b3";
+  version = "0.2.6";
+  sha256 = "0ys5a1w5pwwr74k9wzcsh1flb2jdcvnp1zz7sjs14jpxclpd8x3i";
   buildDepends = [ byteable cryptoCipherTypes securemem ];
   testDepends = [
     byteable cryptoCipherTests cryptoCipherTypes QuickCheck
diff --git a/pkgs/development/libraries/haskell/cipher-blowfish/default.nix b/pkgs/development/libraries/haskell/cipher-blowfish/default.nix
index 535a4b97fca..44a7d96907a 100644
--- a/pkgs/development/libraries/haskell/cipher-blowfish/default.nix
+++ b/pkgs/development/libraries/haskell/cipher-blowfish/default.nix
@@ -4,8 +4,8 @@
 
 cabal.mkDerivation (self: {
   pname = "cipher-blowfish";
-  version = "0.0.2";
-  sha256 = "08jc1qsvnyk7zm7bp0nibkc6lx3bkid79cn1r6fidmccf716r3sp";
+  version = "0.0.3";
+  sha256 = "0hb67gmiyqrknynz5am8nada1b1v47rqla87dw5nvfhxhl51fhcg";
   buildDepends = [ byteable cryptoCipherTypes securemem vector ];
   testDepends = [
     byteable cryptoCipherTests cryptoCipherTypes QuickCheck
diff --git a/pkgs/development/libraries/haskell/cipher-camellia/default.nix b/pkgs/development/libraries/haskell/cipher-camellia/default.nix
index 6d29792ea33..52217751d27 100644
--- a/pkgs/development/libraries/haskell/cipher-camellia/default.nix
+++ b/pkgs/development/libraries/haskell/cipher-camellia/default.nix
@@ -4,8 +4,8 @@
 
 cabal.mkDerivation (self: {
   pname = "cipher-camellia";
-  version = "0.0.1";
-  sha256 = "11narl4h77v7317hdqy8zxhym3k7xrmw97yfwh0vr8k1y5dkiqh3";
+  version = "0.0.2";
+  sha256 = "19z2mi1rvp8fsqjdbmrm1hdlxmx61yr55fyknmmn945qrlvx234d";
   buildDepends = [ byteable cryptoCipherTypes securemem vector ];
   testDepends = [
     byteable cryptoCipherTests cryptoCipherTypes QuickCheck
diff --git a/pkgs/development/libraries/haskell/cipher-des/default.nix b/pkgs/development/libraries/haskell/cipher-des/default.nix
index 0340372d54b..fdc30278425 100644
--- a/pkgs/development/libraries/haskell/cipher-des/default.nix
+++ b/pkgs/development/libraries/haskell/cipher-des/default.nix
@@ -4,8 +4,8 @@
 
 cabal.mkDerivation (self: {
   pname = "cipher-des";
-  version = "0.0.4";
-  sha256 = "18xpc7v0xyh0qb7p03ail1lyh376h1vg000xn22b5shpgp5kxiqq";
+  version = "0.0.6";
+  sha256 = "1isazxa2nr1y13y0danfk7wghy34rfpn3f43rw714nk2xk6vrwc5";
   buildDepends = [ byteable cryptoCipherTypes securemem ];
   testDepends = [
     byteable cryptoCipherTests cryptoCipherTypes QuickCheck
diff --git a/pkgs/development/libraries/haskell/cipher-rc4/default.nix b/pkgs/development/libraries/haskell/cipher-rc4/default.nix
index 7d3cacdd67a..6485487a0e5 100644
--- a/pkgs/development/libraries/haskell/cipher-rc4/default.nix
+++ b/pkgs/development/libraries/haskell/cipher-rc4/default.nix
@@ -1,11 +1,15 @@
-{ cabal, QuickCheck, testFramework, testFrameworkQuickcheck2 }:
+{ cabal, byteable, cryptoCipherTests, cryptoCipherTypes, QuickCheck
+, testFramework, testFrameworkQuickcheck2
+}:
 
 cabal.mkDerivation (self: {
   pname = "cipher-rc4";
-  version = "0.1.2";
-  sha256 = "0nyrqms7h3hq236h03sjjjqdcxn3iz3fg4ifqj43f4nb8gv0ifb1";
+  version = "0.1.4";
+  sha256 = "0k9qf0cn5yxc4qlqikcm5yyrnkkvr6g3v7306cp8iwz7r4dp6zn6";
+  buildDepends = [ byteable cryptoCipherTypes ];
   testDepends = [
-    QuickCheck testFramework testFrameworkQuickcheck2
+    cryptoCipherTests cryptoCipherTypes QuickCheck testFramework
+    testFrameworkQuickcheck2
   ];
   meta = {
     homepage = "http://github.com/vincenthz/hs-cipher-rc4";
diff --git a/pkgs/development/libraries/haskell/citeproc-hs/default.nix b/pkgs/development/libraries/haskell/citeproc-hs/default.nix
index 573c5085b10..bdc78984c7b 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.8";
-  sha256 = "0wlfwjxg852qcgx54m99xm7hxsmcw8c8r7fyrsxyxl3054xnfwz8";
+  version = "0.3.9";
+  sha256 = "0f3l33a3rcp8lm8nkbda42lijjpaqa7cxszswhjryy1inywpsssg";
   buildDepends = [
     filepath hexpat hsBibutils HTTP json mtl network pandocTypes parsec
     syb time utf8String
diff --git a/pkgs/development/libraries/haskell/classy-prelude-conduit/default.nix b/pkgs/development/libraries/haskell/classy-prelude-conduit/default.nix
index c04b4dfc25e..b6bf865d183 100644
--- a/pkgs/development/libraries/haskell/classy-prelude-conduit/default.nix
+++ b/pkgs/development/libraries/haskell/classy-prelude-conduit/default.nix
@@ -1,14 +1,14 @@
 { cabal, classyPrelude, conduit, hspec, monadControl, QuickCheck
-, resourcet, transformers, void, xmlConduit
+, resourcet, systemFileio, transformers, void
 }:
 
 cabal.mkDerivation (self: {
   pname = "classy-prelude-conduit";
-  version = "0.5.3";
-  sha256 = "1rmx439kdjipyz2s3v2s1xv1mb55kb4njl9k6f8mfhykgac39rhz";
+  version = "0.6.0";
+  sha256 = "122clkwrz1n009b5gxq96sbby7i8kb4dgvc90ydamd86bx3pvc84";
   buildDepends = [
-    classyPrelude conduit monadControl resourcet transformers void
-    xmlConduit
+    classyPrelude conduit monadControl resourcet systemFileio
+    transformers void
   ];
   testDepends = [ conduit hspec QuickCheck transformers ];
   meta = {
diff --git a/pkgs/development/libraries/haskell/classy-prelude/default.nix b/pkgs/development/libraries/haskell/classy-prelude/default.nix
index 69acb897220..f296ff21ced 100644
--- a/pkgs/development/libraries/haskell/classy-prelude/default.nix
+++ b/pkgs/development/libraries/haskell/classy-prelude/default.nix
@@ -1,17 +1,21 @@
 { cabal, async, basicPrelude, deepseq, hashable, hspec, liftedBase
-, monadControl, QuickCheck, systemFilepath, text, transformers
-, unorderedContainers, vector
+, monadControl, monoTraversable, QuickCheck, semigroups
+, systemFilepath, text, transformers, unorderedContainers, vector
+, vectorInstances
 }:
 
 cabal.mkDerivation (self: {
   pname = "classy-prelude";
-  version = "0.5.9";
-  sha256 = "1qqmip3ynqdxlwynm60wsn82dcyymcfql79k039iablanj4mic61";
+  version = "0.6.0";
+  sha256 = "0wpymr2gl0hmbgpw0qd0h1ik1h42s8raykq7jsdjqnmcvsmww5j6";
   buildDepends = [
     async basicPrelude deepseq hashable liftedBase monadControl
-    systemFilepath text transformers unorderedContainers vector
+    monoTraversable semigroups systemFilepath text transformers
+    unorderedContainers vector vectorInstances
+  ];
+  testDepends = [
+    hspec QuickCheck transformers unorderedContainers
   ];
-  testDepends = [ hspec QuickCheck transformers ];
   meta = {
     homepage = "https://github.com/snoyberg/classy-prelude";
     description = "A typeclass-based Prelude";
diff --git a/pkgs/development/libraries/haskell/clock/default.nix b/pkgs/development/libraries/haskell/clock/default.nix
new file mode 100644
index 00000000000..65bfffec52e
--- /dev/null
+++ b/pkgs/development/libraries/haskell/clock/default.nix
@@ -0,0 +1,13 @@
+{ cabal }:
+
+cabal.mkDerivation (self: {
+  pname = "clock";
+  version = "0.4.0.1";
+  sha256 = "1bn6dalank30l680iifyam0mg9izxbyscgq0vmr1aw5brba5kv6j";
+  meta = {
+    homepage = "http://corsis.github.com/clock/";
+    description = "High-resolution clock functions: monotonic, realtime, cputime";
+    license = self.stdenv.lib.licenses.bsd3;
+    platforms = self.ghc.meta.platforms;
+  };
+})
diff --git a/pkgs/development/libraries/haskell/comonad-transformers/default.nix b/pkgs/development/libraries/haskell/comonad-transformers/default.nix
index ef0ffe06198..943a0718e03 100644
--- a/pkgs/development/libraries/haskell/comonad-transformers/default.nix
+++ b/pkgs/development/libraries/haskell/comonad-transformers/default.nix
@@ -1,19 +1,16 @@
-{ cabal, comonad, contravariant, distributive, semigroupoids
-, semigroups, transformers
-}:
+{ cabal, comonad }:
 
 cabal.mkDerivation (self: {
   pname = "comonad-transformers";
-  version = "3.1";
-  sha256 = "024l437xfi0bkbn3121xi8slwsh9jby9a92qg1m5y0nmxzs9lxda";
-  buildDepends = [
-    comonad contravariant distributive semigroupoids semigroups
-    transformers
-  ];
+  version = "4.0";
+  sha256 = "13zzp6r6s6c80skniphwvzxhpazbyal5854m53139kgcw560rv6z";
+  buildDepends = [ comonad ];
+  noHaddock = true;
   meta = {
     homepage = "http://github.com/ekmett/comonad-transformers/";
-    description = "Comonad transformers";
+    description = "This package has been merged into comonad 4.0";
     license = self.stdenv.lib.licenses.bsd3;
     platforms = self.ghc.meta.platforms;
+    maintainers = [ self.stdenv.lib.maintainers.ocharles ];
   };
 })
diff --git a/pkgs/development/libraries/haskell/comonad/default.nix b/pkgs/development/libraries/haskell/comonad/default.nix
index 472e4e315c1..9457a2ad44d 100644
--- a/pkgs/development/libraries/haskell/comonad/default.nix
+++ b/pkgs/development/libraries/haskell/comonad/default.nix
@@ -1,14 +1,18 @@
-{ cabal, doctest, filepath, semigroups, tagged, transformers }:
+{ cabal, contravariant, distributive, doctest, filepath, mtl
+, semigroups, tagged, transformers
+}:
 
 cabal.mkDerivation (self: {
   pname = "comonad";
-  version = "3.1";
-  sha256 = "0sl9b3f1vwpjdvnrxv7b8n512w05pv4in6qx3l4sbksdp1zjvcyv";
-  buildDepends = [ semigroups tagged transformers ];
+  version = "4.0";
+  sha256 = "1f57wqxy1la59kippbj924prnj53a5hwc2ppg48n9xx2wfr63iha";
+  buildDepends = [
+    contravariant distributive mtl semigroups tagged transformers
+  ];
   testDepends = [ doctest filepath ];
   meta = {
     homepage = "http://github.com/ekmett/comonad/";
-    description = "Haskell 98 compatible comonads";
+    description = "Comonads";
     license = self.stdenv.lib.licenses.bsd3;
     platforms = self.ghc.meta.platforms;
   };
diff --git a/pkgs/development/libraries/haskell/comonads-fd/default.nix b/pkgs/development/libraries/haskell/comonads-fd/default.nix
index aac28ff0871..f55123f8fe1 100644
--- a/pkgs/development/libraries/haskell/comonads-fd/default.nix
+++ b/pkgs/development/libraries/haskell/comonads-fd/default.nix
@@ -1,17 +1,14 @@
-{ cabal, comonad, comonadTransformers, mtl, semigroups
-, transformers
-}:
+{ cabal, comonad }:
 
 cabal.mkDerivation (self: {
   pname = "comonads-fd";
-  version = "3.0.3";
-  sha256 = "06x545yq5xc3kphjipkgjrgrfvvkjpy0wji9d5fw44ca91nzglww";
-  buildDepends = [
-    comonad comonadTransformers mtl semigroups transformers
-  ];
+  version = "4.0";
+  sha256 = "19xpv0dsz7w3a1sq1gdxwzglfal45vj2s22zb12g9mpk5rp3hw1s";
+  buildDepends = [ comonad ];
+  noHaddock = true;
   meta = {
     homepage = "http://github.com/ekmett/comonads-fd/";
-    description = "Comonad transformers using functional dependencies";
+    description = "This package has been merged into comonad 4.0";
     license = self.stdenv.lib.licenses.bsd3;
     platforms = self.ghc.meta.platforms;
   };
diff --git a/pkgs/development/libraries/haskell/conduit/default.nix b/pkgs/development/libraries/haskell/conduit/default.nix
index 0e1757f7b50..ab41f5a5621 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 = "1.0.7.4";
-  sha256 = "1bvi9gw9sfi1fml339rn3cfq4i3yd9j9vw41p5cpz5pnv3gw225x";
+  version = "1.0.8";
+  sha256 = "0qsi9p7hwzaw1ridgydfmaagjjpkbgq755b1r9xm4apdy6fikcz5";
   buildDepends = [
     liftedBase mmorph monadControl mtl resourcet text transformers
     transformersBase void
diff --git a/pkgs/development/libraries/haskell/connection/default.nix b/pkgs/development/libraries/haskell/connection/default.nix
new file mode 100644
index 00000000000..a7930cab08b
--- /dev/null
+++ b/pkgs/development/libraries/haskell/connection/default.nix
@@ -0,0 +1,18 @@
+{ cabal, certificate, cprngAes, dataDefault, network, socks, tls
+, tlsExtra
+}:
+
+cabal.mkDerivation (self: {
+  pname = "connection";
+  version = "0.1.3";
+  sha256 = "13bwlbga612kc7g3m3rrdzbdv4w0glp4af9r6crwgjsmxgimrgs9";
+  buildDepends = [
+    certificate cprngAes dataDefault network socks tls tlsExtra
+  ];
+  meta = {
+    homepage = "http://github.com/vincenthz/hs-connection";
+    description = "Simple and easy network connections API";
+    license = self.stdenv.lib.licenses.bsd3;
+    platforms = self.ghc.meta.platforms;
+  };
+})
diff --git a/pkgs/development/libraries/haskell/constraints/default.nix b/pkgs/development/libraries/haskell/constraints/default.nix
index 87ec5d82724..1e0dc901aaf 100644
--- a/pkgs/development/libraries/haskell/constraints/default.nix
+++ b/pkgs/development/libraries/haskell/constraints/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "constraints";
-  version = "0.3.3";
-  sha256 = "0mglqd6l6bc333i7gymbm8q037hj5fny6jzyg1zmw5kg6r3xcwdi";
+  version = "0.3.4.2";
+  sha256 = "14bfar4d44yl9zxgqxj4p67ag2ndprm602l4pinfjk0ywbh63fwq";
   buildDepends = [ newtype ];
   meta = {
     homepage = "http://github.com/ekmett/constraints/";
diff --git a/pkgs/development/libraries/haskell/crypto-cipher-tests/default.nix b/pkgs/development/libraries/haskell/crypto-cipher-tests/default.nix
index 12118a37540..3c514936468 100644
--- a/pkgs/development/libraries/haskell/crypto-cipher-tests/default.nix
+++ b/pkgs/development/libraries/haskell/crypto-cipher-tests/default.nix
@@ -5,8 +5,8 @@
 
 cabal.mkDerivation (self: {
   pname = "crypto-cipher-tests";
-  version = "0.0.4";
-  sha256 = "1c725zj94d6n33wldyzlm1qd32a0ais0w221ykpgs49rrd6hrpbh";
+  version = "0.0.11";
+  sha256 = "19wqignlq90qwpam01hnmmrxaxh5lkax9l1l6rlbi4a07nvp1dnz";
   buildDepends = [
     byteable cryptoCipherTypes HUnit mtl QuickCheck securemem
     testFramework testFrameworkHunit testFrameworkQuickcheck2
diff --git a/pkgs/development/libraries/haskell/crypto-cipher-types/default.nix b/pkgs/development/libraries/haskell/crypto-cipher-types/default.nix
index f1665950a55..8f52f724bcd 100644
--- a/pkgs/development/libraries/haskell/crypto-cipher-types/default.nix
+++ b/pkgs/development/libraries/haskell/crypto-cipher-types/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "crypto-cipher-types";
-  version = "0.0.4";
-  sha256 = "0ipwplw1mn6amjxk2i5sksxvfsnf2fv8rnrgyncl21mp1gbnq7h0";
+  version = "0.0.9";
+  sha256 = "03qa1i1kj07pfrxsi7fiaqnnd0vi94jd4jfswbmnm4gp1nvzcwr0";
   buildDepends = [ byteable securemem ];
   meta = {
     homepage = "http://github.com/vincenthz/hs-crypto-cipher";
diff --git a/pkgs/development/libraries/haskell/crypto-conduit/default.nix b/pkgs/development/libraries/haskell/crypto-conduit/default.nix
index 61d6bcbeabe..1dc356b7f46 100644
--- a/pkgs/development/libraries/haskell/crypto-conduit/default.nix
+++ b/pkgs/development/libraries/haskell/crypto-conduit/default.nix
@@ -4,13 +4,14 @@
 
 cabal.mkDerivation (self: {
   pname = "crypto-conduit";
-  version = "0.5.2";
-  sha256 = "0ncqwr2a9nxl6q7qys9gb5db62lx622g5db1xhpfni045x324kbz";
+  version = "0.5.2.1";
+  sha256 = "1i9m4pzy4ib9n941zlh398idmxcjak2496c4c73i8bmikryahl8p";
   buildDepends = [ cereal conduit cryptoApi transformers ];
   testDepends = [
     cereal conduit cryptoApi cryptocipher cryptohashCryptoapi hspec
     skein transformers
   ];
+  jailbreak = true;
   doCheck = false;
   meta = {
     homepage = "https://github.com/meteficha/crypto-conduit";
diff --git a/pkgs/development/libraries/haskell/cryptocipher/default.nix b/pkgs/development/libraries/haskell/cryptocipher/default.nix
index 57d0e2483f8..7d3ddf57e52 100644
--- a/pkgs/development/libraries/haskell/cryptocipher/default.nix
+++ b/pkgs/development/libraries/haskell/cryptocipher/default.nix
@@ -4,8 +4,8 @@
 
 cabal.mkDerivation (self: {
   pname = "cryptocipher";
-  version = "0.6.1";
-  sha256 = "1qa0s7mr1a3nv4ppyk8wr57rxbfc2qpw9rq26pfziwnpin5k2j3x";
+  version = "0.6.2";
+  sha256 = "0ip3a2as0df6drl29sryayxx22sx55v6bs60s2fh3i1nxqnydf9l";
   buildDepends = [
     cipherAes cipherBlowfish cipherCamellia cipherDes cipherRc4
     cryptoCipherTypes
diff --git a/pkgs/development/libraries/haskell/cryptohash/default.nix b/pkgs/development/libraries/haskell/cryptohash/default.nix
index d598b363933..839bf4518a1 100644
--- a/pkgs/development/libraries/haskell/cryptohash/default.nix
+++ b/pkgs/development/libraries/haskell/cryptohash/default.nix
@@ -4,11 +4,11 @@
 
 cabal.mkDerivation (self: {
   pname = "cryptohash";
-  version = "0.10.0";
-  sha256 = "0szvx1dxf16chlksmp08g9qxy7f87w6hspigwbw78aygc3q9mzaq";
+  version = "0.11.1";
+  sha256 = "0ww7bikl8i50m1pwkqp145bfsiy07npnjw48j3il4w2ia0b3axmy";
   buildDepends = [ byteable ];
   testDepends = [
-    HUnit QuickCheck testFramework testFrameworkHunit
+    byteable HUnit QuickCheck testFramework testFrameworkHunit
     testFrameworkQuickcheck2
   ];
   meta = {
diff --git a/pkgs/development/libraries/haskell/cufft/default.nix b/pkgs/development/libraries/haskell/cufft/default.nix
index 76039f06548..e9f1fe166bd 100644
--- a/pkgs/development/libraries/haskell/cufft/default.nix
+++ b/pkgs/development/libraries/haskell/cufft/default.nix
@@ -10,6 +10,6 @@ cabal.mkDerivation (self: {
     homepage = "http://github.com/robeverest/cufft";
     description = "Haskell bindings for the CUFFT library";
     license = self.stdenv.lib.licenses.bsd3;
-    platforms = self.ghc.meta.platforms;
+    platforms = self.stdenv.lib.platforms.none;
   };
 })
diff --git a/pkgs/development/libraries/haskell/data-lens/default.nix b/pkgs/development/libraries/haskell/data-lens/default.nix
index e4cff67f376..5276c1c9707 100644
--- a/pkgs/development/libraries/haskell/data-lens/default.nix
+++ b/pkgs/development/libraries/haskell/data-lens/default.nix
@@ -1,13 +1,10 @@
-{ cabal, comonad, comonadTransformers, semigroupoids, transformers
-}:
+{ cabal, comonad, semigroupoids, transformers }:
 
 cabal.mkDerivation (self: {
   pname = "data-lens";
-  version = "2.10.2";
-  sha256 = "1mv4lh5rhmq09d89ci07kj9anv7ckrlqh9x3xr4jq9idf7sf54b5";
-  buildDepends = [
-    comonad comonadTransformers semigroupoids transformers
-  ];
+  version = "2.10.4";
+  sha256 = "1pzswlpphpipsqja825pyqjixp4akc5nmw9y61jwv6r4vsgdpg5i";
+  buildDepends = [ comonad semigroupoids transformers ];
   meta = {
     homepage = "http://github.com/roconnor/data-lens/";
     description = "Haskell 98 Lenses";
diff --git a/pkgs/development/libraries/haskell/data-pprint/default.nix b/pkgs/development/libraries/haskell/data-pprint/default.nix
new file mode 100644
index 00000000000..b78096a1835
--- /dev/null
+++ b/pkgs/development/libraries/haskell/data-pprint/default.nix
@@ -0,0 +1,13 @@
+{ cabal, deepseq, mtl, parallel, time }:
+
+cabal.mkDerivation (self: {
+  pname = "data-pprint";
+  version = "0.2.3";
+  sha256 = "1ygbhn399d4hlrdjmg7gxbr5akydb78p6qa80rv7m6j0fsqzbf6y";
+  buildDepends = [ deepseq mtl parallel time ];
+  meta = {
+    description = "Prettyprint and compare Data values";
+    license = self.stdenv.lib.licenses.bsd3;
+    platforms = self.ghc.meta.platforms;
+  };
+})
diff --git a/pkgs/development/libraries/haskell/dbus/default.nix b/pkgs/development/libraries/haskell/dbus/default.nix
index 16cb2c7ca03..e0072bd8446 100644
--- a/pkgs/development/libraries/haskell/dbus/default.nix
+++ b/pkgs/development/libraries/haskell/dbus/default.nix
@@ -10,6 +10,7 @@ cabal.mkDerivation (self: {
     cereal libxmlSax network parsec random text transformers vector
     xmlTypes
   ];
+  jailbreak = true;
   meta = {
     homepage = "https://john-millikin.com/software/haskell-dbus/";
     description = "A client library for the D-Bus IPC system";
diff --git a/pkgs/development/libraries/haskell/diagrams/core.nix b/pkgs/development/libraries/haskell/diagrams/core.nix
index c2dbb27aebd..33fa353628b 100644
--- a/pkgs/development/libraries/haskell/diagrams/core.nix
+++ b/pkgs/development/libraries/haskell/diagrams/core.nix
@@ -4,8 +4,8 @@
 
 cabal.mkDerivation (self: {
   pname = "diagrams-core";
-  version = "0.7";
-  sha256 = "00ba31imq91w6lzy8blgxawr06igrjfrg4adrqy650wip8jafqwq";
+  version = "0.7.0.1";
+  sha256 = "1826f6yrb0ch07y4bjb1cnqi8giphn2i6g45484qr6bfbb8wj5dg";
   buildDepends = [
     dualTree MemoTrie monoidExtras newtype semigroups vectorSpace
     vectorSpacePoints
diff --git a/pkgs/development/libraries/haskell/diagrams/diagrams.nix b/pkgs/development/libraries/haskell/diagrams/diagrams.nix
index efa63bdc0b7..2b000724f12 100644
--- a/pkgs/development/libraries/haskell/diagrams/diagrams.nix
+++ b/pkgs/development/libraries/haskell/diagrams/diagrams.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "diagrams";
-  version = "0.7.1";
-  sha256 = "0rdpp26zvimdhdw0jpw6w606jkzkqdx0pq4051fkyk2mldwk9ipj";
+  version = "0.7.1.1";
+  sha256 = "1fkrdds3p7ghjjscw5fmsjk8s5l31bz9a9z2qf3xwa1kp8p4d16d";
   buildDepends = [
     diagramsContrib diagramsCore diagramsLib diagramsSvg
   ];
diff --git a/pkgs/development/libraries/haskell/diagrams/lib.nix b/pkgs/development/libraries/haskell/diagrams/lib.nix
index 50afb16f282..43ada20aecc 100644
--- a/pkgs/development/libraries/haskell/diagrams/lib.nix
+++ b/pkgs/development/libraries/haskell/diagrams/lib.nix
@@ -5,12 +5,13 @@
 
 cabal.mkDerivation (self: {
   pname = "diagrams-lib";
-  version = "0.7";
-  sha256 = "02zb9j2qb5f26azscv1m4iivp1ixdhx6rcjns5smka1hdgyzld1j";
+  version = "0.7.1.1";
+  sha256 = "14d557y22dqyjr026vbawa2a2yjh7alh3rpavyidfdlrg48lqgrc";
   buildDepends = [
     active colour dataDefaultClass diagramsCore fingertree intervals
     monoidExtras newtype NumInstances semigroups vectorSpace
   ];
+  jailbreak = true;
   meta = {
     homepage = "http://projects.haskell.org/diagrams";
     description = "Embedded domain-specific language for declarative graphics";
diff --git a/pkgs/development/libraries/haskell/diagrams/svg.nix b/pkgs/development/libraries/haskell/diagrams/svg.nix
index 644037e946e..062cee83e41 100644
--- a/pkgs/development/libraries/haskell/diagrams/svg.nix
+++ b/pkgs/development/libraries/haskell/diagrams/svg.nix
@@ -4,8 +4,8 @@
 
 cabal.mkDerivation (self: {
   pname = "diagrams-svg";
-  version = "0.7";
-  sha256 = "0vfykrx29dxii9mdjjkia5a42jfg4hbzgxzv5rp7zvf3fz9w8w1x";
+  version = "0.8.0.2";
+  sha256 = "0ahapj040qy74kcj9f786ddd28xysq1wch087wsh8sdfp57z5dbz";
   buildDepends = [
     blazeSvg cmdargs colour diagramsCore diagramsLib filepath
     monoidExtras mtl split time vectorSpace
diff --git a/pkgs/development/libraries/haskell/distributive/default.nix b/pkgs/development/libraries/haskell/distributive/default.nix
index d40952024ef..d03257f54d3 100644
--- a/pkgs/development/libraries/haskell/distributive/default.nix
+++ b/pkgs/development/libraries/haskell/distributive/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "distributive";
-  version = "0.3.1";
-  sha256 = "0zf3wq1xz9sbb0g6fg852jckrwkffsfkghq3zx03d2q9ginc6jbc";
+  version = "0.3.2";
+  sha256 = "1n2xnjffrbfw736qn9w5fxy4pjl2319yhimkglhbayq85pz51r1h";
   buildDepends = [ transformers transformersCompat ];
   testDepends = [ doctest filepath ];
   meta = {
diff --git a/pkgs/development/libraries/haskell/dns/default.nix b/pkgs/development/libraries/haskell/dns/default.nix
index e80f4379aa7..9dd35804f43 100644
--- a/pkgs/development/libraries/haskell/dns/default.nix
+++ b/pkgs/development/libraries/haskell/dns/default.nix
@@ -1,20 +1,21 @@
 { cabal, attoparsec, attoparsecConduit, binary, blazeBuilder
-, conduit, hspec, iproute, mtl, network, networkConduit, random
+, conduit, doctest, hspec, iproute, mtl, network, networkConduit
+, random
 }:
 
 cabal.mkDerivation (self: {
   pname = "dns";
-  version = "0.3.8";
-  sha256 = "1x2rfm89qpx7dpxr457i2wqmjry8r28f42j194131mfx4gc4mwdq";
+  version = "1.0.0";
+  sha256 = "16h7c332qdj77dw8kvrdn1jzhzsnrcybbbm5x7pxvgpnn0wzz8si";
   buildDepends = [
     attoparsec attoparsecConduit binary blazeBuilder conduit iproute
     mtl network networkConduit random
   ];
   testDepends = [
-    attoparsec attoparsecConduit binary blazeBuilder conduit hspec
-    iproute mtl network networkConduit random
+    attoparsec attoparsecConduit binary blazeBuilder conduit doctest
+    hspec iproute mtl network networkConduit random
   ];
-  doCheck = false;
+  testTarget = "spec";
   meta = {
     description = "DNS library in Haskell";
     license = self.stdenv.lib.licenses.bsd3;
diff --git a/pkgs/development/libraries/haskell/doctest/default.nix b/pkgs/development/libraries/haskell/doctest/default.nix
index 3b8c03e2da2..08118ac4e1b 100644
--- a/pkgs/development/libraries/haskell/doctest/default.nix
+++ b/pkgs/development/libraries/haskell/doctest/default.nix
@@ -4,8 +4,8 @@
 
 cabal.mkDerivation (self: {
   pname = "doctest";
-  version = "0.9.7";
-  sha256 = "0d3aywm5v3kx16c1i6cb4inr7hdnmsl8qawxp27g0yng03wdra5l";
+  version = "0.9.9";
+  sha256 = "1r1jdmch6sb4cdygh60pv42p4nr03shabrpd18hjnxs40dgc6pgy";
   isLibrary = true;
   isExecutable = true;
   buildDepends = [ deepseq filepath ghcPaths syb transformers ];
diff --git a/pkgs/development/libraries/haskell/dual-tree/default.nix b/pkgs/development/libraries/haskell/dual-tree/default.nix
index 8500de5fcfb..c0896557e33 100644
--- a/pkgs/development/libraries/haskell/dual-tree/default.nix
+++ b/pkgs/development/libraries/haskell/dual-tree/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "dual-tree";
-  version = "0.1.0.3";
-  sha256 = "0k3p1lqhynlqvkbnrs5vn478c76qcn754n5pb17p5i4jcw94bm0n";
+  version = "0.1.0.4";
+  sha256 = "0xrpb7kz6aazqy9w0b7hcbxgmy4ddy0zh7gdpv2w140vvyx5qjrn";
   buildDepends = [ monoidExtras newtype semigroups ];
   jailbreak = true;
   meta = {
diff --git a/pkgs/development/libraries/haskell/either/default.nix b/pkgs/development/libraries/haskell/either/default.nix
index 67c1962cbe9..93dfd043c90 100644
--- a/pkgs/development/libraries/haskell/either/default.nix
+++ b/pkgs/development/libraries/haskell/either/default.nix
@@ -3,8 +3,8 @@
 
 cabal.mkDerivation (self: {
   pname = "either";
-  version = "3.4.1";
-  sha256 = "1cq4glqhxz9k8fxf0dc8b6hcxxfn4yci6h7wmfkmkfq5ca61ax1b";
+  version = "4.0";
+  sha256 = "07axaq43cqyglndr5az7ns4mvkjmybq6z8s32l1jxc5x7532scwr";
   buildDepends = [
     MonadRandom mtl semigroupoids semigroups transformers
   ];
diff --git a/pkgs/development/libraries/haskell/entropy/default.nix b/pkgs/development/libraries/haskell/entropy/default.nix
index 17409f05eed..f2154ddddf7 100644
--- a/pkgs/development/libraries/haskell/entropy/default.nix
+++ b/pkgs/development/libraries/haskell/entropy/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "entropy";
-  version = "0.2.2.2";
-  sha256 = "1xkpfi6njj5iqwn5wa6npyzxksj9hr0xqbxrslg646whxrkd8718";
+  version = "0.2.2.4";
+  sha256 = "1cjmpb0rh1ib4j9mwmf1irn401vmjawxkshxdmmb4643rmcgx1gm";
   meta = {
     homepage = "https://github.com/TomMD/entropy";
     description = "A platform independent entropy source";
diff --git a/pkgs/development/libraries/haskell/enumerator/default.nix b/pkgs/development/libraries/haskell/enumerator/default.nix
index 5b44c9efc62..4dfa4e573dd 100644
--- a/pkgs/development/libraries/haskell/enumerator/default.nix
+++ b/pkgs/development/libraries/haskell/enumerator/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "enumerator";
-  version = "0.4.19";
-  sha256 = "1avxy55vbvkz6yj512bkb2b986y3m0b28c9c5lfc3wd2na7w1s5g";
+  version = "0.4.20";
+  sha256 = "02a75dggj295zkhgjry5cb43s6y6ydpjb5w6vgl7kd9b6ma11qik";
   buildDepends = [ text transformers ];
   meta = {
     homepage = "https://john-millikin.com/software/enumerator/";
diff --git a/pkgs/development/libraries/haskell/enummapset/default.nix b/pkgs/development/libraries/haskell/enummapset/default.nix
new file mode 100644
index 00000000000..c43c246557b
--- /dev/null
+++ b/pkgs/development/libraries/haskell/enummapset/default.nix
@@ -0,0 +1,14 @@
+{ cabal, deepseq }:
+
+cabal.mkDerivation (self: {
+  pname = "enummapset";
+  version = "0.5.2.0";
+  sha256 = "065gxljrjw59rdf7abq0v0c29wg1ymg984ckixnjrcs1yks0c2js";
+  buildDepends = [ deepseq ];
+  meta = {
+    homepage = "https://github.com/michalt/enummapset";
+    description = "IntMap and IntSet with Enum keys/elements";
+    license = self.stdenv.lib.licenses.bsd3;
+    platforms = self.ghc.meta.platforms;
+  };
+})
diff --git a/pkgs/development/libraries/haskell/errors/default.nix b/pkgs/development/libraries/haskell/errors/default.nix
index d15ac59feba..1b0bc4282a7 100644
--- a/pkgs/development/libraries/haskell/errors/default.nix
+++ b/pkgs/development/libraries/haskell/errors/default.nix
@@ -2,9 +2,10 @@
 
 cabal.mkDerivation (self: {
   pname = "errors";
-  version = "1.4.2";
-  sha256 = "1csry8bbz7r4gc7x3lf1ih10rvnig2i91nfij227p9744yndl2xw";
+  version = "1.4.3";
+  sha256 = "02xvfh0kfca7z5vhnkmqg5gw5i5ad5bc3jf8flxj75ry7wqggfmm";
   buildDepends = [ either safe transformers ];
+  jailbreak = true;
   meta = {
     description = "Simplified error-handling";
     license = self.stdenv.lib.licenses.bsd3;
diff --git a/pkgs/development/libraries/haskell/esqueleto/default.nix b/pkgs/development/libraries/haskell/esqueleto/default.nix
new file mode 100644
index 00000000000..4e0abd3c34f
--- /dev/null
+++ b/pkgs/development/libraries/haskell/esqueleto/default.nix
@@ -0,0 +1,25 @@
+{ cabal, conduit, hspec, HUnit, monadControl, monadLogger
+, persistent, persistentSqlite, persistentTemplate, QuickCheck
+, resourcet, tagged, text, transformers, unorderedContainers
+}:
+
+cabal.mkDerivation (self: {
+  pname = "esqueleto";
+  version = "1.3.4.2";
+  sha256 = "1gp0jy8ra11ansari659wqvwafw1pi2svl3w16wa5dv9xk3v9pr6";
+  buildDepends = [
+    conduit monadLogger persistent resourcet tagged text transformers
+    unorderedContainers
+  ];
+  testDepends = [
+    conduit hspec HUnit monadControl monadLogger persistent
+    persistentSqlite persistentTemplate QuickCheck text transformers
+  ];
+  meta = {
+    homepage = "https://github.com/meteficha/esqueleto";
+    description = "Bare bones, type-safe EDSL for SQL queries on persistent backends";
+    license = self.stdenv.lib.licenses.bsd3;
+    platforms = self.ghc.meta.platforms;
+    maintainers = [ self.stdenv.lib.maintainers.ocharles ];
+  };
+})
diff --git a/pkgs/development/libraries/haskell/fclabels/default.nix b/pkgs/development/libraries/haskell/fclabels/default.nix
index 71a3fe8d0c2..162b83733b1 100644
--- a/pkgs/development/libraries/haskell/fclabels/default.nix
+++ b/pkgs/development/libraries/haskell/fclabels/default.nix
@@ -2,12 +2,12 @@
 
 cabal.mkDerivation (self: {
   pname = "fclabels";
-  version = "1.1.7.1";
-  sha256 = "1f34r3bzn1cbba8d5d1j3wxrlrrj5vf09hpgd6ppina91wyj4dyn";
+  version = "2.0.0.2";
+  sha256 = "1c706v10g4av7jxiw3x4n1hg9h7sbwcnrj676b1q0rcb3pd32kz6";
   buildDepends = [ mtl transformers ];
   meta = {
     homepage = "https://github.com/sebastiaanvisser/fclabels";
-    description = "First class accessor labels";
+    description = "First class accessor labels implemented as lenses";
     license = self.stdenv.lib.licenses.bsd3;
     platforms = self.ghc.meta.platforms;
     maintainers = [ self.stdenv.lib.maintainers.andres ];
diff --git a/pkgs/development/libraries/haskell/feed/default.nix b/pkgs/development/libraries/haskell/feed/default.nix
index a2c1ccde86b..817276497da 100644
--- a/pkgs/development/libraries/haskell/feed/default.nix
+++ b/pkgs/development/libraries/haskell/feed/default.nix
@@ -1,10 +1,10 @@
-{ cabal, utf8String, xml }:
+{ cabal, time, utf8String, xml }:
 
 cabal.mkDerivation (self: {
   pname = "feed";
-  version = "0.3.9.1";
-  sha256 = "1c7dj9w9qj8408qql1kfq8m28fwvfd7bpgkj32lmk5x9qm5iz04k";
-  buildDepends = [ utf8String xml ];
+  version = "0.3.9.2";
+  sha256 = "05sg2ly1pvni3sfv03rbf60vdjkrfa0f9mmc1dm1hrmp638j67gg";
+  buildDepends = [ time utf8String xml ];
   meta = {
     homepage = "https://github.com/sof/feed";
     description = "Interfacing with RSS (v 0.9x, 2.x, 1.0) + Atom feeds.";
diff --git a/pkgs/development/libraries/haskell/file-embed/default.nix b/pkgs/development/libraries/haskell/file-embed/default.nix
index 2eb9ac94d8c..3d7015d7ec2 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.9";
-  sha256 = "128z3jwxn6d13dkrfjx7maxgmax8bfgr8n2jfhqg3rvv4ryjnqv2";
+  version = "0.0.5";
+  sha256 = "0s77g7azw73f7d07hvwwps8sx79jpwj8ap9iqzcglyjw1sw4l1n1";
   buildDepends = [ filepath ];
   testDepends = [ filepath HUnit ];
   meta = {
diff --git a/pkgs/development/libraries/haskell/free/default.nix b/pkgs/development/libraries/haskell/free/default.nix
index 56bf80d71af..64d9541f401 100644
--- a/pkgs/development/libraries/haskell/free/default.nix
+++ b/pkgs/development/libraries/haskell/free/default.nix
@@ -1,15 +1,14 @@
-{ cabal, bifunctors, comonad, comonadsFd, comonadTransformers
-, distributive, mtl, profunctors, semigroupoids, semigroups
-, transformers
+{ cabal, bifunctors, comonad, distributive, mtl, profunctors
+, semigroupoids, semigroups, transformers
 }:
 
 cabal.mkDerivation (self: {
   pname = "free";
-  version = "3.4.2";
-  sha256 = "1x6pdkcxk6z9ndph2yzz5n21afc2330m0ryv4w67jsss5aa69fwb";
+  version = "4.1";
+  sha256 = "16951r4f7ggvcw2qgjwdrmaxxnrmrm69c67nixs77lm1d31nks4w";
   buildDepends = [
-    bifunctors comonad comonadsFd comonadTransformers distributive mtl
-    profunctors semigroupoids semigroups transformers
+    bifunctors comonad distributive mtl profunctors semigroupoids
+    semigroups transformers
   ];
   meta = {
     homepage = "http://github.com/ekmett/free/";
diff --git a/pkgs/development/libraries/haskell/generic-deriving/default.nix b/pkgs/development/libraries/haskell/generic-deriving/default.nix
index f1a1ec837fd..5081d09939b 100644
--- a/pkgs/development/libraries/haskell/generic-deriving/default.nix
+++ b/pkgs/development/libraries/haskell/generic-deriving/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "generic-deriving";
-  version = "1.6.1";
-  sha256 = "0c3b3xkjdfp14w48gfk3f6aqz4cgk6i3bl5mci23mbb3f33jcx1j";
+  version = "1.6.2";
+  sha256 = "1ryzg7zgnlhx6mbmpsh4fgqf2d758c94qz2zpg3jxns30hd4sfy6";
   meta = {
     description = "Generic programming library for generalised deriving";
     license = self.stdenv.lib.licenses.bsd3;
diff --git a/pkgs/development/libraries/haskell/ghc-mod/default.nix b/pkgs/development/libraries/haskell/ghc-mod/default.nix
index 0f60a650d36..accce6f5c86 100644
--- a/pkgs/development/libraries/haskell/ghc-mod/default.nix
+++ b/pkgs/development/libraries/haskell/ghc-mod/default.nix
@@ -1,11 +1,11 @@
-{ cabal, Cabal, convertible, emacs, filepath, ghcPaths, ghcSybUtils
-, hlint, hspec, ioChoice, syb, time, transformers
+{ cabal, Cabal, convertible, doctest, emacs, filepath, ghcPaths
+, ghcSybUtils, hlint, hspec, ioChoice, syb, time, transformers
 }:
 
 cabal.mkDerivation (self: {
   pname = "ghc-mod";
-  version = "3.0.0";
-  sha256 = "1ll2vn4vv4k7jaah0ngr2ml381cpprqy9ndqpf8cn44m5xd9qn6p";
+  version = "3.1.3";
+  sha256 = "0g12cj8yn2znhqi7wiz5jayzh4g5jdcj1qwy5g3pz456hcpb0jig";
   isLibrary = true;
   isExecutable = true;
   buildDepends = [
@@ -13,7 +13,7 @@ cabal.mkDerivation (self: {
     time transformers
   ];
   testDepends = [
-    Cabal convertible filepath ghcPaths ghcSybUtils hlint hspec
+    Cabal convertible doctest filepath ghcPaths ghcSybUtils hlint hspec
     ioChoice syb time transformers
   ];
   buildTools = [ emacs ];
@@ -30,7 +30,7 @@ cabal.mkDerivation (self: {
     #!/bin/sh
     COMMAND=\$1
     shift
-    eval exec $out/ghc-mod \$COMMAND \$( ${self.ghc.GHCGetPackages} ${self.ghc.ghcVersion} | tr " " "\n" | tail -n +2 | paste -d " " - - | sed 's/.*/-g "&"/' | tr "\n" " ") "\$@"
+    eval exec $out/ghc-mod \$COMMAND \$( ${self.ghc.GHCGetPackages} ${self.ghc.version} | tr " " "\n" | tail -n +2 | paste -d " " - - | sed 's/.*/-g "&"/' | tr "\n" " ") "\$@"
     EOF
     chmod +x $out/bin/ghc-mod
   '';
diff --git a/pkgs/development/libraries/haskell/gitit/default.nix b/pkgs/development/libraries/haskell/gitit/default.nix
index 45c96e64012..905d02b7011 100644
--- a/pkgs/development/libraries/haskell/gitit/default.nix
+++ b/pkgs/development/libraries/haskell/gitit/default.nix
@@ -2,7 +2,7 @@
 , filepath, filestore, ghcPaths, happstackServer, highlightingKate
 , hslogger, HStringTemplate, HTTP, json, mtl, network, pandoc
 , pandocTypes, parsec, random, recaptcha, safe, SHA, syb, tagsoup
-, text, time, url, utf8String, xhtml, xml, xssSanitize, zlib
+, text, time, url, utf8String, xhtml, xml, xssSanitize, zlib, fetchurl
 }:
 
 cabal.mkDerivation (self: {
@@ -19,6 +19,10 @@ cabal.mkDerivation (self: {
     zlib
   ];
   jailbreak = true;
+  patches = [ (fetchurl { url = "https://github.com/jgm/gitit/commit/48155008397bdaed4f97c5678d83c70d4bc3f0ff.patch";
+                          sha256 = "0xdg9frr8lany8ry6vj4vpskmhkpww8jswnb05pzl8a4xfqxh9gd";
+                        })
+            ];
   meta = {
     homepage = "http://gitit.net";
     description = "Wiki using happstack, git or darcs, and pandoc";
diff --git a/pkgs/development/libraries/haskell/gloss/default.nix b/pkgs/development/libraries/haskell/gloss/default.nix
index f397a60017f..0f0777909e8 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.8.0.1";
-  sha256 = "17nnmv84pjls1my58yzifbin3pxcnlbpkprglad707rr4lrkkjvv";
+  version = "1.8.1.1";
+  sha256 = "135rrgzx4xq8279zbsl4538hjn8np4g6409fgva2cb9shw8z5pmj";
   buildDepends = [ bmp GLUT OpenGL ];
   jailbreak = true;
   meta = {
diff --git a/pkgs/development/libraries/haskell/groupoids/default.nix b/pkgs/development/libraries/haskell/groupoids/default.nix
index 4c085c0ae23..7697e8e369f 100644
--- a/pkgs/development/libraries/haskell/groupoids/default.nix
+++ b/pkgs/development/libraries/haskell/groupoids/default.nix
@@ -2,12 +2,13 @@
 
 cabal.mkDerivation (self: {
   pname = "groupoids";
-  version = "3.0.1.1";
-  sha256 = "0r4xjyq7icd52nas27bhr5k8q7li6lba8mlkcipghhsgxsyjfp63";
+  version = "4.0";
+  sha256 = "08la44c19pz2clws5mb939zc1d17cb6qy9qlh2n1634pl0zrawb6";
   buildDepends = [ semigroupoids ];
+  noHaddock = true;
   meta = {
     homepage = "http://github.com/ekmett/groupoids/";
-    description = "Haskell 98 Groupoids";
+    description = "This package has been absorbed into semigroupoids 4.0";
     license = self.stdenv.lib.licenses.bsd3;
     platforms = self.ghc.meta.platforms;
   };
diff --git a/pkgs/development/libraries/haskell/groups/default.nix b/pkgs/development/libraries/haskell/groups/default.nix
index a0309497070..b2cf829f12e 100644
--- a/pkgs/development/libraries/haskell/groups/default.nix
+++ b/pkgs/development/libraries/haskell/groups/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "groups";
-  version = "0.3.0.0";
-  sha256 = "07swv09l98fxh563w1x8n8xzgh9q7n9dbx4gx3i77kwi72vmxl8x";
+  version = "0.4.0.0";
+  sha256 = "1kp8h3617cimya8nnadljyy4vk66dzl5nzfm900k2gh3ci8kja6k";
   meta = {
     description = "Haskell 98 groups";
     license = self.stdenv.lib.licenses.bsd3;
diff --git a/pkgs/development/libraries/haskell/hS3/default.nix b/pkgs/development/libraries/haskell/hS3/default.nix
index 83ee2c810eb..1d6838e92f8 100644
--- a/pkgs/development/libraries/haskell/hS3/default.nix
+++ b/pkgs/development/libraries/haskell/hS3/default.nix
@@ -4,8 +4,8 @@
 
 cabal.mkDerivation (self: {
   pname = "hS3";
-  version = "0.5.7";
-  sha256 = "1p5p6vwazqi5kpi3i0msbgcdf6flp25b2v1an6lvj7y8dx1pk6f2";
+  version = "0.5.8";
+  sha256 = "1wmrrmlz4qlhr75lixn385pjpvpq21aafgf0fw8jyfqgdyjkg7bm";
   isLibrary = true;
   isExecutable = true;
   buildDepends = [
diff --git a/pkgs/development/libraries/haskell/hakyll/default.nix b/pkgs/development/libraries/haskell/hakyll/default.nix
index a594ce87880..22cdf149ef7 100644
--- a/pkgs/development/libraries/haskell/hakyll/default.nix
+++ b/pkgs/development/libraries/haskell/hakyll/default.nix
@@ -1,6 +1,6 @@
-{ cabal, binary, blazeHtml, blazeMarkup, citeprocHs, cmdargs
-, cryptohash, dataDefault, deepseq, filepath, fsnotify, httpConduit
-, httpTypes, HUnit, lrucache, mtl, network, pandoc, parsec
+{ cabal, binary, blazeHtml, blazeMarkup, cmdargs, cryptohash
+, dataDefault, deepseq, filepath, fsnotify, httpConduit, httpTypes
+, HUnit, lrucache, mtl, network, pandoc, pandocCiteproc, parsec
 , QuickCheck, random, regexBase, regexTdfa, snapCore, snapServer
 , systemFilepath, tagsoup, testFramework, testFrameworkHunit
 , testFrameworkQuickcheck2, text, time
@@ -8,27 +8,24 @@
 
 cabal.mkDerivation (self: {
   pname = "hakyll";
-  version = "4.3.3.0";
-  sha256 = "11zfz55a7dr5l7xzknphqninyrb2pw2qmrs7v7ajq2gvbl0lf37n";
+  version = "4.4.1.2";
+  sha256 = "0rbl0gl5ds63mv8cbcwb8aj0vic9padqs3zrdxr2ny70md1v9m9y";
   isLibrary = true;
   isExecutable = true;
   buildDepends = [
-    binary blazeHtml blazeMarkup citeprocHs cmdargs cryptohash
-    dataDefault deepseq filepath fsnotify httpConduit httpTypes
-    lrucache mtl network pandoc parsec random regexBase regexTdfa
-    snapCore snapServer systemFilepath tagsoup text time
+    binary blazeHtml blazeMarkup cmdargs cryptohash dataDefault deepseq
+    filepath fsnotify httpConduit httpTypes lrucache mtl network pandoc
+    pandocCiteproc parsec random regexBase regexTdfa snapCore
+    snapServer systemFilepath tagsoup text time
   ];
   testDepends = [
-    binary blazeHtml blazeMarkup citeprocHs cmdargs cryptohash
-    dataDefault deepseq filepath fsnotify httpConduit httpTypes HUnit
-    lrucache mtl network pandoc parsec QuickCheck random regexBase
-    regexTdfa snapCore snapServer systemFilepath tagsoup testFramework
+    binary blazeHtml blazeMarkup cmdargs cryptohash dataDefault deepseq
+    filepath fsnotify httpConduit httpTypes HUnit lrucache mtl network
+    pandoc pandocCiteproc parsec QuickCheck random regexBase regexTdfa
+    snapCore snapServer systemFilepath tagsoup testFramework
     testFrameworkHunit testFrameworkQuickcheck2 text time
   ];
   doCheck = false;
-  patchPhase = ''
-    sed -i -e 's|cryptohash.*,|cryptohash,|' hakyll.cabal
-  '';
   meta = {
     homepage = "http://jaspervdj.be/hakyll";
     description = "A static website compiler library";
diff --git a/pkgs/development/libraries/haskell/hamlet/default.nix b/pkgs/development/libraries/haskell/hamlet/default.nix
index c29672767a6..b40025ff716 100644
--- a/pkgs/development/libraries/haskell/hamlet/default.nix
+++ b/pkgs/development/libraries/haskell/hamlet/default.nix
@@ -4,8 +4,8 @@
 
 cabal.mkDerivation (self: {
   pname = "hamlet";
-  version = "1.1.7.2";
-  sha256 = "1pfpygbabfmgx01vjkxhf3p9map2v7x8jys06jd6qgc4j90dnk1c";
+  version = "1.1.7.3";
+  sha256 = "0532gf4xdbjxjpv7gsfv0bapnnb4g81jcfzkn71nwizi8zls3qck";
   buildDepends = [
     blazeBuilder blazeHtml blazeMarkup failure parsec shakespeare text
   ];
diff --git a/pkgs/development/libraries/haskell/happstack/happstack-server.nix b/pkgs/development/libraries/haskell/happstack/happstack-server.nix
index f58e4ba2d3d..e12d848f00f 100644
--- a/pkgs/development/libraries/haskell/happstack/happstack-server.nix
+++ b/pkgs/development/libraries/haskell/happstack/happstack-server.nix
@@ -7,8 +7,8 @@
 
 cabal.mkDerivation (self: {
   pname = "happstack-server";
-  version = "7.3.0";
-  sha256 = "094q6m6a4cxwmmw9hin2pphiq8gi0y4ma4vkvqv7rwqnn3mf9n0q";
+  version = "7.3.1";
+  sha256 = "0yk4ylyyc8pz7j5lxibah356f986w932ncxp4y612rqcd0abzrq4";
   buildDepends = [
     base64Bytestring blazeHtml extensibleExceptions filepath hslogger
     html monadControl mtl network parsec sendfile syb systemFilepath
diff --git a/pkgs/development/libraries/haskell/hashable/1.2.0.10.nix b/pkgs/development/libraries/haskell/hashable/1.2.1.0.nix
index 2bafe55f420..092a3f69156 100644
--- a/pkgs/development/libraries/haskell/hashable/1.2.0.10.nix
+++ b/pkgs/development/libraries/haskell/hashable/1.2.1.0.nix
@@ -4,8 +4,8 @@
 
 cabal.mkDerivation (self: {
   pname = "hashable";
-  version = "1.2.0.10";
-  sha256 = "155r7zqc0kisjdslr8d1c04yqwvzwqx4d99c0zla113dvsdjhp37";
+  version = "1.2.1.0";
+  sha256 = "09m1glpcxm3f6s9cwz8xzljy6j0n271cym4d9dllw5rpzrwp9h2f";
   buildDepends = [ text ];
   testDepends = [
     HUnit QuickCheck random testFramework testFrameworkHunit
diff --git a/pkgs/development/libraries/haskell/hashtables/default.nix b/pkgs/development/libraries/haskell/hashtables/default.nix
index ae62c051ec5..ca0e2e529c5 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.1.0.2";
-  sha256 = "0d103cvr168hgyghm6fp67r4lz1p592x45igwld6xq3nyxjxnbp9";
+  version = "1.1.2.1";
+  sha256 = "1166baqalpp9v735821drjvyasr44p4znbcs7njyr09fx87r23f5";
   buildDepends = [ hashable primitive vector ];
   meta = {
     homepage = "http://github.com/gregorycollins/hashtables";
diff --git a/pkgs/development/libraries/haskell/haskell-src-meta/default.nix b/pkgs/development/libraries/haskell/haskell-src-meta/default.nix
index 7c9e7694046..6ce8f9e72ba 100644
--- a/pkgs/development/libraries/haskell/haskell-src-meta/default.nix
+++ b/pkgs/development/libraries/haskell/haskell-src-meta/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "haskell-src-meta";
-  version = "0.6.0.3";
-  sha256 = "1ag26pzppvqw9ch6jz1p0bhsld7fz0b01k7h9516hnmy215h7xai";
+  version = "0.6.0.4";
+  sha256 = "10dixf2abk0canwikf3wdp1ahc51400wxa7x4g59pygv8a3c1c1x";
   buildDepends = [ haskellSrcExts syb thOrphans uniplate ];
   jailbreak = true;
   meta = {
diff --git a/pkgs/development/libraries/haskell/haxr/default.nix b/pkgs/development/libraries/haskell/haxr/default.nix
index a5aaf44c392..26ebbb9f8b0 100644
--- a/pkgs/development/libraries/haskell/haxr/default.nix
+++ b/pkgs/development/libraries/haskell/haxr/default.nix
@@ -4,8 +4,8 @@
 
 cabal.mkDerivation (self: {
   pname = "haxr";
-  version = "3000.9.3";
-  sha256 = "1jg7abgbykxjjpmakmfm6zcwxn0hf9q53430ibr4m9n6alh7nglq";
+  version = "3000.10.1.1";
+  sha256 = "0qvbl3bms2mf650w9j3r0pnl151vzkggy2if3f4rj34qwb2sxmvp";
   buildDepends = [
     base64Bytestring blazeBuilder HaXml HTTP mtl network time
     utf8String
diff --git a/pkgs/development/libraries/haskell/heist/default.nix b/pkgs/development/libraries/haskell/heist/default.nix
index 9def726fb69..b8f709a402c 100644
--- a/pkgs/development/libraries/haskell/heist/default.nix
+++ b/pkgs/development/libraries/haskell/heist/default.nix
@@ -6,8 +6,8 @@
 
 cabal.mkDerivation (self: {
   pname = "heist";
-  version = "0.13.0";
-  sha256 = "1f406i7jdz45s88n0nrd76vj927a0fx02nf1f98r4in0ic5anp11";
+  version = "0.13.0.2";
+  sha256 = "0rbzizgrvwj505dk7qyc9ky5vwyaxyj91xz1dsv0mv7cjl9pp17n";
   buildDepends = [
     aeson attoparsec blazeBuilder blazeHtml directoryTree dlist errors
     filepath hashable MonadCatchIOTransformers mtl random text time
diff --git a/pkgs/development/libraries/haskell/hexpat/default.nix b/pkgs/development/libraries/haskell/hexpat/default.nix
index 5a656bc19c7..03aa9c16ed2 100644
--- a/pkgs/development/libraries/haskell/hexpat/default.nix
+++ b/pkgs/development/libraries/haskell/hexpat/default.nix
@@ -1,14 +1,10 @@
-{ cabal, deepseq, extensibleExceptions, List, text, transformers
-, utf8String
-}:
+{ cabal, deepseq, List, text, transformers, utf8String }:
 
 cabal.mkDerivation (self: {
   pname = "hexpat";
-  version = "0.20.3";
-  sha256 = "13dh0cvcmp6yi4nncsn6q9pkisld9xvz6j4xabng5ax67vdgdvrs";
-  buildDepends = [
-    deepseq extensibleExceptions List text transformers utf8String
-  ];
+  version = "0.20.4";
+  sha256 = "09ixvwgrr1046v806d23ngdhc8xqkf0yadzlbwxcy228ka13xwdw";
+  buildDepends = [ deepseq List text transformers utf8String ];
   meta = {
     homepage = "http://haskell.org/haskellwiki/Hexpat/";
     description = "XML parser/formatter based on expat";
diff --git a/pkgs/development/libraries/haskell/hflags/default.nix b/pkgs/development/libraries/haskell/hflags/default.nix
index 89d2f2d518e..04e70183781 100644
--- a/pkgs/development/libraries/haskell/hflags/default.nix
+++ b/pkgs/development/libraries/haskell/hflags/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "hflags";
-  version = "0.2";
-  sha256 = "1bz8w1vxqlc2c9iygr2dhy2ck1sd56zjwqzz707nqcmsqqsfmyhb";
+  version = "0.4";
+  sha256 = "17zzx273kmnwwazmmns78cllz3l7wad1gi7hizgcxi68j04blhd4";
   buildDepends = [ text ];
   meta = {
     homepage = "http://github.com/errge/hflags";
diff --git a/pkgs/development/libraries/haskell/hjsmin/default.nix b/pkgs/development/libraries/haskell/hjsmin/default.nix
index 9551581dadf..5980141526b 100644
--- a/pkgs/development/libraries/haskell/hjsmin/default.nix
+++ b/pkgs/development/libraries/haskell/hjsmin/default.nix
@@ -4,8 +4,8 @@
 
 cabal.mkDerivation (self: {
   pname = "hjsmin";
-  version = "0.1.4.1";
-  sha256 = "0r73hd6kn37mdbm2i3g6v3qqm696kyflqs6ajq68qr5sr62sjb1a";
+  version = "0.1.4.3";
+  sha256 = "1jhpqfvwvzik41i4mi9fr9w1jlrlc1lj2illlbbwg7r3fwr5hnnl";
   buildDepends = [ blazeBuilder languageJavascript text ];
   testDepends = [
     blazeBuilder Cabal HUnit languageJavascript QuickCheck
diff --git a/pkgs/development/libraries/haskell/hoogle/default.nix b/pkgs/development/libraries/haskell/hoogle/default.nix
index c0b05ea82e0..498e71d06d1 100644
--- a/pkgs/development/libraries/haskell/hoogle/default.nix
+++ b/pkgs/development/libraries/haskell/hoogle/default.nix
@@ -7,8 +7,8 @@
 
 cabal.mkDerivation (self: {
   pname = "hoogle";
-  version = "4.2.21";
-  sha256 = "167iw0rp37c1bixmaa5l06c943h33b457symllh8rcbmf880z09i";
+  version = "4.2.23";
+  sha256 = "1ykjf0w6c3pzsrzdhxs53nxj84aj2px3gpfc8f53dmgqv3wkyii7";
   isLibrary = true;
   isExecutable = true;
   buildDepends = [
diff --git a/pkgs/development/libraries/haskell/hslua/default.nix b/pkgs/development/libraries/haskell/hslua/default.nix
new file mode 100644
index 00000000000..0cdd309d81b
--- /dev/null
+++ b/pkgs/development/libraries/haskell/hslua/default.nix
@@ -0,0 +1,15 @@
+{ cabal, lua, mtl }:
+
+cabal.mkDerivation (self: {
+  pname = "hslua";
+  version = "0.3.8";
+  sha256 = "1yb23cyb3wj70z8lvk6w2sn13kc17v53fd8m587kb4fpqzpdz44d";
+  buildDepends = [ mtl ];
+  pkgconfigDepends = [ lua ];
+  configureFlags = "-fsystem-lua";
+  meta = {
+    description = "A Lua language interpreter embedding in Haskell";
+    license = self.stdenv.lib.licenses.bsd3;
+    platforms = self.ghc.meta.platforms;
+  };
+})
diff --git a/pkgs/development/libraries/haskell/hspec/default.nix b/pkgs/development/libraries/haskell/hspec/default.nix
index 6d9caf6e6b6..57dab8852fd 100644
--- a/pkgs/development/libraries/haskell/hspec/default.nix
+++ b/pkgs/development/libraries/haskell/hspec/default.nix
@@ -5,8 +5,8 @@
 
 cabal.mkDerivation (self: {
   pname = "hspec";
-  version = "1.7.2";
-  sha256 = "0f0l5kzkpn957v7ibaxz9bxmjmbjaw50z2xs23g2w06zwnxii90h";
+  version = "1.7.2.1";
+  sha256 = "12khyg6ixk2rkbvxjbi210w57cais1s142v337kpcp3dfk6440bk";
   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 6d6ac6b3fd0..4d639909d8e 100644
--- a/pkgs/development/libraries/haskell/http-conduit/default.nix
+++ b/pkgs/development/libraries/haskell/http-conduit/default.nix
@@ -9,8 +9,8 @@
 
 cabal.mkDerivation (self: {
   pname = "http-conduit";
-  version = "1.9.4.5";
-  sha256 = "04b459x60dspd827k6ccikkm4j0cl7phcprvsdcqbc78yjf7vqpg";
+  version = "1.9.5.1";
+  sha256 = "1a53s5f9p0xnd33midi4pfj6i3nvckb9khn0p3l3v3xvqn5rrgf2";
   buildDepends = [
     asn1Data base64Bytestring blazeBuilder blazeBuilderConduit
     caseInsensitive certificate conduit cookie cprngAes dataDefault
diff --git a/pkgs/development/libraries/haskell/http-types/default.nix b/pkgs/development/libraries/haskell/http-types/default.nix
index b0b68eec434..c099709e0da 100644
--- a/pkgs/development/libraries/haskell/http-types/default.nix
+++ b/pkgs/development/libraries/haskell/http-types/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "http-types";
-  version = "0.8.1";
-  sha256 = "07hxxlhgnwsvjr2dzqbswwwkjxwsc0pk6shpkvzgclrsyn3xrg7p";
+  version = "0.8.2";
+  sha256 = "1536wpmicmq90qvnvcvq1dzk2vfhj7ls6hz4pqp0ll9aksk3msr1";
   buildDepends = [ blazeBuilder caseInsensitive text ];
   testDepends = [ blazeBuilder hspec QuickCheck text ];
   meta = {
diff --git a/pkgs/development/libraries/haskell/intervals/default.nix b/pkgs/development/libraries/haskell/intervals/default.nix
index 3cc44b05dbb..788962412d7 100644
--- a/pkgs/development/libraries/haskell/intervals/default.nix
+++ b/pkgs/development/libraries/haskell/intervals/default.nix
@@ -1,10 +1,9 @@
-{ cabal, numericExtras }:
+{ cabal }:
 
 cabal.mkDerivation (self: {
   pname = "intervals";
-  version = "0.2.2";
-  sha256 = "059xmk373xz6nwk61iyhx4d7xd328jxb694qmq9plry3k77mdh5q";
-  buildDepends = [ numericExtras ];
+  version = "0.3";
+  sha256 = "1k8dhhwa6y5hrkm9np9x953bdn3pgk5c2lkl3zgrrmrwmd075422";
   meta = {
     homepage = "http://github.com/ekmett/intervals";
     description = "Interval Arithmetic";
diff --git a/pkgs/development/libraries/haskell/keys/default.nix b/pkgs/development/libraries/haskell/keys/default.nix
new file mode 100644
index 00000000000..b657f3dd6b9
--- /dev/null
+++ b/pkgs/development/libraries/haskell/keys/default.nix
@@ -0,0 +1,16 @@
+{ cabal, comonad, free, semigroupoids, semigroups, transformers }:
+
+cabal.mkDerivation (self: {
+  pname = "keys";
+  version = "3.10";
+  sha256 = "1s2xkzvaqk507wrgabpxli8g8n83arflmdhxq40f7qkvyflhhmyh";
+  buildDepends = [
+    comonad free semigroupoids semigroups transformers
+  ];
+  meta = {
+    homepage = "http://github.com/ekmett/keys/";
+    description = "Keyed functors and containers";
+    license = self.stdenv.lib.licenses.bsd3;
+    platforms = self.ghc.meta.platforms;
+  };
+})
diff --git a/pkgs/development/libraries/haskell/lambdabot/default.nix b/pkgs/development/libraries/haskell/lambdabot/default.nix
index 922130f4f9b..bbf13bd3fe9 100644
--- a/pkgs/development/libraries/haskell/lambdabot/default.nix
+++ b/pkgs/development/libraries/haskell/lambdabot/default.nix
@@ -10,8 +10,8 @@
 
 cabal.mkDerivation (self: {
   pname = "lambdabot";
-  version = "4.3";
-  sha256 = "0pjwxlq4rbmg9wj44vrillly967y35b4i995mz5167hpji05clvy";
+  version = "4.3.0.1";
+  sha256 = "19pkm4m2xk9ziai3ka4scxjavi0as8dmivz9q6vg3npmv0kyhkhb";
   isLibrary = true;
   isExecutable = true;
   buildDepends = [
diff --git a/pkgs/development/libraries/haskell/language-ecmascript/default.nix b/pkgs/development/libraries/haskell/language-ecmascript/default.nix
new file mode 100644
index 00000000000..8fc147191ad
--- /dev/null
+++ b/pkgs/development/libraries/haskell/language-ecmascript/default.nix
@@ -0,0 +1,23 @@
+{ cabal, dataDefaultClass, Diff, filepath, HUnit, mtl, parsec
+, QuickCheck, testFramework, testFrameworkHunit
+, testFrameworkQuickcheck2, uniplate
+}:
+
+cabal.mkDerivation (self: {
+  pname = "language-ecmascript";
+  version = "0.15.2";
+  sha256 = "1iszs9f2jryddcz36a6anfyfxpwjhzn49xjqvnd5m6rjdq6y403w";
+  buildDepends = [
+    dataDefaultClass Diff mtl parsec QuickCheck uniplate
+  ];
+  testDepends = [
+    dataDefaultClass Diff filepath HUnit mtl parsec QuickCheck
+    testFramework testFrameworkHunit testFrameworkQuickcheck2
+  ];
+  meta = {
+    homepage = "http://github.com/jswebtools/language-ecmascript";
+    description = "JavaScript parser and pretty-printer library";
+    license = self.stdenv.lib.licenses.bsd3;
+    platforms = self.ghc.meta.platforms;
+  };
+})
diff --git a/pkgs/development/libraries/haskell/language-java/default.nix b/pkgs/development/libraries/haskell/language-java/default.nix
index 13054c0714d..e665f5aadde 100644
--- a/pkgs/development/libraries/haskell/language-java/default.nix
+++ b/pkgs/development/libraries/haskell/language-java/default.nix
@@ -5,7 +5,7 @@
 cabal.mkDerivation (self: {
   pname = "language-java";
   version = "0.2.5";
-  sha256 = "1l3q156m3l3fawsrgj3fr16qxr0apwg2si410j0f5hsgfmkhdrm6";
+  sha256 = "1ai6mvzasi8fji4b81nrpy48icf5h25g3kakhpfbzckwf20c9dkd";
   buildDepends = [ cpphs parsec syb ];
   testDepends = [
     filepath HUnit mtl QuickCheck testFramework testFrameworkHunit
diff --git a/pkgs/development/libraries/haskell/language-javascript/default.nix b/pkgs/development/libraries/haskell/language-javascript/default.nix
index 4571b869e3b..abf8df4f556 100644
--- a/pkgs/development/libraries/haskell/language-javascript/default.nix
+++ b/pkgs/development/libraries/haskell/language-javascript/default.nix
@@ -4,8 +4,8 @@
 
 cabal.mkDerivation (self: {
   pname = "language-javascript";
-  version = "0.5.7";
-  sha256 = "0mndz0bqxkayzm7g92cvai9ahb9msr99syp9djhaya1d45595ad3";
+  version = "0.5.8";
+  sha256 = "0slwj2bi9v7qjr6ai5dwql7fqgsh8k9k2bzlsq407iacsv0w3b9h";
   buildDepends = [ blazeBuilder mtl utf8Light utf8String ];
   testDepends = [
     blazeBuilder Cabal HUnit mtl QuickCheck testFramework
diff --git a/pkgs/development/libraries/haskell/lens-datetime/default.nix b/pkgs/development/libraries/haskell/lens-datetime/default.nix
index b1a472dfc7c..2de451f4177 100644
--- a/pkgs/development/libraries/haskell/lens-datetime/default.nix
+++ b/pkgs/development/libraries/haskell/lens-datetime/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "lens-datetime";
-  version = "0.1.1";
-  sha256 = "0p93211ibq1rkh4aj69xdwan0338k35vb5qyf7zp761nghnk3d47";
+  version = "0.2";
+  sha256 = "0wrs7alz1zfg1xrg04lhz01mrd1gcz2xr8b5mxfdvq94f5m87sdr";
   buildDepends = [ lens time ];
   meta = {
     homepage = "http://github.com/klao/lens-datetime";
diff --git a/pkgs/development/libraries/haskell/lens/default.nix b/pkgs/development/libraries/haskell/lens/default.nix
index 20541aa4a2f..60aa29ac089 100644
--- a/pkgs/development/libraries/haskell/lens/default.nix
+++ b/pkgs/development/libraries/haskell/lens/default.nix
@@ -1,23 +1,21 @@
-{ cabal, bifunctors, comonad, comonadsFd, comonadTransformers
-, contravariant, deepseq, distributive, doctest, filepath
-, genericDeriving, hashable, HUnit, MonadCatchIOTransformers, mtl
-, nats, parallel, profunctorExtras, profunctors, QuickCheck
-, reflection, semigroupoids, semigroups, simpleReflect, split
-, tagged, testFramework, testFrameworkHunit
+{ cabal, bifunctors, comonad, contravariant, deepseq, distributive
+, doctest, filepath, genericDeriving, hashable, HUnit
+, MonadCatchIOTransformers, mtl, nats, parallel, profunctors
+, QuickCheck, reflection, semigroupoids, semigroups, simpleReflect
+, split, tagged, testFramework, testFrameworkHunit
 , testFrameworkQuickcheck2, testFrameworkTh, text, transformers
 , transformersCompat, unorderedContainers, vector, void
 }:
 
 cabal.mkDerivation (self: {
   pname = "lens";
-  version = "3.9.1";
-  sha256 = "141v7b5ag6jxnim1hdyxqi5m2sm1j5fpspkcs8qnznfcd33gyfja";
+  version = "3.10";
+  sha256 = "086kbd59zlx3ldrxilssxd0gr9izwhcfhg5k6bqzm6gwvysrzq3y";
   buildDepends = [
-    bifunctors comonad comonadsFd comonadTransformers contravariant
-    distributive filepath genericDeriving hashable
-    MonadCatchIOTransformers mtl parallel profunctorExtras profunctors
-    reflection semigroupoids semigroups split tagged text transformers
-    transformersCompat unorderedContainers vector void
+    bifunctors comonad contravariant distributive filepath
+    genericDeriving hashable MonadCatchIOTransformers mtl parallel
+    profunctors reflection semigroupoids semigroups split tagged text
+    transformers transformersCompat unorderedContainers vector void
   ];
   testDepends = [
     deepseq doctest filepath genericDeriving HUnit mtl nats parallel
diff --git a/pkgs/development/libraries/haskell/linear/default.nix b/pkgs/development/libraries/haskell/linear/default.nix
index ba0f2ce1a3a..feeeaed3be5 100644
--- a/pkgs/development/libraries/haskell/linear/default.nix
+++ b/pkgs/development/libraries/haskell/linear/default.nix
@@ -1,21 +1,26 @@
-{ cabal, distributive, doctest, filepath, hashable, lens
-, reflection, semigroupoids, semigroups, simpleReflect, tagged
-, transformers, unorderedContainers, vector
+{ cabal, binary, distributive, doctest, filepath, hashable, HUnit
+, lens, reflection, semigroupoids, semigroups, simpleReflect
+, tagged, testFramework, testFrameworkHunit, transformers
+, unorderedContainers, vector
 }:
 
 cabal.mkDerivation (self: {
   pname = "linear";
-  version = "1.2";
-  sha256 = "0mna8k6plq0akki5j5zjk1xk1hgks1076q1h5s14v87d0h45wlrh";
+  version = "1.3.1";
+  sha256 = "1s07qbdi12rc4djk4s0ds5sh79qcqfmgrbwfj1ygskq3ra88qqsa";
   buildDepends = [
-    distributive hashable reflection semigroupoids semigroups tagged
-    transformers unorderedContainers vector
+    binary distributive hashable reflection semigroupoids semigroups
+    tagged transformers unorderedContainers vector
+  ];
+  testDepends = [
+    binary doctest filepath HUnit lens simpleReflect testFramework
+    testFrameworkHunit
   ];
-  testDepends = [ doctest filepath lens simpleReflect ];
   meta = {
     homepage = "http://github.com/ekmett/linear/";
     description = "Linear Algebra";
     license = self.stdenv.lib.licenses.bsd3;
     platforms = self.ghc.meta.platforms;
+    maintainers = [ self.stdenv.lib.maintainers.ocharles ];
   };
 })
diff --git a/pkgs/development/libraries/haskell/list-tries/default.nix b/pkgs/development/libraries/haskell/list-tries/default.nix
new file mode 100644
index 00000000000..4eb91c67a47
--- /dev/null
+++ b/pkgs/development/libraries/haskell/list-tries/default.nix
@@ -0,0 +1,16 @@
+{ cabal, binary, dlist }:
+
+cabal.mkDerivation (self: {
+  pname = "list-tries";
+  version = "0.5.1";
+  sha256 = "15lbq41rikj5vm9gfgjxz98pamnib4dcs48fr2vm9r3s3fikd2kz";
+  isLibrary = true;
+  isExecutable = true;
+  buildDepends = [ binary dlist ];
+  meta = {
+    homepage = "http://iki.fi/matti.niemenmaa/list-tries/";
+    description = "Tries and Patricia tries: finite sets and maps for list keys";
+    license = self.stdenv.lib.licenses.bsd3;
+    platforms = self.ghc.meta.platforms;
+  };
+})
diff --git a/pkgs/development/libraries/haskell/llvm-general-pure/default.nix b/pkgs/development/libraries/haskell/llvm-general-pure/default.nix
new file mode 100644
index 00000000000..0a8f455d971
--- /dev/null
+++ b/pkgs/development/libraries/haskell/llvm-general-pure/default.nix
@@ -0,0 +1,20 @@
+{ cabal, HUnit, mtl, parsec, QuickCheck, setenv, testFramework
+, testFrameworkHunit, testFrameworkQuickcheck2, transformers
+}:
+
+cabal.mkDerivation (self: {
+  pname = "llvm-general-pure";
+  version = "3.3.8.2";
+  sha256 = "171mp9rydw6r2khcmvkcfjk934ckfahwyx1b4a15gmj8sr1s9hzp";
+  buildDepends = [ mtl parsec setenv transformers ];
+  testDepends = [
+    HUnit mtl QuickCheck testFramework testFrameworkHunit
+    testFrameworkQuickcheck2
+  ];
+  doCheck = false;
+  meta = {
+    description = "Pure Haskell LLVM functionality (no FFI)";
+    license = self.stdenv.lib.licenses.bsd3;
+    platforms = self.ghc.meta.platforms;
+  };
+})
diff --git a/pkgs/development/libraries/haskell/llvm-general/default.nix b/pkgs/development/libraries/haskell/llvm-general/default.nix
index 16d9859aae2..2eb0a2c5d20 100644
--- a/pkgs/development/libraries/haskell/llvm-general/default.nix
+++ b/pkgs/development/libraries/haskell/llvm-general/default.nix
@@ -1,18 +1,21 @@
-{ cabal, HUnit, llvmConfig, mtl, parsec, QuickCheck, setenv
-, testFramework, testFrameworkHunit, testFrameworkQuickcheck2, text
-, transformers
+{ cabal, HUnit, llvmConfig, llvmGeneralPure, mtl, parsec
+, QuickCheck, setenv, testFramework, testFrameworkHunit
+, testFrameworkQuickcheck2, transformers, utf8String
 }:
 
 cabal.mkDerivation (self: {
   pname = "llvm-general";
-  version = "3.3.5.0";
-  sha256 = "15zrav7339jn6p75g1d7h3qkr1wyal1jzfs8xy73kckw2fzn4nlf";
-  buildDepends = [ mtl parsec setenv text transformers ];
+  version = "3.3.8.2";
+  sha256 = "11qnvpnx4i8mjdgn5y58rl70wf8pzmd555hrdaki1f4q0035cmm5";
+  buildDepends = [
+    llvmGeneralPure mtl parsec setenv transformers utf8String
+  ];
   testDepends = [
-    HUnit mtl QuickCheck testFramework testFrameworkHunit
-    testFrameworkQuickcheck2
+    HUnit llvmGeneralPure mtl QuickCheck testFramework
+    testFrameworkHunit testFrameworkQuickcheck2
   ];
   buildTools = [ llvmConfig ];
+  doCheck = false;
   meta = {
     description = "General purpose LLVM bindings";
     license = self.stdenv.lib.licenses.bsd3;
diff --git a/pkgs/development/libraries/haskell/math-functions/default.nix b/pkgs/development/libraries/haskell/math-functions/default.nix
index 2e29269a9fd..8180c8bce75 100644
--- a/pkgs/development/libraries/haskell/math-functions/default.nix
+++ b/pkgs/development/libraries/haskell/math-functions/default.nix
@@ -4,8 +4,8 @@
 
 cabal.mkDerivation (self: {
   pname = "math-functions";
-  version = "0.1.3.0";
-  sha256 = "06wxr8fbhmsgkpyx2vimx9l6apk0p27mwrxrvbjk0b7m9vsg3ay5";
+  version = "0.1.4.0";
+  sha256 = "1cijm224gfvd7rvrrndcks8d7aj89c9qv0m4wx2qqngr7rk78kav";
   buildDepends = [ erf vector ];
   testDepends = [
     HUnit ieee754 QuickCheck testFramework testFrameworkHunit
diff --git a/pkgs/development/libraries/haskell/modular-arithmetic/default.nix b/pkgs/development/libraries/haskell/modular-arithmetic/default.nix
index 7d53d81f7bb..9a15b32f307 100644
--- a/pkgs/development/libraries/haskell/modular-arithmetic/default.nix
+++ b/pkgs/development/libraries/haskell/modular-arithmetic/default.nix
@@ -2,9 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "modular-arithmetic";
-  version = "1.0.1.1";
-  sha256 = "14n83kjmz8mqjivjhwxk1zckms5z3gn77yq2hsw2yybzff2vkdkd";
-  noHaddock = true;
+  version = "1.1.0.0";
+  sha256 = "02zxxz204ydyj28p65fqb920x5gbm7gba4yf9mhiw6ff0dcmxp37";
   meta = {
     description = "A type for integers modulo some constant";
     license = self.stdenv.lib.licenses.bsd3;
diff --git a/pkgs/development/libraries/haskell/monad-control/default.nix b/pkgs/development/libraries/haskell/monad-control/default.nix
index ac59d470145..12657a63b4c 100644
--- a/pkgs/development/libraries/haskell/monad-control/default.nix
+++ b/pkgs/development/libraries/haskell/monad-control/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "monad-control";
-  version = "0.3.2.1";
-  sha256 = "17wfdg3a2kkx1jwh7gfgbyx4351b420krsf8syb8l9xrl9gdz5a3";
+  version = "0.3.2.2";
+  sha256 = "1wwcx2k0nzmjqxf8d8wasnhvdx5q3nxkcyq7vbprkfy85sj7ivxc";
   buildDepends = [
     baseUnicodeSymbols transformers transformersBase
   ];
diff --git a/pkgs/development/libraries/haskell/monad-logger/default.nix b/pkgs/development/libraries/haskell/monad-logger/default.nix
index c06809c261d..0b92ca0bb90 100644
--- a/pkgs/development/libraries/haskell/monad-logger/default.nix
+++ b/pkgs/development/libraries/haskell/monad-logger/default.nix
@@ -1,14 +1,15 @@
-{ cabal, conduit, fastLogger, monadControl, mtl, resourcet, text
-, transformers, transformersBase
+{ cabal, conduit, fastLogger, liftedBase, monadControl, monadLoops
+, mtl, resourcet, stm, stmChans, text, transformers
+, transformersBase
 }:
 
 cabal.mkDerivation (self: {
   pname = "monad-logger";
-  version = "0.3.1.1";
-  sha256 = "11qqmflcydjfm5py7rkbi9qd0mkhw4kxzxff95wf0jmaia9knvx6";
+  version = "0.3.2.0";
+  sha256 = "0pgjayx6h1zqadqrzaf36070kir7qlinha9h4bf532lfx5yc1yxg";
   buildDepends = [
-    conduit fastLogger monadControl mtl resourcet text transformers
-    transformersBase
+    conduit fastLogger liftedBase monadControl monadLoops mtl resourcet
+    stm stmChans text transformers transformersBase
   ];
   meta = {
     homepage = "https://github.com/kazu-yamamoto/logger";
diff --git a/pkgs/development/libraries/haskell/monad-par/0.3.4.4.nix b/pkgs/development/libraries/haskell/monad-par/0.3.4.5.nix
index d682908dcf1..58cbb522fa2 100644
--- a/pkgs/development/libraries/haskell/monad-par/0.3.4.4.nix
+++ b/pkgs/development/libraries/haskell/monad-par/0.3.4.5.nix
@@ -6,8 +6,8 @@
 
 cabal.mkDerivation (self: {
   pname = "monad-par";
-  version = "0.3.4.4";
-  sha256 = "0mqvrg2izqjrgzbmr6pcl9v9827fkr4mwxpdckm3gj1miljsj314";
+  version = "0.3.4.5";
+  sha256 = "0xwjx3l9ssyxaa49v8kz7ic54va1qy6dqa1z5gvww7a5gw1ll81p";
   buildDepends = [
     abstractDeque abstractPar deepseq monadParExtras mtl mwcRandom
     parallel
diff --git a/pkgs/development/libraries/haskell/mono-traversable/default.nix b/pkgs/development/libraries/haskell/mono-traversable/default.nix
new file mode 100644
index 00000000000..42cfee3412b
--- /dev/null
+++ b/pkgs/development/libraries/haskell/mono-traversable/default.nix
@@ -0,0 +1,20 @@
+{ cabal, comonad, hashable, hspec, semigroupoids, semigroups, text
+, transformers, unorderedContainers, vector
+}:
+
+cabal.mkDerivation (self: {
+  pname = "mono-traversable";
+  version = "0.1.0.0";
+  sha256 = "1pkg8lagfiixgq2xb4ficgcqv1hhmxy2r49lq9szar7knh0gcjn1";
+  buildDepends = [
+    comonad hashable semigroupoids semigroups text transformers
+    unorderedContainers vector
+  ];
+  testDepends = [ hspec text ];
+  meta = {
+    homepage = "https://github.com/snoyberg/mono-traversable";
+    description = "Type classes for mapping, folding, and traversing monomorphic containers";
+    license = self.stdenv.lib.licenses.mit;
+    platforms = self.ghc.meta.platforms;
+  };
+})
diff --git a/pkgs/development/libraries/haskell/monoid-extras/default.nix b/pkgs/development/libraries/haskell/monoid-extras/default.nix
index a9a2b07e81b..8eb61453f9c 100644
--- a/pkgs/development/libraries/haskell/monoid-extras/default.nix
+++ b/pkgs/development/libraries/haskell/monoid-extras/default.nix
@@ -2,9 +2,10 @@
 
 cabal.mkDerivation (self: {
   pname = "monoid-extras";
-  version = "0.3.2.0";
-  sha256 = "0yhb55v0a2221xbpbm8jiqzqvps0lab5n8iakpq69ndr2l0d2r3x";
+  version = "0.3.2.3";
+  sha256 = "1q7aw4adg082rszkc3skdvidcn86n06xvr3x8qarpjb285znsmc4";
   buildDepends = [ groupoids groups semigroupoids semigroups ];
+  jailbreak = true;
   meta = {
     description = "Various extra monoid-related definitions and utilities";
     license = self.stdenv.lib.licenses.bsd3;
diff --git a/pkgs/development/libraries/haskell/multiarg/default.nix b/pkgs/development/libraries/haskell/multiarg/default.nix
index 555435d3c58..3c5239b4737 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.22.0.0";
-  sha256 = "1fswkgrn8mc92lrzmrxhv6hbgch2lqdvmjn88k4ajqc0gpmpb750";
+  version = "0.24.0.0";
+  sha256 = "0vdhrsqwa2wq9cvf96x3hqml2vbjcvik9mpz1kbbhb61f9lbhas6";
   buildDepends = [ utf8String ];
   meta = {
     homepage = "https://github.com/massysett/multiarg";
diff --git a/pkgs/development/libraries/haskell/multirec/default.nix b/pkgs/development/libraries/haskell/multirec/default.nix
index a7d7459b455..61de0cace5b 100644
--- a/pkgs/development/libraries/haskell/multirec/default.nix
+++ b/pkgs/development/libraries/haskell/multirec/default.nix
@@ -4,7 +4,6 @@ cabal.mkDerivation (self: {
   pname = "multirec";
   version = "0.7.3";
   sha256 = "0k1wbjsvkl08nwjikflc8yyalk654mf8bvi1rhm28i4na52myi5y";
-  noHaddock = true;
   meta = {
     homepage = "http://www.cs.uu.nl/wiki/GenericProgramming/Multirec";
     description = "Generic programming for families of recursive datatypes";
diff --git a/pkgs/development/libraries/haskell/mwc-random/default.nix b/pkgs/development/libraries/haskell/mwc-random/default.nix
index 3e9be2c5e58..d26980994e7 100644
--- a/pkgs/development/libraries/haskell/mwc-random/default.nix
+++ b/pkgs/development/libraries/haskell/mwc-random/default.nix
@@ -4,8 +4,8 @@
 
 cabal.mkDerivation (self: {
   pname = "mwc-random";
-  version = "0.12.0.1";
-  sha256 = "1sq4yxi231ka8rzwsihqziibs7amvl27ycr018wymm3yz36vsy7c";
+  version = "0.13.1.0";
+  sha256 = "16g6b1pphr4p36nn5qjj62iwf47rq8kfmpjgfvd35r3cz9qqb8cb";
   buildDepends = [ primitive time vector ];
   testDepends = [
     HUnit QuickCheck statistics testFramework testFrameworkHunit
diff --git a/pkgs/development/libraries/haskell/nats/default.nix b/pkgs/development/libraries/haskell/nats/default.nix
index 02f5c289836..91cc79f52b8 100644
--- a/pkgs/development/libraries/haskell/nats/default.nix
+++ b/pkgs/development/libraries/haskell/nats/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "nats";
-  version = "0.1";
-  sha256 = "08gh7jjmws70919hmqqmvnfqcpxr34f03jmg3lzmmhqvr15gm1vy";
+  version = "0.1.2";
+  sha256 = "1r4083p8sbnqs74l8faqfs1i97k8bql762l55pbmapy0p1xrkzka";
   meta = {
     homepage = "http://github.com/ekmett/nats/";
     description = "Haskell 98 natural numbers";
diff --git a/pkgs/development/libraries/haskell/ncurses/default.nix b/pkgs/development/libraries/haskell/ncurses/default.nix
index c98f711f297..f900e3c2ef9 100644
--- a/pkgs/development/libraries/haskell/ncurses/default.nix
+++ b/pkgs/development/libraries/haskell/ncurses/default.nix
@@ -2,17 +2,12 @@
 
 cabal.mkDerivation (self: {
   pname = "ncurses";
-  version = "0.2.4";
-  sha256 = "0d4h85qgva1sf59g55k9xidqdpw18qj51xj7w5cqsf5pcpxgkcwh";
+  version = "0.2.7";
+  sha256 = "026p6b2apgi9r65py45h3rl57xgwzyamq511a0rsb7myzagw22vz";
   buildDepends = [ text transformers ];
   buildTools = [ c2hs ];
   extraLibraries = [ ncurses ];
-  preConfigure = ''
-    sed -i -e "s,ncursesw/,," lib/UI/NCurses.chs
-    sed -i -e "s,ncursesw/,," lib/UI/NCurses/Enums.chs
-    sed -i -e "s,ncursesw/,," lib/UI/NCurses/Panel.chs
-    sed -i -e "s,ncursesw/,," cbits/hsncurses-shim.c
-  '';
+  patchPhase = "find . -type f -exec sed -i -e 's|ncursesw/||' {} \\;";
   meta = {
     homepage = "https://john-millikin.com/software/haskell-ncurses/";
     description = "Modernised bindings to GNU ncurses";
diff --git a/pkgs/development/libraries/haskell/network-conduit-tls/default.nix b/pkgs/development/libraries/haskell/network-conduit-tls/default.nix
index bfb96e30480..415c047a2f5 100644
--- a/pkgs/development/libraries/haskell/network-conduit-tls/default.nix
+++ b/pkgs/development/libraries/haskell/network-conduit-tls/default.nix
@@ -1,16 +1,17 @@
-{ cabal, aeson, certificate, conduit, cprngAes, cryptoApi
-, cryptoRandomApi, network, networkConduit, pem, systemFileio
-, systemFilepath, tls, tlsExtra, transformers
+{ cabal, aeson, certificate, conduit, connection, cprngAes
+, cryptoApi, cryptoRandomApi, dataDefault, monadControl, network
+, networkConduit, pem, systemFileio, systemFilepath, tls, tlsExtra
+, transformers
 }:
 
 cabal.mkDerivation (self: {
   pname = "network-conduit-tls";
-  version = "1.0.1.1";
-  sha256 = "0v5rspcjhd2vid5i74dy1sdcvci7dlr88sgr0v9vjp4gcyb29qlj";
+  version = "1.0.2";
+  sha256 = "0m3sbb4vpsjf568zaaxri8x7x46wngf5y2s5chgjzfmbj0amkl51";
   buildDepends = [
-    aeson certificate conduit cprngAes cryptoApi cryptoRandomApi
-    network networkConduit pem systemFileio systemFilepath tls tlsExtra
-    transformers
+    aeson certificate conduit connection cprngAes cryptoApi
+    cryptoRandomApi dataDefault monadControl network networkConduit pem
+    systemFileio systemFilepath tls tlsExtra transformers
   ];
   meta = {
     homepage = "https://github.com/snoyberg/conduit";
diff --git a/pkgs/development/libraries/haskell/network/2.4.2.0.nix b/pkgs/development/libraries/haskell/network/2.4.2.0.nix
new file mode 100644
index 00000000000..2912138daf7
--- /dev/null
+++ b/pkgs/development/libraries/haskell/network/2.4.2.0.nix
@@ -0,0 +1,20 @@
+{ cabal, HUnit, parsec, testFramework, testFrameworkHunit
+, testFrameworkQuickcheck2
+}:
+
+cabal.mkDerivation (self: {
+  pname = "network";
+  version = "2.4.2.0";
+  sha256 = "1v6iwww8xym0sr2593ri0aa6gcs6n2975fi9gaz9n7rizbqm88qs";
+  buildDepends = [ parsec ];
+  testDepends = [
+    HUnit testFramework testFrameworkHunit testFrameworkQuickcheck2
+  ];
+  meta = {
+    homepage = "https://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 81a3e866dc0..26ed2d77bd0 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.1.0.3";
-  sha256 = "0w2m2m3vp3lpvnc7wkw6pqfz741a68dma4s0asl7cryykwf94xgz";
+  version = "3000.2.0.0";
+  sha256 = "035qc7dgh4nd661z4mm742v8y7xqdyyp0r0vkinxiifciqb1fkbm";
   testDepends = [
     QuickCheck testFramework testFrameworkQuickcheck2
   ];
diff --git a/pkgs/development/libraries/haskell/optparse-applicative/default.nix b/pkgs/development/libraries/haskell/optparse-applicative/default.nix
index a3ab241b28c..6f7ef601d61 100644
--- a/pkgs/development/libraries/haskell/optparse-applicative/default.nix
+++ b/pkgs/development/libraries/haskell/optparse-applicative/default.nix
@@ -4,8 +4,8 @@
 
 cabal.mkDerivation (self: {
   pname = "optparse-applicative";
-  version = "0.5.2.1";
-  sha256 = "0w4mk851mx8dch8lnck0g82asmzrsc47xrf34jygh0f6v4kbj40i";
+  version = "0.7.0.2";
+  sha256 = "1pq620236x8fch9nkq4g4vganbzksnwj8z1bb80c2mwvf6sbg5ci";
   buildDepends = [ transformers ];
   testDepends = [
     HUnit testFramework testFrameworkHunit testFrameworkThPrime
diff --git a/pkgs/development/libraries/haskell/pandoc-citeproc/default.nix b/pkgs/development/libraries/haskell/pandoc-citeproc/default.nix
new file mode 100644
index 00000000000..dd400ef550d
--- /dev/null
+++ b/pkgs/development/libraries/haskell/pandoc-citeproc/default.nix
@@ -0,0 +1,27 @@
+{ cabal, aeson, aesonPretty, attoparsec, Diff, filepath, hexpat
+, hsBibutils, HTTP, json, mtl, network, pandoc, pandocTypes, parsec
+, rfc5051, split, syb, tagsoup, texmath, text, time, utf8String
+, vector, yaml
+}:
+
+cabal.mkDerivation (self: {
+  pname = "pandoc-citeproc";
+  version = "0.1.2.1";
+  sha256 = "13i4shpbd9swbsrpmkpb7jx79m12z12m9f3x167fs78509dak3iv";
+  isLibrary = true;
+  isExecutable = true;
+  buildDepends = [
+    aeson attoparsec filepath hexpat hsBibutils HTTP json mtl network
+    pandoc pandocTypes parsec rfc5051 split syb tagsoup texmath text
+    time utf8String vector yaml
+  ];
+  testDepends = [
+    aeson aesonPretty Diff filepath pandoc pandocTypes yaml
+  ];
+  doCheck = false;
+  meta = {
+    description = "Supports using pandoc with citeproc";
+    license = self.stdenv.lib.licenses.bsd3;
+    platforms = self.ghc.meta.platforms;
+  };
+})
diff --git a/pkgs/development/libraries/haskell/pandoc-types/default.nix b/pkgs/development/libraries/haskell/pandoc-types/default.nix
index d4f49791d30..41024c6b7d2 100644
--- a/pkgs/development/libraries/haskell/pandoc-types/default.nix
+++ b/pkgs/development/libraries/haskell/pandoc-types/default.nix
@@ -1,10 +1,10 @@
-{ cabal, syb }:
+{ cabal, aeson, syb }:
 
 cabal.mkDerivation (self: {
   pname = "pandoc-types";
-  version = "1.10";
-  sha256 = "1xbqvgb95h0jhqx2y0jzds3xvycx5gwi3xn6agdmfkg7xhx9hnz6";
-  buildDepends = [ syb ];
+  version = "1.12.3";
+  sha256 = "1klfplpn2faw9da7xw5h5sx44annc2g7himyzyvb436wjnkjan0j";
+  buildDepends = [ aeson syb ];
   meta = {
     homepage = "http://johnmacfarlane.net/pandoc";
     description = "Types for representing a structured document";
diff --git a/pkgs/development/libraries/haskell/pandoc/default.nix b/pkgs/development/libraries/haskell/pandoc/default.nix
index f81fb4e56d9..b5ccc95bd3f 100644
--- a/pkgs/development/libraries/haskell/pandoc/default.nix
+++ b/pkgs/development/libraries/haskell/pandoc/default.nix
@@ -1,29 +1,31 @@
-{ cabal, ansiTerminal, base64Bytestring, blazeHtml, blazeMarkup
-, citeprocHs, dataDefault, Diff, extensibleExceptions, filepath
-, highlightingKate, HTTP, HUnit, json, mtl, network, pandocTypes
-, parsec, QuickCheck, random, syb, tagsoup, temporary
-, testFramework, testFrameworkHunit, testFrameworkQuickcheck2
-, texmath, text, time, xml, zipArchive, zlib
+{ cabal, aeson, alex, ansiTerminal, attoparsec, base64Bytestring
+, blazeHtml, blazeMarkup, dataDefault, Diff, extensibleExceptions
+, filepath, happy, highlightingKate, hslua, HTTP, httpConduit
+, httpTypes, HUnit, mtl, network, pandocTypes, parsec, QuickCheck
+, random, syb, tagsoup, temporary, testFramework
+, testFrameworkHunit, testFrameworkQuickcheck2, texmath, text, time
+, unorderedContainers, vector, xml, yaml, zipArchive, zlib
 }:
 
 cabal.mkDerivation (self: {
   pname = "pandoc";
-  version = "1.11.1";
-  sha256 = "0b23vrgkm1csykx1zrldkg5ka816j6m7a5fhs4cxffalifq91c7b";
+  version = "1.12.1";
+  sha256 = "0csyrcfdqv2mc7ngn63lan3c1dd6zy0pb24k0z1lsraqlmmw76nf";
   isLibrary = true;
   isExecutable = true;
   buildDepends = [
-    base64Bytestring blazeHtml blazeMarkup citeprocHs dataDefault
-    extensibleExceptions filepath highlightingKate HTTP json mtl
-    network pandocTypes parsec random syb tagsoup temporary texmath
-    text time xml zipArchive zlib
+    aeson alex attoparsec base64Bytestring blazeHtml blazeMarkup
+    dataDefault extensibleExceptions filepath happy highlightingKate
+    hslua HTTP httpConduit httpTypes mtl network pandocTypes parsec
+    random syb tagsoup temporary texmath text time unorderedContainers
+    vector xml yaml zipArchive zlib
   ];
   testDepends = [
     ansiTerminal Diff filepath highlightingKate HUnit pandocTypes
     QuickCheck syb testFramework testFrameworkHunit
     testFrameworkQuickcheck2 text
   ];
-  configureFlags = "-fblaze_html_0_5";
+  buildTools = [ alex happy ];
   doCheck = false;
   meta = {
     homepage = "http://johnmacfarlane.net/pandoc";
diff --git a/pkgs/development/libraries/haskell/parsers/0.10.nix b/pkgs/development/libraries/haskell/parsers/0.10.nix
new file mode 100644
index 00000000000..529fdf47124
--- /dev/null
+++ b/pkgs/development/libraries/haskell/parsers/0.10.nix
@@ -0,0 +1,19 @@
+{ cabal, charset, doctest, filepath, parsec, text, transformers
+, unorderedContainers
+}:
+
+cabal.mkDerivation (self: {
+  pname = "parsers";
+  version = "0.10";
+  sha256 = "090dvmdb1kmnc3k2x170y9fdifxi16hzkij1gzc51flx3bpx40i1";
+  buildDepends = [
+    charset parsec text transformers unorderedContainers
+  ];
+  testDepends = [ doctest filepath ];
+  meta = {
+    homepage = "http://github.com/ekmett/parsers/";
+    description = "Parsing combinators";
+    license = self.stdenv.lib.licenses.bsd3;
+    platforms = self.ghc.meta.platforms;
+  };
+})
diff --git a/pkgs/development/libraries/haskell/parsers/0.9.nix b/pkgs/development/libraries/haskell/parsers/0.9.nix
new file mode 100644
index 00000000000..dc42228df66
--- /dev/null
+++ b/pkgs/development/libraries/haskell/parsers/0.9.nix
@@ -0,0 +1,17 @@
+{ cabal, charset, doctest, filepath, text, transformers
+, unorderedContainers
+}:
+
+cabal.mkDerivation (self: {
+  pname = "parsers";
+  version = "0.9";
+  sha256 = "04lbayvdv2hax4s9sqlnia7jpzv1sgls41ylql0xbi2zhz5rvyyi";
+  buildDepends = [ charset text transformers unorderedContainers ];
+  testDepends = [ doctest filepath ];
+  meta = {
+    homepage = "http://github.com/ekmett/parsers/";
+    description = "Parsing combinators";
+    license = self.stdenv.lib.licenses.bsd3;
+    platforms = self.ghc.meta.platforms;
+  };
+})
diff --git a/pkgs/development/libraries/haskell/path-pieces/default.nix b/pkgs/development/libraries/haskell/path-pieces/default.nix
index 14b9f8d7081..cdfe320a060 100644
--- a/pkgs/development/libraries/haskell/path-pieces/default.nix
+++ b/pkgs/development/libraries/haskell/path-pieces/default.nix
@@ -1,11 +1,11 @@
-{ cabal, fileLocation, hspec, HUnit, QuickCheck, text, time }:
+{ cabal, hspec, HUnit, QuickCheck, text, time }:
 
 cabal.mkDerivation (self: {
   pname = "path-pieces";
-  version = "0.1.2";
-  sha256 = "1cxsa8lq1f2jf86iv6f17nraiav8k2vzjxln1y7z45qhcp1sbbaa";
+  version = "0.1.3";
+  sha256 = "03x9kfcaz1zsdpdzs05pcl0hv4hffgsl2js8xiy5slba6n841v4l";
   buildDepends = [ text time ];
-  testDepends = [ fileLocation hspec HUnit QuickCheck text ];
+  testDepends = [ hspec HUnit QuickCheck text ];
   meta = {
     description = "Components of paths";
     license = self.stdenv.lib.licenses.bsd3;
diff --git a/pkgs/development/libraries/haskell/pem/default.nix b/pkgs/development/libraries/haskell/pem/default.nix
index 16b47a9c8ae..473f15c4d1f 100644
--- a/pkgs/development/libraries/haskell/pem/default.nix
+++ b/pkgs/development/libraries/haskell/pem/default.nix
@@ -1,14 +1,15 @@
-{ cabal, attoparsec, base64Bytestring, cereal, mtl, QuickCheck
-, testFramework, testFrameworkQuickcheck2
+{ cabal, base64Bytestring, HUnit, mtl, QuickCheck, testFramework
+, testFrameworkHunit, testFrameworkQuickcheck2
 }:
 
 cabal.mkDerivation (self: {
   pname = "pem";
-  version = "0.1.2";
-  sha256 = "1p2sw36b9w6lf53jzj86ibyy9a48fjd786mx3x8mvc5lczx8v78m";
-  buildDepends = [ attoparsec base64Bytestring cereal mtl ];
+  version = "0.2.0";
+  sha256 = "1hmsyavqzjx1chbn4a8vf0r2wz2fg0xl9cxgja4ap04si3qr458v";
+  buildDepends = [ base64Bytestring mtl ];
   testDepends = [
-    QuickCheck testFramework testFrameworkQuickcheck2
+    HUnit QuickCheck testFramework testFrameworkHunit
+    testFrameworkQuickcheck2
   ];
   meta = {
     homepage = "http://github.com/vincenthz/hs-pem";
diff --git a/pkgs/development/libraries/haskell/persistent-template/default.nix b/pkgs/development/libraries/haskell/persistent-template/default.nix
index 2afc416cb52..c3bb228933d 100644
--- a/pkgs/development/libraries/haskell/persistent-template/default.nix
+++ b/pkgs/development/libraries/haskell/persistent-template/default.nix
@@ -4,8 +4,8 @@
 
 cabal.mkDerivation (self: {
   pname = "persistent-template";
-  version = "1.2.0.2";
-  sha256 = "0zj35mg7fzyk4b98s3s8m5i064s0wznz9aixgxa4kzm4xps7hj4z";
+  version = "1.2.0.4";
+  sha256 = "0lhqv4mcai9r5mzj5h6fsd1hd8mv1458id0rb6q157192gywxhzf";
   buildDepends = [
     aeson monadControl monadLogger persistent text transformers
   ];
diff --git a/pkgs/development/libraries/haskell/pipes-bytestring/default.nix b/pkgs/development/libraries/haskell/pipes-bytestring/default.nix
new file mode 100644
index 00000000000..715fcaa9338
--- /dev/null
+++ b/pkgs/development/libraries/haskell/pipes-bytestring/default.nix
@@ -0,0 +1,14 @@
+{ cabal, pipes, pipesParse, transformers }:
+
+cabal.mkDerivation (self: {
+  pname = "pipes-bytestring";
+  version = "1.0.1";
+  sha256 = "0zk2n9mly1mjh1zb3z33gab362abgh8c0mw88mmwnlfszq97hcz7";
+  buildDepends = [ pipes pipesParse transformers ];
+  meta = {
+    description = "ByteString support for pipes";
+    license = self.stdenv.lib.licenses.bsd3;
+    platforms = self.ghc.meta.platforms;
+    maintainers = [ self.stdenv.lib.maintainers.ocharles ];
+  };
+})
diff --git a/pkgs/development/libraries/haskell/pipes-concurrency/default.nix b/pkgs/development/libraries/haskell/pipes-concurrency/default.nix
index 3a14619d266..7136a281f89 100644
--- a/pkgs/development/libraries/haskell/pipes-concurrency/default.nix
+++ b/pkgs/development/libraries/haskell/pipes-concurrency/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "pipes-concurrency";
-  version = "2.0.0";
-  sha256 = "1f9l6qlaf8dyldzwaavj3k5akm74ycga5j173ypdna3pv0jbzfrk";
+  version = "2.0.1";
+  sha256 = "0grfwmmwzxrska2218php22f898nn3x92bz1lmhpw2qi8mywvkzh";
   buildDepends = [ pipes stm ];
   testDepends = [ async pipes stm ];
   meta = {
diff --git a/pkgs/development/libraries/haskell/pipes-parse/default.nix b/pkgs/development/libraries/haskell/pipes-parse/default.nix
index 2584e001c4f..33892ef8fc6 100644
--- a/pkgs/development/libraries/haskell/pipes-parse/default.nix
+++ b/pkgs/development/libraries/haskell/pipes-parse/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "pipes-parse";
-  version = "2.0.0";
-  sha256 = "092y0a4lvll451gnbz6ddrqgh22bd69wi00c0zd8s0hmf2f53y0s";
+  version = "2.0.1";
+  sha256 = "04sqjdmgkgk5qva0gyrblhdvmljgmci2yzzw7y17pmnwxwdja4f0";
   buildDepends = [ free pipes transformers ];
   meta = {
     description = "Parsing infrastructure for the pipes ecosystem";
diff --git a/pkgs/development/libraries/haskell/pointed/default.nix b/pkgs/development/libraries/haskell/pointed/default.nix
new file mode 100644
index 00000000000..15f4ba59aaa
--- /dev/null
+++ b/pkgs/development/libraries/haskell/pointed/default.nix
@@ -0,0 +1,19 @@
+{ cabal, comonad, dataDefaultClass, semigroupoids, semigroups, stm
+, tagged, transformers
+}:
+
+cabal.mkDerivation (self: {
+  pname = "pointed";
+  version = "4.0";
+  sha256 = "02y7ba1pcpmwcp762516p4x75y3ma2kml9mbiv1y8gcnn4ylvir4";
+  buildDepends = [
+    comonad dataDefaultClass semigroupoids semigroups stm tagged
+    transformers
+  ];
+  meta = {
+    homepage = "http://github.com/ekmett/pointed/";
+    description = "Pointed and copointed data";
+    license = self.stdenv.lib.licenses.bsd3;
+    platforms = self.ghc.meta.platforms;
+  };
+})
diff --git a/pkgs/development/libraries/haskell/postgresql-simple/default.nix b/pkgs/development/libraries/haskell/postgresql-simple/default.nix
index f9fa750b4b3..4203c0cd84c 100644
--- a/pkgs/development/libraries/haskell/postgresql-simple/default.nix
+++ b/pkgs/development/libraries/haskell/postgresql-simple/default.nix
@@ -1,15 +1,15 @@
-{ cabal, attoparsec, base16Bytestring, blazeBuilder, blazeTextual
-, cryptohash, HUnit, postgresqlLibpq, text, time, transformers
-, vector
+{ cabal, aeson, attoparsec, base16Bytestring, blazeBuilder
+, blazeTextual, cryptohash, HUnit, postgresqlLibpq, text, time
+, transformers, uuid, vector
 }:
 
 cabal.mkDerivation (self: {
   pname = "postgresql-simple";
-  version = "0.3.6.0";
-  sha256 = "1qszr3k7cihizbaq3naj134gavkpamk8q3g02rsilzvn0ivq8wb8";
+  version = "0.3.9.1";
+  sha256 = "0byzlmcbwlycvlk35w0gdp5x7860jcc589ypbdx0vm08aq5vz87v";
   buildDepends = [
-    attoparsec blazeBuilder blazeTextual postgresqlLibpq text time
-    transformers vector
+    aeson attoparsec blazeBuilder blazeTextual postgresqlLibpq text
+    time transformers uuid vector
   ];
   testDepends = [
     base16Bytestring cryptohash HUnit text time vector
diff --git a/pkgs/development/libraries/haskell/primitive/0.5.1.0.nix b/pkgs/development/libraries/haskell/primitive/0.5.1.0.nix
new file mode 100644
index 00000000000..ff62216b3f4
--- /dev/null
+++ b/pkgs/development/libraries/haskell/primitive/0.5.1.0.nix
@@ -0,0 +1,14 @@
+{ cabal }:
+
+cabal.mkDerivation (self: {
+  pname = "primitive";
+  version = "0.5.1.0";
+  sha256 = "0a8mf8k62xga5r5dd0fna1swqbx2r94c0mvqnc4mfq640zrsa5w8";
+  meta = {
+    homepage = "https://github.com/haskell/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/profunctor-extras/default.nix b/pkgs/development/libraries/haskell/profunctor-extras/default.nix
index 6844bcc369a..bf7e6ab7121 100644
--- a/pkgs/development/libraries/haskell/profunctor-extras/default.nix
+++ b/pkgs/development/libraries/haskell/profunctor-extras/default.nix
@@ -1,18 +1,13 @@
-{ cabal, comonad, profunctors, semigroupoidExtras, semigroupoids
-, tagged, transformers
-}:
+{ cabal, profunctors }:
 
 cabal.mkDerivation (self: {
   pname = "profunctor-extras";
-  version = "3.3.3.1";
-  sha256 = "16naa6ksgwy6fh8vwflcc9s0rpamn886as8qhjqrkpjlc8s83h7g";
-  buildDepends = [
-    comonad profunctors semigroupoidExtras semigroupoids tagged
-    transformers
-  ];
+  version = "4.0";
+  sha256 = "10j458liqlyz5s9gkg95c6aq7ap5fa7d8pc7hygy71nn87pm2g4a";
+  buildDepends = [ profunctors ];
   meta = {
     homepage = "http://github.com/ekmett/profunctor-extras/";
-    description = "Profunctor extras";
+    description = "This package has been absorbed into profunctors 4.0";
     license = self.stdenv.lib.licenses.bsd3;
     platforms = self.ghc.meta.platforms;
   };
diff --git a/pkgs/development/libraries/haskell/profunctors/default.nix b/pkgs/development/libraries/haskell/profunctors/default.nix
index 83398295108..83d06b10ca6 100644
--- a/pkgs/development/libraries/haskell/profunctors/default.nix
+++ b/pkgs/development/libraries/haskell/profunctors/default.nix
@@ -1,13 +1,13 @@
-{ cabal, comonad, tagged }:
+{ cabal, comonad, semigroupoids, tagged, transformers }:
 
 cabal.mkDerivation (self: {
   pname = "profunctors";
-  version = "3.3.0.1";
-  sha256 = "16d7xg929r4smmmcgi54bz7rsjxs6psksrdvzl4336sjpp3dw5h2";
-  buildDepends = [ comonad tagged ];
+  version = "4.0.1";
+  sha256 = "13yr3n7jkhxbk4gk6nd1j8p1a7g5ir8g9xprcy3s1x39cqf4m986";
+  buildDepends = [ comonad semigroupoids tagged transformers ];
   meta = {
     homepage = "http://github.com/ekmett/profunctors/";
-    description = "Haskell 98 Profunctors";
+    description = "Profunctors";
     license = self.stdenv.lib.licenses.bsd3;
     platforms = self.ghc.meta.platforms;
   };
diff --git a/pkgs/development/libraries/haskell/pwstore-fast/default.nix b/pkgs/development/libraries/haskell/pwstore-fast/default.nix
index d75823d6025..42aaeba82a8 100644
--- a/pkgs/development/libraries/haskell/pwstore-fast/default.nix
+++ b/pkgs/development/libraries/haskell/pwstore-fast/default.nix
@@ -1,10 +1,10 @@
-{ cabal, base64Bytestring, cryptohash, random }:
+{ cabal, base64Bytestring, binary, cryptohash, random, SHA }:
 
 cabal.mkDerivation (self: {
   pname = "pwstore-fast";
-  version = "2.3";
-  sha256 = "014l4n00lpg5037fkdwnxnv7xjfc3vlz1dphr7hfbqnjwf1z9ibw";
-  buildDepends = [ base64Bytestring cryptohash random ];
+  version = "2.4.1";
+  sha256 = "1k98b1s2ld0jx8fy53k8d8pscp6n0plh51b2lj6ai6w8xj4vknw4";
+  buildDepends = [ base64Bytestring binary cryptohash random SHA ];
   meta = {
     homepage = "https://github.com/PeterScott/pwstore";
     description = "Secure password storage";
diff --git a/pkgs/development/libraries/haskell/reducers/default.nix b/pkgs/development/libraries/haskell/reducers/default.nix
new file mode 100644
index 00000000000..ea1049d2b40
--- /dev/null
+++ b/pkgs/development/libraries/haskell/reducers/default.nix
@@ -0,0 +1,20 @@
+{ cabal, comonad, fingertree, hashable, keys, pointed
+, semigroupoids, semigroups, text, transformers
+, unorderedContainers
+}:
+
+cabal.mkDerivation (self: {
+  pname = "reducers";
+  version = "3.10.1";
+  sha256 = "0pgywdgq0rqir95n4z3nzmyx5n54a1df9abyanz4qfv0g080fjkz";
+  buildDepends = [
+    comonad fingertree hashable keys pointed semigroupoids semigroups
+    text transformers unorderedContainers
+  ];
+  meta = {
+    homepage = "http://github.com/ekmett/reducers/";
+    description = "Semigroups, specialized containers and a general map/reduce framework";
+    license = self.stdenv.lib.licenses.bsd3;
+    platforms = self.ghc.meta.platforms;
+  };
+})
diff --git a/pkgs/development/libraries/haskell/regex-compat-tdfa/default.nix b/pkgs/development/libraries/haskell/regex-compat-tdfa/default.nix
index 08c2f6556e2..6a45c87d9a6 100644
--- a/pkgs/development/libraries/haskell/regex-compat-tdfa/default.nix
+++ b/pkgs/development/libraries/haskell/regex-compat-tdfa/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "regex-compat-tdfa";
-  version = "0.95.1.2";
-  sha256 = "0b7pp5xq4ybgji5shz5v1a91y6wwzila3vjiyq4nma0xj3njy802";
+  version = "0.95.1.4";
+  sha256 = "1p90fn90yhp7fvljjdqjp41cszidcfz4pw7fwvzyx4739b98x8sg";
   buildDepends = [ regexBase regexTdfa ];
   meta = {
     homepage = "http://hub.darcs.net/shelarcy/regex-compat-tdfa";
diff --git a/pkgs/development/libraries/haskell/resourcet/default.nix b/pkgs/development/libraries/haskell/resourcet/default.nix
index b0953cf9f7c..b4d0fccd8a0 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.8";
-  sha256 = "10pp4hm5c2k2fqzqpagy03gmr526ac2ji8h7k0mcypf4v0ga620m";
+  version = "0.4.9";
+  sha256 = "1jpaphmwvykjshjqwmmyfx64w1j99f6dphy9ygrzc32fjffk5laz";
   buildDepends = [
     liftedBase mmorph monadControl mtl transformers transformersBase
   ];
diff --git a/pkgs/development/libraries/haskell/rfc5051/default.nix b/pkgs/development/libraries/haskell/rfc5051/default.nix
new file mode 100644
index 00000000000..09b5d3e229e
--- /dev/null
+++ b/pkgs/development/libraries/haskell/rfc5051/default.nix
@@ -0,0 +1,14 @@
+{ cabal }:
+
+cabal.mkDerivation (self: {
+  pname = "rfc5051";
+  version = "0.1.0.3";
+  sha256 = "0av4c3qvwbkbzrjrrg601ay9pds7wscqqp2lc2z78mv2lllap3g3";
+  isLibrary = true;
+  isExecutable = true;
+  meta = {
+    description = "Simple unicode collation as per RFC5051";
+    license = self.stdenv.lib.licenses.bsd3;
+    platforms = self.ghc.meta.platforms;
+  };
+})
diff --git a/pkgs/development/libraries/haskell/scotty/default.nix b/pkgs/development/libraries/haskell/scotty/default.nix
index 9baaa89d2d4..ad932df1ac7 100644
--- a/pkgs/development/libraries/haskell/scotty/default.nix
+++ b/pkgs/development/libraries/haskell/scotty/default.nix
@@ -1,14 +1,15 @@
 { cabal, aeson, blazeBuilder, caseInsensitive, conduit, dataDefault
-, httpTypes, mtl, regexCompat, resourcet, text, wai, waiExtra, warp
+, httpTypes, mtl, regexCompat, resourcet, text, transformers, wai
+, waiExtra, warp
 }:
 
 cabal.mkDerivation (self: {
   pname = "scotty";
-  version = "0.4.6";
-  sha256 = "0g83kgqr1p03z7dks6x00id2gz95kkw00wmwp5vyz4zvx1mmmvk8";
+  version = "0.5.0";
+  sha256 = "177c7nyjwksm2y98j2swgzfn1rmr2h0v4fk6s525kx803iibvfhc";
   buildDepends = [
     aeson blazeBuilder caseInsensitive conduit dataDefault httpTypes
-    mtl regexCompat resourcet text wai waiExtra warp
+    mtl regexCompat resourcet text transformers wai waiExtra warp
   ];
   meta = {
     homepage = "https://github.com/ku-fpg/scotty";
diff --git a/pkgs/development/libraries/haskell/semigroupoid-extras/default.nix b/pkgs/development/libraries/haskell/semigroupoid-extras/default.nix
index 263adb42f25..cb8ed865da3 100644
--- a/pkgs/development/libraries/haskell/semigroupoid-extras/default.nix
+++ b/pkgs/development/libraries/haskell/semigroupoid-extras/default.nix
@@ -1,13 +1,13 @@
-{ cabal, comonad, distributive, groupoids, semigroupoids }:
+{ cabal, semigroupoids }:
 
 cabal.mkDerivation (self: {
   pname = "semigroupoid-extras";
-  version = "3.0.1";
-  sha256 = "1b6ix9myjav1h4bbq3jxlan8sn2pjw8x0zhazv3anxfab5n2sxpd";
-  buildDepends = [ comonad distributive groupoids semigroupoids ];
+  version = "4.0";
+  sha256 = "07aa7z4nywcrp9msq83b1pcmryl25yxha89sn5vwlgq40cibcm3g";
+  buildDepends = [ semigroupoids ];
   meta = {
     homepage = "http://github.com/ekmett/semigroupoid-extras";
-    description = "Semigroupoids requiring Haskell extensions";
+    description = "This package has been absorbed into semigroupoids 4.0";
     license = self.stdenv.lib.licenses.bsd3;
     platforms = self.ghc.meta.platforms;
   };
diff --git a/pkgs/development/libraries/haskell/semigroupoids/default.nix b/pkgs/development/libraries/haskell/semigroupoids/default.nix
index aa7176f7e16..e0dbf456804 100644
--- a/pkgs/development/libraries/haskell/semigroupoids/default.nix
+++ b/pkgs/development/libraries/haskell/semigroupoids/default.nix
@@ -1,13 +1,17 @@
-{ cabal, comonad, contravariant, semigroups, transformers }:
+{ cabal, comonad, contravariant, distributive, semigroups
+, transformers
+}:
 
 cabal.mkDerivation (self: {
   pname = "semigroupoids";
-  version = "3.1";
-  sha256 = "02147y0nnvyc9ykvjbbxa9gzmkk9kgpsmx40ahwnjk9igjkbyp9g";
-  buildDepends = [ comonad contravariant semigroups transformers ];
+  version = "4.0";
+  sha256 = "12h2b9pisy21xca3x9ilj0aix9clni0za35d2dmv55gb8y8df54l";
+  buildDepends = [
+    comonad contravariant distributive semigroups transformers
+  ];
   meta = {
     homepage = "http://github.com/ekmett/semigroupoids";
-    description = "Haskell 98 semigroupoids: Category sans id";
+    description = "Semigroupoids: Category sans id";
     license = self.stdenv.lib.licenses.bsd3;
     platforms = self.ghc.meta.platforms;
   };
diff --git a/pkgs/development/libraries/haskell/semigroups/default.nix b/pkgs/development/libraries/haskell/semigroups/default.nix
index ded335ca524..16e6eb60fcf 100644
--- a/pkgs/development/libraries/haskell/semigroups/default.nix
+++ b/pkgs/development/libraries/haskell/semigroups/default.nix
@@ -1,13 +1,13 @@
-{ cabal, nats }:
+{ cabal, hashable, nats, text, unorderedContainers }:
 
 cabal.mkDerivation (self: {
   pname = "semigroups";
-  version = "0.9.2";
-  sha256 = "06r6zdfbks48yb7ib0bc168xxk4qciv4dbazq76dpmnlhwxcf1li";
-  buildDepends = [ nats ];
+  version = "0.11";
+  sha256 = "0w81ap41j28pbppqs33hz7b9n5ghyj2hnny0kgxgcg8iv2qg9czy";
+  buildDepends = [ hashable nats text unorderedContainers ];
   meta = {
     homepage = "http://github.com/ekmett/semigroups/";
-    description = "Haskell 98 semigroups";
+    description = "Anything that associates";
     license = self.stdenv.lib.licenses.bsd3;
     platforms = self.ghc.meta.platforms;
     maintainers = [ self.stdenv.lib.maintainers.andres ];
diff --git a/pkgs/development/libraries/haskell/setenv/default.nix b/pkgs/development/libraries/haskell/setenv/default.nix
index b19728820aa..b00480279e1 100644
--- a/pkgs/development/libraries/haskell/setenv/default.nix
+++ b/pkgs/development/libraries/haskell/setenv/default.nix
@@ -1,10 +1,9 @@
-{ cabal, hspec, QuickCheck }:
+{ cabal }:
 
 cabal.mkDerivation (self: {
   pname = "setenv";
-  version = "0.1.0";
-  sha256 = "04w42bpfbrs5crjp19zzi9dg61xpz4wvmjs2vc7q7qxblyhdfdsy";
-  testDepends = [ hspec QuickCheck ];
+  version = "0.1.1";
+  sha256 = "1j0fj8nrx9z90kghasxjx5jycz9y9xdi7mrxmgnsc14csa65rhb8";
   doCheck = false;
   meta = {
     description = "A cross-platform library for setting environment variables";
diff --git a/pkgs/development/libraries/haskell/shake/default.nix b/pkgs/development/libraries/haskell/shake/default.nix
index 26171a56fdc..ef7a6d69905 100644
--- a/pkgs/development/libraries/haskell/shake/default.nix
+++ b/pkgs/development/libraries/haskell/shake/default.nix
@@ -1,17 +1,22 @@
 { cabal, binary, deepseq, filepath, hashable, random, time
-, transformers, unorderedContainers
+, transformers, unorderedContainers, utf8String
 }:
 
 cabal.mkDerivation (self: {
   pname = "shake";
-  version = "0.10.6";
-  sha256 = "0d2wrgraifcj0rv9jmvc5a0gl0j1jjkc4r0nmaypnv6929kl26q8";
+  version = "0.10.8";
+  sha256 = "15r392b18nis9p0ys95kbj79hki19wid2gyrpy0z9zm2l5d1m3ya";
   isLibrary = true;
   isExecutable = true;
   buildDepends = [
     binary deepseq filepath hashable random time transformers
-    unorderedContainers
+    unorderedContainers utf8String
   ];
+  testDepends = [
+    binary deepseq filepath hashable random time transformers
+    unorderedContainers utf8String
+  ];
+  doCheck = false;
   meta = {
     homepage = "http://community.haskell.org/~ndm/shake/";
     description = "Build system library, like Make, but more accurate dependencies";
diff --git a/pkgs/development/libraries/haskell/shakespeare-css/default.nix b/pkgs/development/libraries/haskell/shakespeare-css/default.nix
index f24d60612d6..03b6b057cd1 100644
--- a/pkgs/development/libraries/haskell/shakespeare-css/default.nix
+++ b/pkgs/development/libraries/haskell/shakespeare-css/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "shakespeare-css";
-  version = "1.0.6.3";
-  sha256 = "1zwvrdb8kgknp2ri3ws6m0jg41d8kdprvjdimwxh98san7vmk744";
+  version = "1.0.6.4";
+  sha256 = "12f2b69grxpwk56b2d7idlg8axqfgzn0rn3m56r1hcpvkjbynlc4";
   buildDepends = [ parsec shakespeare text transformers ];
   testDepends = [ hspec HUnit shakespeare text ];
   meta = {
diff --git a/pkgs/development/libraries/haskell/shakespeare-js/default.nix b/pkgs/development/libraries/haskell/shakespeare-js/default.nix
index 6aa34026ce8..ed743d87832 100644
--- a/pkgs/development/libraries/haskell/shakespeare-js/default.nix
+++ b/pkgs/development/libraries/haskell/shakespeare-js/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "shakespeare-js";
-  version = "1.2.0";
-  sha256 = "1g37m7shqxfv7i2dk5qhvxldfzh1xipd91vcyqhks1jwa5byarzj";
+  version = "1.2.0.2";
+  sha256 = "1d7fmw2295ycjipaj9fjgw02y1088h2gxxk1d6sy4c165x95r6vx";
   buildDepends = [ aeson shakespeare text ];
   testDepends = [ aeson hspec HUnit shakespeare text ];
   meta = {
diff --git a/pkgs/development/libraries/haskell/shakespeare-text/default.nix b/pkgs/development/libraries/haskell/shakespeare-text/default.nix
index d05e2247710..d5e91da61b1 100644
--- a/pkgs/development/libraries/haskell/shakespeare-text/default.nix
+++ b/pkgs/development/libraries/haskell/shakespeare-text/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "shakespeare-text";
-  version = "1.0.0.7";
-  sha256 = "0vl8884a0x927svvkza5xzjn4g1rip8dak1zh9wkm4d0q7lhv2px";
+  version = "1.0.0.8";
+  sha256 = "0gf4gsdfjz9c15wvxz886gjzzifgzanfhblgab15inl2rblirv7l";
   buildDepends = [ shakespeare text ];
   testDepends = [ hspec HUnit text ];
   meta = {
diff --git a/pkgs/development/libraries/haskell/shakespeare/default.nix b/pkgs/development/libraries/haskell/shakespeare/default.nix
index 231470dca5a..a5428b0ee3c 100644
--- a/pkgs/development/libraries/haskell/shakespeare/default.nix
+++ b/pkgs/development/libraries/haskell/shakespeare/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "shakespeare";
-  version = "1.2.0";
-  sha256 = "0lzzdkry3sm5i5hhdygsikpnaps66k1sfdxi2mp0ly5aqi1n1blz";
+  version = "1.2.0.1";
+  sha256 = "07qfbqvq8fqbf7y43h0qq2gk9brpf4g0k7gghrjzyjrd57v5zygp";
   buildDepends = [ parsec systemFileio systemFilepath text time ];
   testDepends = [
     hspec parsec systemFileio systemFilepath text time
diff --git a/pkgs/development/libraries/haskell/shelly/default.nix b/pkgs/development/libraries/haskell/shelly/default.nix
index dc9367b4463..4272afd61a2 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 = "1.3.0.7";
-  sha256 = "08ydsvgc8n0bvk5vcz3a3rpdbnranlbv8y84imkkh7i0p3nqyg2m";
+  version = "1.3.1";
+  sha256 = "1psgb1jqw6hqbrp7f217ayabchsn9q4fn2z77lc52r4mlvys13mh";
   buildDepends = [
     mtl systemFileio systemFilepath text time unixCompat
   ];
diff --git a/pkgs/development/libraries/haskell/simple-sendfile/default.nix b/pkgs/development/libraries/haskell/simple-sendfile/default.nix
index b8c527daf1a..806feee295f 100644
--- a/pkgs/development/libraries/haskell/simple-sendfile/default.nix
+++ b/pkgs/development/libraries/haskell/simple-sendfile/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "simple-sendfile";
-  version = "0.2.12";
-  sha256 = "019n82700fbhsqxgn1cwfqii27r436gljis7yl02zjnzy7xlvrha";
+  version = "0.2.13";
+  sha256 = "03cgbzfhkih1ln1xb78r1hfh6zzjjj6763n9nzr9cj6bxs0fiqd3";
   buildDepends = [ network ];
   testDepends = [ conduit hspec HUnit network networkConduit ];
   doCheck = false;
diff --git a/pkgs/development/libraries/haskell/skein/default.nix b/pkgs/development/libraries/haskell/skein/default.nix
index 6b8fc7eda28..7acc60e3601 100644
--- a/pkgs/development/libraries/haskell/skein/default.nix
+++ b/pkgs/development/libraries/haskell/skein/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "skein";
-  version = "1.0.6";
-  sha256 = "0jdh618k66bhiwrxb9i2yckxz0w3cpc7q15ilz49lqjjpl86bndk";
+  version = "1.0.8";
+  sha256 = "0qga3r73zzbj4kkwl8c3p7d1myjyv6dv6g0dwc77fqnmikzcnils";
   buildDepends = [ cereal cryptoApi tagged ];
   testDepends = [ cereal cryptoApi filepath hspec tagged ];
   jailbreak = true;
diff --git a/pkgs/development/libraries/haskell/snap/snap.nix b/pkgs/development/libraries/haskell/snap/snap.nix
index b93adda166c..8df65404962 100644
--- a/pkgs/development/libraries/haskell/snap/snap.nix
+++ b/pkgs/development/libraries/haskell/snap/snap.nix
@@ -8,8 +8,8 @@
 
 cabal.mkDerivation (self: {
   pname = "snap";
-  version = "0.13.0";
-  sha256 = "03m6fi8dbc69i6mafyq2xxdmqp1zm0akfilahvjd7cknf4qhdyq7";
+  version = "0.13.0.4";
+  sha256 = "1cbc42x7p87fmazm0dqc519rdaiiiwmkri8y1n4hgvr70kfi6569";
   isLibrary = true;
   isExecutable = true;
   buildDepends = [
diff --git a/pkgs/development/libraries/haskell/snaplet-acid-state/default.nix b/pkgs/development/libraries/haskell/snaplet-acid-state/default.nix
new file mode 100644
index 00000000000..838f45eccaa
--- /dev/null
+++ b/pkgs/development/libraries/haskell/snaplet-acid-state/default.nix
@@ -0,0 +1,15 @@
+{ cabal, acidState, snap, text }:
+
+cabal.mkDerivation (self: {
+  pname = "snaplet-acid-state";
+  version = "0.2.5";
+  sha256 = "0qx6as1m0fwb5fkhvl0k71kx65njwq0dk183xi4gmdzhf83hkjbs";
+  buildDepends = [ acidState snap text ];
+  meta = {
+    homepage = "https://github.com/mightybyte/snaplet-acid-state";
+    description = "acid-state snaplet for Snap Framework";
+    license = self.stdenv.lib.licenses.bsd3;
+    platforms = self.ghc.meta.platforms;
+    maintainers = [ self.stdenv.lib.maintainers.ocharles ];
+  };
+})
diff --git a/pkgs/development/libraries/haskell/socks/default.nix b/pkgs/development/libraries/haskell/socks/default.nix
index 27dd54b2959..1953e3436ee 100644
--- a/pkgs/development/libraries/haskell/socks/default.nix
+++ b/pkgs/development/libraries/haskell/socks/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "socks";
-  version = "0.5.1";
-  sha256 = "08zwbkglkahjadqn2m7l0k5yp4lcd9h6kgb8k8mjlwxayx82a0ay";
+  version = "0.5.4";
+  sha256 = "1nmldlwxqasmg359i2aa3a903gi3lmnlspvf12xk49jrg3mf3dg9";
   buildDepends = [ cereal network ];
   meta = {
     homepage = "http://github.com/vincenthz/hs-socks";
diff --git a/pkgs/development/libraries/haskell/statistics/default.nix b/pkgs/development/libraries/haskell/statistics/default.nix
index 54876a879fc..5db264d3c7b 100644
--- a/pkgs/development/libraries/haskell/statistics/default.nix
+++ b/pkgs/development/libraries/haskell/statistics/default.nix
@@ -6,8 +6,8 @@
 
 cabal.mkDerivation (self: {
   pname = "statistics";
-  version = "0.10.4.1";
-  sha256 = "0kd3zn8ckz3h9dnighmfviacw5cy6czsj90ryn8c0h6yb2s3gqi1";
+  version = "0.10.5.0";
+  sha256 = "0yn0bqvh922zi0cg2nyb9vn5jk9k4j4vz96fl0h3ayxhfds08m6v";
   buildDepends = [
     binary deepseq erf mathFunctions monadPar mwcRandom primitive
     vector vectorAlgorithms vectorBinaryInstances
diff --git a/pkgs/development/libraries/haskell/stringable/default.nix b/pkgs/development/libraries/haskell/stringable/default.nix
new file mode 100644
index 00000000000..663b198b2ee
--- /dev/null
+++ b/pkgs/development/libraries/haskell/stringable/default.nix
@@ -0,0 +1,13 @@
+{ cabal, systemFilepath, text }:
+
+cabal.mkDerivation (self: {
+  pname = "stringable";
+  version = "0.1.2";
+  sha256 = "17lhry3x90s88lplbv2kvzyak8wrc9r80czng5s3dirmyp9rn5gs";
+  buildDepends = [ systemFilepath text ];
+  meta = {
+    description = "A Stringable type class, in the spirit of Foldable and Traversable";
+    license = self.stdenv.lib.licenses.mit;
+    platforms = self.ghc.meta.platforms;
+  };
+})
diff --git a/pkgs/development/libraries/haskell/symbol/default.nix b/pkgs/development/libraries/haskell/symbol/default.nix
index e92c2ec03ad..7b1c2d3821c 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.4";
-  sha256 = "00318syprv1ixfbr4v7xq86z10f0psxk0b8kaxvawvacm8hp61bn";
+  version = "0.2.0";
+  sha256 = "13vr6j3wkxbdbd27xklnidfkpkjwl0kldf69z470bm5indvaaxfd";
   buildDepends = [ deepseq syb ];
   jailbreak = true;
   meta = {
diff --git a/pkgs/development/libraries/haskell/system-filepath/default.nix b/pkgs/development/libraries/haskell/system-filepath/default.nix
index 851b28baafe..84ca453c6c1 100644
--- a/pkgs/development/libraries/haskell/system-filepath/default.nix
+++ b/pkgs/development/libraries/haskell/system-filepath/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "system-filepath";
-  version = "0.4.7";
-  sha256 = "108bmgz6rynkyabr4pws07smdh31syqvzry9cshrw3zd07c3mn89";
+  version = "0.4.8";
+  sha256 = "15x0yxakqqrdqvghr0l4pzvy5a68xxdv1c75d3qwx604665j3xkw";
   buildDepends = [ deepseq text ];
   meta = {
     homepage = "https://john-millikin.com/software/haskell-filesystem/";
diff --git a/pkgs/development/libraries/haskell/tagsoup/default.nix b/pkgs/development/libraries/haskell/tagsoup/default.nix
index 3258267f012..5dc83178be0 100644
--- a/pkgs/development/libraries/haskell/tagsoup/default.nix
+++ b/pkgs/development/libraries/haskell/tagsoup/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "tagsoup";
-  version = "0.12.8";
-  sha256 = "05cm9h80qmxvk7xhlgly9zcmpbsajagspaa8p6k4ddch6q9lj7m3";
+  version = "0.13";
+  sha256 = "1pfkcfrmhzxplfkdzb0zj24dfsddw91plqp3mg2gqkv82y8blzk1";
   isLibrary = true;
   isExecutable = true;
   buildDepends = [ text ];
diff --git a/pkgs/development/libraries/haskell/tagstream-conduit/default.nix b/pkgs/development/libraries/haskell/tagstream-conduit/default.nix
index 1b290bd310b..ca177a80a10 100644
--- a/pkgs/development/libraries/haskell/tagstream-conduit/default.nix
+++ b/pkgs/development/libraries/haskell/tagstream-conduit/default.nix
@@ -5,8 +5,8 @@
 
 cabal.mkDerivation (self: {
   pname = "tagstream-conduit";
-  version = "0.5.4";
-  sha256 = "1djf66kn3m4sdwmis82f9w2nkmjyrq12zda7ic9pcsvra579868i";
+  version = "0.5.4.1";
+  sha256 = "1gahdil5jasm6v7gp519ahr2yc7ppysdnmkl21cd4zzn6y1r0gw9";
   buildDepends = [
     attoparsec attoparsecConduit blazeBuilder blazeBuilderConduit
     caseInsensitive conduit text transformers
diff --git a/pkgs/development/libraries/haskell/tasty/default.nix b/pkgs/development/libraries/haskell/tasty/default.nix
index 37030681e34..df14857f9ab 100644
--- a/pkgs/development/libraries/haskell/tasty/default.nix
+++ b/pkgs/development/libraries/haskell/tasty/default.nix
@@ -4,8 +4,8 @@
 
 cabal.mkDerivation (self: {
   pname = "tasty";
-  version = "0.3";
-  sha256 = "0sgc0529sqhj0b75a4mkdw0bkx56ynyl4msmi8hd20jvv5wnzyi6";
+  version = "0.3.1";
+  sha256 = "0ipndrpywzg40s5hiwyyly29mcppcfqbbpwqqp4apma57m8cdpb0";
   buildDepends = [
     ansiTerminal mtl optparseApplicative regexPosix stm tagged
   ];
diff --git a/pkgs/development/libraries/haskell/test-framework-hunit/default.nix b/pkgs/development/libraries/haskell/test-framework-hunit/default.nix
index 011d791643c..9efcff9a6d1 100644
--- a/pkgs/development/libraries/haskell/test-framework-hunit/default.nix
+++ b/pkgs/development/libraries/haskell/test-framework-hunit/default.nix
@@ -2,11 +2,11 @@
 
 cabal.mkDerivation (self: {
   pname = "test-framework-hunit";
-  version = "0.3.0";
-  sha256 = "1jwbpbf9q3g936gk71632h830l2wsiic8h6ms1jlmw209mpm7c84";
+  version = "0.3.0.1";
+  sha256 = "1h0h55kf6ff25nbfx1mhliwyknc0glwv3zi78wpzllbjbs7gvyfk";
   buildDepends = [ extensibleExceptions HUnit testFramework ];
   meta = {
-    homepage = "http://batterseapower.github.com/test-framework/";
+    homepage = "https://batterseapower.github.io/test-framework/";
     description = "HUnit support for the test-framework package";
     license = self.stdenv.lib.licenses.bsd3;
     platforms = self.ghc.meta.platforms;
diff --git a/pkgs/development/libraries/haskell/test-framework-quickcheck2/default.nix b/pkgs/development/libraries/haskell/test-framework-quickcheck2/default.nix
index b944c1e104c..627c9f6347a 100644
--- a/pkgs/development/libraries/haskell/test-framework-quickcheck2/default.nix
+++ b/pkgs/development/libraries/haskell/test-framework-quickcheck2/default.nix
@@ -2,14 +2,14 @@
 
 cabal.mkDerivation (self: {
   pname = "test-framework-quickcheck2";
-  version = "0.3.0.1";
-  sha256 = "1177cvlb4qsa5x2k12dd60y7b14dyd3jr1ygb49aackhjx52c41s";
+  version = "0.3.0.2";
+  sha256 = "0zgsbmxidyv735jbgajczn25pnhwq66haaadhh6lxj2jsq5fnqpy";
   buildDepends = [
     extensibleExceptions QuickCheck random testFramework
   ];
   jailbreak = true;
   meta = {
-    homepage = "http://batterseapower.github.com/test-framework/";
+    homepage = "https://batterseapower.github.io/test-framework/";
     description = "QuickCheck2 support for the test-framework package";
     license = self.stdenv.lib.licenses.bsd3;
     platforms = self.ghc.meta.platforms;
diff --git a/pkgs/development/libraries/haskell/test-framework/default.nix b/pkgs/development/libraries/haskell/test-framework/default.nix
index b9f335e1a5a..735666734e3 100644
--- a/pkgs/development/libraries/haskell/test-framework/default.nix
+++ b/pkgs/development/libraries/haskell/test-framework/default.nix
@@ -1,19 +1,18 @@
-{ cabal, ansiTerminal, ansiWlPprint, extensibleExceptions, hostname
-, random, regexPosix, time, xml
+{ cabal, ansiTerminal, ansiWlPprint, hostname, random, regexPosix
+, time, xml
 }:
 
 cabal.mkDerivation (self: {
   pname = "test-framework";
-  version = "0.8";
-  sha256 = "1w895nq357zpc4v6vr5nbszyrw7cpsjq5bj38vdd10bfpjjmijcl";
+  version = "0.8.0.3";
+  sha256 = "136nw5dapsz3jrnw1pdfkjgplxigpr2mrf6i85154vx342zvw5ar";
   isLibrary = true;
   isExecutable = true;
   buildDepends = [
-    ansiTerminal ansiWlPprint extensibleExceptions hostname random
-    regexPosix time xml
+    ansiTerminal ansiWlPprint hostname random regexPosix time xml
   ];
   meta = {
-    homepage = "http://batterseapower.github.com/test-framework/";
+    homepage = "https://batterseapower.github.io/test-framework/";
     description = "Framework for running and organising tests, with HUnit and QuickCheck support";
     license = self.stdenv.lib.licenses.bsd3;
     platforms = self.ghc.meta.platforms;
diff --git a/pkgs/development/libraries/haskell/text-format/default.nix b/pkgs/development/libraries/haskell/text-format/default.nix
new file mode 100644
index 00000000000..b9507d7777a
--- /dev/null
+++ b/pkgs/development/libraries/haskell/text-format/default.nix
@@ -0,0 +1,14 @@
+{ cabal, doubleConversion, text, time, transformers }:
+
+cabal.mkDerivation (self: {
+  pname = "text-format";
+  version = "0.3.1.0";
+  sha256 = "13k5a1kfmapd4yckm2vcrwz4vrrf32c2dpisdw0hyvzvmdib3n60";
+  buildDepends = [ doubleConversion text time transformers ];
+  meta = {
+    homepage = "https://github.com/bos/text-format";
+    description = "Text formatting";
+    license = self.stdenv.lib.licenses.bsd3;
+    platforms = self.ghc.meta.platforms;
+  };
+})
diff --git a/pkgs/development/libraries/haskell/th-lift/default.nix b/pkgs/development/libraries/haskell/th-lift/default.nix
index b8a118b56a6..c479955db64 100644
--- a/pkgs/development/libraries/haskell/th-lift/default.nix
+++ b/pkgs/development/libraries/haskell/th-lift/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "th-lift";
-  version = "0.5.5";
-  sha256 = "1zp9alv3nbvra1rscddak3i33c2jnv6g6806h94qbfkq3zbimfi0";
+  version = "0.5.6";
+  sha256 = "128rbpqbm4fgn1glbv8bvlqnvn2wvca7wj08xri25w3bikmfy2z4";
   meta = {
     description = "Derive Template Haskell's Lift class for datatypes";
     license = "unknown";
diff --git a/pkgs/development/libraries/haskell/th-orphans/default.nix b/pkgs/development/libraries/haskell/th-orphans/default.nix
index 8fb51c77dbf..9196e9ef76b 100644
--- a/pkgs/development/libraries/haskell/th-orphans/default.nix
+++ b/pkgs/development/libraries/haskell/th-orphans/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "th-orphans";
-  version = "0.7.0.1";
-  sha256 = "19lfq2m7c6n2z8gz4n57wc92x5x5rkgv4chbfq7w4n531qya4bgr";
+  version = "0.8";
+  sha256 = "0kzzcicn6pggvvblhbrs3vh0bf71izlb99lb0f5qww7ymi4smldr";
   buildDepends = [ thLift ];
   meta = {
     description = "Orphan instances for TH datatypes";
diff --git a/pkgs/development/libraries/haskell/thyme/default.nix b/pkgs/development/libraries/haskell/thyme/default.nix
index 60999f51898..f40730b5e56 100644
--- a/pkgs/development/libraries/haskell/thyme/default.nix
+++ b/pkgs/development/libraries/haskell/thyme/default.nix
@@ -5,8 +5,8 @@
 
 cabal.mkDerivation (self: {
   pname = "thyme";
-  version = "0.3.0.0";
-  sha256 = "0nv8kp5ax0088z0d9y93xkv59v1i8wrrdprsj7bknk3yn0gd2gb3";
+  version = "0.3.0.1";
+  sha256 = "086i8cadq2s894157s1bh3zhd9zb9apr7w39gnydywzgkx47478h";
   buildDepends = [
     attoparsec deepseq lens QuickCheck random text time transformers
     vector vectorSpace
diff --git a/pkgs/development/libraries/haskell/tls-extra/default.nix b/pkgs/development/libraries/haskell/tls-extra/default.nix
index 8c2a50255b1..6d63c267c61 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.6.5";
-  sha256 = "09b8wxg4k88gdzpbxhd2apf0x5y51zh2zbw2cvraffjnnfkgvzqc";
+  version = "0.6.6";
+  sha256 = "0k0sj3nq1lrvbmd582mjj8cxbxigivz1hm8hhij1ncl2pgnq5xyv";
   isLibrary = true;
   isExecutable = true;
   buildDepends = [
diff --git a/pkgs/development/libraries/haskell/trifecta/1.1.nix b/pkgs/development/libraries/haskell/trifecta/1.1.nix
new file mode 100644
index 00000000000..ac6cfdd43ae
--- /dev/null
+++ b/pkgs/development/libraries/haskell/trifecta/1.1.nix
@@ -0,0 +1,30 @@
+{ cabal, ansiTerminal, ansiWlPprint, blazeBuilder, blazeHtml
+, blazeMarkup, charset, comonad, deepseq, doctest, filepath
+, fingertree, hashable, lens, mtl, parsers, reducers, semigroups
+, transformers, unorderedContainers, utf8String
+}:
+
+cabal.mkDerivation (self: {
+  pname = "trifecta";
+  version = "1.1";
+  sha256 = "19wnblpn31hvdi5dc8ir24s0hfjj4vvzr43gg9ydl2qdjq6s166w";
+  buildDepends = [
+    ansiTerminal ansiWlPprint blazeBuilder blazeHtml blazeMarkup
+    charset comonad deepseq fingertree hashable lens mtl parsers
+    reducers semigroups transformers unorderedContainers utf8String
+  ];
+  testDepends = [ doctest filepath ];
+  postPatch = ''
+    substituteInPlace trifecta.cabal \
+      --replace "blaze-html           >= 0.5     && < 0.6," "blaze-html           >= 0.5     && < 0.7," \
+      --replace "hashable             >= 1.2     && < 1.3," "hashable             >= 1.1     && < 1.3," \
+      --replace "fingertree           >= 0.0.1   && < 0.1," "fingertree           >= 0.0.1   && < 0.2," \
+      --replace "comonad              == 3.*,"              "comonad              >= 3       && < 5,"
+  '';
+  meta = {
+    homepage = "http://github.com/ekmett/trifecta/";
+    description = "A modern parser combinator library with convenient diagnostics";
+    license = self.stdenv.lib.licenses.bsd3;
+    platforms = self.ghc.meta.platforms;
+  };
+})
diff --git a/pkgs/development/libraries/haskell/trifecta/1.2.nix b/pkgs/development/libraries/haskell/trifecta/1.2.nix
new file mode 100644
index 00000000000..de876fa7f67
--- /dev/null
+++ b/pkgs/development/libraries/haskell/trifecta/1.2.nix
@@ -0,0 +1,30 @@
+{ cabal, ansiTerminal, ansiWlPprint, blazeBuilder, blazeHtml
+, blazeMarkup, charset, comonad, deepseq, doctest, filepath
+, fingertree, hashable, lens, mtl, parsers, reducers, semigroups
+, transformers, unorderedContainers, utf8String
+}:
+
+cabal.mkDerivation (self: {
+  pname = "trifecta";
+  version = "1.2.1.1";
+  sha256 = "1bv35ip7g0h7r2w0s8pkcbvm0b9hx91vblf5w57q3jr843v9314c";
+  buildDepends = [
+    ansiTerminal ansiWlPprint blazeBuilder blazeHtml blazeMarkup
+    charset comonad deepseq fingertree hashable lens mtl parsers
+    reducers semigroups transformers unorderedContainers utf8String
+  ];
+  testDepends = [ doctest filepath ];
+  postPatch = ''
+    substituteInPlace trifecta.cabal \
+      --replace "blaze-html           >= 0.5     && < 0.6," "blaze-html           >= 0.5     && < 0.7," \
+      --replace "hashable             >= 1.2     && < 1.3," "hashable             >= 1.1     && < 1.3," \
+      --replace "fingertree           >= 0.0.1   && < 0.1," "fingertree           >= 0.0.1   && < 0.2," \
+      --replace "comonad              >= 3       && < 4,"   "comonad              >= 3       && < 5,"
+  '';
+  meta = {
+    homepage = "http://github.com/ekmett/trifecta/";
+    description = "A modern parser combinator library with convenient diagnostics";
+    license = self.stdenv.lib.licenses.bsd3;
+    platforms = self.ghc.meta.platforms;
+  };
+})
diff --git a/pkgs/development/libraries/haskell/uniplate/default.nix b/pkgs/development/libraries/haskell/uniplate/default.nix
index 8b0825ea119..ab9471bc3f2 100644
--- a/pkgs/development/libraries/haskell/uniplate/default.nix
+++ b/pkgs/development/libraries/haskell/uniplate/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "uniplate";
-  version = "1.6.11";
-  sha256 = "10ppc9hqc0y17r3y4vdajshrp3956dybna7qa5zm0akgl3pbla9j";
+  version = "1.6.12";
+  sha256 = "1dx8f9aw27fz8kw0ad1nm6355w5rdl7bjvb427v2bsgnng30pipw";
   buildDepends = [ hashable syb unorderedContainers ];
   meta = {
     homepage = "http://community.haskell.org/~ndm/uniplate/";
diff --git a/pkgs/development/libraries/haskell/unix-time/default.nix b/pkgs/development/libraries/haskell/unix-time/default.nix
index 846e3d88883..67dbdac3485 100644
--- a/pkgs/development/libraries/haskell/unix-time/default.nix
+++ b/pkgs/development/libraries/haskell/unix-time/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "unix-time";
-  version = "0.2.0";
-  sha256 = "1gmchi6crbd3lpnw1j0zaaj7y0gib8dbqd8ip2s5p3f50qqlsxj8";
+  version = "0.2.1";
+  sha256 = "15kg1rxbw86p5jzig9ac7lsizmlvqkxikq7h8jfi04rri39a9jiy";
   testDepends = [ doctest hspec QuickCheck time ];
   meta = {
     description = "Unix time parser/formatter and utilities";
diff --git a/pkgs/development/libraries/haskell/unordered-containers/0.2.3.2.nix b/pkgs/development/libraries/haskell/unordered-containers/0.2.3.3.nix
index 669f45d83f2..03cdd824d29 100644
--- a/pkgs/development/libraries/haskell/unordered-containers/0.2.3.2.nix
+++ b/pkgs/development/libraries/haskell/unordered-containers/0.2.3.3.nix
@@ -4,8 +4,8 @@
 
 cabal.mkDerivation (self: {
   pname = "unordered-containers";
-  version = "0.2.3.2";
-  sha256 = "0fgfb2zqa2zi2hb9nkj92nwnxr54wkqa6gmqbcn4h5zks5anfvn5";
+  version = "0.2.3.3";
+  sha256 = "09sn19fk4smhf4zi3326wy2a62lh231k2nm8jd64j51arch42sdi";
   buildDepends = [ deepseq hashable ];
   testDepends = [
     ChasingBottoms hashable HUnit QuickCheck testFramework
diff --git a/pkgs/development/libraries/haskell/usb/default.nix b/pkgs/development/libraries/haskell/usb/default.nix
new file mode 100644
index 00000000000..41a71618546
--- /dev/null
+++ b/pkgs/development/libraries/haskell/usb/default.nix
@@ -0,0 +1,14 @@
+{ cabal, baseUnicodeSymbols, bindingsLibusb, text, vector }:
+
+cabal.mkDerivation (self: {
+  pname = "usb";
+  version = "1.2";
+  sha256 = "1k73avkmpbmg6iq2kmwhg2ifibni5c1yp202afdb6v7w5akvmc0b";
+  buildDepends = [ baseUnicodeSymbols bindingsLibusb text vector ];
+  meta = {
+    homepage = "http://basvandijk.github.com/usb";
+    description = "Communicate with USB devices";
+    license = self.stdenv.lib.licenses.bsd3;
+    platforms = self.ghc.meta.platforms;
+  };
+})
diff --git a/pkgs/development/libraries/haskell/utf8-light/default.nix b/pkgs/development/libraries/haskell/utf8-light/default.nix
index 42591158cd7..1c2e1f5c116 100644
--- a/pkgs/development/libraries/haskell/utf8-light/default.nix
+++ b/pkgs/development/libraries/haskell/utf8-light/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "utf8-light";
-  version = "0.4.0.1";
-  sha256 = "1y2vfxjgq8r90bpaxhha0s837vklpwdj4cj3h61bimc0lcx22905";
+  version = "0.4.2";
+  sha256 = "0rwyc5z331yfnm4hpx0sph6i1zvkd1z10vvglhnp0vc9wy644k0q";
   meta = {
     description = "Unicode";
     license = self.stdenv.lib.licenses.bsd3;
diff --git a/pkgs/development/libraries/haskell/uuid/default.nix b/pkgs/development/libraries/haskell/uuid/default.nix
index 65115ef9a98..a38a108bc03 100644
--- a/pkgs/development/libraries/haskell/uuid/default.nix
+++ b/pkgs/development/libraries/haskell/uuid/default.nix
@@ -1,17 +1,20 @@
-{ cabal, binary, criterion, cryptohash, deepseq, HUnit, maccatcher
-, mersenneRandomPure64, QuickCheck, random, testFramework
-, testFrameworkHunit, testFrameworkQuickcheck2, time
+{ cabal, binary, cryptohash, deepseq, hashable, HUnit, networkInfo
+, QuickCheck, random, testFramework, testFrameworkHunit
+, testFrameworkQuickcheck2, time
 }:
 
 cabal.mkDerivation (self: {
   pname = "uuid";
-  version = "1.2.14";
-  sha256 = "13r2yzhb9nj1h6wfy7w9k59d27z9iza5r4apmf72zby2fi9vdnwy";
-  buildDepends = [ binary cryptohash maccatcher random time ];
+  version = "1.3.3";
+  sha256 = "12sfspmrnpqbwwscv3w41pkkdbfvy1aaa84y7is0d3ffk5rll80m";
+  buildDepends = [
+    binary cryptohash deepseq hashable networkInfo random time
+  ];
   testDepends = [
-    criterion deepseq HUnit mersenneRandomPure64 QuickCheck random
-    testFramework testFrameworkHunit testFrameworkQuickcheck2
+    HUnit QuickCheck random testFramework testFrameworkHunit
+    testFrameworkQuickcheck2
   ];
+  jailbreak = true;
   doCheck = false;
   meta = {
     homepage = "http://projects.haskell.org/uuid/";
diff --git a/pkgs/development/libraries/haskell/vault/default.nix b/pkgs/development/libraries/haskell/vault/default.nix
index 4632d599a2e..3f284284444 100644
--- a/pkgs/development/libraries/haskell/vault/default.nix
+++ b/pkgs/development/libraries/haskell/vault/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "vault";
-  version = "0.3.0.0";
-  sha256 = "1lvv2sw5j48jbxniw55bxq88dhn46l7lk0blv2cnaf1vw6wms4m8";
+  version = "0.3.0.2";
+  sha256 = "1m9vanwzlw61fbdcy7qvv2prmbax5y9dsl52dldcf5zr7vip2hpb";
   buildDepends = [ hashable unorderedContainers ];
   jailbreak = true;
   meta = {
diff --git a/pkgs/development/libraries/haskell/vector-instances/default.nix b/pkgs/development/libraries/haskell/vector-instances/default.nix
new file mode 100644
index 00000000000..c6ff62f86cd
--- /dev/null
+++ b/pkgs/development/libraries/haskell/vector-instances/default.nix
@@ -0,0 +1,17 @@
+{ cabal, comonad, keys, pointed, semigroupoids, semigroups, vector
+}:
+
+cabal.mkDerivation (self: {
+  pname = "vector-instances";
+  version = "3.3";
+  sha256 = "0iiw9p2ivcdfsh81vdy4yn6hbigdwclrkssd68hdsg9n6q3fmq5y";
+  buildDepends = [
+    comonad keys pointed semigroupoids semigroups vector
+  ];
+  meta = {
+    homepage = "http://github.com/ekmett/vector-instances";
+    description = "Orphan Instances for 'Data.Vector'";
+    license = self.stdenv.lib.licenses.bsd3;
+    platforms = self.ghc.meta.platforms;
+  };
+})
diff --git a/pkgs/development/libraries/haskell/vector/0.10.9.1.nix b/pkgs/development/libraries/haskell/vector/0.10.9.1.nix
new file mode 100644
index 00000000000..975d75526a6
--- /dev/null
+++ b/pkgs/development/libraries/haskell/vector/0.10.9.1.nix
@@ -0,0 +1,15 @@
+{ cabal, deepseq, primitive }:
+
+cabal.mkDerivation (self: {
+  pname = "vector";
+  version = "0.10.9.1";
+  sha256 = "1rdx0r7bwx6217ip9mg9yfymvgv52szqv63y89p41b8sfklmcmi0";
+  buildDepends = [ deepseq primitive ];
+  meta = {
+    homepage = "https://github.com/haskell/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/wai-app-static/default.nix b/pkgs/development/libraries/haskell/wai-app-static/default.nix
index ec0612ae117..d88eb2df0bc 100644
--- a/pkgs/development/libraries/haskell/wai-app-static/default.nix
+++ b/pkgs/development/libraries/haskell/wai-app-static/default.nix
@@ -1,23 +1,23 @@
 { cabal, base64Bytestring, blazeBuilder, blazeHtml, blazeMarkup
 , cereal, cryptoApi, cryptoConduit, cryptohashCryptoapi, fileEmbed
 , hspec, httpDate, httpTypes, mimeTypes, network, systemFileio
-, systemFilepath, text, time, transformers, unixCompat, wai
-, waiTest
+, systemFilepath, text, time, transformers, unixCompat
+, unorderedContainers, wai, waiTest, zlib
 }:
 
 cabal.mkDerivation (self: {
   pname = "wai-app-static";
-  version = "1.3.1.4";
-  sha256 = "1457643xkigqnacg1fw25jp9kjqiy55d22ll8fml07bxs37hlr63";
+  version = "1.3.3";
+  sha256 = "0lsqfvlh65rggp9z6m5gyx8gv0wk3b44jrk57s8yj2bh74pbr64f";
   buildDepends = [
     base64Bytestring blazeBuilder blazeHtml blazeMarkup cereal
     cryptoApi cryptoConduit cryptohashCryptoapi fileEmbed httpDate
     httpTypes mimeTypes systemFileio systemFilepath text time
-    transformers unixCompat wai
+    transformers unixCompat unorderedContainers wai zlib
   ];
   testDepends = [
     hspec httpDate httpTypes mimeTypes network text time transformers
-    unixCompat wai waiTest
+    unixCompat wai waiTest zlib
   ];
   meta = {
     homepage = "http://www.yesodweb.com/book/web-application-interface";
diff --git a/pkgs/development/libraries/haskell/warp/default.nix b/pkgs/development/libraries/haskell/warp/default.nix
index c96e7bfd738..100dbbd7024 100644
--- a/pkgs/development/libraries/haskell/warp/default.nix
+++ b/pkgs/development/libraries/haskell/warp/default.nix
@@ -1,13 +1,13 @@
 { cabal, blazeBuilder, blazeBuilderConduit, caseInsensitive
-, conduit, hashable, hspec, httpAttoparsec, httpTypes, HUnit
+, conduit, hashable, hspec, HTTP, httpAttoparsec, httpTypes, HUnit
 , liftedBase, network, networkConduit, QuickCheck, simpleSendfile
 , transformers, unixCompat, void, wai
 }:
 
 cabal.mkDerivation (self: {
   pname = "warp";
-  version = "1.3.9.2";
-  sha256 = "0l4iq7dl7iv9sf0bj52g577x9i84miscfr27b2vm8g8n6306jr77";
+  version = "1.3.10.1";
+  sha256 = "1pi2x0gi4r6qy151a9gmfq223yiy53j7prj2pyn00cprr0m4mk2v";
   buildDepends = [
     blazeBuilder blazeBuilderConduit caseInsensitive conduit hashable
     httpAttoparsec httpTypes liftedBase network networkConduit
@@ -15,7 +15,7 @@ cabal.mkDerivation (self: {
   ];
   testDepends = [
     blazeBuilder blazeBuilderConduit caseInsensitive conduit hashable
-    hspec httpAttoparsec httpTypes HUnit liftedBase network
+    hspec HTTP httpAttoparsec httpTypes HUnit liftedBase network
     networkConduit QuickCheck simpleSendfile transformers unixCompat
     void wai
   ];
diff --git a/pkgs/development/libraries/haskell/word8/default.nix b/pkgs/development/libraries/haskell/word8/default.nix
index e8abded2438..535f4103d12 100644
--- a/pkgs/development/libraries/haskell/word8/default.nix
+++ b/pkgs/development/libraries/haskell/word8/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "word8";
-  version = "0.0.3";
-  sha256 = "1k5sq91pidgw7w8fc62k9gl8iynb65pcza6mjx8pa3n2lslp7125";
+  version = "0.0.4";
+  sha256 = "1jrys2crl1yfkgwc4ny6x1kr24kx8j3zsy0zql5ms19rfb0rnkki";
   testDepends = [ hspec ];
   meta = {
     description = "Word8 library";
diff --git a/pkgs/development/libraries/haskell/wxHaskell/wxc.nix b/pkgs/development/libraries/haskell/wxHaskell/wxc.nix
index 74ca4f91d70..b89b39acb50 100644
--- a/pkgs/development/libraries/haskell/wxHaskell/wxc.nix
+++ b/pkgs/development/libraries/haskell/wxHaskell/wxc.nix
@@ -6,7 +6,6 @@ cabal.mkDerivation (self: {
   sha256 = "1bh20i1rb8ng0ni1v98nm8qv5wni19dvxwf5i3ijxhrxqdq4i7p6";
   buildDepends = [ wxdirect ];
   extraLibraries = [ libX11 mesa wxGTK ];
-  noHaddock = true;
   postInstall = ''
     cp -v dist/build/libwxc.so.${self.version} $out/lib/libwxc.so
   '';
diff --git a/pkgs/development/libraries/haskell/xdot/default.nix b/pkgs/development/libraries/haskell/xdot/default.nix
index 130402ec75b..f7a2b731d03 100644
--- a/pkgs/development/libraries/haskell/xdot/default.nix
+++ b/pkgs/development/libraries/haskell/xdot/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "xdot";
-  version = "0.2.3.1";
-  sha256 = "1gricrnssxgzaq1z7nnyppmz284nix0m89477x22mal125pkcf7n";
+  version = "0.2.4";
+  sha256 = "0723drp9zs3hrayld99j4fniyvm65fz19hkk4001vpvgjw27dfja";
   buildDepends = [ cairo graphviz gtk mtl polyparse text ];
   meta = {
     description = "Parse Graphviz xdot files and interactively view them using GTK and Cairo";
diff --git a/pkgs/development/libraries/haskell/xmlgen/default.nix b/pkgs/development/libraries/haskell/xmlgen/default.nix
new file mode 100644
index 00000000000..f45b7b4a6a0
--- /dev/null
+++ b/pkgs/development/libraries/haskell/xmlgen/default.nix
@@ -0,0 +1,15 @@
+{ cabal, blazeBuilder, filepath, HUnit, hxt, mtl, QuickCheck, text
+}:
+
+cabal.mkDerivation (self: {
+  pname = "xmlgen";
+  version = "0.6.2.0";
+  sha256 = "0b6fyg6mlm068f2jjmil52az4hk144pryf1c0wr1gx6ddx9yzjy4";
+  buildDepends = [ blazeBuilder mtl text ];
+  testDepends = [ filepath HUnit hxt QuickCheck text ];
+  meta = {
+    description = "Fast XML generation library";
+    license = self.stdenv.lib.licenses.bsd3;
+    platforms = self.ghc.meta.platforms;
+  };
+})
diff --git a/pkgs/development/libraries/haskell/yaml/default.nix b/pkgs/development/libraries/haskell/yaml/default.nix
index 7e2bd368c7e..8d06099b77e 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.5";
-  sha256 = "12jj785gzcnrif460cx2k69pc2h9h956g0w1gp8pcr5hawrvd6rg";
+  version = "0.8.5.1";
+  sha256 = "0vbampykc5a027q5fh5w6i1bxblyxx7s3nzhpzaa4c1yz8nz3k57";
   isLibrary = true;
   isExecutable = true;
   buildDepends = [
diff --git a/pkgs/development/libraries/haskell/yesod-auth/default.nix b/pkgs/development/libraries/haskell/yesod-auth/default.nix
index c437b5b8624..bdc29993919 100644
--- a/pkgs/development/libraries/haskell/yesod-auth/default.nix
+++ b/pkgs/development/libraries/haskell/yesod-auth/default.nix
@@ -8,8 +8,8 @@
 
 cabal.mkDerivation (self: {
   pname = "yesod-auth";
-  version = "1.2.2.1";
-  sha256 = "1f3zdqywak54f2s11v26iyzb3svb0mdpfskxhps30jmkji2ph2iz";
+  version = "1.2.3";
+  sha256 = "1hnppb36acr18prra702r9hdbs803zfvaj8krq4idlvwb6g7l0d8";
   buildDepends = [
     aeson authenticate blazeHtml blazeMarkup dataDefault emailValidate
     fileEmbed hamlet httpConduit httpTypes liftedBase mimeMail network
diff --git a/pkgs/development/libraries/haskell/yesod-bin/default.nix b/pkgs/development/libraries/haskell/yesod-bin/default.nix
index 3afb8747547..a86417f6b39 100644
--- a/pkgs/development/libraries/haskell/yesod-bin/default.nix
+++ b/pkgs/development/libraries/haskell/yesod-bin/default.nix
@@ -10,8 +10,8 @@
 
 cabal.mkDerivation (self: {
   pname = "yesod-bin";
-  version = "1.2.3.2";
-  sha256 = "10q4xjhcrskz3h0nay2vxfz2b3c2d532bvbggl2615aih05zdhwc";
+  version = "1.2.3.4";
+  sha256 = "0xwav5ghik0vzg706rcqlzk64gnvr4nn4iikx1bzymzz2p5zyg0z";
   isLibrary = false;
   isExecutable = true;
   buildDepends = [
diff --git a/pkgs/development/libraries/haskell/yesod-core/default.nix b/pkgs/development/libraries/haskell/yesod-core/default.nix
index bd2d0d97b2f..0bd73c2ade4 100644
--- a/pkgs/development/libraries/haskell/yesod-core/default.nix
+++ b/pkgs/development/libraries/haskell/yesod-core/default.nix
@@ -10,8 +10,8 @@
 
 cabal.mkDerivation (self: {
   pname = "yesod-core";
-  version = "1.2.4.2";
-  sha256 = "0zrhqh3phla8p7fjv30n4ypicbd6x6rwkrhpag79p1w4wwvkjxnn";
+  version = "1.2.4.5";
+  sha256 = "091f89bwjsf2qimivbz74rykjjgzghfvs66sv9cz305pgw6kpjc7";
   buildDepends = [
     aeson attoparsecConduit blazeBuilder blazeHtml blazeMarkup
     caseInsensitive cereal clientsession conduit cookie dataDefault
@@ -25,6 +25,7 @@ cabal.mkDerivation (self: {
     QuickCheck random resourcet shakespeareCss shakespeareJs text
     transformers wai waiTest
   ];
+  jailbreak = true;
   meta = {
     homepage = "http://www.yesodweb.com/";
     description = "Creation of type-safe, RESTful web applications";
diff --git a/pkgs/development/libraries/haskell/yesod-form/default.nix b/pkgs/development/libraries/haskell/yesod-form/default.nix
index aca42bfce6c..5c0220f1f2a 100644
--- a/pkgs/development/libraries/haskell/yesod-form/default.nix
+++ b/pkgs/development/libraries/haskell/yesod-form/default.nix
@@ -6,8 +6,8 @@
 
 cabal.mkDerivation (self: {
   pname = "yesod-form";
-  version = "1.3.2.1";
-  sha256 = "0lybrw244y2ca1jvz218jh2kfypj4wblpdvk4n8wllll79dm3pq7";
+  version = "1.3.3";
+  sha256 = "1maf8yczijx8rdjy4abr2jq1ds4g61jg3zbqxjzaaxsbs77gna4a";
   buildDepends = [
     aeson attoparsec blazeBuilder blazeHtml blazeMarkup cryptoApi
     dataDefault emailValidate hamlet network persistent resourcet
diff --git a/pkgs/development/libraries/haskell/yesod-platform/default.nix b/pkgs/development/libraries/haskell/yesod-platform/default.nix
index 9fe24ca4a74..f75b5706f6a 100644
--- a/pkgs/development/libraries/haskell/yesod-platform/default.nix
+++ b/pkgs/development/libraries/haskell/yesod-platform/default.nix
@@ -30,8 +30,8 @@
 
 cabal.mkDerivation (self: {
   pname = "yesod-platform";
-  version = "1.2.4.2";
-  sha256 = "1hmzdwjqi3cxdmyvcr48kprrsa8h548z272mif07114d0qh48x4w";
+  version = "1.2.4.3";
+  sha256 = "1ilkfmg4sdrz45hc2m8b8rqz242phgxzgizrnd41d5g04jib3hl3";
   buildDepends = [
     aeson ansiTerminal asn1Data asn1Types attoparsec attoparsecConduit
     authenticate base64Bytestring baseUnicodeSymbols blazeBuilder
diff --git a/pkgs/development/libraries/haskell/yst/default.nix b/pkgs/development/libraries/haskell/yst/default.nix
index d194b1970c8..ee9bb33cdba 100644
--- a/pkgs/development/libraries/haskell/yst/default.nix
+++ b/pkgs/development/libraries/haskell/yst/default.nix
@@ -1,16 +1,17 @@
-{ cabal, csv, filepath, HDBC, HDBCSqlite3, HsSyck, HStringTemplate
-, pandoc, parsec, split, time, utf8String, xhtml
+{ cabal, aeson, csv, filepath, HDBC, HDBCSqlite3, HStringTemplate
+, pandoc, parsec, split, text, time, unorderedContainers, xhtml
+, yaml
 }:
 
 cabal.mkDerivation (self: {
   pname = "yst";
-  version = "0.3.1.1";
-  sha256 = "1wc2s5aan4rqdrpqgqvka5pqm3d691si5hdf0m0wpi2hzkwl3qv3";
+  version = "0.4.0.1";
+  sha256 = "0j260lvprgsi9qgjwji2cc25k0dzrw94h2527rwghik8baa1ha3r";
   isLibrary = false;
   isExecutable = true;
   buildDepends = [
-    csv filepath HDBC HDBCSqlite3 HsSyck HStringTemplate pandoc parsec
-    split time utf8String xhtml
+    aeson csv filepath HDBC HDBCSqlite3 HStringTemplate pandoc parsec
+    split text time unorderedContainers xhtml yaml
   ];
   meta = {
     homepage = "http://github.com/jgm/yst";
diff --git a/pkgs/development/libraries/haskell/zip-archive/default.nix b/pkgs/development/libraries/haskell/zip-archive/default.nix
index 38290c8cd54..bddf09bc405 100644
--- a/pkgs/development/libraries/haskell/zip-archive/default.nix
+++ b/pkgs/development/libraries/haskell/zip-archive/default.nix
@@ -4,8 +4,8 @@
 
 cabal.mkDerivation (self: {
   pname = "zip-archive";
-  version = "0.1.3.4";
-  sha256 = "0hvndr3gb7fiv4qjwjvic5mg7wq7h7nw3c3v5xq8fnlr1l943vyb";
+  version = "0.1.4";
+  sha256 = "0ipk8gwa2k8iqg2gg4lbawr8l9sjwhy2p7b8qxazpq0i88dyy3lb";
   isLibrary = true;
   isExecutable = true;
   buildDepends = [ binary digest filepath mtl time utf8String zlib ];
diff --git a/pkgs/development/libraries/hunspell/default.nix b/pkgs/development/libraries/hunspell/default.nix
index 04be58eb50a..95516dadacf 100644
--- a/pkgs/development/libraries/hunspell/default.nix
+++ b/pkgs/development/libraries/hunspell/default.nix
@@ -13,9 +13,15 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     homepage = http://hunspell.sourceforge.net;
-    description = "The spell checker of OpenOffice.org and Mozilla Firefox 3 & Thunderbird, Google Chrome etc.";
+    description = "Spell checker";
     longDescription = ''
+      Hunspell is the spell checker of LibreOffice, OpenOffice.org, Mozilla
+      Firefox 3 & Thunderbird, Google Chrome, and it is also used by
+      proprietary software packages, like Mac OS X, InDesign, memoQ, Opera and
+      SDL Trados.
+
       Main features:
+
       * Extended support for language peculiarities; Unicode character encoding, compounding and complex morphology.
       * Improved suggestion using n-gram similarity, rule and dictionary based pronounciation data.
       * Morphological analysis, stemming and generation.
diff --git a/pkgs/development/libraries/jansson/default.nix b/pkgs/development/libraries/jansson/default.nix
index a1f9983abe2..4908c737ece 100644
--- a/pkgs/development/libraries/jansson/default.nix
+++ b/pkgs/development/libraries/jansson/default.nix
@@ -10,7 +10,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     homepage = "http://www.digip.org/jansson/";
-    description = "Jansson is a C library for encoding, decoding and manipulating JSON data.";
+    description = "C library for encoding, decoding and manipulating JSON data";
     license = "MIT";
   };
 }
diff --git a/pkgs/development/libraries/jsoncpp/default.nix b/pkgs/development/libraries/jsoncpp/default.nix
new file mode 100644
index 00000000000..b1aa03991bd
--- /dev/null
+++ b/pkgs/development/libraries/jsoncpp/default.nix
@@ -0,0 +1,32 @@
+{ stdenv, fetchurl, scons}:
+
+let
+  basename = "jsoncpp";
+  version = "0.6.0-rc2";
+  pkgname = "${basename}-src-${version}.tar.gz";
+in 
+stdenv.mkDerivation rec {
+  name = "${basename}-${version}";
+  src = fetchurl {
+    url = "mirror://sourceforge/${basename}/${pkgname}";
+    sha256 = "10xj15nziqpwc6r3yznpb49wm4jqc5wakjsmj65v087mcg8r7lfl";
+  };
+
+  buildInputs = [ scons ];
+
+  buildPhase = ''
+    mkdir -p $out
+    scons platform=linux-gcc check
+  '';
+
+  installPhase = ''
+    cp -r include $out
+    cp -r libs/* $out/lib
+  '';
+
+  meta = {
+    homepage = http://jsoncpp.sourceforge.net;
+    repositories.svn = svn://svn.code.sf.net/p/jsoncpp/code;
+    description = "A simple API to manipulate JSON data in C++";
+  };
+}
diff --git a/pkgs/development/libraries/leveldb/default.nix b/pkgs/development/libraries/leveldb/default.nix
index 12846dfbe8b..7c990e99c33 100644
--- a/pkgs/development/libraries/leveldb/default.nix
+++ b/pkgs/development/libraries/leveldb/default.nix
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     homepage = "https://code.google.com/p/leveldb/";
-    description = "A fast and lightweight key/value database library by Google.";
+    description = "Fast and lightweight key/value database library by Google";
     license = "BSD";
   };
 }
diff --git a/pkgs/development/libraries/libav/default.nix b/pkgs/development/libraries/libav/default.nix
index ea45902b749..287ac32fff5 100644
--- a/pkgs/development/libraries/libav/default.nix
+++ b/pkgs/development/libraries/libav/default.nix
@@ -26,7 +26,7 @@ with { inherit (stdenv.lib) optional optionals; };
 
 let
   result = {
-    libav_9   = libavFun   "9.9" "1rwphyqb2c4zyp20y4ywxjiddmd46vd4dbpdm1lxqm3q63rmmdk9";
+    libav_9   = libavFun  "9.10" "039hx7z8lmsiljy4wj87hk8lkxspbxbrjv43v3lc38cxfx0fdnw3";
     libav_0_8 = libavFun "0.8.8" "1wnbmbs0z4f55y8r9bwb63l04zn383l1avy4c9x1ffb2xccgcp79";
   };
 
diff --git a/pkgs/development/libraries/libdevil/default.nix b/pkgs/development/libraries/libdevil/default.nix
index 6efb785b657..d3053b4d2a5 100644
--- a/pkgs/development/libraries/libdevil/default.nix
+++ b/pkgs/development/libraries/libdevil/default.nix
@@ -28,7 +28,7 @@ stdenv.mkDerivation rec {
     homepage = http://openil.sourceforge.net/;
     description = "An image library which can can load, save, convert, manipulate, filter and display a wide variety of image formats";
     license = licenses.lgpl2;
-    platforms = platforms.all;
+    platforms = platforms.mesaPlatforms;
     maintainers = [ maintainers.phreedom maintainers.urkud ];
   };
 }
diff --git a/pkgs/development/libraries/libedit/default.nix b/pkgs/development/libraries/libedit/default.nix
index dca4d8efc13..1382af16484 100644
--- a/pkgs/development/libraries/libedit/default.nix
+++ b/pkgs/development/libraries/libedit/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl, ncurses, groff }:
 
 stdenv.mkDerivation rec {
-  name = "libedit-20100424-3.0";
+  name = "libedit-20130712-3.1";
 
   src = fetchurl {
     url = "http://www.thrysoee.dk/editline/${name}.tar.gz";
-    sha256 = "11hxaq58gym7kqccjhxywjxdibffzg545z1aj997y1dn0rckhav0";
+    sha256 = "0dwav34041sariyl00nr106xmn123bnxir4qpn5y47vgssfim6sx";
   };
 
   # Have `configure' avoid `/usr/bin/nroff' in non-chroot builds.
@@ -15,12 +15,16 @@ stdenv.mkDerivation rec {
     sed -i s/-lncurses/-lncursesw/g $out/lib/pkgconfig/libedit.pc
   '';
 
+  # taken from gentoo http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/dev-libs/libedit/files/
+  patches = [ ./freebsd.patch ./freebsd_weak_ref.patch ];
+
   configureFlags = "--enable-widec";
 
   propagatedBuildInputs = [ ncurses ];
 
-  meta = {
+  meta = with stdenv.lib; {
     homepage = "http://www.thrysoee.dk/editline/";
     description = "A port of the NetBSD Editline library (libedit)";
+    license = licenses.bsd3; 
   };
 }
diff --git a/pkgs/development/libraries/libedit/freebsd.patch b/pkgs/development/libraries/libedit/freebsd.patch
new file mode 100644
index 00000000000..e230a76d709
--- /dev/null
+++ b/pkgs/development/libraries/libedit/freebsd.patch
@@ -0,0 +1,13 @@
+diff --git a/src/chartype.h b/src/chartype.h
+index c35825c..be5aac0 100644
+--- a/src/chartype.h
++++ b/src/chartype.h
+@@ -44,7 +44,7 @@
+  * supports non-BMP code points without requiring UTF-16, but nothing
+  * seems to actually advertise this properly, despite Unicode 3.1 having
+  * been around since 2001... */
+-#if !defined(__NetBSD__) && !defined(__sun) && !(defined(__APPLE__) && defined(__MACH__))
++#if !defined(__NetBSD__) && !defined(__sun) && !(defined(__APPLE__) && defined(__MACH__)) && !defined(__DragonFly__) && !defined(__FreeBSD__)
+ #ifndef __STDC_ISO_10646__
+ /* In many places it is assumed that the first 127 code points are ASCII
+  * compatible, so ensure wchar_t indeed does ISO 10646 and not some other
diff --git a/pkgs/development/libraries/libedit/freebsd_weak_ref.patch b/pkgs/development/libraries/libedit/freebsd_weak_ref.patch
new file mode 100644
index 00000000000..a4399593d63
--- /dev/null
+++ b/pkgs/development/libraries/libedit/freebsd_weak_ref.patch
@@ -0,0 +1,20 @@
+--- libedit-20110709-3.0/src/vi.c.old	2011-07-11 18:21:16.000000000 +0000
++++ libedit-20110709-3.0/src/vi.c	2011-07-11 18:24:29.000000000 +0000
+@@ -918,7 +918,7 @@
+  * NB: posix implies that we should enter insert mode, however
+  * this is against historical precedent...
+  */
+-#ifdef __weak_reference
++#if defined(__weak_reference) && defined(__NetBSD__)
+ __weakref_visible char *my_get_alias_text(const char *)
+     __weak_reference(get_alias_text);
+ #endif
+@@ -926,7 +926,7 @@
+ /*ARGSUSED*/
+ vi_alias(EditLine *el, Int c)
+ {
+-#ifdef __weak_reference
++#if defined(__weak_reference) && defined(__NetBSD__)
+ 	char alias_name[3];
+ 	char *alias_text;
+ 
diff --git a/pkgs/development/libraries/libffi/default.nix b/pkgs/development/libraries/libffi/default.nix
index 807fe54c27e..9db9b801952 100644
--- a/pkgs/development/libraries/libffi/default.nix
+++ b/pkgs/development/libraries/libffi/default.nix
@@ -12,13 +12,13 @@ stdenv.mkDerivation rec {
 
   configureFlags = [ "--with-gcc-arch=generic" ]; # no detection of -march= or -mtune=
 
-  doCheck = !stdenv.isDarwin; # until we solve dejagnu problems on darwin
+  doCheck = stdenv.isLinux; # until we solve dejagnu problems on darwin and expect on BSD
 
   dontStrip = stdenv ? cross; # Don't run the native `strip' when cross-compiling.
 
   postInstall =
     # Install headers in the right place.
-    '' ln -srv "$out/lib/"libffi*/include "$out/include"
+    '' ln -s${if stdenv.isFreeBSD then "" else "r"}v "$out/lib/"libffi*/include "$out/include"
     '';
 
   meta = {
diff --git a/pkgs/development/libraries/libgsf/default.nix b/pkgs/development/libraries/libgsf/default.nix
index 249e9291fa3..9253468b8df 100644
--- a/pkgs/development/libraries/libgsf/default.nix
+++ b/pkgs/development/libraries/libgsf/default.nix
@@ -1,6 +1,5 @@
 { fetchurl, stdenv, pkgconfig, intltool, gettext, glib, libxml2, zlib, bzip2
-, python, gdk_pixbuf, libiconvOrEmpty
-}:
+, python, gdk_pixbuf, libiconvOrEmpty, libintlOrEmpty }:
 
 with { inherit (stdenv.lib) optionals; };
 
@@ -8,28 +7,32 @@ stdenv.mkDerivation rec {
   name = "libgsf-1.14.26";
 
   src = fetchurl {
-    url = "mirror://gnome/sources/libgsf/1.14/${name}.tar.xz";
+    url    = "mirror://gnome/sources/libgsf/1.14/${name}.tar.xz";
     sha256 = "1md67l60li7rkma9m6mwchqz6b6q4xsfr38c6n056y6xm8jyf6c9";
   };
 
   nativeBuildInputs = [ pkgconfig intltool ];
+
   buildInputs = [ gettext bzip2 zlib python ];
 
-  propagatedBuildInputs = [ libxml2 glib gdk_pixbuf ] ++ libiconvOrEmpty;
+  propagatedBuildInputs = [ libxml2 glib gdk_pixbuf ]
+    ++ libiconvOrEmpty
+    ++ libintlOrEmpty;
 
   doCheck = true;
 
-  meta = {
-    homepage = http://www.gnome.org/projects/libgsf;
-    license = "LGPLv2";
+  NIX_LDFLAGS = stdenv.lib.optionalString stdenv.isDarwin "-lintl";
+
+  meta = with stdenv.lib; {
     description = "GNOME's Structured File Library";
+    homepage    = http://www.gnome.org/projects/libgsf;
+    license     = licenses.lgpl2Plus;
+    maintainers = with maintainers; [ lovek323 ];
+    platforms   = stdenv.lib.platforms.unix;
 
     longDescription = ''
       Libgsf aims to provide an efficient extensible I/O abstraction for
       dealing with different structured file formats.
     '';
-
-    maintainers = [ ];
-    platforms = stdenv.lib.platforms.linux;
   };
 }
diff --git a/pkgs/development/libraries/libical/default.nix b/pkgs/development/libraries/libical/default.nix
index 59d352cf730..dbb104546ad 100644
--- a/pkgs/development/libraries/libical/default.nix
+++ b/pkgs/development/libraries/libical/default.nix
@@ -1,11 +1,11 @@
-{stdenv, fetchsvn, perl, cmake}:
+{stdenv, fetchurl, perl, cmake}:
 
 stdenv.mkDerivation rec {
-  name = "libical-0.48-p20120623";
-  src = fetchsvn {
-    url = "https://freeassociation.svn.sourceforge.net/svnroot/freeassociation/trunk/libical";
-    rev = "1130";
-    sha256 = "56caf19abdf44807fda75a67ef0886319551e53c4e4ece4da4fc862e34c64e1a";
+  pName = "libical";
+  name = "${pName}-1.0";
+  src = fetchurl {
+    url = "mirror://sourceforge/freeassociation/${pName}/${name}/${name}.tar.gz";
+    sha256 = "1dy0drz9hy0sn2q3s2lp00jb9bis5gsm7n3m4zga49s9ir2b6fbw";
   };
   nativeBuildInputs = [ perl cmake ];
 
diff --git a/pkgs/development/libraries/libid3tag/default.nix b/pkgs/development/libraries/libid3tag/default.nix
index e137c939771..3b701b703c1 100644
--- a/pkgs/development/libraries/libid3tag/default.nix
+++ b/pkgs/development/libraries/libid3tag/default.nix
@@ -10,7 +10,7 @@ stdenv.mkDerivation {
   propagatedBuildInputs = [zlib];
 
   meta = {
-    description = "An ID3 tag manipulation library.";
+    description = "ID3 tag manipulation library";
     homepage = http://mad.sourceforge.net/;
     license = "GPL";
   };
diff --git a/pkgs/development/libraries/libimobiledevice/default.nix b/pkgs/development/libraries/libimobiledevice/default.nix
index a21d9bf7b5d..a05d176554e 100644
--- a/pkgs/development/libraries/libimobiledevice/default.nix
+++ b/pkgs/development/libraries/libimobiledevice/default.nix
@@ -2,7 +2,7 @@
   libtasn1, libplist, readline }:
 
 stdenv.mkDerivation rec {
-  name = "libimobiledevice-1.0.6";
+  name = "libimobiledevice-1.0.7";
 
   nativeBuildInputs = [ python libplist.swig pkgconfig ];
   buildInputs = [ readline ];
@@ -13,7 +13,7 @@ stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "${meta.homepage}/downloads/${name}.tar.bz2";
-    sha256 = "0r5gjprrnwgad5zsidn41w01gihramagcpl8cwi540qiwq43svqi";
+    sha256 = "15jznqc52yfwkbw19hgv3r1qd4gcymakbfkyizmr6v4n0sn27n0f";
   };
 
   meta = {
diff --git a/pkgs/development/libraries/libjson-rpc-cpp/default.nix b/pkgs/development/libraries/libjson-rpc-cpp/default.nix
new file mode 100644
index 00000000000..3dca6a04af7
--- /dev/null
+++ b/pkgs/development/libraries/libjson-rpc-cpp/default.nix
@@ -0,0 +1,28 @@
+{ stdenv, fetchurl, cmake, curl }:
+
+let
+  name = "libjson-rpc-cpp";
+  version = "0.2.1";
+in
+
+stdenv.mkDerivation {
+  name = "${name}-${version}";
+
+  src = fetchurl {
+    url = "https://github.com/cinemast/${name}/archive/${version}.tar.gz";
+    sha256 = "1pc9nn4968qkda8vr4f9dijn2fcldm8i0ymwmql29h4cl5ghdnpw";
+  };
+
+  buildInputs = [ cmake curl ];
+
+  NIX_LDFLAGS = "-lpthread";
+  enableParallelBuilding = true;
+  doCheck = true;
+
+  checkPhase = "LD_LIBRARY_PATH=out/ ctest";
+
+  meta = {
+    description = "C++ framework for json-rpc (json remote procedure call)";
+    platforms = stdenv.lib.platforms.linux;
+  };
+}
diff --git a/pkgs/development/libraries/liblockfile/default.nix b/pkgs/development/libraries/liblockfile/default.nix
index 2db90845f69..f991fdc2f29 100644
--- a/pkgs/development/libraries/liblockfile/default.nix
+++ b/pkgs/development/libraries/liblockfile/default.nix
@@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
 
 
   meta = {
-    description = "Liblockfile is a shared library with NFS-safe locking functions.";
+    description = "Shared library with NFS-safe locking functions";
     homepage = http://packages.debian.org/unstable/libs/liblockfile1;
     license = "GPLv2+";
 
diff --git a/pkgs/development/libraries/libmcrypt/default.nix b/pkgs/development/libraries/libmcrypt/default.nix
index 79019cbc489..afa66161731 100644
--- a/pkgs/development/libraries/libmcrypt/default.nix
+++ b/pkgs/development/libraries/libmcrypt/default.nix
@@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
     [ "--disable-posix-threads" ];
 
   meta = {
-    description = "MCrypt is a replacement for the old crypt() package and crypt(1) command, with extensions.";
+    description = "Replacement for the old crypt() package and crypt(1) command, with extensions";
     homepage = http://mcrypt.sourceforge.net;
     license = "GPL";
   };
diff --git a/pkgs/development/libraries/libmemcached/default.nix b/pkgs/development/libraries/libmemcached/default.nix
index 487b4de6cb7..b724f915150 100644
--- a/pkgs/development/libraries/libmemcached/default.nix
+++ b/pkgs/development/libraries/libmemcached/default.nix
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     homepage = http://libmemcached.org;
-    description = "libMemcached is an open source C/C++ client library and tools for the memcached server.";
+    description = "Open source C/C++ client library and tools for the memcached server";
     license = "BSD";
   };
 }
diff --git a/pkgs/development/libraries/libnet/default.nix b/pkgs/development/libraries/libnet/default.nix
new file mode 100644
index 00000000000..783739dda71
--- /dev/null
+++ b/pkgs/development/libraries/libnet/default.nix
@@ -0,0 +1,18 @@
+{ stdenv, fetchurl }:
+
+stdenv.mkDerivation rec {
+  name = "libnet-${version}";
+  version = "1.2-rc2";
+
+  src = fetchurl {
+    url = "mirror://sourceforge/libnet-dev/${name}.tar.gz";
+    sha256 = "1pc74p839a7wvhjdgy0scj7c4yarr6mqdqvj56k6sp8pkc763az7";
+  };
+
+  meta = {
+    homepage = http://github.com/sam-github/libnet;
+    description = "Portable framework for low-level network packet construction";
+    license = stdenv.lib.licenses.bsd3;
+    platforms = stdenv.lib.platforms.unix;
+  };
+}
diff --git a/pkgs/development/libraries/libnetfilter_conntrack/default.nix b/pkgs/development/libraries/libnetfilter_conntrack/default.nix
index 99624911077..8e689ed2568 100644
--- a/pkgs/development/libraries/libnetfilter_conntrack/default.nix
+++ b/pkgs/development/libraries/libnetfilter_conntrack/default.nix
@@ -11,7 +11,7 @@ stdenv.mkDerivation rec {
   buildInputs = [ pkgconfig libnfnetlink libmnl ];
 
   meta = {
-    description = "userspace library providing an API to the in-kernel connection tracking state table.";
+    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
diff --git a/pkgs/development/libraries/libnfnetlink/default.nix b/pkgs/development/libraries/libnfnetlink/default.nix
index 07a182dff10..3bb698e9bf6 100644
--- a/pkgs/development/libraries/libnfnetlink/default.nix
+++ b/pkgs/development/libraries/libnfnetlink/default.nix
@@ -9,7 +9,7 @@ stdenv.mkDerivation rec {
   };
 
   meta = {
-    description = "low-level library for netfilter related kernel/userspace communication.";
+    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
diff --git a/pkgs/development/libraries/liboop/default.nix b/pkgs/development/libraries/liboop/default.nix
index 20793eb3140..a963288e869 100644
--- a/pkgs/development/libraries/liboop/default.nix
+++ b/pkgs/development/libraries/liboop/default.nix
@@ -9,7 +9,7 @@ stdenv.mkDerivation {
   };
 
   meta = {
-    description = "`liboop', an event loop library.";
+    description = "Event loop library";
     homepage = http://liboop.ofb.net/;
     license = "LGPL";
   };
diff --git a/pkgs/development/libraries/libpng/default.nix b/pkgs/development/libraries/libpng/default.nix
index e602c910fc7..09cacdec09d 100644
--- a/pkgs/development/libraries/libpng/default.nix
+++ b/pkgs/development/libraries/libpng/default.nix
@@ -3,10 +3,10 @@
 assert zlib != null;
 
 let
-  version = "1.6.3";
-  sha256 = "0i8gz8mbkygc0ny7aa2i2wiavysxy6fdaphl52l49fb3hv9w1v65";
-  patch_src = fetchurl {
-    url = "mirror://sourceforge/libpng-apng/libpng-${version}-apng.patch.gz";
+  version = "1.6.4";
+  sha256 = "15pqany43q2hzaxqn84p9dba071xmvqi8h1bhnjxnxdf3g64zayg";
+  patch_src = fetchurl { # not released yet, hopefully OK
+    url = "mirror://sourceforge/libpng-apng/libpng-1.6.3-apng.patch.gz";
     sha256 = "0fjnb6cgbj2c7ggl0qzcnliml2ylrjxzigp89vw0hxq221k5mlsx";
   };
   whenPatched = stdenv.lib.optionalString apngSupport;
@@ -31,10 +31,11 @@ in stdenv.mkDerivation rec {
 
   passthru = { inherit zlib; };
 
-  meta = {
+  meta = with stdenv.lib; {
     description = "The official reference implementation for the PNG file format" + whenPatched " with animation patch";
     homepage = http://www.libpng.org/pub/png/libpng.html;
     license = "free-non-copyleft"; # http://www.libpng.org/pub/png/src/libpng-LICENSE.txt
-    platforms = stdenv.lib.platforms.all;
+    platforms = platforms.all;
+    maintainers = [ maintainers.vcunat ];
   };
 }
diff --git a/pkgs/development/libraries/librdf/default.nix b/pkgs/development/libraries/librdf/default.nix
index 21c952b7fb8..9b51f694ab3 100644
--- a/pkgs/development/libraries/librdf/default.nix
+++ b/pkgs/development/libraries/librdf/default.nix
@@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
   #doCheck = true; # would need swh_lv2 and some path patching
 
   meta = {
-    description = "A lightweight RDF library with special support for LADSPA plugins.";
+    description = "Lightweight RDF library with special support for LADSPA plugins";
     homepage = http://sourceforge.net/projects/lrdf/;
     license = "GPLv2";
     maintainers = [ stdenv.lib.maintainers.marcweber ];
diff --git a/pkgs/development/libraries/librsvg/default.nix b/pkgs/development/libraries/librsvg/default.nix
index 13385dfb65c..15e07af9f1e 100644
--- a/pkgs/development/libraries/librsvg/default.nix
+++ b/pkgs/development/libraries/librsvg/default.nix
@@ -1,5 +1,5 @@
-{ stdenv, fetchurl, pkgconfig, glib, gdk_pixbuf, pango, cairo
-, libxml2, libgsf, bzip2, libcroco
+{ stdenv, fetchurl, pkgconfig, glib, gdk_pixbuf, pango, cairo, libxml2, libgsf
+, bzip2, libcroco
 , gtk2 ? null, gtk3 ? null
 , gobjectIntrospection ? null, enableIntrospection ? false }:
 
@@ -9,15 +9,22 @@ stdenv.mkDerivation rec {
   name = "librsvg-2.36.4";
 
   src = fetchurl {
-    url = "mirror://gnome/sources/librsvg/2.36/${name}.tar.xz";
+    url    = "mirror://gnome/sources/librsvg/2.36/${name}.tar.xz";
     sha256 = "1hp6325gdkzx8yqn2d2r915ak3k6hfshjjh0sc54z3vr0i99688h";
   };
-  buildInputs = [ libxml2 libgsf bzip2 libcroco pango cairo ]
+
+  buildInputs = [ libxml2 libgsf bzip2 libcroco pango ]
     ++ stdenv.lib.optional enableIntrospection [ gobjectIntrospection ];
-  propagatedBuildInputs = [ glib gdk_pixbuf gtk2 gtk3 ];
+
+  propagatedBuildInputs = [ glib gdk_pixbuf cairo gtk2 gtk3 ];
+
   nativeBuildInputs = [ pkgconfig ];
 
-  configureFlags = ["--enable-introspection=auto"];
+  configureFlags = [ "--enable-introspection=auto" ]
+    ++ stdenv.lib.optional stdenv.isDarwin "--disable-Bsymbolic";
+
+  NIX_CFLAGS_COMPILE
+    = stdenv.lib.optionalString stdenv.isDarwin "-I${cairo}/include/cairo";
 
   # It wants to add loaders and update the loaders.cache in gdk-pixbuf
   # Patching the Makefiles to it creates rsvg specific loaders and the
diff --git a/pkgs/development/libraries/libsodium/default.nix b/pkgs/development/libraries/libsodium/default.nix
new file mode 100644
index 00000000000..e8124c2643a
--- /dev/null
+++ b/pkgs/development/libraries/libsodium/default.nix
@@ -0,0 +1,21 @@
+{ stdenv, fetchurl }:
+
+stdenv.mkDerivation rec {
+  name = "libsodium-0.4.3";
+
+  src = fetchurl {
+    url = "https://download.libsodium.org/libsodium/releases/${name}.tar.gz";
+    sha256 = "0hk0zca1kpj6xlc2j2qx9qy7287pi0896frmxq5d7qmcwsdf372r";
+  };
+
+  NIX_LDFLAGS = "-lssp";
+
+  doCheck = true;
+
+  meta = {
+    description = "Version of NaCl with harwdare tests at runtime, not build time";
+    license = "ISC";
+    maintainers = with stdenv.lib.maintainers; [ viric ];
+    platforms = stdenv.lib.platforms.all;
+  };
+}
diff --git a/pkgs/development/libraries/libsoup/2.40.nix b/pkgs/development/libraries/libsoup/2.40.nix
new file mode 100644
index 00000000000..ca37ceb941c
--- /dev/null
+++ b/pkgs/development/libraries/libsoup/2.40.nix
@@ -0,0 +1,32 @@
+{ stdenv, fetchurl, pkgconfig, glib, libxml2, sqlite, intltool, python
+, gnomeSupport ? true, libgnome_keyring, glib_networking
+}:
+
+stdenv.mkDerivation {
+  name = "libsoup-2.44.1";
+
+  src = fetchurl {
+    url = mirror://gnome/sources/libsoup/2.44/libsoup-2.44.1.tar.xz;
+    sha256 = "07acjwvik3gagcsdjzi85g44ga4pd3nh4ww6722bfzjzvlqw6cn5";
+  };
+
+
+  preConfigure = ''
+    substituteInPlace libsoup/tld-parser.py \
+      --replace "!/usr/bin/env python" "!${python}/bin/${python.executable}"
+  '';
+  buildInputs = [ pkgconfig intltool python ];
+  nativeBuildInputs = [ pkgconfig ];
+  propagatedBuildInputs = [ glib libxml2 sqlite ]
+    ++ stdenv.lib.optionals gnomeSupport [ libgnome_keyring ];
+  passthru.propagatedUserEnvPackages = [ glib_networking ];
+
+  # glib_networking is a runtime dependency, not a compile-time dependency
+  configureFlags = "--disable-tls-check";
+
+  NIX_CFLAGS_COMPILE = stdenv.lib.optionalString stdenv.isDarwin "-lintl";
+
+  meta = {
+#    inherit (glib.meta) maintainers platforms;
+  };
+}
diff --git a/pkgs/development/libraries/libtoxcore/default.nix b/pkgs/development/libraries/libtoxcore/default.nix
new file mode 100644
index 00000000000..0098ddb9d77
--- /dev/null
+++ b/pkgs/development/libraries/libtoxcore/default.nix
@@ -0,0 +1,36 @@
+{ stdenv, fetchurl, autoconf, libtool, automake, libsodium, ncurses
+, libconfig, pkgconfig }:
+
+let
+  version = "31f5d7a8ab";
+  date = "20131011";
+in
+stdenv.mkDerivation rec {
+  name = "tox-core-${date}-${version}";
+
+  src = fetchurl {
+    url = "https://github.com/irungentoo/ProjectTox-Core/tarball/${version}";
+    name = "${name}.tar.gz";
+    sha256 = "0frz8ylvi33i7zkiz3hp28ylqg4c3ffrbc2m3ibb4zv9rwfzf77r";
+  };
+
+  preConfigure = ''
+    autoreconf -i
+  '';
+
+  configureFlags = [ "--with-libsodium-headers=${libsodium}/include"
+    "--with-libsodium-libs=${libsodium}/lib" 
+    "--enable-ntox" ];
+
+  buildInputs = [ autoconf libtool automake libsodium ncurses libconfig
+    pkgconfig ];
+
+  doCheck = true;
+
+  meta = {
+    description = "P2P FOSS instant messaging application aimed to replace Skype with crypto";
+    license = "GPLv3+";
+    maintainers = with stdenv.lib.maintainers; [ viric ];
+    platforms = stdenv.lib.platforms.all;
+  };
+}
diff --git a/pkgs/development/libraries/libtxc_dxtn/default.nix b/pkgs/development/libraries/libtxc_dxtn/default.nix
index 9cf8decf4c8..33e01f86dac 100644
--- a/pkgs/development/libraries/libtxc_dxtn/default.nix
+++ b/pkgs/development/libraries/libtxc_dxtn/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, autoconf, automake, libtool, mesa }:
+{ stdenv, fetchurl, autoreconfHook, mesa }:
 
 let version = "1.0.1"; in
 
@@ -6,15 +6,14 @@ stdenv.mkDerivation rec {
   name = "libtxc_dxtn-${version}";
 
   src = fetchurl {
-    url = "http://cgit.freedesktop.org/~mareko/${name}.tar.gz";
-    sha256 = "0g6lymik9cs7nbzigwzaf49fnhhfsvjanhg92wykw7rfq9zvkhvv";
+    url = "http://people.freedesktop.org/~cbrill/libtxc_dxtn/${name}.tar.bz2";
+    sha256 = "0q5fjaknl7s0z206dd8nzk9bdh8g4p23bz7784zrllnarl90saa5";
   };
 
-  buildInputs = [ autoconf automake libtool mesa ];
-
-  preConfigure = "autoreconf -vfi";
+  buildInputs = [ autoreconfHook mesa ];
 
   meta = {
     homepage = http://dri.freedesktop.org/wiki/S3TC;
+    repositories.git = git://people.freedesktop.org/~mareko/libtxc_dxtn;
   };
 }
diff --git a/pkgs/development/libraries/libunibreak/default.nix b/pkgs/development/libraries/libunibreak/default.nix
new file mode 100644
index 00000000000..e5e7f5ff0ae
--- /dev/null
+++ b/pkgs/development/libraries/libunibreak/default.nix
@@ -0,0 +1,18 @@
+{ stdenv, fetchurl }:
+
+stdenv.mkDerivation rec {
+  name = "libunibreak-${version}";
+  version = "1.0";
+
+  src = fetchurl {
+    url = "mirror://sourceforge/vimgadgets/libunibreak/${version}/${name}.tar.gz";
+    sha256 = "0rsivyxnp9nfngf83fiy4v58s5mgdhcjz75nv5nyhxwxnjq35d25";
+  };
+
+  meta = {
+    homepage = http://vimgadgets.sourceforge.net/libunibreak/;
+    description = "A library implementing a line breaking algorithm as described in Unicode 6.0.0 Standard";
+    license = "ZLIB";
+    maintainer = [ stdenv.lib.maintainers.coroa ];
+  };
+}
diff --git a/pkgs/development/libraries/libusb1/default.nix b/pkgs/development/libraries/libusb1/default.nix
index c01baa2fd0f..9a6a303fe32 100644
--- a/pkgs/development/libraries/libusb1/default.nix
+++ b/pkgs/development/libraries/libusb1/default.nix
@@ -11,6 +11,8 @@ stdenv.mkDerivation rec {
   buildInputs = [ pkgconfig ];
   propagatedBuildInputs = stdenv.lib.optional (stdenv.isLinux) udev;
 
+  NIX_LDFLAGS = stdenv.lib.optionalString stdenv.isLinux "-lgcc_s";
+
   meta = {
     homepage = http://www.libusb.org;
     description = "User-space USB library";
diff --git a/pkgs/development/libraries/libvirt/default.nix b/pkgs/development/libraries/libvirt/default.nix
index 06ead3ca23f..ce81c1b2e8c 100644
--- a/pkgs/development/libraries/libvirt/default.nix
+++ b/pkgs/development/libraries/libvirt/default.nix
@@ -1,23 +1,27 @@
 { stdenv, fetchurl, pkgconfig, libxml2, gnutls, devicemapper, perl, python
 , iproute, iptables, readline, lvm2, utillinux, udev, libpciaccess, gettext
-, libtasn1, ebtables, libgcrypt, yajl, makeWrapper, pmutils
+, libtasn1, ebtables, libgcrypt, yajl, makeWrapper, pmutils, libcap_ng
 }:
 
-let version = "1.1.1"; in
+let version = "1.1.2"; in
 
 stdenv.mkDerivation {
   name = "libvirt-${version}";
 
   src = fetchurl {
     url = "http://libvirt.org/sources/libvirt-${version}.tar.gz";
-    sha256 = "1hi27d5pld925g1azx8jq0wv557wpkd6xrq6lzm91cdr2lg1wvyw";
+    md5 = "1835bbfa492099bce12e2934870e5611";
   };
 
   buildInputs =
     [ pkgconfig libxml2 gnutls devicemapper perl python readline lvm2
       utillinux udev libpciaccess gettext libtasn1 libgcrypt yajl makeWrapper
+      libcap_ng
     ];
 
+  # see http://www.mail-archive.com/libvir-list@redhat.com/msg83693.html
+  patches = [ ./securtyfs_userns.patch ];
+
   preConfigure =
     ''
       PATH=${iproute}/sbin:${iptables}/sbin:${ebtables}/sbin:${lvm2}/sbin:${udev}/sbin:$PATH
diff --git a/pkgs/development/libraries/libvirt/securtyfs_userns.patch b/pkgs/development/libraries/libvirt/securtyfs_userns.patch
new file mode 100644
index 00000000000..2723334f94a
--- /dev/null
+++ b/pkgs/development/libraries/libvirt/securtyfs_userns.patch
@@ -0,0 +1,30 @@
+--- a/src/lxc/lxc_container.c
++++ b/src/lxc/lxc_container.c
+@@ -750,7 +750,7 @@ err:
+ }
+ 
+ 
+-static int lxcContainerMountBasicFS(void)
++static int lxcContainerMountBasicFS(bool userns_enabled)
+ {
+     const struct {
+         const char *src;
+@@ -801,6 +801,9 @@ static int lxcContainerMountBasicFS(void)
+             continue;
+ #endif
+ 
++        if (STREQ(mnts[i].src, "securityfs") && userns_enabled)
++            continue;
++
+         if (virFileMakePath(mnts[i].dst) < 0) {
+             virReportSystemError(errno,
+                                  _("Failed to mkdir %s"),
+@@ -1530,7 +1533,7 @@ static int lxcContainerSetupPivotRoot(virDomainDefPtr vmDef,
+         goto cleanup;
+ 
+     /* Mounts the core /proc, /sys, etc filesystems */
+-    if (lxcContainerMountBasicFS() < 0)
++    if (lxcContainerMountBasicFS(vmDef->idmap.nuidmap) < 0)
+         goto cleanup;
+ 
+     /* Mounts /proc/meminfo etc sysinfo */
diff --git a/pkgs/development/libraries/libvncserver/default.nix b/pkgs/development/libraries/libvncserver/default.nix
index 7856183e5e9..da9e1dc3148 100644
--- a/pkgs/development/libraries/libvncserver/default.nix
+++ b/pkgs/development/libraries/libvncserver/default.nix
@@ -1,29 +1,41 @@
-args :  
-let 
-  lib = args.lib;
-  fetchurl = args.fetchurl;
+{stdenv, fetchurl,
+  libtool, libjpeg, openssl, libX11, libXdamage, xproto, damageproto, 
+  xextproto, libXext, fixesproto, libXfixes, xineramaproto, libXinerama, 
+  libXrandr, randrproto, libXtst, zlib
+}:
 
-  version = lib.attrByPath ["version"] "0.9.9" args; 
-  buildInputs = with args; [
+assert stdenv.isLinux;
+
+let
+  s = # Generated upstream information
+  rec {
+    baseName="libvncserver";
+    version="0.9.9";
+    name="${baseName}-${version}";
+    hash="1y83z31wbjivbxs60kj8a8mmjmdkgxlvr2x15yz95yy24lshs1ng";
+    url="mirror://sourceforge/project/libvncserver/libvncserver/0.9.9/LibVNCServer-0.9.9.tar.gz";
+    sha256="1y83z31wbjivbxs60kj8a8mmjmdkgxlvr2x15yz95yy24lshs1ng";
+  };
+  buildInputs = [
     libtool libjpeg openssl libX11 libXdamage xproto damageproto
     xextproto libXext fixesproto libXfixes xineramaproto libXinerama
     libXrandr randrproto libXtst zlib
   ];
 in
-rec {
+stdenv.mkDerivation {
+  inherit (s) name version;
+  inherit buildInputs;
   src = fetchurl {
-    url = "mirror://sourceforge/libvncserver/LibVNCServer-${version}.tar.gz";
-    sha256 = "1y83z31wbjivbxs60kj8a8mmjmdkgxlvr2x15yz95yy24lshs1ng";
+    inherit (s) url sha256;
   };
-
-  inherit buildInputs;
-  configureFlags = [];
-
-  /* doConfigure should be specified separately */
-  phaseNames = ["doConfigure" "doMakeInstall"];
-      
-  name = "libvncserver-" + version;
+  preConfigure = ''
+    sed -e 's@/usr/include/linux@${stdenv.gcc.libc}/include/linux@g' -i configure
+  '';
   meta = {
-    description = "VNC server library";
+    inherit (s) version;
+    description =  "VNC server library";
+    license = stdenv.lib.licenses.gpl2Plus ;
+    maintainers = [stdenv.lib.maintainers.raskin];
+    platforms = stdenv.lib.platforms.linux;
   };
 }
diff --git a/pkgs/development/libraries/libvncserver/default.upstream b/pkgs/development/libraries/libvncserver/default.upstream
new file mode 100644
index 00000000000..eae48197439
--- /dev/null
+++ b/pkgs/development/libraries/libvncserver/default.upstream
@@ -0,0 +1,4 @@
+url http://sourceforge.net/projects/libvncserver/files/libvncserver/
+SF_version_dir
+version_link '[.]tar[.][bgx]z[0-9]*/download$'
+SF_redirect
diff --git a/pkgs/development/libraries/libxtc_dxtn/default.nix b/pkgs/development/libraries/libxtc_dxtn/default.nix
deleted file mode 100644
index 1f94bcbef99..00000000000
--- a/pkgs/development/libraries/libxtc_dxtn/default.nix
+++ /dev/null
@@ -1,12 +0,0 @@
-{ stdenv, fetchurl, mesa }:
-
-stdenv.mkDerivation rec {
-  name = "libtxc_dxtn-1.0.1";
-
-  src = fetchurl {
-    url = "http://people.freedesktop.org/~cbrill/libtxc_dxtn/${name}.tar.bz2";
-    sha256 = "0q5fjaknl7s0z206dd8nzk9bdh8g4p23bz7784zrllnarl90saa5";
-  };
-
-  NIX_CFLAGS_COMPILE = "-I ${mesa}/include";
-}
diff --git a/pkgs/development/libraries/libyaml-cpp/0.3.x.nix b/pkgs/development/libraries/libyaml-cpp/0.3.x.nix
new file mode 100644
index 00000000000..4b0acd83fc3
--- /dev/null
+++ b/pkgs/development/libraries/libyaml-cpp/0.3.x.nix
@@ -0,0 +1,18 @@
+{stdenv, fetchurl, cmake, boostHeaders}:
+
+stdenv.mkDerivation {
+  name = "libyaml-cpp-0.3.0";
+
+  src = fetchurl {
+    url = http://yaml-cpp.googlecode.com/files/yaml-cpp-0.3.0.tar.gz;
+    sha256 = "10kv25zgq96ybxc6c19lzpax1xi5lpxrdqa9x52nffsql6skil1c";
+  };
+
+  buildInputs = [ cmake boostHeaders ];
+
+  meta = {
+    homepage = http://code.google.com/p/yaml-cpp/;
+    description = "A YAML parser and emitter for C++";
+    license = "MIT";
+  };
+}
diff --git a/pkgs/development/libraries/libyaml-cpp/default.nix b/pkgs/development/libraries/libyaml-cpp/default.nix
new file mode 100644
index 00000000000..09860522ef4
--- /dev/null
+++ b/pkgs/development/libraries/libyaml-cpp/default.nix
@@ -0,0 +1,18 @@
+{stdenv, fetchurl, cmake, boostHeaders}:
+
+stdenv.mkDerivation {
+  name = "libyaml-cpp-0.5.1";
+
+  src = fetchurl {
+    url = http://yaml-cpp.googlecode.com/files/yaml-cpp-0.5.1.tar.gz;
+    sha256 = "01kg0h8ksp162kdhyzn67vnlxpj5zjbks84sh50pv61xni990z1y";
+  };
+
+  buildInputs = [ cmake boostHeaders ];
+
+  meta = {
+    homepage = http://code.google.com/p/yaml-cpp/;
+    description = "A YAML parser and emitter for C++";
+    license = "MIT";
+  };
+}
diff --git a/pkgs/development/libraries/mesa/default.nix b/pkgs/development/libraries/mesa/default.nix
index 26a3f139d02..137c84593f4 100644
--- a/pkgs/development/libraries/mesa/default.nix
+++ b/pkgs/development/libraries/mesa/default.nix
@@ -24,6 +24,7 @@ else
 
 let
   version = "9.1.6";
+  # this is the default search path for DRI drivers (note: X server introduces an overriding env var)
   driverLink = "/run/opengl-driver" + stdenv.lib.optionalString stdenv.isi686 "-32";
 in
 stdenv.mkDerivation {
@@ -130,6 +131,8 @@ stdenv.mkDerivation {
         patchelf --set-rpath "$(patchelf --print-rpath $lib):$drivers/lib" "$lib"
       fi
     done
+  '' + /* set the default search path for DRI drivers; used e.g. by X server */ ''
+    substituteInPlace "$out/lib/pkgconfig/dri.pc" --replace '$(drivers)' "${driverLink}"
   '';
   #ToDo: @vcunat isn't sure if drirc will be found when in $out/etc/, but it doesn't seem important ATM
 
diff --git a/pkgs/development/libraries/mlt/default.nix b/pkgs/development/libraries/mlt/default.nix
index 4d17184a608..1d21e03efa6 100644
--- a/pkgs/development/libraries/mlt/default.nix
+++ b/pkgs/development/libraries/mlt/default.nix
@@ -3,11 +3,11 @@
 
 stdenv.mkDerivation rec {
   name = "mlt-${version}";
-  version = "0.8.8";
+  version = "0.9.0";
 
   src = fetchurl {
     url = "mirror://sourceforge/mlt/${name}.tar.gz";
-    sha256 = "0m4nzxli1pl8w59m4iwwhpmr1xdz7xfknmbl3a0mkkd1jzdiq3nc";
+    sha256 = "1j8wbkwpa6k5anyf4nvf71l8251d7clzj6v09jl3vvfakaf6l37j";
   };
 
   buildInputs =
diff --git a/pkgs/development/libraries/nspr/default.nix b/pkgs/development/libraries/nspr/default.nix
index 1aef55c9b2c..80368031349 100644
--- a/pkgs/development/libraries/nspr/default.nix
+++ b/pkgs/development/libraries/nspr/default.nix
@@ -1,13 +1,13 @@
 { stdenv, fetchurl }:
 
-let version = "4.10"; in
+let version = "4.10.1"; in
 
 stdenv.mkDerivation {
   name = "nspr-${version}";
 
   src = fetchurl {
     url = "http://ftp.mozilla.org/pub/mozilla.org/nspr/releases/v${version}/src/nspr-${version}.tar.gz";
-    sha1 = "10dbf68c07497dab30be09db526931c885d5a7e9";
+    sha1 = "bd1cdf5e7e107846ffe431c5c62b81a560e8c3f7";
   };
 
   preConfigure = "cd nspr";
diff --git a/pkgs/development/libraries/nss/default.nix b/pkgs/development/libraries/nss/default.nix
index de980d718f3..49f3754bc14 100644
--- a/pkgs/development/libraries/nss/default.nix
+++ b/pkgs/development/libraries/nss/default.nix
@@ -17,11 +17,11 @@ let
 
 in stdenv.mkDerivation rec {
   name = "nss-${version}";
-  version = "3.15.1";
+  version = "3.15.2";
 
   src = fetchurl {
-    url = "http://ftp.mozilla.org/pub/mozilla.org/security/nss/releases/NSS_3_15_1_RTM/src/${name}.tar.gz";
-    sha1 = "1aa7c0ff8af7fb2c8b6e4886ae2291f4bfe0d5c0";
+    url = "http://ftp.mozilla.org/pub/mozilla.org/security/nss/releases/NSS_3_15_2_RTM/src/${name}.tar.gz";
+    sha1 = "2d900c296bf11deabbf833ebd6ecdea549c97a5f";
   };
 
   buildInputs = [ nspr perl zlib sqlite ];
diff --git a/pkgs/development/libraries/oniguruma/default.nix b/pkgs/development/libraries/oniguruma/default.nix
index 984b84085fe..684d6475c63 100644
--- a/pkgs/development/libraries/oniguruma/default.nix
+++ b/pkgs/development/libraries/oniguruma/default.nix
@@ -10,7 +10,7 @@ stdenv.mkDerivation rec {
   
   meta = {
     homepage = http://www.geocities.jp/kosako3/oniguruma/;
-    description = "Oniguruma is a regular expressions library.";
+    description = "Oniguruma regular expressions library";
     license = "BSD";
   };
 }
diff --git a/pkgs/development/libraries/openjpeg/default.nix b/pkgs/development/libraries/openjpeg/default.nix
index a47cacd62bc..75999f18d62 100644
--- a/pkgs/development/libraries/openjpeg/default.nix
+++ b/pkgs/development/libraries/openjpeg/default.nix
@@ -1,16 +1,17 @@
-{ stdenv, fetchurl, pkgconfig, libpng, libtiff, lcms, glib/*passthru only*/ }:
+{ stdenv, fetchurl, pkgconfig, libpng, libtiff, lcms, cmake, glib/*passthru only*/ }:
 
 stdenv.mkDerivation rec {
-  name = "openjpeg-1.5.1";
+  name = "openjpeg-2.0.0";
   passthru = {
-    incDir = "openjpeg-1.5";
+    incDir = "openjpeg-2.0";
   };
 
   src = fetchurl {
     url = "http://openjpeg.googlecode.com/files/${name}.tar.gz";
-    sha256 = "13dbyf3jwr4h2dn1k11zph3jgx17z7d66xmi640mbsf8l6bk1yvc";
+    sha1 = "0af78ab2283b43421458f80373422d8029a9f7a7";
   };
 
+  buildInputs = [ cmake ];
   nativebuildInputs = [ pkgconfig ];
   propagatedBuildInputs = [ libpng libtiff lcms ]; # in closure anyway
 
diff --git a/pkgs/development/libraries/phonon-backend-vlc/default.nix b/pkgs/development/libraries/phonon-backend-vlc/default.nix
index 97e778cc1f5..257c80f0b11 100644
--- a/pkgs/development/libraries/phonon-backend-vlc/default.nix
+++ b/pkgs/development/libraries/phonon-backend-vlc/default.nix
@@ -20,7 +20,7 @@ stdenv.mkDerivation {
 
   meta = {
     description = "VideoLAN backend for Phonon multimedia framework";
-    inherit (qt4.meta) platforms;
+    platforms = stdenv.lib.platforms.linux;
     maintainers = [ stdenv.lib.maintainers.urkud ];
   };
 }
diff --git a/pkgs/development/libraries/polkit/default.nix b/pkgs/development/libraries/polkit/default.nix
index 788b6d6d32b..9d1f0d18c1a 100644
--- a/pkgs/development/libraries/polkit/default.nix
+++ b/pkgs/development/libraries/polkit/default.nix
@@ -1,6 +1,6 @@
 { stdenv, fetchurl, pkgconfig, glib, expat, pam, intltool, gettext
 , gobjectIntrospection
-, useSystemd ? true, systemd }:
+, useSystemd ? stdenv.isLinux, systemd }:
 
 let
 
diff --git a/pkgs/development/libraries/poppler/default.nix b/pkgs/development/libraries/poppler/default.nix
index 6b8fb898d90..9cd094855d2 100644
--- a/pkgs/development/libraries/poppler/default.nix
+++ b/pkgs/development/libraries/poppler/default.nix
@@ -54,7 +54,6 @@ let
     };
   } merge ]); # poppler_drv
 
-in rec {
   /* We always use cairo in poppler, so we always depend on glib,
      so we always build the glib wrapper (~350kB).
      We also always build the cpp wrapper (<100kB).
@@ -69,4 +68,5 @@ in rec {
     NIX_LDFLAGS = "-lpoppler";
     postConfigure = "cd qt4";
   };
-}
+
+in { inherit poppler_glib poppler_qt4; } // poppler_glib
diff --git a/pkgs/development/libraries/portmidi/default.nix b/pkgs/development/libraries/portmidi/default.nix
new file mode 100644
index 00000000000..19eb390388b
--- /dev/null
+++ b/pkgs/development/libraries/portmidi/default.nix
@@ -0,0 +1,54 @@
+{ stdenv, fetchurl, unzip, cmake, /*openjdk,*/ alsaLib }:
+
+stdenv.mkDerivation rec {
+  name = "portmidi-${version}";
+  version = "217";
+
+  src = fetchurl {
+    url = "mirror://sourceforge/portmedia/portmidi-src-${version}.zip";
+    sha256 = "03rfsk7z6rdahq2ihy5k13qjzgx757f75yqka88v3gc0pn9ais88";
+  };
+
+  cmakeFlags = let
+    #base = "${openjdk}/jre/lib/${openjdk.architecture}";
+  in [
+    "-DPORTMIDI_ENABLE_JAVA=0"
+    /* TODO: Fix Java support.
+    "-DJAVA_AWT_LIBRARY=${base}/libawt.so"
+    "-DJAVA_JVM_LIBRARY=${base}/server/libjvm.so"
+    */
+    "-DCMAKE_ARCHIVE_OUTPUT_DIRECTORY=Release"
+    "-DCMAKE_LIBRARY_OUTPUT_DIRECTORY=Release"
+    "-DCMAKE_RUNTIME_OUTPUT_DIRECTORY=Release"
+  ];
+
+  # XXX: This is to deactivate Java support.
+  patches = stdenv.lib.singleton (fetchurl rec {
+    url = "https://raw.github.com/Rogentos/argent-gentoo/master/media-libs/"
+        + "portmidi/files/portmidi-217-cmake-libdir-java-opts.patch";
+    sha256 = "1jbjwan61iqq9fqfpq2a4fd30k3clg7a6j0gfgsw87r8c76kqf6h";
+  });
+
+  postPatch = ''
+    sed -i -e 's|/usr/local/|'"$out"'|' -e 's|/usr/share/|'"$out"'/share/|' \
+      pm_common/CMakeLists.txt pm_dylib/CMakeLists.txt pm_java/CMakeLists.txt
+    sed -i \
+        -e 's|-classpath .|-classpath '"$(pwd)"'/pm_java|' \
+        -e 's|pmdefaults/|'"$(pwd)"'/pm_java/&|g' \
+        -e 's|jportmidi/|'"$(pwd)"'/pm_java/&|g' \
+        -e 's/WORKING_DIRECTORY pm_java//' \
+        pm_java/CMakeLists.txt
+  '';
+
+  postInstall = ''
+    ln -s libportmidi.so "$out/lib/libporttime.so"
+  '';
+
+  buildInputs = [ unzip cmake /*openjdk*/ alsaLib ];
+
+  meta = {
+    homepage = "http://portmedia.sourceforge.net/portmidi/";
+    description = "Platform independent library for MIDI I/O";
+    license = stdenv.lib.licenses.mit;
+  };
+}
diff --git a/pkgs/development/libraries/qhull/default.nix b/pkgs/development/libraries/qhull/default.nix
index b81dbda1586..a82acd2745d 100644
--- a/pkgs/development/libraries/qhull/default.nix
+++ b/pkgs/development/libraries/qhull/default.nix
@@ -14,7 +14,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     homepage = http://www.qhull.org/;
-    description = "Computes the convex hull, Delaunay triangulation, ...";
+    description = "Computes the convex hull, Delaunay triangulation, Voronoi diagram and more";
     license = "free";
   };
 }
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 311ed43729e..59151d35326 100644
--- a/pkgs/development/libraries/qt-4.x/4.8/default.nix
+++ b/pkgs/development/libraries/qt-4.x/4.8/default.nix
@@ -1,10 +1,7 @@
-{ stdenv, fetchurl, substituteAll
-, libXrender, libXinerama, libXcursor, libXmu , libXv, libXext
-, libXfixes, libXrandr, libSM, freetype, fontconfig
-, zlib, libjpeg, libpng, libmng, which, mesaSupported, mesa, mesa_glu, openssl, dbus, cups, pkgconfig
-, libtiff, glib, icu
-, mysql, postgresql, sqlite
-, perl, coreutils, libXi
+{ stdenv, fetchurl, substituteAll, libXrender, libXinerama, libXcursor, libXmu, libXv, libXext
+, libXfixes, libXrandr, libSM, freetype, fontconfig, zlib, libjpeg, libpng
+, libmng, which, mesaSupported, mesa, mesa_glu, openssl, dbus, cups, pkgconfig
+, libtiff, glib, icu, mysql, postgresql, sqlite, perl, coreutils, libXi
 , buildMultimedia ? stdenv.isLinux, alsaLib, gstreamer, gst_plugins_base
 , buildWebkit ? stdenv.isLinux
 , flashplayerFix ? false, gdk_pixbuf
@@ -40,6 +37,11 @@ stdenv.mkDerivation rec {
     substituteInPlace configure --replace /bin/pwd pwd
     substituteInPlace src/corelib/global/global.pri --replace /bin/ls ${coreutils}/bin/ls
     sed -e 's@/\(usr\|opt\)/@/var/empty/@g' -i config.tests/*/*.test -i mkspecs/*/*.conf
+  '' + stdenv.lib.optionalString stdenv.isDarwin ''
+    # remove impure reference to /usr/lib/libstdc++.6.dylib
+    # there might be more references, but this is the only one I could find
+    substituteInPlace tools/macdeployqt/tests/tst_deployment_mac.cpp \
+      --replace /usr/lib/libstdc++.6.dylib "${stdenv.gcc}/lib/libstdc++.6.dylib"
   '';
 
   patches =
diff --git a/pkgs/development/libraries/qwt/default.nix b/pkgs/development/libraries/qwt/default.nix
index 814550d2b18..fe73e0beabd 100644
--- a/pkgs/development/libraries/qwt/default.nix
+++ b/pkgs/development/libraries/qwt/default.nix
@@ -17,4 +17,13 @@ stdenv.mkDerivation rec {
     '';
 
   configurePhase = ''qmake INSTALLBASE=$out -after doc.path=$out/share/doc/${name} -r'';
+
+  meta = with stdenv.lib; {
+    description = "Qt widgets for technical applications";
+    homepage = http://qwt.sourceforge.net/;
+    # LGPL 2.1 plus a few exceptions (more liberal)
+    license = "Qwt License, Version 1.0";
+    platforms = platforms.linux;
+    maintainers = [ maintainers.bjornfor ];
+  };
 }
diff --git a/pkgs/development/libraries/science/math/blas/default.nix b/pkgs/development/libraries/science/math/blas/default.nix
index 7066ebad87c..1bc7eff3181 100644
--- a/pkgs/development/libraries/science/math/blas/default.nix
+++ b/pkgs/development/libraries/science/math/blas/default.nix
@@ -1,10 +1,10 @@
 { stdenv, fetchurl, gfortran }:
 
 stdenv.mkDerivation {
-  name = "blas-20070405";
+  name = "blas-20110419";
   src = fetchurl {
     url = "http://www.netlib.org/blas/blas.tgz";
-    sha256 = "07alzd2yxkah96vjczqwi3ld5w00bvqv7qxb2fayvhs1h64jabxw";
+    sha256 = "1d931d91byv2svydpj2ipjh1f2sm1h9ns8ik2w5fwaa8qinxz1za";
   };
 
   buildInputs = [gfortran];
diff --git a/pkgs/development/libraries/sfml/default.nix b/pkgs/development/libraries/sfml/default.nix
index 99b0f2e725c..844505cb359 100644
--- a/pkgs/development/libraries/sfml/default.nix
+++ b/pkgs/development/libraries/sfml/default.nix
@@ -16,7 +16,12 @@ stdenv.mkDerivation rec {
   ";
   meta = with stdenv.lib; {
     homepage = http://www.sfml-dev.org/;
-    description = "A multimedia C++ API that provides access to graphics, input, audio, etc.";
+    description = "Simple and fast multimedia library";
+    longDescription = ''
+      SFML provides a simple interface to the various components of your PC, to
+      ease the development of games and multimedia applications. It is composed
+      of five modules: system, window, graphics, audio and network.
+    '';
     license = licenses.zlib;
     maintainers = [ maintainers.astsmtl ];
   };
diff --git a/pkgs/development/libraries/silgraphite/graphite2.nix b/pkgs/development/libraries/silgraphite/graphite2.nix
new file mode 100644
index 00000000000..0a36efbc982
--- /dev/null
+++ b/pkgs/development/libraries/silgraphite/graphite2.nix
@@ -0,0 +1,21 @@
+{ stdenv, fetchurl, pkgconfig, freetype, libXft, pango, fontconfig, cmake }:
+
+stdenv.mkDerivation rec {
+  version = "1.2.3";
+  name = "graphite2-${version}";
+  
+  src = fetchurl {
+    url = "mirror://sourceforge/silgraphite/graphite2/${name}.tgz";
+    sha256 = "1xgwnd81gm6p293x8paxb3yisnvpj5qnv1dzr7bjdi7b7h00ls7g";
+  };
+
+  buildInputs = [pkgconfig freetype libXft pango fontconfig cmake];
+
+  NIX_CFLAGS_COMPILE = "-I${freetype}/include/freetype2";
+
+  meta = {
+    description = "An advanced font engine";
+    maintainers = [ stdenv.lib.maintainers.raskin ];
+    platforms = stdenv.lib.platforms.linux;
+  };
+}
diff --git a/pkgs/development/libraries/simgear/default.nix b/pkgs/development/libraries/simgear/default.nix
index de8e1d1df1d..cb534cfbf31 100644
--- a/pkgs/development/libraries/simgear/default.nix
+++ b/pkgs/development/libraries/simgear/default.nix
@@ -1,7 +1,7 @@
 x@{builderDefsPackage
   , plib, freeglut, xproto, libX11, libXext, xextproto, libXi , inputproto
   , libICE, libSM, libXt, libXmu, mesa, boost, zlib, libjpeg , freealut
-  , openscenegraph, openal, expat, cmake
+  , openscenegraph, openal, expat, cmake, apr
   , ...}:
 builderDefsPackage
 (a :
@@ -13,11 +13,11 @@ let
     (builtins.attrNames (builtins.removeAttrs x helperArgNames));
   sourceInfo = rec {
     baseName="simgear";
-    version="2.10.0";
+    version="2.12.0";
     name="${baseName}-${version}";
     extension="tar.bz2";
     url="http://mirrors.ibiblio.org/pub/mirrors/simgear/ftp/Source/${name}.${extension}";
-    hash="0pb148hb35p1c5iz0kpiclmswjl9bax9xfm087ldpxsqg9a0sb2q";
+    hash="0spl6afk8rm96ss4lh7zy5561m5m2qgwsnqjyp35jr1gyyrc944f";
   };
 in
 rec {
diff --git a/pkgs/development/libraries/sodium/default.nix b/pkgs/development/libraries/sodium/default.nix
index 0d40df40574..13248753105 100644
--- a/pkgs/development/libraries/sodium/default.nix
+++ b/pkgs/development/libraries/sodium/default.nix
@@ -3,11 +3,11 @@ let
   s = # Generated upstream information
   rec {
     baseName="sodium";
-    version="0.3";
+    version="0.4.3";
     name="${baseName}-${version}";
-    hash="0l1p0d7ag186hhs65kifp8jfgf4mm9rngv41bhq35d7d9gw2d2lh";
-    url="http://download.dnscrypt.org/libsodium/releases/libsodium-0.3.tar.gz";
-    sha256="0l1p0d7ag186hhs65kifp8jfgf4mm9rngv41bhq35d7d9gw2d2lh";
+    hash="0hk0zca1kpj6xlc2j2qx9qy7287pi0896frmxq5d7qmcwsdf372r";
+    url="http://download.dnscrypt.org/libsodium/releases/libsodium-0.4.3.tar.gz";
+    sha256="0hk0zca1kpj6xlc2j2qx9qy7287pi0896frmxq5d7qmcwsdf372r";
   };
   buildInputs = [
   ];
diff --git a/pkgs/development/libraries/spice-protocol/default.nix b/pkgs/development/libraries/spice-protocol/default.nix
index e281b1fcf9d..162a832c93a 100644
--- a/pkgs/development/libraries/spice-protocol/default.nix
+++ b/pkgs/development/libraries/spice-protocol/default.nix
@@ -9,7 +9,7 @@ stdenv.mkDerivation rec {
   };
 
   meta = {
-    description = "Protocol headers for the SPICE protocol.";
+    description = "Protocol headers for the SPICE protocol";
     homepage = http://www.spice-space.org;
     license = stdenv.lib.licenses.bsd3;
 
diff --git a/pkgs/development/libraries/sqlite/3.7.14.nix b/pkgs/development/libraries/sqlite/3.7.14.nix
deleted file mode 100644
index 50338f98a2c..00000000000
--- a/pkgs/development/libraries/sqlite/3.7.14.nix
+++ /dev/null
@@ -1,25 +0,0 @@
-{ stdenv, fetchurl, readline ? null, ncurses ? null }:
-
-assert readline != null -> ncurses != null;
-
-stdenv.mkDerivation {
-  name = "sqlite-3.7.14.1";
-
-  src = fetchurl {
-    url = http://www.sqlite.org/sqlite-autoconf-3071401.tar.gz;
-    sha1 = "c464e0e3efe98227c6546b9b1e786b51b8b642fc";
-  };
-
-  buildInputs = [ readline ncurses ];
-
-  configureFlags = "--enable-threadsafe";
-
-  CFLAGS = "-DSQLITE_ENABLE_COLUMN_METADATA=1 -DSQLITE_SECURE_DELETE=1 -DSQLITE_ENABLE_UNLOCK_NOTIFY=1";
-  LDFLAGS = if readline != null then "-lncurses" else "";
-
-  meta = {
-    homepage = http://www.sqlite.org/;
-    description = "A self-contained, serverless, zero-configuration, transactional SQL database engine";
-    platforms = stdenv.lib.platforms.linux;
-  };
-}
diff --git a/pkgs/development/libraries/sqlite/3.7.9-full.nix b/pkgs/development/libraries/sqlite/3.7.9-full.nix
deleted file mode 100644
index c6ef448ea12..00000000000
--- a/pkgs/development/libraries/sqlite/3.7.9-full.nix
+++ /dev/null
@@ -1,44 +0,0 @@
-{ stdenv, fetchurl, tcl, readline ? null, ncurses ? null }:
-
-assert readline != null -> ncurses != null;
-
-stdenv.mkDerivation {
-  # I try to keep a version no newer than default.nix, and similar CFLAGS,
-  # for this to be compatible with it.
-  name = "sqlite-3.7.9-full";
-
-  src = fetchurl {
-    url = "http://www.sqlite.org/cgi/src/tarball/SQLite-3.7.9.tar.gz?uuid=version-3.7.9";
-    sha256 = "0v11slxgjpx2nv7wp8c76wk2pa1dijs9v6zlcn2dj9jblp3bx8fk";
-  };
-
-  buildInputs = [ readline ncurses ];
-  nativeBuildInputs = [ tcl ];
-
-  doCheck = true;
-  checkTarget = "test";
-  
-  configureFlags = "--enable-threadsafe --enable-tempstore";
-
-  preConfigure = ''
-    ${ # The tests oserror-1.1.{1,2,3} need the fd limit < 2000
-       # and on the builders in NixOS we have 4096 now.
-       if stdenv.isLinux then "ulimit -n 1024" else ""}
-    export TCLLIBDIR=$out/${tcl.libdir}
-  '';
-
-  CFLAGS = "-DSQLITE_ENABLE_COLUMN_METADATA=1 -DSQLITE_SECURE_DELETE=1 -DSQLITE_ENABLE_UNLOCK_NOTIFY=1";
-  LDFLAGS = if readline != null then "-lncurses" else "";
-
-  postInstall = ''
-    make sqlite3_analyzer
-    cp sqlite3_analyzer $out/bin
-  '';
-
-  meta = {
-    homepage = http://www.sqlite.org/;
-    description = "A self-contained, serverless, zero-configuration, transactional SQL database engine";
-    maintainers = with stdenv.lib.maintainers; [viric];
-    platforms = with stdenv.lib.platforms; all;
-  };
-}
diff --git a/pkgs/development/libraries/sqlite/3.7.16.nix b/pkgs/development/libraries/sqlite/default.nix
index f681e94c6ba..7521abc599b 100644
--- a/pkgs/development/libraries/sqlite/3.7.16.nix
+++ b/pkgs/development/libraries/sqlite/default.nix
@@ -3,11 +3,11 @@
 assert readline != null -> ncurses != null;
 
 stdenv.mkDerivation {
-  name = "sqlite-3.7.16.2";
+  name = "sqlite-3.8.0.2";
 
   src = fetchurl {
-    url = http://www.sqlite.org/2013/sqlite-autoconf-3071602.tar.gz;
-    sha1 = "85bf857cf86f34831d55d7ba97606dba581b8d62";
+    url = http://www.sqlite.org/2013/sqlite-autoconf-3080002.tar.gz;
+    sha1 = "294c30e882a0d45877bce09afe72d08ccfc6b650";
   };
 
   buildInputs = [ readline ncurses ];
diff --git a/pkgs/development/libraries/tinyxml/2.6.2.nix b/pkgs/development/libraries/tinyxml/2.6.2.nix
index fde30a98fe9..e1cc1f27c1d 100644
--- a/pkgs/development/libraries/tinyxml/2.6.2.nix
+++ b/pkgs/development/libraries/tinyxml/2.6.2.nix
@@ -58,7 +58,7 @@ in stdenv.mkDerivation {
   '';
   
   meta = {
-    description = "TinyXML is a simple, small, C++ XML parser that can be easily integrating into other programs.";
+    description = "Simple, small, C++ XML parser that can be easily integrating into other programs";
     homepage = "http://www.grinninglizard.com/tinyxml/index.html";
     license = "free-non-copyleft";
   };
diff --git a/pkgs/development/libraries/unixODBCDrivers/default.nix b/pkgs/development/libraries/unixODBCDrivers/default.nix
index 421843b2737..47925520ab4 100644
--- a/pkgs/development/libraries/unixODBCDrivers/default.nix
+++ b/pkgs/development/libraries/unixODBCDrivers/default.nix
@@ -78,19 +78,29 @@ args : with args;
       "FileUsage       = 3\n ";
  };
  sqlite = rec {
-    deriv = stdenv.mkDerivation {
-      name = "sqlite-connector-odbc-3.51.12";
+    deriv = let version = "0.995"; in
+    stdenv.mkDerivation {
+      name = "sqlite-connector-odbc-${version}";
+
       src = fetchurl {
-        url = http://www.ch-werner.de/sqliteodbc/sqliteodbc-0.70.tar.gz;
-        sha256 = "0ysyqdqkxqcqxrxgi15cbrzia9z6yalim5c88faad85bwanx4db8";
+        url = "http://www.ch-werner.de/sqliteodbc/sqliteodbc-${version}.tar.gz";
+        sha256 = "1r97fw6xy5w2f8c0ii7blfqfi6salvd3k8wnxpx9wqc1gxk8jnyy";
       };
+
+      buildInputs = [ sqlite ];
+
       configureFlags = "--with-sqlite3=${sqlite} --with-odbc=${unixODBC}";
-      postInstall = ''mkdir lib; mv $out/* lib; mv lib $out'';
-      buildInputs = [libtool zlib sqlite];
+
+      postInstall = ''
+        mkdir -p  $out/lib
+      '';
+
       meta = { 
-        description = "sqlite odbc connector, install using configuration.nix";
-        homepage = http://www.ch-werner.de/sqliteodbc/html/index.html;
-        license = "BSD";
+        description = "ODBC driver for SQLite";
+        homepage = http://www.ch-werner.de/sqliteodbc;
+        license = stdenv.lib.licenses.bsd2;
+        platforms = stdenv.lib.platforms.linux;
+        maintainers = with stdenv.lib.maintainers; [ vlstill ];
       };
     };
     ini =
diff --git a/pkgs/development/libraries/v8/default.nix b/pkgs/development/libraries/v8/default.nix
index 3fc3138ef52..5ac2487c9ed 100644
--- a/pkgs/development/libraries/v8/default.nix
+++ b/pkgs/development/libraries/v8/default.nix
@@ -56,7 +56,7 @@ stdenv.mkDerivation {
 
     meta = with stdenv.lib; {
       description = "V8 is Google's open source JavaScript engine";
-      platforms = platforms.unix; 
+      platforms = platforms.linux ++ platforms.darwin;
       license = licenses.bsd3;
     };
 }
diff --git a/pkgs/development/libraries/vcdimager/default.nix b/pkgs/development/libraries/vcdimager/default.nix
index 58b9d2f2573..e93f071aefa 100644
--- a/pkgs/development/libraries/vcdimager/default.nix
+++ b/pkgs/development/libraries/vcdimager/default.nix
@@ -16,7 +16,7 @@ stdenv.mkDerivation {
 
   meta = {
     homepage = http://www.gnu.org/software/vcdimager/;
-    description = "GNU VCDImager is a full-featured mastering suite for authoring, disassembling and analyzing Video CDs and Super Video CDs.";
+    description = "Full-featured mastering suite for authoring, disassembling and analyzing Video CDs and Super Video CDs";
     platforms = stdenv.lib.platforms.gnu; # random choice
   };
 }
diff --git a/pkgs/development/lisp-modules/asdf/default.nix b/pkgs/development/lisp-modules/asdf/default.nix
new file mode 100644
index 00000000000..48b49ee3583
--- /dev/null
+++ b/pkgs/development/lisp-modules/asdf/default.nix
@@ -0,0 +1,40 @@
+{stdenv, fetchurl, texinfo, texLive}:
+let
+  s = # Generated upstream information
+  rec {
+    baseName="asdf";
+    version="3.0.2.4";
+    name="${baseName}-${version}";
+    hash="0b6rkpghw2vndvmgyacijdn3d76ykbjfwpxwv8m0jl7ynrf6l5ag";
+    url="http://common-lisp.net/project/asdf/archives/asdf-3.0.2.4.tar.gz";
+    sha256="0b6rkpghw2vndvmgyacijdn3d76ykbjfwpxwv8m0jl7ynrf6l5ag";
+  };
+  buildInputs = [
+    texinfo texLive
+  ];
+in
+stdenv.mkDerivation {
+  inherit (s) name version;
+  inherit buildInputs;
+  src = fetchurl {
+    inherit (s) url sha256;
+  };
+  buildPhase = ''
+    make build/asdf.lisp
+    make -C doc asdf.info asdf.html
+  '';
+  installPhase = ''
+    mkdir -p "$out"/lib/common-lisp/asdf/
+    mkdir -p "$out"/share/doc/asdf/
+    cp -r ./* "$out"/lib/common-lisp/asdf/
+    cp -r doc/* "$out"/share/doc/asdf/
+  '';
+  sourceRoot=".";
+  meta = {
+    inherit (s) version;
+    description = ''Standard software-system definition library for Common Lisp'';
+    license = stdenv.lib.licenses.mit ;
+    maintainers = [stdenv.lib.maintainers.raskin];
+    platforms = stdenv.lib.platforms.linux;
+  };
+}
diff --git a/pkgs/development/lisp-modules/asdf/default.upstream b/pkgs/development/lisp-modules/asdf/default.upstream
new file mode 100644
index 00000000000..d8625182352
--- /dev/null
+++ b/pkgs/development/lisp-modules/asdf/default.upstream
@@ -0,0 +1,2 @@
+url http://common-lisp.net/project/asdf/archives/
+version_link asdf-[0-9].*[.]tar[.].*
diff --git a/pkgs/development/lisp-modules/clwrapper/cl-wrapper.sh b/pkgs/development/lisp-modules/clwrapper/cl-wrapper.sh
new file mode 100755
index 00000000000..91b8a0c2bb0
--- /dev/null
+++ b/pkgs/development/lisp-modules/clwrapper/cl-wrapper.sh
@@ -0,0 +1,44 @@
+#! /bin/sh
+# Part of NixPkgs package collection
+# This script can be used at your option under the same license as NixPkgs or 
+# under MIT/X11 license
+
+eval "$NIX_LISP_PREHOOK"
+
+NIX_LISP_COMMAND="$1"
+shift
+
+[ -z "$NIX_LISP" ] && NIX_LISP="${NIX_LISP_COMMAND##*/}"
+
+export NIX_LISP NIX_LISP_LOAD_FILE NIX_LISP_EXEC_CODE NIX_LISP_COMMAND NIX_LISP_FINAL_PARAMETERS
+
+case "$NIX_LISP" in
+	sbcl)
+		NIX_LISP_LOAD_FILE="--load"
+		NIX_LISP_EXEC_CODE="--eval"
+		NIX_LISP_FINAL_PARAMETERS=
+		;;
+	ecl)
+		NIX_LISP_LOAD_FILE="-load"
+		NIX_LISP_EXEC_CODE="-eval"
+		NIX_LISP_FINAL_PARAMETERS=
+		;;
+	clisp)
+		NIX_LISP_LOAD_FILE="-c -l"
+		NIX_LISP_EXEC_CODE="-x"
+		NIX_LISP_FINAL_PARAMETERS="-repl"
+		;;
+esac
+
+NIX_LISP_ASDF_REGISTRY_CODE="
+  (progn
+    (setf asdf:*default-source-registries* '(asdf/source-registry:environment-source-registry))
+    (asdf:initialize-source-registry)
+    )
+"
+
+[ -z "$NIX_LISP_SKIP_CODE" ] && "$NIX_LISP_COMMAND" $NIX_LISP_EARLY_OPTIONS \
+	$NIX_LISP_EXEC_CODE "(load \"$NIX_LISP_ASDF/lib/common-lisp/asdf/build/asdf.lisp\")" \
+	$NIX_LISP_EXEC_CODE "$NIX_LISP_ASDF_REGISTRY_CODE" \
+	$NIX_LISP_FINAL_PARAMETERS \
+	"$@"
diff --git a/pkgs/development/lisp-modules/clwrapper/common-lisp.sh b/pkgs/development/lisp-modules/clwrapper/common-lisp.sh
new file mode 100755
index 00000000000..b22ca016128
--- /dev/null
+++ b/pkgs/development/lisp-modules/clwrapper/common-lisp.sh
@@ -0,0 +1,3 @@
+#! /bin/sh
+
+"$(dirname "$0")"/cl-wrapper.sh "${NIX_LISP_COMMAND:-sbcl}" "$@"
diff --git a/pkgs/development/lisp-modules/clwrapper/default.nix b/pkgs/development/lisp-modules/clwrapper/default.nix
new file mode 100644
index 00000000000..0ae4ce13064
--- /dev/null
+++ b/pkgs/development/lisp-modules/clwrapper/default.nix
@@ -0,0 +1,28 @@
+{stdenv, fetchurl, asdf, lisp ? null}:
+stdenv.mkDerivation {
+  name = "cl-wrapper-script";
+
+  buildPhase="";
+
+  installPhase=''
+    mkdir -p "$out"/bin
+    cp ${./cl-wrapper.sh} "$out"/bin/cl-wrapper.sh
+    cp ${./common-lisp.sh} "$out"/bin/common-lisp.sh
+    chmod a+x "$out"/bin/*
+  '';
+
+  inherit asdf lisp;
+
+  setupHook = ./setup-hook.sh;
+
+  phases="installPhase fixupPhase";
+
+  passthru = {
+    inherit lisp;
+  };
+
+  meta = {
+    description = ''Script used to wrap Common Lisp implementations'';
+    maintainers = [stdenv.lib.maintainers.raskin];
+  };
+}
diff --git a/pkgs/development/lisp-modules/clwrapper/setup-hook.sh b/pkgs/development/lisp-modules/clwrapper/setup-hook.sh
new file mode 100644
index 00000000000..e5deb47fd5d
--- /dev/null
+++ b/pkgs/development/lisp-modules/clwrapper/setup-hook.sh
@@ -0,0 +1,39 @@
+NIX_LISP_ASDF="@asdf@"
+
+CL_SOURCE_REGISTRY="@asdf@/lib/common-lisp/asdf/:@asdf@/lib/common-lisp/asdf/uiop/"
+
+addASDFPaths () {
+    for j in "$1"/lib/common-lisp/*; do
+	if [ -d "$j" ]; then
+            CL_SOURCE_REGISTRY="$CL_SOURCE_REGISTRY:$j/"
+	fi
+    done
+}
+
+setLisp () {
+    if [ -z "$NIX_LISP_COMMAND" ]; then 
+      for j in "$1"/bin/*; do
+          case "$(basename "$j")" in
+              sbcl) NIX_LISP_COMMAND="$j" ;;
+              ecl) NIX_LISP_COMMAND="$j" ;;
+              clisp) NIX_LISP_COMMAND="$j" ;;
+          esac
+      done
+    fi
+    if [ -z "$NIX_LISP" ]; then 
+        NIX_LISP="${NIX_LISP_COMMAND##*/}"
+    fi
+}
+
+collectNixLispLDLP () {
+     if echo "$1/lib"/lib*.so* | grep . > /dev/null; then
+	 export NIX_LISP_LD_LIBRARY_PATH="$NIX_LISP_LD_LIBRARY_PATH${NIX_LISP_LD_LIBRARY_PATH:+:}$1/lib"
+     fi
+}
+
+export NIX_LISP_COMMAND NIX_LISP CL_SOURCE_REGISTRY NIX_LISP_ASDF
+
+envHooks=(envHooks[@] addASDFPaths setLisp collectNixLispLDLP)
+
+mkdir -p "$HOME"/.cache/common-lisp || HOME="$TMP/.temp-$USER-home"
+mkdir -p "$HOME"/.cache/common-lisp
diff --git a/pkgs/development/lisp-modules/define-package.nix b/pkgs/development/lisp-modules/define-package.nix
new file mode 100644
index 00000000000..675fc7e7468
--- /dev/null
+++ b/pkgs/development/lisp-modules/define-package.nix
@@ -0,0 +1,50 @@
+args @ {stdenv, clwrapper, baseName, version ? "latest", src, description, deps, 
+  buildInputs ? [], meta ? {}, overrides?(x: {})}:
+let 
+  deployConfigScript = ''
+    config_script="$out"/lib/common-lisp-settings/${args.baseName}-shell-config.sh
+    mkdir -p "$(dirname "$config_script")"
+    touch "$config_script"
+    chmod a+x "$config_script"
+    echo "export NIX_LISP_COMMAND='$NIX_LISP_COMMAND'" >> "$config_script"
+    echo "export NIX_LISP_ASDF='$NIX_LISP_ASDF'" >> "$config_script"
+    echo "export CL_SOURCE_REGISTRY="\$CL_SOURCE_REGISTRY\''${CL_SOURCE_REGISTRY:+:}"'$CL_SOURCE_REGISTRY:$out/lib/common-lisp/${args.baseName}/'" >> "$config_script"
+    test -n "$LD_LIBRARY_PATH" &&
+        echo "export LD_LIBRARY_PATH=\"\$LD_LIBRARY_PATH\''${LD_LIBRARY_PATH:+:}\"'$LD_LIBRARY_PATH'" >> "$config_script"
+    test -n "$NIX_LISP_LD_LIBRARY_PATH" &&
+        echo "export NIX_LISP_LD_LIBRARY_PATH=\"\$NIX_LISP_LD_LIBRARY_PATH\''${NIX_LISP_LD_LIBRARY_PATH:+:}\"'$NIX_LISP_LD_LIBRARY_PATH'" >> "$config_script"
+  '';
+  deployLaunchScript = ''
+    launch_script="$out"/bin/${args.baseName}-lisp-launcher.sh
+    mkdir -p "$(dirname "$launch_script")"
+    touch "$launch_script"
+    chmod a+x "$launch_script"
+    echo "#! /bin/sh" >> "$launch_script"
+    echo "source '$config_script'" >> "$launch_script"
+    echo "export LD_LIBRARY_PATH=\"\$NIX_LISP_LD_LIBRARY_PATH\''${NIX_LISP_LD_LIBRARY_PATH:+:}\$LD_LIBRARY_PATH\"" >> "$launch_script"
+    echo '"${clwrapper}/bin/common-lisp.sh" "$@"' >> "$launch_script" 
+  '';
+basePackage = {
+  name = "lisp-${baseName}-${version}";
+  inherit src;
+
+  inherit deployConfigScript deployLaunchScript;
+  installPhase = ''
+    mkdir -p "$out"/share/doc/${args.baseName};
+    mkdir -p "$out"/lib/common-lisp/${args.baseName};
+    cp -r . "$out"/lib/common-lisp/${args.baseName};
+    cp -rf doc/* LICENCE LICENSE COPYING README README.html README.md readme.html "$out"/share/doc/${args.baseName} || true
+
+    ${deployConfigScript}
+    ${deployLaunchScript}
+  '';
+  propagatedBuildInputs = args.deps ++ [clwrapper clwrapper.lisp];
+  buildInputs = buildInputs;
+  dontStrip=true;
+  meta = {
+    inherit description version;
+  } // meta;
+};
+package = basePackage // (overrides basePackage);
+in
+stdenv.mkDerivation package
diff --git a/pkgs/development/lisp-modules/from-quicklisp/asdf-description.sh b/pkgs/development/lisp-modules/from-quicklisp/asdf-description.sh
new file mode 100755
index 00000000000..6c240d15c76
--- /dev/null
+++ b/pkgs/development/lisp-modules/from-quicklisp/asdf-description.sh
@@ -0,0 +1,16 @@
+#! /bin/sh
+
+[ -z "$NIX_QUICKLISP_DIR" ] && {
+  export NIX_QUICKLISP_DIR="$(mktemp -d --tmpdir nix-quicklisp.XXXXXX)"
+}
+
+[ -f "$NIX_QUICKLISP_DIR/setup.lisp" ] || {
+  "$(dirname "$0")/quicklisp-beta-env.sh" "$NIX_QUICKLISP_DIR" &> /dev/null < /dev/null
+}
+
+name="$1"
+
+sbcl --noinform --load "$NIX_QUICKLISP_DIR"/setup.lisp --eval "(ql:quickload :$name)" \
+	--eval "(format t \"~a~%\" (or (asdf::system-description (asdf::find-system \"$name\")) \"\"))" \
+	--eval '(quit)' --script |
+    tee /dev/stderr | tail -n 1
diff --git a/pkgs/development/lisp-modules/from-quicklisp/barebones-quicklisp-expression.sh b/pkgs/development/lisp-modules/from-quicklisp/barebones-quicklisp-expression.sh
new file mode 100755
index 00000000000..61c00eb92ae
--- /dev/null
+++ b/pkgs/development/lisp-modules/from-quicklisp/barebones-quicklisp-expression.sh
@@ -0,0 +1,78 @@
+#! /bin/sh
+
+name="$1"
+
+nix-instantiate "$(dirname "$0")"/../../../../ -A "lispPackages.$name" > /dev/null && exit
+[ "$NIX_LISP_PACKAGES_DEFINED" != "${NIX_LISP_PACKAGES_DEFINED/$name/@@}" ] && exit
+
+NIX_LISP_PACKAGES_DEFINED="$NIX_LISP_PACKAGES_DEFINED $1 "
+
+[ -z "$NIX_QUICKLISP_DIR" ] && {
+  export NIX_QUICKLISP_DIR="$(mktemp -d --tmpdir nix-quicklisp.XXXXXX)"
+}
+
+[ -f "$NIX_QUICKLISP_DIR/setup.lisp" ] || {
+  "$(dirname "$0")/quicklisp-beta-env.sh" "$NIX_QUICKLISP_DIR" &> /dev/null < /dev/null
+}
+
+description="$("$(dirname "$0")/asdf-description.sh" "$name")"
+[ -z "$description" ] && {
+  description="$(curl -L https://github.com/quicklisp/quicklisp-projects/raw/master/"$name"/description.txt)"
+  [ "$(echo "$description" | wc -l)" -gt 10 ] && description=""
+}
+
+dependencies="$("$(dirname "$0")/quicklisp-dependencies.sh" "$name" | xargs)"
+ql_src="$(curl -L https://github.com/quicklisp/quicklisp-projects/raw/master/"$name"/source.txt)"
+ql_src_type="${ql_src%% *}"
+url="${ql_src##* }"
+
+[ "$ql_src_type" = git ] && {
+  fetcher="pkgs.fetchgit"
+  [ "${url#git://github.com/}" != "$url" ] && {
+    url="${url/git:/https:}"
+    url="${url%.git}"
+    rev=$("$(dirname "$0")/../../../build-support/upstream-updater/urls-from-page.sh" "$url/commits" | grep /commit/ | head -n 1 | xargs basename)
+    hash=$("$(dirname "$0")/../../../build-support/fetchgit/nix-prefetch-git" "$url" "$rev")
+    version="git-$(date +%Y%m%d)";
+  }
+  [ "${url#git://common-lisp.net/}" != "$url" ] && {
+    http_repo_url="$url"
+    http_repo_url="${http_repo_url/git:/http:}"
+    http_repo_url="${http_repo_url/\/projects\// /r/projects/}"
+    http_repo_head="$http_repo_url/refs/heads/master"
+    echo "$http_repo_head" >&2
+    rev=$(curl -L "$http_repo_head");
+    hash=$("$(dirname "$0")/../../../build-support/fetchgit/nix-prefetch-git" "$url" "$rev")
+    version="git-$(date +%Y%m%d)";
+  }
+}
+
+[ "$ql_src_type" = cvs ] && {
+  fetcher="pkgs.fetchcvs"
+  date="$(date -d yesterday +%Y-%m-%d)"
+  version="cvs-$date"
+  module="${module:-$name}"
+  hash=$(USE_DATE=1 "$(dirname "$0")/../../../build-support/fetchcvs/nix-prefetch-cvs" "$url" "$module" "$date")
+  cvsRoot="$url"
+  unset url
+}
+
+cat << EOF
+
+  $name = buildLispPackage rec {
+    baseName = "$name";
+    version = "${version:-\${Set me //}";
+    description = "$description";
+    deps = [$dependencies];
+    src = ${fetcher:-pkgs.fetchurl} {
+      ${url:+url = ''$url'';}
+      sha256 = "${hash:-0000000000000000000000000000000000000000000000000000000000000000}";
+      ${rev:+rev = ''$rev'';}
+      ${date:+date = ''$date'';}
+      ${module:+module = ''$module'';}
+      ${cvsRoot:+cvsRoot = ''$cvsRoot'';}
+    };
+  };
+EOF
+
+for i in $dependencies; do "$0" "$i"; done
diff --git a/pkgs/development/lisp-modules/from-quicklisp/quicklisp-beta-env.sh b/pkgs/development/lisp-modules/from-quicklisp/quicklisp-beta-env.sh
new file mode 100755
index 00000000000..32fbbe4bb2b
--- /dev/null
+++ b/pkgs/development/lisp-modules/from-quicklisp/quicklisp-beta-env.sh
@@ -0,0 +1,16 @@
+#! /bin/sh
+
+WORK_DIR=$(mktemp -d "/tmp/ql-venv-XXXXXX")
+mkdir -p "${1:-.}"
+TARGET="$(cd "${1:-.}"; pwd)"
+
+curl http://beta.quicklisp.org/quicklisp.lisp > "$WORK_DIR/ql.lisp"
+
+sbcl --noinform \
+     --load "$WORK_DIR/ql.lisp" \
+     --eval "(quicklisp-quickstart:install :path \"$TARGET/\")" \
+     --eval "(cl-user::quit)" \
+     --script
+
+
+rm -rf "$WORK_DIR"
diff --git a/pkgs/development/lisp-modules/from-quicklisp/quicklisp-dependencies.sh b/pkgs/development/lisp-modules/from-quicklisp/quicklisp-dependencies.sh
new file mode 100755
index 00000000000..24efbdd3e16
--- /dev/null
+++ b/pkgs/development/lisp-modules/from-quicklisp/quicklisp-dependencies.sh
@@ -0,0 +1,11 @@
+#! /bin/sh
+
+[ -z "$NIX_QUICKLISP_DIR" ] && {
+  export NIX_QUICKLISP_DIR="$(mktemp -d --tmpdir nix-quicklisp.XXXXXX)"
+}
+
+[ -f "$NIX_QUICKLISP_DIR/setup.lisp" ] || {
+  "$(dirname "$0")/quicklisp-beta-env.sh" "$NIX_QUICKLISP_DIR" &> /dev/null < /dev/null
+}
+
+sbcl --noinform --eval "(with-output-to-string (*standard-output*) (load \"$NIX_QUICKLISP_DIR/setup.lisp\"))" --eval "(with-output-to-string (*standard-output*) (with-output-to-string (*error-output*) (with-output-to-string (*trace-output*) (ql:quickload :$1))))" --eval "(format t \"~{~a~%~}\" (mapcar 'ql::name (mapcar 'car (cdr (ql::dependency-tree \"$1\")))))" --eval '(quit)' --script
diff --git a/pkgs/development/lisp-modules/from-quicklisp/tmp.nix b/pkgs/development/lisp-modules/from-quicklisp/tmp.nix
new file mode 100644
index 00000000000..e69de29bb2d
--- /dev/null
+++ b/pkgs/development/lisp-modules/from-quicklisp/tmp.nix
diff --git a/pkgs/development/lisp-modules/lisp-packages.nix b/pkgs/development/lisp-modules/lisp-packages.nix
new file mode 100644
index 00000000000..015d5fccdc3
--- /dev/null
+++ b/pkgs/development/lisp-modules/lisp-packages.nix
@@ -0,0 +1,103 @@
+{stdenv, clwrapper, pkgs}:
+let lispPackages = rec {
+  inherit pkgs clwrapper stdenv;
+  nixLib = pkgs.lib;
+  callPackage = nixLib.callPackageWith lispPackages;
+
+  buildLispPackage =  callPackage ./define-package.nix;
+
+  cl-ppcre = buildLispPackage rec {
+    baseName = "cl-ppcre";
+    version = "2.0.4";
+    description = "Regular expression library for Common Lisp";
+    deps = [];
+    src = pkgs.fetchurl {
+      url = "https://github.com/edicl/cl-ppcre/archive/v${version}.tar.gz";
+      sha256 = "16nkfg6j7nn8qkzxn462kqpdlbajpz2p55pdl12sia6yqkj3lh97";
+    };
+  };
+
+  clx = buildLispPackage rec {
+    baseName = "clx";
+    version = "2013-09";
+    description = "X11 bindings for Common Lisp";
+    deps = [];
+    src = pkgs.fetchgit {
+      url = "https://github.com/sharplispers/clx/";
+      rev = "e2b762ac93d78d6eeca4f36698c8dfd1537ce998";
+      sha256 = "0jcrmlaayz7m8ixgriq7id3pdklyk785qvpcxdpcp4aqnfiiqhij";
+    };
+  };
+
+  iterate = buildLispPackage rec {
+    baseName = "iterate";
+    version = "1.4.3";
+    description = "Iteration package for Common Lisp";
+    deps = [];
+    src = pkgs.fetchdarcs {
+      url = "http://common-lisp.net/project/iterate/darcs/iterate";
+      sha256 = "0m3q0s7h5s8varwx584m2akgdslj14df7kg4w1bj1fbgzsag5m1w";
+      tag=version;
+    };
+    overrides = x: {
+      configurePhase="buildPhase(){ true; }";
+    };
+  };
+
+  stumpwm = callPackage ./stumpwm {};
+
+  alexandria = buildLispPackage rec {
+    baseName = "alexandria";
+    version = "git-20131029";
+    description = "Alexandria is a collection of portable public domain utilities.";
+    deps = [];
+    src = pkgs.fetchgit {
+      url = "git://common-lisp.net/projects/alexandria/alexandria.git";
+      sha256 = "1d981a243f9d4d3c9fd86cc47698050507ff615b87b9a710449abdb4234e501b";
+      rev = ''2b1eb4067fb34bc501e527de75d09166a8ba9ceb'';
+    };
+  };
+
+  esrap-peg = buildLispPackage rec {
+    baseName = "esrap-peg";
+    version = "git-20131029";
+    description = "A wrapper around Esrap to allow generating Esrap grammars from PEG definitions";
+    deps = [alexandria cl-unification esrap iterate];
+    src = pkgs.fetchgit {
+      url = "https://github.com/fb08af68/esrap-peg";
+      sha256 = "48e616a697aca95e90e55052fdc9a7f96bf29b3208b1b4012fcd3189c2eceeb1";
+      rev = ''1f2f21e32e618f71ed664cdc5e7005f8b6b0f7c8'';
+      
+      
+    };
+  };
+
+  cl-unification = buildLispPackage rec {
+    baseName = "cl-unification";
+    version = "cvs-2013-10-28";
+    description = "";
+    deps = [];
+    src = pkgs.fetchcvs {
+      sha256 = "a574b7f9615232366e3e5e7ee400d60dbff23f6d0e1def5a3c77aafdfd786e6a";
+      
+      date = ''2013-10-28'';
+      module = ''cl-unification'';
+      cvsRoot = '':pserver:anonymous:anonymous@common-lisp.net:/project/cl-unification/cvsroot'';
+    };
+  };
+
+  esrap = buildLispPackage rec {
+    baseName = "esrap";
+    version = "git-20131029";
+    description = "A Packrat / Parsing Grammar / TDPL parser for Common Lisp.";
+    deps = [alexandria];
+    src = pkgs.fetchgit {
+      url = "https://github.com/scymtym/esrap";
+      sha256 = "c56616ac01be0f69e72902f9fd830a8af2c2fa9018b66747a5da3988ae38817f";
+      rev = ''c71933b84e220f21e8a509ec26afe3e3871e2e26'';
+      
+      
+    };
+  };
+};
+in lispPackages
diff --git a/pkgs/development/lisp-modules/stumpwm/default.nix b/pkgs/development/lisp-modules/stumpwm/default.nix
new file mode 100644
index 00000000000..f6ef41dda1d
--- /dev/null
+++ b/pkgs/development/lisp-modules/stumpwm/default.nix
@@ -0,0 +1,33 @@
+{pkgs, nixLib, clwrapper, cl-ppcre, clx, buildLispPackage}: 
+buildLispPackage rec {
+  baseName = "stumpwm";
+  version = "2013-09";
+  src = pkgs.fetchgit {
+    url = "https://github.com/sabetts/stumpwm";
+    sha256 = "0dd69myssfn2bsdx3xdp65mjrvs9x81dl3y3659pyf1avnjlir7h";
+    rev = "565ef58f04f59e1667ec1da4087f1a43a32cd67f";
+  };
+  description = "Tiling window manager for X11";
+  deps = [cl-ppcre clx];
+  buildInputs = with pkgs; [texinfo autoconf which makeWrapper];
+  meta = {
+    maintainers = [nixLib.maintainers.raskin];
+    platforms = nixLib.platforms.linux;
+  };
+  overrides = x: {
+    preConfigure = ''
+      ${x.deployConfigScript}
+      export CL_SOURCE_REGISTRY="$CL_SOURCE_REGISTRY:$PWD/"
+      ./autogen.sh 
+      configureFlags=" --with-lisp=$NIX_LISP --with-$NIX_LISP=$(which common-lisp.sh) "
+    '';
+    installPhase=x.installPhase + ''
+      make install 
+
+      if [ "$NIX_LISP" = "sbcl" ]; then
+        wrapProgram "$out"/bin/stumpwm --set SBCL_HOME "${clwrapper.lisp}/lib/sbcl"
+      fi;
+    '';
+    postInstall = ''false'';
+  };
+}
diff --git a/pkgs/development/misc/avr-gcc-with-avr-libc/default.nix b/pkgs/development/misc/avr-gcc-with-avr-libc/default.nix
index 3c28ed04dba..5218f5b7744 100644
--- a/pkgs/development/misc/avr-gcc-with-avr-libc/default.nix
+++ b/pkgs/development/misc/avr-gcc-with-avr-libc/default.nix
@@ -79,7 +79,7 @@ stdenv.mkDerivation {
   };
 
   meta = { 
-      description = "avr gcc developement environment including binutils, avr-gcc and avr-libc";
+      description = "AVR developement environment including binutils, avr-gcc and avr-libc";
       # I've tried compiling the packages separately.. too much hassle. This just works. Fine.
       license =  ["GPL" "LGPL"]; # see single packages ..
       homepage = []; # dito
diff --git a/pkgs/development/mobile/androidenv/addon.xml b/pkgs/development/mobile/androidenv/addon.xml
index 635d0ae964f..2020f48b1d2 100644
--- a/pkgs/development/mobile/androidenv/addon.xml
+++ b/pkgs/development/mobile/androidenv/addon.xml
@@ -781,14 +781,14 @@ August 15, 2011
     </sdk:add-on>
 
     <sdk:add-on>
-        <!-- Generated at Tue Jul 23 17:14:07 2013 from git_jb-mr2-release @ 737497 -->
+        <!-- Generated at Mon Aug 12 12:42:05 2013 from git_jb-mr2-dev @ 774058 -->
         <sdk:vendor-id>google</sdk:vendor-id>
         <sdk:vendor-display>Google Inc.</sdk:vendor-display>
         <sdk:name-id>google_apis</sdk:name-id>
         <sdk:name-display>Google APIs</sdk:name-display>
         <sdk:description>Android + Google APIs</sdk:description>
         <sdk:api-level>18</sdk:api-level>
-        <sdk:revision>1</sdk:revision>
+        <sdk:revision>2</sdk:revision>
         <sdk:libs>
             <sdk:lib>
                 <sdk:name>com.google.android.maps</sdk:name>
@@ -802,9 +802,9 @@ August 15, 2011
         </sdk:libs>
         <sdk:archives>
             <sdk:archive arch="any" os="any">
-                <sdk:size>147899839</sdk:size>
-                <sdk:checksum type="sha1">5c0c24f04e6b65c61da83408b7aee79228c24a40</sdk:checksum>
-                <sdk:url>google_apis-18_r01.zip</sdk:url>
+                <sdk:size>142778022</sdk:size>
+                <sdk:checksum type="sha1">40f2a6a6d6227dadd82cfe0f9783bd4c6bdb29c2</sdk:checksum>
+                <sdk:url>google_apis-18_r02.zip</sdk:url>
             </sdk:archive>
         </sdk:archives>
         <sdk:uses-license ref="android-sdk-license"/>
@@ -855,14 +855,14 @@ August 15, 2011
         <sdk:vendor-display>Google Inc.</sdk:vendor-display>
         <sdk:name-display>Google Repository</sdk:name-display>
         <sdk:path>m2repository</sdk:path>
-        <sdk:revision>1</sdk:revision>
+        <sdk:revision>2</sdk:revision>
         <sdk:description>Local Maven repository for Google Libraries</sdk:description>
         <sdk:uses-license ref="android-sdk-license"/>
         <sdk:archives>
             <sdk:archive os="any">
-                <sdk:size>660833</sdk:size>
-                <sdk:checksum type="sha1">d9a20d960f0d9a8de61a9ced5fc6c2c605f6c6c0</sdk:checksum>
-                <sdk:url>google_m2repository_r01.zip</sdk:url>
+                <sdk:size>2043649</sdk:size>
+                <sdk:checksum type="sha1">f518e0170e84a6bccbadb8a043989cc61f4c37aa</sdk:checksum>
+                <sdk:url>google_m2repository_r02.zip</sdk:url>
             </sdk:archive>
         </sdk:archives>
     </sdk:extra>
@@ -910,15 +910,15 @@ August 15, 2011
         <sdk:vendor-display>Google Inc.</sdk:vendor-display>
         <sdk:name-display>Google Play services</sdk:name-display>
         <sdk:path>google_play_services</sdk:path>
-        <sdk:revision>9</sdk:revision>
+        <sdk:revision>11</sdk:revision>
         <sdk:description>Google Play Services client library and sample code</sdk:description>
         <sdk:desc-url>https://developers.google.com/android/google-play-services/index</sdk:desc-url>
         <sdk:uses-license ref="android-sdk-license"/>
         <sdk:archives>
             <sdk:archive os="any">
-                <sdk:size>5125755</sdk:size>
-                <sdk:checksum type="sha1">3e31fc0b982f938edf216afe9e532774db12607a</sdk:checksum>
-                <sdk:url>google_play_services_3159130_r09.zip</sdk:url>
+                <sdk:size>5265306</sdk:size>
+                <sdk:checksum type="sha1">00851350c55b016bef202700f643f246fb0c24ea</sdk:checksum>
+                <sdk:url>google_play_services_3264130_r11.zip</sdk:url>
             </sdk:archive>
         </sdk:archives>
     </sdk:extra>
diff --git a/pkgs/development/mobile/androidenv/addons.nix b/pkgs/development/mobile/androidenv/addons.nix
index 651c84533f0..2fd66420cf6 100644
--- a/pkgs/development/mobile/androidenv/addons.nix
+++ b/pkgs/development/mobile/androidenv/addons.nix
@@ -197,8 +197,8 @@ in
   google_apis_18 = buildGoogleApis {
     name = "google_apis-18";
       src = fetchurl {
-        url = https://dl-ssl.google.com/android/repository/google_apis-18_r01.zip;
-        sha1 = "5c0c24f04e6b65c61da83408b7aee79228c24a40";
+        url = https://dl-ssl.google.com/android/repository/google_apis-18_r02.zip;
+        sha1 = "40f2a6a6d6227dadd82cfe0f9783bd4c6bdb29c2";
       };
       meta = {
         description = "Android + Google APIs";
diff --git a/pkgs/development/mobile/androidenv/androidsdk.nix b/pkgs/development/mobile/androidenv/androidsdk.nix
index 38377cf8bbb..0b5f69ed3e2 100644
--- a/pkgs/development/mobile/androidenv/androidsdk.nix
+++ b/pkgs/development/mobile/androidenv/androidsdk.nix
@@ -8,16 +8,16 @@
 {platformVersions, abiVersions, useGoogleAPIs}:
 
 stdenv.mkDerivation {
-  name = "android-sdk-22.05";
+  name = "android-sdk-22.2";
   
   src = if (stdenv.system == "i686-linux" || stdenv.system == "x86_64-linux")
     then fetchurl {
-      url = http://dl.google.com/android/android-sdk_r22.0.5-linux.tgz;
-      md5 = "8201b10c21510f082c54f58a9bb082c8";
+      url = http://dl.google.com/android/android-sdk_r22.2-linux.tgz;
+      md5 = "2a3776839e823ba9acb7a87a3fe26e02";
     }
     else if stdenv.system == "x86_64-darwin" then fetchurl {
-      url = http://dl.google.com/android/android-sdk_r22.0.5-macosx.zip;
-      md5 = "94f3cbe896c332b94ee0408ae610a4b8";
+      url = http://dl.google.com/android/android-sdk_r22.2-macosx.zip;
+      md5 = "9dfef6404e2f842c433073796aed8b7d";
     }
     else throw "platform not ${stdenv.system} supported!";
   
diff --git a/pkgs/development/mobile/androidenv/build-app.nix b/pkgs/development/mobile/androidenv/build-app.nix
index 2792d364f15..db7067c989c 100644
--- a/pkgs/development/mobile/androidenv/build-app.nix
+++ b/pkgs/development/mobile/androidenv/build-app.nix
@@ -1,6 +1,7 @@
 { stdenv, androidsdk, jdk, ant }:
-{ name, src, platformVersions ? [ "8" ], useGoogleAPIs ? false, antFlags ? ""
+args@{ name, src, platformVersions ? [ "8" ], useGoogleAPIs ? false, antFlags ? ""
 , release ? false, keyStore ? null, keyAlias ? null, keyStorePassword ? null, keyAliasPassword ? null
+, ...
 }:
 
 assert release -> keyStore != null && keyAlias != null && keyStorePassword != null && keyAliasPassword != null;
@@ -15,9 +16,8 @@ let
     abiVersions = [];
   };
 in
-stdenv.mkDerivation {
+stdenv.mkDerivation ({
   name = stdenv.lib.replaceChars [" "] [""] name;
-  inherit src;
   
   ANDROID_HOME = "${androidsdkComposition}/libexec/android-sdk-${platformName}";
 
@@ -45,4 +45,5 @@ stdenv.mkDerivation {
     mkdir -p $out/nix-support
     echo "file binary-dist \"$(echo $out/*.apk)\"" > $out/nix-support/hydra-build-products
   '';
-}
+} //
+builtins.removeAttrs args ["name"])
diff --git a/pkgs/development/mobile/androidenv/build-tools.nix b/pkgs/development/mobile/androidenv/build-tools.nix
index 0d9cbc22080..58bf3549361 100644
--- a/pkgs/development/mobile/androidenv/build-tools.nix
+++ b/pkgs/development/mobile/androidenv/build-tools.nix
@@ -1,15 +1,15 @@
 {stdenv, stdenv_32bit, fetchurl, unzip, zlib_32bit}:
 
 stdenv.mkDerivation {
-  name = "android-build-tools-r18.0.1";
+  name = "android-build-tools-r18.1.0";
   src = if (stdenv.system == "i686-linux" || stdenv.system == "x86_64-linux")
     then fetchurl {
-      url = https://dl-ssl.google.com/android/repository/build-tools_r18.0.1-linux.zip;
-      sha1 = "f11618492b0d2270c332325d45d752d3656a9640";
+      url = https://dl-ssl.google.com/android/repository/build-tools_r18.1-linux.zip;
+      sha1 = "f314a0599e51397f0886fe888b50dd98f2f050d8";
     }
     else if stdenv.system == "x86_64-darwin" then fetchurl {
-      url = https://dl-ssl.google.com/android/repository/build-tools_r18.0.1-macosx.zip;
-      sha1 = "d84f5692fb44d60fc53e5b2507cebf9f24626902";
+      url = https://dl-ssl.google.com/android/repository/build-tools_r18.1-macosx.zip;
+      sha1 = "16ddb299b8b43063e5bb3387ec17147c5053dfd8";
     }
     else throw "System ${stdenv.system} not supported!";
   
diff --git a/pkgs/development/mobile/androidenv/default.nix b/pkgs/development/mobile/androidenv/default.nix
index 3339a065e2a..3c6263f125d 100644
--- a/pkgs/development/mobile/androidenv/default.nix
+++ b/pkgs/development/mobile/androidenv/default.nix
@@ -64,6 +64,12 @@ rec {
     useGoogleAPIs = true;
   };
   
+  androidsdk_4_3 = androidsdk {
+    platformVersions = [ "18" ];
+    abiVersions = [ "armeabi-v7a" "x86" ];
+    useGoogleAPIs = true;
+  };
+  
   buildApp = import ./build-app.nix {
     inherit (pkgs) stdenv jdk ant;
     inherit androidsdk;
diff --git a/pkgs/development/mobile/androidenv/fetch b/pkgs/development/mobile/androidenv/fetch
new file mode 100755
index 00000000000..30aabc9e086
--- /dev/null
+++ b/pkgs/development/mobile/androidenv/fetch
@@ -0,0 +1,15 @@
+#!/bin/sh
+
+# this shows a list of available xmls
+android list sdk | grep 'Parse XML:' | cut -f8- -d\  # | xargs -n 1 curl -O
+
+# we skip the intel addons, as they are Windows+osX only
+# we skip the default sys-img (arm?) because it is empty
+curl -o repository-8.xml https://dl-ssl.google.com/android/repository/repository-8.xml
+curl -o addon.xml        https://dl-ssl.google.com/android/repository/addon.xml
+curl -o sys-img-mips.xml https://dl-ssl.google.com/android/repository/sys-img/mips/sys-img.xml
+curl -o sys-img-x86.xml  https://dl-ssl.google.com/android/repository/sys-img/x86/sys-img.xml
+
+./generate-addons.sh
+./generate-platforms.sh
+./generate-sysimages.sh
diff --git a/pkgs/development/mobile/androidenv/platforms-linux.nix b/pkgs/development/mobile/androidenv/platforms-linux.nix
index 2ca937b5534..5db90ffef1c 100644
--- a/pkgs/development/mobile/androidenv/platforms-linux.nix
+++ b/pkgs/development/mobile/androidenv/platforms-linux.nix
@@ -209,8 +209,8 @@ in
   platform_18 = buildPlatform {
     name = "android-platform-4.3";
     src = fetchurl {
-      url = https://dl-ssl.google.com/android/repository/android-18_r01.zip;
-      sha1 = "c24de91d6f296cf453701aef281609779fffb379";
+      url = https://dl-ssl.google.com/android/repository/android-18_r02.zip;
+      sha1 = "62a9438d4cf6692f4d6510c27a380be195db9534";
     };
     meta = {
       description = "Android SDK Platform 4.3";
diff --git a/pkgs/development/mobile/androidenv/platforms-macosx.nix b/pkgs/development/mobile/androidenv/platforms-macosx.nix
index c89cb9ed127..c5ddf714cdf 100644
--- a/pkgs/development/mobile/androidenv/platforms-macosx.nix
+++ b/pkgs/development/mobile/androidenv/platforms-macosx.nix
@@ -209,8 +209,8 @@ in
   platform_18 = buildPlatform {
     name = "android-platform-4.3";
     src = fetchurl {
-      url = https://dl-ssl.google.com/android/repository/android-18_r01.zip;
-      sha1 = "c24de91d6f296cf453701aef281609779fffb379";
+      url = https://dl-ssl.google.com/android/repository/android-18_r02.zip;
+      sha1 = "62a9438d4cf6692f4d6510c27a380be195db9534";
     };
     meta = {
       description = "Android SDK Platform 4.3";
diff --git a/pkgs/development/mobile/androidenv/repository-8.xml b/pkgs/development/mobile/androidenv/repository-8.xml
index 4e180ac4b3e..79795aa4939 100644
--- a/pkgs/development/mobile/androidenv/repository-8.xml
+++ b/pkgs/development/mobile/androidenv/repository-8.xml
@@ -616,8 +616,8 @@ November 13, 2012
     </sdk:platform>
 
     <sdk:platform>
-        <!-- Generated at Tue Jul 23 17:16:25 2013 from git_jb-mr2-release @ 737497 -->
-        <sdk:revision>1</sdk:revision>
+        <!-- Generated at Wed Sep 11 18:15:07 2013 from git_jb-mr2-dev @ 819563 -->
+        <sdk:revision>2</sdk:revision>
         <sdk:description>Android SDK Platform 4.3</sdk:description>
         <sdk:version>4.3</sdk:version>
         <sdk:api-level>18</sdk:api-level>
@@ -625,14 +625,14 @@ November 13, 2012
             <sdk:major>21</sdk:major>
         </sdk:min-tools-rev>
         <sdk:layoutlib>
-            <sdk:api>9</sdk:api>
+            <sdk:api>10</sdk:api>
             <sdk:revision>1</sdk:revision>
         </sdk:layoutlib>
         <sdk:archives>
             <sdk:archive arch="any" os="any">
-                <sdk:size>48752456</sdk:size>
-                <sdk:checksum type="sha1">c24de91d6f296cf453701aef281609779fffb379</sdk:checksum>
-                <sdk:url>android-18_r01.zip</sdk:url>
+                <sdk:size>57319855</sdk:size>
+                <sdk:checksum type="sha1">62a9438d4cf6692f4d6510c27a380be195db9534</sdk:checksum>
+                <sdk:url>android-18_r02.zip</sdk:url>
             </sdk:archive>
         </sdk:archives>
         <sdk:uses-license ref="android-sdk-license"/>
@@ -705,16 +705,16 @@ November 13, 2012
     </sdk:system-image>
 
     <sdk:system-image>
-        <!-- Generated at Tue Jul 23 17:18:11 2013 from git_jb-mr2-release @ 737497 -->
-        <sdk:revision>1</sdk:revision>
+        <!-- Generated at Mon Aug 12 12:43:28 2013 from git_jb-mr2-dev @ 774058 -->
+        <sdk:revision>2</sdk:revision>
         <sdk:description>Android SDK Platform 4.3</sdk:description>
         <sdk:api-level>18</sdk:api-level>
         <sdk:abi>armeabi-v7a</sdk:abi>
         <sdk:archives>
             <sdk:archive arch="any" os="any">
-                <sdk:size>125597583</sdk:size>
-                <sdk:checksum type="sha1">5a9b8ac5b57dd0e3278f47deb5ee58e1db6f1f9e</sdk:checksum>
-                <sdk:url>sysimg_armv7a-18_r01.zip</sdk:url>
+                <sdk:size>125457135</sdk:size>
+                <sdk:checksum type="sha1">4a1a93200210d8c42793324362868846f67401ab</sdk:checksum>
+                <sdk:url>sysimg_armv7a-18_r02.zip</sdk:url>
             </sdk:archive>
         </sdk:archives>
         <sdk:uses-license ref="android-sdk-license"/>
@@ -1006,33 +1006,60 @@ November 13, 2012
         <sdk:uses-license ref="android-sdk-license"/>
     </sdk:build-tool>
 
+    <sdk:build-tool>
+        <!-- Generated at Wed Sep 11 17:41:47 2013 from git_jb-mr2-dev @ 819563 -->
+        <sdk:revision>
+            <sdk:major>18</sdk:major>
+            <sdk:minor>1</sdk:minor>
+            <sdk:micro>0</sdk:micro>
+        </sdk:revision>
+        <sdk:archives>
+            <sdk:archive arch="any" os="windows">
+                <sdk:size>19659547</sdk:size>
+                <sdk:checksum type="sha1">3a9810fc8559ab03c09378f07531e8cae2f1db30</sdk:checksum>
+                <sdk:url>build-tools_r18.1-windows.zip</sdk:url>
+            </sdk:archive>
+            <sdk:archive arch="any" os="linux">
+                <sdk:size>20229298</sdk:size>
+                <sdk:checksum type="sha1">f314a0599e51397f0886fe888b50dd98f2f050d8</sdk:checksum>
+                <sdk:url>build-tools_r18.1-linux.zip</sdk:url>
+            </sdk:archive>
+            <sdk:archive arch="any" os="macosx">
+                <sdk:size>20451524</sdk:size>
+                <sdk:checksum type="sha1">16ddb299b8b43063e5bb3387ec17147c5053dfd8</sdk:checksum>
+                <sdk:url>build-tools_r18.1-macosx.zip</sdk:url>
+            </sdk:archive>
+        </sdk:archives>
+        <sdk:uses-license ref="android-sdk-license"/>
+    </sdk:build-tool>
+
     <!-- TOOLS ........................ -->
 
     <sdk:tool>
-        <!-- Generated at Mon Jul 29 16:02:44 2013 from git_tools_r22 @ 757759 -->
+        <!-- Generated at Wed Sep 11 18:24:51 2013 from git_mirror-aosp-tools_r22.2 @ 822324 -->
         <sdk:revision>
             <sdk:major>22</sdk:major>
-            <sdk:minor>0</sdk:minor>
-            <sdk:micro>5</sdk:micro>
+            <sdk:minor>2</sdk:minor>
+            <sdk:micro>0</sdk:micro>
         </sdk:revision>
         <sdk:min-platform-tools-rev>
             <sdk:major>18</sdk:major>
         </sdk:min-platform-tools-rev>
         <sdk:archives>
             <sdk:archive arch="any" os="windows">
-                <sdk:size>113389691</sdk:size>
-                <sdk:checksum type="sha1">a3f450706b5374122f0edb76a4488462ba5171ca</sdk:checksum>
-                <sdk:url>tools_r22.0.5-windows.zip</sdk:url>
+                <sdk:size>108669997</sdk:size>
+                <sdk:checksum type="sha1">c4231cd769ef9d1b6ae69202a1a0d0f783f04ea7</sdk:checksum>
+                <sdk:url>tools_r22.2-windows.zip</sdk:url>
             </sdk:archive>
             <sdk:archive arch="any" os="linux">
-                <sdk:size>105904090</sdk:size>
-                <sdk:checksum type="sha1">06a3e1d66b9280cba49c7ba1893ea14beae072d2</sdk:checksum>
-                <sdk:url>tools_r22.0.5-linux.zip</sdk:url>
+                <sdk:size>101168674</sdk:size>
+                <sdk:checksum type="sha1">a11febd30023ed2590bca4c2d7b1dc2b0cfcd715</sdk:checksum>
+                <sdk:url>tools_r22.2-linux.zip</sdk:url>
             </sdk:archive>
             <sdk:archive arch="any" os="macosx">
-                <sdk:size>77191184</sdk:size>
-                <sdk:checksum type="sha1">318947edef0ab46603eb7f4d21333ee4b4fa1ff3</sdk:checksum>
-                <sdk:url>tools_r22.0.5-macosx.zip</sdk:url>
+                <sdk:size>74822802</sdk:size>
+                <sdk:checksum type="sha1">76896171d0c9ba91c875c8f13ac58cd2e50e9f28</sdk:checksum>
+                <sdk:url>tools_r22.2-macosx.zip</sdk:url>
             </sdk:archive>
         </sdk:archives>
         <sdk:uses-license ref="android-sdk-license"/>
diff --git a/pkgs/development/mobile/androidenv/sys-img-x86.xml b/pkgs/development/mobile/androidenv/sys-img-x86.xml
index f0e8347f6db..75ddf73eb1d 100644
--- a/pkgs/development/mobile/androidenv/sys-img-x86.xml
+++ b/pkgs/development/mobile/androidenv/sys-img-x86.xml
@@ -136,4 +136,19 @@ ANY PRE-RELEASE MATERIALS ARE NON-QUALIFIED AND, AS SUCH, ARE PROVIDED POSSIBLY
     </sdk:archives>
 </sdk:system-image>
 
+<sdk:system-image>
+    <sdk:description>Android SDK Platform 4.3</sdk:description>
+    <sdk:revision>1</sdk:revision>
+    <sdk:api-level>18</sdk:api-level>
+    <sdk:abi>x86</sdk:abi>
+    <sdk:uses-license ref="intel-android-sysimage-license"/>
+    <sdk:archives>
+        <sdk:archive arch="any" os="any">
+            <sdk:size>155656419</sdk:size>
+            <sdk:checksum type="sha1">f11bc9fccd3e7e46c07d8b26e112a8d0b45966c1</sdk:checksum>
+            <sdk:url>sysimg_x86-18_r01.zip</sdk:url>
+        </sdk:archive>
+    </sdk:archives>
+</sdk:system-image>
+
 </sdk:sdk-sys-img>
diff --git a/pkgs/development/mobile/androidenv/sysimages.nix b/pkgs/development/mobile/androidenv/sysimages.nix
index bc78ea11e6f..4c1f0a30907 100644
--- a/pkgs/development/mobile/androidenv/sysimages.nix
+++ b/pkgs/development/mobile/androidenv/sysimages.nix
@@ -48,8 +48,8 @@ in
   sysimg_armeabi-v7a_18 = buildSystemImage {
     name = "armeabi-v7a-18";
     src = fetchurl {
-      url = https://dl-ssl.google.com/android/repository/sysimg_armv7a-18_r01.zip;
-      sha1 = "5a9b8ac5b57dd0e3278f47deb5ee58e1db6f1f9e";
+      url = https://dl-ssl.google.com/android/repository/sysimg_armv7a-18_r02.zip;
+      sha1 = "4a1a93200210d8c42793324362868846f67401ab";
     };
   };
     
@@ -85,6 +85,14 @@ in
     };
   };
     
+  sysimg_x86_18 = buildSystemImage {
+    name = "x86-18";
+    src = fetchurl {
+      url = https://dl-ssl.google.com/android/repository/sys-img/x86/sysimg_x86-18_r01.zip;
+      sha1 = "f11bc9fccd3e7e46c07d8b26e112a8d0b45966c1";
+    };
+  };
+    
   sysimg_mips_15 = buildSystemImage {
     name = "mips-15";
     src = fetchurl {
diff --git a/pkgs/development/mobile/titaniumenv/titaniumsdk.nix b/pkgs/development/mobile/titaniumenv/titaniumsdk.nix
index 46227e5f14d..276b442af0c 100644
--- a/pkgs/development/mobile/titaniumenv/titaniumsdk.nix
+++ b/pkgs/development/mobile/titaniumenv/titaniumsdk.nix
@@ -1,14 +1,14 @@
 {stdenv, fetchurl, unzip, makeWrapper, python, jdk}:
 
 stdenv.mkDerivation {
-  name = "titanium-mobilesdk-3.1.1.v20130612114553";
+  name = "mobilesdk-3.1.4.v20130926144546";
   src = if (stdenv.system == "i686-linux" || stdenv.system == "x86_64-linux") then fetchurl {
-    url = http://builds.appcelerator.com.s3.amazonaws.com/mobile/3_1_X/mobilesdk-3.1.1.v20130612114553-linux.zip;
-    sha1 = "410ba7e8171a887b6a4b3173116430657c3d84aa";
+    url = http://builds.appcelerator.com.s3.amazonaws.com/mobile/3_1_X/mobilesdk-3.1.4.v20130926144546-linux.zip;
+    sha1 = "da4a03ced67f0e8f442d551bbd41ea01fceeee00";
   }
   else if stdenv.system == "x86_64-darwin" then fetchurl {
-    url = http://builds.appcelerator.com.s3.amazonaws.com/mobile/3_1_X/mobilesdk-3.1.1.v20130612114553-osx.zip;
-    sha1 = "0893a1560ac6fb63369fc9f6ea9550b6649438fa";
+    url = http://builds.appcelerator.com.s3.amazonaws.com/mobile/3_1_X/mobilesdk-3.1.4.v20130926144546-osx.zip;
+    sha1 = "55f604c8edb989ba214c8ed7538d1b416df0419e";
   }
   else throw "Platform: ${stdenv.system} not supported!";
   
diff --git a/pkgs/development/mobile/xcodeenv/xcodewrapper.nix b/pkgs/development/mobile/xcodeenv/xcodewrapper.nix
index 1cbab99e365..7515fcdd121 100644
--- a/pkgs/development/mobile/xcodeenv/xcodewrapper.nix
+++ b/pkgs/development/mobile/xcodeenv/xcodewrapper.nix
@@ -1,4 +1,4 @@
-{stdenv, version ? "4.6"}:
+{stdenv, version ? "5.0"}:
 
 stdenv.mkDerivation {
   name = "xcode-wrapper-"+version;
@@ -9,6 +9,7 @@ stdenv.mkDerivation {
     ln -s /usr/bin/xcodebuild
     ln -s /usr/bin/xcrun
     ln -s /usr/bin/security
+    ln -s /usr/bin/codesign
     ln -s "/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/Applications/iPhone Simulator.app/Contents/MacOS/iPhone Simulator"
 
     cd ..
diff --git a/pkgs/development/ocaml-modules/ocamlgraph/default.nix b/pkgs/development/ocaml-modules/ocamlgraph/default.nix
index 2e109f1d621..997ca220610 100644
--- a/pkgs/development/ocaml-modules/ocamlgraph/default.nix
+++ b/pkgs/development/ocaml-modules/ocamlgraph/default.nix
@@ -36,7 +36,7 @@ stdenv.mkDerivation {
 
   meta = {
     homepage = http://ocamlgraph.lri.fr/;
-    description = "ocamlgraph is a graph library for Objective Caml.";
+    description = "Graph library for Objective Caml";
     license = "GNU Library General Public License version 2, with the special exception on linking described in file LICENSE";
     platforms = ocaml.meta.platforms;
     maintainers = [
diff --git a/pkgs/development/ocaml-modules/sexplib/default.nix b/pkgs/development/ocaml-modules/sexplib/default.nix
index 32d5c842dc8..7c40b5e6cfb 100644
--- a/pkgs/development/ocaml-modules/sexplib/default.nix
+++ b/pkgs/development/ocaml-modules/sexplib/default.nix
@@ -15,7 +15,7 @@ stdenv.mkDerivation {
 
   meta = {
     homepage = "http://forge.ocamlcore.org/projects/sexplib/";
-    description = "Library for serializing OCaml values to and from S-expressions.";
+    description = "Library for serializing OCaml values to and from S-expressions";
     license = "LGPL";
     platforms = ocaml.meta.platforms;
   };
diff --git a/pkgs/development/perl-modules/maatkit/default.nix b/pkgs/development/perl-modules/maatkit/default.nix
index d560a5d8e41..d9a1f777f3a 100644
--- a/pkgs/development/perl-modules/maatkit/default.nix
+++ b/pkgs/development/perl-modules/maatkit/default.nix
@@ -25,7 +25,15 @@ buildPerlPackage rec {
   '' ;
 
   meta = {
-    description = "Maatkit makes MySQL easier and safer to manage. It provides simple, predictable ways to do things you cannot otherwise do.";
+    description = "Database toolkit";
+    longDescription = ''
+      You can use Maatkit to prove replication is working correctly, fix
+      corrupted data, automate repetitive tasks, speed up your servers, and
+      much more.
+
+      In addition to MySQL, there is support for PostgreSQL, Memcached, and a
+      growing variety of other databases and technologies.
+    '';
     license = "GPLv2+";
     homepage = http://www.maatkit.org/;
   };
diff --git a/pkgs/development/python-modules/blivet/default.nix b/pkgs/development/python-modules/blivet/default.nix
index 403bb264892..c1b36bf909d 100644
--- a/pkgs/development/python-modules/blivet/default.nix
+++ b/pkgs/development/python-modules/blivet/default.nix
@@ -36,7 +36,9 @@ in buildPythonPackage rec {
       c libudev = "${udev}/lib/libudev.so.1"
     }' blivet/pyudev.py
   '' else ''
-    sed -i -e '/^somajor *=/s/=.*/= ${toString udevSoMajor}/p' \
+    sed -i \
+      -e '/^somajor *=/s/=.*/= ${toString udevSoMajor}/p' \
+      -e 's|common =.*|& + ["/lib/x86_64-linux-gnu", "/lib/i686-linux-gnu"]|' \
       blivet/pyudev.py
   '');
 
@@ -51,5 +53,6 @@ in buildPythonPackage rec {
     homepage = "https://fedoraproject.org/wiki/Blivet";
     description = "Module for management of a system's storage configuration";
     license = [ "GPLv2+" "LGPLv2.1+" ];
+    platforms = stdenv.lib.platforms.linux;
   };
 }
diff --git a/pkgs/development/python-modules/buildout-nix/nix.patch b/pkgs/development/python-modules/buildout-nix/nix.patch
index a09163518a9..dd3b8e12aa8 100644
--- a/pkgs/development/python-modules/buildout-nix/nix.patch
+++ b/pkgs/development/python-modules/buildout-nix/nix.patch
@@ -1,21 +1,36 @@
 --- a/src/zc/buildout/easy_install.py	2013-08-27 22:28:40.233718116 +0200
-+++ b/src/zc/buildout/easy_install.py	2013-08-27 22:31:07.967871186 +0200
-@@ -508,16 +508,15 @@
++++ b/src/zc/buildout/easy_install.py   2013-10-07 00:29:31.077413935 +0200
+@@ -508,16 +508,31 @@
                          self._dest, os.path.basename(dist.location))
  
                      if os.path.isdir(dist.location):
 -                        # we got a directory. It must have been
 -                        # obtained locally.  Just copy it.
 -                        shutil.copytree(dist.location, newloc)
-+                        # Symlink to dists in /nix/store
-+                        if not os.path.exists(newloc):
++                        # Replace links to garbage collected eggs in
++                        # /nix/store
++                        if os.path.islink(newloc):
++                            # It seems necessary to jump through these
++                            # hoops, otherwise we end up in an
++                            # infinite loop because
++                            # self._env.best_match fails to find the dist
++                            os.remove(newloc)
++                            dist = self._fetch(avail, tmp, self._download_cache)
 +                            os.symlink(dist.location, newloc)
++                            newdist = pkg_resources.Distribution.from_filename(
++                                newloc)
++                            self._env.add(newdist)
++                            logger.info("Updated link to %s" %dist.location)
++                        # Symlink to the egg in /nix/store
++                        elif not os.path.exists(newloc):
++                            os.symlink(dist.location, newloc)
++                            logger.info("Created link to %s" %dist.location)
                      else:
  
  
                          setuptools.archive_util.unpack_archive(
                              dist.location, newloc)
--
+ 
 -                    redo_pyc(newloc)
 +                        redo_pyc(newloc)
  
diff --git a/pkgs/development/python-modules/gyp/no-xcode.patch b/pkgs/development/python-modules/gyp/no-xcode.patch
index 951be7b005a..eb33a2b9987 100644
--- a/pkgs/development/python-modules/gyp/no-xcode.patch
+++ b/pkgs/development/python-modules/gyp/no-xcode.patch
@@ -56,11 +56,11 @@ index b2aab986a427d5285d70558bf97f0a42bfe1556e..20592c73fae660009aac621097cf3c4f
          l = '-l' + m.group(1)
        else:
          l = library
--    return l.replace('$(SDKROOT)', self._SdkPath())
+-    return l.replace('$(SDKROOT)', self._SdkPath(config_name))
 +    if self._SdkPath():
-+      return l.replace('$(SDKROOT)', self._SdkPath())
++      return l.replace('$(SDKROOT)', self._SdkPath(config_name))
 +    else:
 +      return l
  
-   def AdjustLibraries(self, libraries):
+   def AdjustLibraries(self, libraries, config_name=None):
      """Transforms entries like 'Cocoa.framework' in libraries into entries like
diff --git a/pkgs/development/python-modules/pyside/default.nix b/pkgs/development/python-modules/pyside/default.nix
index 791d5e83d3c..dc4f733a4cf 100644
--- a/pkgs/development/python-modules/pyside/default.nix
+++ b/pkgs/development/python-modules/pyside/default.nix
@@ -16,7 +16,7 @@ stdenv.mkDerivation {
   makeFlags = "QT_PLUGIN_PATH=" + pysideShiboken + "/lib/generatorrunner";
 
   meta = {
-    description = "LGPL-licensed Python bindings for the Qt cross-platform application and UI framework.";
+    description = "LGPL-licensed Python bindings for the Qt cross-platform application and UI framework";
     license = stdenv.lib.licenses.lgpl21;
     homepage = "http://www.pyside.org";
     maintainers = [ stdenv.lib.maintainers.chaoflow ];
diff --git a/pkgs/development/python-modules/pyside/tools.nix b/pkgs/development/python-modules/pyside/tools.nix
index 0b5e6851761..a3153bed217 100644
--- a/pkgs/development/python-modules/pyside/tools.nix
+++ b/pkgs/development/python-modules/pyside/tools.nix
@@ -14,7 +14,7 @@ stdenv.mkDerivation {
   buildInputs = [ cmake pyside python27 qt4 pysideShiboken ];
 
   meta = {
-    description = "Tools for pyside, the LGPL-licensed Python bindings for the Qt cross-platform application and UI framework.";
+    description = "Tools for pyside, the LGPL-licensed Python bindings for the Qt cross-platform application and UI framework";
     license = stdenv.lib.licenses.gpl2;
     homepage = "http://www.pyside.org";
     maintainers = [ stdenv.lib.maintainers.chaoflow ];
diff --git a/pkgs/development/qtcreator/default.nix b/pkgs/development/qtcreator/default.nix
index 97f238302ec..55e33c45ca9 100644
--- a/pkgs/development/qtcreator/default.nix
+++ b/pkgs/development/qtcreator/default.nix
@@ -30,14 +30,14 @@ stdenv.mkDerivation rec {
   installFlags = "INSTALL_ROOT=$(out)";
 
   meta = {
-    description = "Qt Creator is a cross-platform IDE tailored to the needs of Qt developers.";
+    description = "Cross-platform IDE tailored to the needs of Qt developers";
     longDescription = ''
-        Qt Creator is a cross-platform IDE (integrated development environment) tailored to the needs of Qt developers.
-        It includes features such as an advanced code editor, a visual debugger and a GUI designer.
-      '';
+      Qt Creator is a cross-platform IDE (integrated development environment)
+      tailored to the needs of Qt developers. It includes features such as an
+      advanced code editor, a visual debugger and a GUI designer.
+    '';
     homepage = "http://qt-project.org/wiki/Category:Tools::QtCreator";
     license = "LGPL";
-
     maintainers = [ stdenv.lib.maintainers.bbenoist ];
     platforms = stdenv.lib.platforms.all;
   };
diff --git a/pkgs/development/r-modules/generic/builder.sh b/pkgs/development/r-modules/generic/builder.sh
new file mode 100644
index 00000000000..0c5d934c10c
--- /dev/null
+++ b/pkgs/development/r-modules/generic/builder.sh
@@ -0,0 +1,23 @@
+source $stdenv/setup
+
+export R_LIBS_SITE="$R_LIBS_SITE${R_LIBS_SITE:+:}$out/library"
+
+
+if test -n "$rPreHook"; then
+    eval "$rPreHook"
+fi
+
+installPhase() {
+	runHook preInstall
+	mkdir -p $out/library
+	R CMD INSTALL -l $out/library $src
+	runHook postInstall
+}
+
+postFixup() {
+    if test -e $out/nix-support/propagated-native-build-inputs; then
+        ln -s $out/nix-support/propagated-native-build-inputs $out/nix-support/propagated-user-env-packages
+    fi
+}
+
+genericBuild
diff --git a/pkgs/development/r-modules/generic/default.nix b/pkgs/development/r-modules/generic/default.nix
new file mode 100644
index 00000000000..d405cc018d1
--- /dev/null
+++ b/pkgs/development/r-modules/generic/default.nix
@@ -0,0 +1,17 @@
+R:
+
+{ buildInputs ? [], ... } @ attrs:
+
+R.stdenv.mkDerivation (
+  {
+  }
+  //
+  attrs
+  //
+  {
+    name = "r-" + attrs.name;
+    builder = ./builder.sh;
+    buildInputs = buildInputs ++ [ R ];
+    phases = [ "installPhase" "fixupPhase" ];
+  }
+)
diff --git a/pkgs/development/tools/analysis/checkstyle/default.nix b/pkgs/development/tools/analysis/checkstyle/default.nix
index 09656dc520a..1dfaa5cf875 100644
--- a/pkgs/development/tools/analysis/checkstyle/default.nix
+++ b/pkgs/development/tools/analysis/checkstyle/default.nix
@@ -15,7 +15,12 @@ stdenv.mkDerivation {
   '';
 
   meta = {
-    description = "A development tool to help programmers write Java code that adheres to a coding standard. By default it supports the Sun Code Conventions, but is highly configurable." ;
+    description = "Checks Java source against a coding standard";
+    longDescription = ''
+      checkstyle is a development tool to help programmers write Java code that
+      adheres to a coding standard. By default it supports the Sun Code
+      Conventions, but is highly configurable.
+    '';
     homepage = http://checkstyle.sourceforge.net/;
   };
 }
diff --git a/pkgs/development/tools/analysis/cppcheck/default.nix b/pkgs/development/tools/analysis/cppcheck/default.nix
index b152f0537e3..8aea7bc8aa8 100644
--- a/pkgs/development/tools/analysis/cppcheck/default.nix
+++ b/pkgs/development/tools/analysis/cppcheck/default.nix
@@ -17,7 +17,7 @@ stdenv.mkDerivation {
   configurePhase = "makeFlags=PREFIX=$out";
 
   meta = {
-    description = "check C/C++ code for memory leaks, mismatching allocation-deallocation, buffer overrun, etc.";
+    description = "Check C/C++ code for memory leaks, mismatching allocation-deallocation, buffer overrun and more";
     homepage = "http://sourceforge.net/apps/mediawiki/cppcheck/";
     license = "GPL";
     platforms = stdenv.lib.platforms.unix;
diff --git a/pkgs/development/tools/analysis/jdepend/default.nix b/pkgs/development/tools/analysis/jdepend/default.nix
index 7498d3b652a..586e9d5cd5d 100644
--- a/pkgs/development/tools/analysis/jdepend/default.nix
+++ b/pkgs/development/tools/analysis/jdepend/default.nix
@@ -15,7 +15,7 @@ stdenv.mkDerivation {
   '';
 
   meta = {
-    description = "Depend traverses Java class file directories and generates design quality metrics for each Java package." ;
+    description = "Traverses Java class file directories and generates design quality metrics for each Java package";
     homepage = http://www.clarkware.com/software/JDepend.html ;
   };
 }
diff --git a/pkgs/development/tools/analysis/pmd/default.nix b/pkgs/development/tools/analysis/pmd/default.nix
index b830ee00838..14007d80b0f 100644
--- a/pkgs/development/tools/analysis/pmd/default.nix
+++ b/pkgs/development/tools/analysis/pmd/default.nix
@@ -15,7 +15,7 @@ stdenv.mkDerivation {
   '';
 
   meta = {
-    description = "PMD scans Java source code and looks for potential problems." ;
+    description = "Scans Java source code and looks for potential problems";
     homepage = http://pmd.sourceforge.net/;
   };
 }
diff --git a/pkgs/development/tools/build-managers/apache-ant/default.nix b/pkgs/development/tools/build-managers/apache-ant/default.nix
index 03428552229..c14e09e25b7 100644
--- a/pkgs/development/tools/build-managers/apache-ant/default.nix
+++ b/pkgs/development/tools/build-managers/apache-ant/default.nix
@@ -23,4 +23,8 @@ stdenv.mkDerivation {
     url = "mirror://apache/ant/binaries/apache-ant-${version}-bin.tar.bz2";
     sha1 = "d9e3e83dd9664cfe1dcd4841c082db3f559af922";
   };
+
+  meta = {
+    description = "Java-based build tool";
+  };
 }
diff --git a/pkgs/development/tools/build-managers/apache-ant/from-source.nix b/pkgs/development/tools/build-managers/apache-ant/from-source.nix
index 01fdd5541ec..14213415ff8 100644
--- a/pkgs/development/tools/build-managers/apache-ant/from-source.nix
+++ b/pkgs/development/tools/build-managers/apache-ant/from-source.nix
@@ -57,7 +57,7 @@ EOF
   '';
 
   meta = {
-    description = "Apache Ant, a Java-based build tool";
+    description = "Java-based build tool";
 
     longDescription = ''
       Apache Ant is a Java-based build tool.  In theory, it is kind of like
diff --git a/pkgs/development/tools/build-managers/colormake/default.nix b/pkgs/development/tools/build-managers/colormake/default.nix
index 9d62b4e187b..25ef7ef0b24 100644
--- a/pkgs/development/tools/build-managers/colormake/default.nix
+++ b/pkgs/development/tools/build-managers/colormake/default.nix
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = {
-    description = "A simple wrapper around make to colorize the output.";
+    description = "Simple wrapper around make to colorize the output";
     license = "GPLv2";
   };
 }
diff --git a/pkgs/development/tools/build-managers/gradle/default.nix b/pkgs/development/tools/build-managers/gradle/default.nix
index 576d8e357f4..97b50d0019f 100644
--- a/pkgs/development/tools/build-managers/gradle/default.nix
+++ b/pkgs/development/tools/build-managers/gradle/default.nix
@@ -1,24 +1,25 @@
-{ stdenv, fetchurl, unzip }:
-
-# at runtime, need jdk
+{ stdenv, fetchurl, unzip, jdk, makeWrapper }:
 
 stdenv.mkDerivation rec {
-  name = "gradle-0.8";
+  name = "gradle-1.8";
 
   src = fetchurl {
-    url = "http://dist.codehaus.org/gradle/gradle-0.8-bin.zip";
-    sha256 = "940e623ea98e40ea9ad398770a6ebb91a61c0869d394dda81aa86b0f4f0025e7";
+    url = "http://services.gradle.org/distributions/${name}-bin.zip";
+    sha256 = "00spxad9b5vddshp02cic0ds8icgb1clknl7494f467x2pxbnhm3";
   };
 
   installPhase = ''
-    mkdir -p $out
-    rm bin/*.bat
-    mv * $out
+    mkdir -pv $out
+    cp -rv lib $out
+
+    makeWrapper ${jdk}/bin/java $out/bin/gradle \
+      --set JAVA_HOME ${jdk} \
+      --add-flags "-classpath $out/lib/gradle-launcher-1.8.jar org.gradle.launcher.GradleMain"
   '';
 
   phases = "unpackPhase installPhase";
 
-  buildInputs = [unzip];
+  buildInputs = [ unzip jdk makeWrapper ];
 
   meta = {
     description = "Gradle is an enterprise-grade build system";
diff --git a/pkgs/development/tools/build-managers/leiningen/builder.sh b/pkgs/development/tools/build-managers/leiningen/builder.sh
index f5489a4a76f..8d0924028cc 100644
--- a/pkgs/development/tools/build-managers/leiningen/builder.sh
+++ b/pkgs/development/tools/build-managers/leiningen/builder.sh
@@ -20,4 +20,6 @@ chmod -v 755 $out_bin
 
 patchShebangs $out
 
-wrapProgram $out_bin --prefix PATH ":" ${rlwrap}/bin
+wrapProgram $out_bin \
+    --prefix PATH ":" ${rlwrap}/bin \
+    --set LEIN_GPG ${gnupg}/bin/gpg
diff --git a/pkgs/development/tools/build-managers/leiningen/default.nix b/pkgs/development/tools/build-managers/leiningen/default.nix
index 4ca362ede0a..b1664010550 100644
--- a/pkgs/development/tools/build-managers/leiningen/default.nix
+++ b/pkgs/development/tools/build-managers/leiningen/default.nix
@@ -1,23 +1,23 @@
-{ stdenv, fetchurl, makeWrapper, jdk, rlwrap, clojure }:
+{ stdenv, fetchurl, makeWrapper, jdk, rlwrap, clojure, gnupg }:
 
 stdenv.mkDerivation rec {
   pname = "leiningen";
-  version = "2.3.1";
+  version = "2.3.2";
   name = "${pname}-${version}";
 
   src = fetchurl {
     url = "https://raw.github.com/technomancy/leiningen/${version}/bin/lein-pkg";
-    sha256 = "07z4sr4ssi9lqr1kydxn4gp992n44jsr6llarlvpx0ns8yi4gx0l";
+    sha256 = "1dpvs6b2n309ixglmdpw64k8fbz8n4rd61xp4jrih0z7dgvcql6h";
   };
 
   jarsrc = fetchurl {
     url = "https://leiningen.s3.amazonaws.com/downloads/${pname}-${version}-standalone.jar";
-    sha256 = "00hmxyvrzxjwa2qz3flnrvg2k2llzvprk9b5szyrh3rv5z5jd4hw";
+    sha256 = "0g6sgmgl0azawwchi86qxqsknk753ffwiszsxg4idqb713ac6cda";
   };
 
   patches = ./lein_2.3.0.patch;
 
-  inherit rlwrap clojure;
+  inherit rlwrap clojure gnupg;
 
   builder = ./builder.sh;
 
@@ -29,7 +29,7 @@ stdenv.mkDerivation rec {
     homepage = http://leiningen.org/;
     description = "Project automation for Clojure";
     license = "EPL";
-    platforms = stdenv.lib.platforms.unix;
+    platforms = stdenv.lib.platforms.linux;
     maintainer = with stdenv.lib.maintainers; [ the-kenny ];
   };
 }
diff --git a/pkgs/development/tools/build-managers/ninja/default.nix b/pkgs/development/tools/build-managers/ninja/default.nix
index 68a6640951b..ed9890150a3 100644
--- a/pkgs/development/tools/build-managers/ninja/default.nix
+++ b/pkgs/development/tools/build-managers/ninja/default.nix
@@ -2,12 +2,12 @@
 
 stdenv.mkDerivation rec {
   name = "ninja-${version}";
-  version = "1.3.4";
+  version = "1.4.0";
 
   src = fetchurl {
     name = "${name}.tar.gz";
     url = "https://github.com/martine/ninja/archive/v${version}.tar.gz";
-    sha256 = "16b0dxq3v19qjchcmfqq3m4l8s4qx2d674vfvamg0s3vvfqnc477";
+    sha256 = "05y3whnp0fvfv1wsp862x0w1vrn3yjzzg8ypvbpcv6y6qlrsn73h";
   };
 
   buildInputs = [ python asciidoc re2c ];
diff --git a/pkgs/development/tools/build-managers/rebar/default.nix b/pkgs/development/tools/build-managers/rebar/default.nix
index 68eacf8d2ea..ac695178541 100644
--- a/pkgs/development/tools/build-managers/rebar/default.nix
+++ b/pkgs/development/tools/build-managers/rebar/default.nix
@@ -18,7 +18,7 @@ stdenv.mkDerivation {
 
   meta = {
     homepage = "https://github.com/rebar/rebar";
-    description = "Erlang build tool that makes it easy to compile and test Erlang applications, port drivers and releases.";
+    description = "Erlang build tool that makes it easy to compile and test Erlang applications, port drivers and releases";
 
     longDescription = ''
       rebar is a self-contained Erlang script, so it's easy to
diff --git a/pkgs/development/tools/casperjs/default.nix b/pkgs/development/tools/casperjs/default.nix
index f140f0d7862..bd63a0e68ee 100644
--- a/pkgs/development/tools/casperjs/default.nix
+++ b/pkgs/development/tools/casperjs/default.nix
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = {
-    description = "Navigation scripting & testing utility for PhantomJS.";
+    description = "Navigation scripting & testing utility for PhantomJS";
     longDescription = ''
       CasperJS is a navigation scripting & testing utility for PhantomJS.
       It eases the process of defining a full navigation scenario and provides useful high-level
@@ -41,6 +41,6 @@ stdenv.mkDerivation rec {
     license = stdenv.lib.licenses.mit;
 
     maintainers = [ stdenv.lib.maintainers.bluescreen303 ];
-    platforms = stdenv.lib.platforms.all;
+    platforms = stdenv.lib.platforms.linux;
   };
 }
diff --git a/pkgs/development/tools/documentation/haddock/2.7.2.nix b/pkgs/development/tools/documentation/haddock/2.7.2.nix
index 8dd3460b6f8..fd31a96b291 100644
--- a/pkgs/development/tools/documentation/haddock/2.7.2.nix
+++ b/pkgs/development/tools/documentation/haddock/2.7.2.nix
@@ -10,7 +10,7 @@ cabal.mkDerivation (self : {
   doCheck = false;
 
   postInstall = ''
-   wrapProgram $out/bin/haddock --add-flags "\$(${self.ghc.GHCGetPackages} ${self.ghc.ghcVersion} \"\$(dirname \$0)\" \"--optghc=-package-conf --optghc=\")"
+   wrapProgram $out/bin/haddock --add-flags "\$(${self.ghc.GHCGetPackages} ${self.ghc.version} \"\$(dirname \$0)\" \"--optghc=-package-conf --optghc=\")"
   '';
 
   meta = {
diff --git a/pkgs/development/tools/documentation/haddock/2.9.2.nix b/pkgs/development/tools/documentation/haddock/2.9.2.nix
index 61e457426de..fcae14d789e 100644
--- a/pkgs/development/tools/documentation/haddock/2.9.2.nix
+++ b/pkgs/development/tools/documentation/haddock/2.9.2.nix
@@ -10,7 +10,7 @@ cabal.mkDerivation (self : {
   doCheck = false;
 
   postInstall = ''
-   wrapProgram $out/bin/haddock --add-flags "\$(${self.ghc.GHCGetPackages} ${self.ghc.ghcVersion} \"\$(dirname \$0)\" \"--optghc=-package-conf --optghc=\")"
+   wrapProgram $out/bin/haddock --add-flags "\$(${self.ghc.GHCGetPackages} ${self.ghc.version} \"\$(dirname \$0)\" \"--optghc=-package-conf --optghc=\")"
   '';
 
   meta = {
diff --git a/pkgs/development/tools/gnulib/default.nix b/pkgs/development/tools/gnulib/default.nix
index 24896aa5826..0d298558e5e 100644
--- a/pkgs/development/tools/gnulib/default.nix
+++ b/pkgs/development/tools/gnulib/default.nix
@@ -1,12 +1,12 @@
 { stdenv, fetchgit }:
 
 stdenv.mkDerivation {
-  name = "gnulib-0.0-7952-g439b0e9";
+  name = "gnulib-0.0-8015-gf0aab22";
 
   src = fetchgit {
     url = "http://git.savannah.gnu.org/r/gnulib.git";
-    rev = "439b0e925f9ffb6fe58481717def708af96a9321";
-    sha256 = "0xvnqn3323w0wnd1p7dhkcd4mihfh2dby88kv2dsclszppd9g4dc";
+    rev = "f0aab227265173908ecaa2353de6cf791cec3304";
+    sha256 = "162i39wvrmjhkg8w07i92vg9l0f0lk57zl1ynf0lvs70rkdd8a82";
   };
 
   buildPhase = ":";
diff --git a/pkgs/development/tools/haskell/HaRe/default.nix b/pkgs/development/tools/haskell/HaRe/default.nix
index efdc65c389e..f7d67f4be66 100644
--- a/pkgs/development/tools/haskell/HaRe/default.nix
+++ b/pkgs/development/tools/haskell/HaRe/default.nix
@@ -6,8 +6,8 @@
 
 cabal.mkDerivation (self: {
   pname = "HaRe";
-  version = "0.7.0.2";
-  sha256 = "05dlrx4wfadv798098bclkmsmm6f226n9rqp19ajdwaa11x5mf8d";
+  version = "0.7.0.7";
+  sha256 = "0pgl5mav4sqc453by7nddf5fz7nj231072bklzj6crcph7qw4zy4";
   isLibrary = true;
   isExecutable = true;
   buildDepends = [
diff --git a/pkgs/development/tools/haskell/cabal2nix/default.nix b/pkgs/development/tools/haskell/cabal2nix/default.nix
index 4e2bbf63b31..cc44268f3a3 100644
--- a/pkgs/development/tools/haskell/cabal2nix/default.nix
+++ b/pkgs/development/tools/haskell/cabal2nix/default.nix
@@ -3,8 +3,8 @@
 
 cabal.mkDerivation (self: {
   pname = "cabal2nix";
-  version = "1.54";
-  sha256 = "169syf99gs0gj44hcnpgx0xvrmz5mq70hb6bq6ydma9ivjvz2jg4";
+  version = "1.55";
+  sha256 = "0rda8g595pr7vlhzyflw9kz6fw1iz76yimbl1zizgrnpnq3h11w3";
   isLibrary = false;
   isExecutable = true;
   buildDepends = [ Cabal filepath hackageDb HTTP mtl regexPosix ];
diff --git a/pkgs/development/tools/haskell/hlint/default.nix b/pkgs/development/tools/haskell/hlint/default.nix
index d1d03c2c890..73ab425ea8d 100644
--- a/pkgs/development/tools/haskell/hlint/default.nix
+++ b/pkgs/development/tools/haskell/hlint/default.nix
@@ -4,8 +4,8 @@
 
 cabal.mkDerivation (self: {
   pname = "hlint";
-  version = "1.8.51";
-  sha256 = "0cm78921ksysiz81x3m7kjq343fr46fpm61cw367aljd86lhivv1";
+  version = "1.8.53";
+  sha256 = "1gnv9h909qgf80bpb769mr1paf8lzp3xlwmyw4nxdj84fn0y57q0";
   isLibrary = true;
   isExecutable = true;
   buildDepends = [
diff --git a/pkgs/development/tools/haskell/keter/default.nix b/pkgs/development/tools/haskell/keter/default.nix
index 4cb75151b00..e6377a201fe 100644
--- a/pkgs/development/tools/haskell/keter/default.nix
+++ b/pkgs/development/tools/haskell/keter/default.nix
@@ -9,8 +9,8 @@
 
 cabal.mkDerivation (self: {
   pname = "keter";
-  version = "1.0.1";
-  sha256 = "0ghgwp1winf0jj70jrwsk4b85f8m4v78n8kijhqghh4kskh457b5";
+  version = "1.0.1.1";
+  sha256 = "1bcp9yxmh5z7cvap4nrj8gxnndwws21w6y352yasf35bf432nxa9";
   isLibrary = true;
   isExecutable = true;
   buildDepends = [
diff --git a/pkgs/development/tools/haskell/packunused/default.nix b/pkgs/development/tools/haskell/packunused/default.nix
index 814c2774cb2..35d318d36ba 100644
--- a/pkgs/development/tools/haskell/packunused/default.nix
+++ b/pkgs/development/tools/haskell/packunused/default.nix
@@ -2,11 +2,12 @@
 
 cabal.mkDerivation (self: {
   pname = "packunused";
-  version = "0.1.0.0";
-  sha256 = "131x99id3jcxglj24p5sjb6mnhphj925pp4jdjy09y6ai7wss3rs";
+  version = "0.1.0.1";
+  sha256 = "130717k4rknj5jl904cmb4h09msp4xjj84w6iwzc10lz736dk3jd";
   isLibrary = false;
   isExecutable = true;
   buildDepends = [ Cabal cmdargs filepath haskellSrcExts ];
+  jailbreak = true;
   meta = {
     homepage = "https://github.com/hvr/packunused";
     description = "Tool for detecting redundant Cabal package dependencies";
diff --git a/pkgs/development/tools/misc/astyle/default.nix b/pkgs/development/tools/misc/astyle/default.nix
index 9b1e9955732..6128406bbe5 100644
--- a/pkgs/development/tools/misc/astyle/default.nix
+++ b/pkgs/development/tools/misc/astyle/default.nix
@@ -18,7 +18,7 @@ stdenv.mkDerivation {
 
   meta = {
     homepage = "http://astyle.sourceforge.net/";
-    description = "source code reformatter";
+    description = "Source code indenter, formatter, and beautifier for C, C++, C# and Java";
     license = "LGPL";
 
     platforms = stdenv.lib.platforms.linux;
diff --git a/pkgs/development/tools/misc/autobuild/default.nix b/pkgs/development/tools/misc/autobuild/default.nix
index f8497b5dece..88246e4bb6e 100644
--- a/pkgs/development/tools/misc/autobuild/default.nix
+++ b/pkgs/development/tools/misc/autobuild/default.nix
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = {
-    description = "Simon Josefsson's Autobuild, a continuous integration tool";
+    description = "Continuous integration tool";
 
     longDescription = ''
       Autobuild is a package that process output from building
diff --git a/pkgs/development/tools/misc/autoconf/2.13.nix b/pkgs/development/tools/misc/autoconf/2.13.nix
index 1dfe4d4a0a7..2d8169d408f 100644
--- a/pkgs/development/tools/misc/autoconf/2.13.nix
+++ b/pkgs/development/tools/misc/autoconf/2.13.nix
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     homepage = http://www.gnu.org/software/autoconf/;
-    description = "GNU Autoconf, a part of the GNU Build System";
+    description = "Part of the GNU Build System";
 
     longDescription = ''
       GNU Autoconf is an extensible package of M4 macros that produce
diff --git a/pkgs/development/tools/misc/autoconf/default.nix b/pkgs/development/tools/misc/autoconf/default.nix
index b4de66d9baf..08fcd95afb5 100644
--- a/pkgs/development/tools/misc/autoconf/default.nix
+++ b/pkgs/development/tools/misc/autoconf/default.nix
@@ -29,7 +29,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     homepage = http://www.gnu.org/software/autoconf/;
-    description = "GNU Autoconf, a part of the GNU Build System";
+    description = "Part of the GNU Build System";
 
     longDescription = ''
       GNU Autoconf is an extensible package of M4 macros that produce
diff --git a/pkgs/development/tools/misc/autogen/default.nix b/pkgs/development/tools/misc/autogen/default.nix
index 25fa29526c9..cd4f19694b2 100644
--- a/pkgs/development/tools/misc/autogen/default.nix
+++ b/pkgs/development/tools/misc/autogen/default.nix
@@ -25,7 +25,7 @@ let version = "5.17"; in
     #doCheck = true; # 2 tests fail because of missing /dev/tty
 
     meta = {
-      description = "GNU AutoGen, an automated text and program generation tool";
+      description = "Automated text and program generation tool";
 
       longDescription = ''
         AutoGen is a tool designed to simplify the creation and maintenance
diff --git a/pkgs/development/tools/misc/automake/automake-1.10.x.nix b/pkgs/development/tools/misc/automake/automake-1.10.x.nix
index c015c0115fe..80b033425a1 100644
--- a/pkgs/development/tools/misc/automake/automake-1.10.x.nix
+++ b/pkgs/development/tools/misc/automake/automake-1.10.x.nix
@@ -26,7 +26,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     homepage = http://www.gnu.org/software/automake/;
-    description = "GNU Automake, a GNU standard-compliant makefile generator";
+    description = "GNU standard-compliant makefile generator";
 
     longDescription = ''
       GNU Automake is a tool for automatically generating
diff --git a/pkgs/development/tools/misc/automake/automake-1.11.x.nix b/pkgs/development/tools/misc/automake/automake-1.11.x.nix
index 91c27deb8b8..0af9877c935 100644
--- a/pkgs/development/tools/misc/automake/automake-1.11.x.nix
+++ b/pkgs/development/tools/misc/automake/automake-1.11.x.nix
@@ -32,7 +32,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     homepage = http://www.gnu.org/software/automake/;
-    description = "GNU Automake, a GNU standard-compliant makefile generator";
+    description = "GNU standard-compliant makefile generator";
 
     longDescription = ''
       GNU Automake is a tool for automatically generating
diff --git a/pkgs/development/tools/misc/automake/automake-1.12.x.nix b/pkgs/development/tools/misc/automake/automake-1.12.x.nix
index bd609c4a40d..8bee4790bcb 100644
--- a/pkgs/development/tools/misc/automake/automake-1.12.x.nix
+++ b/pkgs/development/tools/misc/automake/automake-1.12.x.nix
@@ -38,7 +38,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     homepage = http://www.gnu.org/software/automake/;
-    description = "GNU Automake, a GNU standard-compliant makefile generator";
+    description = "GNU standard-compliant makefile generator";
 
     longDescription = ''
       GNU Automake is a tool for automatically generating
diff --git a/pkgs/development/tools/misc/automake/automake-1.13.x.nix b/pkgs/development/tools/misc/automake/automake-1.13.x.nix
index 400d554b65e..96a93e8d60b 100644
--- a/pkgs/development/tools/misc/automake/automake-1.13.x.nix
+++ b/pkgs/development/tools/misc/automake/automake-1.13.x.nix
@@ -26,7 +26,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     homepage = "http://www.gnu.org/software/automake/";
-    description = "GNU Automake, a GNU standard-compliant makefile generator";
+    description = "GNU standard-compliant makefile generator";
     license = "GPLv2+";
 
     longDescription = ''
diff --git a/pkgs/development/tools/misc/avarice/default.nix b/pkgs/development/tools/misc/avarice/default.nix
index bc3785181a8..e2c4c89e998 100644
--- a/pkgs/development/tools/misc/avarice/default.nix
+++ b/pkgs/development/tools/misc/avarice/default.nix
@@ -13,7 +13,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     license = stdenv.lib.licenses.gpl2;
-    description = "AVaRICE translates between GDB's remote debug protocol and the AVR JTAG ICE protocol";
+    description = "Translator between GDB's remote debug protocol and the AVR JTAG ICE protocol";
     homepage = http://sourceforge.net/projects/avarice/files/avarice/;
     maintainers = [ stdenv.lib.maintainers.smironov ];
     platforms = stdenv.lib.platforms.linux;
diff --git a/pkgs/development/tools/misc/avrdude/default.nix b/pkgs/development/tools/misc/avrdude/default.nix
index 7574500dbbb..133e1c38194 100644
--- a/pkgs/development/tools/misc/avrdude/default.nix
+++ b/pkgs/development/tools/misc/avrdude/default.nix
@@ -3,11 +3,11 @@
 let edf = composableDerivation.edf; in
 
 composableDerivation.composableDerivation {} rec {
-  name="avrdude-5.10";
+  name="avrdude-5.11";
 
   src = fetchurl {
     url = "mirror://savannah/avrdude/${name}.tar.gz";
-    sha256 = "0pmy73777x8p7f2aj2w2q1dnk1bvhd1cm7hcs1s9hsdqsmiinl41";
+    sha256 = "1mwmslqysak25a3x61pj97wygqgk79s5qpp50xzay6yb1zrz85v3";
   };
 
   configureFlags = [ "--disable-dependency-tracking" ];
diff --git a/pkgs/development/tools/misc/ccache/default.nix b/pkgs/development/tools/misc/ccache/default.nix
index 2cd00f51d9d..05a0d9bbeb5 100644
--- a/pkgs/development/tools/misc/ccache/default.nix
+++ b/pkgs/development/tools/misc/ccache/default.nix
@@ -38,7 +38,7 @@ stdenv.mkDerivation {
   };
 
   meta = {
-    description = "ccache, a tool that caches compilation results.";
+    description = "Compiler cache for fast recompilation of C/C++ code";
     homepage = http://ccache.samba.org/;
     license = "GPL";
   };
diff --git a/pkgs/development/tools/misc/cl-launch/default.nix b/pkgs/development/tools/misc/cl-launch/default.nix
index 63c585b00a9..3978d96400c 100644
--- a/pkgs/development/tools/misc/cl-launch/default.nix
+++ b/pkgs/development/tools/misc/cl-launch/default.nix
@@ -3,11 +3,11 @@ let
   s = # Generated upstream information
   rec {
     baseName="cl-launch";
-    version="3.21.1";
+    version="3.22.1";
     name="${baseName}-${version}";
-    hash="1241lyn2a3ry06ii9zlns0cj462bi7rih41vlbbmra1chj4c21ij";
-    url="http://common-lisp.net/project/xcvb/cl-launch/cl-launch-3.21.1.tar.gz";
-    sha256="1241lyn2a3ry06ii9zlns0cj462bi7rih41vlbbmra1chj4c21ij";
+    hash="08lb8nm4dvkbgraqclw5xd7j6xskw9hgjpg9ql087gib5a90k09i";
+    url="http://common-lisp.net/project/xcvb/cl-launch/cl-launch-3.22.1.tar.gz";
+    sha256="08lb8nm4dvkbgraqclw5xd7j6xskw9hgjpg9ql087gib5a90k09i";
   };
   buildInputs = [
   ];
diff --git a/pkgs/development/tools/misc/gtkdialog/default.nix b/pkgs/development/tools/misc/gtkdialog/default.nix
index 80a7fe48925..b447cf918cf 100644
--- a/pkgs/development/tools/misc/gtkdialog/default.nix
+++ b/pkgs/development/tools/misc/gtkdialog/default.nix
@@ -1,17 +1,17 @@
 {stdenv, fetchurl, gtk, pkgconfig}:
 
 stdenv.mkDerivation {
-  name = "gtkdialog-0.7.9";
+  name = "gtkdialog-0.8.3";
 
   src = fetchurl {
-    url = ftp://linux.pte.hu/pub/gtkdialog/gtkdialog-0.7.9.tar.gz;
-    sha256 = "142k8fnh1b8jclm7my2rhk7n8j1b0xh76b2gg712r738r94qwka2";
+    url = http://gtkdialog.googlecode.com/files/gtkdialog-0.8.3.tar.gz;
+    sha256 = "ff89d2d7f1e6488e5df5f895716ac1d4198c2467a2a5dc1f51ab408a2faec38e";
   };
 
   buildInputs = [ gtk pkgconfig ];
 
   meta = {
-    homepage = http://linux.pte.hu/~pipas/gtkdialog/;
+    homepage = http://gtkdialog.googlecode.com/;
     description = "Small utility for fast and easy GUI building from many scripted and compiled languages";
     license = "GPLv2+";
   };
diff --git a/pkgs/development/tools/misc/luarocks/default.nix b/pkgs/development/tools/misc/luarocks/default.nix
index 7681c8153db..d905d078d40 100644
--- a/pkgs/development/tools/misc/luarocks/default.nix
+++ b/pkgs/development/tools/misc/luarocks/default.nix
@@ -3,11 +3,11 @@ let
   s = # Generated upstream information
   rec {
     baseName="luarocks";
-    version="2.0.13-rc1";
+    version="2.1.0";
     name="${baseName}-${version}";
-    hash="1cpdi61dwcc2i4bwrn7bb8fibkd1s75jrr0bjcbs8p76rn6hkb2y";
-    url="http://luarocks.org/releases/luarocks-2.0.13-rc1.tar.gz";
-    sha256="1cpdi61dwcc2i4bwrn7bb8fibkd1s75jrr0bjcbs8p76rn6hkb2y";
+    hash="12aqwchzn77yin2ahpxnc3lam5w0xhksrnhf31n3r7cxdsfh446c";
+    url="http://luarocks.org/releases/luarocks-2.1.0-rc3.tar.gz";
+    sha256="12aqwchzn77yin2ahpxnc3lam5w0xhksrnhf31n3r7cxdsfh446c";
   };
   buildInputs = [
     lua curl
diff --git a/pkgs/development/tools/misc/ninka/default.nix b/pkgs/development/tools/misc/ninka/default.nix
index 1cb491df8d1..a5410204340 100644
--- a/pkgs/development/tools/misc/ninka/default.nix
+++ b/pkgs/development/tools/misc/ninka/default.nix
@@ -1,41 +1,34 @@
-{stdenv, fetchgit, perl}:
+{ stdenv, fetchurl, perl }:
 
 assert stdenv ? glibc;
 
-let
-  rev = "7a9a5c48ede207eec881";
-in
-stdenv.mkDerivation {
-  name = "ninka-"+rev;
-  src = fetchgit {
-    url = http://github.com/dmgerman/ninka.git;
-    inherit rev;
-    sha256 = "3e877fadf074b9c5abfe36ff10b7e332423d1d4c5b17accc5586c7cffdb2c7dd";
+stdenv.mkDerivation rec {
+  name = "ninka-${version}";
+  version = "1.1";
+
+  src = fetchurl {
+    url = "https://github.com/dmgerman/ninka/archive/${version}.tar.gz";
+    sha256 = "1cvbsmanw3i9igiafpx0ghg658c37riw56mjk5vsgpmnn3flvhib";
   };
   
   buildInputs = [ perl ];
   
   buildPhase = ''
     cd comments
-    tar xfvz comments.tar.gz
-    cd comments
     sed -i -e "s|/usr/local/bin|$out/bin|g" -e "s|/usr/local/man|$out/share/man|g" Makefile
     make
   '';
   
   installPhase = ''
-    cd ../..
-    mkdir -p $out/bin
-    cp ninka.pl $out/bin
-    cp -av {extComments,splitter,filter,senttok,matcher} $out/bin
-    
-    cd comments/comments    
     mkdir -p $out/{bin,share/man/man1}
     make install    
+
+    cp -a ../{ninka.pl,extComments,splitter,filter,senttok,matcher} $out/bin
   '';
   
   meta = {
-    license = "AGPLv3+";
     description = "A sentence based license detector";
+    homepage = "http://ninka.turingmachine.org/";
+    license = "AGPLv3+";
   };
 }
diff --git a/pkgs/development/tools/misc/stm32flash/default.nix b/pkgs/development/tools/misc/stm32flash/default.nix
index 496288285c7..6b99a5755e4 100644
--- a/pkgs/development/tools/misc/stm32flash/default.nix
+++ b/pkgs/development/tools/misc/stm32flash/default.nix
@@ -8,19 +8,17 @@ stdenv.mkDerivation {
     sha256 = "04k631g9lzvp9xr4sw51xpq1g542np61s1l8fpwx9rbsc8m5l0i6";
   };
 
-  buildInputs = [];
-
   installPhase = ''
     # Manually copy, make install copies to /usr/local/bin
     mkdir -pv $out/bin/
     cp stm32flash $out/bin/
   '';
 
-  meta = { 
-    description = "Open source flash program for the STM32 ARM processors using the ST bootloader.";
+  meta = with stdenv.lib; {
+    description = "Open source flash program for the STM32 ARM processors using the ST bootloader";
     homepage = https://code.google.com/p/stm32flash/;
     license = "GPLv2";
-    platforms = stdenv.lib.platforms.all; # Should work on all platforms
-    maintainers = [ stdenv.lib.maintainers.the-kenny ];
+    platforms = platforms.all; # Should work on all platforms
+    maintainers = [ maintainers.the-kenny ];
   };
 }
diff --git a/pkgs/development/tools/misc/sysbench/default.nix b/pkgs/development/tools/misc/sysbench/default.nix
index f09ab2af7d1..e3acf620c73 100644
--- a/pkgs/development/tools/misc/sysbench/default.nix
+++ b/pkgs/development/tools/misc/sysbench/default.nix
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = {
-    description = "SysBench is a modular, cross-platform and multi-threaded benchmark tool.";
+    description = "Modular, cross-platform and multi-threaded benchmark tool";
     license = "GPLv2";
     platforms = stdenv.lib.platforms.linux;
   };
diff --git a/pkgs/development/tools/misc/texinfo/5.1.nix b/pkgs/development/tools/misc/texinfo/5.1.nix
index cca368f619a..2f318f18d54 100644
--- a/pkgs/development/tools/misc/texinfo/5.1.nix
+++ b/pkgs/development/tools/misc/texinfo/5.1.nix
@@ -11,7 +11,7 @@ stdenv.mkDerivation rec {
   buildInputs = [ ncurses perl ];
 
   preInstall = ''
-    installFlags="TEXMF=$out/texmf";
+    installFlags="TEXMF=$out/texmf-dist";
     installTargets="install install-tex";
   '';
 
diff --git a/pkgs/development/tools/misc/xc3sprog/default.nix b/pkgs/development/tools/misc/xc3sprog/default.nix
new file mode 100644
index 00000000000..52471c30fd0
--- /dev/null
+++ b/pkgs/development/tools/misc/xc3sprog/default.nix
@@ -0,0 +1,25 @@
+{ stdenv, fetchsvn, cmake, libusb, libftdi }:
+
+# The xc3sprog project doesn't seem to make proper releases, they only put out
+# prebuilt binary subversion snapshots on sourceforge.
+
+stdenv.mkDerivation rec {
+  version = "748"; # latest @ 2013-10-26
+  name = "xc3sprog-${version}";
+
+  src = fetchsvn rec {
+    url = "https://svn.code.sf.net/p/xc3sprog/code/trunk";
+    sha256 = "0wkz6094kkqz91qpa24pzlbhndc47sjmqhwk3p7ccabv0041rzk0";
+    rev = "${version}";
+  };
+
+  buildInputs = [ cmake libusb libftdi ];
+
+  meta = with stdenv.lib; {
+    description = "Command-line tools for programming FPGAs, microcontrollers and PROMs via JTAG";
+    homepage = http://xc3sprog.sourceforge.net/;
+    license = licenses.gpl2Plus;
+    platforms = platforms.linux;
+    maintainers = [ maintainers.bjornfor ];
+  };
+}
diff --git a/pkgs/development/tools/parsing/alex/3.1.0.nix b/pkgs/development/tools/parsing/alex/3.1.0.nix
new file mode 100644
index 00000000000..b6d46bea58e
--- /dev/null
+++ b/pkgs/development/tools/parsing/alex/3.1.0.nix
@@ -0,0 +1,18 @@
+{ cabal, perl, QuickCheck }:
+
+cabal.mkDerivation (self: {
+  pname = "alex";
+  version = "3.1.0";
+  sha256 = "1d2kdn4g3zyc3ijiscbqayzg1apy0iih603dv90pr9w2f36djrkh";
+  isLibrary = false;
+  isExecutable = true;
+  buildDepends = [ QuickCheck ];
+  buildTools = [ perl ];
+  meta = {
+    homepage = "http://www.haskell.org/alex/";
+    description = "Alex is a tool for generating lexical analysers in Haskell";
+    license = self.stdenv.lib.licenses.bsd3;
+    platforms = self.ghc.meta.platforms;
+    maintainers = [ self.stdenv.lib.maintainers.andres ];
+  };
+})
diff --git a/pkgs/development/tools/parsing/happy/1.18.11.nix b/pkgs/development/tools/parsing/happy/1.18.11.nix
new file mode 100644
index 00000000000..41f6d5c49a4
--- /dev/null
+++ b/pkgs/development/tools/parsing/happy/1.18.11.nix
@@ -0,0 +1,18 @@
+{ cabal, mtl, perl }:
+
+cabal.mkDerivation (self: {
+  pname = "happy";
+  version = "1.18.11";
+  sha256 = "1hssiihzl7xipmn5bz71q30wbq2sj92lh2f7z4jarckhldwcqfi9";
+  isLibrary = false;
+  isExecutable = true;
+  buildDepends = [ mtl ];
+  buildTools = [ perl ];
+  meta = {
+    homepage = "http://www.haskell.org/happy/";
+    description = "Happy is a parser generator for Haskell";
+    license = self.stdenv.lib.licenses.bsd3;
+    platforms = self.ghc.meta.platforms;
+    maintainers = [ self.stdenv.lib.maintainers.andres ];
+  };
+})
diff --git a/pkgs/development/tools/parsing/happy/1.19.0.nix b/pkgs/development/tools/parsing/happy/1.19.0.nix
new file mode 100644
index 00000000000..2ff2950591e
--- /dev/null
+++ b/pkgs/development/tools/parsing/happy/1.19.0.nix
@@ -0,0 +1,18 @@
+{ cabal, mtl, perl }:
+
+cabal.mkDerivation (self: {
+  pname = "happy";
+  version = "1.19.0";
+  sha256 = "1phk44crr1zi4sd3slxj1ik5ll799zl48k69z1miws3mxq6w076z";
+  isLibrary = false;
+  isExecutable = true;
+  buildDepends = [ mtl ];
+  buildTools = [ perl ];
+  meta = {
+    homepage = "http://www.haskell.org/happy/";
+    description = "Happy is a parser generator for Haskell";
+    license = self.stdenv.lib.licenses.bsd3;
+    platforms = self.ghc.meta.platforms;
+    maintainers = [ self.stdenv.lib.maintainers.andres ];
+  };
+})
diff --git a/pkgs/development/tools/parsing/re2c/default.nix b/pkgs/development/tools/parsing/re2c/default.nix
index b7ed4fb8934..e603768b8cc 100644
--- a/pkgs/development/tools/parsing/re2c/default.nix
+++ b/pkgs/development/tools/parsing/re2c/default.nix
@@ -8,6 +8,6 @@ stdenv.mkDerivation {
   };
 
   meta = {
-    description = "Re2c is a tool for writing very fast and very flexible scanners.";
+    description = "Tool for writing very fast and very flexible scanners";
   };
 }
diff --git a/pkgs/development/tools/phantomjs/default.nix b/pkgs/development/tools/phantomjs/default.nix
index e17038692f5..7eea3bedcef 100644
--- a/pkgs/development/tools/phantomjs/default.nix
+++ b/pkgs/development/tools/phantomjs/default.nix
@@ -1,9 +1,9 @@
-{ stdenv, fetchurl, freetype, fontconfig }:
+{ stdenv, fetchurl, freetype, fontconfig, openssl }:
 
 assert stdenv.lib.elem stdenv.system [ "i686-linux" "x86_64-linux" ];
 
 stdenv.mkDerivation rec {
-  name = "phantomjs-1.9.1";
+  name = "phantomjs-1.9.2";
 
   # I chose to use the binary build for now.
   # The source version is quite nasty to compile
@@ -13,22 +13,23 @@ stdenv.mkDerivation rec {
   src = if stdenv.system == "i686-linux" then
           fetchurl {
             url = "http://phantomjs.googlecode.com/files/${name}-linux-i686.tar.bz2";
-            sha256 = "1r4ssx6v0ah18jy3vjswhki2i21r45qbs1jzh4x672wdc9lxz2p6";
+            sha256 = "1nywb9xhcfjark6zfjlnrljc08r5185vv25vfcc65jzla8hy75qp";
           }
         else # x86_64-linux
           fetchurl {
             url = "http://phantomjs.googlecode.com/files/${name}-linux-x86_64.tar.bz2";
-            sha256 = "1l7hlhspzw3zzsgz9cq0a3j26giynjicvb6y96fj3ipkn4shznnn";
+            sha256 = "1xsjx4j6rwkq27y4iqdn0ai4yrq70a3g9309blywki0g976phccg";
           };
 
   buildPhase = ''
     patchelf \
       --set-interpreter "$(cat $NIX_GCC/nix-support/dynamic-linker)" \
-      --set-rpath ${freetype}/lib:${fontconfig}/lib:${stdenv.gcc.gcc}/lib64:${stdenv.gcc.gcc}/lib \
+      --set-rpath "${freetype}/lib:${fontconfig}/lib:${stdenv.gcc.gcc}/lib64:${stdenv.gcc.gcc}/lib:${openssl}/lib" \
       bin/phantomjs
   '';
 
-  dontStrip = true;
+  dontPatchELF = true;
+  dontStrip    = true;
 
   installPhase = ''
     mkdir -p $out/share/doc/phantomjs
diff --git a/pkgs/development/tools/slimerjs/default.nix b/pkgs/development/tools/slimerjs/default.nix
new file mode 100644
index 00000000000..0fe10a0003a
--- /dev/null
+++ b/pkgs/development/tools/slimerjs/default.nix
@@ -0,0 +1,46 @@
+{stdenv, fetchurl, fetchgit, zip, unzip, xulrunner, bash}:
+let
+  s = # Generated upstream information
+  rec {
+    baseName="slimerjs";
+    version="git-2013-10-31";
+    name="${baseName}-${version}";
+    hash="643a9d2f97f238bbd9debb17c010946d507a3b740079d9398939e7fdd70256b9";
+    url="https://github.com/laurentj/slimerjs";
+    rev="fdeb7364d3e29b47391ed0651176c1aedcb5277f";
+    sha256="643a9d2f97f238bbd9debb17c010946d507a3b740079d9398939e7fdd70256b9";
+  };
+  buildInputs = [
+    unzip zip
+  ];
+in
+stdenv.mkDerivation {
+  inherit (s) name version;
+  inherit buildInputs;
+  # src = fetchurl {
+  #   inherit (s) url sha256;
+  # };
+  src = fetchgit {
+    inherit (s) url sha256 rev;
+  };
+  preConfigure = ''
+    test -d src && cd src
+    test -f omni.ja || zip omni.ja -r */
+  '';
+  installPhase = ''
+    mkdir -p "$out"/{bin,share/doc/slimerjs,lib/slimerjs}
+    cp LICENSE README* "$out/share/doc/slimerjs"
+    cp -r * "$out/lib/slimerjs"
+    echo '#!${bash}/bin/bash' >>  "$out/bin/slimerjs"
+    echo 'export SLIMERJSLAUNCHER=${xulrunner}/bin/xulrunner' >>  "$out/bin/slimerjs"
+    echo "'$out/lib/slimerjs/slimerjs' \"\$@\"" >> "$out/bin/slimerjs"
+    chmod a+x "$out/bin/slimerjs"
+  '';
+  meta = {
+    inherit (s) version;
+    description = ''Gecko-based programmatically-driven browser'';
+    license = stdenv.lib.licenses.mpl20 ;
+    maintainers = [stdenv.lib.maintainers.raskin];
+    platforms = stdenv.lib.platforms.linux;
+  };
+}
diff --git a/pkgs/development/tools/slimerjs/default.upstream b/pkgs/development/tools/slimerjs/default.upstream
new file mode 100644
index 00000000000..f2d6b89e51b
--- /dev/null
+++ b/pkgs/development/tools/slimerjs/default.upstream
@@ -0,0 +1,2 @@
+url http://slimerjs.org/download.html
+version_link '/slimerjs-[0-9.]+[.]zip$'
diff --git a/pkgs/development/tools/slimerjs/default.upstream.git b/pkgs/development/tools/slimerjs/default.upstream.git
new file mode 100644
index 00000000000..3066d5de829
--- /dev/null
+++ b/pkgs/development/tools/slimerjs/default.upstream.git
@@ -0,0 +1,3 @@
+url https://github.com/laurentj/slimerjs
+target default.nix
+GH_latest
diff --git a/pkgs/development/web/nodejs/default.nix b/pkgs/development/web/nodejs/default.nix
index 720f77d86f9..62665fe4935 100644
--- a/pkgs/development/web/nodejs/default.nix
+++ b/pkgs/development/web/nodejs/default.nix
@@ -6,7 +6,7 @@ let
     ln -sv /usr/sbin/dtrace $out/bin
   '';
 
-  version = "0.10.12";
+  version = "0.10.21";
 
   # !!! Should we also do shared libuv?
   deps = {
@@ -27,7 +27,7 @@ in stdenv.mkDerivation {
 
   src = fetchurl {
     url = "http://nodejs.org/dist/v${version}/node-v${version}.tar.gz";
-    sha256 = "1dlnjjr135h2xcxifb06g33yi2bc5zpvc06985x5cjj56g1sffbk";
+    sha256 = "038l4j0ilrsmc6m2z2qprqs82z7p4940scb8597hcmhp5kr5n4kw";
   };
 
   configureFlags = concatMap sharedConfigureFlags (builtins.attrNames deps);