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/ghc/8.0.2.nix6
-rw-r--r--pkgs/development/compilers/ghc/head.nix13
-rw-r--r--pkgs/development/compilers/rust/nightlyBin.nix3
-rw-r--r--pkgs/development/haskell-modules/configuration-ghc-head.nix7
-rw-r--r--pkgs/development/haskell-modules/hackage-packages.nix8
-rw-r--r--pkgs/development/haskell-modules/patches/atomic-primops-Cabal-1.25.patch37
-rw-r--r--pkgs/development/libraries/cairo/default.nix5
-rw-r--r--pkgs/development/libraries/cpp-ipfs-api/default.nix6
-rw-r--r--pkgs/development/libraries/gtk+/2.x.nix17
-rw-r--r--pkgs/development/libraries/gtk-mac-integration/default.nix30
-rw-r--r--pkgs/development/libraries/ldns/default.nix19
-rw-r--r--pkgs/development/libraries/ldns/perl-5.22-compat.patch12
-rw-r--r--pkgs/development/libraries/libpng/12.nix4
-rw-r--r--pkgs/development/libraries/libpqxx/default.nix4
-rw-r--r--pkgs/development/libraries/libtermkey/default.nix4
-rw-r--r--pkgs/development/libraries/libuv/default.nix3
-rw-r--r--pkgs/development/libraries/openjpeg/2.1.nix23
-rw-r--r--pkgs/development/libraries/pango/default.nix11
-rw-r--r--pkgs/development/python-modules/discordpy/default.nix4
-rw-r--r--pkgs/development/python-modules/pygtk/default.nix4
-rw-r--r--pkgs/development/r-modules/default.nix111
21 files changed, 219 insertions, 112 deletions
diff --git a/pkgs/development/compilers/ghc/8.0.2.nix b/pkgs/development/compilers/ghc/8.0.2.nix
index b2ae92e02c6..5979eba3e10 100644
--- a/pkgs/development/compilers/ghc/8.0.2.nix
+++ b/pkgs/development/compilers/ghc/8.0.2.nix
@@ -13,12 +13,12 @@ let
   });
 in
 stdenv.mkDerivation rec {
-  version = "8.0.1.20161213";
+  version = "8.0.2";
   name = "ghc-${version}";
 
   src = fetchurl {
-    url = "https://downloads.haskell.org/~ghc/8.0.2-rc2/${name}-src.tar.xz";
-    sha256 = "0l1arhbh3rbs011f0y4pgc35yn07x3hz6lfqlvqbwn96f8ff5529";
+    url = "https://downloads.haskell.org/~ghc/8.0.2/${name}-src.tar.xz";
+    sha256 = "1c8qc4fhkycynk4g1f9hvk53dj6a1vvqi6bklqznns6hw59m8qhi";
   };
 
   patches = [] ++ stdenv.lib.optional stdenv.isLinux ./ghc-no-madv-free.patch;
diff --git a/pkgs/development/compilers/ghc/head.nix b/pkgs/development/compilers/ghc/head.nix
index 081f554e06b..971365eda48 100644
--- a/pkgs/development/compilers/ghc/head.nix
+++ b/pkgs/development/compilers/ghc/head.nix
@@ -8,8 +8,12 @@ let
   commonBuildInputs = [ ghc perl autoconf automake happy alex python3 ];
 
   version = "8.1.20170106";
+  rev = "b4f2afe70ddbd0576b4eba3f82ba1ddc52e9b3bd";
 
   commonPreConfigure =  ''
+    echo ${version} >VERSION
+    echo ${rev} >GIT_COMMIT_ID
+    ./boot
     sed -i -e 's|-isysroot /Developer/SDKs/MacOSX10.5.sdk||' configure
   '' + stdenv.lib.optionalString (!stdenv.isDarwin) ''
     export NIX_LDFLAGS="$NIX_LDFLAGS -rpath $out/lib/ghc-${version}"
@@ -17,9 +21,8 @@ let
     export NIX_LDFLAGS+=" -no_dtrace_dof"
   '';
 in stdenv.mkDerivation (rec {
-  inherit version;
+  inherit version rev;
   name = "ghc-${version}";
-  rev = "b4f2afe70ddbd0576b4eba3f82ba1ddc52e9b3bd";
 
   src = fetchgit {
     url = "git://git.haskell.org/ghc.git";
@@ -29,11 +32,7 @@ in stdenv.mkDerivation (rec {
 
   postPatch = "patchShebangs .";
 
-  preConfigure = ''
-    echo ${version} >VERSION
-    echo ${rev} >GIT_COMMIT_ID
-    ./boot
-  '' + commonPreConfigure ;
+  preConfigure = commonPreConfigure;
 
   buildInputs = commonBuildInputs;
 
diff --git a/pkgs/development/compilers/rust/nightlyBin.nix b/pkgs/development/compilers/rust/nightlyBin.nix
index 6f7cca9aff2..bac35c790d0 100644
--- a/pkgs/development/compilers/rust/nightlyBin.nix
+++ b/pkgs/development/compilers/rust/nightlyBin.nix
@@ -49,6 +49,9 @@ rec {
         patchelf \
           --set-interpreter $(cat $NIX_CC/nix-support/dynamic-linker) \
           "$out/bin/rustc"
+        patchelf \
+          --set-interpreter $(cat $NIX_CC/nix-support/dynamic-linker) \
+          "$out/bin/rustdoc"
       ''}
     '';
 
diff --git a/pkgs/development/haskell-modules/configuration-ghc-head.nix b/pkgs/development/haskell-modules/configuration-ghc-head.nix
index a2b6058b166..f093c0e427e 100644
--- a/pkgs/development/haskell-modules/configuration-ghc-head.nix
+++ b/pkgs/development/haskell-modules/configuration-ghc-head.nix
@@ -86,4 +86,11 @@ self: super: {
   # Won't work with LLVM 3.5.
   llvm-general = markBrokenVersion "3.4.5.3" super.llvm-general;
 
+  # A bunch of jailbreaks due to 'base' bump
+  old-locale = doJailbreak super.old-locale;
+  primitive = doJailbreak super.primitive;
+  test-framework = doJailbreak super.test-framework;
+  atomic-primops = doJailbreak (appendPatch super.atomic-primops ./patches/atomic-primops-Cabal-1.25.patch);
+  hashable = doJailbreak super.hashable;
+  stm = doJailbreak super.stm;
 }
diff --git a/pkgs/development/haskell-modules/hackage-packages.nix b/pkgs/development/haskell-modules/hackage-packages.nix
index 2528b8a8bef..1922fb3efc3 100644
--- a/pkgs/development/haskell-modules/hackage-packages.nix
+++ b/pkgs/development/haskell-modules/hackage-packages.nix
@@ -91117,8 +91117,8 @@ self: {
     ({ mkDerivation, base, hledger-lib, text, time }:
      mkDerivation {
        pname = "hledger-diff";
-       version = "0.2.0.6";
-       sha256 = "0ef38d60055fb632f3a686b5ce8aee0af5637e51b17d4c5a27764dd485c52b75";
+       version = "0.2.0.7";
+       sha256 = "1x7ngm0h9hsbf4p8vx1h4z1w9hlqkqfa39v2dvmlxrcx6rs8dzsl";
        isLibrary = false;
        isExecutable = true;
        executableHaskellDepends = [ base hledger-lib text time ];
@@ -106695,8 +106695,8 @@ self: {
     ({ mkDerivation, base, Cabal }:
      mkDerivation {
        pname = "jailbreak-cabal";
-       version = "1.3.1";
-       sha256 = "610d8dbd04281eee3d5da05c9eef45bfd1a1ddca20dfe54f283e15ddf6d5c235";
+       version = "1.3.2";
+       sha256 = "1x2h54sx4ycik34q8f9g698xc2b7fai18918cd08qx7w7ny8nai1";
        isLibrary = false;
        isExecutable = true;
        executableHaskellDepends = [ base Cabal ];
diff --git a/pkgs/development/haskell-modules/patches/atomic-primops-Cabal-1.25.patch b/pkgs/development/haskell-modules/patches/atomic-primops-Cabal-1.25.patch
new file mode 100644
index 00000000000..712bd53092f
--- /dev/null
+++ b/pkgs/development/haskell-modules/patches/atomic-primops-Cabal-1.25.patch
@@ -0,0 +1,37 @@
+diff --git a/Setup.hs b/Setup.hs
+index ddf5a02..7ad1f26 100644
+--- a/Setup.hs
++++ b/Setup.hs
+@@ -1,4 +1,4 @@
+-
++{-# LANGUAGE CPP #-}
+ import Control.Monad (when)
+ import Language.Haskell.TH
+ import Distribution.Simple                (defaultMainWithHooks, simpleUserHooks, UserHooks(postConf), Args)
+@@ -6,14 +6,25 @@ import Distribution.Simple.Utils          (cabalVersion)
+ import Distribution.Simple.LocalBuildInfo
+ import Distribution.Simple.Setup          (ConfigFlags)
+ import Distribution.Version               (Version(..))
++#if MIN_VERSION_Cabal(1,25,0)
++import Distribution.Version               (mkVersion)
++#endif
+ import Distribution.PackageDescription    (PackageDescription)
+ import Debug.Trace
+ 
++#if MIN_VERSION_Cabal(1,25,0)
++versionBranch :: Version -> Version
++versionBranch = id
++#else
++mkVersion :: [Int] -> Version
++mkVersion vs = Version vs []
++#endif
++
+ -- I couldn't figure out a way to do this check from the cabal file, so we drop down
+ -- here to do it instead:
+ checkGoodVersion :: IO ()
+ checkGoodVersion =
+-  if   cabalVersion >= Version [1,17,0] []
++  if   cabalVersion >= mkVersion [1,17,0]
+   then putStrLn (" [Setup.hs] This version of Cabal is ok for profiling: "++show cabalVersion)
+   else error (" [Setup.hs] This package should not be used in profiling mode with cabal version "++
+                         show (versionBranch cabalVersion)++" < 1.17.0\n"++
diff --git a/pkgs/development/libraries/cairo/default.nix b/pkgs/development/libraries/cairo/default.nix
index 5d201c52312..5b40f27674d 100644
--- a/pkgs/development/libraries/cairo/default.nix
+++ b/pkgs/development/libraries/cairo/default.nix
@@ -47,7 +47,7 @@ stdenv.mkDerivation rec {
     libiconv
   ] ++ libintlOrEmpty ++ optionals stdenv.isDarwin (with darwin.apple_sdk.frameworks; [
     CoreGraphics
-    ApplicationServices
+    CoreText
     Carbon
   ]);
 
@@ -56,6 +56,9 @@ stdenv.mkDerivation rec {
     ++ optionals xcbSupport [ libxcb xcbutil ]
     ++ optional gobjectSupport glib
     ++ optional glSupport mesa_noglu
+    ++ optionals stdenv.isDarwin (with darwin.apple_sdk.frameworks; [
+      ApplicationServices
+    ])
     ; # TODO: maybe liblzo but what would it be for here?
 
   configureFlags = if stdenv.isDarwin then [
diff --git a/pkgs/development/libraries/cpp-ipfs-api/default.nix b/pkgs/development/libraries/cpp-ipfs-api/default.nix
index 2c9d36154a2..c13b32a67b0 100644
--- a/pkgs/development/libraries/cpp-ipfs-api/default.nix
+++ b/pkgs/development/libraries/cpp-ipfs-api/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   name = "cpp-ipfs-api-${version}";
-  version = "2016-11-09";
+  version = "2017-01-04";
 
   src = fetchFromGitHub {
     owner = "vasild";
     repo = "cpp-ipfs-api";
-    rev = "46e473e49ede4fd829235f1d4930754d5356a747";
-    sha256 = "10c5hmg9857zb0fp262ca4a42gq9iqdyqz7f975cp3qs70x12q08";
+    rev = "96a890f4518665a56581a2a52311eaa65928eac8";
+    sha256 = "1z6gbd7npg4pd9wmdyzcp9h12sg84d7a43c69pp4lzqkyqg8pz1g";
   };
 
   buildInputs = [ cmake curl ];
diff --git a/pkgs/development/libraries/gtk+/2.x.nix b/pkgs/development/libraries/gtk+/2.x.nix
index ba12b4eea93..bcbbecd242d 100644
--- a/pkgs/development/libraries/gtk+/2.x.nix
+++ b/pkgs/development/libraries/gtk+/2.x.nix
@@ -2,11 +2,15 @@
 , gdk_pixbuf, libintlOrEmpty, xlibsWrapper
 , xineramaSupport ? stdenv.isLinux
 , cupsSupport ? true, cups ? null
+, gdktarget ? "x11"
+, AppKit, Cocoa
 }:
 
 assert xineramaSupport -> xorg.libXinerama != null;
 assert cupsSupport -> cups != null;
 
+with stdenv.lib;
+
 stdenv.mkDerivation rec {
   name = "gtk+-2.24.31";
 
@@ -20,7 +24,7 @@ stdenv.mkDerivation rec {
 
   enableParallelBuilding = true;
 
-  NIX_CFLAGS_COMPILE = stdenv.lib.optionalString (libintlOrEmpty != []) "-lintl";
+  NIX_CFLAGS_COMPILE = optionalString (libintlOrEmpty != []) "-lintl";
 
   setupHook = ./setup-hook.sh;
 
@@ -28,7 +32,7 @@ stdenv.mkDerivation rec {
 
   patches = [ ./2.0-immodules.cache.patch ];
 
-  propagatedBuildInputs = with xorg; with stdenv.lib;
+  propagatedBuildInputs = with xorg;
     [ glib cairo pango gdk_pixbuf atk ]
     ++ optionals (stdenv.isLinux || stdenv.isDarwin) [
          libXrandr libXrender libXcomposite libXi libXcursor
@@ -36,11 +40,13 @@ stdenv.mkDerivation rec {
     ++ optionals stdenv.isDarwin [ xlibsWrapper libXdamage ]
     ++ libintlOrEmpty
     ++ optional xineramaSupport libXinerama
-    ++ optionals cupsSupport [ cups ];
+    ++ optionals cupsSupport [ cups ]
+    ++ optionals (gdktarget == "quartz") [ AppKit Cocoa ];
 
   configureFlags = [
+    "--with-gdktarget=${gdktarget}"
     "--with-xinput=yes"
-  ] ++ stdenv.lib.optionals stdenv.isDarwin [
+  ] ++ optionals stdenv.isDarwin [
     "--disable-glibtest"
     "--disable-introspection"
     "--disable-visibility"
@@ -57,9 +63,10 @@ stdenv.mkDerivation rec {
       rm $out/lib/gtk-2.0/2.10.0/immodules.cache
       $out/bin/gtk-query-immodules-2.0 $out/lib/gtk-2.0/2.10.0/immodules/*.so > $out/lib/gtk-2.0/2.10.0/immodules.cache
     ''; # workaround for bug of nix-mode for Emacs */ '';
+    inherit gdktarget;
   };
 
-  meta = with stdenv.lib; {
+  meta = {
     description = "A multi-platform toolkit for creating graphical user interfaces";
     homepage    = http://www.gtk.org/;
     license     = licenses.lgpl2Plus;
diff --git a/pkgs/development/libraries/gtk-mac-integration/default.nix b/pkgs/development/libraries/gtk-mac-integration/default.nix
new file mode 100644
index 00000000000..30ac8f2fe28
--- /dev/null
+++ b/pkgs/development/libraries/gtk-mac-integration/default.nix
@@ -0,0 +1,30 @@
+{ stdenv, lib, fetchFromGitHub, autoreconfHook, pkgconfig, glib, gtk_doc, gtk }:
+
+stdenv.mkDerivation rec {
+  name = "gtk-mac-integration-2.0.8";
+
+  src = fetchFromGitHub {
+    owner = "GNOME";
+    repo = "gtk-mac-integration";
+    rev = "79e708870cdeea24ecdb036c77b4630104ae1776";
+    sha256 = "1fbhnvj0rqc3089ypvgnpkp6ad2rr37v5qk38008dgamb9h7f3qs";
+  };
+
+  nativeBuildInputs = [ autoreconfHook pkgconfig gtk_doc ];
+  buildInputs = [ glib gtk ];
+
+  preAutoreconf = ''
+    gtkdocize
+  '';
+
+  meta = with lib; {
+    description = "Provides integration for Gtk+ applications into the Mac desktop";
+
+    license = licenses.lgpl21;
+
+    homepage = https://wiki.gnome.org/Projects/GTK+/OSX/Integration;
+
+    maintainers = [ maintainers.matthewbauer ];
+    platforms = platforms.darwin;
+  };
+}
diff --git a/pkgs/development/libraries/ldns/default.nix b/pkgs/development/libraries/ldns/default.nix
index 883625e551a..c35cc588314 100644
--- a/pkgs/development/libraries/ldns/default.nix
+++ b/pkgs/development/libraries/ldns/default.nix
@@ -1,25 +1,26 @@
 {stdenv, fetchurl, openssl, perl}:
 
 stdenv.mkDerivation rec {
-  name = "ldns-1.6.17";
+  pname = "ldns";
+  version = "1.7.0";
+
+  name = "${pname}-${version}";
 
   src = fetchurl {
-    url = "http://www.nlnetlabs.nl/downloads/ldns/${name}.tar.gz";
-    sha256 = "1kf8pkwhcssvgzhh6ha1pjjiziwvwmfaali7kaafh6118mcy124b";
+    url = "https://www.nlnetlabs.nl/downloads/ldns/${name}.tar.gz";
+    sha1 = "ceeeccf8a27e61a854762737f6ee02f44662c1b8";
   };
 
-  outputs = [ "out" "dev" ];
-
-  patches = [ ./perl-5.22-compat.patch ];
-
-  postPatch = ''
+  patchPhase = ''
     patchShebangs doc/doxyparse.pl
   '';
 
+  outputs = [ "out" "dev" ];
+
   nativeBuildInputs = [ perl ];
   buildInputs = [ openssl ];
 
-  configureFlags = [ "--with-ssl=${openssl.dev}" "--with-drill" ];
+  configureFlags = [ "--with-ssl=${openssl.dev}" "--with-drill"];
 
   postInstall = ''
     moveToOutput "bin/ldns-config" "$dev"
diff --git a/pkgs/development/libraries/ldns/perl-5.22-compat.patch b/pkgs/development/libraries/ldns/perl-5.22-compat.patch
deleted file mode 100644
index ddf711cef5d..00000000000
--- a/pkgs/development/libraries/ldns/perl-5.22-compat.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff -Naur old/doc/doxyparse.pl new/doc/doxyparse.pl
---- old/doc/doxyparse.pl	2014-01-11 06:04:41.000000000 +0900
-+++ new/doc/doxyparse.pl	2015-08-08 22:29:34.216889652 +0900
-@@ -273,7 +273,7 @@
- 
- 	print MAN $MAN_MIDDLE;
- 
--	if (defined(@$also)) {
-+	if (@$also) {
- 		print MAN "\n.SH SEE ALSO\n\\fI";
- 		print MAN join "\\fR, \\fI", @$also;
- 		print MAN "\\fR.\nAnd ";
diff --git a/pkgs/development/libraries/libpng/12.nix b/pkgs/development/libraries/libpng/12.nix
index 8e17c44fa63..b3f7f96e936 100644
--- a/pkgs/development/libraries/libpng/12.nix
+++ b/pkgs/development/libraries/libpng/12.nix
@@ -3,11 +3,11 @@
 assert !(stdenv ? cross) -> zlib != null;
 
 stdenv.mkDerivation rec {
-  name = "libpng-1.2.56";
+  name = "libpng-1.2.57";
 
   src = fetchurl {
     url = "mirror://sourceforge/libpng/${name}.tar.xz";
-    sha256 = "1ghd03p353x0vi4dk83n1nlldg11w7vqdk3f99rkgfb82ic59ki4";
+    sha256 = "1n2lrzjkm5jhfg2bs10q398lkwbbx742fi27zgdgx0x23zhj0ihg";
   };
 
   outputs = [ "out" "dev" "man" ];
diff --git a/pkgs/development/libraries/libpqxx/default.nix b/pkgs/development/libraries/libpqxx/default.nix
index e8a80497de3..51cb1c48e54 100644
--- a/pkgs/development/libraries/libpqxx/default.nix
+++ b/pkgs/development/libraries/libpqxx/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl, postgresql, python2 }:
+{ lib, stdenv, fetchurl, postgresql, python2, gnused }:
 
 stdenv.mkDerivation rec {
   name = "libpqxx-4.0.1";
@@ -8,7 +8,7 @@ stdenv.mkDerivation rec {
     sha256 = "0f6wxspp6rx12fkasanb0z2g2gc8dhcfwnxagx8wwqbpg6ifsz09";
   };
 
-  buildInputs = [ postgresql python2 ];
+  buildInputs = [ postgresql python2 gnused ];
 
   preConfigure = ''
     patchShebangs .
diff --git a/pkgs/development/libraries/libtermkey/default.nix b/pkgs/development/libraries/libtermkey/default.nix
index 43c8292a200..97bc98b22d8 100644
--- a/pkgs/development/libraries/libtermkey/default.nix
+++ b/pkgs/development/libraries/libtermkey/default.nix
@@ -3,11 +3,11 @@
 stdenv.mkDerivation rec {
   name = "libtermkey-${version}";
 
-  version = "0.18";
+  version = "0.19";
 
   src = fetchzip {
     url = "http://www.leonerd.org.uk/code/libtermkey/libtermkey-${version}.tar.gz";
-    sha256 = "0a0ih1a114phzmyq6jzgbp03x97463fwvrp1cgnl26awqw3f8sbf";
+    sha256 = "0v85h0zacd5lqwkykl2ms4009x8mfidzb6jr4dsq4gh7kwm54w56";
   };
 
   makeFlags = [ "PREFIX=$(out)" ]
diff --git a/pkgs/development/libraries/libuv/default.nix b/pkgs/development/libraries/libuv/default.nix
index fd422a514ef..2b062f58b24 100644
--- a/pkgs/development/libraries/libuv/default.nix
+++ b/pkgs/development/libraries/libuv/default.nix
@@ -16,6 +16,7 @@ stdenv.mkDerivation rec {
     toDisable = [
       "getnameinfo_basic" # probably network-dependent
       "spawn_setuid_fails" "spawn_setgid_fails" "fs_chown" # user namespaces
+      "getaddrinfo_fail" "getaddrinfo_fail_sync"
     ];
     tdRegexp = lib.concatStringsSep "\\|" toDisable;
     in lib.optionalString doCheck ''
@@ -33,8 +34,6 @@ stdenv.mkDerivation rec {
 
   doCheck = true;
 
-  crossAttrs.doCheck = false;
-
   meta = with lib; {
     description = "A multi-platform support library with a focus on asynchronous I/O";
     homepage    = https://github.com/libuv/libuv;
diff --git a/pkgs/development/libraries/openjpeg/2.1.nix b/pkgs/development/libraries/openjpeg/2.1.nix
index 9e3c4473b31..ae8710e58a2 100644
--- a/pkgs/development/libraries/openjpeg/2.1.nix
+++ b/pkgs/development/libraries/openjpeg/2.1.nix
@@ -1,4 +1,4 @@
-{ callPackage, ... } @ args:
+{ callPackage, fetchpatch, ... } @ args:
 
 callPackage ./generic.nix (args // rec {
   version = "2.1.2";
@@ -12,5 +12,26 @@ callPackage ./generic.nix (args // rec {
     # Put in our source code to make sure we don't lose it, since that
     # referenced commit is someone else's fork, and not actually up-stream.
     ./CVE-2016-9580-and-CVE-2016-9581.patch
+
+    (fetchpatch {
+      url = "https://bugzilla.suse.com/attachment.cgi?id=707359&action=diff&context=patch&collapsed=&headers=1&format=raw";
+      name = "CVE-2016-9112.patch";
+      sha256 = "18hqx73wdzfybr5n5k6pzhbhdlmawiqbjci8n82zykxiyfgp18pd";
+    })
+    (fetchpatch {
+      url = "https://bugzilla.suse.com/attachment.cgi?id=707354&action=diff&context=patch&collapsed=&headers=1&format=raw";
+      name = "CVE-2016-9114.patch";
+      sha256 = "0qam3arw9kdbh4501xim2pyldl708dnpyjwvjmwc9gc7hcq4gfi3";
+    })
+    (fetchpatch {
+      url = "https://bugzilla.suse.com/attachment.cgi?id=707356&action=diff&context=patch&collapsed=&headers=1&format=raw";
+      name = "CVE-2016-9116.patch";
+      sha256 = "0yyb3pxqi5sr44a48bacngzp206j4z49lzkg6hbkz1nra9na61a3";
+    })
+    (fetchpatch {
+      url = "https://bugzilla.suse.com/attachment.cgi?id=707358&action=diff&context=patch&collapsed=&headers=1&format=raw";
+      name = "CVE-2016-9118.patch";
+      sha256 = "125n8bmh07y7697s0y82ypb39rxgj0bdn8rcywbvamscagwg2wy9";
+    })
   ];
 })
diff --git a/pkgs/development/libraries/pango/default.nix b/pkgs/development/libraries/pango/default.nix
index f39fc2afe7d..22cf7be84d0 100644
--- a/pkgs/development/libraries/pango/default.nix
+++ b/pkgs/development/libraries/pango/default.nix
@@ -1,5 +1,5 @@
 { stdenv, fetchurl, pkgconfig, libXft, cairo, harfbuzz
-, libintlOrEmpty, gobjectIntrospection
+, libintlOrEmpty, gobjectIntrospection, darwin
 }:
 
 with stdenv.lib;
@@ -19,7 +19,12 @@ stdenv.mkDerivation rec {
   outputs = [ "bin" "dev" "out" "devdoc" ];
 
   buildInputs = [ gobjectIntrospection ];
-  nativeBuildInputs = [ pkgconfig ];
+  nativeBuildInputs = [ pkgconfig ]
+    ++ optionals stdenv.isDarwin (with darwin.apple_sdk.frameworks; [
+       Carbon
+       CoreGraphics
+       CoreText
+    ]);
   propagatedBuildInputs = [ cairo harfbuzz libXft ] ++ libintlOrEmpty;
 
   enableParallelBuilding = true;
@@ -48,6 +53,6 @@ stdenv.mkDerivation rec {
     license = licenses.lgpl2Plus;
 
     maintainers = with maintainers; [ raskin urkud ];
-    platforms = with platforms; linux ++ darwin;
+    platforms = platforms.linux ++ platforms.darwin;
   };
 }
diff --git a/pkgs/development/python-modules/discordpy/default.nix b/pkgs/development/python-modules/discordpy/default.nix
index cf01ec835a7..6025956261e 100644
--- a/pkgs/development/python-modules/discordpy/default.nix
+++ b/pkgs/development/python-modules/discordpy/default.nix
@@ -11,13 +11,13 @@
 
 let
   pname = "discord.py";
-  version = "0.15.1";
+  version = "0.16.0";
 in buildPythonPackage rec {
   name = "${pname}-${version}";
 
   src = fetchurl {
     url = "mirror://pypi/${builtins.substring 0 1 pname}/${pname}/${name}.tar.gz";
-    sha256 = "01lgidvnwwva1i65853gaplamllym2nsk0jis2r6f1rzbamgk1yj";
+    sha256 = "0r3qqvx36vywjyjk1nh11ymmr8y81sb45nk63665kcjagx8qnmfx";
   };
 
   propagatedBuildInputs = [ asyncio aiohttp websockets pynacl ];
diff --git a/pkgs/development/python-modules/pygtk/default.nix b/pkgs/development/python-modules/pygtk/default.nix
index 7d0896c1fb8..0940ef00ac9 100644
--- a/pkgs/development/python-modules/pygtk/default.nix
+++ b/pkgs/development/python-modules/pygtk/default.nix
@@ -3,7 +3,7 @@
 
 buildPythonPackage rec {
   name = "pygtk-2.24.0";
-  
+
   disabled = isPy3k;
 
   src = fetchurl {
@@ -20,6 +20,8 @@ buildPythonPackage rec {
 
   buildPhase = "buildPhase";
 
+  NIX_CFLAGS_COMPILE = stdenv.lib.optionalString stdenv.isDarwin "-ObjC";
+
   installPhase = "installPhase";
 
   checkPhase = stdenv.lib.optionalString (libglade == null)
diff --git a/pkgs/development/r-modules/default.nix b/pkgs/development/r-modules/default.nix
index 093bc2f7884..49273e34c7e 100644
--- a/pkgs/development/r-modules/default.nix
+++ b/pkgs/development/r-modules/default.nix
@@ -240,30 +240,30 @@ let
     audio = [ pkgs.portaudio ];
     BayesSAE = [ pkgs.gsl_1 ];
     BayesVarSel = [ pkgs.gsl_1 ];
-    BayesXsrc = [ pkgs.readline pkgs.ncurses ];
+    BayesXsrc = [ pkgs.readline.dev pkgs.ncurses ];
     bigGP = [ pkgs.openmpi ];
     BiocCheck = [ pkgs.which ];
     Biostrings = [ pkgs.zlib ];
     bnpmr = [ pkgs.gsl_1 ];
     BNSP = [ pkgs.gsl_1 ];
-    cairoDevice = [ pkgs.gtk2 ];
-    Cairo = [ pkgs.libtiff pkgs.libjpeg pkgs.cairo ];
+    cairoDevice = [ pkgs.gtk2.dev ];
+    Cairo = [ pkgs.libtiff pkgs.libjpeg pkgs.cairo.dev pkgs.x11 pkgs.fontconfig.lib ];
     Cardinal = [ pkgs.which ];
     chebpol = [ pkgs.fftw ];
     ChemmineOB = [ pkgs.openbabel pkgs.pkgconfig ];
     cit = [ pkgs.gsl_1 ];
     curl = [ pkgs.curl.dev ];
-    devEMF = [ pkgs.xorg.libXft ];
+    devEMF = [ pkgs.xorg.libXft.dev pkgs.x11 ];
     diversitree = [ pkgs.gsl_1 pkgs.fftw ];
     EMCluster = [ pkgs.liblapack ];
-    fftw = [ pkgs.fftw ];
-    fftwtools = [ pkgs.fftw ];
+    fftw = [ pkgs.fftw.dev ];
+    fftwtools = [ pkgs.fftw.dev ];
     Formula = [ pkgs.gmp ];
     geoCount = [ pkgs.gsl_1 ];
-    git2r = [ pkgs.zlib pkgs.openssl ];
+    git2r = [ pkgs.zlib.dev pkgs.openssl.dev ];
     GLAD = [ pkgs.gsl_1 ];
     glpkAPI = [ pkgs.gmp pkgs.glpk ];
-    gmp = [ pkgs.gmp ];
+    gmp = [ pkgs.gmp.dev ];
     graphscan = [ pkgs.gsl_1 ];
     gsl = [ pkgs.gsl_1 ];
     h5 = [ pkgs.hdf5-cpp pkgs.which ];
@@ -272,13 +272,13 @@ let
     iBMQ = [ pkgs.gsl_1 ];
     igraph = [ pkgs.gmp ];
     JavaGD = [ pkgs.jdk ];
-    jpeg = [ pkgs.libjpeg ];
+    jpeg = [ pkgs.libjpeg.dev ];
     KFKSDS = [ pkgs.gsl_1 ];
-    kza = [ pkgs.fftw ];
+    kza = [ pkgs.fftw.dev ];
     libamtrack = [ pkgs.gsl_1 ];
     mixcat = [ pkgs.gsl_1 ];
     mvabund = [ pkgs.gsl_1 ];
-    mwaved = [ pkgs.fftw ];
+    mwaved = [ pkgs.fftw.dev ];
     ncdf4 = [ pkgs.netcdf ];
     nloptr = [ pkgs.nlopt ];
     openssl = [ pkgs.openssl.dev ];
@@ -287,99 +287,99 @@ let
     pbdMPI = [ pkgs.openmpi ];
     pbdNCDF4 = [ pkgs.netcdf ];
     pbdPROF = [ pkgs.openmpi ];
-    PKI = [ pkgs.openssl ];
+    PKI = [ pkgs.openssl.dev ];
     png = [ pkgs.libpng.dev ];
-    PopGenome = [ pkgs.zlib ];
+    PopGenome = [ pkgs.zlib.dev ];
     proj4 = [ pkgs.proj ];
     qtbase = [ pkgs.qt4 ];
     qtpaint = [ pkgs.qt4 ];
     R2GUESS = [ pkgs.gsl_1 ];
-    R2SWF = [ pkgs.zlib pkgs.libpng pkgs.freetype ];
+    R2SWF = [ pkgs.zlib pkgs.libpng pkgs.freetype.dev ];
     RAppArmor = [ pkgs.libapparmor ];
     rapportools = [ pkgs.which ];
     rapport = [ pkgs.which ];
-    rbamtools = [ pkgs.zlib ];
-    rcdd = [ pkgs.gmp ];
-    RcppCNPy = [ pkgs.zlib ];
+    rbamtools = [ pkgs.zlib.dev ];
+    rcdd = [ pkgs.gmp.dev ];
+    RcppCNPy = [ pkgs.zlib.dev ];
     RcppGSL = [ pkgs.gsl_1 ];
-    RcppOctave = [ pkgs.zlib pkgs.bzip2 pkgs.icu pkgs.lzma pkgs.pcre pkgs.octave ];
+    RcppOctave = [ pkgs.zlib pkgs.bzip2.dev pkgs.icu pkgs.lzma.dev pkgs.pcre.dev pkgs.octave ];
     RcppZiggurat = [ pkgs.gsl_1 ];
     rgdal = [ pkgs.proj pkgs.gdal ];
     rgeos = [ pkgs.geos ];
-    rggobi = [ pkgs.ggobi pkgs.gtk2 pkgs.libxml2 ];
+    rggobi = [ pkgs.ggobi pkgs.gtk2.dev pkgs.libxml2.dev ];
     rgl = [ pkgs.mesa pkgs.xlibsWrapper ];
     Rglpk = [ pkgs.glpk ];
-    RGtk2 = [ pkgs.gtk2 ];
+    RGtk2 = [ pkgs.gtk2.dev ];
     rhdf5 = [ pkgs.zlib ];
-    Rhpc = [ pkgs.zlib pkgs.bzip2 pkgs.icu pkgs.lzma pkgs.openmpi pkgs.pcre ];
-    Rhtslib = [ pkgs.zlib ];
-    RJaCGH = [ pkgs.zlib ];
+    Rhpc = [ pkgs.zlib pkgs.bzip2.dev pkgs.icu pkgs.lzma.dev pkgs.openmpi pkgs.pcre.dev ];
+    Rhtslib = [ pkgs.zlib.dev ];
+    RJaCGH = [ pkgs.zlib.dev ];
     rjags = [ pkgs.jags ];
-    rJava = [ pkgs.zlib pkgs.bzip2 pkgs.icu pkgs.lzma pkgs.pcre pkgs.jdk pkgs.libzip ];
+    rJava = [ pkgs.zlib pkgs.bzip2.dev pkgs.icu pkgs.lzma.dev pkgs.pcre.dev pkgs.jdk pkgs.libzip ];
     Rlibeemd = [ pkgs.gsl_1 ];
-    rmatio = [ pkgs.zlib ];
-    Rmpfr = [ pkgs.gmp pkgs.mpfr ];
+    rmatio = [ pkgs.zlib.dev ];
+    Rmpfr = [ pkgs.gmp pkgs.mpfr.dev ];
     Rmpi = [ pkgs.openmpi ];
     RMySQL = [ pkgs.zlib pkgs.mysql.lib ];
     RNetCDF = [ pkgs.netcdf pkgs.udunits ];
     RODBCext = [ pkgs.libiodbc ];
     RODBC = [ pkgs.libiodbc ];
     rpg = [ pkgs.postgresql ];
-    rphast = [ pkgs.pcre pkgs.zlib pkgs.bzip2 pkgs.gzip pkgs.readline ];
+    rphast = [ pkgs.pcre.dev pkgs.zlib pkgs.bzip2 pkgs.gzip pkgs.readline ];
     Rpoppler = [ pkgs.poppler ];
     RPostgreSQL = [ pkgs.postgresql ];
     RProtoBuf = [ pkgs.protobuf ];
     rPython = [ pkgs.python ];
-    RSclient = [ pkgs.openssl ];
+    RSclient = [ pkgs.openssl.dev ];
     Rserve = [ pkgs.openssl ];
-    Rssa = [ pkgs.fftw ];
-    rtfbs = [ pkgs.zlib pkgs.pcre pkgs.bzip2 pkgs.gzip pkgs.readline ];
-    rtiff = [ pkgs.libtiff ];
+    Rssa = [ pkgs.fftw.dev ];
+    rtfbs = [ pkgs.zlib pkgs.pcre.dev pkgs.bzip2 pkgs.gzip pkgs.readline ];
+    rtiff = [ pkgs.libtiff.dev ];
     runjags = [ pkgs.jags ];
-    RVowpalWabbit = [ pkgs.zlib pkgs.boost ];
+    RVowpalWabbit = [ pkgs.zlib.dev pkgs.boost ];
     rzmq = [ pkgs.zeromq3 ];
     SAVE = [ pkgs.zlib pkgs.bzip2 pkgs.icu pkgs.lzma pkgs.pcre ];
     sdcTable = [ pkgs.gmp pkgs.glpk ];
     seewave = [ pkgs.fftw.dev pkgs.libsndfile.dev ];
-    seqinr = [ pkgs.zlib ];
-    seqminer = [ pkgs.zlib pkgs.bzip2 ];
-    showtext = [ pkgs.zlib pkgs.libpng pkgs.icu pkgs.freetype ];
+    seqinr = [ pkgs.zlib.dev ];
+    seqminer = [ pkgs.zlib.dev pkgs.bzip2 ];
+    showtext = [ pkgs.zlib pkgs.libpng pkgs.icu pkgs.freetype.dev ];
     simplexreg = [ pkgs.gsl_1 ];
     SOD = [ pkgs.cudatoolkit ]; # requres CL/cl.h
-    spate = [ pkgs.fftw ];
+    spate = [ pkgs.fftw.dev ];
     sprint = [ pkgs.openmpi ];
     ssanv = [ pkgs.proj ];
     stsm = [ pkgs.gsl_1 ];
     stringi = [ pkgs.icu.dev ];
     survSNP = [ pkgs.gsl_1 ];
-    sysfonts = [ pkgs.zlib pkgs.libpng pkgs.freetype ];
-    TAQMNGR = [ pkgs.zlib ];
-    tiff = [ pkgs.libtiff ];
+    sysfonts = [ pkgs.zlib pkgs.libpng pkgs.freetype.dev ];
+    TAQMNGR = [ pkgs.zlib.dev ];
+    tiff = [ pkgs.libtiff.dev ];
     TKF = [ pkgs.gsl_1 ];
-    tkrplot = [ pkgs.xorg.libX11 ];
+    tkrplot = [ pkgs.xorg.libX11 pkgs.tk.dev ];
     topicmodels = [ pkgs.gsl_1 ];
     udunits2 = [ pkgs.udunits pkgs.expat ];
     V8 = [ pkgs.v8 ];
     VBLPCM = [ pkgs.gsl_1 ];
     VBmix = [ pkgs.gsl_1 pkgs.fftw pkgs.qt4 ];
-    WhopGenome = [ pkgs.zlib ];
-    XBRL = [ pkgs.zlib pkgs.libxml2 ];
-    xml2 = [ pkgs.libxml2 ];
+    WhopGenome = [ pkgs.zlib.dev ];
+    XBRL = [ pkgs.zlib pkgs.libxml2.dev ];
+    xml2 = [ pkgs.libxml2.dev ];
     XML = [ pkgs.libtool pkgs.libxml2.dev pkgs.xmlsec pkgs.libxslt ];
-    affyPLM = [ pkgs.zlib ];
-    bamsignals = [ pkgs.zlib ];
-    BitSeq = [ pkgs.zlib ];
+    affyPLM = [ pkgs.zlib.dev ];
+    bamsignals = [ pkgs.zlib.dev ];
+    BitSeq = [ pkgs.zlib.dev ];
     DiffBind = [ pkgs.zlib ];
     ShortRead = [ pkgs.zlib.dev ];
-    oligo = [ pkgs.zlib ];
-    gmapR = [ pkgs.zlib ];
-    Rsubread = [ pkgs.zlib ];
+    oligo = [ pkgs.zlib.dev ];
+    gmapR = [ pkgs.zlib.dev ];
+    Rsubread = [ pkgs.zlib.dev ];
     XVector = [ pkgs.zlib.dev ];
     Rsamtools = [ pkgs.zlib.dev ];
-    rtracklayer = [ pkgs.zlib ];
-    affyio = [ pkgs.zlib ];
-    VariantAnnotation = [ pkgs.zlib ];
-    snpStats = [ pkgs.zlib ];
+    rtracklayer = [ pkgs.zlib.dev ];
+    affyio = [ pkgs.zlib.dev ];
+    VariantAnnotation = [ pkgs.zlib.dev ];
+    snpStats = [ pkgs.zlib.dev ];
   };
 
   packagesWithBuildInputs = {
@@ -1791,6 +1791,10 @@ let
         '';
     });
 
+    Cairo = old.Cairo.overrideDerivation (attrs: {
+      NIX_LDFLAGS = "-lfontconfig";
+    });
+
     curl = old.curl.overrideDerivation (attrs: {
       preConfigure = "patchShebangs configure";
     });
@@ -1859,6 +1863,7 @@ let
 
     devEMF = old.devEMF.overrideDerivation (attrs: {
       NIX_CFLAGS_LINK = "-L${pkgs.xorg.libXft.out}/lib -lXft";
+      NIX_LDFLAGS = "-lX11";
     });
 
     slfm = old.slfm.overrideDerivation (attrs: {