about 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/compilers/go/1.4.nix9
-rw-r--r--pkgs/development/compilers/go/1.6.nix7
-rw-r--r--pkgs/development/compilers/go/1.7.nix7
-rw-r--r--pkgs/development/compilers/go/1.8.nix12
-rw-r--r--pkgs/development/compilers/openjdk-darwin/8.nix11
-rw-r--r--pkgs/development/compilers/ponyc/default.nix4
-rw-r--r--pkgs/development/compilers/ponyc/pony-stable.nix6
-rw-r--r--pkgs/development/compilers/rust/nightlyBin.nix9
-rw-r--r--pkgs/development/haskell-modules/configuration-hackage2nix.yaml3
-rw-r--r--pkgs/development/haskell-modules/default.nix14
-rw-r--r--pkgs/development/interpreters/clips/default.nix29
-rw-r--r--pkgs/development/interpreters/renpy/default.nix23
-rw-r--r--pkgs/development/libraries/SDL2_mixer/default.nix5
-rw-r--r--pkgs/development/libraries/babl/default.nix10
-rw-r--r--pkgs/development/libraries/bobcat/default.nix7
-rw-r--r--pkgs/development/libraries/iso-codes/default.nix18
-rw-r--r--pkgs/development/libraries/itk/default.nix2
-rw-r--r--pkgs/development/libraries/ldns/default.nix2
-rw-r--r--pkgs/development/libraries/libbson/default.nix18
-rw-r--r--pkgs/development/libraries/libcouchbase/default.nix27
-rw-r--r--pkgs/development/libraries/libdap/default.nix15
-rw-r--r--pkgs/development/libraries/libdiscid/default.nix10
-rw-r--r--pkgs/development/libraries/libextractor/default.nix4
-rw-r--r--pkgs/development/libraries/libibmad/default.nix4
-rw-r--r--pkgs/development/libraries/libsodium/default.nix4
-rw-r--r--pkgs/development/libraries/qt-5/5.7/qtmultimedia.nix6
-rw-r--r--pkgs/development/libraries/shapelib/default.nix19
-rw-r--r--pkgs/development/ocaml-modules/bos/default.nix27
-rw-r--r--pkgs/development/ocaml-modules/eliom/default.nix4
-rw-r--r--pkgs/development/ocaml-modules/functoria/default.nix27
-rw-r--r--pkgs/development/ocaml-modules/ocsigen-server/default.nix3
-rw-r--r--pkgs/development/ocaml-modules/ocsigen-toolkit/default.nix33
-rw-r--r--pkgs/development/ocaml-modules/rresult/default.nix24
-rw-r--r--pkgs/development/python-modules/django_guardian.nix4
-rw-r--r--pkgs/development/python-modules/pyGithub/default.nix28
-rw-r--r--pkgs/development/python-modules/pycassa/default.nix26
-rw-r--r--pkgs/development/python-modules/pygame/default.nix15
-rw-r--r--pkgs/development/python-modules/pytest-django/default.nix33
-rw-r--r--pkgs/development/python-modules/python-jose/default.nix29
-rw-r--r--pkgs/development/python-modules/python-jose/pycryptodome.patch37
-rw-r--r--pkgs/development/ruby-modules/bundler/default.nix4
-rw-r--r--pkgs/development/tools/build-managers/sbt/0.12.4.nix29
-rw-r--r--pkgs/development/tools/github/cligh/default.nix32
-rw-r--r--pkgs/development/tools/go2nix/default.nix9
-rw-r--r--pkgs/development/tools/misc/sipp/default.nix33
-rw-r--r--pkgs/development/tools/parsing/jshon/default.nix15
46 files changed, 568 insertions, 129 deletions
diff --git a/pkgs/development/compilers/go/1.4.nix b/pkgs/development/compilers/go/1.4.nix
index b703a92f3ea51..f60077e896215 100644
--- a/pkgs/development/compilers/go/1.4.nix
+++ b/pkgs/development/compilers/go/1.4.nix
@@ -1,4 +1,4 @@
-{ stdenv, lib, fetchurl, tzdata, iana_etc, libcCross
+{ stdenv, lib, fetchurl, fetchpatch, tzdata, iana_etc, libcCross
 , pkgconfig
 , pcre
 , Security }:
@@ -114,6 +114,13 @@ stdenv.mkDerivation rec {
   patches = [
     ./remove-tools-1.4.patch
     ./creds-test-1.4.patch
+
+    # This test checks for the wrong thing with recent tzdata. It's been fixed in master but the patch
+    # actually works on old versions too.
+    (fetchpatch {
+      url    = "https://github.com/golang/go/commit/91563ced5897faf729a34be7081568efcfedda31.patch";
+      sha256 = "1ny5l3f8a9dpjjrnjnsplb66308a0x13sa0wwr4j6yrkc8j4qxqi";
+    })
   ];
 
   GOOS = if stdenv.isDarwin then "darwin" else "linux";
diff --git a/pkgs/development/compilers/go/1.6.nix b/pkgs/development/compilers/go/1.6.nix
index 7d78f5efd1043..52ffbab6dcb89 100644
--- a/pkgs/development/compilers/go/1.6.nix
+++ b/pkgs/development/compilers/go/1.6.nix
@@ -113,6 +113,13 @@ stdenv.mkDerivation rec {
   patches = [
     ./remove-tools-1.5.patch
     ./creds-test.patch
+
+    # This test checks for the wrong thing with recent tzdata. It's been fixed in master but the patch
+    # actually works on old versions too.
+    (fetchpatch {
+      url    = "https://github.com/golang/go/commit/91563ced5897faf729a34be7081568efcfedda31.patch";
+      sha256 = "1ny5l3f8a9dpjjrnjnsplb66308a0x13sa0wwr4j6yrkc8j4qxqi";
+    })
   ];
 
   GOOS = if stdenv.isDarwin then "darwin" else "linux";
diff --git a/pkgs/development/compilers/go/1.7.nix b/pkgs/development/compilers/go/1.7.nix
index 0df2e8d6f7e9e..7fa35e1fcacbd 100644
--- a/pkgs/development/compilers/go/1.7.nix
+++ b/pkgs/development/compilers/go/1.7.nix
@@ -107,6 +107,13 @@ stdenv.mkDerivation rec {
     [ ./remove-tools-1.7.patch
       ./cacert-1.7.patch
       ./creds-test.patch
+
+      # This test checks for the wrong thing with recent tzdata. It's been fixed in master but the patch
+      # actually works on old versions too.
+      (fetchpatch {
+        url    = "https://github.com/golang/go/commit/91563ced5897faf729a34be7081568efcfedda31.patch";
+        sha256 = "1ny5l3f8a9dpjjrnjnsplb66308a0x13sa0wwr4j6yrkc8j4qxqi";
+      })
     ];
 
   SSL_CERT_FILE = "${cacert}/etc/ssl/certs/ca-bundle.crt";
diff --git a/pkgs/development/compilers/go/1.8.nix b/pkgs/development/compilers/go/1.8.nix
index 00ec11abc47b6..6d9ee3de5501b 100644
--- a/pkgs/development/compilers/go/1.8.nix
+++ b/pkgs/development/compilers/go/1.8.nix
@@ -80,11 +80,6 @@ stdenv.mkDerivation rec {
   '' + optionalString stdenv.isLinux ''
     sed -i 's,/usr/share/zoneinfo/,${tzdata}/share/zoneinfo/,' src/time/zoneinfo_unix.go
   '' + optionalString stdenv.isDarwin ''
-
-    # Disabling `format_test.go` because it fails on Darwin for an
-    # unknown reason see: https://github.com/NixOS/nixpkgs/pull/23122#issuecomment-282188727
-    rm src/time/format_test.go
-
     substituteInPlace src/race.bash --replace \
       "sysctl machdep.cpu.extfeatures | grep -qv EM64T" true
     sed -i 's,strings.Contains(.*sysctl.*,true {,' src/cmd/dist/util.go
@@ -115,6 +110,13 @@ stdenv.mkDerivation rec {
       ./cacert-1.8.patch
       ./creds-test.patch
       ./remove-test-pie-1.8.patch
+
+      # This test checks for the wrong thing with recent tzdata. It's been fixed in master but the patch
+      # works fine here for now.
+      (fetchpatch {
+        url    = "https://github.com/golang/go/commit/91563ced5897faf729a34be7081568efcfedda31.patch";
+        sha256 = "1ny5l3f8a9dpjjrnjnsplb66308a0x13sa0wwr4j6yrkc8j4qxqi";
+      })
     ];
 
   SSL_CERT_FILE = "${cacert}/etc/ssl/certs/ca-bundle.crt";
diff --git a/pkgs/development/compilers/openjdk-darwin/8.nix b/pkgs/development/compilers/openjdk-darwin/8.nix
index 1d12d59998a1e..2f3391f70e0d5 100644
--- a/pkgs/development/compilers/openjdk-darwin/8.nix
+++ b/pkgs/development/compilers/openjdk-darwin/8.nix
@@ -1,10 +1,16 @@
 { stdenv, fetchurl, unzip, setJavaClassPath, freetype }:
 let
+  jce-policies = fetchurl {
+    # Ugh, unversioned URLs... I hope this doesn't change often enough to cause pain before we move to a Darwin source build of OpenJDK!
+    url    = "http://cdn.azul.com/zcek/bin/ZuluJCEPolicies.zip";
+    sha256 = "0nk7m0lgcbsvldq2wbfni2pzq8h818523z912i7v8hdcij5s48c0";
+  };
+
   jdk = stdenv.mkDerivation {
     name = "zulu1.8.0_66-8.11.0.1";
 
     src = fetchurl {
-      url = http://cdn.azulsystems.com/zulu/bin/zulu1.8.0_66-8.11.0.1-macosx.zip;
+      url = "http://cdn.azulsystems.com/zulu/bin/zulu1.8.0_66-8.11.0.1-macosx.zip";
       sha256 = "0pvbpb3vf0509xm2x1rh0p0w4wmx50zf15604p28z1k8ai1a23sz";
       curlOpts = "-H Referer:https://www.azul.com/downloads/zulu/zulu-linux/";
     };
@@ -15,6 +21,9 @@ let
       mkdir -p $out
       mv * $out
 
+      unzip ${jce-policies}
+      mv -f ZuluJCEPolicies/*.jar $out/jre/lib/security/
+
       # jni.h expects jni_md.h to be in the header search path.
       ln -s $out/include/darwin/*_md.h $out/include/
     '';
diff --git a/pkgs/development/compilers/ponyc/default.nix b/pkgs/development/compilers/ponyc/default.nix
index 3f1aa85e0fcc3..e70fee3605b68 100644
--- a/pkgs/development/compilers/ponyc/default.nix
+++ b/pkgs/development/compilers/ponyc/default.nix
@@ -3,13 +3,13 @@
 
 stdenv.mkDerivation ( rec {
   name = "ponyc-${version}";
-  version = "0.11.0";
+  version = "0.11.3";
 
   src = fetchFromGitHub {
     owner = "ponylang";
     repo = "ponyc";
     rev = version;
-    sha256 = "0jjzc1711km53zkkxwy4r9ki9yxdx8mdjrp7g3mkr42p7q5h4w70";
+    sha256 = "08wh8rh17bf043glvn7778bwpxyzpm95kgfll645hf2m65n5ncsh";
   };
 
   buildInputs = [ llvm makeWrapper which ];
diff --git a/pkgs/development/compilers/ponyc/pony-stable.nix b/pkgs/development/compilers/ponyc/pony-stable.nix
index cd4859acec21e..6e669c97300c5 100644
--- a/pkgs/development/compilers/ponyc/pony-stable.nix
+++ b/pkgs/development/compilers/ponyc/pony-stable.nix
@@ -1,13 +1,13 @@
 {stdenv, fetchFromGitHub, ponyc }:
 
 stdenv.mkDerivation {
-  name = "pony-stable-2016-10-10";
+  name = "pony-stable-unstable-2017-01-03";
 
   src = fetchFromGitHub {
     owner = "jemc";
     repo = "pony-stable";
-    rev = "fdefa26fed93f4ff81c323f29abd47813c515703";
-    sha256 = "16inavy697icgryyvn9gcylgh639xxs7lnbrqdzcryvh0ck15qxk";
+    rev = "0054b429a54818d187100ed40f5525ec7931b31b";
+    sha256 = "0libx8byzwqjjgxxyiiahiprzzp845xgbk09sx9bzban5cd5j0g5";
   };
 
   buildInputs = [ ponyc ];
diff --git a/pkgs/development/compilers/rust/nightlyBin.nix b/pkgs/development/compilers/rust/nightlyBin.nix
index 9916e4555c56b..d8d0681a0c244 100644
--- a/pkgs/development/compilers/rust/nightlyBin.nix
+++ b/pkgs/development/compilers/rust/nightlyBin.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, makeWrapper, cacert, zlib, buildRustPackage }:
+{ stdenv, fetchurl, makeWrapper, cacert, zlib, buildRustPackage, curl }:
 
 let
   inherit (stdenv.lib) optionalString;
@@ -9,7 +9,7 @@ let
 
   bootstrapHash =
     if stdenv.system == "x86_64-linux"
-    then "1v7jvwigb29m15wilzcrk5jmlpaccpzbkhlzf7z5qw08320gvc91"
+    then "1d5h34dkm1r1ff562szygn9xk2qll1pjryvypl0lazzanxdh5gv5"
     else throw "missing bootstrap hash for platform ${stdenv.system}";
 
   needsPatchelf = stdenv.isLinux;
@@ -19,7 +19,7 @@ let
      sha256 = bootstrapHash;
   };
 
-  version = "2017-01-26";
+  version = "2017-03-16";
 in
 
 rec {
@@ -69,7 +69,7 @@ rec {
       license = [ licenses.mit licenses.asl20 ];
     };
 
-    buildInputs = [ makeWrapper ];
+    buildInputs = [ makeWrapper curl ];
     phases = ["unpackPhase" "installPhase"];
 
     installPhase = ''
@@ -78,6 +78,7 @@ rec {
 
       ${optionalString needsPatchelf ''
         patchelf \
+          --set-rpath "${stdenv.lib.makeLibraryPath [ curl zlib ]}" \
           --set-interpreter $(cat $NIX_CC/nix-support/dynamic-linker) \
           "$out/bin/cargo"
       ''}
diff --git a/pkgs/development/haskell-modules/configuration-hackage2nix.yaml b/pkgs/development/haskell-modules/configuration-hackage2nix.yaml
index cab70ea6f6d74..b693a55de55f4 100644
--- a/pkgs/development/haskell-modules/configuration-hackage2nix.yaml
+++ b/pkgs/development/haskell-modules/configuration-hackage2nix.yaml
@@ -2248,7 +2248,6 @@ extra-packages:
   - QuickCheck < 2                      # required by test-framework-quickcheck and its users
   - seqid < 0.2                         # newer versions depend on transformers 0.4.x which we cannot provide in GHC 7.8.x
   - seqid-streams < 0.2                 # newer versions depend on transformers 0.4.x which we cannot provide in GHC 7.8.x
-  - servant-auth-server < 0.2.2.0       # https://github.com/plow-technologies/servant-auth/issues/25
   - split < 0.2                         # newer versions don't work with GHC 6.12.3
   - tar < 0.4.2.0                       # later versions don't work with GHC < 7.6.x
   - transformers == 0.4.3.*             # the latest version isn't supported by mtl yet
@@ -7302,8 +7301,6 @@ dont-distribute-packages:
   servant-smsc-ru:                              [ i686-linux, x86_64-linux, x86_64-darwin ]
   servant-snap:                                 [ i686-linux, x86_64-linux, x86_64-darwin ]
   servant-subscriber:                           [ i686-linux, x86_64-linux, x86_64-darwin ]
-  servant-swagger:                              [ i686-linux, x86_64-linux, x86_64-darwin ]
-  servant-swagger-ui:                           [ i686-linux, x86_64-linux, x86_64-darwin ]
   server-generic:                               [ i686-linux, x86_64-linux, x86_64-darwin ]
   serversession-backend-persistent:             [ i686-linux, x86_64-linux, x86_64-darwin ]
   serversession-backend-redis:                  [ i686-linux, x86_64-linux, x86_64-darwin ]
diff --git a/pkgs/development/haskell-modules/default.nix b/pkgs/development/haskell-modules/default.nix
index 6d15d59662453..7205f777bcf29 100644
--- a/pkgs/development/haskell-modules/default.nix
+++ b/pkgs/development/haskell-modules/default.nix
@@ -85,13 +85,13 @@ let
 
         # Creates a Haskell package from a source package by calling cabal2nix on the source.
         callCabal2nix = name: src: args:
-	  let
-	    # Filter out files other than the cabal file. This ensures
-	    # that we don't create new derivations even when the cabal
-	    # file hasn't changed.
-	    justCabal = builtins.filterSource (path: type: pkgs.lib.hasSuffix ".cabal" path) src;
-	    drv = self.callPackage (haskellSrc2nix { inherit name; src = justCabal; }) args;
-	  in overrideCabal drv (drv': { inherit src; }); # Restore the desired src.
+          let
+            # Filter out files other than the cabal file. This ensures
+            # that we don't create new derivations even when the cabal
+            # file hasn't changed.
+            justCabal = builtins.filterSource (path: type: pkgs.lib.hasSuffix ".cabal" path) src;
+            drv = self.callPackage (haskellSrc2nix { inherit name; src = justCabal; }) args;
+          in overrideCabal drv (drv': { inherit src; }); # Restore the desired src.
 
         ghcWithPackages = selectFrom: withPackages (selectFrom self);
 
diff --git a/pkgs/development/interpreters/clips/default.nix b/pkgs/development/interpreters/clips/default.nix
new file mode 100644
index 0000000000000..cf923d4091726
--- /dev/null
+++ b/pkgs/development/interpreters/clips/default.nix
@@ -0,0 +1,29 @@
+{ stdenv, fetchurl }:
+
+stdenv.mkDerivation rec {
+  version = "6.30";
+  name = "clips-${version}";
+  src = fetchurl {
+    url = "mirror://sourceforge/clipsrules/CLIPS/6.30/clips_core_source_630.tar.Z";
+    sha256 = "1r0m59l3mk9cwzq3nmyr5qxrlkzp3njls4hfv8ml85dmqh7n3ysy";
+  };
+  buildPhase = ''
+    make -C core -f ../makefiles/makefile.gcc
+  '';
+  installPhase = ''
+    install -D -t $out/bin core/clips
+  '';
+  meta = with stdenv.lib; {
+    description = "A Tool for Building Expert Systems";
+    homepage = "http://www.clipsrules.net/";
+    longDescription = ''
+      Developed at NASA's Johnson Space Center from 1985 to 1996,
+      CLIPS is a rule-based programming language useful for creating
+      expert systems and other programs where a heuristic solution is
+      easier to implement and maintain than an algorithmic solution.
+    '';
+    license = licenses.publicDomain;
+    maintainers = [maintainers.league];
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/development/interpreters/renpy/default.nix b/pkgs/development/interpreters/renpy/default.nix
index 57051bb951fc5..0d0cbbab2b522 100644
--- a/pkgs/development/interpreters/renpy/default.nix
+++ b/pkgs/development/interpreters/renpy/default.nix
@@ -1,33 +1,37 @@
-{ stdenv, fetchurl, pythonPackages, pkgconfig, SDL
+{ stdenv, fetchurl, pythonPackages, pkgconfig, SDL2
 , libpng, ffmpeg, freetype, glew, mesa, fribidi, zlib
+, glib
 }:
 
 with pythonPackages;
 
 stdenv.mkDerivation {
-  name = "renpy-6.17.6";
+  name = "renpy-6.99.12.4";
 
   meta = {
     description = "Ren'Py Visual Novel Engine";
     homepage = "http://renpy.org/";
     license = stdenv.lib.licenses.mit;
     platforms = stdenv.lib.platforms.linux;
+    # This is an ancient version, last updated in 2014 (3d59f42ce); it fails to
+    # build with the most recent pygame version, and fails to run with 1.9.1.
+    broken = true;
   };
 
   src = fetchurl {
-    url = "http://www.renpy.org/dl/6.17.6/renpy-6.17.6-source.tar.bz2";
-    sha256 = "0rkynw9cnr1zqdinz037d9zig6grhp2ca2pyxk80vhdpjb0xrkic";
+    url = "http://www.renpy.org/dl/6.99.12.4/renpy-6.99.12.4-source.tar.bz2";
+    sha256 = "035342rr39zp7krp08z0xhcl73gqbqyilshgmljq0ynfrxxckn35";
   };
 
   buildInputs = [
     python cython pkgconfig wrapPython
-    SDL libpng ffmpeg freetype glew mesa fribidi zlib pygame
+    SDL2 libpng ffmpeg freetype glew mesa fribidi zlib pygame_sdl2 glib
   ];
 
-  pythonPath = [ pygame ];
+  pythonPath = [ pygame_sdl2 ];
 
   RENPY_DEPS_INSTALL = stdenv.lib.concatStringsSep "::" (map (path: "${path}") [
-    SDL SDL.dev libpng ffmpeg ffmpeg.out freetype glew.dev glew.out mesa fribidi zlib
+    SDL2 SDL2.dev libpng ffmpeg ffmpeg.out freetype glew.dev glew.out mesa fribidi zlib
   ]);
 
   buildPhase = ''
@@ -39,12 +43,11 @@ stdenv.mkDerivation {
     cp -r renpy renpy.py $out/share/renpy
     python module/setup.py install --prefix=$out --install-lib=$out/share/renpy/module
 
-    wrapPythonPrograms
     makeWrapper ${python}/bin/python $out/bin/renpy \
-      --set PYTHONPATH $program_PYTHONPATH \
+      --set PYTHONPATH $PYTHONPATH \
       --set RENPY_BASE $out/share/renpy \
       --add-flags "-O $out/share/renpy/renpy.py"
   '';
 
-  NIX_CFLAGS_COMPILE = "-I${pygame}/include/${python.libPrefix}";
+  NIX_CFLAGS_COMPILE = "-I${pygame_sdl2}/include/${python.libPrefix}";
 }
diff --git a/pkgs/development/libraries/SDL2_mixer/default.nix b/pkgs/development/libraries/SDL2_mixer/default.nix
index 0919970543c5e..9fef76c799b94 100644
--- a/pkgs/development/libraries/SDL2_mixer/default.nix
+++ b/pkgs/development/libraries/SDL2_mixer/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, lib, fetchurl, SDL2, libogg, libvorbis, enableNativeMidi ? false }:
+{ stdenv, lib, fetchurl, SDL2, libogg, libvorbis, smpeg, flac, enableNativeMidi ? false, fluidsynth ? null }:
 
 stdenv.mkDerivation rec {
   name = "SDL2_mixer-${version}";
@@ -9,7 +9,7 @@ stdenv.mkDerivation rec {
     sha256 = "0pv9jzjpcjlbiaybvwrb4avmv46qk7iqxlnqrd2dfj82c4mgc92s";
   };
 
-  propagatedBuildInputs = [ SDL2 libogg libvorbis ];
+  propagatedBuildInputs = [ SDL2 libogg libvorbis fluidsynth smpeg flac ];
 
   configureFlags = [ "--disable-music-ogg-shared" ] ++ lib.optional enableNativeMidi "--enable-music-native-midi-gpl";
 
@@ -17,6 +17,7 @@ stdenv.mkDerivation rec {
     description = "SDL multi-channel audio mixer library";
     platforms = platforms.linux;
     homepage = "https://www.libsdl.org/projects/SDL_mixer/";
+    maintainers = with maintainers; [ MP2E ];
     license = licenses.zlib;
   };
 }
diff --git a/pkgs/development/libraries/babl/default.nix b/pkgs/development/libraries/babl/default.nix
index 02b1af5ab521c..545612d5c155e 100644
--- a/pkgs/development/libraries/babl/default.nix
+++ b/pkgs/development/libraries/babl/default.nix
@@ -1,17 +1,17 @@
 { stdenv, fetchurl }:
 
 stdenv.mkDerivation rec {
-  name = "babl-0.1.12";
+  name = "babl-0.1.24";
 
   src = fetchurl {
     url = "http://ftp.gtk.org/pub/babl/0.1/${name}.tar.bz2";
-    sha256 = "01x4an6zixrhn0vibkxpcb7gg348gadydq8gpw82rdqp39zjp01g";
+    sha256 = "02wxyaa9kjfypmg31avp2dxh16sfx9701ww6dmp0ggz5vnng2as7";
   };
 
-  meta = { 
+  meta = with stdenv.lib; { 
     description = "Image pixel format conversion library";
     homepage = http://gegl.org/babl/;
-    license = stdenv.lib.licenses.gpl3;
-    platforms = stdenv.lib.platforms.unix;
+    license = licenses.gpl3;
+    platforms = platforms.unix;
   };
 }
diff --git a/pkgs/development/libraries/bobcat/default.nix b/pkgs/development/libraries/bobcat/default.nix
index dcd35613d545b..c5a6f55681ab7 100644
--- a/pkgs/development/libraries/bobcat/default.nix
+++ b/pkgs/development/libraries/bobcat/default.nix
@@ -1,12 +1,13 @@
-{ stdenv, fetchFromGitHub, icmake, libmilter, libX11, openssl, readline
+{ stdenv, fetchFromGitHub, icmake
+, libmilter, libX11, openssl, readline
 , utillinux, yodl }:
 
 stdenv.mkDerivation rec {
   name = "bobcat-${version}";
-  version = "4.03.00";
+  version = "4.07.00";
 
   src = fetchFromGitHub {
-    sha256 = "0jkwq3f6g3vbim2jg5wfzhin89r4crnypqggp8cqimjmpkyfqnv0";
+    sha256 = "0ja6rgdw4ng10acp2c0cv9k72i5sgng03i3xi2yshlm2811lgxcs";
     rev = version;
     repo = "bobcat";
     owner = "fbb-git";
diff --git a/pkgs/development/libraries/iso-codes/default.nix b/pkgs/development/libraries/iso-codes/default.nix
index 9477aca59733e..ed742888a0ef2 100644
--- a/pkgs/development/libraries/iso-codes/default.nix
+++ b/pkgs/development/libraries/iso-codes/default.nix
@@ -1,24 +1,24 @@
-{stdenv, fetchurl, gettext, python, xz}:
+{stdenv, fetchurl, gettext, python3, xz}:
 
 stdenv.mkDerivation rec {
-  name = "iso-codes-3.56";
+  name = "iso-codes-3.74";
+
   src = fetchurl {
     url = "http://pkg-isocodes.alioth.debian.org/downloads/${name}.tar.xz";
-    sha256 = "0vnfygd03jg21i7r238n450wy2hp354f3ank0v3k34zchbjydl2m";
+    sha256 = "1vkaxkcx8h8lbg3z3jjfjs1x1rz1l01j6ll46ysza2gym37g7x11";
   };
   patchPhase = ''
     for i in `find . -name \*.py`
     do
-        sed -i -e "s|#!/usr/bin/env python|#!${python}/bin/python|" $i
+        sed -i -e "s|#!/usr/bin/env python|#!${python3}/bin/python|" $i
     done
   '';
-  buildInputs = [ gettext ];
-  nativeBuildInputs = [ xz ];
+  buildInputs = [ gettext python3 ];
 
-  meta = {
+  meta = with stdenv.lib; {
     homepage = http://pkg-isocodes.alioth.debian.org/;
     description = "Various ISO codes packaged as XML files";
-    maintainers = [ stdenv.lib.maintainers.urkud ];
-    platforms = stdenv.lib.platforms.all;
+    maintainers = [ maintainers.urkud ];
+    platforms = platforms.all;
   };
 }
diff --git a/pkgs/development/libraries/itk/default.nix b/pkgs/development/libraries/itk/default.nix
index ae1f9996b78a0..fab14e5d8b3cf 100644
--- a/pkgs/development/libraries/itk/default.nix
+++ b/pkgs/development/libraries/itk/default.nix
@@ -24,6 +24,6 @@ stdenv.mkDerivation rec {
     homepage = http://www.itk.org/;
     license = stdenv.lib.licenses.asl20;
     maintainers = with stdenv.lib.maintainers; [viric];
-    platforms = with stdenv.lib.platforms; linux;
+    platforms = with stdenv.lib.platforms; linux ++ darwin;
   };
 }
diff --git a/pkgs/development/libraries/ldns/default.nix b/pkgs/development/libraries/ldns/default.nix
index c35cc5883146c..91eb7aecea905 100644
--- a/pkgs/development/libraries/ldns/default.nix
+++ b/pkgs/development/libraries/ldns/default.nix
@@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
     patchShebangs doc/doxyparse.pl
   '';
 
-  outputs = [ "out" "dev" ];
+  outputs = [ "out" "dev" "man" ];
 
   nativeBuildInputs = [ perl ];
   buildInputs = [ openssl ];
diff --git a/pkgs/development/libraries/libbson/default.nix b/pkgs/development/libraries/libbson/default.nix
index 6d64df88d3f10..02e4529b759e4 100644
--- a/pkgs/development/libraries/libbson/default.nix
+++ b/pkgs/development/libraries/libbson/default.nix
@@ -1,18 +1,18 @@
-{ autoconf, automake114x, fetchzip, libtool, perl, stdenv, which }:
-
-let
-  version = "1.1.10";
-in
+{ fetchFromGitHub, perl, stdenv, cmake }:
 
 stdenv.mkDerivation rec {
   name = "libbson-${version}";
+  version = "1.6.1";
 
-  src = fetchzip {
-    url = "https://github.com/mongodb/libbson/releases/download/${version}/libbson-${version}.tar.gz";
-    sha256 = "0zzca7zqvxf89fq7ji9626q8nnqyyh0dnmbk4xijzr9sq485xz0s";
+  src = fetchFromGitHub {
+    owner = "mongodb";
+    repo = "libbson";
+    rev = version;
+    sha256 = "1ilxbv4yjgf0vfzaa8lzn40hv5x1737ny2g2q1wmm8bl39m0viiw";
   };
 
-  buildInputs = [ autoconf automake114x libtool perl which ];
+  nativeBuildInputs = [ cmake ];
+  buildInputs = [ perl ];
 
   meta = with stdenv.lib; {
     description = "A C Library for parsing, editing, and creating BSON documents";
diff --git a/pkgs/development/libraries/libcouchbase/default.nix b/pkgs/development/libraries/libcouchbase/default.nix
index 2784cd90a5c63..24ec3d74d36f6 100644
--- a/pkgs/development/libraries/libcouchbase/default.nix
+++ b/pkgs/development/libraries/libcouchbase/default.nix
@@ -1,21 +1,28 @@
-{ stdenv, fetchurl, cmake, pkgconfig, libevent, openssl}:
+{ stdenv, fetchFromGitHub, cmake, pkgconfig, libevent, openssl}:
 
-stdenv.mkDerivation {
-  name = "libcouchbase-2.5.2";
-  src = fetchurl {
-    url = "https://github.com/couchbase/libcouchbase/archive/2.5.2.tar.gz";
-    sha256 = "0ka1hix38a2kdhxz6n8frssyznf78ra0irga9d8lr5683y73xw24";
+stdenv.mkDerivation rec {
+  name = "libcouchbase-${version}";
+  version = "2.7.2";
+
+  src = fetchFromGitHub {
+    owner = "couchbase";
+    repo ="libcouchbase";
+    rev = version;
+    sha256 = "1182r9z3cykkgx1vn36l0a50wvh5mr3yj89x0ynyjhfi3iwalrar";
   };
 
   cmakeFlags = "-DLCB_NO_MOCK=ON";
 
   nativeBuildInputs = [ cmake pkgconfig ];
-  buildInputs = [ libevent openssl];
+  buildInputs = [ libevent openssl ];
+
+  doCheck = true;
+  checkPhase = "ctest";
 
-  meta = {
+  meta = with stdenv.lib; {
     description = "C client library for Couchbase";
     homepage = "https://github.com/couchbase/libcouchbase";
-    license = stdenv.lib.licenses.asl20;
-    platforms = stdenv.lib.platforms.unix;
+    license = licenses.asl20;
+    platforms = platforms.unix;
   };
 }
diff --git a/pkgs/development/libraries/libdap/default.nix b/pkgs/development/libraries/libdap/default.nix
index 2e76c510bdda4..e20b1c95a1998 100644
--- a/pkgs/development/libraries/libdap/default.nix
+++ b/pkgs/development/libraries/libdap/default.nix
@@ -1,21 +1,22 @@
 { stdenv, fetchurl, bison, libuuid, curl, libxml2, flex }:
 
 stdenv.mkDerivation rec {
-  version = "3.15.1";
+  version = "3.18.3";
   name = "libdap-${version}";
 
-  buildInputs = [ bison libuuid curl libxml2 flex ];
+  nativeBuildInputs = [ bison flex ];
+  buildInputs = [ libuuid curl libxml2 ];
 
   src = fetchurl {
     url = "http://www.opendap.org/pub/source/${name}.tar.gz";
-    sha256 = "6ee13cc69ae0b5e7552ddfd17013ebb385859bba66f42a2cfba3b3be7aa4ef0f";
+    sha256 = "0azjf4gjqvp1fdf1wb3s98x52zfy4viq1m3j9lggaidldfinmv8c";
   };
 
-  meta = { 
+  meta = with stdenv.lib; {
     description = "A C++ SDK which contains an implementation of DAP";
     homepage = http://www.opendap.org/download/libdap;
-    license = stdenv.lib.licenses.lgpl2;
-    maintainers = [ stdenv.lib.maintainers.bzizou ];
-    platforms = stdenv.lib.platforms.linux;
+    license = licenses.lgpl2;
+    maintainers = [ maintainers.bzizou ];
+    platforms = platforms.linux;
   };
 }
diff --git a/pkgs/development/libraries/libdiscid/default.nix b/pkgs/development/libraries/libdiscid/default.nix
index d0122d0283c57..c5da3816c41c8 100644
--- a/pkgs/development/libraries/libdiscid/default.nix
+++ b/pkgs/development/libraries/libdiscid/default.nix
@@ -1,14 +1,14 @@
 { stdenv, fetchurl, cmake, pkgconfig }:
 
 stdenv.mkDerivation rec {
-  name = "libdiscid-0.6.1";
-
-  nativeBuildInputs = [ pkgconfig ];
-  buildInputs = [ cmake ];
+  name = "libdiscid-${version}";
+  version = "0.6.2";
 
+  nativeBuildInputs = [ cmake pkgconfig ];
+  
   src = fetchurl {
     url = "http://ftp.musicbrainz.org/pub/musicbrainz/libdiscid/${name}.tar.gz";
-    sha256 = "1mbd5y9056638cffpfwc6772xwrsk18prv1djsr6jpfim38jpsxc";
+    sha256 = "1f9irlj3dpb5gyfdnb1m4skbjvx4d4hwiz2152f83m0d9jn47r7r";
   };
 
   meta = with stdenv.lib; {
diff --git a/pkgs/development/libraries/libextractor/default.nix b/pkgs/development/libraries/libextractor/default.nix
index 6f1981d0ece7f..0f21180f691c9 100644
--- a/pkgs/development/libraries/libextractor/default.nix
+++ b/pkgs/development/libraries/libextractor/default.nix
@@ -7,11 +7,11 @@ assert gtkSupport -> glib != null && gtk3 != null;
 assert videoSupport -> ffmpeg != null && libmpeg2 != null;
 
 stdenv.mkDerivation rec {
-  name = "libextractor-1.2";
+  name = "libextractor-1.3";
 
   src = fetchurl {
     url = "mirror://gnu/libextractor/${name}.tar.gz";
-    sha256 = "1n7z6s5ils6xmf6b0z1xda41maxj94c1n6wlyyxmacs5lrkh2a96";
+    sha256 = "0zvv7wd011npcx7yphw9bpgivyxz6mlp87a57n96nv85k96dd2l6";
   };
 
   preConfigure =
diff --git a/pkgs/development/libraries/libibmad/default.nix b/pkgs/development/libraries/libibmad/default.nix
index fad5c5d73f425..6a8af9ccac6d0 100644
--- a/pkgs/development/libraries/libibmad/default.nix
+++ b/pkgs/development/libraries/libibmad/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl, libibumad }:
 
 stdenv.mkDerivation rec {
-  name = "libibmad-1.3.12";
+  name = "libibmad-1.3.13";
 
   src = fetchurl {
     url = "https://www.openfabrics.org/downloads/management/${name}.tar.gz";
-    sha256 = "0ywkz0rskci414r6h6jd4iz4qjbj37ga2k91z1mlj9xrnl9bbgzi";
+    sha256 = "02sj8k2jpcbiq8s0l2lqk4vwji2dbb2lc730cv1yzv0zr0hxgk8p";
   };
 
   buildInputs = [ libibumad ];
diff --git a/pkgs/development/libraries/libsodium/default.nix b/pkgs/development/libraries/libsodium/default.nix
index e0ad21008046f..bfe224d28cd69 100644
--- a/pkgs/development/libraries/libsodium/default.nix
+++ b/pkgs/development/libraries/libsodium/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl }:
 
 stdenv.mkDerivation rec {
-  name = "libsodium-1.0.11";
+  name = "libsodium-1.0.12";
 
   src = fetchurl {
     url = "https://download.libsodium.org/libsodium/releases/${name}.tar.gz";
-    sha256 = "0rf7z6bgpnf8lyz8sph4h43fbb28pmj4dgybf0hsxxj97kdljid1";
+    sha256 = "159givfh5jgli3cifxgssivkklfyfq6lzyjgrx8h4jx5ncdqyr5q";
   };
 
   outputs = [ "out" "dev" ];
diff --git a/pkgs/development/libraries/qt-5/5.7/qtmultimedia.nix b/pkgs/development/libraries/qt-5/5.7/qtmultimedia.nix
index 7c1cc5da07e35..a48dd38ae6d2a 100644
--- a/pkgs/development/libraries/qt-5/5.7/qtmultimedia.nix
+++ b/pkgs/development/libraries/qt-5/5.7/qtmultimedia.nix
@@ -1,4 +1,4 @@
-{ qtSubmodule, qtbase, qtdeclarative, pkgconfig
+{ stdenv, qtSubmodule, qtbase, qtdeclarative, pkgconfig
 , alsaLib, gstreamer, gst-plugins-base, libpulseaudio
 }:
 
@@ -6,7 +6,7 @@ qtSubmodule {
   name = "qtmultimedia";
   qtInputs = [ qtbase qtdeclarative ];
   buildInputs = [
-    pkgconfig alsaLib gstreamer gst-plugins-base libpulseaudio
-  ];
+    pkgconfig gstreamer gst-plugins-base libpulseaudio
+  ] ++ stdenv.lib.optional stdenv.isLinux alsaLib;
   qmakeFlags = [ "GST_VERSION=1.0" ];
 }
diff --git a/pkgs/development/libraries/shapelib/default.nix b/pkgs/development/libraries/shapelib/default.nix
new file mode 100644
index 0000000000000..529dee9376a9d
--- /dev/null
+++ b/pkgs/development/libraries/shapelib/default.nix
@@ -0,0 +1,19 @@
+{ stdenv, fetchurl, proj }:
+
+stdenv.mkDerivation rec {
+  name = "shapelib-1.4.0";
+
+  src = fetchurl {
+    url = "https://download.osgeo.org/shapelib/${name}.tar.gz";
+    sha256 = "18d7j5pn5srika7q3f90j0l2l4526xsjd64pin6z2b0gd7rdbp9y";
+  };
+
+  buildInputs =  [ proj ];
+
+  meta = with stdenv.lib; {
+    description = "C Library for reading, writing and updating ESRI Shapefiles";
+    homepage = http://shapelib.maptools.org/;
+    license = licenses.gpl2;
+    maintainers = [ maintainers.ehmry ];
+  };
+}
diff --git a/pkgs/development/ocaml-modules/bos/default.nix b/pkgs/development/ocaml-modules/bos/default.nix
new file mode 100644
index 0000000000000..eb1e8d15feab8
--- /dev/null
+++ b/pkgs/development/ocaml-modules/bos/default.nix
@@ -0,0 +1,27 @@
+{ stdenv, fetchurl, ocaml, findlib, ocamlbuild, opam, topkg
+, astring, fmt, fpath, logs, rresult
+}:
+
+stdenv.mkDerivation rec {
+	name = "ocaml${ocaml.version}-bos-${version}";
+	version = "0.1.4";
+	src = fetchurl {
+		url = "http://erratique.ch/software/bos/releases/bos-${version}.tbz";
+		sha256 = "1ly66lysk4w6mdy4k1n3ynlpfpq7lw4wshcpzgx58v6x613w5s7q";
+	};
+
+	unpackCmd = "tar xjf $src";
+
+	buildInputs = [ ocaml findlib ocamlbuild opam topkg ];
+	propagatedBuildInputs = [ astring fmt fpath logs rresult ];
+
+	inherit (topkg) buildPhase installPhase;
+
+	meta = {
+		description = "Basic OS interaction for OCaml";
+		homepage = http://erratique.ch/software/bos;
+		license = stdenv.lib.licenses.isc;
+		maintainers = [ stdenv.lib.maintainers.vbgl ];
+		inherit (ocaml.meta) platforms;
+	};
+}
diff --git a/pkgs/development/ocaml-modules/eliom/default.nix b/pkgs/development/ocaml-modules/eliom/default.nix
index d7b0bbd3d48cd..57f3477edf6b1 100644
--- a/pkgs/development/ocaml-modules/eliom/default.nix
+++ b/pkgs/development/ocaml-modules/eliom/default.nix
@@ -10,12 +10,12 @@ assert stdenv.lib.versionAtLeast ocaml.version "4.02";
 stdenv.mkDerivation rec
 {
   pname = "eliom";
-  version = "6.0.0";
+  version = "6.2.0";
   name = "${pname}-${version}";
 
   src = fetchurl {
     url = "https://github.com/ocsigen/eliom/archive/${version}.tar.gz";
-    sha256 = "1yaqi5fdzvi2ga412chw5rk3533a3xamwfmias1crk793d43cmpc";
+    sha256 = "01c4l982ld6d1ndhb6f15ldb2li7mv0bs279d5gs99mpiwsapadx";
   };
 
   patches = [ ./camlp4.patch ];
diff --git a/pkgs/development/ocaml-modules/functoria/default.nix b/pkgs/development/ocaml-modules/functoria/default.nix
new file mode 100644
index 0000000000000..bfcdd4168ca79
--- /dev/null
+++ b/pkgs/development/ocaml-modules/functoria/default.nix
@@ -0,0 +1,27 @@
+{ stdenv, fetchurl, ocaml, findlib, ocamlbuild, opam, topkg
+, bos, cmdliner, ocamlgraph
+}:
+
+stdenv.mkDerivation rec {
+	name = "ocaml${ocaml.version}-functoria-${version}";
+	version = "2.0.2";
+	src = fetchurl {
+		url = "http://github.com/mirage/functoria/releases/download/${version}/functoria-${version}.tbz";
+		sha256 = "019rl4rir4lwgjyqj2wq3ylw4daih1kxxgbc6ld6kzcq66mwr747";
+	};
+
+	unpackCmd = "tar xjf $src";
+
+	buildInputs = [ ocaml findlib ocamlbuild opam topkg ];
+	propagatedBuildInputs = [ bos cmdliner ocamlgraph ];
+
+	inherit (topkg) buildPhase installPhase;
+
+	meta = {
+		description = "A DSL to organize functor applications";
+		homepage = https://github.com/mirage/functoria;
+		license = stdenv.lib.licenses.isc;
+		maintainers = [ stdenv.lib.maintainers.vbgl ];
+		inherit (ocaml.meta) platforms;
+	};
+}
diff --git a/pkgs/development/ocaml-modules/ocsigen-server/default.nix b/pkgs/development/ocaml-modules/ocsigen-server/default.nix
index 8d949497b4655..8685097750b91 100644
--- a/pkgs/development/ocaml-modules/ocsigen-server/default.nix
+++ b/pkgs/development/ocaml-modules/ocsigen-server/default.nix
@@ -1,6 +1,7 @@
 {stdenv, fetchurl, ocaml, findlib, which, ocaml_react, ocaml_ssl,
 ocaml_lwt, ocamlnet, ocaml_pcre, cryptokit, tyxml, ipaddr, zlib,
 libev, openssl, ocaml_sqlite3, tree, uutf, makeWrapper, camlp4
+, pgocaml
 }:
 
 let mkpath = p: n:
@@ -18,7 +19,7 @@ stdenv.mkDerivation {
 
   buildInputs = [ocaml which findlib ocaml_react ocaml_ssl ocaml_lwt
   ocamlnet ocaml_pcre cryptokit tyxml ipaddr zlib libev openssl
-  ocaml_sqlite3 tree uutf makeWrapper camlp4 ];
+  ocaml_sqlite3 tree uutf makeWrapper camlp4 pgocaml ];
 
   configureFlags = "--root $(out) --prefix /";
 
diff --git a/pkgs/development/ocaml-modules/ocsigen-toolkit/default.nix b/pkgs/development/ocaml-modules/ocsigen-toolkit/default.nix
new file mode 100644
index 0000000000000..00416c92bb94d
--- /dev/null
+++ b/pkgs/development/ocaml-modules/ocsigen-toolkit/default.nix
@@ -0,0 +1,33 @@
+{ stdenv, fetchurl, buildOcaml, ocaml, eliom, opam }:
+
+buildOcaml rec
+{
+ name = "ocsigen-toolkit";
+ version = "1.0.0";
+
+ propagatedBuildInputs = [ eliom ];
+ buildInputs = [ opam ];
+
+ createFindlibDestdir = true;
+
+ installPhase =
+  ''
+    export OCAMLPATH=$out/lib/ocaml/${ocaml.version}/site-lib/:$OCAMLPATH
+    make install
+    opam-installer --prefix=$out
+  '';
+
+  src = fetchurl {
+    sha256 = "0wm4fnss7vlkd03ybgfrk63kpip6m6p6kdqjn3f64n11256mwzj2";
+    url = "https://github.com/ocsigen/${name}/archive/${version}.tar.gz";
+  };
+
+  meta = {
+    homepage = http://ocsigen.org/ocsigen-toolkit/;
+    description = " User interface widgets for Ocsigen applications";
+    license = stdenv.lib.licenses.lgpl21;
+    maintainers = [ stdenv.lib.maintainers.gal_bolle ];
+  };
+
+
+}
diff --git a/pkgs/development/ocaml-modules/rresult/default.nix b/pkgs/development/ocaml-modules/rresult/default.nix
new file mode 100644
index 0000000000000..f9951b56da2db
--- /dev/null
+++ b/pkgs/development/ocaml-modules/rresult/default.nix
@@ -0,0 +1,24 @@
+{ stdenv, fetchurl, ocaml, findlib, ocamlbuild, opam, topkg }:
+
+stdenv.mkDerivation rec {
+	name = "ocaml${ocaml.version}-rresult-${version}";
+	version = "0.5.0";
+	src = fetchurl {
+		url = "http://erratique.ch/software/rresult/releases/rresult-${version}.tbz";
+		sha256 = "1xxycxhdhaq8p9vhwi93s2mlxjwgm44fcxybx5vghzgbankz9yhm";
+	};
+
+	unpackCmd = "tar xjf $src";
+
+	buildInputs = [ ocaml findlib ocamlbuild topkg opam ];
+
+	inherit (topkg) buildPhase installPhase;
+
+	meta = {
+		license = stdenv.lib.licenses.isc;
+		homepage = http://erratique.ch/software/rresult;
+		description = "Result value combinators for OCaml";
+		maintainers = [ stdenv.lib.maintainers.vbgl ];
+		inherit (ocaml.meta) platforms;
+	};
+}
diff --git a/pkgs/development/python-modules/django_guardian.nix b/pkgs/development/python-modules/django_guardian.nix
index c9217955213d9..1b31456162b00 100644
--- a/pkgs/development/python-modules/django_guardian.nix
+++ b/pkgs/development/python-modules/django_guardian.nix
@@ -1,6 +1,6 @@
 { stdenv, buildPythonPackage, python, fetchurl
 , django_environ, mock, django, six
-, pytest, pytestrunner, pytestdjango, setuptools_scm
+, pytest, pytestrunner, pytest-django, setuptools_scm
 }:
 buildPythonPackage rec {
   name = "django-guardian-${version}";
@@ -11,7 +11,7 @@ buildPythonPackage rec {
     sha256 = "1r3xj0ik0hh6dfak4kjndxk5v73x95nfbppgr394nhnmiayv4zc5";
   };
 
-  buildInputs = [ pytest pytestrunner pytestdjango django_environ mock setuptools_scm ];
+  buildInputs = [ pytest pytestrunner pytest-django django_environ mock setuptools_scm ];
   propagatedBuildInputs = [ django six ];
 
   checkPhase = ''
diff --git a/pkgs/development/python-modules/pyGithub/default.nix b/pkgs/development/python-modules/pyGithub/default.nix
new file mode 100644
index 0000000000000..75fb75f931857
--- /dev/null
+++ b/pkgs/development/python-modules/pyGithub/default.nix
@@ -0,0 +1,28 @@
+{ stdenv, fetchFromGitHub
+, cacert
+, buildPythonPackage, python-jose }:
+
+buildPythonPackage rec {
+  name = "PyGithub-${version}";
+  version = "1.32";
+
+  src = fetchFromGitHub {
+    owner = "PyGithub";
+    repo = "PyGithub";
+    rev = "v${version}";
+    sha256 = "15dr9ja63zdxax9lg6q2kcakqa82dpffyhgpjr13wq3sfkcy5pdw";
+  };
+
+  postPatch = ''
+    # requires network
+    echo "" > github/tests/Issue142.py
+  '';
+  propagatedBuildInputs = [ python-jose ];
+  meta = with stdenv.lib; {
+    homepage = "https://github.com/PyGithub/PyGithub";
+    description = "A Python (2 and 3) library to access the GitHub API v3";
+    platforms = platforms.all;
+    license = licenses.gpl3;
+    maintainers = with maintainers; [ jhhuh ];
+  };
+}
diff --git a/pkgs/development/python-modules/pycassa/default.nix b/pkgs/development/python-modules/pycassa/default.nix
new file mode 100644
index 0000000000000..fc8fbcaa8d2d5
--- /dev/null
+++ b/pkgs/development/python-modules/pycassa/default.nix
@@ -0,0 +1,26 @@
+{ stdenv, buildPythonPackage, fetchPypi, thrift, isPy3k }:
+
+buildPythonPackage rec {
+  pname = "pycassa";
+  version = "1.11.2";
+  name = "${pname}-${version}";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "1nsqjzgn6v0rya60dihvbnrnq1zwaxl2qwf0sr08q9qlkr334hr6";
+  };
+
+  disabled = isPy3k;
+
+  # Tests are not executed since they require a cassandra up and
+  # running
+  doCheck = false;
+
+  propagatedBuildInputs = [ thrift ];
+
+  meta = {
+    description = "A python client library for Apache Cassandra";
+    homepage = http://github.com/pycassa/pycassa;
+    license = stdenv.lib.licenses.mit;
+  };
+}
diff --git a/pkgs/development/python-modules/pygame/default.nix b/pkgs/development/python-modules/pygame/default.nix
index 226b613a8b4ba..af7b7aca93cb8 100644
--- a/pkgs/development/python-modules/pygame/default.nix
+++ b/pkgs/development/python-modules/pygame/default.nix
@@ -1,29 +1,24 @@
 { stdenv, lib, fetchurl, buildPythonPackage, python, smpeg, libX11
-, SDL, SDL_image, SDL_mixer, SDL_ttf, libpng, libjpeg, portmidi, isPy3k,
+, SDL, SDL_image, SDL_mixer, SDL_ttf, libpng, libjpeg, portmidi, freetype
 }:
 
 buildPythonPackage rec {
   name = "pygame-${version}";
-  version = "1.9.1";
+  version = "1.9.3";
 
   src = fetchurl {
-    url = "http://www.pygame.org/ftp/pygame-1.9.1release.tar.gz";
-    sha256 = "0cyl0ww4fjlf289pjxa53q4klyn55ajvkgymw0qrdgp4593raq52";
+    url = "mirror://pypi/p/pygame/pygame-${version}.tar.gz";
+    sha256 = "1hlydiyygl444bq5m5g8n3jsxsgrdyxlm42ipmfbw36wkf0j243m";
   };
 
   buildInputs = [
     SDL SDL_image SDL_mixer SDL_ttf libpng libjpeg
-    smpeg portmidi libX11
+    portmidi libX11 freetype
   ];
 
-  # http://ubuntuforums.org/showthread.php?t=1960262
-  disabled = isPy3k;
-
   # Tests fail because of no audio device and display.
   doCheck = false;
 
-  patches = [ ./pygame-v4l.patch ];
-
   preConfigure = ''
     sed \
       -e "s/^origincdirs = .*/origincdirs = []/" \
diff --git a/pkgs/development/python-modules/pytest-django/default.nix b/pkgs/development/python-modules/pytest-django/default.nix
new file mode 100644
index 0000000000000..48a5c043841ad
--- /dev/null
+++ b/pkgs/development/python-modules/pytest-django/default.nix
@@ -0,0 +1,33 @@
+{ stdenv, buildPythonPackage, fetchurl
+, pytest, django, setuptools_scm
+, fetchpatch
+}:
+buildPythonPackage rec {
+  name = "pytest-django-${version}";
+  version = "3.1.2";
+
+  src = fetchurl {
+    url = "mirror://pypi/p/pytest-django/${name}.tar.gz";
+    sha256 = "02932m2sr8x22m4az8syr8g835g4ak77varrnw71n6xakmdcr303";
+  };
+
+  buildInputs = [ pytest setuptools_scm ];
+  propagatedBuildInputs = [ django ];
+
+  patches = [
+    # Unpin setuptools-scm
+    (fetchpatch {
+      url = "https://github.com/pytest-dev/pytest-django/commit/25cbc3b395dcdeb92bdc9414e296680c2b9d602e.patch";
+      sha256 = "1mx06y4kz2zs41mb2h9bh5p4jc6s6hfsq6fghhsks5b7qak05xjp";
+    })
+  ];
+
+  # Complicated. Requires Django setup.
+  doCheck = false;
+
+  meta = with stdenv.lib; {
+    description = "py.test plugin for testing of Django applications";
+    homepage = http://pytest-django.readthedocs.org/en/latest/;
+    license = licenses.bsd3;
+  };
+}
diff --git a/pkgs/development/python-modules/python-jose/default.nix b/pkgs/development/python-modules/python-jose/default.nix
new file mode 100644
index 0000000000000..da4dd4107461e
--- /dev/null
+++ b/pkgs/development/python-modules/python-jose/default.nix
@@ -0,0 +1,29 @@
+{ stdenv, buildPythonPackage, fetchFromGitHub
+, future, six, ecdsa, pycryptodome, pytest
+}:
+
+buildPythonPackage rec {
+  name = "python-jose-${version}";
+  version = "1.3.2";
+  src = fetchFromGitHub {
+    owner = "mpdavis";
+    repo = "python-jose";
+    rev = version;
+    sha256 = "0933pbflv2pvws5m0ksz8y1fqr8m123smmrbr5k9a71nssd502sv";
+  };
+
+  buildInputs = [ pytest ];
+  checkPhase = "py.test .";
+  patches = [
+    # to use pycryptodme instead of pycrypto
+    ./pycryptodome.patch
+  ];
+  propagatedBuildInputs = [ future six ecdsa pycryptodome ];
+  meta = with stdenv.lib; {
+    homepage = "https://github.com/mpdavis/python-jose";
+    description = "A JOSE implementation in Python";
+    platforms = platforms.all;
+    license = licenses.mit;
+    maintainers = [ maintainers.jhhuh ];
+  };
+}
diff --git a/pkgs/development/python-modules/python-jose/pycryptodome.patch b/pkgs/development/python-modules/python-jose/pycryptodome.patch
new file mode 100644
index 0000000000000..665ad5980343f
--- /dev/null
+++ b/pkgs/development/python-modules/python-jose/pycryptodome.patch
@@ -0,0 +1,37 @@
+diff -ru python-jose-1.3.2/requirements.txt python-jose-1.3.2.new/requirements.txt
+--- python-jose-1.3.2/requirements.txt	2016-09-05 15:13:49.000000000 +0200
++++ python-jose-1.3.2.new/requirements.txt	2017-03-15 11:35:47.118001810 +0100
+@@ -1,3 +1,3 @@
+-pycrypto
++pycryptodome
+ six
+ future
+diff -ru python-jose-1.3.2/setup.py python-jose-1.3.2.new/setup.py
+--- python-jose-1.3.2/setup.py	2016-09-05 15:13:49.000000000 +0200
++++ python-jose-1.3.2.new/setup.py	2017-03-15 11:37:15.725077184 +0100
+@@ -25,12 +25,8 @@
+ 
+ 
+ def get_install_requires():
+-    if platform.python_implementation() == 'PyPy':
+-        crypto_lib = 'pycryptodome >=3.3.1, <3.4.0'
+-    else:
+-        crypto_lib = 'pycrypto >=2.6.0, <2.7.0'
+     return [
+-        crypto_lib,
++        'pycryptodome >=3.3.1, <3.5.0',
+         'six <2.0',
+         'ecdsa <1.0',
+         'future <1.0',
+diff -ru python-jose-1.3.2/tox.ini python-jose-1.3.2.new/tox.ini
+--- python-jose-1.3.2/tox.ini	2016-09-05 15:13:49.000000000 +0200
++++ python-jose-1.3.2.new/tox.ini	2017-03-15 11:36:50.423055657 +0100
+@@ -6,7 +6,7 @@
+     py.test --cov-report term-missing --cov jose
+ deps =
+     future
+-    pycrypto
++    pycryptodome
+     ecdsa
+     pytest
+     pytest-cov
diff --git a/pkgs/development/ruby-modules/bundler/default.nix b/pkgs/development/ruby-modules/bundler/default.nix
index f3737afdb2225..9251c4d2a4151 100644
--- a/pkgs/development/ruby-modules/bundler/default.nix
+++ b/pkgs/development/ruby-modules/bundler/default.nix
@@ -4,8 +4,8 @@ buildRubyGem rec {
   inherit ruby;
   name = "${gemName}-${version}";
   gemName = "bundler";
-  version = "1.14.4";
-  sha256 = "1hafmb7p41pm40a2z7f4x5zpgrb72xvgwlvkxnflmzqkvq2prkfv";
+  version = "1.14.6";
+  sha256 = "0h3x2csvlz99v2ryj1w72vn6kixf7rl35lhdryvh7s49brnj0cgl";
   dontPatchShebangs = true;
 
   postFixup = ''
diff --git a/pkgs/development/tools/build-managers/sbt/0.12.4.nix b/pkgs/development/tools/build-managers/sbt/0.12.4.nix
new file mode 100644
index 0000000000000..9c02fcd0b3fb2
--- /dev/null
+++ b/pkgs/development/tools/build-managers/sbt/0.12.4.nix
@@ -0,0 +1,29 @@
+{ stdenv, fetchurl, jre }:
+
+stdenv.mkDerivation rec {
+  name = "sbt-${version}";
+  version = "0.12.14";
+
+  src = fetchurl {
+    url = "https://dl.bintray.com/sbt/native-packages/sbt/${version}/${name}.tgz";
+    sha256 = "5907af5a3db5e9090024c91e8b6189cd2143841b08c4688542a2efbc9023ac1a";
+  };
+
+  patchPhase = ''
+    echo -java-home ${jre.home} >>conf/sbtopts
+  '';
+
+  installPhase = ''
+    mkdir -p $out/share/sbt $out/bin
+    cp -ra . $out/share/sbt
+    ln -s $out/share/sbt/bin/sbt $out/bin/
+  '';
+
+  meta = with stdenv.lib; {
+    homepage = http://www.scala-sbt.org/;
+    license = licenses.bsd3;
+    description = "A build tool for Scala, Java and more";
+    maintainers = with maintainers; [ heel ];
+    platforms = platforms.unix;
+  };
+}
diff --git a/pkgs/development/tools/github/cligh/default.nix b/pkgs/development/tools/github/cligh/default.nix
new file mode 100644
index 0000000000000..ded0aaa924240
--- /dev/null
+++ b/pkgs/development/tools/github/cligh/default.nix
@@ -0,0 +1,32 @@
+{ stdenv, fetchFromGitHub, pythonPackages }:
+
+pythonPackages.buildPythonApplication rec {
+  name = "cligh-${version}";
+  version = "0.3";
+
+  doCheck = false; # no tests
+
+  src = fetchFromGitHub {
+    owner = "CMB";
+    repo = "cligh";
+    rev = "v${version}";
+    sha256 = "0d1fd78rzl2n75xpmy1gnxh1shvcs4qm0j4qqszqvfriwkg2flxn";
+  };
+
+  propagatedBuildInputs = with pythonPackages; [ pyxdg PyGithub ];
+
+  meta = with stdenv.lib; {
+    homepage = "http://the-brannons.com/software/cligh.html";
+    description = "A simple command-line interface to the facilities of Github";
+    longDescription = ''
+        Cligh is a simple command-line interface to the facilities of GitHub.
+        It is written by Christopher Brannon chris@the-brannons.com. The
+        current version is 0.3, released July 23, 2016. This program is still
+        in the early stage of development. It is by no means feature-complete.
+        A friend and I consider it useful, but others may not.
+    '';
+    platforms = platforms.all;
+    license = licenses.bsd3;
+    maintainers = [ maintainers.jhhuh ];
+  };
+}
diff --git a/pkgs/development/tools/go2nix/default.nix b/pkgs/development/tools/go2nix/default.nix
index 5a77ec7eaa6a4..a6f5d62e29e33 100644
--- a/pkgs/development/tools/go2nix/default.nix
+++ b/pkgs/development/tools/go2nix/default.nix
@@ -3,7 +3,7 @@
 
 buildGoPackage rec {
   name = "go2nix-${version}";
-  version = "1.1.1";
+  version = "1.2.0";
   rev = "v${version}";
 
   goPackagePath = "github.com/kamilchm/go2nix";
@@ -12,11 +12,13 @@ buildGoPackage rec {
     inherit rev;
     owner = "kamilchm";
     repo = "go2nix";
-    sha256 = "1idxgn9yf8shw4mq4d7rhf8fvb2s1lli4r4ck0h8ddf1s9q8p63s";
+    sha256 = "1hlanw56r1phj89sicpsfcz6sdjba9qjwhiblcsqka4wfqkai8pn";
   };
 
   goDeps = ./deps.nix;
 
+  outputs = [ "bin" "out" "man" ];
+
   buildInputs = [ go-bindata goimports makeWrapper ];
   preBuild = ''go generate ./...'';
 
@@ -24,6 +26,9 @@ buildGoPackage rec {
     wrapProgram $bin/bin/go2nix \
       --prefix PATH : ${nix-prefetch-git}/bin \
       --prefix PATH : ${git}/bin
+
+    mkdir -p $man/share/man/man1
+    cp $src/go2nix.1 $man/share/man/man1
   '';
 
   allowGoReference = true;
diff --git a/pkgs/development/tools/misc/sipp/default.nix b/pkgs/development/tools/misc/sipp/default.nix
index 266a9824ed2a4..a506831cd8ea7 100644
--- a/pkgs/development/tools/misc/sipp/default.nix
+++ b/pkgs/development/tools/misc/sipp/default.nix
@@ -1,28 +1,41 @@
-{stdenv, fetchurl, ncurses, libpcap }:
+{stdenv, fetchFromGitHub, autoreconfHook, ncurses, libpcap }:
 
 stdenv.mkDerivation rec {
-
-  version = "3.4-beta2";
+  version = "3.5.1";
 
   name = "sipp-${version}";
 
-  src = fetchurl {
-    url = "https://github.com/SIPp/sipp/archive/${version}.tar.gz";
-    sha256 = "0rr3slarh5dhpinif5aqji9c9krnpvl7z49w7qahvsww1niawwdv";
+  src = fetchFromGitHub {
+    owner = "SIPp";
+    repo = "sipp";
+    rev = "v${version}";
+    sha256 = "179a1fvqyk3jpxbi28l1xfw22cw9vgvxrn19w5f38w74x0jwqg5k";
   };
 
-  configurePhase = ''
-    export ac_cv_lib_curses_initscr=yes
-    export ac_cv_lib_pthread_pthread_mutex_init=yes
+  patchPhase = ''
     sed -i "s@pcap/\(.*\).pcap@$out/share/pcap/\1.pcap@g" src/scenario.cpp
-    ./configure --prefix=$out --with-pcap
+    sed -i -e "s|AC_CHECK_LIB(curses|AC_CHECK_LIB(ncurses|" configure.ac
+    echo "#define SIPP_VERSION \"v${version}\"" > include/version.h
   '';
 
+  configureFlags = [
+    "--with-pcap"
+  ];
+
   postInstall = ''
     mkdir -pv $out/share/pcap
     cp pcap/* $out/share/pcap
   '';
 
   buildInputs = [ncurses libpcap];
+
+  nativeBuildInputs = [ autoreconfHook ];
+
+  meta = with stdenv.lib; {
+    homepage = http://sipp.sf.net;
+    description = "The SIPp testing tool";
+    license = licenses.gpl3;
+    platforms = platforms.unix;
+  };
 }
 
diff --git a/pkgs/development/tools/parsing/jshon/default.nix b/pkgs/development/tools/parsing/jshon/default.nix
index 4b35ba0cce29e..5406b4e9a0e53 100644
--- a/pkgs/development/tools/parsing/jshon/default.nix
+++ b/pkgs/development/tools/parsing/jshon/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, lib, fetchFromGitHub, jansson }:
+{ stdenv, lib, fetchFromGitHub, fetchpatch, jansson }:
 
 stdenv.mkDerivation rec {
   name = "jshon-20140712";
@@ -12,14 +12,23 @@ stdenv.mkDerivation rec {
     repo = "jshon";
   };
 
+  patches = [
+    # Fix null termination in read_stream.
+    # https://github.com/keenerd/jshon/issues/53
+    (fetchpatch {
+      url = https://github.com/mbrock/jshon/commit/32288dd186573ceb58164f30be1782d4580466d8.patch;
+      sha256 = "04rss2nprl9nqblc7smq0477n54hm801xgnnmvyzni313i1n6vhl";
+    })
+  ];
+
   buildInputs = [ jansson ];
 
-  patchPhase = 
+  patchPhase =
     ''
       substituteInPlace Makefile --replace "/usr/" "/"
     '';
 
-  preInstall = 
+  preInstall =
     ''
       export DESTDIR=$out
     '';