summary refs log tree commit diff
path: root/pkgs/development/libraries
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/development/libraries')
-rw-r--r--pkgs/development/libraries/CGAL/default.nix8
-rw-r--r--pkgs/development/libraries/SDL/default.nix2
-rw-r--r--pkgs/development/libraries/accelio/default.nix13
-rw-r--r--pkgs/development/libraries/accelio/fix-printfs.patch615
-rw-r--r--pkgs/development/libraries/accounts-qt/default.nix2
-rw-r--r--pkgs/development/libraries/at-spi2-core/default.nix2
-rw-r--r--pkgs/development/libraries/belle-sip/default.nix4
-rw-r--r--pkgs/development/libraries/biblesync/default.nix32
-rw-r--r--pkgs/development/libraries/bobcat/default.nix20
-rw-r--r--pkgs/development/libraries/botan/default.nix4
-rw-r--r--pkgs/development/libraries/botan/unstable.nix4
-rw-r--r--pkgs/development/libraries/capstone/default.nix17
-rw-r--r--pkgs/development/libraries/catch/default.nix6
-rw-r--r--pkgs/development/libraries/cogl/1.20.nix5
-rw-r--r--pkgs/development/libraries/cppzmq/default.nix8
-rw-r--r--pkgs/development/libraries/cwiid/default.nix26
-rw-r--r--pkgs/development/libraries/dbus-glib/default.nix2
-rw-r--r--pkgs/development/libraries/dbus/default.nix4
-rw-r--r--pkgs/development/libraries/dclxvi/default.nix27
-rw-r--r--pkgs/development/libraries/double-conversion/default.nix4
-rw-r--r--pkgs/development/libraries/epoxy/default.nix24
-rw-r--r--pkgs/development/libraries/exempi/default.nix4
-rw-r--r--pkgs/development/libraries/expat/CVE-2015-1283.patch77
-rw-r--r--pkgs/development/libraries/expat/default.nix2
-rw-r--r--pkgs/development/libraries/ffmpeg-full/default.nix10
-rw-r--r--pkgs/development/libraries/ffmpeg/2.7.nix4
-rw-r--r--pkgs/development/libraries/folly/default.nix4
-rw-r--r--pkgs/development/libraries/freeglut/0001-remove-typedefs-now-living-in-mesa.patch43
-rw-r--r--pkgs/development/libraries/freeglut/default.nix36
-rw-r--r--pkgs/development/libraries/freenect/default.nix23
-rw-r--r--pkgs/development/libraries/freetds/default.nix7
-rw-r--r--pkgs/development/libraries/gdk-pixbuf/default.nix8
-rw-r--r--pkgs/development/libraries/getdata/default.nix4
-rw-r--r--pkgs/development/libraries/gettext/0.17.nix53
-rw-r--r--pkgs/development/libraries/gettext/0.18.nix11
-rw-r--r--pkgs/development/libraries/gettext/default.nix2
-rw-r--r--pkgs/development/libraries/glib-networking/default.nix4
-rw-r--r--pkgs/development/libraries/glib/default.nix2
-rw-r--r--pkgs/development/libraries/glibc/common.nix5
-rw-r--r--pkgs/development/libraries/glibc/cve-2014-8121.patch230
-rw-r--r--pkgs/development/libraries/glibc/cve-2015-1781.patch27
-rw-r--r--pkgs/development/libraries/glibc/locales.nix21
-rw-r--r--pkgs/development/libraries/glibc/security-4a28f4d5.patch53
-rw-r--r--pkgs/development/libraries/glibc/security-bdf1ff05.patch39
-rw-r--r--pkgs/development/libraries/gnutls/3.3.nix4
-rw-r--r--pkgs/development/libraries/gnutls/3.4.nix4
-rw-r--r--pkgs/development/libraries/gnutls/generic.nix28
-rw-r--r--pkgs/development/libraries/gperftools/default.nix6
-rw-r--r--pkgs/development/libraries/gsl/default.nix3
-rw-r--r--pkgs/development/libraries/gssdp/default.nix12
-rw-r--r--pkgs/development/libraries/gtk+/3.x.nix4
-rw-r--r--pkgs/development/libraries/gupnp-av/default.nix15
-rw-r--r--pkgs/development/libraries/gupnp-igd/default.nix17
-rw-r--r--pkgs/development/libraries/gupnp/default.nix21
-rw-r--r--pkgs/development/libraries/harfbuzz/default.nix6
-rw-r--r--pkgs/development/libraries/htmlcxx/default.nix20
-rw-r--r--pkgs/development/libraries/htmlcxx/ptrdiff.patch13
-rw-r--r--pkgs/development/libraries/iniparser/default.nix4
-rw-r--r--pkgs/development/libraries/jemalloc/default.nix4
-rw-r--r--pkgs/development/libraries/jsoncpp/default.nix4
-rw-r--r--pkgs/development/libraries/kerberos/heimdal.nix2
-rw-r--r--pkgs/development/libraries/kyotocabinet/default.nix12
-rw-r--r--pkgs/development/libraries/ldb/default.nix5
-rw-r--r--pkgs/development/libraries/ldns/default.nix6
-rw-r--r--pkgs/development/libraries/libaacs/default.nix6
-rw-r--r--pkgs/development/libraries/libarchive/default.nix4
-rw-r--r--pkgs/development/libraries/libassuan/default.nix4
-rw-r--r--pkgs/development/libraries/libaudclient/default.nix20
-rw-r--r--pkgs/development/libraries/libb2/default.nix18
-rw-r--r--pkgs/development/libraries/libbluray/default.nix6
-rw-r--r--pkgs/development/libraries/libbson/default.nix23
-rw-r--r--pkgs/development/libraries/libcanberra/default.nix6
-rw-r--r--pkgs/development/libraries/libcec/default.nix12
-rw-r--r--pkgs/development/libraries/libcec/platform.nix23
-rw-r--r--pkgs/development/libraries/libchamplain/default.nix2
-rw-r--r--pkgs/development/libraries/libchardet/default.nix2
-rw-r--r--pkgs/development/libraries/libcli/default.nix2
-rw-r--r--pkgs/development/libraries/libcouchbase/default.nix23
-rw-r--r--pkgs/development/libraries/libdmtx/default.nix4
-rw-r--r--pkgs/development/libraries/libdrm/default.nix4
-rw-r--r--pkgs/development/libraries/libevent/1.4.nix29
-rw-r--r--pkgs/development/libraries/libevent/default.nix10
-rw-r--r--pkgs/development/libraries/libgdata/0.6.nix51
-rw-r--r--pkgs/development/libraries/libgphoto2/default.nix4
-rw-r--r--pkgs/development/libraries/libgsf/default.nix4
-rw-r--r--pkgs/development/libraries/libiberty/default.nix4
-rw-r--r--pkgs/development/libraries/libidn/default.nix4
-rw-r--r--pkgs/development/libraries/libinput/default.nix6
-rw-r--r--pkgs/development/libraries/libixp-hg/default.nix27
-rw-r--r--pkgs/development/libraries/libixp_for_wmii/default.nix26
-rw-r--r--pkgs/development/libraries/libkolab/default.nix25
-rw-r--r--pkgs/development/libraries/libkolabxml/default.nix25
-rw-r--r--pkgs/development/libraries/libmediainfo/default.nix6
-rw-r--r--pkgs/development/libraries/libmtp/default.nix4
-rw-r--r--pkgs/development/libraries/libnice/default.nix10
-rw-r--r--pkgs/development/libraries/liboauth/default.nix6
-rw-r--r--pkgs/development/libraries/libogg/default.nix2
-rw-r--r--pkgs/development/libraries/libpcap/default.nix8
-rw-r--r--pkgs/development/libraries/libpipeline/default.nix4
-rw-r--r--pkgs/development/libraries/libpng/12.nix8
-rw-r--r--pkgs/development/libraries/libpng/15.nix26
-rw-r--r--pkgs/development/libraries/libpng/default.nix8
-rw-r--r--pkgs/development/libraries/libpsl/default.nix51
-rw-r--r--pkgs/development/libraries/libqalculate/default.nix2
-rw-r--r--pkgs/development/libraries/libqglviewer/default.nix16
-rw-r--r--pkgs/development/libraries/libraw/default.nix7
-rw-r--r--pkgs/development/libraries/libressl/default.nix4
-rw-r--r--pkgs/development/libraries/librsvg/default.nix6
-rw-r--r--pkgs/development/libraries/libs3/default.nix8
-rw-r--r--pkgs/development/libraries/libseccomp/default.nix4
-rw-r--r--pkgs/development/libraries/libsoup/bad-symbol.patch10
-rw-r--r--pkgs/development/libraries/libsoup/default.nix9
-rw-r--r--pkgs/development/libraries/libssh/0001-Reintroduce-ssh_forward_listen-Fixes-194.patch28
-rw-r--r--pkgs/development/libraries/libssh/default.nix8
-rw-r--r--pkgs/development/libraries/libtap/default.nix28
-rw-r--r--pkgs/development/libraries/libtidy/default.nix28
-rw-r--r--pkgs/development/libraries/libtiff/default.nix2
-rw-r--r--pkgs/development/libraries/libtorrent-rasterbar/0.16.nix4
-rw-r--r--pkgs/development/libraries/libtorrent-rasterbar/default.nix4
-rw-r--r--pkgs/development/libraries/libtorrent-rasterbar/generic.nix14
-rw-r--r--pkgs/development/libraries/libunwind/cve-2015-3239.patch15
-rw-r--r--pkgs/development/libraries/libunwind/default.nix6
-rw-r--r--pkgs/development/libraries/libva/default.nix4
-rw-r--r--pkgs/development/libraries/libvdpau/default.nix6
-rw-r--r--pkgs/development/libraries/libvorbis/default.nix2
-rw-r--r--pkgs/development/libraries/libwpd/default.nix6
-rw-r--r--pkgs/development/libraries/libxml2/default.nix4
-rw-r--r--pkgs/development/libraries/libxslt/default.nix2
-rw-r--r--pkgs/development/libraries/lightning/default.nix16
-rw-r--r--pkgs/development/libraries/lmdb/default.nix4
-rw-r--r--pkgs/development/libraries/lzo/default.nix33
-rw-r--r--pkgs/development/libraries/mdds/default.nix6
-rw-r--r--pkgs/development/libraries/mdds/default.upstream2
-rw-r--r--pkgs/development/libraries/mediastreamer/default.nix9
-rw-r--r--pkgs/development/libraries/mediastreamer/msopenh264.nix20
-rw-r--r--pkgs/development/libraries/mediastreamer/plugins_dir.patch24
-rw-r--r--pkgs/development/libraries/mesa/default.nix11
-rw-r--r--pkgs/development/libraries/mongoc/default.nix26
-rw-r--r--pkgs/development/libraries/nettle/27.nix10
-rw-r--r--pkgs/development/libraries/nettle/generic.nix3
-rw-r--r--pkgs/development/libraries/nghttp2/default.nix4
-rw-r--r--pkgs/development/libraries/nspr/default.nix20
-rw-r--r--pkgs/development/libraries/nss/default.nix6
-rw-r--r--pkgs/development/libraries/opencv/3.x.nix34
-rw-r--r--pkgs/development/libraries/opencv/default.nix4
-rw-r--r--pkgs/development/libraries/openexr/default.nix2
-rw-r--r--pkgs/development/libraries/openexr_ctl/default.nix21
-rw-r--r--pkgs/development/libraries/openh264/default.nix22
-rw-r--r--pkgs/development/libraries/openldap/default.nix14
-rw-r--r--pkgs/development/libraries/openscenegraph/default.nix2
-rw-r--r--pkgs/development/libraries/openssl/default.nix2
-rw-r--r--pkgs/development/libraries/openwsman/default.nix38
-rw-r--r--pkgs/development/libraries/ortp/default.nix4
-rw-r--r--pkgs/development/libraries/pcg-c/default.nix1
-rw-r--r--pkgs/development/libraries/pcl/default.nix20
-rw-r--r--pkgs/development/libraries/pcre/default.nix2
-rw-r--r--pkgs/development/libraries/pdf2htmlex/pdf2xml.patch48
-rw-r--r--pkgs/development/libraries/pixman/default.nix2
-rw-r--r--pkgs/development/libraries/poppler/default.nix4
-rw-r--r--pkgs/development/libraries/ppl/default.nix6
-rw-r--r--pkgs/development/libraries/ppl/ppl-cstddef.patch238
-rw-r--r--pkgs/development/libraries/ppl/upstream-based.patch42
-rw-r--r--pkgs/development/libraries/protobuf/3.0.nix12
-rw-r--r--pkgs/development/libraries/qpdf/default.nix4
-rw-r--r--pkgs/development/libraries/qscintilla/default.nix2
-rw-r--r--pkgs/development/libraries/qt-5/5.3/0014-mkspecs-libgl.patch15
-rw-r--r--pkgs/development/libraries/qt-5/5.3/default.nix26
-rw-r--r--pkgs/development/libraries/qt-5/5.4/0014-mkspecs-libgl.patch15
-rw-r--r--pkgs/development/libraries/qt-5/5.4/qt-submodule.nix6
-rw-r--r--pkgs/development/libraries/qt-5/5.4/qtbase.nix33
-rw-r--r--pkgs/development/libraries/qt-5/5.4/setup-hook.sh23
-rw-r--r--pkgs/development/libraries/qt-5/qt-env.nix31
-rw-r--r--pkgs/development/libraries/rocksdb/default.nix6
-rw-r--r--pkgs/development/libraries/rote/default.nix32
-rw-r--r--pkgs/development/libraries/ruby_gpgme/default.nix64
-rw-r--r--pkgs/development/libraries/ruby_ncursesw_sup/default.nix48
-rw-r--r--pkgs/development/libraries/sblim-sfcc/default.nix30
-rw-r--r--pkgs/development/libraries/science/math/metis/default.nix20
-rw-r--r--pkgs/development/libraries/signon/default.nix18
-rw-r--r--pkgs/development/libraries/snappy/default.nix3
-rw-r--r--pkgs/development/libraries/sqlite/default.nix41
-rw-r--r--pkgs/development/libraries/sword/default.nix5
-rw-r--r--pkgs/development/libraries/talloc/default.nix4
-rw-r--r--pkgs/development/libraries/tdb/default.nix4
-rw-r--r--pkgs/development/libraries/ti-rpc/default.nix13
-rw-r--r--pkgs/development/libraries/ti-rpc/fix_missing_rpc_get_default_domain.patch88
-rw-r--r--pkgs/development/libraries/uid_wrapper/default.nix6
-rw-r--r--pkgs/development/libraries/ustr/default.nix30
-rw-r--r--pkgs/development/libraries/vaapi-intel/default.nix4
-rw-r--r--pkgs/development/libraries/wiredtiger/default.nix6
-rw-r--r--pkgs/development/libraries/xapian/default.nix4
-rw-r--r--pkgs/development/libraries/xlslib/default.nix2
192 files changed, 2669 insertions, 1048 deletions
diff --git a/pkgs/development/libraries/CGAL/default.nix b/pkgs/development/libraries/CGAL/default.nix
index 505aab78242a..a903d5e46782 100644
--- a/pkgs/development/libraries/CGAL/default.nix
+++ b/pkgs/development/libraries/CGAL/default.nix
@@ -1,15 +1,17 @@
 { stdenv, fetchurl, cmake, boost, gmp, mpfr }:
 
 stdenv.mkDerivation rec {
-  version = "4.5";
+  version = "4.6.1";
 
   name = "cgal-${version}";
 
   src = fetchurl {
-    url = "https://gforge.inria.fr/frs/download.php/34139/CGAL-${version}.tar.xz";
-    sha256 = "00shds5yph4s09lqdrb6n60wnw9kpiwa25ghg9mbsgq3fnr8p7kr";
+    url = "https://github.com/CGAL/releases/archive/CGAL-${version}.tar.gz";
+    sha256 = "05vk4l62d7g6cz19q36h1an5krxdbgq1fbs5hi0x2l7blsja1z6g";
   };
 
+  # note: optional component libCGAL_ImageIO would need zlib and opengl;
+  #   there are also libCGAL_Qt{3,4} omitted ATM
   buildInputs = [ cmake boost gmp mpfr ];
 
   doCheck = false;
diff --git a/pkgs/development/libraries/SDL/default.nix b/pkgs/development/libraries/SDL/default.nix
index a62fc837dd0f..1fae5d42ab7e 100644
--- a/pkgs/development/libraries/SDL/default.nix
+++ b/pkgs/development/libraries/SDL/default.nix
@@ -26,6 +26,8 @@ stdenv.mkDerivation rec {
     sha256 = "005d993xcac8236fpvd1iawkz4wqjybkpn8dbwaliqz5jfkidlyn";
   };
 
+  outputs = [ "out" "man" ];
+
   nativeBuildInputs = [ pkgconfig ];
 
   # Since `libpulse*.la' contain `-lgdbm', PulseAudio must be propagated.
diff --git a/pkgs/development/libraries/accelio/default.nix b/pkgs/development/libraries/accelio/default.nix
index 7a96e5923b60..6389b9cdc270 100644
--- a/pkgs/development/libraries/accelio/default.nix
+++ b/pkgs/development/libraries/accelio/default.nix
@@ -6,19 +6,18 @@
 
 stdenv.mkDerivation rec {
   name = "accelio-${version}${stdenv.lib.optionalString (kernel != null) "-kernel"}";
-  version = "1.4";
+  version = "2015-08-30";
 
   src = fetchFromGitHub {
     owner = "accelio";
     repo = "accelio";
-    rev = "v${version}";
-    sha256 = "0cxiwn63481m88zisd0pqs6g0h5k1amz2kidwyxkdbl6xgf70cwd";
+    rev = "3d1f2b2d311aa70de9856832fd02647266624e82";
+    sha256 = "172frqk2n43g0arhazgcwfvj0syf861vdzdpxl7idr142bb0ykf7";
   };
 
-  postPatch = ''
-    # Don't build broken examples
-    sed -i '/AC_CONFIG_SUBDIRS(\[\(examples\|tests\)\/kernel/d' configure.ac
+  patches = [ ./fix-printfs.patch ];
 
+  postPatch = ''
     # Allow the installation of xio kernel headers
     sed -i 's,/opt/xio,''${out},g' src/kernel/xio/Makefile.in
 
@@ -27,6 +26,8 @@ stdenv.mkDerivation rec {
     sed -i '\,/sbin/ldconfig,d' src/usr/Makefile.am
   '';
 
+  doCheck = true;
+
   nativeBuildInputs = [ autoreconfHook ];
   buildInputs = [ libevent ];
   propagatedBuildInputs = [ libibverbs librdmacm ]
diff --git a/pkgs/development/libraries/accelio/fix-printfs.patch b/pkgs/development/libraries/accelio/fix-printfs.patch
new file mode 100644
index 000000000000..23b2f40e42fe
--- /dev/null
+++ b/pkgs/development/libraries/accelio/fix-printfs.patch
@@ -0,0 +1,615 @@
+diff -rup accelio/benchmarks/usr/xio_perftest/xio_perftest_client.c accelio.new/benchmarks/usr/xio_perftest/xio_perftest_client.c
+--- accelio/benchmarks/usr/xio_perftest/xio_perftest_client.c	2015-09-03 19:36:25.610337514 -0400
++++ accelio.new/benchmarks/usr/xio_perftest/xio_perftest_client.c	2015-09-03 19:59:13.258697472 -0400
+@@ -246,7 +246,7 @@ static void *worker_thread(void *data)
+ 		} else {
+ 			vmsg_sglist_set_nents(&msg->out, 0);
+ 		}
+-		msg->user_context = (void *)get_cycles();
++		msg->user_context = (void *)(intptr_t)get_cycles();
+ 		/* send first message */
+ 		if (xio_send_request(tdata->conn, msg) == -1) {
+ 			if (xio_errno() != EAGAIN)
+@@ -330,7 +330,7 @@ static int on_response(struct xio_sessio
+ {
+ 	struct thread_data  *tdata = (struct thread_data *)cb_user_context;
+ 
+-	cycles_t rtt = (get_cycles()-(cycles_t)msg->user_context);
++	cycles_t rtt = (get_cycles()-(cycles_t)(intptr_t)msg->user_context);
+ 
+ 	if (tdata->do_stat) {
+ 		if (rtt > tdata->stat.max_rtt)
+@@ -358,7 +358,7 @@ static int on_response(struct xio_sessio
+ 	msg->in.header.iov_len = 0;
+ 	vmsg_sglist_set_nents(&msg->in, 0);
+ 
+-	msg->user_context = (void *)get_cycles();
++	msg->user_context = (void *)(intptr_t)get_cycles();
+ 	if (xio_send_request(tdata->conn, msg) == -1) {
+ 		if (xio_errno() != EAGAIN)
+ 			printf("**** [%p] Error - xio_send_request " \
+@@ -559,7 +559,7 @@ int run_client_test(struct perf_paramete
+ 		       sess_data.min_lat_us,
+ 		       sess_data.max_lat_us);
+ 		if (fd)
+-			fprintf(fd, "%lu, %d, %lu, %.2lf, %.2lf\n",
++			fprintf(fd, "%" PRIu64 ", %d, %" PRIu64 ", %.2lf, %.2lf\n",
+ 				data_len,
+ 				threads_iter,
+ 				sess_data.tps,
+diff -rup accelio/benchmarks/usr/xio_perftest/xio_perftest_parameters.h accelio.new/benchmarks/usr/xio_perftest/xio_perftest_parameters.h
+--- accelio/benchmarks/usr/xio_perftest/xio_perftest_parameters.h	2015-09-03 19:36:25.610337514 -0400
++++ accelio.new/benchmarks/usr/xio_perftest/xio_perftest_parameters.h	2015-09-03 19:57:30.856215123 -0400
+@@ -90,7 +90,7 @@ typedef enum { READ, WRITE} Verb;
+ /* The format of the results */
+ #define RESULT_FMT		" #bytes     #threads   #TPS       BW average[MBps]   Latency average[usecs]   Latency low[usecs]   Latency peak[usecs]\n"
+ /* Result print format */
+-#define REPORT_FMT		" %-7lu     %-2d         %-9.2lu	  %-9.2lf     %-9.2lf                  %-9.2lf              %-9.2lf\n"
++#define REPORT_FMT		" %-7" PRIu64 "     %-2d         %-9.2" PRIu64 "	  %-9.2lf     %-9.2lf                  %-9.2lf              %-9.2lf\n"
+ 
+ 
+ struct perf_parameters {
+diff -rup accelio/examples/usr/hello_world_iov/xio_client.c accelio.new/examples/usr/hello_world_iov/xio_client.c
+--- accelio/examples/usr/hello_world_iov/xio_client.c	2015-09-03 19:36:25.611337519 -0400
++++ accelio.new/examples/usr/hello_world_iov/xio_client.c	2015-09-03 19:42:19.983984370 -0400
+@@ -224,7 +224,7 @@ static void process_response(struct sess
+ 				len = 64;
+ 			tmp = str[len];
+ 			str[len] = '\0';
+-			printf("message header : [%lu] - %s\n",
++			printf("message header : [%" PRIu64 "] - %s\n",
+ 			       (rsp->request->sn + 1), str);
+ 			str[len] = tmp;
+ 		}
+@@ -236,7 +236,7 @@ static void process_response(struct sess
+ 					len = 64;
+ 				tmp = str[len];
+ 				str[len] = '\0';
+-				printf("message data: [%lu][%d][%zd] - %s\n",
++				printf("message data: [%" PRIu64 "][%d][%zd] - %s\n",
+ 				       (rsp->request->sn + 1), i, sglist[i].iov_len, str);
+ 				str[len] = tmp;
+ 			}
+diff -rup accelio/examples/usr/hello_world_iov/xio_server.c accelio.new/examples/usr/hello_world_iov/xio_server.c
+--- accelio/examples/usr/hello_world_iov/xio_server.c	2015-09-03 19:36:25.611337519 -0400
++++ accelio.new/examples/usr/hello_world_iov/xio_server.c	2015-09-03 19:43:07.353204184 -0400
+@@ -203,7 +203,7 @@ static void process_request(struct serve
+ 				len = 64;
+ 			tmp = str[len];
+ 			str[len] = '\0';
+-			printf("message header : [%lu] - %s\n",
++			printf("message header : [%" PRIu64 "] - %s\n",
+ 			       (req->sn + 1), str);
+ 			str[len] = tmp;
+ 		}
+@@ -215,7 +215,7 @@ static void process_request(struct serve
+ 					len = 64;
+ 				tmp = str[len];
+ 				str[len] = '\0';
+-				printf("message data: [%lu][%d][%zd] - %s\n",
++				printf("message data: [%" PRIu64 "][%d][%zd] - %s\n",
+ 				       (req->sn + 1), i, sglist[i].iov_len, str);
+ 				str[len] = tmp;
+ 			}
+@@ -360,11 +360,11 @@ static int on_msg_error(struct xio_sessi
+ 	struct server_data *sdata = (struct server_data *)cb_user_context;
+ 
+ 	if (direction == XIO_MSG_DIRECTION_OUT) {
+-		printf("**** [%p] message %lu failed. reason: %s\n",
++		printf("**** [%p] message %" PRIu64 " failed. reason: %s\n",
+ 		       session, msg->sn, xio_strerror(error));
+ 	} else {
+ 		xio_release_response(msg);
+-		printf("**** [%p] message %lu failed. reason: %s\n",
++		printf("**** [%p] message %" PRIu64 " failed. reason: %s\n",
+ 		       session, msg->request->sn, xio_strerror(error));
+ 	}
+ 
+diff -rup accelio/examples/usr/hello_world_libevent/xio_client.c accelio.new/examples/usr/hello_world_libevent/xio_client.c
+--- accelio/examples/usr/hello_world_libevent/xio_client.c	2015-09-03 19:36:25.612337524 -0400
++++ accelio.new/examples/usr/hello_world_libevent/xio_client.c	2015-09-03 19:43:32.748322028 -0400
+@@ -87,7 +87,7 @@ static void process_response(struct sess
+ {
+ 	if (++session_data->cnt == PRINT_COUNTER) {
+ 		((char *)(rsp->in.header.iov_base))[rsp->in.header.iov_len] = 0;
+-		printf("message: [%lu] - %s\n",
++		printf("message: [%" PRIu64 "] - %s\n",
+ 		       (rsp->request->sn + 1), (char *)rsp->in.header.iov_base);
+ 		session_data->cnt = 0;
+ 	}
+diff -rup accelio/examples/usr/hello_world_libevent/xio_server.c accelio.new/examples/usr/hello_world_libevent/xio_server.c
+--- accelio/examples/usr/hello_world_libevent/xio_server.c	2015-09-03 19:36:25.612337524 -0400
++++ accelio.new/examples/usr/hello_world_libevent/xio_server.c	2015-09-03 19:43:50.556404665 -0400
+@@ -82,7 +82,7 @@ static void process_request(struct serve
+ 				len = 64;
+ 			tmp = str[len];
+ 			str[len] = '\0';
+-			printf("message header : [%lu] - %s\n",
++			printf("message header : [%" PRIu64 "] - %s\n",
+ 			       (req->sn + 1), str);
+ 			str[len] = tmp;
+ 		}
+@@ -94,7 +94,7 @@ static void process_request(struct serve
+ 					len = 64;
+ 				tmp = str[len];
+ 				str[len] = '\0';
+-				printf("message data: [%lu][%d][%d] - %s\n",
++				printf("message data: [%" PRIu64 "][%d][%d] - %s\n",
+ 				       (req->sn + 1), i, len, str);
+ 				str[len] = tmp;
+ 			}
+diff -rup accelio/examples/usr/hello_world_mt/xio_mt_client.c accelio.new/examples/usr/hello_world_mt/xio_mt_client.c
+--- accelio/examples/usr/hello_world_mt/xio_mt_client.c	2015-09-03 19:36:25.611337519 -0400
++++ accelio.new/examples/usr/hello_world_mt/xio_mt_client.c	2015-09-03 19:41:13.493675827 -0400
+@@ -40,6 +40,7 @@
+ #include <string.h>
+ #include <inttypes.h>
+ #include <sched.h>
++#include <inttypes.h>
+ 
+ #include "libxio.h"
+ 
+@@ -133,7 +134,7 @@ static void process_response(struct thre
+ {
+ 	if (++tdata->cnt == PRINT_COUNTER) {
+ 		((char *)(rsp->in.header.iov_base))[rsp->in.header.iov_len] = 0;
+-		printf("thread [%d] - tid:%p  - message: [%lu] - %s\n",
++		printf("thread [%d] - tid:%p  - message: [%" PRIu64 "] - %s\n",
+ 		       tdata->affinity,
+ 		      (void *)pthread_self(),
+ 		       (rsp->request->sn + 1), (char *)rsp->in.header.iov_base);
+diff -rup accelio/examples/usr/hello_world_mt/xio_mt_server.c accelio.new/examples/usr/hello_world_mt/xio_mt_server.c
+--- accelio/examples/usr/hello_world_mt/xio_mt_server.c	2015-09-03 19:36:25.611337519 -0400
++++ accelio.new/examples/usr/hello_world_mt/xio_mt_server.c	2015-09-03 19:41:31.730760455 -0400
+@@ -104,7 +104,7 @@ static void process_request(struct threa
+ 			    struct xio_msg *req)
+ {
+ 	if (++tdata->cnt == PRINT_COUNTER) {
+-		printf("thread [%d] tid:%p - message: [%lu] - %s\n",
++		printf("thread [%d] tid:%p - message: [%" PRIu64 "] - %s\n",
+ 		       tdata->affinity,
+ 		       (void *)pthread_self(),
+ 		       (req->sn + 1), (char *)req->in.header.iov_base);
+diff -rup accelio/regression/usr/reg_basic_mt/reg_basic_mt_client.c accelio.new/regression/usr/reg_basic_mt/reg_basic_mt_client.c
+--- accelio/regression/usr/reg_basic_mt/reg_basic_mt_client.c	2015-09-03 19:36:25.603337482 -0400
++++ accelio.new/regression/usr/reg_basic_mt/reg_basic_mt_client.c	2015-09-03 20:00:15.169989095 -0400
+@@ -416,11 +416,11 @@ static int on_msg_error(struct xio_sessi
+ 	struct thread_data	*tdata		= conn_entry->tdata;
+ 
+ 	if (direction == XIO_MSG_DIRECTION_OUT) {
+-		DEBUG("**** [%p] message %lu failed. reason: %s\n",
++		DEBUG("**** [%p] message %" PRIu64 " failed. reason: %s\n",
+ 		       session, req->sn, xio_strerror(error));
+ 	} else {
+ 		xio_release_response(req);
+-		DEBUG("**** [%p] message %lu failed. reason: %s\n",
++		DEBUG("**** [%p] message %" PRIu64 " failed. reason: %s\n",
+ 		       session, req->request->sn, xio_strerror(error));
+ 	}
+ 	obj_pool_put(tdata->req_pool, req);
+diff -rup accelio/src/tools/usr/xio_if_numa_cpus.c accelio.new/src/tools/usr/xio_if_numa_cpus.c
+--- accelio/src/tools/usr/xio_if_numa_cpus.c	2015-09-03 19:36:25.603337482 -0400
++++ accelio.new/src/tools/usr/xio_if_numa_cpus.c	2015-09-03 19:40:06.398364476 -0400
+@@ -43,6 +43,7 @@
+ #include <net/if.h>
+ #include <stdio.h>
+ #include <numa.h>
++#include <inttypes.h>
+ 
+ #define cpusmask_test_bit(nr, addr)	(*(addr) & (1ULL << (nr)))
+ #define cpusmask_set_bit(nr, addr)	(*(addr) |=  (1ULL << (nr)))
+@@ -244,7 +245,7 @@ int main(int argc, char *argv[])
+ 		}
+ 		intf_cpusmask_str(cpusmask, cpusnum, cpus_str);
+ 
+-		printf("%-10s %-16s %-30s %-5d 0x%-8lx %-4s[%d] - %s\n",
++		printf("%-10s %-16s %-30s %-5d 0x%-8" PRIx64 " %-4s[%d] - %s\n",
+ 		       ifa->ifa_name, host, flags, numa_node, cpusmask,
+ 		       "cpus",  cpusnum, cpus_str);
+ 	}
+diff -rup accelio/src/tools/usr/xio_mem_usage.c accelio.new/src/tools/usr/xio_mem_usage.c
+--- accelio/src/tools/usr/xio_mem_usage.c	2015-09-03 19:36:25.603337482 -0400
++++ accelio.new/src/tools/usr/xio_mem_usage.c	2015-09-03 19:38:57.596044838 -0400
+@@ -73,7 +73,7 @@
+ 	while (i++ < 48) { \
+ 		printf("."); \
+ 	} \
+-	printf(" %6lu\n", sizeof(type)); \
++	printf(" %zu\n", sizeof(type)); \
+ }
+ 
+ int main(int argc, char **argv)
+diff -rup accelio/tests/portable/direct_rdma_test/xio_rdma_common.c accelio.new/tests/portable/direct_rdma_test/xio_rdma_common.c
+--- accelio/tests/portable/direct_rdma_test/xio_rdma_common.c	2015-09-03 19:36:25.610337514 -0400
++++ accelio.new/tests/portable/direct_rdma_test/xio_rdma_common.c	2015-09-03 19:56:25.521908028 -0400
+@@ -90,7 +90,7 @@ static int publish_our_buffer(struct xio
+ 	 * this flag must be on */
+ 	rsp->flags = XIO_MSG_FLAG_IMM_SEND_COMP;
+ 
+-	rdma_test_buf.addr = (uint64_t)rdma_reg_mem.addr;
++	rdma_test_buf.addr = (intptr_t)rdma_reg_mem.addr;
+ 	rdma_test_buf.length = rdma_reg_mem.length;
+ 	rdma_test_buf.rkey = xio_lookup_rkey_by_response(&rdma_reg_mem, rsp);
+ 
+diff -rup accelio/tests/usr/hello_test/xio_client.c accelio.new/tests/usr/hello_test/xio_client.c
+--- accelio/tests/usr/hello_test/xio_client.c	2015-09-03 19:36:25.608337505 -0400
++++ accelio.new/tests/usr/hello_test/xio_client.c	2015-09-03 19:45:43.055926711 -0400
+@@ -181,13 +181,13 @@ static void process_response(struct test
+ 
+ 		double txbw = (1.0*pps*test_params->stat.txlen/ONE_MB);
+ 		double rxbw = (1.0*pps*test_params->stat.rxlen/ONE_MB);
+-		printf("transactions per second: %lu, bandwidth: " \
++		printf("transactions per second: %" PRIu64 ", bandwidth: " \
+ 		       "TX %.2f MB/s, RX: %.2f MB/s, length: TX: %zd B, RX: %zd B\n",
+ 		       pps, txbw, rxbw,
+ 		       test_params->stat.txlen, test_params->stat.rxlen);
+ 		get_time(timeb, 40);
+ 
+-		printf("**** [%s] - message [%zd] %s - %s\n",
++		printf("**** [%s] - message [%" PRIu64 "] %s - %s\n",
+ 		       timeb, (rsp->request->sn + 1),
+ 		       (char *)rsp->in.header.iov_base,
+ 		       (char *)(inents > 0 ? isglist[0].iov_base : NULL));
+@@ -212,8 +212,8 @@ static int on_session_event(struct xio_s
+ 
+ 	switch (event_data->event) {
+ 	case XIO_SESSION_CONNECTION_TEARDOWN_EVENT:
+-		printf("nsent:%lu, nrecv:%lu, " \
+-		       "delta:%lu\n",
++		printf("nsent:%" PRIu64 ", nrecv:%" PRIu64 ", " \
++		       "delta:%" PRIu64 "\n",
+ 		       test_params->nsent, test_params->nrecv,
+ 		       test_params->nsent-test_params->nrecv);
+ 
+@@ -370,11 +370,11 @@ static int on_msg_error(struct xio_sessi
+ 	struct test_params *test_params = (struct test_params *)cb_user_context;
+ 
+ 	if (direction == XIO_MSG_DIRECTION_OUT) {
+-		printf("**** [%p] message %lu failed. reason: %s\n",
++		printf("**** [%p] message %" PRIu64 " failed. reason: %s\n",
+ 		       session, msg->sn, xio_strerror(error));
+ 	} else {
+ 		xio_release_response(msg);
+-		printf("**** [%p] message %lu failed. reason: %s\n",
++		printf("**** [%p] message %" PRIu64 " failed. reason: %s\n",
+ 		       session, msg->request->sn, xio_strerror(error));
+ 	}
+ 
+diff -rup accelio/tests/usr/hello_test/xio_server.c accelio.new/tests/usr/hello_test/xio_server.c
+--- accelio/tests/usr/hello_test/xio_server.c	2015-09-03 19:36:25.608337505 -0400
++++ accelio.new/tests/usr/hello_test/xio_server.c	2015-09-03 19:46:35.777171360 -0400
+@@ -112,7 +112,7 @@ static void process_request(struct xio_m
+ 	if (++cnt == PRINT_COUNTER) {
+ 		struct xio_iovec_ex *sglist = vmsg_sglist(&msg->in);
+ 
+-		printf("**** message [%lu] %s - %s\n",
++		printf("**** message [%" PRIu64 "] %s - %s\n",
+ 		       (msg->sn+1),
+ 		       (char *)msg->in.header.iov_base,
+ 		       (char *)sglist[0].iov_base);
+@@ -146,8 +146,8 @@ static int on_session_event(struct xio_s
+ 		break;
+ 	case XIO_SESSION_CONNECTION_TEARDOWN_EVENT:
+ 		if (event_data->reason != XIO_E_SESSION_REJECTED) {
+-			printf("last sent:%lu, last comp:%lu, " \
+-			       "delta:%lu\n",
++			printf("last sent:%" PRIu64 ", last comp:%" PRIu64 ", " \
++			       "delta:%" PRIu64 "\n",
+ 			       test_params->nsent,  test_params->ncomp,
+ 			       test_params->nsent-test_params->ncomp);
+ 			test_params->connection = NULL;
+@@ -257,7 +257,7 @@ static int on_msg_error(struct xio_sessi
+ {
+ 	struct test_params *test_params = (struct test_params *)cb_user_context;
+ 
+-	printf("**** [%p] message [%lu] failed. reason: %s\n",
++	printf("**** [%p] message [%" PRIu64 "] failed. reason: %s\n",
+ 	       session, msg->request->sn, xio_strerror(error));
+ 
+ 	msg_pool_put(test_params->pool, msg);
+diff -rup accelio/tests/usr/hello_test_bidi/xio_bidi_client.c accelio.new/tests/usr/hello_test_bidi/xio_bidi_client.c
+--- accelio/tests/usr/hello_test_bidi/xio_bidi_client.c	2015-09-03 19:36:25.608337505 -0400
++++ accelio.new/tests/usr/hello_test_bidi/xio_bidi_client.c	2015-09-03 19:49:10.164887785 -0400
+@@ -114,7 +114,7 @@ static void process_request(struct xio_m
+ 	if (++cnt == print_counter) {
+ 		struct xio_iovec_ex *sglist = vmsg_sglist(&req->in);
+ 
+-		printf("**** request [%lu] %s - %s\n",
++		printf("**** request [%" PRIu64 "] %s - %s\n",
+ 		       (req->sn+1),
+ 		       (char *)req->in.header.iov_base,
+ 		       (char *)sglist[0].iov_base);
+@@ -171,11 +171,11 @@ static void process_response(struct xio_
+ 		double txbw = (1.0*pps*txlen/ONE_MB);
+ 		double rxbw = (1.0*pps*rxlen/ONE_MB);
+ 
+-		printf("transactions per second: %lu, bandwidth: " \
++		printf("transactions per second: %" PRIu64 ", bandwidth: " \
+ 		       "TX %.2f MB/s, RX: %.2f MB/s, length: TX: %zd B, RX: %zd B\n",
+ 		       pps, txbw, rxbw, txlen, rxlen);
+ 		get_time(timeb, 40);
+-		printf("**** [%s] - response [%lu] %s - %s\n",
++		printf("**** [%s] - response [%" PRIu64 "] %s - %s\n",
+ 		       timeb, (rsp->request->sn + 1),
+ 		       (char *)rsp->in.header.iov_base,
+ 		       (char *)(inents > 0 ? isglist[0].iov_base : NULL));
+@@ -357,7 +357,7 @@ static int on_msg_error(struct xio_sessi
+ {
+ 	switch (msg->type) {
+ 	case XIO_MSG_TYPE_REQ:
+-		printf("**** [%p] message [%lu] failed. reason: %s\n",
++		printf("**** [%p] message [%" PRIu64 "] failed. reason: %s\n",
+ 		       session, msg->sn, xio_strerror(error));
+ 		msg_pool_put(pool, msg);
+ 		switch (error) {
+@@ -369,7 +369,7 @@ static int on_msg_error(struct xio_sessi
+ 		};
+ 		break;
+ 	case XIO_MSG_TYPE_RSP:
+-		printf("**** [%p] message [%lu] failed. reason: %s\n",
++		printf("**** [%p] message [%" PRIu64 "] failed. reason: %s\n",
+ 		       session, msg->request->sn, xio_strerror(error));
+ 		/* message is no longer needed */
+ 		switch (error) {
+diff -rup accelio/tests/usr/hello_test_bidi/xio_bidi_server.c accelio.new/tests/usr/hello_test_bidi/xio_bidi_server.c
+--- accelio/tests/usr/hello_test_bidi/xio_bidi_server.c	2015-09-03 19:36:25.608337505 -0400
++++ accelio.new/tests/usr/hello_test_bidi/xio_bidi_server.c	2015-09-03 19:49:52.860085909 -0400
+@@ -143,11 +143,11 @@ static void process_response(struct xio_
+ 		double txbw = (1.0*pps*txlen/ONE_MB);
+ 		double rxbw = (1.0*pps*rxlen/ONE_MB);
+ 
+-		printf("transactions per second: %lu, bandwidth: " \
++		printf("transactions per second: %" PRIu64 ", bandwidth: " \
+ 		       "TX %.2f MB/s, RX: %.2f MB/s, length: TX: %zd B, RX: %zd B\n",
+ 		       pps, txbw, rxbw, txlen, rxlen);
+ 		get_time(timeb, 40);
+-		printf("**** [%s] - response complete [%lu] %s - %s\n",
++		printf("**** [%s] - response complete [%" PRIu64 "] %s - %s\n",
+ 		       timeb, (rsp->request->sn + 1),
+ 		       (char *)rsp->in.header.iov_base,
+ 		       (char *)(inents > 0 ? isglist[0].iov_base : NULL));
+@@ -171,7 +171,7 @@ static void process_request(struct xio_m
+ 	if (++cnt == print_counter) {
+ 		struct xio_iovec_ex *sglist = vmsg_sglist(&req->in);
+ 
+-		printf("**** request complete [%lu] %s - %s [%zd]\n",
++		printf("**** request complete [%" PRIu64 "] %s - %s [%zd]\n",
+ 		       (req->sn+1),
+ 		       (char *)req->in.header.iov_base,
+ 		       (char *)sglist[0].iov_base,
+@@ -409,7 +409,7 @@ static int on_msg_error(struct xio_sessi
+ {
+ 	switch (msg->type) {
+ 	case XIO_MSG_TYPE_REQ:
+-		printf("**** [%p] message [%lu] failed. reason: %s\n",
++		printf("**** [%p] message [%" PRIu64 "] failed. reason: %s\n",
+ 		       session, msg->sn, xio_strerror(error));
+ 		msg_pool_put(pool, msg);
+ 		switch (error) {
+@@ -422,7 +422,7 @@ static int on_msg_error(struct xio_sessi
+ 		};
+ 		break;
+ 	case XIO_MSG_TYPE_RSP:
+-		printf("**** [%p] message [%lu] failed. reason: %s\n",
++		printf("**** [%p] message [%" PRIu64 "] failed. reason: %s\n",
+ 		       session, msg->request->sn, xio_strerror(error));
+ 		/* message is no longer needed */
+ 		switch (error) {
+diff -rup accelio/tests/usr/hello_test_lat/xio_lat_client.c accelio.new/tests/usr/hello_test_lat/xio_lat_client.c
+--- accelio/tests/usr/hello_test_lat/xio_lat_client.c	2015-09-03 19:36:25.608337505 -0400
++++ accelio.new/tests/usr/hello_test_lat/xio_lat_client.c	2015-09-03 19:50:51.111356220 -0400
+@@ -139,7 +139,7 @@ static void process_response(struct xio_
+ 		double rxbw = (1.0*pps*rxlen/ONE_MB);
+ 		double lat = (1000000.0/pps);
+ 
+-		printf("transactions per second: %lu, lat: %.2f us, bandwidth: " \
++		printf("transactions per second: %" PRIu64 ", lat: %.2f us, bandwidth: " \
+ 		       "TX %.2f MB/s, RX: %.2f MB/s, length: TX: %zd B, RX: %zd B\n",
+ 		       pps, lat, txbw, rxbw, txlen, rxlen);
+ 		get_time(timeb, 40);
+@@ -312,7 +312,7 @@ static int on_msg_error(struct xio_sessi
+ 			struct xio_msg  *msg,
+ 			void *cb_user_context)
+ {
+-	printf("**** [%p] message [%lu] failed. reason: %s\n",
++	printf("**** [%p] message [%" PRIu64 "] failed. reason: %s\n",
+ 	       session, msg->sn, xio_strerror(error));
+ 
+ 	msg_pool_put(pool, msg);
+diff -rup accelio/tests/usr/hello_test_lat/xio_lat_server.c accelio.new/tests/usr/hello_test_lat/xio_lat_server.c
+--- accelio/tests/usr/hello_test_lat/xio_lat_server.c	2015-09-03 19:36:25.608337505 -0400
++++ accelio.new/tests/usr/hello_test_lat/xio_lat_server.c	2015-09-03 19:51:16.803475442 -0400
+@@ -103,7 +103,7 @@ static void process_request(struct xio_m
+ 	if (++cnt == PRINT_COUNTER) {
+ 		struct xio_iovec_ex *sglist = vmsg_sglist(&msg->in);
+ 
+-		printf("**** message [%lu] %s - %s\n",
++		printf("**** message [%" PRIu64 "] %s - %s\n",
+ 		       (msg->sn+1),
+ 		       (char *)msg->in.header.iov_base,
+ 		       (char *)sglist[0].iov_base);
+@@ -209,7 +209,7 @@ static int on_msg_error(struct xio_sessi
+ 			struct xio_msg  *msg,
+ 			void *cb_user_context)
+ {
+-	printf("**** [%p] message [%lu] failed. reason: %s\n",
++	printf("**** [%p] message [%" PRIu64 "] failed. reason: %s\n",
+ 	       session, msg->sn, xio_strerror(error));
+ 
+ 	msg_pool_put(pool, msg);
+diff -rup accelio/tests/usr/hello_test_mt/xio_mt_client.c accelio.new/tests/usr/hello_test_mt/xio_mt_client.c
+--- accelio/tests/usr/hello_test_mt/xio_mt_client.c	2015-09-03 19:36:25.608337505 -0400
++++ accelio.new/tests/usr/hello_test_mt/xio_mt_client.c	2015-09-03 19:47:39.218465755 -0400
+@@ -179,12 +179,12 @@ static void process_response(struct thre
+ 		double txbw = (1.0*pps*tdata->stat.txlen/ONE_MB);
+ 		double rxbw = (1.0*pps*tdata->stat.rxlen/ONE_MB);
+ 
+-		printf("transactions per second: %lu, bandwidth: " \
++		printf("transactions per second: %" PRIu64 ", bandwidth: " \
+ 		       "TX %.2f MB/s, RX: %.2f MB/s, length: TX: %zd B, " \
+ 		       "RX: %zd B\n",
+ 		       pps, txbw, rxbw, tdata->stat.txlen, tdata->stat.rxlen);
+ 		get_time(timeb, 40);
+-		printf("[%s] thread [%d] - tid:%p  - message [%lu] " \
++		printf("[%s] thread [%d] - tid:%p  - message [%" PRIu64 "] " \
+ 		       "%s - %s\n",
+ 		       timeb,
+ 		       tdata->affinity,
+@@ -416,11 +416,11 @@ static int on_msg_error(struct xio_sessi
+ 	struct thread_data  *tdata = (struct thread_data *)cb_user_context;
+ 
+ 	if (direction == XIO_MSG_DIRECTION_OUT) {
+-		printf("**** [%p] message %lu failed. reason: %s\n",
++		printf("**** [%p] message %" PRIu64 " failed. reason: %s\n",
+ 		       session, msg->sn, xio_strerror(error));
+ 	} else {
+ 		xio_release_response(msg);
+-		printf("**** [%p] message %lu failed. reason: %s\n",
++		printf("**** [%p] message %" PRIu64 " failed. reason: %s\n",
+ 		       session, msg->request->sn, xio_strerror(error));
+ 	}
+ 
+diff -rup accelio/tests/usr/hello_test_mt/xio_mt_server.c accelio.new/tests/usr/hello_test_mt/xio_mt_server.c
+--- accelio/tests/usr/hello_test_mt/xio_mt_server.c	2015-09-03 19:36:25.608337505 -0400
++++ accelio.new/tests/usr/hello_test_mt/xio_mt_server.c	2015-09-03 19:48:02.876575538 -0400
+@@ -171,7 +171,7 @@ static void process_request(struct threa
+ 	if (++tdata->stat.cnt == PRINT_COUNTER) {
+ 		struct xio_iovec_ex *sglist = vmsg_sglist(&msg->in);
+ 
+-		printf("thread [%d] - message [%lu] %s - %s\n",
++		printf("thread [%d] - message [%" PRIu64 "] %s - %s\n",
+ 		       tdata->affinity,
+ 		       (msg->sn+1),
+ 		       (char *)msg->in.header.iov_base,
+@@ -260,7 +260,7 @@ static int on_msg_error(struct xio_sessi
+ {
+ 	struct thread_data	*tdata = (struct thread_data *)cb_user_context;
+ 
+-	printf("**** [%p] message [%lu] failed. reason: %s\n",
++	printf("**** [%p] message [%" PRIu64 "] failed. reason: %s\n",
+ 	       session, msg->request->sn, xio_strerror(error));
+ 
+ 	msg_pool_put(tdata->pool, msg);
+diff -rup accelio/tests/usr/hello_test_oneway/xio_oneway_client.c accelio.new/tests/usr/hello_test_oneway/xio_oneway_client.c
+--- accelio/tests/usr/hello_test_oneway/xio_oneway_client.c	2015-09-03 19:36:25.609337510 -0400
++++ accelio.new/tests/usr/hello_test_oneway/xio_oneway_client.c	2015-09-03 19:54:18.142316932 -0400
+@@ -150,11 +150,11 @@ static void process_rx_message(struct ow
+ 
+ 		double rxbw = (1.0*pps*ow_params->rx_stat.xlen/ONE_MB);
+ 
+-		printf("transactions per second: %lu, bandwidth: " \
++		printf("transactions per second: %" PRIu64 ", bandwidth: " \
+ 		       "RX: %.2f MB/s, RX: %zd B\n",
+ 		       pps, rxbw, ow_params->rx_stat.xlen);
+ 		get_time(timeb, 40);
+-		printf("**** [%s] - message [%lu] %s - %s\n",
++		printf("**** [%s] - message [%" PRIu64 "] %s - %s\n",
+ 		       timeb, (msg->sn + 1),
+ 		       (char *)msg->in.header.iov_base,
+ 		       (char *)(inents > 0 ? isglist[0].iov_base : NULL));
+@@ -202,11 +202,11 @@ static void process_tx_message(struct ow
+ 
+ 		double txbw = (1.0*pps*ow_params->tx_stat.xlen/ONE_MB);
+ 
+-		printf("transactions per second: %lu, bandwidth: " \
++		printf("transactions per second: %" PRIu64 ", bandwidth: " \
+ 		       "TX %.2f MB/s,length: TX: %zd B\n",
+ 		       pps, txbw, ow_params->tx_stat.xlen);
+ 		get_time(timeb, 40);
+-		printf("**** [%s] - message [%lu] %s - %s\n",
++		printf("**** [%s] - message [%" PRIu64 "] %s - %s\n",
+ 		       timeb, (msg->sn + 1),
+ 		       (char *)msg->out.header.iov_base,
+ 		       (char *)(onents > 0 ? osglist[0].iov_base : NULL));
+@@ -349,7 +349,7 @@ static int on_msg_error(struct xio_sessi
+ 	struct ow_test_params *ow_params =
+ 				(struct ow_test_params *)cb_user_context;
+ 
+-	printf("**** [%p] message [%lu] failed. reason: %s\n",
++	printf("**** [%p] message [%" PRIu64 "] failed. reason: %s\n",
+ 	       session, msg->sn, xio_strerror(error));
+ 
+ 	msg_pool_put(ow_params->pool, msg);
+diff -rup accelio/tests/usr/hello_test_oneway/xio_oneway_server.c accelio.new/tests/usr/hello_test_oneway/xio_oneway_server.c
+--- accelio/tests/usr/hello_test_oneway/xio_oneway_server.c	2015-09-03 19:36:25.609337510 -0400
++++ accelio.new/tests/usr/hello_test_oneway/xio_oneway_server.c	2015-09-03 19:54:32.797384938 -0400
+@@ -112,7 +112,7 @@ static void process_request(struct xio_m
+ 	if (++cnt == PRINT_COUNTER) {
+ 		struct xio_iovec_ex *sglist = vmsg_sglist(&msg->in);
+ 
+-		printf("**** message [%lu] %s - %s\n",
++		printf("**** message [%" PRIu64 "] %s - %s\n",
+ 		       (msg->sn+1),
+ 		       (char *)msg->in.header.iov_base,
+ 		       (char *)sglist[0].iov_base);
+@@ -299,7 +299,7 @@ static int on_msg_error(struct xio_sessi
+ 	struct ow_test_params *ow_params =
+ 				(struct ow_test_params *)cb_user_context;
+ 
+-	printf("**** [%p] message [%lu] failed. reason: %s\n",
++	printf("**** [%p] message [%" PRIu64 "] failed. reason: %s\n",
+ 	       session, msg->sn, xio_strerror(error));
+ 
+ 	msg_pool_put(ow_params->pool, msg);
+diff -rup accelio/tests/usr/hello_test_ow/xio_ow_client.c accelio.new/tests/usr/hello_test_ow/xio_ow_client.c
+--- accelio/tests/usr/hello_test_ow/xio_ow_client.c	2015-09-03 19:36:25.609337510 -0400
++++ accelio.new/tests/usr/hello_test_ow/xio_ow_client.c	2015-09-03 19:52:24.905791466 -0400
+@@ -152,7 +152,7 @@ for (i = 0; i < onents; i++)
+ 
+ 		double txbw = (1.0*pps*test_params->stat.txlen/ONE_MB);
+ 
+-		printf("transactions per second: %lu, bandwidth: " \
++		printf("transactions per second: %" PRIu64 ", bandwidth: " \
+ 		       "TX %.2f MB/s, length: TX: %zd B\n",
+ 		       pps, txbw,
+ 		       test_params->stat.txlen);
+@@ -181,8 +181,8 @@ static int on_session_event(struct xio_s
+ 		test_params->closed = 1;
+ 		break;
+ 	case XIO_SESSION_CONNECTION_TEARDOWN_EVENT:
+-		printf("nsent:%lu, ncomp:%lu, " \
+-		       "delta:%lu\n",
++		printf("nsent:%" PRIu64 ", ncomp:%" PRIu64 ", " \
++		       "delta:%" PRIu64 "\n",
+ 		       test_params->nsent, test_params->ncomp,
+ 		       test_params->nsent-test_params->ncomp);
+ 
+@@ -357,7 +357,7 @@ static int on_msg_error(struct xio_sessi
+ {
+ 	struct test_params *test_params = (struct test_params *)cb_user_context;
+ 
+-	printf("**** [%p] message [%lu] failed. reason: %s\n",
++	printf("**** [%p] message [%" PRIu64 "] failed. reason: %s\n",
+ 	       session, msg->sn, xio_strerror(error));
+ 
+ 	msg_pool_put(test_params->pool, msg);
+diff -rup accelio/tests/usr/hello_test_ow/xio_ow_server.c accelio.new/tests/usr/hello_test_ow/xio_ow_server.c
+--- accelio/tests/usr/hello_test_ow/xio_ow_server.c	2015-09-03 19:36:25.609337510 -0400
++++ accelio.new/tests/usr/hello_test_ow/xio_ow_server.c	2015-09-03 19:52:57.947944796 -0400
+@@ -110,7 +110,7 @@ static void process_request(struct xio_m
+ 	if (++cnt == PRINT_COUNTER) {
+ 		struct xio_iovec_ex *sglist = vmsg_sglist(&msg->in);
+ 
+-		printf("**** message [%lu] %s - %s\n",
++		printf("**** message [%" PRIu64 "] %s - %s\n",
+ 		       (msg->sn+1),
+ 		       (char *)msg->in.header.iov_base,
+ 		       (char *)sglist[0].iov_base);
+@@ -145,7 +145,7 @@ static int on_session_event(struct xio_s
+ 		xio_disconnect(event_data->conn);
+ 		break;
+ 	case XIO_SESSION_CONNECTION_TEARDOWN_EVENT:
+-		printf("last recv:%lu\n",
++		printf("last recv:%" PRIu64 "\n",
+ 		       test_params->nrecv);
+ 
+ 		xio_connection_destroy(event_data->conn);
+@@ -215,7 +215,7 @@ static int on_msg_error(struct xio_sessi
+ 			struct xio_msg  *msg,
+ 			void *cb_user_context)
+ {
+-	printf("**** [%p] message [%lu] failed. reason: %s\n",
++	printf("**** [%p] message [%" PRIu64 "] failed. reason: %s\n",
+ 	       session, msg->request->sn, xio_strerror(error));
+ 
+ 	return 0;
diff --git a/pkgs/development/libraries/accounts-qt/default.nix b/pkgs/development/libraries/accounts-qt/default.nix
index 824a29494921..26a04362090c 100644
--- a/pkgs/development/libraries/accounts-qt/default.nix
+++ b/pkgs/development/libraries/accounts-qt/default.nix
@@ -1,7 +1,7 @@
 { stdenv, fetchFromGitLab, doxygen, glib, libaccounts-glib, pkgconfig, qt5 }:
 
 let version = "1.13"; in
-stdenv.mkDerivation rec {
+stdenv.mkDerivation {
   name = "accounts-qt-${version}";
 
   src = fetchFromGitLab {
diff --git a/pkgs/development/libraries/at-spi2-core/default.nix b/pkgs/development/libraries/at-spi2-core/default.nix
index a3632bc13fdf..0fc28185501a 100644
--- a/pkgs/development/libraries/at-spi2-core/default.nix
+++ b/pkgs/development/libraries/at-spi2-core/default.nix
@@ -12,6 +12,8 @@ stdenv.mkDerivation rec {
     sha256 = "1l3l39mw23zyjlcqidvkyqlr4gwbhplzw2hcv3qvn6p8ikxpf2qw";
   };
 
+  outputs = [ "out" "doc" ];
+
   buildInputs = [
     python pkgconfig popt  intltool dbus_glib
     libX11 xextproto libSM libICE libXtst libXi
diff --git a/pkgs/development/libraries/belle-sip/default.nix b/pkgs/development/libraries/belle-sip/default.nix
index 6dc1b5241f23..5975a61ff77c 100644
--- a/pkgs/development/libraries/belle-sip/default.nix
+++ b/pkgs/development/libraries/belle-sip/default.nix
@@ -9,11 +9,11 @@ let
   };
 in
 stdenv.mkDerivation rec {
-  name = "belle-sip-1.4.0";
+  name = "belle-sip-1.4.1";
 
   src = fetchurl {
     url = "mirror://savannah/linphone/belle-sip/${name}.tar.gz";
-    sha256 = "1lwxfvwvclbh0bfwf69jrknqzqh1igzm293wwwbmq4kn8c5fiypz";
+    sha256 = "0q1d3fqsrxi3kxcjcibr376js25h6in8c1hm7c53wz252jx6f42b";
   };
 
   nativeBuildInputs = [ jre ];
diff --git a/pkgs/development/libraries/biblesync/default.nix b/pkgs/development/libraries/biblesync/default.nix
new file mode 100644
index 000000000000..4b7be5ca3d4a
--- /dev/null
+++ b/pkgs/development/libraries/biblesync/default.nix
@@ -0,0 +1,32 @@
+{ stdenv, fetchurl, pkgconfig, cmake, libuuid }:
+
+with stdenv.lib;
+stdenv.mkDerivation rec{
+
+  name = "biblesync-${version}";
+  version = "1.1.2";
+
+  src = fetchurl{
+    url = "http://downloads.sourceforge.net/project/gnomesword/BibleSync/1.1.2/${name}.tar.gz";
+    sha256 = "0190q2da0ppif2242lahl8xfz01n9sijy60aq1a0545qcp0ilvl8";
+  };
+
+  buildInputs = [ pkgconfig cmake libuuid ];
+
+  meta = {
+    homepage = http://www.crosswire.org/wiki/BibleSync;
+    description = "A multicast protocol to Bible software shared conavigation";
+    longDescription = ''
+      BibleSync is a multicast protocol to support Bible software
+      shared co-navigation. It uses LAN multicast in either a
+      personal/small team mutual navigation motif or in a classroom
+      environment where there are Speakers plus the Audience. The
+      library implementing the protocol is a single C++ class
+      providing a complete yet minimal public interface to support
+      mode setting, setup for packet reception, transmit on local
+      navigation, and handling of incoming packets.
+    '';
+    license = licenses.publicDomain;
+    maintainers = [ maintainers.AndersonTorres ]; 
+  };
+}
diff --git a/pkgs/development/libraries/bobcat/default.nix b/pkgs/development/libraries/bobcat/default.nix
index 38dfce7583a7..87eb1e324ce0 100644
--- a/pkgs/development/libraries/bobcat/default.nix
+++ b/pkgs/development/libraries/bobcat/default.nix
@@ -1,27 +1,31 @@
-{ stdenv, fetchurl, gcc49, icmake, libmilter, libX11, openssl, readline
+{ stdenv, fetchFromGitHub, icmake, libmilter, libX11, openssl, readline
 , utillinux, yodl }:
 
-let version = "3.25.02"; in
+let version = "4.00.00"; in
 stdenv.mkDerivation {
   name = "bobcat-${version}";
 
-  src = fetchurl {
-    sha256 = "0b1370li4q82fqj982vng9cwkf23k2c1df5jsdcgkrk01r53dxry";
-    url = "mirror://debian/pool/main/b/bobcat/bobcat_${version}.orig.tar.gz";
+  src = fetchFromGitHub {
+    sha256 = "0wdb25sgw7i3jk3lbja6b4ipqfg1sncam6adg2bn8l5fcinrpwgs";
+    rev = version;
+    repo = "bobcat";
+    owner = "fbb-git";
   };
 
   meta = with stdenv.lib; {
     inherit version;
     description = "Brokken's Own Base Classes And Templates";
-    downloadPage = http://sourceforge.net/projects/bobcat/files/;
+    homepage = https://fbb-git.github.io/bobcat/;
     license = licenses.gpl3;
-    platforms = with platforms; linux;
+    platforms = platforms.linux;
     maintainers = with maintainers; [ nckx ];
   };
 
-  buildInputs = [ gcc49 libmilter libX11 openssl readline utillinux ];
+  buildInputs = [ libmilter libX11 openssl readline utillinux ];
   nativeBuildInputs = [ icmake yodl ];
 
+  sourceRoot = "bobcat-${version}-src/bobcat";
+
   postPatch = ''
     substituteInPlace INSTALL.im --replace /usr $out
     patchShebangs ./build
diff --git a/pkgs/development/libraries/botan/default.nix b/pkgs/development/libraries/botan/default.nix
index 3006a5a456d2..6eba16847f8e 100644
--- a/pkgs/development/libraries/botan/default.nix
+++ b/pkgs/development/libraries/botan/default.nix
@@ -2,7 +2,7 @@
 
 callPackage ./generic.nix (args // {
   baseVersion = "1.10";
-  revision = "9";
-  sha256 = "1wldp9py3qcdgswgxya83c03y6345a6cf3vwz0y41bl1l39jfza8";
+  revision = "10";
+  sha256 = "0qs1ps25k79jnzm31zjl6hj8kxzfwwjsdrlc9bz621218r3v2rvb";
   extraConfigureFlags = "--with-gnump";
 })
diff --git a/pkgs/development/libraries/botan/unstable.nix b/pkgs/development/libraries/botan/unstable.nix
index cc2a5ebaa313..5685d2618298 100644
--- a/pkgs/development/libraries/botan/unstable.nix
+++ b/pkgs/development/libraries/botan/unstable.nix
@@ -2,7 +2,7 @@
 
 callPackage ./generic.nix (args // {
   baseVersion = "1.11";
-  revision = "16";
-  sha256 = "0z3a7jp10w9ipmbzhc2xazd2savxmns57ca2a8d6vvjahxg4w6m3";
+  revision = "19";
+  sha256 = "0a1hgd3w2pyn6yx89bal61bkxxazv0p8x8x4kri73p1b4vj3n3sb";
   openssl = null;
 })
diff --git a/pkgs/development/libraries/capstone/default.nix b/pkgs/development/libraries/capstone/default.nix
index d61c82bb7d3b..a72532ee35bc 100644
--- a/pkgs/development/libraries/capstone/default.nix
+++ b/pkgs/development/libraries/capstone/default.nix
@@ -1,21 +1,16 @@
-{ stdenv, fetchurl, bash }:
+{ stdenv, fetchurl, bash, cmake }:
 
 stdenv.mkDerivation rec {
   name    = "capstone-${version}";
-  version = "2.1.2";
+  version = "3.0.4";
 
   src = fetchurl {
-    url    = "http://www.capstone-engine.org/download/${version}/${name}.tgz";
-    sha256 = "1k6px3vdcsfby3lakss5sazs875kbzkzqk7cj79xrm2y5ik1vr29";
+    url    = "https://github.com/aquynh/capstone/archive/${version}.tar.gz";
+    sha256 = "1whl5c8j6vqvz2j6ay2pyszx0jg8d3x8hq66cvgghmjchvsssvax";
   };
 
-  buildPhase = false;
-
-  patchPhase = ''
-    substituteInPlace make.sh --replace "/usr/bin/env bash" "${bash}/bin/bash"
-  '';
-
-  installPhase = "PREFIX=$out ./make.sh install";
+  buildInputs = [ cmake ];
+  enableParallelBuild = true;
 
   meta = {
     description = "advanced disassembly library";
diff --git a/pkgs/development/libraries/catch/default.nix b/pkgs/development/libraries/catch/default.nix
index 49376b74c172..625ec2995e34 100644
--- a/pkgs/development/libraries/catch/default.nix
+++ b/pkgs/development/libraries/catch/default.nix
@@ -3,13 +3,13 @@
 stdenv.mkDerivation rec {
 
   name = "catch-${version}";
-  version = "1.1-3";
+  version = "1.2.1";
 
   src = fetchFromGitHub {
     owner = "philsquared";
     repo = "Catch";
-    rev = "c51e86819dc993d590e5d0adaf1952f4b53e5355";
-    sha256 = "0kgi7wxxysgjbpisqfj4dj0k19cyyai92f001zi8gzkybd4fkgv5";
+    rev = "v" + version;
+    sha256 = "0rz2nmvvh66x6w2nb7l08vc5x9aqg1qfz2qfiykaz1ybc19fwck2";
   };
 
   buildInputs = [ cmake ];
diff --git a/pkgs/development/libraries/cogl/1.20.nix b/pkgs/development/libraries/cogl/1.20.nix
index 1489f48c9b46..5eb12fe29989 100644
--- a/pkgs/development/libraries/cogl/1.20.nix
+++ b/pkgs/development/libraries/cogl/1.20.nix
@@ -18,10 +18,9 @@ stdenv.mkDerivation rec {
 
   configureFlags = [
     "--enable-introspection"
-    "--enable-gles1"
-    "--enable-gles2"
     "--enable-kms-egl-platform"
-  ] ++ stdenv.lib.optional gstreamerSupport "--enable-cogl-gst";
+  ] ++ stdenv.lib.optional gstreamerSupport "--enable-cogl-gst"
+    ++ stdenv.lib.optionals (!stdenv.isDarwin) [ "--enable-gles1" "--enable-gles2" ];
 
   propagatedBuildInputs = with xorg; [
       glib gdk_pixbuf gobjectIntrospection
diff --git a/pkgs/development/libraries/cppzmq/default.nix b/pkgs/development/libraries/cppzmq/default.nix
index 481c80994e85..282ad7bfcd77 100644
--- a/pkgs/development/libraries/cppzmq/default.nix
+++ b/pkgs/development/libraries/cppzmq/default.nix
@@ -1,12 +1,12 @@
 { stdenv, fetchgit }:
 
 stdenv.mkDerivation rec {
-  name = "cppzmq-2015-03-05";
+  name = "cppzmq-2015-07-06";
 
   src = fetchgit {
-    url = "git://github.com/zeromq/cppzmq";
-    rev = "ac705f604701e2ca1643fa31bae240f9da8b9b9a";
-    sha256 = "1bcd5553601a6cdc926aa7a7c89fe54d3b14693cfce85dea97af25cf5a144398";
+    url = "https://github.com/zeromq/cppzmq";
+    rev = "a88bf3e0b0bc6ed5f5b25a58f8997a1dae374c8b";
+    sha256 = "75a6630b870c1f0d5b9d6a0ba03e83ceee47aaa2a253894e75a8a93a6d65d3aa";
   };
 
   installPhase = ''
diff --git a/pkgs/development/libraries/cwiid/default.nix b/pkgs/development/libraries/cwiid/default.nix
new file mode 100644
index 000000000000..a86bdc8e035b
--- /dev/null
+++ b/pkgs/development/libraries/cwiid/default.nix
@@ -0,0 +1,26 @@
+{ stdenv, autoreconfHook, fetchgit, bison, flex, bluez, pkgconfig, gtk }:
+
+stdenv.mkDerivation rec {
+    name = "cwiid-2010-02-21-git";
+    src = fetchgit {
+        url = https://github.com/abstrakraft/cwiid;
+        sha256 = "6f5355d036dab017da713c49d3042011fa24fb732ed0d5ee338ab6f5ff400f06";
+        rev = "fadf11e89b579bcc0336a0692ac15c93785f3f82";
+    };
+    configureFlags = "--without-python";
+    prePatch = ''
+        sed -i -e '/$(LDCONFIG)/d' common/include/lib.mak.in
+    '';
+    buildInputs = [ autoreconfHook bison flex bluez pkgconfig gtk ];
+    postInstall = ''
+        # Some programs (for example, cabal-install) have problems with the double 0
+        sed -i -e "s/0.6.00/0.6.0/" $out/lib/pkgconfig/cwiid.pc
+    '';
+    meta = {
+        description = "Linux Nintendo Wiimote interface";
+        homepage = http://cwiid.org;
+        license = stdenv.lib.licenses.gpl2Plus;
+        maintainers = [ stdenv.lib.maintainers.bennofs ];
+        platforms = stdenv.lib.platforms.linux; 
+    };   
+}
diff --git a/pkgs/development/libraries/dbus-glib/default.nix b/pkgs/development/libraries/dbus-glib/default.nix
index 00b302bde8d5..480dc61897bb 100644
--- a/pkgs/development/libraries/dbus-glib/default.nix
+++ b/pkgs/development/libraries/dbus-glib/default.nix
@@ -8,6 +8,8 @@ stdenv.mkDerivation rec {
     sha256 = "1xi1v1msz75qs0s4lkyf1psrksdppa3hwkg0mznc6gpw5flg3hdz";
   };
 
+  outputs = [ "out" "doc" ];
+
   nativeBuildInputs = [ pkgconfig gettext ];
 
   buildInputs = [ expat libiconv ];
diff --git a/pkgs/development/libraries/dbus/default.nix b/pkgs/development/libraries/dbus/default.nix
index d114cf17c4ef..4a0f98d262a0 100644
--- a/pkgs/development/libraries/dbus/default.nix
+++ b/pkgs/development/libraries/dbus/default.nix
@@ -7,8 +7,8 @@ assert x11Support -> libX11 != null
                   && libSM != null;
 
 let
-  version = "1.8.18";
-  sha256 = "1wn4k142m68d8yqd4i6dmx1ac0798yhkdnkk4mb72g3sfyffpwin";
+  version = "1.8.20";
+  sha256 = "0fkh3d5r57a659hw9lqnw4v0bc5556vx54fsf7l9c732ci6byksw";
 
   inherit (stdenv) lib;
 
diff --git a/pkgs/development/libraries/dclxvi/default.nix b/pkgs/development/libraries/dclxvi/default.nix
new file mode 100644
index 000000000000..1b8528dd08bb
--- /dev/null
+++ b/pkgs/development/libraries/dclxvi/default.nix
@@ -0,0 +1,27 @@
+{ stdenv, fetchFromGitHub }:
+
+stdenv.mkDerivation {
+  name = "dclxvi-2013-01-27";
+
+  src = fetchFromGitHub {
+    owner = "agl";
+    repo = "dclxvi";
+    rev = "74009d58f2305be3b95d88717619bde8ecbdd9a2";
+    sha256 = "1kx4h8iv7yb30c6zjmj8zs9x12vxhi0jwkiwxsxj9swf6bww6p1g";
+  };
+
+  buildFlags = [ "libdclxvipairing.so" ];
+
+  installPhase = ''
+    mkdir -p $out/{include,lib}
+    find . -name \*.h -exec cp {} $out/include \;
+    find . -name \*.so -exec cp {} $out/lib \;
+  '';
+
+  meta = with stdenv.lib; {
+    homepage = "https://github.com/agl/dclxvi";
+    description = "Naehrig, Niederhagen and Schwabe's pairings code, massaged into a shared library";
+    maintainers = with maintainers; [ wkennington ];
+    platforms = platforms.all;
+  };
+}
diff --git a/pkgs/development/libraries/double-conversion/default.nix b/pkgs/development/libraries/double-conversion/default.nix
index 7de7cb4d102d..049a799c44fa 100644
--- a/pkgs/development/libraries/double-conversion/default.nix
+++ b/pkgs/development/libraries/double-conversion/default.nix
@@ -1,14 +1,14 @@
 { stdenv, fetchFromGitHub, cmake }:
 
 stdenv.mkDerivation rec {
-  version = "1.1.5";
+  version = "2.0.1";
   name = "double-conversion-${version}";
 
   src = fetchFromGitHub {
     owner = "google";
     repo = "double-conversion";
     rev = "v${version}";
-    sha256 = "1a264wpnvxmnq5pdlnp417ld1ybrng83lnbg38bv4ahz7a29ap4z";
+    sha256 = "05x5rdwndgp1vdq2z1bpvng0dd8pn93kw4vhl6nsvv9vsara2q4b";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/pkgs/development/libraries/epoxy/default.nix b/pkgs/development/libraries/epoxy/default.nix
index 4798c50225de..66039daa4792 100644
--- a/pkgs/development/libraries/epoxy/default.nix
+++ b/pkgs/development/libraries/epoxy/default.nix
@@ -1,24 +1,20 @@
-{ stdenv, fetchurl, autoconf, autogen, automake, gettext, libX11
-, mesa, pkgconfig, python, utilmacros
+{ stdenv, fetchFromGitHub, autoreconfHook, pkgconfig, utilmacros, python
+, mesa, libX11
 }:
 
 stdenv.mkDerivation rec {
   name = "epoxy-${version}";
-  version = "1.2";
+  version = "1.3.1";
 
-  src = fetchurl {
-    url = "https://github.com/anholt/libepoxy/archive/v${version}.tar.gz";
-    sha256 = "1xp8g6b7xlbym2rj4vkbl6xpb7ijq7glpv656mc7k9b01x22ihs2";
+  src = fetchFromGitHub {
+    owner = "anholt";
+    repo = "libepoxy";
+    rev = "v${version}";
+    sha256 = "0dfkd4xbp7v5gwsf6qwaraz54yzizf3lj5ymyc0msjn0adq3j5yl";
   };
 
-  buildInputs = [
-    autoconf autogen automake gettext libX11 mesa pkgconfig python
-    utilmacros
-  ];
-
-  configureScript = ''
-    ./autogen.sh --prefix="$out"
-  '';
+  nativeBuildInputs = [ autoreconfHook pkgconfig utilmacros python ];
+  buildInputs = [ mesa libX11 ];
 
   meta = with stdenv.lib; {
     description = "A library for handling OpenGL function pointer management";
diff --git a/pkgs/development/libraries/exempi/default.nix b/pkgs/development/libraries/exempi/default.nix
index e941f0f65476..e7a3bd495132 100644
--- a/pkgs/development/libraries/exempi/default.nix
+++ b/pkgs/development/libraries/exempi/default.nix
@@ -8,7 +8,9 @@ stdenv.mkDerivation rec {
     sha256 = "01vcd1mfn2s0iiq2cjyzgvnxx6kcq9cwra1iipijhs0vwvjx0yhf";
   };
 
-  configureFlags = [ "--with-boost=${boost.dev}" ];
+  configureFlags = [
+    "--with-boost=${boost.dev}"
+  ];
 
   buildInputs = [ expat zlib boost ];
 
diff --git a/pkgs/development/libraries/expat/CVE-2015-1283.patch b/pkgs/development/libraries/expat/CVE-2015-1283.patch
new file mode 100644
index 000000000000..33b975912d40
--- /dev/null
+++ b/pkgs/development/libraries/expat/CVE-2015-1283.patch
@@ -0,0 +1,77 @@
+Found at https://hg.mozilla.org/releases/mozilla-esr31/rev/2f3e78643f5c on 2015-07-27.  Modified: replaced path parser/expat/lib/xmlparse.c with lib/xmlparse.c.
+diff --git a/lib/xmlparse.c b/lib/xmlparse.c
+--- a/lib/xmlparse.c
++++ b/lib/xmlparse.c
+@@ -1646,29 +1646,40 @@ XML_ParseBuffer(XML_Parser parser, int l
+   XmlUpdatePosition(encoding, positionPtr, bufferPtr, &position);
+   positionPtr = bufferPtr;
+   return result;
+ }
+ 
+ void * XMLCALL
+ XML_GetBuffer(XML_Parser parser, int len)
+ {
++/* BEGIN MOZILLA CHANGE (sanity check len) */
++  if (len < 0) {
++    errorCode = XML_ERROR_NO_MEMORY;
++    return NULL;
++  }
++/* END MOZILLA CHANGE */
+   switch (ps_parsing) {
+   case XML_SUSPENDED:
+     errorCode = XML_ERROR_SUSPENDED;
+     return NULL;
+   case XML_FINISHED:
+     errorCode = XML_ERROR_FINISHED;
+     return NULL;
+   default: ;
+   }
+ 
+   if (len > bufferLim - bufferEnd) {
+-    /* FIXME avoid integer overflow */
+     int neededSize = len + (int)(bufferEnd - bufferPtr);
++/* BEGIN MOZILLA CHANGE (sanity check neededSize) */
++    if (neededSize < 0) {
++      errorCode = XML_ERROR_NO_MEMORY;
++      return NULL;
++    }
++/* END MOZILLA CHANGE */
+ #ifdef XML_CONTEXT_BYTES
+     int keep = (int)(bufferPtr - buffer);
+ 
+     if (keep > XML_CONTEXT_BYTES)
+       keep = XML_CONTEXT_BYTES;
+     neededSize += keep;
+ #endif  /* defined XML_CONTEXT_BYTES */
+     if (neededSize  <= bufferLim - buffer) {
+@@ -1687,17 +1698,25 @@ XML_GetBuffer(XML_Parser parser, int len
+     }
+     else {
+       char *newBuf;
+       int bufferSize = (int)(bufferLim - bufferPtr);
+       if (bufferSize == 0)
+         bufferSize = INIT_BUFFER_SIZE;
+       do {
+         bufferSize *= 2;
+-      } while (bufferSize < neededSize);
++/* BEGIN MOZILLA CHANGE (prevent infinite loop on overflow) */
++      } while (bufferSize < neededSize && bufferSize > 0);
++/* END MOZILLA CHANGE */
++/* BEGIN MOZILLA CHANGE (sanity check bufferSize) */
++      if (bufferSize <= 0) {
++        errorCode = XML_ERROR_NO_MEMORY;
++        return NULL;
++      }
++/* END MOZILLA CHANGE */
+       newBuf = (char *)MALLOC(bufferSize);
+       if (newBuf == 0) {
+         errorCode = XML_ERROR_NO_MEMORY;
+         return NULL;
+       }
+       bufferLim = newBuf + bufferSize;
+ #ifdef XML_CONTEXT_BYTES
+       if (bufferPtr) {
+
+
+
+
diff --git a/pkgs/development/libraries/expat/default.nix b/pkgs/development/libraries/expat/default.nix
index 9a49225d1723..05cfeaee4232 100644
--- a/pkgs/development/libraries/expat/default.nix
+++ b/pkgs/development/libraries/expat/default.nix
@@ -8,6 +8,8 @@ stdenv.mkDerivation rec {
     sha256 = "11pblz61zyxh68s5pdcbhc30ha1b2vfjd83aiwfg4vc15x3hadw2";
   };
 
+  patches = [ ./CVE-2015-1283.patch ];
+
   meta = with stdenv.lib; {
     homepage = http://www.libexpat.org/;
     description = "A stream-oriented XML parser library written in C";
diff --git a/pkgs/development/libraries/ffmpeg-full/default.nix b/pkgs/development/libraries/ffmpeg-full/default.nix
index 555576d3a360..654741283f95 100644
--- a/pkgs/development/libraries/ffmpeg-full/default.nix
+++ b/pkgs/development/libraries/ffmpeg-full/default.nix
@@ -230,12 +230,12 @@ assert opensslExtlib -> gnutls == null && openssl != null && nonfreeLicensing;
 assert x11grabExtlib -> libX11 != null && libXv != null;
 
 stdenv.mkDerivation rec {
-  name = "ffmpeg-${version}";
-  version = "2.7.1";
+  name = "ffmpeg-full-${version}";
+  version = "2.7.2";
 
   src = fetchurl {
-    url = "https://www.ffmpeg.org/releases/${name}.tar.bz2";
-    sha256 = "087pyx1wxvniq3wgj6z80wrb7ampwwsmwndmr7lymzhm4iyvj1vy";
+    url = "https://www.ffmpeg.org/releases/ffmpeg-${version}.tar.bz2";
+    sha256 = "1wlygd0jp34dk4qagi4h9psn4yk8zgyj7zy9lrpm5332mm87bsvw";
   };
 
   patchPhase = ''patchShebangs .'';
@@ -253,7 +253,7 @@ stdenv.mkDerivation rec {
     # On some ARM platforms --enable-thumb
     "--enable-shared --disable-static"
     (enableFeature true "pic")
-    (if (stdenv.cc.cc.isClang or false) then "--cc=clang" else null)
+    (if stdenv.cc.isClang then "--cc=clang" else null)
     (enableFeature smallBuild "small")
     (enableFeature runtimeCpuDetectBuild "runtime-cpudetect")
     (enableFeature grayBuild "gray")
diff --git a/pkgs/development/libraries/ffmpeg/2.7.nix b/pkgs/development/libraries/ffmpeg/2.7.nix
index 3e4708fdf466..105239c48c9c 100644
--- a/pkgs/development/libraries/ffmpeg/2.7.nix
+++ b/pkgs/development/libraries/ffmpeg/2.7.nix
@@ -1,7 +1,7 @@
 { callPackage, ... } @ args:
 
 callPackage ./generic.nix (args // rec {
-  version = "${branch}.1";
+  version = "${branch}.2";
   branch = "2.7";
-  sha256 = "087pyx1wxvniq3wgj6z80wrb7ampwwsmwndmr7lymzhm4iyvj1vy";
+  sha256 = "1wlygd0jp34dk4qagi4h9psn4yk8zgyj7zy9lrpm5332mm87bsvw";
 })
diff --git a/pkgs/development/libraries/folly/default.nix b/pkgs/development/libraries/folly/default.nix
index 79584a99f630..0cea9413baef 100644
--- a/pkgs/development/libraries/folly/default.nix
+++ b/pkgs/development/libraries/folly/default.nix
@@ -2,14 +2,14 @@
 , google-gflags, python, libiberty, openssl }:
 
 stdenv.mkDerivation rec {
-  version = "0.38.0";
+  version = "0.52.0";
   name = "folly-${version}";
 
   src = fetchFromGitHub {
     owner = "facebook";
     repo = "folly";
     rev = "v${version}";
-    sha256 = "0b273iwizy08r8lap367q79lai4l4aib2bvd827lkkdax5jpqf6b";
+    sha256 = "16g3hpy1gy56zqnhwzkvzzpm6dgm01qa9yaigmrqr9b59c3k6cqf";
   };
 
   buildInputs = [ libiberty boost.lib libevent double_conversion glog google-gflags openssl ];
diff --git a/pkgs/development/libraries/freeglut/0001-remove-typedefs-now-living-in-mesa.patch b/pkgs/development/libraries/freeglut/0001-remove-typedefs-now-living-in-mesa.patch
deleted file mode 100644
index b11a50a9de10..000000000000
--- a/pkgs/development/libraries/freeglut/0001-remove-typedefs-now-living-in-mesa.patch
+++ /dev/null
@@ -1,43 +0,0 @@
-From 9df489c765921d8d3ff96a13c01592d9209431bb Mon Sep 17 00:00:00 2001
-From: Florian Friesdorf <flo@chaoflow.net>
-Date: Wed, 4 Jan 2012 23:12:44 +0100
-Subject: [PATCH] remove typedefs now living in mesa
-
----
- progs/demos/smooth_opengl3/smooth_opengl3.c |   20 --------------------
- 1 files changed, 0 insertions(+), 20 deletions(-)
-
-diff --git a/progs/demos/smooth_opengl3/smooth_opengl3.c b/progs/demos/smooth_opengl3/smooth_opengl3.c
-index abbdfb5..1172615 100755
---- a/progs/demos/smooth_opengl3/smooth_opengl3.c
-+++ b/progs/demos/smooth_opengl3/smooth_opengl3.c
-@@ -98,26 +98,6 @@ typedef char ourGLchar;
- #define APIENTRY
- #endif
- 
--typedef void (APIENTRY *PFNGLGENBUFFERSPROC) (GLsizei n, GLuint *buffers);
--typedef void (APIENTRY *PFNGLBINDBUFFERPROC) (GLenum target, GLuint buffer);
--typedef void (APIENTRY *PFNGLBUFFERDATAPROC) (GLenum target, ourGLsizeiptr size, const GLvoid *data, GLenum usage);
--typedef GLuint (APIENTRY *PFNGLCREATESHADERPROC) (GLenum type);
--typedef void (APIENTRY *PFNGLSHADERSOURCEPROC) (GLuint shader, GLsizei count, const ourGLchar **string, const GLint *length);
--typedef void (APIENTRY *PFNGLCOMPILESHADERPROC) (GLuint shader);
--typedef GLuint (APIENTRY *PFNGLCREATEPROGRAMPROC) (void);
--typedef void (APIENTRY *PFNGLATTACHSHADERPROC) (GLuint program, GLuint shader);
--typedef void (APIENTRY *PFNGLLINKPROGRAMPROC) (GLuint program);
--typedef void (APIENTRY *PFNGLUSEPROGRAMPROC) (GLuint program);
--typedef void (APIENTRY *PFNGLGETSHADERIVPROC) (GLuint shader, GLenum pname, GLint *params);
--typedef void (APIENTRY *PFNGLGETSHADERINFOLOGPROC) (GLuint shader, GLsizei bufSize, GLsizei *length, ourGLchar *infoLog);
--typedef void (APIENTRY *PFNGLGETPROGRAMIVPROC) (GLenum target, GLenum pname, GLint *params);
--typedef void (APIENTRY *PFNGLGETPROGRAMINFOLOGPROC) (GLuint program, GLsizei bufSize, GLsizei *length, ourGLchar *infoLog);
--typedef GLint (APIENTRY *PFNGLGETATTRIBLOCATIONPROC) (GLuint program, const ourGLchar *name);
--typedef void (APIENTRY *PFNGLVERTEXATTRIBPOINTERPROC) (GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const GLvoid *pointer);
--typedef void (APIENTRY *PFNGLENABLEVERTEXATTRIBARRAYPROC) (GLuint index);
--typedef GLint (APIENTRY *PFNGLGETUNIFORMLOCATIONPROC) (GLuint program, const ourGLchar *name);
--typedef void (APIENTRY *PFNGLUNIFORMMATRIX4FVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
--
- PFNGLGENBUFFERSPROC gl_GenBuffers;
- PFNGLBINDBUFFERPROC gl_BindBuffer;
- PFNGLBUFFERDATAPROC gl_BufferData;
--- 
-1.7.8
-
diff --git a/pkgs/development/libraries/freeglut/default.nix b/pkgs/development/libraries/freeglut/default.nix
index 73e7e2ccce5d..6159ce7c9e0a 100644
--- a/pkgs/development/libraries/freeglut/default.nix
+++ b/pkgs/development/libraries/freeglut/default.nix
@@ -1,27 +1,29 @@
-{ stdenv, lib, fetchurl, libXi, libXrandr, libXxf86vm, mesa, x11, autoreconfHook }:
+{ stdenv, fetchurl, libXi, libXrandr, libXxf86vm, mesa, x11, cmake }:
 
-let version = "2.8.1";
+let version = "3.0.0";
 in stdenv.mkDerivation {
   name = "freeglut-${version}";
 
   src = fetchurl {
     url = "mirror://sourceforge/freeglut/freeglut-${version}.tar.gz";
-    sha256 = "16lrxxxd9ps9l69y3zsw6iy0drwjsp6m26d1937xj71alqk6dr6x";
+    sha256 = "18knkyczzwbmyg8hr4zh8a1i5ga01np2jzd1rwmsh7mh2n2vwhra";
   };
 
-  buildInputs = [
-    libXi libXrandr libXxf86vm mesa x11
-  ] ++ lib.optionals stdenv.isDarwin [
-    autoreconfHook
-  ];
+  buildInputs = [ libXi libXrandr libXxf86vm mesa x11 cmake ];
 
-  postPatch = lib.optionalString stdenv.isDarwin ''
-    substituteInPlace Makefile.am --replace \
-      "SUBDIRS = src include progs doc" \
-      "SUBDIRS = src include doc"
-  '';
-
-  configureFlags = [ "--enable-warnings" ];
-
-  # patches = [ ./0001-remove-typedefs-now-living-in-mesa.patch ];
+  meta = with stdenv.lib; {
+    description = "Create and manage windows containing OpenGL contexts";
+    longDescription = ''
+      FreeGLUT is an open source alternative to the OpenGL Utility Toolkit
+      (GLUT) library. GLUT (and hence FreeGLUT) allows the user to create and
+      manage windows containing OpenGL contexts on a wide range of platforms
+      and also read the mouse, keyboard and joystick functions. FreeGLUT is
+      intended to be a full replacement for GLUT, and has only a few
+      differences.
+    '';
+    homepage = http://freeglut.sourceforge.net/;
+    license = licenses.mit;
+    platforms = platforms.all;
+    maintainers = [ maintainers.bjornfor ];
+  };
 }
diff --git a/pkgs/development/libraries/freenect/default.nix b/pkgs/development/libraries/freenect/default.nix
new file mode 100644
index 000000000000..d0fba6ed821a
--- /dev/null
+++ b/pkgs/development/libraries/freenect/default.nix
@@ -0,0 +1,23 @@
+{ stdenv, fetchzip, cmake, libusb, pkgconfig, freeglut, mesa, libXi, libXmu }:
+
+stdenv.mkDerivation rec {
+  name = "freenect-${version}";
+  version = "0.5.2";
+
+  src = fetchzip {
+    url = "https://github.com/OpenKinect/libfreenect/archive/v${version}.tar.gz";
+    sha256 = "04p4q19fkh97bn7kf0xsk6mrig2aj10i3s9z6hdrr70l6dfpf4w9";
+  };
+
+  buildInputs = [ libusb freeglut mesa libXi libXmu ];
+  nativeBuildInputs = [ cmake pkgconfig ];
+
+  meta = {
+    description = "Drivers and libraries for the Xbox Kinect device on Windows, Linux, and OS X";
+    inherit version;
+    homepage = http://openkinect.org;
+    license = with stdenv.lib.licenses; [ gpl2 asl20 ];
+    maintainers = with stdenv.lib.maintainers; [ bennofs ];
+    platforms = stdenv.lib.platforms.linux;
+  };
+}
diff --git a/pkgs/development/libraries/freetds/default.nix b/pkgs/development/libraries/freetds/default.nix
index 11d10e73cdd7..695abcfbba2b 100644
--- a/pkgs/development/libraries/freetds/default.nix
+++ b/pkgs/development/libraries/freetds/default.nix
@@ -4,11 +4,11 @@
 assert odbcSupport -> unixODBC != null;
 
 stdenv.mkDerivation rec {
-  name = "freetds-0.91.112";
+  name = "freetds-0.91";
 
   src = fetchurl {
-    url = "ftp://ftp.astron.com/pub/freetds/stable/${name}.tar.gz";
-    sha256 = "be4f04ee57328c32e7e7cd7e2e1483e535071cec6101e46b9dd15b857c5078ed";
+    url = "http://mirrors.ibiblio.org/freetds/stable/${name}.tar.gz";
+    sha256 = "0r946axzxs0czsmr7283w7vmk5jx3jnxxc32d2ncxsrsh2yli0ba";
   };
 
   buildInputs = stdenv.lib.optional odbcSupport [ unixODBC ];
@@ -30,4 +30,3 @@ stdenv.mkDerivation rec {
     platforms = stdenv.lib.platforms.all;
   };
 }
-
diff --git a/pkgs/development/libraries/gdk-pixbuf/default.nix b/pkgs/development/libraries/gdk-pixbuf/default.nix
index fafff05a032c..5f5a04969542 100644
--- a/pkgs/development/libraries/gdk-pixbuf/default.nix
+++ b/pkgs/development/libraries/gdk-pixbuf/default.nix
@@ -3,14 +3,14 @@
 
 let
   ver_maj = "2.31";
-  ver_min = "4";
+  ver_min = "6";
 in
 stdenv.mkDerivation rec {
   name = "gdk-pixbuf-${ver_maj}.${ver_min}";
 
   src = fetchurl {
     url = "mirror://gnome/sources/gdk-pixbuf/${ver_maj}/${name}.tar.xz";
-    sha256 = "05bslhk33qpssg66n2wys9khyzwkr4am0b23dym8n67qjds9gng5";
+    sha256 = "062x2gqd7p6yxhxlib1ha4l3gk9ihcj080hrwwv9vmlmybb064hi";
   };
 
   setupHook = ./setup-hook.sh;
@@ -26,8 +26,8 @@ stdenv.mkDerivation rec {
     + stdenv.lib.optionalString (gobjectIntrospection != null) " --enable-introspection=yes"
     ;
 
-  # Seems to randomly fail sometimes with a bus error. FIXME
-  doCheck = !stdenv.isDarwin;
+  # The tests take an excessive amount of time (> 1.5 hours) and memory (> 6 GB).
+  doCheck = false;
 
   postInstall = "rm -rf $out/share/gtk-doc";
 
diff --git a/pkgs/development/libraries/getdata/default.nix b/pkgs/development/libraries/getdata/default.nix
index 464d2f66e454..e3dfc9fe0a90 100644
--- a/pkgs/development/libraries/getdata/default.nix
+++ b/pkgs/development/libraries/getdata/default.nix
@@ -1,9 +1,9 @@
 { stdenv, fetchurl }:
 stdenv.mkDerivation rec {
-  name = "getdata-0.8.8";
+  name = "getdata-0.8.9";
   src = fetchurl {
     url = "mirror://sourceforge/getdata/${name}.tar.bz2";
-    sha256 = "1p5sncbr0bjrx1ki57di0j9rl5ksv0hbfy7bkcb4vaz9z9mrn8xj";
+    sha256 = "1cgwrflpp9ia2cwnhmwp45nmsg15ymjh03pysrfigyfmag94ac51";
   };
 
   meta = with stdenv.lib; {
diff --git a/pkgs/development/libraries/gettext/0.17.nix b/pkgs/development/libraries/gettext/0.17.nix
deleted file mode 100644
index 3ea70bea80be..000000000000
--- a/pkgs/development/libraries/gettext/0.17.nix
+++ /dev/null
@@ -1,53 +0,0 @@
-{ stdenv, fetchurl, libiconv }:
-
-stdenv.mkDerivation rec {
-  name = "gettext-0.17";
-
-  src = fetchurl {
-    url = "mirror://gnu/gettext/${name}.tar.gz";
-    sha256 = "1fipjpaxxwifdw6cbr7mkxp1yvy643i38nhlh7124bqnisxki5i0";
-  };
-
-  configureFlags = "--disable-csharp";
-
-  # On cross building, gettext supposes that the wchar.h from libc
-  # does not fulfill gettext needs, so it tries to work with its
-  # own wchar.h file, which does not cope well with the system's
-  # wchar.h and stddef.h (gcc-4.3 - glibc-2.9)
-  preConfigure = ''
-    if test -n "$crossConfig"; then
-      echo gl_cv_func_wcwidth_works=yes > cachefile
-      configureFlags="$configureFlags --cache-file=`pwd`/cachefile"
-    fi
-  '';
-
-  buildInputs = stdenv.lib.optional (!stdenv.isLinux) libiconv;
-
-  meta = {
-    description = "GNU gettext, a well integrated set of translation tools and documentation";
-
-    longDescription = ''
-      Usually, programs are written and documented in English, and use
-      English at execution time for interacting with users.  Using a common
-      language is quite handy for communication between developers,
-      maintainers and users from all countries.  On the other hand, most
-      people are less comfortable with English than with their own native
-      language, and would rather be using their mother tongue for day to
-      day's work, as far as possible.  Many would simply love seeing their
-      computer screen showing a lot less of English, and far more of their
-      own language.
-
-      GNU `gettext' is an important step for the GNU Translation Project, as
-      it is an asset on which we may build many other steps. This package
-      offers to programmers, translators, and even users, a well integrated
-      set of tools and documentation. Specifically, the GNU `gettext'
-      utilities are a set of tools that provides a framework to help other
-      GNU packages produce multi-lingual messages.
-    '';
-
-    homepage = http://www.gnu.org/software/gettext/;
-
-    maintainers = [ ];
-    branch = "0.17";
-  };
-}
\ No newline at end of file
diff --git a/pkgs/development/libraries/gettext/0.18.nix b/pkgs/development/libraries/gettext/0.18.nix
deleted file mode 100644
index bb1a0519e7bb..000000000000
--- a/pkgs/development/libraries/gettext/0.18.nix
+++ /dev/null
@@ -1,11 +0,0 @@
-{ stdenv, fetchurl, gettext }:
-
-stdenv.lib.overrideDerivation gettext (attrs: rec {
-  name = "gettext-0.18.2";
-
-  src = fetchurl {
-    url = "mirror://gnu/gettext/${name}.tar.gz";
-    sha256 = "516a6370b3b3f46e2fc5a5e222ff5ecd76f3089bc956a7587a6e4f89de17714c";
-  };
-
-})
diff --git a/pkgs/development/libraries/gettext/default.nix b/pkgs/development/libraries/gettext/default.nix
index 4b6fd2008e86..a56795a4c15e 100644
--- a/pkgs/development/libraries/gettext/default.nix
+++ b/pkgs/development/libraries/gettext/default.nix
@@ -8,6 +8,8 @@ stdenv.mkDerivation (rec {
     sha256 = "0cbp498ckjwj7qr8b9pmkry8hkhldgkvg5yix8hi9c8z1hxxb651";
   };
 
+  outputs = [ "out" "doc" ];
+
   LDFLAGS = if stdenv.isSunOS then "-lm -lmd -lmp -luutil -lnvpair -lnsl -lidmap -lavl -lsec" else "";
 
   configureFlags = [ "--disable-csharp" "--with-xz" ]
diff --git a/pkgs/development/libraries/glib-networking/default.nix b/pkgs/development/libraries/glib-networking/default.nix
index 79b31b1365b7..a17b7a21409b 100644
--- a/pkgs/development/libraries/glib-networking/default.nix
+++ b/pkgs/development/libraries/glib-networking/default.nix
@@ -1,5 +1,5 @@
 { stdenv, fetchurl, pkgconfig, glib, intltool, gnutls, libproxy
-, gsettings_desktop_schemas, cacert }:
+, gsettings_desktop_schemas }:
 
 let
   ver_maj = "2.44";
@@ -13,7 +13,7 @@ stdenv.mkDerivation rec {
     sha256 = "8f8a340d3ba99bfdef38b653da929652ea6640e27969d29f7ac51fbbe11a4346";
   };
 
-  configureFlags = "--with-ca-certificates=${cacert}/etc/ssl/certs/ca-bundle.crt";
+  configureFlags = "--with-ca-certificates=/etc/ssl/certs/ca-certificates.crt";
 
   preBuild = ''
     sed -e "s@${glib}/lib/gio/modules@$out/lib/gio/modules@g" -i $(find . -name Makefile)
diff --git a/pkgs/development/libraries/glib/default.nix b/pkgs/development/libraries/glib/default.nix
index 5c76bc3186ba..fb9c361c5306 100644
--- a/pkgs/development/libraries/glib/default.nix
+++ b/pkgs/development/libraries/glib/default.nix
@@ -93,6 +93,8 @@ stdenv.mkDerivation rec {
        sed -e '/\/gdbus\/codegen-peer-to-peer/ s/^\/*/\/\//' -i gio/tests/gdbus-peer.c
        # All gschemas fail to pass the test, upstream bug?
        sed -e '/g_test_add_data_func/ s/^\/*/\/\//' -i gio/tests/gschema-compile.c
+       # Cannot reproduce the failing test_associations on hydra
+       sed -e '/\/appinfo\/associations/d' -i gio/tests/appinfo.c
        # Needed because of libtool wrappers
        sed -e '/g_subprocess_launcher_set_environ (launcher, envp);/a g_subprocess_launcher_setenv (launcher, "PATH", g_getenv("PATH"), TRUE);' -i gio/tests/gsubprocess.c
     '';
diff --git a/pkgs/development/libraries/glibc/common.nix b/pkgs/development/libraries/glibc/common.nix
index 9a451d48cbcf..cf356ccefbed 100644
--- a/pkgs/development/libraries/glibc/common.nix
+++ b/pkgs/development/libraries/glibc/common.nix
@@ -56,6 +56,11 @@ stdenv.mkDerivation ({
          "/bin:/usr/bin", which is inappropriate on NixOS machines. This
          patch extends the search path by "/run/current-system/sw/bin". */
       ./fix_path_attribute_in_getconf.patch
+
+      ./security-4a28f4d5.patch
+      ./security-bdf1ff05.patch
+      ./cve-2014-8121.patch
+      ./cve-2015-1781.patch
     ];
 
   postPatch =
diff --git a/pkgs/development/libraries/glibc/cve-2014-8121.patch b/pkgs/development/libraries/glibc/cve-2014-8121.patch
new file mode 100644
index 000000000000..95a86259dba8
--- /dev/null
+++ b/pkgs/development/libraries/glibc/cve-2014-8121.patch
@@ -0,0 +1,230 @@
+From 03d2730b44cc2236318fd978afa2651753666c55 Mon Sep 17 00:00:00 2001
+From: Florian Weimer <fweimer@redhat.com>
+Date: Wed, 29 Apr 2015 14:41:25 +0200
+Subject: [PATCH] CVE-2014-8121: Do not close NSS files database during
+ iteration [BZ #18007]
+MIME-Version: 1.0
+Content-Type: text/plain; charset=utf8
+Content-Transfer-Encoding: 8bit
+
+Robin Hack discovered Samba would enter an infinite loop processing
+certain quota-related requests.  We eventually tracked this down to a
+glibc issue.
+
+Running a (simplified) test case under strace shows that /etc/passwd
+is continuously opened and closed:
+
+…
+open("/etc/passwd", O_RDONLY|O_CLOEXEC) = 3
+lseek(3, 0, SEEK_CUR)                   = 0
+read(3, "root:x:0:0:root:/root:/bin/bash\n"..., 4096) = 2717
+lseek(3, 2717, SEEK_SET)                = 2717
+close(3)                                = 0
+open("/etc/passwd", O_RDONLY|O_CLOEXEC) = 3
+lseek(3, 0, SEEK_CUR)                   = 0
+lseek(3, 0, SEEK_SET)                   = 0
+read(3, "root:x:0:0:root:/root:/bin/bash\n"..., 4096) = 2717
+lseek(3, 2717, SEEK_SET)                = 2717
+close(3)                                = 0
+open("/etc/passwd", O_RDONLY|O_CLOEXEC) = 3
+lseek(3, 0, SEEK_CUR)                   = 0
+…
+
+The lookup function implementation in
+nss/nss_files/files-XXX.c:DB_LOOKUP has code to prevent that.  It is
+supposed skip closing the input file if it was already open.
+
+  /* Reset file pointer to beginning or open file.  */			      \
+  status = internal_setent (keep_stream);				      \
+									      \
+  if (status == NSS_STATUS_SUCCESS)					      \
+    {									      \
+      /* Tell getent function that we have repositioned the file pointer.  */ \
+      last_use = getby;							      \
+									      \
+      while ((status = internal_getent (result, buffer, buflen, errnop	      \
+					H_ERRNO_ARG EXTRA_ARGS_VALUE))	      \
+	     == NSS_STATUS_SUCCESS)					      \
+	{ break_if_match }						      \
+									      \
+      if (! keep_stream)						      \
+	internal_endent ();						      \
+    }									      \
+
+keep_stream is initialized from the stayopen flag in internal_setent.
+internal_setent is called from the set*ent implementation as:
+
+  status = internal_setent (stayopen);
+
+However, for non-host database, this flag is always 0, per the
+STAYOPEN magic in nss/getXXent_r.c.
+
+Thus, the fix is this:
+
+-  status = internal_setent (stayopen);
++  status = internal_setent (1);
+
+This is not a behavioral change even for the hosts database (where the
+application can specify the stayopen flag) because with a call to
+sethostent(0), the file handle is still not closed in the
+implementation of gethostent.
+---
+ ChangeLog                 |   8 ++++
+ NEWS                      |  12 +++--
+ nss/Makefile              |   2 +-
+ nss/nss_files/files-XXX.c |   2 +-
+ nss/tst-nss-getpwent.c    | 118 ++++++++++++++++++++++++++++++++++++++++++++++
+ 5 files changed, 136 insertions(+), 6 deletions(-)
+ create mode 100644 nss/tst-nss-getpwent.c
+
+diff --git a/nss/Makefile b/nss/Makefile
+index d75dad2..65ab7b5 100644
+--- a/nss/Makefile
++++ b/nss/Makefile
+@@ -47,7 +47,7 @@ install-bin             := getent makedb
+ makedb-modules = xmalloc hash-string
+ extra-objs		+= $(makedb-modules:=.o)
+ 
+-tests			= test-netdb tst-nss-test1 test-digits-dots
++tests			= test-netdb tst-nss-test1 test-digits-dots tst-nss-getpwent
+ xtests			= bug-erange
+ 
+ # Specify rules for the nss_* modules.  We have some services.
+diff --git a/nss/nss_files/files-XXX.c b/nss/nss_files/files-XXX.c
+index a7a45e5..a7ce5ea 100644
+--- a/nss/nss_files/files-XXX.c
++++ b/nss/nss_files/files-XXX.c
+@@ -134,7 +134,7 @@ CONCAT(_nss_files_set,ENTNAME) (int stayopen)
+ 
+   __libc_lock_lock (lock);
+ 
+-  status = internal_setent (stayopen);
++  status = internal_setent (1);
+ 
+   if (status == NSS_STATUS_SUCCESS && fgetpos (stream, &position) < 0)
+     {
+diff --git a/nss/tst-nss-getpwent.c b/nss/tst-nss-getpwent.c
+new file mode 100644
+index 0000000..f2e8abc
+--- /dev/null
++++ b/nss/tst-nss-getpwent.c
+@@ -0,0 +1,118 @@
++/* Copyright (C) 2015 Free Software Foundation, Inc.
++   This file is part of the GNU C Library.
++
++   The GNU C Library is free software; you can redistribute it and/or
++   modify it under the terms of the GNU Lesser General Public
++   License as published by the Free Software Foundation; either
++   version 2.1 of the License, or (at your option) any later version.
++
++   The GNU C Library is distributed in the hope that it will be useful,
++   but WITHOUT ANY WARRANTY; without even the implied warranty of
++   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
++   Lesser General Public License for more details.
++
++   You should have received a copy of the GNU Lesser General Public
++   License along with the GNU C Library; if not, see
++   <http://www.gnu.org/licenses/>.  */
++
++#include <pwd.h>
++#include <stdbool.h>
++#include <stdio.h>
++#include <stdlib.h>
++#include <string.h>
++
++int
++do_test (void)
++{
++  /* Count the number of entries in the password database, and fetch
++     data from the first and last entries.  */
++  size_t count = 0;
++  struct passwd * pw;
++  char *first_name = NULL;
++  uid_t first_uid = 0;
++  char *last_name = NULL;
++  uid_t last_uid = 0;
++  setpwent ();
++  while ((pw  = getpwent ()) != NULL)
++    {
++      if (first_name == NULL)
++	{
++	  first_name = strdup (pw->pw_name);
++	  if (first_name == NULL)
++	    {
++	      printf ("strdup: %m\n");
++	      return 1;
++	    }
++	  first_uid = pw->pw_uid;
++	}
++
++      free (last_name);
++      last_name = strdup (pw->pw_name);
++      if (last_name == NULL)
++	{
++	  printf ("strdup: %m\n");
++	  return 1;
++	}
++      last_uid = pw->pw_uid;
++      ++count;
++    }
++  endpwent ();
++
++  if (count == 0)
++    {
++      printf ("No entries in the password database.\n");
++      return 0;
++    }
++
++  /* Try again, this time interleaving with name-based and UID-based
++     lookup operations.  The counts do not match if the interleaved
++     lookups affected the enumeration.  */
++  size_t new_count = 0;
++  setpwent ();
++  while ((pw  = getpwent ()) != NULL)
++    {
++      if (new_count == count)
++	{
++	  printf ("Additional entry in the password database.\n");
++	  return 1;
++	}
++      ++new_count;
++      struct passwd *pw2 = getpwnam (first_name);
++      if (pw2 == NULL)
++	{
++	  printf ("getpwnam (%s) failed: %m\n", first_name);
++	  return 1;
++	}
++      pw2 = getpwnam (last_name);
++      if (pw2 == NULL)
++	{
++	  printf ("getpwnam (%s) failed: %m\n", last_name);
++	  return 1;
++	}
++      pw2 = getpwuid (first_uid);
++      if (pw2 == NULL)
++	{
++	  printf ("getpwuid (%llu) failed: %m\n",
++		  (unsigned long long) first_uid);
++	  return 1;
++	}
++      pw2 = getpwuid (last_uid);
++      if (pw2 == NULL)
++	{
++	  printf ("getpwuid (%llu) failed: %m\n",
++		  (unsigned long long) last_uid);
++	  return 1;
++	}
++    }
++  endpwent ();
++  if (new_count < count)
++    {
++      printf ("Missing entry in the password database.\n");
++      return 1;
++    }
++
++  return 0;
++}
++
++#define TEST_FUNCTION do_test ()
++#include "../test-skeleton.c"
+
diff --git a/pkgs/development/libraries/glibc/cve-2015-1781.patch b/pkgs/development/libraries/glibc/cve-2015-1781.patch
new file mode 100644
index 000000000000..6831d5ac7426
--- /dev/null
+++ b/pkgs/development/libraries/glibc/cve-2015-1781.patch
@@ -0,0 +1,27 @@
+From 2959eda9272a033863c271aff62095abd01bd4e3 Mon Sep 17 00:00:00 2001
+From: Arjun Shankar <arjun.is@lostca.se>
+Date: Tue, 21 Apr 2015 14:06:31 +0200
+Subject: [PATCH] CVE-2015-1781: resolv/nss_dns/dns-host.c buffer overflow
+ [BZ#18287]
+
+---
+ ChangeLog                 | 6 ++++++
+ NEWS                      | 9 ++++++++-
+ resolv/nss_dns/dns-host.c | 3 ++-
+ 3 files changed, 16 insertions(+), 2 deletions(-)
+
+diff --git a/resolv/nss_dns/dns-host.c b/resolv/nss_dns/dns-host.c
+index b16b0dd..d8c5579 100644
+--- a/resolv/nss_dns/dns-host.c
++++ b/resolv/nss_dns/dns-host.c
+@@ -615,7 +615,8 @@ getanswer_r (const querybuf *answer, int anslen, const char *qname, int qtype,
+   int have_to_map = 0;
+   uintptr_t pad = -(uintptr_t) buffer % __alignof__ (struct host_data);
+   buffer += pad;
+-  if (__glibc_unlikely (buflen < sizeof (struct host_data) + pad))
++  buflen = buflen > pad ? buflen - pad : 0;
++  if (__glibc_unlikely (buflen < sizeof (struct host_data)))
+     {
+       /* The buffer is too small.  */
+     too_small:
+
diff --git a/pkgs/development/libraries/glibc/locales.nix b/pkgs/development/libraries/glibc/locales.nix
index 5d6e678bfe6d..cbf7af22cac1 100644
--- a/pkgs/development/libraries/glibc/locales.nix
+++ b/pkgs/development/libraries/glibc/locales.nix
@@ -29,10 +29,25 @@ build null {
 
       # Hack to allow building of the locales (needed since glibc-2.12)
       sed -i -e 's,^$(rtld-prefix) $(common-objpfx)locale/localedef,localedef --prefix='$TMPDIR',' ../glibc-2*/localedata/Makefile
+    ''
+      + stdenv.lib.optionalString (!allLocales) ''
+      # Check that all locales to be built are supported
+      echo -n '${stdenv.lib.concatMapStrings (s: s + " \\\n") locales}' \
+        | sort > locales-to-build.txt
+      cat ../glibc-2*/localedata/SUPPORTED | grep ' \\' \
+        | sort > locales-supported.txt
+      comm -13 locales-supported.txt locales-to-build.txt \
+        > locales-unsupported.txt
+      if [[ $(wc -c locales-unsupported.txt) != "0 locales-unsupported.txt" ]]; then
+        cat locales-supported.txt
+        echo "Error: unsupported locales detected:"
+        cat locales-unsupported.txt
+        echo "You should choose from the list above the error."
+        false
+      fi
 
-      ${if allLocales then "" else
-          "echo SUPPORTED-LOCALES=\"${toString locales}\" > ../glibc-2*/localedata/SUPPORTED"}
-
+      echo SUPPORTED-LOCALES='${toString locales}' > ../glibc-2*/localedata/SUPPORTED
+    '' + ''
       make localedata/install-locales \
           localedir=$out/lib/locale \
     '';
diff --git a/pkgs/development/libraries/glibc/security-4a28f4d5.patch b/pkgs/development/libraries/glibc/security-4a28f4d5.patch
new file mode 100644
index 000000000000..25f994d859c1
--- /dev/null
+++ b/pkgs/development/libraries/glibc/security-4a28f4d5.patch
@@ -0,0 +1,53 @@
+From 4a28f4d55a6cc33474c0792fe93b5942d81bf185 Mon Sep 17 00:00:00 2001
+From: Andreas Schwab <schwab@suse.de>
+Date: Thu, 26 Feb 2015 14:55:24 +0100
+Subject: [PATCH] Fix read past end of pattern in fnmatch (bug 18032)
+
+---
+ ChangeLog            | 7 +++++++
+ NEWS                 | 2 +-
+ posix/fnmatch_loop.c | 5 ++---
+ posix/tst-fnmatch3.c | 8 +++++---
+ 4 files changed, 15 insertions(+), 7 deletions(-)
+
+diff --git a/posix/fnmatch_loop.c b/posix/fnmatch_loop.c
+index c0cb2fc..72c5d8f 100644
+--- a/posix/fnmatch_loop.c
++++ b/posix/fnmatch_loop.c
+@@ -945,14 +945,13 @@ FCT (pattern, string, string_end, no_leading_period, flags, ends, alloca_used)
+ 		  }
+ 		else if (c == L('[') && *p == L('.'))
+ 		  {
+-		    ++p;
+ 		    while (1)
+ 		      {
+ 			c = *++p;
+-			if (c == '\0')
++			if (c == L('\0'))
+ 			  return FNM_NOMATCH;
+ 
+-			if (*p == L('.') && p[1] == L(']'))
++			if (c == L('.') && p[1] == L(']'))
+ 			  break;
+ 		      }
+ 		    p += 2;
+diff --git a/posix/tst-fnmatch3.c b/posix/tst-fnmatch3.c
+index d27a557..75bc00a 100644
+--- a/posix/tst-fnmatch3.c
++++ b/posix/tst-fnmatch3.c
+@@ -21,9 +21,11 @@
+ int
+ do_test (void)
+ {
+-  const char *pattern = "[[:alpha:]'[:alpha:]\0]";
+-
+-  return fnmatch (pattern, "a", 0) != FNM_NOMATCH;
++  if (fnmatch ("[[:alpha:]'[:alpha:]\0]", "a", 0) != FNM_NOMATCH)
++    return 1;
++  if (fnmatch ("[a[.\0.]]", "a", 0) != FNM_NOMATCH)
++    return 1;
++  return 0;
+ }
+ 
+ #define TEST_FUNCTION do_test ()
+
diff --git a/pkgs/development/libraries/glibc/security-bdf1ff05.patch b/pkgs/development/libraries/glibc/security-bdf1ff05.patch
new file mode 100644
index 000000000000..b4175694f912
--- /dev/null
+++ b/pkgs/development/libraries/glibc/security-bdf1ff05.patch
@@ -0,0 +1,39 @@
+From bdf1ff052a8e23d637f2c838fa5642d78fcedc33 Mon Sep 17 00:00:00 2001
+From: Paul Pluzhnikov <ppluzhnikov@google.com>
+Date: Sun, 22 Feb 2015 12:01:47 -0800
+Subject: [PATCH] Fix BZ #17269 -- _IO_wstr_overflow integer overflow
+
+---
+ ChangeLog       | 6 ++++++
+ NEWS            | 6 +++---
+ libio/wstrops.c | 8 +++++++-
+ 3 files changed, 16 insertions(+), 4 deletions(-)
+
+diff --git a/libio/wstrops.c b/libio/wstrops.c
+index 43d847d..3993579 100644
+--- a/libio/wstrops.c
++++ b/libio/wstrops.c
+@@ -95,8 +95,11 @@ _IO_wstr_overflow (fp, c)
+ 	  wchar_t *old_buf = fp->_wide_data->_IO_buf_base;
+ 	  size_t old_wblen = _IO_wblen (fp);
+ 	  _IO_size_t new_size = 2 * old_wblen + 100;
+-	  if (new_size < old_wblen)
++
++	  if (__glibc_unlikely (new_size < old_wblen)
++	      || __glibc_unlikely (new_size > SIZE_MAX / sizeof (wchar_t)))
+ 	    return EOF;
++
+ 	  new_buf
+ 	    = (wchar_t *) (*((_IO_strfile *) fp)->_s._allocate_buffer) (new_size
+ 									* sizeof (wchar_t));
+@@ -186,6 +189,9 @@ enlarge_userbuf (_IO_FILE *fp, _IO_off64_t offset, int reading)
+     return 1;
+ 
+   _IO_size_t newsize = offset + 100;
++  if (__glibc_unlikely (newsize > SIZE_MAX / sizeof (wchar_t)))
++    return 1;
++
+   wchar_t *oldbuf = wd->_IO_buf_base;
+   wchar_t *newbuf
+     = (wchar_t *) (*((_IO_strfile *) fp)->_s._allocate_buffer) (newsize
+
diff --git a/pkgs/development/libraries/gnutls/3.3.nix b/pkgs/development/libraries/gnutls/3.3.nix
index bd95ce07254c..1359980e19dd 100644
--- a/pkgs/development/libraries/gnutls/3.3.nix
+++ b/pkgs/development/libraries/gnutls/3.3.nix
@@ -1,10 +1,10 @@
 { callPackage, fetchurl, ... } @ args:
 
 callPackage ./generic.nix (args // rec {
-  version = "3.3.16";
+  version = "3.3.17";
 
   src = fetchurl {
     url = "ftp://ftp.gnutls.org/gcrypt/gnutls/v3.3/gnutls-${version}.tar.lz";
-    sha256 = "1jl5n02mh83ygrrk7rq8vwylv5gdr3wccqs1ynvzr749fd2wq637";
+    sha256 = "00zrwqvy054fymb6j04xfr583javfjxsid2rbmyk63qrbqzm61v7";
   };
 })
diff --git a/pkgs/development/libraries/gnutls/3.4.nix b/pkgs/development/libraries/gnutls/3.4.nix
index 0558e4127c4b..d5f74802fa50 100644
--- a/pkgs/development/libraries/gnutls/3.4.nix
+++ b/pkgs/development/libraries/gnutls/3.4.nix
@@ -1,10 +1,10 @@
 { callPackage, fetchurl, ... } @ args:
 
 callPackage ./generic.nix (args // rec {
-  version = "3.4.3";
+  version = "3.4.4";
 
   src = fetchurl {
     url = "ftp://ftp.gnutls.org/gcrypt/gnutls/v3.4/gnutls-${version}.tar.lz";
-    sha256 = "1q4adb1xi9pl00iy3cqs4r1qmwllv1g1r44p6xsg6n65dpyf53q2";
+    sha256 = "17xazr0fdhlkr13bwiy52xq6z6mssml7q1ydyj8s1hwh68703c75";
   };
 })
diff --git a/pkgs/development/libraries/gnutls/generic.nix b/pkgs/development/libraries/gnutls/generic.nix
index 07760933935a..21fb721a079f 100644
--- a/pkgs/development/libraries/gnutls/generic.nix
+++ b/pkgs/development/libraries/gnutls/generic.nix
@@ -1,5 +1,6 @@
-{ fetchurl, stdenv, autoreconfHook, zlib, lzo, libtasn1, nettle, pkgconfig, lzip
-, guileBindings, guile, perl, gmp, libidn, p11_kit, unbound, trousers
+{ lib, fetchurl, stdenv, zlib, lzo, libtasn1, nettle, pkgconfig, lzip
+, guileBindings, guile, perl, gmp, autogen, libidn, p11_kit, unbound
+, tpmSupport ? false, trousers
 
 # Version dependent args
 , version, src, patches ? []
@@ -7,21 +8,20 @@
 
 assert guileBindings -> guile != null;
 
-let
-  inherit (stdenv.lib) optional optionals optionalString;
-in
 stdenv.mkDerivation rec {
   name = "gnutls-${version}";
 
   inherit src patches;
 
+  outputs = [ "out" "man" ];
+
   configureFlags =
     # FIXME: perhaps use $SSL_CERT_FILE instead
-    optional stdenv.isLinux "--with-default-trust-store-file=/etc/ssl/certs/ca-certificates.crt"
+    lib.optional stdenv.isLinux "--with-default-trust-store-file=/etc/ssl/certs/ca-certificates.crt"
   ++ [
     "--disable-dependency-tracking"
     "--enable-fast-install"
-  ] ++ optionals guileBindings
+  ] ++ lib.optional guileBindings
     [ "--enable-guile" "--with-guile-site-dir=\${out}/share/guile/site" ];
 
   # Build of the Guile bindings is not parallel-safe.  See
@@ -29,26 +29,26 @@ stdenv.mkDerivation rec {
   # for the actual fix.
   enableParallelBuilding = !guileBindings;
 
-  buildInputs = [ lzo lzip nettle libtasn1 libidn p11_kit zlib gmp ]
-    ++ optional stdenv.isLinux trousers
+  buildInputs = [ lzo lzip nettle libtasn1 libidn p11_kit zlib gmp autogen ]
+    ++ lib.optional (tpmSupport && stdenv.isLinux) trousers
     ++ [ unbound ]
-    ++ optional guileBindings guile;
+    ++ lib.optional guileBindings guile;
 
-  nativeBuildInputs = [ perl pkgconfig autoreconfHook ];
+  nativeBuildInputs = [ perl pkgconfig ];
 
   # XXX: Gnulib's `test-select' fails on FreeBSD:
   # http://hydra.nixos.org/build/2962084/nixlog/1/raw .
   doCheck = (!stdenv.isFreeBSD && !stdenv.isDarwin);
 
   # Fixup broken libtool and pkgconfig files
-  preFixup = optionalString (!stdenv.isDarwin) ''
-    sed -e 's,-ltspi,-L${trousers}/lib -ltspi,' \
+  preFixup = lib.optionalString (!stdenv.isDarwin) ''
+    sed ${lib.optionalString tpmSupport "-e 's,-ltspi,-L${trousers}/lib -ltspi,'"} \
         -e 's,-lz,-L${zlib}/lib -lz,' \
         -e 's,-lgmp,-L${gmp}/lib -lgmp,' \
         -i $out/lib/libgnutls.la $out/lib/pkgconfig/gnutls.pc
   '';
 
-  meta = with stdenv.lib; {
+  meta = with lib; {
     description = "The GNU Transport Layer Security Library";
 
     longDescription = ''
diff --git a/pkgs/development/libraries/gperftools/default.nix b/pkgs/development/libraries/gperftools/default.nix
index 8c2feccebb7a..5fa14e64a22f 100644
--- a/pkgs/development/libraries/gperftools/default.nix
+++ b/pkgs/development/libraries/gperftools/default.nix
@@ -10,6 +10,12 @@ stdenv.mkDerivation rec {
 
   buildInputs = [ unzip ] ++ stdenv.lib.optional stdenv.isLinux libunwind;
 
+  prePatch = stdenv.lib.optionalString stdenv.isDarwin ''
+    substituteInPlace Makefile.am --replace stdc++ c++
+    substituteInPlace Makefile.in --replace stdc++ c++
+    substituteInPlace libtool --replace stdc++ c++
+  '';
+
   # some packages want to link to the static tcmalloc_minimal
   # to drop the runtime dependency on gperftools
   dontDisableStatic = true;
diff --git a/pkgs/development/libraries/gsl/default.nix b/pkgs/development/libraries/gsl/default.nix
index 011e4ecd48e3..dbea97a0271e 100644
--- a/pkgs/development/libraries/gsl/default.nix
+++ b/pkgs/development/libraries/gsl/default.nix
@@ -11,10 +11,9 @@ stdenv.mkDerivation rec {
   patches = [
     # ToDo: there might be more impurities than FMA support check
     ./disable-fma.patch # http://lists.gnu.org/archive/html/bug-gsl/2011-11/msg00019.html
-
     (fetchpatch {
       name = "bug-39055.patch";
-      url = "http://git.savannah.gnu.org/cgit/gsl.git/patch/?id=9cc12d0377";
+      url = "http://git.savannah.gnu.org/cgit/gsl.git/patch/?id=9cc12d";
       sha256 = "1bmrmihi28cly9g9pq54kkix2jy59y7cd7h5fw4v1c7h5rc2qvs8";
     })
   ];
diff --git a/pkgs/development/libraries/gssdp/default.nix b/pkgs/development/libraries/gssdp/default.nix
index 792b6d2e4dbc..1a8cb233b77a 100644
--- a/pkgs/development/libraries/gssdp/default.nix
+++ b/pkgs/development/libraries/gssdp/default.nix
@@ -1,14 +1,16 @@
-{stdenv, fetchurl, pkgconfig, libsoup, glib, libxml2}:
+{ stdenv, fetchurl, pkgconfig, libsoup, glib }:
 
 stdenv.mkDerivation {
-  name = "gssdp-0.12.2.1";
+  name = "gssdp-0.14.11";
 
   src = fetchurl {
-    url = mirror://gnome/sources/gssdp/0.14/gssdp-0.14.6.tar.xz;
-    sha256 = "1kgakr0rpdpm7nkp4ycka12nndga16wmzim79v1nbcc0j2wxxkws";
+    url = mirror://gnome/sources/gssdp/0.14/gssdp-0.14.11.tar.xz;
+    sha256 = "0njkqr2y7c6linnw4wkc4y2vq5dfkpryqcinbzn0pzhr46psxxbv";
   };
 
-  buildInputs = [pkgconfig libsoup glib libxml2];
+  nativeBuildInputs = [ pkgconfig ];
+  buildInputs = [ libsoup ];
+  propagatedBuildInputs = [ glib ];
 
   meta = {
     description = "GObject-based API for handling resource discovery and announcement over SSDP";
diff --git a/pkgs/development/libraries/gtk+/3.x.nix b/pkgs/development/libraries/gtk+/3.x.nix
index f83986187270..5fb70ac05ea9 100644
--- a/pkgs/development/libraries/gtk+/3.x.nix
+++ b/pkgs/development/libraries/gtk+/3.x.nix
@@ -10,7 +10,7 @@ assert cupsSupport -> cups != null;
 
 let
   ver_maj = "3.16";
-  ver_min = "5";
+  ver_min = "6";
   version = "${ver_maj}.${ver_min}";
 in
 stdenv.mkDerivation rec {
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "mirror://gnome/sources/gtk+/${ver_maj}/gtk+-${version}.tar.xz";
-    sha256 = "0cdwykh4086f7fl4dkybgpyxyb1jcmxbfin2az42z5pb4z8rjz5q";
+    sha256 = "1gpzlnfrifc17yfk0zki6b2vmsfpf5cmrbh232s6iaan11np44jd";
   };
 
   nativeBuildInputs = [ pkgconfig gettext gobjectIntrospection perl ];
diff --git a/pkgs/development/libraries/gupnp-av/default.nix b/pkgs/development/libraries/gupnp-av/default.nix
index 2dcd5b11c386..789fdcd9c2a7 100644
--- a/pkgs/development/libraries/gupnp-av/default.nix
+++ b/pkgs/development/libraries/gupnp-av/default.nix
@@ -1,21 +1,22 @@
-{ stdenv, fetchurl, gupnp, pkgconfig }:
+{ stdenv, fetchurl, pkgconfig, gupnp, glib, libxml2 }:
 
 stdenv.mkDerivation rec {
   name = "gupnp-av-${version}";
   majorVersion = "0.12";
-  version = "${majorVersion}.4";
+  version = "${majorVersion}.7";
+
   src = fetchurl {
-    url = "mirror://gnome/sources/gupnp-av/${majorVersion}/gupnp-av-${version}.tar.xz";
-    sha256 = "0nvsvpiyfslz54j4hjh2gsdjkbi2qj2f4k0aw8s7f05kibprr2jl";
+    url = "mirror://gnome/sources/gupnp-av/${majorVersion}/${name}.tar.xz";
+    sha256 = "35e775bc4f7801d65dcb710905a6b8420ce751a239b5651e6d830615dc906ea8";
   };
   
-  buildInputs = [ gupnp pkgconfig ];
+  nativeBuildInputs = [ pkgconfig ];
+  buildInputs = [ gupnp glib libxml2 ];
 
   meta = {
     homepage = http://gupnp.org/;
     description = "A collection of helpers for building AV (audio/video) applications using GUPnP";
-    longDescription = "GUPnP implements the UPnP specification: resource announcement and discovery, description, control, event notification, and presentation (GUPnP includes basic web server functionality through libsoup). GUPnP does not include helpers for construction or control of specific standardized resources (e.g. MediaServer); this is left for higher level libraries utilizing the GUPnP framework.";
     license = stdenv.lib.licenses.gpl2;
     platforms = stdenv.lib.platforms.linux;
   };
-}
\ No newline at end of file
+}
diff --git a/pkgs/development/libraries/gupnp-igd/default.nix b/pkgs/development/libraries/gupnp-igd/default.nix
index 20a5f2d9c946..182905e9546a 100644
--- a/pkgs/development/libraries/gupnp-igd/default.nix
+++ b/pkgs/development/libraries/gupnp-igd/default.nix
@@ -1,21 +1,22 @@
-{ stdenv, fetchurl, pkgconfig, glib, gupnp, python, pygobject }:
+{ stdenv, fetchurl, pkgconfig, glib, gupnp }:
  
 stdenv.mkDerivation rec {
-  name = "gupnp-igd-0.2.1";
+  name = "gupnp-igd-${version}";
+  majorVersion = "0.2";
+  version = "${majorVersion}.4";
 
   src = fetchurl {
-    url = https://launchpad.net/ubuntu/+archive/primary/+files/gupnp-igd_0.2.1.orig.tar.gz;
-    sha256 = "18ia8l24hbylz3dnbg2jf848bmbx0hjkq4fkwzzfn57z021f0fh2";
+    url = "mirror://gnome/sources/gupnp-igd/${majorVersion}/${name}.tar.xz";
+    sha256 = "38c4a6d7718d17eac17df95a3a8c337677eda77e58978129ad3182d769c38e44";
   };
 
-  propagatedBuildInputs = [ gupnp ];
-
-  buildInputs = [ glib python pygobject ];
-
   nativeBuildInputs = [ pkgconfig ];
+  propagatedBuildInputs = [ glib gupnp ];
 
   meta = {
     homepage = http://www.gupnp.org/;
+    license = stdenv.lib.licenses.lgpl21;
+    platforms = stdenv.lib.platforms.linux;
   };
 }
 
diff --git a/pkgs/development/libraries/gupnp/default.nix b/pkgs/development/libraries/gupnp/default.nix
index e278980e1e12..6145c8c49477 100644
--- a/pkgs/development/libraries/gupnp/default.nix
+++ b/pkgs/development/libraries/gupnp/default.nix
@@ -1,24 +1,23 @@
-{ stdenv, fetchurl, pkgconfig, glib, libxml2, gssdp, libsoup, libuuid }:
+{ stdenv, fetchurl, pkgconfig, glib, gssdp, libsoup, libxml2, libuuid }:
  
 stdenv.mkDerivation rec {
   name = "gupnp-${version}";
   majorVersion = "0.20";
-  version = "${majorVersion}.9";
+  version = "${majorVersion}.14";
+
   src = fetchurl {
     url = "mirror://gnome/sources/gupnp/${majorVersion}/gupnp-${version}.tar.xz";
-    sha256 = "0vicydn3f72x1rqql7857ans85mg7dfap7n7h8xrfyb9whxhlrb1";
+    sha256 = "77ffb940ba77c4a6426d09d41004c75d92652dcbde86c84ac1c847dbd9ad59bd";
   };
 
-  propagatedBuildInputs = [ libxml2 libsoup gssdp ];
-  buildInputs = [ glib libuuid ];
-
   nativeBuildInputs = [ pkgconfig ];
+  propagatedBuildInputs = [ glib gssdp libsoup libxml2 libuuid ];
 
-  postInstall = '' 
-    cp -r ${libsoup}/include/libsoup-2.4/libsoup $out/include
-    cp -r ${gssdp}/include/gssdp-1.0/libgssdp $out/include
-    cp -r ${libxml2}/include/libxml2/libxml $out/include
-    '';
+  postInstall = ''
+    ln -sv ${libsoup}/include/*/libsoup $out/include
+    ln -sv ${libxml2}/include/*/libxml $out/include
+    ln -sv ${gssdp}/include/*/libgssdp $out/include
+  '';
 
   meta = {
     homepage = http://www.gupnp.org/;
diff --git a/pkgs/development/libraries/harfbuzz/default.nix b/pkgs/development/libraries/harfbuzz/default.nix
index 216bad19790e..866c7f43811f 100644
--- a/pkgs/development/libraries/harfbuzz/default.nix
+++ b/pkgs/development/libraries/harfbuzz/default.nix
@@ -8,13 +8,15 @@
 # (icu is a ~30 MB dependency, the rest is very small in comparison)
 
 stdenv.mkDerivation rec {
-  name = "harfbuzz-0.9.41";
+  name = "harfbuzz-1.0.2";
 
   src = fetchurl {
     url = "http://www.freedesktop.org/software/harfbuzz/release/${name}.tar.bz2";
-    sha256 = "0z05vj3va43adzxn026fpdvdd533q5zrs5dcxaz3gd021hysa6nq";
+    sha256 = "0rmlwfxyzdblnvg72hpfcz2py8rjflx0m08wlvfgq420cpwcmcxy";
   };
 
+  outputs = [ "out" "doc" ];
+
   configureFlags = [
     ( "--with-graphite2=" + (if withGraphite2 then "yes" else "no") ) # not auto-detected by default
     ( "--with-icu=" +       (if withIcu       then "yes" else "no") )
diff --git a/pkgs/development/libraries/htmlcxx/default.nix b/pkgs/development/libraries/htmlcxx/default.nix
new file mode 100644
index 000000000000..63cc74773855
--- /dev/null
+++ b/pkgs/development/libraries/htmlcxx/default.nix
@@ -0,0 +1,20 @@
+{ stdenv, fetchurl }:
+
+stdenv.mkDerivation rec {
+  name = "htmlcxx-${version}";
+  version = "0.85";
+
+  src = fetchurl {
+    url = "mirror://sourceforge/htmlcxx/htmlcxx/${version}/${name}.tar.gz";
+    sha256 = "1rdsjrcjkf7mi3182lq4v5wn2wncw0ziczagaqnzi0nwmp2a00mb";
+  };
+
+  patches = [ ./ptrdiff.patch ];
+
+  meta = {
+    homepage = http://htmlcxx.sourceforge.net/;
+    description = "htmlcxx is a simple non-validating css1 and html parser for C++.";
+    license = stdenv.lib.licenses.lgpl2;
+    platforms = stdenv.lib.platforms.linux;
+  };
+}
diff --git a/pkgs/development/libraries/htmlcxx/ptrdiff.patch b/pkgs/development/libraries/htmlcxx/ptrdiff.patch
new file mode 100644
index 000000000000..6348ba24f8da
--- /dev/null
+++ b/pkgs/development/libraries/htmlcxx/ptrdiff.patch
@@ -0,0 +1,13 @@
+diff -rc htmlcxx-orig-0.85/html/tree.h htmlcxx-0.85/html/tree.h
+*** htmlcxx-orig-0.85/html/tree.h	2015-09-02 13:57:17.988688798 +0200
+--- htmlcxx-0.85/html/tree.h	2015-09-02 13:57:52.737768811 +0200
+***************
+*** 45,50 ****
+--- 45,51 ----
+  #ifndef tree_hh_
+  #define tree_hh_
+  
++ #include <cstddef>
+  #include <cassert>
+  #include <memory>
+  #include <stdexcept>
diff --git a/pkgs/development/libraries/iniparser/default.nix b/pkgs/development/libraries/iniparser/default.nix
index 8d6e0b91ca0a..bd2f328e2577 100644
--- a/pkgs/development/libraries/iniparser/default.nix
+++ b/pkgs/development/libraries/iniparser/default.nix
@@ -2,7 +2,6 @@
 
 let
   inherit (stdenv.lib) optional;
-  isClang = (stdenv.cc.cc.isClang or false);
 in
 stdenv.mkDerivation rec{
   name = "iniparser-3.1";
@@ -15,8 +14,7 @@ stdenv.mkDerivation rec{
   patches = ./no-usr.patch;
 
   # TODO: Build dylib on Darwin
-  buildFlags = (if stdenv.isDarwin then [ "libiniparser.a" ] else [ "libiniparser.so" ])
-    ++ optional isClang "CC=clang";
+  buildFlags = (if stdenv.isDarwin then [ "libiniparser.a" ] else [ "libiniparser.so" ]) ++ [ "CC=cc" ];
 
   installPhase = ''
     mkdir -p $out/lib
diff --git a/pkgs/development/libraries/jemalloc/default.nix b/pkgs/development/libraries/jemalloc/default.nix
index b08f5b7dd762..d40cdf75ad17 100644
--- a/pkgs/development/libraries/jemalloc/default.nix
+++ b/pkgs/development/libraries/jemalloc/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl }:
 
 stdenv.mkDerivation rec {
-  name = "jemalloc-3.6.0";
+  name = "jemalloc-4.0.0";
 
   src = fetchurl {
     url = "http://www.canonware.com/download/jemalloc/${name}.tar.bz2";
-    sha256 = "1zl4vxxjvhg72bdl53sl0idz9wp18c6yzjdmqcnwm09wvmcj2v71";
+    sha256 = "1wiydkp8a4adwsgfsd688hpv2z7hjv5manhckchk96v6qdsbqk91";
   };
 
   meta = with stdenv.lib; {
diff --git a/pkgs/development/libraries/jsoncpp/default.nix b/pkgs/development/libraries/jsoncpp/default.nix
index 8bb1d40b2a90..923d8af59bf6 100644
--- a/pkgs/development/libraries/jsoncpp/default.nix
+++ b/pkgs/development/libraries/jsoncpp/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   name = "jsoncpp-${version}";
-  version = "1.6.2";
+  version = "1.6.5";
 
   src = fetchFromGitHub {
     owner = "open-source-parsers";
     repo = "jsoncpp";
     rev = version;
-    sha256 = "0p92i0hx2k3g8mwrcy339b56bfq8qgpb65id8xllkgd2ns4wi9zi";
+    sha256 = "08y54n4v3q18ik8iv8zyziava3x130ilzf1l3qli3vjwf6l42fm0";
   };
 
   /* During darwin bootstrap, we have a cp that doesn't understand the
diff --git a/pkgs/development/libraries/kerberos/heimdal.nix b/pkgs/development/libraries/kerberos/heimdal.nix
index 159b53b76500..98907da3e421 100644
--- a/pkgs/development/libraries/kerberos/heimdal.nix
+++ b/pkgs/development/libraries/kerberos/heimdal.nix
@@ -78,7 +78,7 @@ stdenv.mkDerivation rec {
   enableParallelBuilding = true;
 
   meta = {
-    description = "an implementation of Kerberos 5 (and some more stuff) largely written in Sweden";
+    description = "An implementation of Kerberos 5 (and some more stuff)";
     license = licenses.bsd3;
     platforms = platforms.linux;
     maintainers = with maintainers; [ wkennington ];
diff --git a/pkgs/development/libraries/kyotocabinet/default.nix b/pkgs/development/libraries/kyotocabinet/default.nix
index 6c4575b4e9d4..6617816b642b 100644
--- a/pkgs/development/libraries/kyotocabinet/default.nix
+++ b/pkgs/development/libraries/kyotocabinet/default.nix
@@ -8,6 +8,18 @@ stdenv.mkDerivation rec {
     sha256 = "0g6js20x7vnpq4p8ghbw3mh9wpqksya9vwhzdx6dnlf354zjsal1";
   };
 
+  prePatch = stdenv.lib.optionalString stdenv.isDarwin ''
+    substituteInPlace kccommon.h \
+      --replace tr1/unordered_map unordered_map \
+      --replace tr1/unordered_set unordered_set \
+      --replace tr1::hash std::hash \
+      --replace tr1::unordered_map std::unordered_map \
+      --replace tr1::unordered_set std::unordered_set
+
+    substituteInPlace lab/kcdict/Makefile --replace stdc++ c++
+    substituteInPlace configure --replace stdc++ c++
+  '';
+
   buildInputs = [ zlib ];
 
   meta = with stdenv.lib; {
diff --git a/pkgs/development/libraries/ldb/default.nix b/pkgs/development/libraries/ldb/default.nix
index b400ff813d29..07d4b0344746 100644
--- a/pkgs/development/libraries/ldb/default.nix
+++ b/pkgs/development/libraries/ldb/default.nix
@@ -3,11 +3,11 @@
 }:
 
 stdenv.mkDerivation rec {
-  name = "ldb-1.1.20";
+  name = "ldb-1.1.21";
 
   src = fetchurl {
     url = "mirror://samba/ldb/${name}.tar.gz";
-    sha256 = "1ckplfvr8rp5y632w5j0abdgkj3irbzjh1wn0yxadnhz4ymknjds";
+    sha256 = "1wfvqys8g3l2gki5xhf5jc50f6k95vdgzb97vvqfls404xzvnyr6";
   };
 
   buildInputs = [
@@ -16,7 +16,6 @@ stdenv.mkDerivation rec {
   ];
 
   preConfigure = ''
-    echo $PYTHONPATH
     sed -i 's,#!/usr/bin/env python,#!${python}/bin/python,g' buildtools/bin/waf
   '';
 
diff --git a/pkgs/development/libraries/ldns/default.nix b/pkgs/development/libraries/ldns/default.nix
index 01aeeecc6f6e..b4dbbf792efa 100644
--- a/pkgs/development/libraries/ldns/default.nix
+++ b/pkgs/development/libraries/ldns/default.nix
@@ -16,9 +16,11 @@ stdenv.mkDerivation rec {
 
   configureFlags = [ "--with-ssl=${openssl}" "--with-drill" ];
 
-  meta = {
+  meta = with stdenv.lib; {
     description = "Library with the aim of simplifying DNS programming in C";
-    license = stdenv.lib.licenses.bsd3;
+    license = licenses.bsd3;
     homepage = "http://www.nlnetlabs.nl/projects/ldns/";
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ jgeerds ];
   };
 }
diff --git a/pkgs/development/libraries/libaacs/default.nix b/pkgs/development/libraries/libaacs/default.nix
index 631c7c778ae2..119a46bfc31d 100644
--- a/pkgs/development/libraries/libaacs/default.nix
+++ b/pkgs/development/libraries/libaacs/default.nix
@@ -8,7 +8,7 @@
 # https://wiki.archlinux.org/index.php/BluRay
 
 let baseName = "libaacs";
-    version  = "0.8.0";
+    version  = "0.8.1";
 in
 
 stdenv.mkDerivation {
@@ -16,7 +16,7 @@ stdenv.mkDerivation {
 
   src = fetchurl {
     url = "http://download.videolan.org/pub/videolan/${baseName}/${version}/${baseName}-${version}.tar.bz2";
-    sha256 = "155sah8z4vbp6j3sq9b17mcn6rj1938ijszz97m8pd2cgif58i2y";
+    sha256 = "1s5v075hnbs57995r6lljm79wgrip3gnyf55a0y7bja75jh49hwm";
   };
 
   buildInputs = [ libgcrypt libgpgerror ];
@@ -24,7 +24,7 @@ stdenv.mkDerivation {
   nativeBuildInputs = [ yacc flex ];
 
   meta = with stdenv.lib; {
-    homepage = http://www.videolan.org/developers/libbluray.html;
+    homepage = https://www.videolan.org/developers/libaacs.html;
     description = "Library to access AACS protected Blu-Ray disks";
     license = licenses.lgpl21;
     maintainers = with maintainers; [ abbradar ];
diff --git a/pkgs/development/libraries/libarchive/default.nix b/pkgs/development/libraries/libarchive/default.nix
index 60777614881d..2a3e740b2e7a 100644
--- a/pkgs/development/libraries/libarchive/default.nix
+++ b/pkgs/development/libraries/libarchive/default.nix
@@ -24,6 +24,10 @@ stdenv.mkDerivation rec {
     echo "#include <windows.h>" >> config.h
   '' else null;
 
+  preFixup = ''
+    sed 's|-lcrypto|-L${openssl}/lib -lcrypto|' -i $out/lib/libarchive.la
+  '';
+
   meta = {
     description = "Multi-format archive and compression library";
     longDescription = ''
diff --git a/pkgs/development/libraries/libassuan/default.nix b/pkgs/development/libraries/libassuan/default.nix
index 5202ad83605c..d874d1e9ef5e 100644
--- a/pkgs/development/libraries/libassuan/default.nix
+++ b/pkgs/development/libraries/libassuan/default.nix
@@ -1,11 +1,11 @@
 { fetchurl, stdenv, pth, libgpgerror }:
 
 stdenv.mkDerivation rec {
-  name = "libassuan-2.2.0";
+  name = "libassuan-2.2.1";
 
   src = fetchurl {
     url = "mirror://gnupg/libassuan/${name}.tar.bz2";
-    sha256 = "1ikf9whfi7rg71qa610ynyv12qrw20zkn7zxgvvr9dp41gbqxxbx";
+    sha256 = "1pp2kl5gc2vja41g3wk03h1hgh7gxy6pj354fb5n4lrlg6xqb4ll";
   };
 
   buildInputs = [ libgpgerror pth ];
diff --git a/pkgs/development/libraries/libaudclient/default.nix b/pkgs/development/libraries/libaudclient/default.nix
new file mode 100644
index 000000000000..c44639d1f392
--- /dev/null
+++ b/pkgs/development/libraries/libaudclient/default.nix
@@ -0,0 +1,20 @@
+{ stdenv, fetchurl, pkgconfig, glib, dbus_glib }:
+
+stdenv.mkDerivation rec {
+  name = "libaudclient-3.5-rc2";
+  version = "3.5-rc2";
+
+  src = fetchurl {
+    url = "http://distfiles.audacious-media-player.org/${name}.tar.bz2";
+    sha256 = "0nhpgz0kg8r00z54q5i96pjk7s57krq3fvdypq496c7fmlv9kdap";
+  };
+
+  buildInputs = [ pkgconfig glib dbus_glib ];
+
+  meta = with stdenv.lib; {
+    description = "Legacy D-Bus client library for Audacious";
+    homepage = http://audacious-media-player.org/;
+    license = licenses.bsd2;
+    maintainers = with maintainers; [ pSub ];
+  };
+}
diff --git a/pkgs/development/libraries/libb2/default.nix b/pkgs/development/libraries/libb2/default.nix
new file mode 100644
index 000000000000..f4d01def94a2
--- /dev/null
+++ b/pkgs/development/libraries/libb2/default.nix
@@ -0,0 +1,18 @@
+{stdenv, fetchurl}:
+with stdenv; with lib;
+mkDerivation rec {
+  name = "libb2-${meta.version}";
+
+  meta = {
+    version = "0.97";
+    description = "The BLAKE2 family of cryptographic hash functions";
+    platforms = platforms.all;
+    maintainers = with maintainers; [ dfoxfranke ];
+    license = licenses.cc0;
+  };
+
+  src = fetchurl {
+    url = "https://blake2.net/${name}.tar.gz";
+    sha256 = "7829c7309347650239c76af7f15d9391af2587b38f0a65c250104a2efef99051";
+  };
+}
diff --git a/pkgs/development/libraries/libbluray/default.nix b/pkgs/development/libraries/libbluray/default.nix
index de0fa1a56d3c..d85712549672 100644
--- a/pkgs/development/libraries/libbluray/default.nix
+++ b/pkgs/development/libraries/libbluray/default.nix
@@ -1,5 +1,5 @@
 { stdenv, fetchurl, pkgconfig, fontconfig, autoreconfHook
-, withJava ? true, jdk ? null, ant ? null
+, withJava ? false, jdk ? null, ant ? null
 , withAACS ? false, libaacs ? null
 , withBDplus ? false, libbdplus ? null
 , withMetadata ? true, libxml2 ? null
@@ -19,12 +19,12 @@ assert withFonts -> freetype != null;
 
 stdenv.mkDerivation rec {
   baseName = "libbluray";
-  version  = "0.8.0";
+  version  = "0.8.1";
   name = "${baseName}-${version}";
 
   src = fetchurl {
     url = "ftp://ftp.videolan.org/pub/videolan/${baseName}/${version}/${name}.tar.bz2";
-    sha256 = "027xbdbsjyp1spfiva2331pzixrzw6vm97xlvgz16hzm5a5j103v";
+    sha256 = "13zvkrwy2fr877gkifgwnqfsb3krbz7hklfcwqfjbhmvqn0cdgnd";
   };
 
   nativeBuildInputs = [ pkgconfig autoreconfHook ]
diff --git a/pkgs/development/libraries/libbson/default.nix b/pkgs/development/libraries/libbson/default.nix
new file mode 100644
index 000000000000..6d64df88d3f1
--- /dev/null
+++ b/pkgs/development/libraries/libbson/default.nix
@@ -0,0 +1,23 @@
+{ autoconf, automake114x, fetchzip, libtool, perl, stdenv, which }:
+
+let
+  version = "1.1.10";
+in
+
+stdenv.mkDerivation rec {
+  name = "libbson-${version}";
+
+  src = fetchzip {
+    url = "https://github.com/mongodb/libbson/releases/download/${version}/libbson-${version}.tar.gz";
+    sha256 = "0zzca7zqvxf89fq7ji9626q8nnqyyh0dnmbk4xijzr9sq485xz0s";
+  };
+
+  buildInputs = [ autoconf automake114x libtool perl which ];
+
+  meta = with stdenv.lib; {
+    description = "A C Library for parsing, editing, and creating BSON documents";
+    homepage = "https://github.com/mongodb/libbson";
+    license = licenses.asl20;
+    platforms = platforms.all;
+  };
+}
diff --git a/pkgs/development/libraries/libcanberra/default.nix b/pkgs/development/libraries/libcanberra/default.nix
index 2510e3b86212..b441719d31cd 100644
--- a/pkgs/development/libraries/libcanberra/default.nix
+++ b/pkgs/development/libraries/libcanberra/default.nix
@@ -16,6 +16,12 @@ stdenv.mkDerivation rec {
 
   configureFlags = "--disable-oss";
 
+  postInstall = ''
+    for f in $out/lib/*.la; do
+      sed 's|-lltdl|-L${libtool}/lib -lltdl|' -i $f
+    done
+  '';
+
   passthru = {
     gtkModule = "/lib/gtk-2.0/";
   };
diff --git a/pkgs/development/libraries/libcec/default.nix b/pkgs/development/libraries/libcec/default.nix
index 6eca14767c5a..94b483e1f5de 100644
--- a/pkgs/development/libraries/libcec/default.nix
+++ b/pkgs/development/libraries/libcec/default.nix
@@ -1,16 +1,18 @@
-{ stdenv, fetchurl, autoreconfHook, pkgconfig, udev }:
+{ stdenv, fetchurl, cmake, pkgconfig, udev, libcec_platform }:
 
-let version = "2.2.0"; in
+let version = "3.0.1"; in
 
 stdenv.mkDerivation {
   name = "libcec-${version}";
 
   src = fetchurl {
-    url = "https://github.com/Pulse-Eight/libcec/archive/libcec-${version}-repack.tar.gz";
-    sha256 = "1kdfak8y96v14d5vp2apkjjs0fvvim9phc0nkhlq5pjlagk8v32x";
+    url = "https://github.com/Pulse-Eight/libcec/archive/libcec-${version}.tar.gz";
+    sha256 = "0gi5gq8pz6vfdx80pimx23d5g243zzgmc7s8wpb686csjk470dky";
   };
 
-  buildInputs = [ autoreconfHook pkgconfig udev ];
+  buildInputs = [ cmake pkgconfig udev libcec_platform ];
+
+  cmakeFlags = [ "-DBUILD_SHARED_LIBS=1" ];
 
   # Fix dlopen path
   patchPhase = ''
diff --git a/pkgs/development/libraries/libcec/platform.nix b/pkgs/development/libraries/libcec/platform.nix
new file mode 100644
index 000000000000..6db2656c9f41
--- /dev/null
+++ b/pkgs/development/libraries/libcec/platform.nix
@@ -0,0 +1,23 @@
+{ stdenv, fetchurl, cmake }:
+
+let version = "1.0.10"; in
+
+stdenv.mkDerivation {
+  name = "libcec-${version}";
+
+  src = fetchurl {
+    url = "https://github.com/Pulse-Eight/platform/archive/${version}.tar.gz";
+    sha256 = "1kdmi9b62nky4jrb5519ddnw5n7s7m6qyj7rzhg399f0n6f278vb";
+  };
+
+  nativeBuildInputs = [ cmake ];
+
+  meta = with stdenv.lib; {
+    description = "Platform library for libcec and Kodi addons";
+    homepage = "https://github.com/Pulse-Eight/platform";
+    repositories.git = "https://github.com/Pulse-Eight/libcec.git";
+    license = stdenv.lib.licenses.gpl2Plus;
+    platforms = platforms.linux;
+    maintainers = [ maintainers.titanous ];
+  };
+}
diff --git a/pkgs/development/libraries/libchamplain/default.nix b/pkgs/development/libraries/libchamplain/default.nix
index 1a3c33eb80a7..f0b4a1064fe7 100644
--- a/pkgs/development/libraries/libchamplain/default.nix
+++ b/pkgs/development/libraries/libchamplain/default.nix
@@ -13,8 +13,6 @@ stdenv.mkDerivation rec {
 
   propagatedBuildInputs = [ glib gtk3 cairo clutter_gtk sqlite libsoup ];
 
-  configureFlags = [ "--disable-introspection" ]; # not needed anywhere AFAIK
-
   meta = {
     homepage = http://projects.gnome.org/libchamplain/;
     license = stdenv.lib.licenses.lgpl2Plus;
diff --git a/pkgs/development/libraries/libchardet/default.nix b/pkgs/development/libraries/libchardet/default.nix
index f7834c56b63a..6fc17256a390 100644
--- a/pkgs/development/libraries/libchardet/default.nix
+++ b/pkgs/development/libraries/libchardet/default.nix
@@ -4,7 +4,7 @@ stdenv.mkDerivation rec {
   name = "libchardet-1.0.4";
   
   src = fetchurl {
-    url = "ftp://ftp.oops.org/pub/oops/libchardet/${name}.tar.bz2";
+    url = "http://yupmin.net/wp-content/uploads/2014/03/libchardet-1.0.4.tar.bz2";
     sha256 = "0cvwba4la25qw70ap8jd5r743a9jshqd26nnbh5ph68zj1imlgzl";
   };
 
diff --git a/pkgs/development/libraries/libcli/default.nix b/pkgs/development/libraries/libcli/default.nix
index bbeb75d0b8dd..a6d564d92946 100644
--- a/pkgs/development/libraries/libcli/default.nix
+++ b/pkgs/development/libraries/libcli/default.nix
@@ -1,7 +1,7 @@
 { stdenv, fetchFromGitHub }:
 
 let version = "1.9.7"; in
-stdenv.mkDerivation rec {
+stdenv.mkDerivation {
   name = "libcli-${version}";
 
   src = fetchFromGitHub {
diff --git a/pkgs/development/libraries/libcouchbase/default.nix b/pkgs/development/libraries/libcouchbase/default.nix
index bcc9e9f673f1..2784cd90a5c6 100644
--- a/pkgs/development/libraries/libcouchbase/default.nix
+++ b/pkgs/development/libraries/libcouchbase/default.nix
@@ -1,23 +1,16 @@
-{ stdenv, fetchgit, autoconf, automake, libtool,
-pkgconfig, perl, git, libevent, openssl}:
+{ stdenv, fetchurl, cmake, pkgconfig, libevent, openssl}:
 
 stdenv.mkDerivation {
-  name = "libcouchbase-2.4.4";
-  src = fetchgit {
-    url = "https://github.com/couchbase/libcouchbase.git";
-    rev = "4410eebcd813844b6cd6f9c7eeb4ab3dfa2ab8ac";
-    sha256 = "02lzv5l6fvnqr2l9bqfha0pzkzlzjfddn3w5zcbjz36kw4p2p4h9";
-    leaveDotGit = true;
+  name = "libcouchbase-2.5.2";
+  src = fetchurl {
+    url = "https://github.com/couchbase/libcouchbase/archive/2.5.2.tar.gz";
+    sha256 = "0ka1hix38a2kdhxz6n8frssyznf78ra0irga9d8lr5683y73xw24";
   };
 
-  preConfigure = ''
-    patchShebangs ./config/
-    ./config/autorun.sh
-  '';
+  cmakeFlags = "-DLCB_NO_MOCK=ON";
 
-  configureFlags = "--disable-couchbasemock";
-
-  buildInputs = [ autoconf automake libtool pkgconfig perl git libevent openssl];
+  nativeBuildInputs = [ cmake pkgconfig ];
+  buildInputs = [ libevent openssl];
 
   meta = {
     description = "C client library for Couchbase";
diff --git a/pkgs/development/libraries/libdmtx/default.nix b/pkgs/development/libraries/libdmtx/default.nix
index 8d7049dc29ab..26cf2c023ebd 100644
--- a/pkgs/development/libraries/libdmtx/default.nix
+++ b/pkgs/development/libraries/libdmtx/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, pkgconfig, imagemagick }:
+{ stdenv, fetchurl, pkgconfig }:
 
 stdenv.mkDerivation rec {
   name = "libdmtx-0.7.4";
@@ -10,8 +10,6 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ pkgconfig ];
 
-  propagatedBuildInputs = [ imagemagick ];
-
   meta = {
     description = "An open source software for reading and writing Data Matrix barcodes";
     homepage = http://libdmtx.org;
diff --git a/pkgs/development/libraries/libdrm/default.nix b/pkgs/development/libraries/libdrm/default.nix
index 775a8f920472..2323a4237003 100644
--- a/pkgs/development/libraries/libdrm/default.nix
+++ b/pkgs/development/libraries/libdrm/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl, pkgconfig, libpthreadstubs, libpciaccess, udev, valgrind }:
 
 stdenv.mkDerivation rec {
-  name = "libdrm-2.4.62";
+  name = "libdrm-2.4.64";
 
   src = fetchurl {
     url = "http://dri.freedesktop.org/libdrm/${name}.tar.bz2";
-    sha256 = "906c294bdbe1c94c3ca084305d61a6e5a8367f3b4986e6cc13b1e9b3f75931dc";
+    sha256 = "1dilm6cwqfx9plf3i5kkaf6m5v1zyrcadqbcjsrsshkfgpz8c1xn";
   };
 
   nativeBuildInputs = [ pkgconfig ];
diff --git a/pkgs/development/libraries/libevent/1.4.nix b/pkgs/development/libraries/libevent/1.4.nix
deleted file mode 100644
index ed190bf60615..000000000000
--- a/pkgs/development/libraries/libevent/1.4.nix
+++ /dev/null
@@ -1,29 +0,0 @@
-{stdenv, fetchurl}:
-
-let version = "1.4.14b"; in
-stdenv.mkDerivation {
-  name = "libevent-${version}";
-
-  src = fetchurl {
-    url = "https://github.com/downloads/libevent/libevent/libevent-${version}-stable.tar.gz";
-    sha256 = "00b3wih3qpcik6v0qh1406abs2xb954d58ncqwzs8ar2d93ip9mg";
-  };
-
-  meta = {
-    description = "libevent, an event notification library";
-
-    longDescription =
-      '' The libevent API provides a mechanism to execute a callback function
-         when a specific event occurs on a file descriptor or after a timeout
-         has been reached.  Furthermore, libevent also support callbacks due
-         to signals or regular timeouts.
-
-         libevent is meant to replace the event loop found in event driven
-         network servers.  An application just needs to call event_dispatch()
-         and then add or remove events dynamically without having to change
-         the event loop.
-      '';
-
-    license = "mBSD";
-  };
-}
diff --git a/pkgs/development/libraries/libevent/default.nix b/pkgs/development/libraries/libevent/default.nix
index 19878a24e956..284a09bc9275 100644
--- a/pkgs/development/libraries/libevent/default.nix
+++ b/pkgs/development/libraries/libevent/default.nix
@@ -1,14 +1,12 @@
-{ stdenv, fetchFromGitHub, autoreconfHook, python, findutils }:
+{ stdenv, fetchurl, autoreconfHook, python, findutils }:
 
 let version = "2.0.22"; in
 stdenv.mkDerivation {
   name = "libevent-${version}";
 
-  src = fetchFromGitHub {
-    owner = "libevent";
-    repo = "libevent";
-    rev = "release-${version}-stable";
-    sha256 = "1x2437af9j870i7l37dav1i2g9z93lbz406kyimx4nq5qcx5463p";
+  src = fetchurl {
+    url = "mirror://sourceforge/levent/libevent-${version}-stable.tar.gz";
+    sha256 = "18qz9qfwrkakmazdlwxvjmw8p76g70n3faikwvdwznns1agw9hki";
   };
 
   nativeBuildInputs = [ autoreconfHook ];
diff --git a/pkgs/development/libraries/libgdata/0.6.nix b/pkgs/development/libraries/libgdata/0.6.nix
deleted file mode 100644
index 4ce95505f8fc..000000000000
--- a/pkgs/development/libraries/libgdata/0.6.nix
+++ /dev/null
@@ -1,51 +0,0 @@
-x@{builderDefsPackage
-  , glib, libsoup, libxml2, pkgconfig, intltool, perl
-  , libtasn1, nettle, gmp
-  , ...}:
-builderDefsPackage
-(a :  
-let 
-  helperArgNames = ["stdenv" "fetchurl" "builderDefsPackage"] ++ 
-    [];
-
-  buildInputs = map (n: builtins.getAttr n x)
-    (builtins.attrNames (builtins.removeAttrs x helperArgNames));
-  sourceInfo = rec {
-    baseName="libgdata";
-    majorVersion="0.6";
-    minorVersion="6";
-    version="${majorVersion}.${minorVersion}";
-    name="${baseName}-${version}";
-    url="mirror://gnome/sources/${baseName}/${majorVersion}/${name}.tar.bz2";
-    hash="cf6de3b60443faaf8e9c3b4c4b160c22a48df7925c1c793a7bb71d3d746f69f5";
-  };
-in
-rec {
-  src = a.fetchurl {
-    url = sourceInfo.url;
-    sha256 = sourceInfo.hash;
-  };
-
-  inherit (sourceInfo) name version;
-  inherit buildInputs;
-
-  /* doConfigure should be removed if not needed */
-  phaseNames = ["doConfigure" "doMakeInstall"];
-      
-  meta = {
-    description = "GData API library";
-    maintainers = with a.lib.maintainers;
-    [
-      raskin
-    ];
-    platforms = with a.lib.platforms;
-      linux;
-    license = a.lib.licenses.lgpl21Plus;
-  };
-  passthru = {
-    updateInfo = {
-      downloadPage = "http://ftp.gnome.org/pub/GNOME/sources/${sourceInfo.baseName}/${sourceInfo.majorVersion}";
-    };
-  };
-}) x
-
diff --git a/pkgs/development/libraries/libgphoto2/default.nix b/pkgs/development/libraries/libgphoto2/default.nix
index 9583696df43e..2fdf3d5e69bb 100644
--- a/pkgs/development/libraries/libgphoto2/default.nix
+++ b/pkgs/development/libraries/libgphoto2/default.nix
@@ -5,7 +5,7 @@ stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "mirror://sourceforge/gphoto/${name}.tar.bz2";
-    sha256 = "154qs3j1k72xn8p5vgjcwvywkskxz0j145cgvlcw7d5xfwr1jq3j";
+    sha256 = "1di7iv2r5ghzrylfbpvp694gpqbwjj3ngrmg4kvl7big6hp2c6h3";
   };
 
   nativeBuildInputs = [ pkgconfig gettext ];
@@ -22,7 +22,7 @@ stdenv.mkDerivation rec {
       MTP, and other vendor specific protocols for controlling and transferring data
       from digital cameras.
     '';
-    version = "2.5.7";
+    version = "2.5.8";
     # XXX: the homepage claims LGPL, but several src files are lgpl21Plus
     license = stdenv.lib.licenses.lgpl21Plus;
     platforms = with stdenv.lib.platforms; unix;
diff --git a/pkgs/development/libraries/libgsf/default.nix b/pkgs/development/libraries/libgsf/default.nix
index d08e4c231f5a..b7e774b52235 100644
--- a/pkgs/development/libraries/libgsf/default.nix
+++ b/pkgs/development/libraries/libgsf/default.nix
@@ -4,11 +4,11 @@
 with { inherit (stdenv.lib) optionals; };
 
 stdenv.mkDerivation rec {
-  name = "libgsf-1.14.32";
+  name = "libgsf-1.14.34";
 
   src = fetchurl {
     url    = "mirror://gnome/sources/libgsf/1.14/${name}.tar.xz";
-    sha256 = "13bf38b848c01e20eb89a48150b6f864434ee4dfbb6301ddf6f4080a36cd99e9";
+    sha256 = "f0fea447e0374a73df45b498fd1701393f8e6acb39746119f8a292fb4a0cb528";
   };
 
   nativeBuildInputs = [ pkgconfig intltool ];
diff --git a/pkgs/development/libraries/libiberty/default.nix b/pkgs/development/libraries/libiberty/default.nix
index eddc4eed55c0..6a68b5610da2 100644
--- a/pkgs/development/libraries/libiberty/default.nix
+++ b/pkgs/development/libraries/libiberty/default.nix
@@ -1,12 +1,12 @@
 { stdenv, fetchurl }:
 
 stdenv.mkDerivation rec {
-  version = "4.8.4";
+  version = "4.9.3";
   name = "libiberty-${version}";
 
   src = fetchurl {
     url = "mirror://gnu/gcc/gcc-${version}/gcc-${version}.tar.bz2";
-    sha256 = "15c6gwm6dzsaagamxkak5smdkf1rdfbqqjs9jdbrp3lbg4ism02a";
+    sha256 = "0zmnm00d2a1hsd41g34bhvxzvxisa2l584q3p447bd91lfjv4ci3";
   };
 
   postUnpack = "sourceRoot=\${sourceRoot}/libiberty";
diff --git a/pkgs/development/libraries/libidn/default.nix b/pkgs/development/libraries/libidn/default.nix
index 4c781da63083..21013d2e072a 100644
--- a/pkgs/development/libraries/libidn/default.nix
+++ b/pkgs/development/libraries/libidn/default.nix
@@ -1,11 +1,11 @@
 { fetchurl, stdenv }:
 
 stdenv.mkDerivation rec {
-  name = "libidn-1.31";
+  name = "libidn-1.32";
 
   src = fetchurl {
     url = "mirror://gnu/libidn/${name}.tar.gz";
-    sha256 = "026z12mczlag443ms9n954h36pi3m7iva9jfw8y4ispsj772zpxg";
+    sha256 = "1xf4hphhahcjm2xwx147lfpsavjwv9l4c2gf6hx71zxywbz5lpds";
   };
 
   doCheck = ! stdenv.isDarwin;
diff --git a/pkgs/development/libraries/libinput/default.nix b/pkgs/development/libraries/libinput/default.nix
index f02b0af82708..528ef71cda48 100644
--- a/pkgs/development/libraries/libinput/default.nix
+++ b/pkgs/development/libraries/libinput/default.nix
@@ -1,6 +1,6 @@
 { stdenv, fetchurl, pkgconfig
 , libevdev, mtdev, udev
-, documentationSupport ? true, doxygen ? null, graphviz ? null # Documentation
+, documentationSupport ? false, doxygen ? null, graphviz ? null # Documentation
 , eventGUISupport ? false, cairo ? null, glib ? null, gtk3 ? null # GUI event viewer support
 , testsSupport ? false, check ? null, valgrind ? null
 }:
@@ -15,11 +15,11 @@ in
 
 with stdenv.lib;
 stdenv.mkDerivation rec {
-  name = "libinput-0.20.0";
+  name = "libinput-0.21.0";
 
   src = fetchurl {
     url = "http://www.freedesktop.org/software/libinput/${name}.tar.xz";
-    sha256 = "0p8jswag33qjjxd8766hzk460bzhzhw32b6hl2i17aygjz7dynqp";
+    sha256 = "0l7mhdr50g11hxg2pz8ihsgzbm0810syj05d3555rzhda6g7mkkw";
   };
 
   configureFlags = [
diff --git a/pkgs/development/libraries/libixp-hg/default.nix b/pkgs/development/libraries/libixp-hg/default.nix
new file mode 100644
index 000000000000..456e1de25dfc
--- /dev/null
+++ b/pkgs/development/libraries/libixp-hg/default.nix
@@ -0,0 +1,27 @@
+{ stdenv, fetchhg, txt2tags }:
+
+stdenv.mkDerivation rec {
+  rev = "148";
+  version = "hg-2012-12-02";
+  name = "libixp-${version}";
+
+  src = fetchhg {
+    url = https://code.google.com/p/libixp/;
+    sha256 = "1nbnh2ff18fsrs28mx4bfgncq1d1nw5dd6iwhwvv5x2g9w7q5vvj";
+    inherit rev;
+  };
+
+  configurePhase = ''
+   sed -i -e "s|^PREFIX.*=.*$|PREFIX = $out|" config.mk
+  '';
+
+  buildInputs = [ txt2tags ];
+
+  meta = {
+    homepage = https://code.google.com/p/libixp/;
+    description = "Portable, simple C-language 9P client and server libary";
+    maintainers = with stdenv.lib.maintainers; [ kovirobi ];
+    license = stdenv.lib.licenses.mit;
+    inherit version;
+  };
+}
diff --git a/pkgs/development/libraries/libixp_for_wmii/default.nix b/pkgs/development/libraries/libixp_for_wmii/default.nix
deleted file mode 100644
index cbe9e20f0b1b..000000000000
--- a/pkgs/development/libraries/libixp_for_wmii/default.nix
+++ /dev/null
@@ -1,26 +0,0 @@
-args: with args;
-stdenv.mkDerivation {
-  name = "libixp_for_wmii-0.4";
-  phases = "unpackPhase installPhase";
-  installPhase = "
-     export LDFLAGS\=$(echo \$NIX_LDFLAGS | sed -e 's/-rpath/-L/g')
-     sed -i -e \"s%^PREFIX.*%PREFIX=\$out%\" \\
-            -e \"s%^\\(INCLUDE.*\\)%\\1 \$NIX_CFLAGS_COMPILE%\" \\
-            -e \"s%^\\(LIBS.*\\)%\\1 \$LDFLAGS%\" \\
-            config.mk
-     make
-     mkdir -p \$out/include
-     cp -r include/*.h \$out/include
-     cp -r lib \$out
-  ";
-  src = fetchurl {
-    url = http://dl.suckless.org/libs/libixp-0.4.tar.gz;
-    sha256 = "0b44p9wvmzxpyf2xd86rxyr49bmfh9cd5hj3d234gkvynvgph60p";
-  };
-
-  meta = {
-    homepage = http://libs.suckless.org/libixp;
-    description = "stand-alone client/server 9P library";
-    license = with stdenv.lib.licenses; [ mit lpl-102 ];
-  };
-}
diff --git a/pkgs/development/libraries/libkolab/default.nix b/pkgs/development/libraries/libkolab/default.nix
deleted file mode 100644
index 3475b22d26d4..000000000000
--- a/pkgs/development/libraries/libkolab/default.nix
+++ /dev/null
@@ -1,25 +0,0 @@
-{ stdenv, fetchurl,
- cmake, qt4, clucene_core, librdf_redland, libiodbc
-, pkgconfig }:
-
-stdenv.mkDerivation rec {
-  name = "libkolab-0.4.2";
-
-  src = fetchurl {
-    url = "http://mirror.kolabsys.com/pub/releases/${name}.tar.gz";
-    sha256 = "1wdbg42s14p472dn35n6z638i6n64f6mjjxmjam1r54pzsdykks6";
-  };
-
-  # We disable the Java backend, since we do not need them and they make the closure size much bigger
-#  buildInputs = [ qt4 clucene_core librdf_redland libiodbc ];
-
-  nativeBuildInputs = [ cmake ];
-
-  meta = {
-    homepage = http://soprano.sourceforge.net/;
-    description = "An object-oriented C++/Qt4 framework for RDF data";
-    license = "LGPL";
-    maintainers = with stdenv.lib.maintainers; [ phreedo ];
-    inherit (qt4.meta) platforms;
-  };
-}
diff --git a/pkgs/development/libraries/libkolabxml/default.nix b/pkgs/development/libraries/libkolabxml/default.nix
deleted file mode 100644
index c0217abd7863..000000000000
--- a/pkgs/development/libraries/libkolabxml/default.nix
+++ /dev/null
@@ -1,25 +0,0 @@
-{ stdenv, fetchurl, boost, curl, cmake, xercesc, qt4
-#, qt4, clucene_core, librdf_redland, libiodbc
-, pkgconfig }:
-
-stdenv.mkDerivation rec {
-  name = "libkolabxml-0.8.4";
-
-  src = fetchurl {
-    url = "http://mirror.kolabsys.com/pub/releases/${name}.tar.gz";
-    sha256 = "08gdhimnrhizpbvddj7cyz4jwwxrx5a70vz29cy989qgym2vn72q";
-  };
-
-  buildInputs = [ boost curl xercesc ];
-#  buildInputs = [ qt4 clucene_core librdf_redland libiodbc ];
-
-  nativeBuildInputs = [ cmake ];
-
-  meta = {
-    homepage = http://soprano.sourceforge.net/;
-    description = "An object-oriented C++/Qt4 framework for RDF data";
-    license = "LGPL";
-    maintainers = with stdenv.lib.maintainers; [ phreedo ];
-    inherit (qt4.meta) platforms;
-  };
-}
diff --git a/pkgs/development/libraries/libmediainfo/default.nix b/pkgs/development/libraries/libmediainfo/default.nix
index 5349026085f4..dd17f7a4c008 100644
--- a/pkgs/development/libraries/libmediainfo/default.nix
+++ b/pkgs/development/libraries/libmediainfo/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl, automake, autoconf, libtool, pkgconfig, libzen, zlib }:
 
 stdenv.mkDerivation rec {
-  version = "0.7.75";
+  version = "0.7.77";
   name = "libmediainfo-${version}";
   src = fetchurl {
     url = "http://mediaarea.net/download/source/libmediainfo/${version}/libmediainfo_${version}.tar.xz";
-    sha256 = "1im39kd595ia6g41qvwgvszn1s10nwa3q5r2lj2g5fm4kgi0dwhr";
+    sha256 = "1znxdn1jpqkiwshq9s514ak1z9wkrh9flky4s3q8z2xl68jpralq";
   };
 
   buildInputs = [ automake autoconf libtool pkgconfig libzen zlib ];
@@ -13,7 +13,7 @@ stdenv.mkDerivation rec {
   sourceRoot = "./MediaInfoLib/Project/GNU/Library/";
 
   configureFlags = [ "--enable-shared" ];
-  preConfigure = "sh autogen";
+  preConfigure = "sh autogen.sh";
 
   postInstall = ''
     install -vD -m 644 libmediainfo.pc "$out/lib/pkgconfig/libmediainfo.pc"
diff --git a/pkgs/development/libraries/libmtp/default.nix b/pkgs/development/libraries/libmtp/default.nix
index 938c995e755b..13b405019336 100644
--- a/pkgs/development/libraries/libmtp/default.nix
+++ b/pkgs/development/libraries/libmtp/default.nix
@@ -1,7 +1,7 @@
 { stdenv, fetchurl, pkgconfig, libusb1 }:
 
 stdenv.mkDerivation rec {
-  name = "libmtp-1.1.8";
+  name = "libmtp-1.1.9";
 
   propagatedBuildInputs = [ libusb1 ];
   buildInputs = [ pkgconfig ];
@@ -11,7 +11,7 @@ stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "mirror://sourceforge/libmtp/${name}.tar.gz";
-    sha256 = "10i2vnj8r6hyd61xgyhmxbsissq971g50fhm1h6mc3m4d99qg7iz";
+    sha256 = "12dinqic0ljnhrwx3rc61jc7q24ybr0mckc2ya5kh1s1np0d7w93";
   };
 
   meta = {
diff --git a/pkgs/development/libraries/libnice/default.nix b/pkgs/development/libraries/libnice/default.nix
index 4ccb7d4df8ba..003b2acc9209 100644
--- a/pkgs/development/libraries/libnice/default.nix
+++ b/pkgs/development/libraries/libnice/default.nix
@@ -1,14 +1,16 @@
-{ stdenv, fetchurl, pkgconfig, glib, gupnp_igd, gstreamer, gst_plugins_base }:
+{ stdenv, fetchurl, pkgconfig, glib, gupnp_igd, gst_all_1 }:
 
 stdenv.mkDerivation rec {
-  name = "libnice-0.1.4";
+  name = "libnice-0.1.13";
 
   src = fetchurl {
     url = "http://nice.freedesktop.org/releases/${name}.tar.gz";
-    sha256 = "0mxzr3y91hkjxdz1mzhxwi59la86hw2rzmd3y9c32801kkg1gra4";
+    sha256 = "1q8rhklbz1zla67r4mw0f7v3m5b32maj0prnr0kshcz97fgjs4b1";
   };
 
-  buildInputs = [ pkgconfig glib gupnp_igd gstreamer gst_plugins_base ];
+  nativeBuildInputs = [ pkgconfig ];
+  buildInputs = [ gst_all_1.gstreamer gst_all_1.gst-plugins-base ];
+  propagatedBuildInputs = [ glib gupnp_igd ];
 
   meta = {
     homepage = http://nice.freedesktop.org/wiki/;
diff --git a/pkgs/development/libraries/liboauth/default.nix b/pkgs/development/libraries/liboauth/default.nix
index 3cb9629e3e1b..8f46d1c0bfd2 100644
--- a/pkgs/development/libraries/liboauth/default.nix
+++ b/pkgs/development/libraries/liboauth/default.nix
@@ -1,4 +1,4 @@
-{ fetchurl, stdenv, nss, openssl, pkgconfig }:
+{ fetchurl, stdenv, nss, nspr, pkgconfig }:
 
 
 stdenv.mkDerivation rec {
@@ -9,7 +9,9 @@ stdenv.mkDerivation rec {
     sha256 = "07w1aq8y8wld43wmbk2q8134p3bfkp2vma78mmsfgw2jn1bh3xhd";
   };
 
-  buildInputs = [ nss openssl ];
+  buildInputs = [ pkgconfig nss nspr ];
+
+  configureFlags = [ "--enable-nss" ];
 
   meta = with stdenv.lib; {
     platforms = platforms.linux;
diff --git a/pkgs/development/libraries/libogg/default.nix b/pkgs/development/libraries/libogg/default.nix
index 57b8b2fc66ec..4e0178404720 100644
--- a/pkgs/development/libraries/libogg/default.nix
+++ b/pkgs/development/libraries/libogg/default.nix
@@ -8,6 +8,8 @@ stdenv.mkDerivation rec {
     sha256 = "16z74q422jmprhyvy7c9x909li8cqzmvzyr8cgbm52xcsp6pqs1z";
   };
 
+  outputs = [ "out" "doc" ];
+
   meta = with stdenv.lib; {
     homepage = http://xiph.org/ogg/;
     license = licenses.bsd3;
diff --git a/pkgs/development/libraries/libpcap/default.nix b/pkgs/development/libraries/libpcap/default.nix
index 9ed1aab40346..b8985bbed82f 100644
--- a/pkgs/development/libraries/libpcap/default.nix
+++ b/pkgs/development/libraries/libpcap/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl, flex, bison }:
 
 stdenv.mkDerivation rec {
-  name = "libpcap-1.5.3";
+  name = "libpcap-1.7.4";
   
   src = fetchurl {
     url = "http://www.tcpdump.org/release/${name}.tar.gz";
-    sha256 = "14wyjywrdi1ikaj6yc9c72m6m2r64z94lb0gm7k1a3q6q5cj3scs";
+    sha256 = "1c28ykkizd7jqgzrfkg7ivqjlqs9p6lygp26bsw2i0z8hwhi3lvs";
   };
   
   nativeBuildInputs = [ flex bison ];
@@ -17,6 +17,10 @@ stdenv.mkDerivation rec {
     else if stdenv.isDarwin then [ "--with-pcap=bpf" ]
     else [];
 
+  prePatch = stdenv.lib.optionalString stdenv.isDarwin ''
+    substituteInPlace configure --replace " -arch i386" ""
+  '';
+
   preInstall = ''mkdir -p $out/bin'';
   
   crossAttrs = {
diff --git a/pkgs/development/libraries/libpipeline/default.nix b/pkgs/development/libraries/libpipeline/default.nix
index 2213ea2e8b94..3f91540dc80b 100644
--- a/pkgs/development/libraries/libpipeline/default.nix
+++ b/pkgs/development/libraries/libpipeline/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl }:
  
 stdenv.mkDerivation rec {
-  name = "libpipeline-1.4.0";
+  name = "libpipeline-1.4.1";
   
   src = fetchurl {
     url = "mirror://savannah/libpipeline/${name}.tar.gz";
-    sha256 = "1dlvp2mxlhg5zbj509kc60h7g39hpgwkzkpdf855cyzizgkmkivr";
+    sha256 = "1vmrs4nvdsmb550bk10cankrd42ffczlibpsnafxpak306rdfins";
   };
 
   meta = with stdenv.lib; {
diff --git a/pkgs/development/libraries/libpng/12.nix b/pkgs/development/libraries/libpng/12.nix
index fae6f9ba5564..3071aa3fdfca 100644
--- a/pkgs/development/libraries/libpng/12.nix
+++ b/pkgs/development/libraries/libpng/12.nix
@@ -1,19 +1,17 @@
-{ stdenv, fetchurl, zlib, xz }:
+{ stdenv, fetchurl, zlib }:
 
 assert !(stdenv ? cross) -> zlib != null;
 
 stdenv.mkDerivation rec {
-  name = "libpng-1.2.51";
+  name = "libpng-1.2.53";
 
   src = fetchurl {
     url = "mirror://sourceforge/libpng/${name}.tar.xz";
-    sha256 = "0jkdlmnvn72jwm94dp98pznm9fy7alvcr2zpfh2dgbr2n09vimy7";
+    sha256 = "02jwfqk1ahqfvbs9gdyb5v0123by9ws6m7jnfvainig7i7v4jpml";
   };
 
   propagatedBuildInputs = [ zlib ];
 
-  nativeBuildInputs = [ xz ];
-
   passthru = { inherit zlib; };
 
   crossAttrs = stdenv.lib.optionalAttrs (stdenv.cross.libc == "libSystem") {
diff --git a/pkgs/development/libraries/libpng/15.nix b/pkgs/development/libraries/libpng/15.nix
deleted file mode 100644
index 177c534ffafb..000000000000
--- a/pkgs/development/libraries/libpng/15.nix
+++ /dev/null
@@ -1,26 +0,0 @@
-{ stdenv, fetchurl, zlib }:
-
-assert zlib != null;
-
-stdenv.mkDerivation rec {
-  name = "libpng-1.5.19";
-
-  src = fetchurl {
-    url = "mirror://sourceforge/libpng/${name}.tar.xz";
-    sha256 = "1s990cdsdlbb78aq4sj2vq2849p2nbbbnbk5p8f9w45rn0v5q98y";
-  };
-
-  propagatedBuildInputs = [ zlib ];
-
-  doCheck = true;
-
-  passthru = { inherit zlib; };
-
-  meta = {
-    description = "The official reference implementation for the PNG file format";
-    homepage = http://www.libpng.org/pub/png/libpng.html;
-    license = stdenv.lib.licenses.libpng;
-    maintainers = with stdenv.lib.maintainers; [ fuuzetsu ];
-    branch = "1.5";
-  };
-}
diff --git a/pkgs/development/libraries/libpng/default.nix b/pkgs/development/libraries/libpng/default.nix
index 17820fa8188e..53777a0c56f0 100644
--- a/pkgs/development/libraries/libpng/default.nix
+++ b/pkgs/development/libraries/libpng/default.nix
@@ -1,13 +1,13 @@
-{ stdenv, fetchurl, zlib, apngSupport ? false }:
+{ stdenv, fetchurl, zlib, apngSupport ? true }:
 
 assert zlib != null;
 
 let
-  version = "1.6.16";
-  sha256 = "0q5ygy15jkpqbj5701ywrjzqp4nl5yz3r4g58h2p0kiycggm9xs2";
+  version = "1.6.18";
+  sha256 = "0qq96rf31483kxz32h6l6921hy6p2v2pfqfvc74km229g4xw241f";
   patch_src = fetchurl {
     url = "mirror://sourceforge/libpng-apng/libpng-${version}-apng.patch.gz";
-    sha256 = "1sf27a5gvwvcm4wsf2pyq87d3g4l2fym8cirq9sli54bi753ikbh";
+    sha256 = "0g2ljh2vhclas1hacys1c4gk6l6hyy6sngb2yvdsnjz50nyq16kv";
   };
   whenPatched = stdenv.lib.optionalString apngSupport;
 
diff --git a/pkgs/development/libraries/libpsl/default.nix b/pkgs/development/libraries/libpsl/default.nix
index c304b9e6930f..1c651f72ede9 100644
--- a/pkgs/development/libraries/libpsl/default.nix
+++ b/pkgs/development/libraries/libpsl/default.nix
@@ -1,16 +1,48 @@
-{ stdenv, fetchFromGitHub, autoreconfHook, icu, libxslt, pkgconfig }:
+{ stdenv, fetchFromGitHub, autoreconfHook, docbook_xsl, gtk_doc, icu
+, libxslt, pkgconfig }:
 
-let version = "0.7.1"; in
-stdenv.mkDerivation rec {
+let
+
+  version = "${libVersion}-list-${listVersion}";
+
+  listVersion = "2015-08-27";
+  listSources = fetchFromGitHub {
+    sha256 = "14kgxyfvvrwqyxmfy1by1pzbbv6hs9n744v8zr160rz8rln8lzb9";
+    rev = "1fc1ed365818a6a77d6f31d425ff03ca54cdc7f3";
+    repo = "list";
+    owner = "publicsuffix";
+  };
+
+  libVersion = "0.8.0";
+
+in stdenv.mkDerivation {
   name = "libpsl-${version}";
 
   src = fetchFromGitHub {
-    sha256 = "0hbsidbmwgpg0h48wh2pzsq59j8az7naz3s5q3yqn99yyjji2vgw";
-    rev = name;
+    sha256 = "0mjnj36igk6w3c0d4k2fqqg1kl6bpnxfrcgcgz1zdw33gfa5gdi7";
+    rev = "libpsl-${libVersion}";
     repo = "libpsl";
     owner = "rockdaboot";
   };
 
+  buildInputs = [ icu libxslt ];
+  nativeBuildInputs = [ autoreconfHook docbook_xsl gtk_doc pkgconfig ];
+
+  preAutoreconf = ''
+    mkdir m4
+    gtkdocize
+  '';
+
+  preConfigure = ''
+    # The libpsl check phase requires the list's test scripts (tests/) as well
+    cp -Rv "${listSources}"/* list
+  '';
+  configureFlags = "--disable-static --enable-gtk-doc --enable-man";
+
+  enableParallelBuilding = true;
+
+  doCheck = true;
+
   meta = with stdenv.lib; {
     inherit version;
     description = "C library for the Publix Suffix List";
@@ -26,13 +58,4 @@ stdenv.mkDerivation rec {
     platforms = with platforms; linux ++ darwin;
     maintainers = with maintainers; [ nckx ];
   };
-
-  buildInputs = [ icu libxslt ];
-  nativeBuildInputs = [ autoreconfHook pkgconfig ];
-
-  configureFlags = "--disable-static --enable-man";
-
-  enableParallelBuilding = true;
-
-  doCheck = true;
 }
diff --git a/pkgs/development/libraries/libqalculate/default.nix b/pkgs/development/libraries/libqalculate/default.nix
index bf1a1e232bb6..3d9a288b5bb5 100644
--- a/pkgs/development/libraries/libqalculate/default.nix
+++ b/pkgs/development/libraries/libqalculate/default.nix
@@ -8,6 +8,8 @@ stdenv.mkDerivation rec {
     sha256 = "0mbrc021dk0ayyglk4qyf9328cayrlz2q94lh8sh9l9r6g79fvcs";
   };
 
+  outputs = [ "out" "doc" ];
+
   buildInputs = [ intltool pkgconfig ];
   propagatedBuildInputs = [ cln libxml2 glib ];
 
diff --git a/pkgs/development/libraries/libqglviewer/default.nix b/pkgs/development/libraries/libqglviewer/default.nix
index b389176b3da8..6b40eeb3b1f5 100644
--- a/pkgs/development/libraries/libqglviewer/default.nix
+++ b/pkgs/development/libraries/libqglviewer/default.nix
@@ -1,11 +1,12 @@
 { stdenv, fetchurl, qt4 }:
 
 stdenv.mkDerivation rec {
-  name = "libQGLViewer-2.3.4";
+  name = "libqglviewer-2.6.3";
+  version = "2.6.3";
 
   src = fetchurl {
-    url = "http://www.libqglviewer.com/src/${name}.tar.gz";
-    sha256 = "01b9x2n3v5x3zkky2bjpgbhn5bglqn4gd7x5j5p7y2dw0jnzz7j0";
+    url = "http://www.libqglviewer.com/src/libQGLViewer-${version}.tar.gz";
+    sha256 = "00jdkyk4wg1356c3ar6nk3hyp494ya3yvshq9m57kfmqpn3inqdy";
   };
 
   buildInputs = [ qt4 ];
@@ -17,9 +18,10 @@ stdenv.mkDerivation rec {
       make
     '';
 
-  meta = { 
-    description = "trackball-based 3D viewer qt widget including many useful features";
-    homepage = http://artis.imag.fr/Members/Gilles.Debunne/QGLViewer/installUnix.html;
-    license = stdenv.lib.licenses.gpl2;
+  meta = with stdenv.lib; {
+    description = "C++ library based on Qt that eases the creation of OpenGL 3D viewers";
+    homepage = http://libqglviewer.com/;
+    license = licenses.gpl2;
+    platforms = platforms.all;
   };
 }
diff --git a/pkgs/development/libraries/libraw/default.nix b/pkgs/development/libraries/libraw/default.nix
index 3e0d2348a50d..3d564fc00f8b 100644
--- a/pkgs/development/libraries/libraw/default.nix
+++ b/pkgs/development/libraries/libraw/default.nix
@@ -2,21 +2,22 @@
 
 stdenv.mkDerivation rec {
   name = "libraw-${version}";
-  version = "0.16.1";
+  version = "0.17.0";
 
   src = fetchurl {
     url = "http://www.libraw.org/data/LibRaw-${version}.tar.gz";
-    sha256 = "15ng4s24grib39r0nlgrf18r2j9yh43qyx4vbif38d95xiqkix3i";
+    sha256 = "043kckxjqanw8dl3m9f6kvsf0l20ywxmgxd1xb0slj6m8l4w4hz6";
   };
 
   buildInputs = [ lcms2 jasper ] ;
 
   nativeBuildInputs = [ pkgconfig ];
 
-  meta = { 
+  meta = {
     description = "Library for reading RAW files obtained from digital photo cameras (CRW/CR2, NEF, RAF, DNG, and others)";
     homepage = http://www.libraw.org/;
     license = stdenv.lib.licenses.gpl2Plus;
+    platforms = stdenv.lib.platforms.all;
   };
 }
 
diff --git a/pkgs/development/libraries/libressl/default.nix b/pkgs/development/libraries/libressl/default.nix
index 093f644c0962..a56d4ead823c 100644
--- a/pkgs/development/libraries/libressl/default.nix
+++ b/pkgs/development/libraries/libressl/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   name = "libressl-${version}";
-  version = "2.2.1";
+  version = "2.2.2";
 
   src = fetchurl {
     url    = "mirror://openbsd/LibreSSL/${name}.tar.gz";
-    sha256 = "0bapzvxrg09p4hlzdhsvk0ljc3gsjj4ixjpf09dn0fzwmd81fcsg";
+    sha256 = "0551i4jbs81ark3jy6nycqpyqn7rg30nvcdjvdg58s6l6fgv1570";
   };
 
   enableParallelBuilding = true;
diff --git a/pkgs/development/libraries/librsvg/default.nix b/pkgs/development/libraries/librsvg/default.nix
index 4c22c988c790..ea1910733e7d 100644
--- a/pkgs/development/libraries/librsvg/default.nix
+++ b/pkgs/development/libraries/librsvg/default.nix
@@ -1,6 +1,6 @@
-{ stdenv, fetchurl, pkgconfig, glib, gdk_pixbuf, pango, cairo, libxml2, libgsf
+{ lib, stdenv, fetchurl, pkgconfig, glib, gdk_pixbuf, pango, cairo, libxml2, libgsf
 , bzip2, libcroco, libintlOrEmpty
-, gtk3 ? null
+, withGTK ? false, gtk3 ? null
 , gobjectIntrospection ? null, enableIntrospection ? false }:
 
 # no introspection by default, it's too big
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
   buildInputs = [ libxml2 libgsf bzip2 libcroco pango libintlOrEmpty ]
     ++ stdenv.lib.optional enableIntrospection [ gobjectIntrospection ];
 
-  propagatedBuildInputs = [ glib gdk_pixbuf cairo gtk3 ];
+  propagatedBuildInputs = [ glib gdk_pixbuf cairo ] ++ lib.optional withGTK gtk3;
 
   nativeBuildInputs = [ pkgconfig ];
 
diff --git a/pkgs/development/libraries/libs3/default.nix b/pkgs/development/libraries/libs3/default.nix
index 62970b719048..f5c4683e7308 100644
--- a/pkgs/development/libraries/libs3/default.nix
+++ b/pkgs/development/libraries/libs3/default.nix
@@ -1,13 +1,13 @@
 { stdenv, fetchFromGitHub, curl, libxml2 }:
 
 stdenv.mkDerivation {
-  name = "libs3-2015-01-09";
+  name = "libs3-2015-04-23";
 
   src = fetchFromGitHub {
     owner = "bji";
     repo = "libs3";
-    rev = "4d21fdc0857b88c964649b321057d7105d1e4da3";
-    sha256 = "1c33h8lzlpmsbkymd2dac9g8hqhd6j6yzdjrhha8bcqyys6vcpy3";
+    rev = "11a4e976c28ba525e7d61fbc3867c345a2af1519";
+    sha256 = "0xjjwyw14sk9am6s2m25hxi55vmsrc2yiawd6ln2lvg59xjcr48i";
   };
 
   buildInputs = [ curl libxml2 ];
@@ -17,7 +17,7 @@ stdenv.mkDerivation {
   meta = with stdenv.lib; {
     homepage = https://github.com/bji/libs3;
     description = "A library for interfacing with amazon s3";
-    license = licenses.gpl3;
+    license = licenses.lgpl3;
     platforms = platforms.unix;
   };
 }
diff --git a/pkgs/development/libraries/libseccomp/default.nix b/pkgs/development/libraries/libseccomp/default.nix
index fd5689380c1d..757093f2b556 100644
--- a/pkgs/development/libraries/libseccomp/default.nix
+++ b/pkgs/development/libraries/libseccomp/default.nix
@@ -1,13 +1,13 @@
 { stdenv, fetchurl, getopt }:
 
-let version = "2.2.1"; in
+let version = "2.2.3"; in
 
 stdenv.mkDerivation rec {
   name = "libseccomp-${version}";
 
   src = fetchurl {
     url = "https://github.com/seccomp/libseccomp/releases/download/v${version}/libseccomp-${version}.tar.gz";
-    sha256 = "0h57a4l5v1aqyqrkj5gfnar8n2nxs2gzrpscym568v3qajgpi88b";
+    sha256 = "1vgc9xgdx6mc4fj21axlv2ym9ndnz06ylq3ps3f8210n3xksdq7y";
   };
 
   buildInputs = [ getopt ];
diff --git a/pkgs/development/libraries/libsoup/bad-symbol.patch b/pkgs/development/libraries/libsoup/bad-symbol.patch
deleted file mode 100644
index df1b0af0c69b..000000000000
--- a/pkgs/development/libraries/libsoup/bad-symbol.patch
+++ /dev/null
@@ -1,10 +0,0 @@
---- a/libsoup/libsoup-2.4.sym 2014-10-29 22:37:54 -0700
-+++ b/libsoup/libsoup-2.4.sym 2014-06-18 07:42:51 -0700
-@@ -348,7 +348,6 @@
- soup_server_get_async_context
- soup_server_get_listener
- soup_server_get_listeners
--soup_server_get_gsocket
- soup_server_get_port
- soup_server_get_type
- soup_server_get_uris
diff --git a/pkgs/development/libraries/libsoup/default.nix b/pkgs/development/libraries/libsoup/default.nix
index 82629ca3c6fa..f71cc77321a5 100644
--- a/pkgs/development/libraries/libsoup/default.nix
+++ b/pkgs/development/libraries/libsoup/default.nix
@@ -1,9 +1,9 @@
 { stdenv, fetchurl, glib, libxml2, pkgconfig
-, gnomeSupport ? true, libgnome_keyring, sqlite, glib_networking, gobjectIntrospection
+, gnomeSupport ? false, libgnome_keyring, sqlite, glib_networking, gobjectIntrospection
 , libintlOrEmpty
 , intltool, python }:
 let
-  majorVersion = "2.48";
+  majorVersion = "2.50";
   version = "${majorVersion}.0";
 in
 stdenv.mkDerivation {
@@ -11,12 +11,11 @@ stdenv.mkDerivation {
 
   src = fetchurl {
     url = "mirror://gnome/sources/libsoup/${majorVersion}/libsoup-${version}.tar.xz";
-    sha256 = "ea34dd64fe44343445daf6dd690d0691e9d973468de44878da97371c16d89784";
+    sha256 = "1e01365ac4af3817187ea847f9d3588c27eee01fc519a5a7cb212bb78b0f667b";
   };
 
   patchPhase = ''
     patchShebangs libsoup/
-    patch -p1 < ${./bad-symbol.patch}
   '';
 
   buildInputs = libintlOrEmpty ++ [ intltool python sqlite ];
@@ -30,6 +29,8 @@ stdenv.mkDerivation {
 
   NIX_CFLAGS_COMPILE = stdenv.lib.optionalString stdenv.isDarwin "-lintl";
 
+  postInstall = "rm -rf $out/share/gtk-doc";
+
   meta = {
     inherit (glib.meta) maintainers platforms;
   };
diff --git a/pkgs/development/libraries/libssh/0001-Reintroduce-ssh_forward_listen-Fixes-194.patch b/pkgs/development/libraries/libssh/0001-Reintroduce-ssh_forward_listen-Fixes-194.patch
deleted file mode 100644
index 030983d5c55e..000000000000
--- a/pkgs/development/libraries/libssh/0001-Reintroduce-ssh_forward_listen-Fixes-194.patch
+++ /dev/null
@@ -1,28 +0,0 @@
-From 3c8fe6e2c595ee019408249c364b3019b6c31a8a Mon Sep 17 00:00:00 2001
-From: Mike DePaulo <mikedep333@gmail.com>
-Date: Fri, 15 May 2015 22:22:13 -0400
-Subject: [PATCH] Reintroduce ssh_forward_listen() (Fixes: #194)
-
----
- src/channels.c | 5 +++++
- 1 file changed, 5 insertions(+)
-
-diff --git a/src/channels.c b/src/channels.c
-index 7a4e71f..db5f83a 100644
---- a/src/channels.c
-+++ b/src/channels.c
-@@ -2206,6 +2206,11 @@ error:
- }
- 
- /* DEPRECATED */
-+int ssh_forward_listen(ssh_session session, const char *address, int port, int *bound_port) {
-+  return ssh_channel_listen_forward(session, address, port, bound_port);
-+}
-+
-+/* DEPRECATED */
- ssh_channel ssh_forward_accept(ssh_session session, int timeout_ms) {
-   return ssh_channel_accept(session, SSH_CHANNEL_FORWARDED_TCPIP, timeout_ms, NULL);
- }
--- 
-2.1.4
-
diff --git a/pkgs/development/libraries/libssh/default.nix b/pkgs/development/libraries/libssh/default.nix
index ef4540db2b2e..1766a685aaab 100644
--- a/pkgs/development/libraries/libssh/default.nix
+++ b/pkgs/development/libraries/libssh/default.nix
@@ -1,15 +1,13 @@
 { stdenv, fetchurl, pkgconfig, cmake, zlib, openssl, libsodium }:
 
 stdenv.mkDerivation rec {
-  name = "libssh-0.7.0";
+  name = "libssh-0.7.1";
 
   src = fetchurl {
-    url = "https://git.libssh.org/projects/libssh.git/snapshot/${name}.tar.gz";
-    sha256 = "1wfrdqhv97f4ycd9bcpgb6gw47kr7b2iq8cz5knk8a6n9c6870k0";
+    url = "https://red.libssh.org/attachments/download/154/libssh-0.7.1.tar.xz";
+    sha256 = "0v84zm957z31yyrj47n62hby38nrjk5ih0ajmgccnqrjdpwwrirg";
   };
 
-  patches = [ ./0001-Reintroduce-ssh_forward_listen-Fixes-194.patch ];
-
   postPatch = ''
     # Fix headers to use libsodium instead of NaCl
     sed -i 's,nacl/,sodium/,g' ./include/libssh/curve25519.h src/curve25519.c
diff --git a/pkgs/development/libraries/libtap/default.nix b/pkgs/development/libraries/libtap/default.nix
new file mode 100644
index 000000000000..a81d5a686bc7
--- /dev/null
+++ b/pkgs/development/libraries/libtap/default.nix
@@ -0,0 +1,28 @@
+{ stdenv, fetchurl, pkgconfig, cmake, perl }:
+
+with stdenv.lib;
+stdenv.mkDerivation rec{
+
+  name = "libtap-${version}";
+  version = "1.12.0";
+
+  src = fetchurl {
+    url = "http://web-cpan.shlomifish.org/downloads/${name}.tar.bz2";
+    sha256 = "1ms1770cx8c6q3lhn1chkzy12vzmjgvlms7cqhd2d3260j2wwv5s";
+  };
+
+  buildInputs = [ pkgconfig ];
+  propagatedBuildInputs = [ cmake perl ];
+
+  meta = {
+    description = "A library to implement a test protocol";
+    longDescription = ''
+      libtap is a library to implement the Test Anything Protocol for
+      C originally created by Nik Clayton. This is a maintenance
+      branch by Shlomi Fish.
+    '';
+    homepage = "http://www.shlomifish.org/open-source/projects/libtap/";
+    license = licenses.bsd3;
+    maintainers = [ maintainers.AndersonTorres ];
+  };
+}
diff --git a/pkgs/development/libraries/libtidy/default.nix b/pkgs/development/libraries/libtidy/default.nix
deleted file mode 100644
index 412f34008f11..000000000000
--- a/pkgs/development/libraries/libtidy/default.nix
+++ /dev/null
@@ -1,28 +0,0 @@
-{ stdenv, lib, fetchcvs, cmake, libtool, automake, autoconf }:
-
-stdenv.mkDerivation rec {
-  name = "libtidy-${version}";
-
-  version = "1.46";
-
-  src = fetchcvs {
-    cvsRoot = ":pserver:anonymous@tidy.cvs.sourceforge.net:/cvsroot/tidy";
-    module  = "tidy";
-    date    = "2009-03-25";
-    sha256  = "0bnxn1qgjx1pfyn2q4y24yj1gwqq5bxwf5ksjljqzqzrmjv3q46x";
-  };
-
-  preConfigure = ''
-    source build/gnuauto/setup.sh
-  '';
-
-  buildInputs = [ libtool automake autoconf ];
-
-  meta = with lib; {
-    description = "Validate, correct, and pretty-print HTML files";
-    homepage    = http://tidy.sourceforge.net;
-    license     = licenses.mit;
-    platforms   = platforms.linux;
-    maintainers = with maintainers; [ cstrahan ];
-  };
-}
diff --git a/pkgs/development/libraries/libtiff/default.nix b/pkgs/development/libraries/libtiff/default.nix
index 739148cb9a69..25f6cf5b6b7b 100644
--- a/pkgs/development/libraries/libtiff/default.nix
+++ b/pkgs/development/libraries/libtiff/default.nix
@@ -14,6 +14,8 @@ stdenv.mkDerivation rec {
     sha256 = "0wj8d1iwk9vnpax2h29xqc2hwknxg3s0ay2d5pxkg59ihbifn6pa";
   };
 
+  outputs = [ "out" "doc" "man" ];
+
   nativeBuildInputs = [ pkgconfig ];
 
   propagatedBuildInputs = [ zlib libjpeg xz ]; #TODO: opengl support (bogus configure detection)
diff --git a/pkgs/development/libraries/libtorrent-rasterbar/0.16.nix b/pkgs/development/libraries/libtorrent-rasterbar/0.16.nix
index 6298f2f0c0f3..985c570a34e0 100644
--- a/pkgs/development/libraries/libtorrent-rasterbar/0.16.nix
+++ b/pkgs/development/libraries/libtorrent-rasterbar/0.16.nix
@@ -1,6 +1,6 @@
 { callPackage, ... } @ args:
 
 callPackage ./generic.nix (args // {
-  version = "0.16.17";
-  sha256 = "1w5gcizd6jlvzwgy0307az856h0cly685yf275p1v6bdcafd58b7";
+  version = "0.16.19";
+  sha256 = "1nlrivhnshn4wd9m5dsbjmq84731z9f9glj5q3vxz0c01s1lv7vw";
 })
diff --git a/pkgs/development/libraries/libtorrent-rasterbar/default.nix b/pkgs/development/libraries/libtorrent-rasterbar/default.nix
index e1f1fc179d63..725b98cdae65 100644
--- a/pkgs/development/libraries/libtorrent-rasterbar/default.nix
+++ b/pkgs/development/libraries/libtorrent-rasterbar/default.nix
@@ -1,6 +1,6 @@
 { callPackage, ... } @ args:
 
 callPackage ./generic.nix (args // {
-  version = "1.0.2";
-  sha256 = "1ph4cb6nrk2hiy89j3kz1wj16ph0b9yixrf4f4935rnzhha8x31w";
+  version = "1.0.6";
+  sha256 = "1qypc5lx82vlqm9016knxx8khxpc9dy78a0q2x5jmxjk8v6g994r";
 })
diff --git a/pkgs/development/libraries/libtorrent-rasterbar/generic.nix b/pkgs/development/libraries/libtorrent-rasterbar/generic.nix
index b866f66dbfa2..a5bb258af1a9 100644
--- a/pkgs/development/libraries/libtorrent-rasterbar/generic.nix
+++ b/pkgs/development/libraries/libtorrent-rasterbar/generic.nix
@@ -1,18 +1,26 @@
-{ stdenv, fetchurl, boost, openssl, pkgconfig, zlib, python, libiconv, geoip
+{ stdenv, fetchurl, automake, autoconf, boost, openssl, lib, libtool, pkgconfig, zlib, python, libiconv, geoip
 # Version specific options
 , version, sha256
 , ... }:
 
+let formattedVersion = lib.replaceChars ["."] ["_"] version;
+
+in
+
 stdenv.mkDerivation rec {
   name = "libtorrent-rasterbar-${version}";
   
   src = fetchurl {
-    url = "mirror://sourceforge/libtorrent/${name}.tar.gz";
+    url = "https://github.com/arvidn/libtorrent/archive/libtorrent-${formattedVersion}.tar.gz";
     inherit sha256;
   };
 
+  nativeBuildInputs = [automake autoconf libtool ];
+
   buildInputs = [ boost pkgconfig openssl zlib python libiconv geoip ];
 
+  preConfigure = "./autotool.sh";
+
   configureFlags = [ 
     "--enable-python-binding"
     "--with-libgeoip=system"
@@ -21,6 +29,8 @@ stdenv.mkDerivation rec {
     "--with-boost-libdir=${boost.lib}/lib"
     "--with-libiconv=yes"
   ];
+
+  enableParallelBuilding = true;
   
   meta = with stdenv.lib; {
     homepage = http://www.rasterbar.com/products/libtorrent/;
diff --git a/pkgs/development/libraries/libunwind/cve-2015-3239.patch b/pkgs/development/libraries/libunwind/cve-2015-3239.patch
new file mode 100644
index 000000000000..247b2dab44f8
--- /dev/null
+++ b/pkgs/development/libraries/libunwind/cve-2015-3239.patch
@@ -0,0 +1,15 @@
+http://git.savannah.gnu.org/cgit/libunwind.git/commit/?id=396b6c7ab737e2bff244d640601c436a26260ca1
+
+diff --git a/include/dwarf_i.h b/include/dwarf_i.h
+index 0e72845..86dcdb8 100644
+--- a/include/dwarf_i.h
++++ b/include/dwarf_i.h
+@@ -20,7 +20,7 @@
+ extern const uint8_t dwarf_to_unw_regnum_map[DWARF_REGNUM_MAP_LENGTH];
+ /* REG is evaluated multiple times; it better be side-effects free!  */
+ # define dwarf_to_unw_regnum(reg)					  \
+-  (((reg) <= DWARF_REGNUM_MAP_LENGTH) ? dwarf_to_unw_regnum_map[reg] : 0)
++  (((reg) < DWARF_REGNUM_MAP_LENGTH) ? dwarf_to_unw_regnum_map[reg] : 0)
+ #endif
+ 
+ #ifdef UNW_LOCAL_ONLY
diff --git a/pkgs/development/libraries/libunwind/default.nix b/pkgs/development/libraries/libunwind/default.nix
index 91895114ea0c..ecaa643b143f 100644
--- a/pkgs/development/libraries/libunwind/default.nix
+++ b/pkgs/development/libraries/libunwind/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   name = "libunwind-1.1";
-  
+
   src = fetchurl {
     url = "mirror://savannah/libunwind/${name}.tar.gz";
     sha256 = "16nhx2pahh9d62mvszc88q226q5lwjankij276fxwrm8wb50zzlx";
   };
 
-  patches = [ ./libunwind-1.1-lzma.patch ];
+  patches = [ ./libunwind-1.1-lzma.patch ./cve-2015-3239.patch ];
 
   postPatch = ''
     sed -i -e '/LIBLZMA/s:-lzma:-llzma:' configure
@@ -27,7 +27,7 @@ stdenv.mkDerivation rec {
       sed -i 's,-llzma,${xz}/lib/liblzma.la,' $file
     done
   '';
-  
+
   meta = with stdenv.lib; {
     homepage = http://www.nongnu.org/libunwind;
     description = "A portable and efficient API to determine the call-chain of a program";
diff --git a/pkgs/development/libraries/libva/default.nix b/pkgs/development/libraries/libva/default.nix
index 440014969887..c9af48d1c592 100644
--- a/pkgs/development/libraries/libva/default.nix
+++ b/pkgs/development/libraries/libva/default.nix
@@ -3,11 +3,11 @@
 }:
 
 stdenv.mkDerivation rec {
-  name = "libva-1.5.1";
+  name = "libva-1.6.0";
 
   src = fetchurl {
     url = "http://www.freedesktop.org/software/vaapi/releases/libva/${name}.tar.bz2";
-    sha256 = "01d01mm9fgpwzqycmjjcj3in3vvzcibi3f64icsw2sksmmgb4495";
+    sha256 = "0n1l2mlhsvmsbs3qcphl4p6w13jnbv6s3hil8b6fj43a3afdrn9s";
   };
 
   buildInputs = [ libX11 libXext pkgconfig libdrm libXfixes wayland libffi mesa ];
diff --git a/pkgs/development/libraries/libvdpau/default.nix b/pkgs/development/libraries/libvdpau/default.nix
index a6da96dc863e..6c5d5a91ad88 100644
--- a/pkgs/development/libraries/libvdpau/default.nix
+++ b/pkgs/development/libraries/libvdpau/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl, pkgconfig, xorg }:
 
 stdenv.mkDerivation rec {
-  name = "libvdpau-1.1";
+  name = "libvdpau-1.1.1";
 
   src = fetchurl {
-    url = "http://people.freedesktop.org/~aplattner/vdpau/${name}.tar.gz";
-    sha256 = "069r4qc934xw3z20hpmg0gx0al7fl1kdik1r46x2dgr0ya1yg95f";
+    url = "http://people.freedesktop.org/~aplattner/vdpau/${name}.tar.bz2";
+    sha256 = "857a01932609225b9a3a5bf222b85e39b55c08787d0ad427dbd9ec033d58d736";
   };
 
   buildInputs = with xorg; [ pkgconfig dri2proto libXext ];
diff --git a/pkgs/development/libraries/libvorbis/default.nix b/pkgs/development/libraries/libvorbis/default.nix
index cff6cbe8616f..d58607ea2988 100644
--- a/pkgs/development/libraries/libvorbis/default.nix
+++ b/pkgs/development/libraries/libvorbis/default.nix
@@ -8,6 +8,8 @@ stdenv.mkDerivation rec {
     sha256 = "1lg1n3a6r41492r7in0fpvzc7909mc5ir9z0gd3qh2pz4yalmyal";
   };
 
+  outputs = [ "out" "doc" ];
+
   nativeBuildInputs = [ pkgconfig ];
   propagatedBuildInputs = [ libogg ];
 
diff --git a/pkgs/development/libraries/libwpd/default.nix b/pkgs/development/libraries/libwpd/default.nix
index df5917fb05cf..01ae59efdf41 100644
--- a/pkgs/development/libraries/libwpd/default.nix
+++ b/pkgs/development/libraries/libwpd/default.nix
@@ -11,4 +11,10 @@ stdenv.mkDerivation rec {
   buildInputs = [ glib libgsf libxml2 zlib librevenge ];
 
   nativeBuildInputs = [ pkgconfig ];
+
+  meta = with stdenv.lib; {
+    description = "A library for importing and exporting WordPerfect documents";
+    homepage = http://libwpd.sourceforge.net/;
+    license = licenses.lgpl21;
+  };
 }
diff --git a/pkgs/development/libraries/libxml2/default.nix b/pkgs/development/libraries/libxml2/default.nix
index 153096ee45c0..2fdc198aa115 100644
--- a/pkgs/development/libraries/libxml2/default.nix
+++ b/pkgs/development/libraries/libxml2/default.nix
@@ -16,11 +16,13 @@ stdenv.mkDerivation (rec {
     sha256 = "1g6mf03xcabmk5ing1lwqmasr803616gb2xhn7pll10x2l5w6y2i";
   };
 
+  outputs = [ "out" "doc" ];
+
   buildInputs = stdenv.lib.optional pythonSupport python
     # Libxml2 has an optional dependency on liblzma.  However, on impure
     # platforms, it may end up using that from /usr/lib, and thus lack a
     # RUNPATH for that, leading to undefined references for its users.
-    ++ (stdenv.lib.optional stdenv.isFreeBSD xz);
+    ++ stdenv.lib.optional stdenv.isFreeBSD xz;
 
   propagatedBuildInputs = [ zlib findXMLCatalogs ];
 
diff --git a/pkgs/development/libraries/libxslt/default.nix b/pkgs/development/libraries/libxslt/default.nix
index fda247764803..3579e99ec7a8 100644
--- a/pkgs/development/libraries/libxslt/default.nix
+++ b/pkgs/development/libraries/libxslt/default.nix
@@ -8,6 +8,8 @@ stdenv.mkDerivation rec {
     sha256 = "13029baw9kkyjgr7q3jccw2mz38amq7mmpr5p3bh775qawd1bisz";
   };
 
+  outputs = [ "out" "doc" ];
+
   buildInputs = [ libxml2 ];
 
   propagatedBuildInputs = [ findXMLCatalogs ];
diff --git a/pkgs/development/libraries/lightning/default.nix b/pkgs/development/libraries/lightning/default.nix
index 036d9c61d07a..3805e8c1ce84 100644
--- a/pkgs/development/libraries/lightning/default.nix
+++ b/pkgs/development/libraries/lightning/default.nix
@@ -1,14 +1,17 @@
-{ fetchurl, stdenv, binutils }:
+{ stdenv, fetchurl, binutils }:
 
+with stdenv.lib;
 stdenv.mkDerivation rec {
-  name = "lightning-2.0.5";
+
+  name = "lightning-${version}";
+  version = "2.1.0";
 
   src = fetchurl {
     url = "mirror://gnu/lightning/${name}.tar.gz";
-    sha256 = "0jm9a8ddxc1v9hyzyv4ybg37fjac2yjqv1hkd262wxzqms36mdk5";
+    sha256 = "19j9nwl88k660045s40cbz5zrl1wpd2mcxnnc8qqnnaj311a58qz";
   };
 
-  # Needs libopcodes.so  from binutils for 'make check'
+  # Needs libopcodes.so from binutils for 'make check'
   buildInputs = [ binutils ];
 
   doCheck = true;
@@ -16,7 +19,6 @@ stdenv.mkDerivation rec {
   meta = {
     homepage = http://www.gnu.org/software/lightning/;
     description = "Run-time code generation library";
-
     longDescription = ''
       GNU lightning is a library that generates assembly language code
       at run-time; it is very fast, making it ideal for Just-In-Time
@@ -24,7 +26,7 @@ stdenv.mkDerivation rec {
       to the clients a standardized RISC instruction set inspired by
       the MIPS and SPARC chips.
     '';
-
-    license = stdenv.lib.licenses.lgpl3Plus;
+    maintainers = [ maintainers.AndersonTorres ];
+    license = licenses.lgpl3Plus;
   };
 }
diff --git a/pkgs/development/libraries/lmdb/default.nix b/pkgs/development/libraries/lmdb/default.nix
index fbf817dd8730..02c07a78acb2 100644
--- a/pkgs/development/libraries/lmdb/default.nix
+++ b/pkgs/development/libraries/lmdb/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   name = "lmdb-${version}";
-  version = "0.9.15";
+  version = "0.9.16";
 
   src = fetchzip {
     url = "https://github.com/LMDB/lmdb/archive/LMDB_${version}.tar.gz";
-    sha256 = "0p79fpyh1yx2jg1f0kag5zsdn4spkgs1j3dxibvqdy32wkbpxd0g";
+    sha256 = "1lkmngscijwiz09gdkqygdp87x55vp8gb4fh4vq7s34k4jv0327l";
   };
 
   postUnpack = "sourceRoot=\${sourceRoot}/libraries/liblmdb";
diff --git a/pkgs/development/libraries/lzo/default.nix b/pkgs/development/libraries/lzo/default.nix
index f4bff72fa809..23168de43ed5 100644
--- a/pkgs/development/libraries/lzo/default.nix
+++ b/pkgs/development/libraries/lzo/default.nix
@@ -1,32 +1,35 @@
 {stdenv, fetchurl}:
 
 stdenv.mkDerivation rec {
-  name = "lzo-2.08";
+  name = "lzo-2.09";
 
   src = fetchurl {
     url = "${meta.homepage}/download/${name}.tar.gz";
-    sha256 = "0536ad3ksk1r8h2a27d0y4p27lwjarzyndw7sagvxzj6xr6kw6xc";
+    sha256 = "0k5kpj3jnsjfxqqkblpfpx0mqcy86zs5fhjhgh2kq1hksg7ag57j";
   };
 
   configureFlags = [ "--enable-shared" ];
 
-  doCheck = true;
+  enableParallelBuilding = true;
 
-  meta = {
-    description = "A data compresion library suitable for real-time data de-/compression";
-    longDescription =
-      '' LZO is a data compression library which is suitable for data
-	 de-/compression in real-time.  This means it favours speed over
-	 compression ratio.
+  doCheck = true;
 
-	 LZO is written in ANSI C.  Both the source code and the compressed
-	 data format are designed to be portable across platforms.
-      '';
+  meta = with stdenv.lib; {
+    description = "Real-time data (de)compression library";
+    longDescription = ''
+      LZO is a portable lossless data compression library written in ANSI C.
+      Both the source code and the compressed data format are designed to be
+      portable across platforms.
+      LZO offers pretty fast compression and *extremely* fast decompression.
+      While it favours speed over compression ratio, it includes slower
+      compression levels achieving a quite competitive compression ratio
+      while still decompressing at this very high speed.
+    '';
 
     homepage = http://www.oberhumer.com/opensource/lzo;
-    license = stdenv.lib.licenses.gpl2Plus;
+    license = licenses.gpl2Plus;
 
-    platforms = stdenv.lib.platforms.all;
-    maintainers = [ ];
+    platforms = platforms.all;
+    maintainers = with maintainers; [ nckx ];
   };
 }
diff --git a/pkgs/development/libraries/mdds/default.nix b/pkgs/development/libraries/mdds/default.nix
index bc8f91dcb93c..f379d8c4e322 100644
--- a/pkgs/development/libraries/mdds/default.nix
+++ b/pkgs/development/libraries/mdds/default.nix
@@ -1,12 +1,12 @@
 { stdenv, fetchurl }:
 
 stdenv.mkDerivation rec {
-  version = "0.12.0";
+  version = "0.12.1";
   name = "mdds-${version}";
 
   src = fetchurl {
     url = "http://kohei.us/files/mdds/src/mdds_${version}.tar.bz2";
-    sha256 = "10ar7r0gkdl2r7916jlkl5c38cynrh7x9s90a5i8d242r8ixw8ia";
+    sha256 = "0gg8mb9kxh3wggh7njj1gf90xy27p0yq2cw88wqar9hhg2fmwmi3";
   };
 
   postInstall = ''
@@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     inherit version;
-    homepage = https://code.google.com/p/multidimalgorithm/;
+    homepage = "https://gitlab.com/mdds/mdds";
     description = "A collection of multi-dimensional data structure and indexing algorithm";
     platforms = stdenv.lib.platforms.all;
   };
diff --git a/pkgs/development/libraries/mdds/default.upstream b/pkgs/development/libraries/mdds/default.upstream
index 5c07878fdf20..94b6c78b06b7 100644
--- a/pkgs/development/libraries/mdds/default.upstream
+++ b/pkgs/development/libraries/mdds/default.upstream
@@ -1,4 +1,4 @@
-url https://code.google.com/p/multidimalgorithm/wiki/Downloads
+url https://gitlab.com/mdds/mdds
 version_link '[.]tar[.][a-z0-9]+$'
 version '.*_([0-9.]+)[.]tar[.].*' '\1'
 
diff --git a/pkgs/development/libraries/mediastreamer/default.nix b/pkgs/development/libraries/mediastreamer/default.nix
index 19e71fd66c12..4a672b226ea6 100644
--- a/pkgs/development/libraries/mediastreamer/default.nix
+++ b/pkgs/development/libraries/mediastreamer/default.nix
@@ -4,18 +4,19 @@
 }:
 
 stdenv.mkDerivation rec {
-  name = "mediastreamer-2.11.1";
+  name = "mediastreamer-2.11.2";
 
   src = fetchurl {
     url = "mirror://savannah/linphone/mediastreamer/${name}.tar.gz";
-    sha256 = "0gfv4k2rsyvyq838xjgsrxmmn0fkw40apqs8vakzjwzsz2c9z8pd";
+    sha256 = "1g6gawrlz1lixzs1kzckm3rxc401ww8pi00x7r5kb84bdijb02cc";
   };
 
+  patches = [ ./plugins_dir.patch ];
+
   postPatch = ''
     sed -i "s/\(SRTP_LIBS=\"\$SRTP_LIBS -lsrtp\"\)/SRTP_LIBS=\"$(pkg-config --libs-only-l libsrtp)\"/g" configure
   '';
 
-  # TODO: make it load plugins from *_PLUGIN_PATH
   nativeBuildInputs = [ pkgconfig intltool ];
 
   propagatedBuildInputs = [
@@ -28,6 +29,8 @@ stdenv.mkDerivation rec {
   configureFlags = [
     "--enable-external-ortp"
     "--with-srtp=${srtp}"
+    "--enable-xv"
+    "--enable-glx"
   ];
 
   meta = with stdenv.lib; {
diff --git a/pkgs/development/libraries/mediastreamer/msopenh264.nix b/pkgs/development/libraries/mediastreamer/msopenh264.nix
new file mode 100644
index 000000000000..e312c730ab21
--- /dev/null
+++ b/pkgs/development/libraries/mediastreamer/msopenh264.nix
@@ -0,0 +1,20 @@
+{ stdenv, fetchurl, autoreconfHook, pkgconfig, mediastreamer, openh264 }:
+
+stdenv.mkDerivation rec {
+  name = "mediastreamer-openh264-${version}";
+  version = "1.0.0";
+
+  src = fetchurl {
+    url = "http://download-mirror.savannah.gnu.org/releases/linphone/plugins/sources/msopenh264-${version}.tar.gz";
+    sha256 = "1622ma8g4yqvxa8pqwddsmhlpwak31i8zfl88f60k71k4dplw845";
+  };
+
+  buildInputs = [ autoreconfHook pkgconfig mediastreamer openh264 ];
+
+  meta = with stdenv.lib; {
+    description = "H.264 encoder/decoder plugin for mediastreamer2";
+    homepage = http://www.linphone.org/technical-corner/mediastreamer2/overview;
+    license = licenses.gpl2;
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/development/libraries/mediastreamer/plugins_dir.patch b/pkgs/development/libraries/mediastreamer/plugins_dir.patch
new file mode 100644
index 000000000000..e64bfc5a43a1
--- /dev/null
+++ b/pkgs/development/libraries/mediastreamer/plugins_dir.patch
@@ -0,0 +1,24 @@
+diff -uNr mediastreamer2/src/base/msfactory.c mediastreamer2-new/src/base/msfactory.c
+--- a/src/base/msfactory.c	2015-05-13 16:53:49.801113249 +0200
++++ b/src/base/msfactory.c	2015-08-26 21:35:44.994724647 +0200
+@@ -630,12 +630,18 @@
+ }
+ 
+ void ms_factory_init_plugins(MSFactory *obj) {
++	char *package_plugins_dir;
+ 	if (obj->plugins_dir == NULL) {
++		package_plugins_dir=getenv("MEDIASTREAMER_PLUGINS_DIR");
++		if (package_plugins_dir!=NULL){
++			obj->plugins_dir = ms_strdup(package_plugins_dir);
++		} else {
+ #ifdef PACKAGE_PLUGINS_DIR
+-		obj->plugins_dir = ms_strdup(PACKAGE_PLUGINS_DIR);
++			obj->plugins_dir = ms_strdup(PACKAGE_PLUGINS_DIR);
+ #else
+-		obj->plugins_dir = ms_strdup("");
++			obj->plugins_dir = ms_strdup("");
+ #endif
++		}
+ 	}
+ 	if (strlen(obj->plugins_dir) > 0) {
+ 		ms_message("Loading ms plugins from [%s]",obj->plugins_dir);
diff --git a/pkgs/development/libraries/mesa/default.nix b/pkgs/development/libraries/mesa/default.nix
index 9d7fa4ae4060..2af843346c65 100644
--- a/pkgs/development/libraries/mesa/default.nix
+++ b/pkgs/development/libraries/mesa/default.nix
@@ -4,7 +4,6 @@
 , libvdpau, libelf, libva
 , grsecEnabled
 , enableTextureFloats ? false # Texture floats are patented, see docs/patents.txt
-, enableExtraFeatures ? false # not maintained
 }:
 
 if ! stdenv.lib.lists.elem stdenv.system stdenv.lib.platforms.mesaPlatforms then
@@ -23,7 +22,7 @@ else
 */
 
 let
-  version = "10.6.2";
+  version = "10.6.5";
   # this is the default search path for DRI drivers
   driverLink = "/run/opengl-driver" + stdenv.lib.optionalString stdenv.isi686 "-32";
 in
@@ -37,7 +36,7 @@ stdenv.mkDerivation {
       "https://launchpad.net/mesa/trunk/${version}/+download/mesa-${version}.tar.xz"
       "ftp://ftp.freedesktop.org/pub/mesa/${version}/mesa-${version}.tar.xz"
     ];
-    sha256 = "05753d3db4212900927b9894221a1669a10f56786e86a7e818b6e18a0817dca9";
+    sha256 = "fb6fac3c85bcfa9d06b8dd439169f23f0c0924a88e44362e738b99b1feff762f";
   };
 
   prePatch = "patchShebangs .";
@@ -123,10 +122,8 @@ stdenv.mkDerivation {
   # ToDo: probably not all .la files are completely fixed, but it shouldn't matter
   postInstall = with stdenv.lib; ''
     mv -t "$drivers/lib/" \
-  '' + optionalString enableExtraFeatures ''
-      `#$out/lib/libXvMC*` \
-      $out/lib/gbm $out/lib/libgbm* \
-  '' + ''
+      $out/lib/libXvMC* \
+      $out/lib/d3d \
       $out/lib/vdpau \
       $out/lib/libxatracker*
 
diff --git a/pkgs/development/libraries/mongoc/default.nix b/pkgs/development/libraries/mongoc/default.nix
new file mode 100644
index 000000000000..510dbe0e1904
--- /dev/null
+++ b/pkgs/development/libraries/mongoc/default.nix
@@ -0,0 +1,26 @@
+{ stdenv, fetchzip, autoconf, automake114x, perl, pkgconfig, libbson, libtool
+, openssl, which
+}:
+
+let
+  version = "1.1.10";
+in
+
+stdenv.mkDerivation rec {
+  name = "mongoc-${version}";
+
+  src = fetchzip {
+    url = "https://github.com/mongodb/mongo-c-driver/releases/download/${version}/mongo-c-driver-${version}.tar.gz";
+    sha256 = "13yg8dpqgbpc44lsblr3szk2a5bnl2prlayv4xlkivx90m86lcx3";
+  };
+
+  propagatedBuildInputs = [ libbson ];
+  buildInputs = [ autoconf automake114x libtool openssl perl pkgconfig which ];
+
+  meta = with stdenv.lib; {
+    description = "The official C client library for MongoDB";
+    homepage = "https://github.com/mongodb/mongo-c-driver";
+    license = licenses.asl20;
+    platforms = platforms.all;
+  };
+}
diff --git a/pkgs/development/libraries/nettle/27.nix b/pkgs/development/libraries/nettle/27.nix
deleted file mode 100644
index fc85f5eb9dec..000000000000
--- a/pkgs/development/libraries/nettle/27.nix
+++ /dev/null
@@ -1,10 +0,0 @@
-{ callPackage, fetchurl, ... } @ args:
-
-callPackage ./generic.nix (args // rec {
-  version = "2.7.1";
-
-  src = fetchurl {
-    url = "mirror://gnu/nettle/nettle-${version}.tar.gz";
-    sha256 = "0h2vap31yvi1a438d36lg1r1nllfx3y19r4rfxv7slrm6kafnwdw";
-  };
-})
diff --git a/pkgs/development/libraries/nettle/generic.nix b/pkgs/development/libraries/nettle/generic.nix
index 6044f978402c..3c439eb404cc 100644
--- a/pkgs/development/libraries/nettle/generic.nix
+++ b/pkgs/development/libraries/nettle/generic.nix
@@ -16,9 +16,6 @@ stdenv.mkDerivation (rec {
 
   enableParallelBuilding = true;
 
-  # It doesn't build otherwise
-  dontDisableStatic = true;
-
   patches = stdenv.lib.optional (stdenv.system == "i686-cygwin")
               ./cygwin.patch;
 
diff --git a/pkgs/development/libraries/nghttp2/default.nix b/pkgs/development/libraries/nghttp2/default.nix
index 129a65d3203b..c4257fe97d28 100644
--- a/pkgs/development/libraries/nghttp2/default.nix
+++ b/pkgs/development/libraries/nghttp2/default.nix
@@ -34,12 +34,12 @@ let
 in
 stdenv.mkDerivation rec {
   name = "${prefix}nghttp2-${version}";
-  version = "1.1.1";
+  version = "1.2.1";
 
   # Don't use fetchFromGitHub since this needs a bootstrap curl
   src = fetchurl {
     url = "http://pub.wak.io/nixos/tarballs/nghttp2-${version}.tar.bz2";
-    sha256 = "9659e8598c8481f1bf8e63ba4f828f5283053df62a51fa8324cb55ea7a51b80c";
+    sha256 = "8027461a231d205394890b2fee34d1c3751e28e7d3f7c1ebc1b557993ea4045e";
   };
 
   # Configure script searches for a symbol which does not exist in jemalloc on Darwin
diff --git a/pkgs/development/libraries/nspr/default.nix b/pkgs/development/libraries/nspr/default.nix
index 1494092fc47d..03558817fce8 100644
--- a/pkgs/development/libraries/nspr/default.nix
+++ b/pkgs/development/libraries/nspr/default.nix
@@ -1,23 +1,27 @@
 { stdenv, fetchurl }:
 
-let version = "4.10.8"; in
+let version = "4.10.9"; 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";
-    sha256 = "507ea57c525c0c524dae4857a642b4ef5c9d795518754c7f83422d22fe544a15";
+    sha256 = "4112ff6ad91d32696ca0c6c3d4abef6367b5dc0127fa172fcb3c3ab81bb2d881";
   };
 
-  preConfigure = "cd nspr";
+  preConfigure = ''
+    cd nspr
+  '';
 
-  configureFlags = "--enable-optimize --disable-debug ${if stdenv.is64bit then "--enable-64bit" else ""}";
+  configureFlags = [
+    "--enable-optimize"
+    "--disable-debug"
+  ] ++ stdenv.lib.optional stdenv.is64bit "--enable-64bit";
 
-  postInstall =
-    ''
-      find $out -name "*.a" | xargs rm
-    '';
+  postInstall = ''
+    find $out -name "*.a" -delete
+  '';
 
   enableParallelBuilding = true;
 
diff --git a/pkgs/development/libraries/nss/default.nix b/pkgs/development/libraries/nss/default.nix
index b9c737e231b1..0a25e24fc543 100644
--- a/pkgs/development/libraries/nss/default.nix
+++ b/pkgs/development/libraries/nss/default.nix
@@ -11,11 +11,11 @@ let
 
 in stdenv.mkDerivation rec {
   name = "nss-${version}";
-  version = "3.19.2";
+  version = "3.20";
 
   src = fetchurl {
-    url = "http://ftp.mozilla.org/pub/mozilla.org/security/nss/releases/NSS_3_19_2_RTM/src/${name}.tar.gz";
-    sha256 = "1306663e8f61d8449ad8cbcffab743a604dcd9f6f34232c210847c51dce2c9ae";
+    url = "http://ftp.mozilla.org/pub/mozilla.org/security/nss/releases/NSS_3_20_RTM/src/${name}.tar.gz";
+    sha256 = "5e38d4b9837ca338af966b97fc91c07f67ad647fb38dc4af3cfd0d84e477d15c";
   };
 
   buildInputs = [ nspr perl zlib sqlite ];
diff --git a/pkgs/development/libraries/opencv/3.x.nix b/pkgs/development/libraries/opencv/3.x.nix
new file mode 100644
index 000000000000..eed77b9113a4
--- /dev/null
+++ b/pkgs/development/libraries/opencv/3.x.nix
@@ -0,0 +1,34 @@
+{ lib, stdenv, fetchurl, cmake, gtk, libjpeg, libpng, libtiff, jasper, ffmpeg
+, fetchpatch, pkgconfig, gstreamer, xineLib, glib, python27, python27Packages, unzip
+, enableBloat ? false }:
+
+let v = "3.0.0"; in
+
+stdenv.mkDerivation rec {
+  name = "opencv-${v}";
+
+  src = fetchurl {
+    url = "https://github.com/Itseez/opencv/archive/${v}.zip";
+    sha256 = "00dh7wvgkflz22liqd10fma8m3395lb3l3rgawnn5wlnz6i4w287";
+  };
+
+  buildInputs =
+    [ unzip libjpeg libpng libtiff ]
+    ++ lib.optionals enableBloat [ gtk glib jasper ffmpeg xineLib gstreamer python27 python27Packages.numpy ];
+
+  nativeBuildInputs = [ cmake pkgconfig ];
+
+  # TODO: Pre-download IPP so that OpenCV doesn't try to download it itself
+  # (which fails).
+  cmakeFlags = [ "-DWITH_IPP=OFF" ];
+
+  enableParallelBuilding = true;
+
+  meta = {
+    description = "Open Computer Vision Library with more than 500 algorithms";
+    homepage = http://opencv.org/;
+    license = stdenv.lib.licenses.bsd3;
+    maintainers = with stdenv.lib.maintainers; [viric flosse];
+    platforms = with stdenv.lib.platforms; linux;
+  };
+}
diff --git a/pkgs/development/libraries/opencv/default.nix b/pkgs/development/libraries/opencv/default.nix
index e0b8dcca1af3..4ce1787dbac6 100644
--- a/pkgs/development/libraries/opencv/default.nix
+++ b/pkgs/development/libraries/opencv/default.nix
@@ -20,10 +20,6 @@ stdenv.mkDerivation rec {
 
   enableParallelBuilding = true;
 
-  cmakeFlags = [
-    "-DCMAKE_BUILD_TYPE=Release"
-  ];
-
   meta = {
     description = "Open Computer Vision Library with more than 500 algorithms";
     homepage = http://opencv.org/;
diff --git a/pkgs/development/libraries/openexr/default.nix b/pkgs/development/libraries/openexr/default.nix
index 71420ba425c9..738e7d87af66 100644
--- a/pkgs/development/libraries/openexr/default.nix
+++ b/pkgs/development/libraries/openexr/default.nix
@@ -8,6 +8,8 @@ stdenv.mkDerivation rec {
     sha256 = "0ca2j526n4wlamrxb85y2jrgcv0gf21b3a19rr0gh4rjqkv1581n";
   };
 
+  outputs = [ "out" "doc" ];
+
   preConfigure = ''
     ./bootstrap
   '';
diff --git a/pkgs/development/libraries/openexr_ctl/default.nix b/pkgs/development/libraries/openexr_ctl/default.nix
deleted file mode 100644
index cd26aae660c4..000000000000
--- a/pkgs/development/libraries/openexr_ctl/default.nix
+++ /dev/null
@@ -1,21 +0,0 @@
-{ stdenv, fetchurl, openexr, ilmbase, ctl }:
-
-stdenv.mkDerivation {
-  name = "openexr_ctl-1.0.1";
-
-  src = fetchurl {
-    url = mirror://sourceforge/ampasctl/openexr_ctl-1.0.1.tar.gz;
-    sha256 = "1jg9smpaplal8l14djp184wzk11nwd3dvm4lhkp69kjgw8jdd21d";
-  };
-
-  propagatedBuildInputs = [ ilmbase ];
-  
-  buildInputs = [ openexr ctl ];
-  
-  configureFlags = "--with-ilmbase-prefix=${ilmbase}";
-
-  meta = {
-    description = "Color Transformation Language";
-    homepage = http://ampasctl.sourceforge.net;
-  };
-}
diff --git a/pkgs/development/libraries/openh264/default.nix b/pkgs/development/libraries/openh264/default.nix
new file mode 100644
index 000000000000..76188d484f91
--- /dev/null
+++ b/pkgs/development/libraries/openh264/default.nix
@@ -0,0 +1,22 @@
+{ stdenv, fetchurl, nasm }:
+
+stdenv.mkDerivation rec {
+  name = "openh264-1.4.0";
+
+  src = fetchurl {
+    url = "https://github.com/cisco/openh264/archive/v1.4.0.tar.gz";
+    sha256 = "08haj0xkyjlwbpqdinxk0cmvqw89bx89ly0kqs9lf87fy6ksgfd1";
+  };
+
+  buildInputs = [ nasm ];
+
+  installPhase = ''
+    make PREFIX=$out install
+  '';
+
+  meta = with stdenv.lib; {
+    description = "A codec library which supports H.264 encoding and decoding";
+    homepage = http://www.openh264.org;
+    license = stdenv.lib.licenses.bsd2;
+  };
+}
diff --git a/pkgs/development/libraries/openldap/default.nix b/pkgs/development/libraries/openldap/default.nix
index e5b7ce107197..83c65048227a 100644
--- a/pkgs/development/libraries/openldap/default.nix
+++ b/pkgs/development/libraries/openldap/default.nix
@@ -1,20 +1,16 @@
-{ stdenv, fetchurl, autoconf, openssl, cyrus_sasl, db, groff }:
+{ stdenv, fetchurl, openssl, cyrus_sasl, db, groff }:
 
 stdenv.mkDerivation rec {
-  name = "openldap-2.4.41";
+  name = "openldap-2.4.42";
 
   src = fetchurl {
     url = "http://www.openldap.org/software/download/OpenLDAP/openldap-release/${name}.tgz";
-    sha256 = "0vkzfd1pmin6xsv8lb1nabfxma8n1q00khr6nfifqkxlm2s6p197";
+    sha256 = "0qwfpb5ipp2l76v11arghq5mr0sjc6xhjfg8a0kgsaw5qpib1dzf";
   };
 
-  nativeBuildInputs = [ autoconf ];
-  buildInputs = [ openssl cyrus_sasl db groff ];
+  outputs = [ "out" "man" ];
 
-  # NOTE: Only needed for the gcc5 patch
-  preConfigure = ''
-    autoconf
-  '';
+  buildInputs = [ openssl cyrus_sasl db groff ];
 
   configureFlags =
     [ "--enable-overlays"
diff --git a/pkgs/development/libraries/openscenegraph/default.nix b/pkgs/development/libraries/openscenegraph/default.nix
index 5fb73eae276a..476f7e14c607 100644
--- a/pkgs/development/libraries/openscenegraph/default.nix
+++ b/pkgs/development/libraries/openscenegraph/default.nix
@@ -17,7 +17,7 @@ let
     baseName="OpenSceneGraph";
     version="3.2.1";
     name="${baseName}-${version}";
-    url="http://www.openscenegraph.org/downloads/developer_releases/${name}.zip";
+    url="http://trac.openscenegraph.org/downloads/developer_releases/${name}.zip";
     hash="0v9y1gxb16y0mj994jd0mhcz32flhv2r6kc01xdqb4817lk75bnr";
   };
 in
diff --git a/pkgs/development/libraries/openssl/default.nix b/pkgs/development/libraries/openssl/default.nix
index b9224dad110a..ca3e7999f9be 100644
--- a/pkgs/development/libraries/openssl/default.nix
+++ b/pkgs/development/libraries/openssl/default.nix
@@ -18,6 +18,8 @@ stdenv.mkDerivation rec {
     sha1 = "9d1977cc89242cd11471269ece2ed4650947c046";
   };
 
+  outputs = [ "out" "man" ];
+
   patches = optional stdenv.isCygwin ./1.0.1-cygwin64.patch
     ++ optional (stdenv.isDarwin || (stdenv ? cross && stdenv.cross.libc == "libSystem")) ./darwin-arch.patch;
 
diff --git a/pkgs/development/libraries/openwsman/default.nix b/pkgs/development/libraries/openwsman/default.nix
new file mode 100644
index 000000000000..0eb940c119ea
--- /dev/null
+++ b/pkgs/development/libraries/openwsman/default.nix
@@ -0,0 +1,38 @@
+{ fetchurl, stdenv, autoconf, automake, libtool, pkgconfig, libxml2, curl, cmake, pam, sblim-sfcc }:
+
+stdenv.mkDerivation rec {
+  version = "2.6.0";
+  name = "openwsman-${version}";
+
+  src = fetchurl {
+    url = "https://github.com/Openwsman/openwsman/archive/v${version}.tar.gz";
+    sha256 = "0gw2dsjxzpchg3s85kplwgp9xhd9l7q4fh37iy7r203pvir4k6s4";
+  };
+
+  buildInputs = [ autoconf automake libtool pkgconfig libxml2 curl cmake pam sblim-sfcc ];
+
+  cmakeFlags = [
+    "-DCMAKE_BUILD_RUBY_GEM=no"
+  ];
+
+  preConfigure = ''
+    cmakeFlags="$cmakeFlags -DPACKAGE_ARCHITECTURE=$(uname -m)";
+  '';
+
+  configureFlags = "--disable-more-warnings";
+
+  meta = {
+    description = "Openwsman server implementation and client api with bindings";
+
+    homepage = https://github.com/Openwsman/openwsman;
+    downloadPage = "https://github.com/Openwsman/openwsman/releases";
+
+    maintainers = [ stdenv.lib.maintainers.deepfire ];
+
+    license = stdenv.lib.licenses.bsd3;
+
+    platforms = stdenv.lib.platforms.gnu;  # arbitrary choice
+
+    inherit version;
+  };
+}
diff --git a/pkgs/development/libraries/ortp/default.nix b/pkgs/development/libraries/ortp/default.nix
index 561d0df4e805..746f10eebed1 100644
--- a/pkgs/development/libraries/ortp/default.nix
+++ b/pkgs/development/libraries/ortp/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl }:
 
 stdenv.mkDerivation rec {
-  name = "ortp-0.24.1";
+  name = "ortp-0.24.2";
 
   src = fetchurl {
     url = "mirror://savannah/linphone/ortp/sources/${name}.tar.gz";
-    sha256 = "1mach7cdq4kydqkll8ra1kir818da07z253rf9pihifipqhcxv6i";
+    sha256 = "05k6ianphr533qnjwxsv7jnh7fb2sq0dj1pdy1bk2w5khmlwfdyb";
   };
 
   meta = with stdenv.lib; {
diff --git a/pkgs/development/libraries/pcg-c/default.nix b/pkgs/development/libraries/pcg-c/default.nix
index 4b8cedd90c73..a165c539ae8f 100644
--- a/pkgs/development/libraries/pcg-c/default.nix
+++ b/pkgs/development/libraries/pcg-c/default.nix
@@ -34,5 +34,6 @@ stdenv.mkDerivation rec {
     platforms = platforms.unix;
     maintainers = [ maintainers.linus ];
     repositories.git = git://github.com/imneme/pcg-c.git;
+    broken = stdenv.isi686; # https://github.com/imneme/pcg-c/issues/11
   };
 }
diff --git a/pkgs/development/libraries/pcl/default.nix b/pkgs/development/libraries/pcl/default.nix
index a71709b554b4..46e2da18aa1e 100644
--- a/pkgs/development/libraries/pcl/default.nix
+++ b/pkgs/development/libraries/pcl/default.nix
@@ -1,23 +1,25 @@
-{ stdenv, fetchurl, cmake, qhull, flann, boost, vtk, eigen, pkgconfig, qt4, libusb1 }:
+{ stdenv, fetchzip, cmake, qhull, flann, boost, vtk, eigen, pkgconfig, qt4
+, libusb1, libpcap, libXt
+}:
 
-stdenv.mkDerivation {
-  name = "pcl-1.6.0";
+stdenv.mkDerivation rec {
+  name = "pcl-1.7.2";
 
-  buildInputs = [ cmake qhull flann boost vtk eigen pkgconfig qt4 libusb1 ];
-
-  src = fetchurl {
-    url = mirror://sourceforge/pointclouds/PCL-1.6.0-Source.tar.bz2;
-    sha256 = "0ip3djcjgynlr9vac6jlcw6kxhg2lm8fc0aqk747a6l0rqvllf1x";
+  src = fetchzip {
+    name = name + "-src";
+    url = "https://github.com/PointCloudLibrary/pcl/archive/${name}.tar.gz";
+    sha256 = "0sm19p6wcls2d9l0vi5fgwqp7l372nh3g7bdin42w31zr8dmz8h8";
   };
 
   enableParallelBuilding = true;
 
+  buildInputs = [ cmake qhull flann boost vtk eigen pkgconfig qt4 libusb1 libpcap libXt ];
+
   meta = {
     homepage = http://pointclouds.org/;
     description = "Open project for 2D/3D image and point cloud processing";
     license = stdenv.lib.licenses.bsd3;
     maintainers = with stdenv.lib.maintainers; [viric];
     platforms = with stdenv.lib.platforms; linux;
-    broken = true;
   };
 }
diff --git a/pkgs/development/libraries/pcre/default.nix b/pkgs/development/libraries/pcre/default.nix
index 71f0df40ec26..a34f3e5e1328 100644
--- a/pkgs/development/libraries/pcre/default.nix
+++ b/pkgs/development/libraries/pcre/default.nix
@@ -12,6 +12,8 @@ stdenv.mkDerivation rec {
     sha256 = "17bqykp604p7376wj3q2nmjdhrb6v1ny8q08zdwi7qvc02l9wrsi";
   };
 
+  outputs = [ "out" "doc" "man" ];
+
   configureFlags = ''
     --enable-jit
     ${if unicodeSupport then "--enable-unicode-properties" else ""}
diff --git a/pkgs/development/libraries/pdf2htmlex/pdf2xml.patch b/pkgs/development/libraries/pdf2htmlex/pdf2xml.patch
deleted file mode 100644
index 596a3aea6749..000000000000
--- a/pkgs/development/libraries/pdf2htmlex/pdf2xml.patch
+++ /dev/null
@@ -1,48 +0,0 @@
-diff -rc pdf2xml/pdf2xml/Makefile.linux pdf2xml-new/pdf2xml/Makefile.linux
-*** pdf2xml/Makefile.linux	2008-02-07 17:43:10.000000000 +0100
---- pdf2xml-new/Makefile.linux	2010-08-25 15:41:23.000000000 +0200
-***************
-*** 30,36 ****
-  
-  
-  # Executable name
-! PDFTOXMLEXE=pdftoxml.exe
-  
-  # Main target
-  all: pdftoxmlEXE
---- 30,36 ----
-  
-  
-  # Executable name
-! PDFTOXMLEXE=pdftoxml
-  
-  # Main target
-  all: pdftoxmlEXE
-diff -rc pdf2xml/pdf2xml/src/pdftoxml.cc pdf2xml-new/pdf2xml/src/pdftoxml.cc
-*** pdf2xml/src/pdftoxml.cc	2010-04-26 10:58:01.000000000 +0200
---- pdf2xml-new/src/pdftoxml.cc	2010-08-25 15:36:15.000000000 +0200
-***************
-*** 11,21 ****
-  //
-  //===========================================================================
-  
-  #include <aconf.h>
-- #include <stdio.h>
-  #include <stdlib.h>
-  #include <stddef.h>
-! #include <string.h>
-  #include "parseargs.h"
-  #include "GString.h"
-  #include "gmem.h"
---- 11,21 ----
-  //
-  //===========================================================================
-  
-+ #include <string.h>
-  #include <aconf.h>
-  #include <stdlib.h>
-  #include <stddef.h>
-! #include <cstdio>
-  #include "parseargs.h"
-  #include "GString.h"
-  #include "gmem.h"
diff --git a/pkgs/development/libraries/pixman/default.nix b/pkgs/development/libraries/pixman/default.nix
index 74d7706ec59f..ce027a0a2690 100644
--- a/pkgs/development/libraries/pixman/default.nix
+++ b/pkgs/development/libraries/pixman/default.nix
@@ -16,6 +16,8 @@ stdenv.mkDerivation rec {
 
   patches = stdenv.lib.optional stdenv.isDarwin ./fix-clang36.patch;
 
+  configureFlags = if stdenv.isArm then ["--disable-arm-iwmmxt"] else null;
+
   meta = {
     homepage = http://pixman.org;
     description = "A low-level library for pixel manipulation";
diff --git a/pkgs/development/libraries/poppler/default.nix b/pkgs/development/libraries/poppler/default.nix
index 4b7debda6383..ce63f5c9716e 100644
--- a/pkgs/development/libraries/poppler/default.nix
+++ b/pkgs/development/libraries/poppler/default.nix
@@ -4,7 +4,7 @@
 , utils ? false, suffix ? "glib"
 }:
 
-let
+let # beware: updates often break cups_filters build
   version = "0.34.0"; # even major numbers are stable
   sha256 = "1c2wa4pfzqmvzq1jpp3ps5nmzz745gcg8dnpwqpfdccy5ydbm90v";
 in
@@ -16,6 +16,8 @@ stdenv.mkDerivation rec {
     inherit sha256;
   };
 
+  outputs = [ "out" "doc" ];
+
   patches = [ ./datadir_env.patch ];
 
   propagatedBuildInputs = with stdenv.lib;
diff --git a/pkgs/development/libraries/ppl/default.nix b/pkgs/development/libraries/ppl/default.nix
index 9edef767481f..96388c3a35a1 100644
--- a/pkgs/development/libraries/ppl/default.nix
+++ b/pkgs/development/libraries/ppl/default.nix
@@ -1,13 +1,13 @@
 { fetchurl, stdenv, gmpxx, perl, gnum4 }:
 
-let version = "1.0"; in
+let version = "1.1"; in
 
 stdenv.mkDerivation rec {
   name = "ppl-${version}";
 
   src = fetchurl {
     url = "http://bugseng.com/products/ppl/download/ftp/releases/${version}/ppl-${version}.tar.bz2";
-    sha256 = "0m0b6dzablci8mlavpsmn5w1v3r46li0wpjwvsybgxx0p1ifjsf1";
+    sha256 = "1vrqhbpyca6sf984cfcwlp8wdnfzj1g7ph9958qdky9978i1nlny";
   };
 
   nativeBuildInputs = [ perl gnum4 ];
@@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
       "--disable-ppl_lcdd" "--disable-ppl_lpsol" "--disable-ppl_pips"
     ];
 
-  patches = [ ./upstream-based.patch ];
+  patches = [ ./ppl-cstddef.patch /* from Fedora */ ];
 
   # Beware!  It took ~6 hours to compile PPL and run its tests on a 1.2 GHz
   # x86_64 box.  Nevertheless, being a dependency of GCC, it probably ought
diff --git a/pkgs/development/libraries/ppl/ppl-cstddef.patch b/pkgs/development/libraries/ppl/ppl-cstddef.patch
new file mode 100644
index 000000000000..8c43b26bef74
--- /dev/null
+++ b/pkgs/development/libraries/ppl/ppl-cstddef.patch
@@ -0,0 +1,238 @@
+diff -up ppl-1.1/src/Dense_Row_defs.hh.orig ppl-1.1/src/Dense_Row_defs.hh
+--- ppl-1.1/src/Dense_Row_defs.hh.orig	2014-04-29 13:08:10.516682937 -0300
++++ ppl-1.1/src/Dense_Row_defs.hh	2014-04-29 13:08:50.447684466 -0300
+@@ -33,6 +33,7 @@ site: http://bugseng.com/products/ppl/ .
+ #include <memory>
+ #include <vector>
+ #include <limits>
++#include <cstddef>
+ 
+ #ifdef PPL_DOXYGEN_INCLUDE_IMPLEMENTATION_DETAILS
+ //! A finite sequence of coefficients.
+@@ -433,7 +434,7 @@ public:
+ 
+   typedef std::bidirectional_iterator_tag iterator_category;
+   typedef Coefficient value_type;
+-  typedef ptrdiff_t difference_type;
++  typedef std::ptrdiff_t difference_type;
+   typedef value_type* pointer;
+   typedef value_type& reference;
+ 
+@@ -474,7 +475,7 @@ class Parma_Polyhedra_Library::Dense_Row
+ public:
+ 
+   typedef const Coefficient value_type;
+-  typedef ptrdiff_t difference_type;
++  typedef std::ptrdiff_t difference_type;
+   typedef value_type* pointer;
+   typedef Coefficient_traits::const_reference reference;
+ 
+diff -up ppl-1.1/src/Linear_Expression_Interface_defs.hh.orig ppl-1.1/src/Linear_Expression_Interface_defs.hh
+--- ppl-1.1/src/Linear_Expression_Interface_defs.hh.orig	2014-04-29 13:08:17.337683198 -0300
++++ ppl-1.1/src/Linear_Expression_Interface_defs.hh	2014-04-29 13:08:40.999684104 -0300
+@@ -32,6 +32,7 @@ site: http://bugseng.com/products/ppl/ .
+ #include "Sparse_Row_types.hh"
+ #include <vector>
+ #include <set>
++#include <cstddef>
+ 
+ #ifdef PPL_DOXYGEN_INCLUDE_IMPLEMENTATION_DETAILS
+ //! A linear expression.
+@@ -65,7 +66,7 @@ public:
+   public:
+     typedef std::bidirectional_iterator_tag iterator_category;
+     typedef const Coefficient value_type;
+-    typedef ptrdiff_t difference_type;
++    typedef std::ptrdiff_t difference_type;
+     typedef value_type* pointer;
+     typedef Coefficient_traits::const_reference reference;
+ 
+diff -up ppl-1.1/src/CO_Tree_defs.hh.orig ppl-1.1/src/CO_Tree_defs.hh
+--- ppl-1.1/src/CO_Tree_defs.hh.orig	2014-04-29 13:11:33.725690719 -0300
++++ ppl-1.1/src/CO_Tree_defs.hh	2014-04-29 13:11:55.943691569 -0300
+@@ -28,6 +28,7 @@ site: http://bugseng.com/products/ppl/ .
+ 
+ #include "Coefficient_defs.hh"
+ #include <memory>
++#include <cstddef>
+ 
+ #ifndef PPL_CO_TREE_EXTRA_DEBUG
+ #ifdef PPL_ABI_BREAKING_EXTRA_DEBUG
+@@ -159,7 +160,7 @@ public:
+ 
+     typedef std::bidirectional_iterator_tag iterator_category;
+     typedef const data_type value_type;
+-    typedef ptrdiff_t difference_type;
++    typedef std::ptrdiff_t difference_type;
+     typedef value_type* pointer;
+     typedef data_type_const_reference reference;
+ 
+@@ -314,7 +315,7 @@ public:
+ 
+     typedef std::bidirectional_iterator_tag iterator_category;
+     typedef data_type value_type;
+-    typedef ptrdiff_t difference_type;
++    typedef std::ptrdiff_t difference_type;
+     typedef value_type* pointer;
+     typedef value_type& reference;
+ 
+diff -up ppl-1.1/src/CO_Tree_inlines.hh.orig ppl-1.1/src/CO_Tree_inlines.hh
+--- ppl-1.1/src/CO_Tree_inlines.hh.orig	2014-04-29 13:14:12.738696808 -0300
++++ ppl-1.1/src/CO_Tree_inlines.hh	2014-04-29 13:14:48.887698192 -0300
+@@ -24,6 +24,8 @@ site: http://bugseng.com/products/ppl/ .
+ #ifndef PPL_CO_Tree_inlines_hh
+ #define PPL_CO_Tree_inlines_hh 1
+ 
++#include <cstddef>
++
+ namespace Parma_Polyhedra_Library {
+ 
+ inline dimension_type
+@@ -31,7 +33,7 @@ CO_Tree::dfs_index(const_iterator itr) c
+   PPL_ASSERT(itr.current_index != 0);
+   PPL_ASSERT(itr.current_index >= indexes + 1);
+   PPL_ASSERT(itr.current_index <= indexes + reserved_size);
+-  const ptrdiff_t index = itr.current_index - indexes;
++  const std::ptrdiff_t index = itr.current_index - indexes;
+   return static_cast<dimension_type>(index);
+ }
+ 
+@@ -40,7 +42,7 @@ CO_Tree::dfs_index(iterator itr) const {
+   PPL_ASSERT(itr.current_index != 0);
+   PPL_ASSERT(itr.current_index >= indexes + 1);
+   PPL_ASSERT(itr.current_index <= indexes + reserved_size);
+-  const ptrdiff_t index = itr.current_index - indexes;
++  const std::ptrdiff_t index = itr.current_index - indexes;
+   return static_cast<dimension_type>(index);
+ }
+ 
+@@ -772,7 +774,7 @@ CO_Tree::tree_iterator::follow_left_chil
+   p -= (offset - 1);
+   while (*p == unused_index)
+     ++p;
+-  const ptrdiff_t distance = p - tree.indexes;
++  const std::ptrdiff_t distance = p - tree.indexes;
+   PPL_ASSERT(distance >= 0);
+   i = static_cast<dimension_type>(distance);
+   offset = least_significant_one_mask(i);
+@@ -787,7 +789,7 @@ CO_Tree::tree_iterator::follow_right_chi
+   p += (offset - 1);
+   while (*p == unused_index)
+     --p;
+-  const ptrdiff_t distance = p - tree.indexes;
++  const std::ptrdiff_t distance = p - tree.indexes;
+   PPL_ASSERT(distance >= 0);
+   i = static_cast<dimension_type>(distance);
+   offset = least_significant_one_mask(i);
+diff -up ppl-1.1/src/Linear_Expression_defs.hh.orig ppl-1.1/src/Linear_Expression_defs.hh
+--- ppl-1.1/src/Linear_Expression_defs.hh.orig	2014-04-29 13:15:39.793700141 -0300
++++ ppl-1.1/src/Linear_Expression_defs.hh	2014-04-29 13:16:07.464701201 -0300
+@@ -51,6 +51,7 @@ site: http://bugseng.com/products/ppl/ .
+ 
+ #include "Linear_Expression_Interface_defs.hh"
+ #include "Variable_defs.hh"
++#include <cstddef>
+ 
+ namespace Parma_Polyhedra_Library {
+ 
+@@ -381,7 +382,7 @@ public:
+   public:
+     typedef std::bidirectional_iterator_tag iterator_category;
+     typedef const Coefficient value_type;
+-    typedef ptrdiff_t difference_type;
++    typedef std::ptrdiff_t difference_type;
+     typedef value_type* pointer;
+     typedef Coefficient_traits::const_reference reference;
+ 
+diff -up ppl-1.1/src/CO_Tree.cc.orig ppl-1.1/src/CO_Tree.cc
+--- ppl-1.1/src/CO_Tree.cc.orig	2014-04-29 13:19:37.192709232 -0300
++++ ppl-1.1/src/CO_Tree.cc	2014-04-29 13:19:58.000710029 -0300
+@@ -954,7 +954,7 @@ PPL::CO_Tree
+     --subtree_size;
+   }
+ 
+-  const ptrdiff_t distance = first_unused_index - indexes;
++  const std::ptrdiff_t distance = first_unused_index - indexes;
+   PPL_ASSERT(distance >= 0);
+   return static_cast<dimension_type>(distance);
+ }
+diff -up ppl-1.1/src/Constraint_System_defs.hh.orig ppl-1.1/src/Constraint_System_defs.hh
+--- ppl-1.1/src/Constraint_System_defs.hh.orig	2014-04-29 13:30:05.530733294 -0300
++++ ppl-1.1/src/Constraint_System_defs.hh	2014-04-29 13:30:27.167734122 -0300
+@@ -37,6 +37,7 @@ site: http://bugseng.com/products/ppl/ .
+ #include "termination_types.hh"
+ #include <iterator>
+ #include <iosfwd>
++#include <cstddef>
+ 
+ namespace Parma_Polyhedra_Library {
+ 
+@@ -609,7 +610,7 @@ for (Constraint_System::const_iterator i
+ class Parma_Polyhedra_Library::Constraint_System_const_iterator
+   : public std::iterator<std::forward_iterator_tag,
+                          Constraint,
+-                         ptrdiff_t,
++                         std::ptrdiff_t,
+                          const Constraint*,
+                          const Constraint&> {
+ public:
+diff -up ppl-1.1/src/Congruence_System_defs.hh.orig ppl-1.1/src/Congruence_System_defs.hh
+--- ppl-1.1/src/Congruence_System_defs.hh.orig	2014-04-29 13:33:56.927742155 -0300
++++ ppl-1.1/src/Congruence_System_defs.hh	2014-04-29 13:34:15.535742867 -0300
+@@ -33,6 +33,7 @@ site: http://bugseng.com/products/ppl/ .
+ #include "Congruence_defs.hh"
+ #include "Constraint_System_types.hh"
+ #include <iosfwd>
++#include <cstddef>
+ 
+ namespace Parma_Polyhedra_Library {
+ 
+@@ -249,7 +250,7 @@ public:
+   class const_iterator
+     : public std::iterator<std::forward_iterator_tag,
+                            Congruence,
+-                           ptrdiff_t,
++                           std::ptrdiff_t,
+                            const Congruence*,
+                            const Congruence&> {
+   public:
+diff -up ppl-1.1/src/Generator_System_defs.hh.orig ppl-1.1/src/Generator_System_defs.hh
+--- ppl-1.1/src/Generator_System_defs.hh.orig	2014-04-29 13:44:30.122766402 -0300
++++ ppl-1.1/src/Generator_System_defs.hh	2014-04-29 13:44:48.167767093 -0300
+@@ -33,6 +33,7 @@ site: http://bugseng.com/products/ppl/ .
+ #include "Poly_Con_Relation_defs.hh"
+ #include "Polyhedron_types.hh"
+ #include <iosfwd>
++#include <cstddef>
+ 
+ namespace Parma_Polyhedra_Library {
+ 
+@@ -679,7 +680,7 @@ copy(gs.begin(), gs.end(), ostream_itera
+ class Parma_Polyhedra_Library::Generator_System_const_iterator
+   : public std::iterator<std::forward_iterator_tag,
+         Generator,
+-        ptrdiff_t,
++        std::ptrdiff_t,
+         const Generator*,
+         const Generator&> {
+ public:
+diff -up ppl-1.1/src/Grid_Generator_System_defs.hh.orig ppl-1.1/src/Grid_Generator_System_defs.hh
+--- ppl-1.1/src/Grid_Generator_System_defs.hh.orig	2014-04-29 13:45:26.073768544 -0300
++++ ppl-1.1/src/Grid_Generator_System_defs.hh	2014-04-29 13:45:42.535769175 -0300
+@@ -31,6 +31,7 @@ site: http://bugseng.com/products/ppl/ .
+ #include "Variables_Set_types.hh"
+ #include "Polyhedron_types.hh"
+ #include <iosfwd>
++#include <cstddef>
+ 
+ namespace Parma_Polyhedra_Library {
+ 
+@@ -277,7 +278,7 @@ public:
+   class const_iterator
+     : public std::iterator<std::forward_iterator_tag,
+                            Grid_Generator,
+-                           ptrdiff_t,
++                           std::ptrdiff_t,
+                            const Grid_Generator*,
+                            const Grid_Generator&> {
+   public:
diff --git a/pkgs/development/libraries/ppl/upstream-based.patch b/pkgs/development/libraries/ppl/upstream-based.patch
deleted file mode 100644
index 551050f67bf9..000000000000
--- a/pkgs/development/libraries/ppl/upstream-based.patch
+++ /dev/null
@@ -1,42 +0,0 @@
-https://bugs.gentoo.org/show_bug.cgi?id=447928
---- ppl-1.0/src/p_std_bits.cc.org	2012-12-30 00:37:03.033948083 +0100
-+++ ppl-1.0/src/mp_std_bits.cc	2012-12-30 00:44:12.893019313 +0100
-@@ -25,6 +25,9 @@
- #include "ppl-config.h"
- #include "mp_std_bits.defs.hh"
- 
-+#if __GNU_MP_VERSION < 5 \
-+  || (__GNU_MP_VERSION == 5 && __GNU_MP_VERSION_MINOR < 1)
-+
- const bool std::numeric_limits<mpz_class>::is_specialized;
- const int std::numeric_limits<mpz_class>::digits;
- const int std::numeric_limits<mpz_class>::digits10;
-@@ -70,3 +73,6 @@
- const bool std::numeric_limits<mpq_class>::traps;
- const bool std::numeric_limits<mpq_class>::tininess_before;
- const std::float_round_style std::numeric_limits<mpq_class>::round_style;
-+
-+#endif // __GNU_MP_VERSION < 5
-+       // || (__GNU_MP_VERSION == 5 && __GNU_MP_VERSION_MINOR < 1)
---- ppl-1.0/src/mp_std_bits.defs.hh.org	2012-12-30 00:37:03.037948187 +0100
-+++ ppl-1.0/src/mp_std_bits.defs.hh	2012-12-30 00:42:32.002424189 +0100
-@@ -38,6 +38,9 @@
- #endif // defined(PPL_DOXYGEN_INCLUDE_IMPLEMENTATION_DETAILS)
- void swap(mpq_class& x, mpq_class& y);
- 
-+#if __GNU_MP_VERSION < 5 \
-+  || (__GNU_MP_VERSION == 5 && __GNU_MP_VERSION_MINOR < 1)
-+
- namespace std {
- 
- #ifdef PPL_DOXYGEN_INCLUDE_IMPLEMENTATION_DETAILS
-@@ -164,6 +167,9 @@
- 
- } // namespace std
- 
-+#endif // __GNU_MP_VERSION < 5
-+       // || (__GNU_MP_VERSION == 5 && __GNU_MP_VERSION_MINOR < 1)
-+
- #include "mp_std_bits.inlines.hh"
- 
- #endif // !defined(PPL_mp_std_bits_defs_hh)
diff --git a/pkgs/development/libraries/protobuf/3.0.nix b/pkgs/development/libraries/protobuf/3.0.nix
new file mode 100644
index 000000000000..900c9dc5a512
--- /dev/null
+++ b/pkgs/development/libraries/protobuf/3.0.nix
@@ -0,0 +1,12 @@
+{ callPackage, fetchFromGitHub, ... } @ args:
+
+callPackage ./generic.nix (args // rec {
+  version = "3.0.0-alpha-3.1";
+  # make sure you test also -A pythonPackages.protobuf
+  src = fetchFromGitHub {
+    owner = "google";
+    repo = "protobuf";
+    rev = "v${version}";
+    sha256 = "0vzw20ymjmjrrmg84f822qslclsb2q0wf0qdj2da198gmkkbrw45";
+  };
+})
diff --git a/pkgs/development/libraries/qpdf/default.nix b/pkgs/development/libraries/qpdf/default.nix
index 939351750920..340f4558f819 100644
--- a/pkgs/development/libraries/qpdf/default.nix
+++ b/pkgs/development/libraries/qpdf/default.nix
@@ -1,13 +1,13 @@
 { stdenv, fetchurl, pcre, zlib, perl }:
 
-let version = "5.1.2";
+let version = "5.1.3";
 in
 stdenv.mkDerivation rec {
   name = "qpdf-${version}";
 
   src = fetchurl {
     url = "mirror://sourceforge/qpdf/qpdf/${version}/${name}.tar.gz";
-    sha256 = "1zbvhrp0zjzbi6q2bnbxbg6399r47pq5gw3kspzph81j19fqvpg9";
+    sha256 = "1lq1v7xghvl6p4hgrwbps3a13ad6lh4ib3myimb83hxgsgd4n5nm";
   };
 
   nativeBuildInputs = [ perl ];
diff --git a/pkgs/development/libraries/qscintilla/default.nix b/pkgs/development/libraries/qscintilla/default.nix
index 8c7301e3c407..26d412e5a8cb 100644
--- a/pkgs/development/libraries/qscintilla/default.nix
+++ b/pkgs/development/libraries/qscintilla/default.nix
@@ -23,8 +23,6 @@ stdenv.mkDerivation rec {
     qmake qscintilla.pro
   '';
 
-  # TODO PyQt Support.
-
   meta = {
     description = "A Qt port of the Scintilla text editing library";
     longDescription = ''
diff --git a/pkgs/development/libraries/qt-5/5.3/0014-mkspecs-libgl.patch b/pkgs/development/libraries/qt-5/5.3/0014-mkspecs-libgl.patch
new file mode 100644
index 000000000000..94a031d12574
--- /dev/null
+++ b/pkgs/development/libraries/qt-5/5.3/0014-mkspecs-libgl.patch
@@ -0,0 +1,15 @@
+Ensure Qt knows where libGL is.
+
+Author: Bjørn Forsman <bjorn.forsman@gmail.com>
+diff -uNr qt-everywhere-opensource-src-5.3.2.orig/qtbase/mkspecs/common/linux.conf qt-everywhere-opensource-src-5.3.2/qtbase/mkspecs/common/linux.conf
+--- qt-everywhere-opensource-src-5.3.2.orig/qtbase/mkspecs/common/linux.conf	2014-09-11 12:48:07.000000000 +0200
++++ qt-everywhere-opensource-src-5.3.2/qtbase/mkspecs/common/linux.conf	2015-08-23 13:03:30.617473019 +0200
+@@ -13,7 +13,7 @@
+ QMAKE_INCDIR_X11        =
+ QMAKE_LIBDIR_X11        =
+ QMAKE_INCDIR_OPENGL     =
+-QMAKE_LIBDIR_OPENGL     =
++QMAKE_LIBDIR_OPENGL     = @mesa@/lib
+ QMAKE_INCDIR_OPENGL_ES2 = $$QMAKE_INCDIR_OPENGL
+ QMAKE_LIBDIR_OPENGL_ES2 = $$QMAKE_LIBDIR_OPENGL
+ QMAKE_INCDIR_EGL        =
diff --git a/pkgs/development/libraries/qt-5/5.3/default.nix b/pkgs/development/libraries/qt-5/5.3/default.nix
index 693f62a63ebd..d1a049d78a72 100644
--- a/pkgs/development/libraries/qt-5/5.3/default.nix
+++ b/pkgs/development/libraries/qt-5/5.3/default.nix
@@ -22,6 +22,8 @@ let
   ver = "${v_maj}.${v_min}";
 in
 
+let system-x86_64 = elem stdenv.system platforms.x86_64; in
+
 stdenv.mkDerivation rec {
   name = "qt-${ver}";
 
@@ -79,11 +81,14 @@ stdenv.mkDerivation rec {
       (substituteAll { src = ./0011-dlopen-openssl.patch; inherit openssl; })
       (substituteAll { src = ./0012-dlopen-dbus.patch; dbus_libs = dbus; })
       ./0013-qtwebkit-glib-2.44.patch
-    ];
+    ] ++ optional mesaSupported
+      (substituteAll { src = ./0014-mkspecs-libgl.patch; inherit mesa; });
 
   preConfigure = ''
     export LD_LIBRARY_PATH="$PWD/qtbase/lib:$PWD/qtbase/plugins/platforms:$PWD/qttools/lib:$LD_LIBRARY_PATH"
     export MAKEFLAGS=-j$NIX_BUILD_CORES
+    export configureFlags+="-plugindir $out/lib/qt5/plugins -importdir $out/lib/qt5/imports -qmldir $out/lib/qt5/qml"
+    export configureFlags+=" -docdir $out/share/doc/qt5"
   '';
 
   prefixKey = "-prefix ";
@@ -126,6 +131,16 @@ stdenv.mkDerivation rec {
     -no-linuxfb
     -no-kms
 
+    ${optionalString (!system-x86_64) "-no-sse2"}
+    -no-sse3
+    -no-ssse3
+    -no-sse4.1
+    -no-sse4.2
+    -no-avx
+    -no-avx2
+    -no-mips_dsp
+    -no-mips_dspr2
+
     -system-zlib
     -system-libpng
     -system-libjpeg
@@ -144,6 +159,11 @@ stdenv.mkDerivation rec {
     -${optionalString (buildTests == false) "no"}make tests
   '';
 
+  # PostgreSQL autodetection fails sporadically because Qt omits the "-lpq" flag
+  # if dependency paths contain the string "pq", which can occur in the hash.
+  # To prevent these failures, we need to override PostgreSQL detection.
+  PSQL_LIBS = optionalString (postgresql != null) "-L${postgresql}/lib -lpq";
+
   propagatedBuildInputs = [
     xlibs.libXcomposite libX11 libxcb libXext libXrender libXi
     fontconfig freetype openssl dbus.libs glib udev libxml2 libxslt pcre
@@ -159,7 +179,9 @@ stdenv.mkDerivation rec {
   ++ optional (postgresql != null) postgresql
   ++ optionals gtkStyle [gnome_vfs libgnomeui gtk GConf];
 
-  buildInputs = [ gdb bison flex gperf ruby ];
+  buildInputs =
+    [ bison flex gperf ruby ]
+    ++ optional developerBuild gdb;
 
   nativeBuildInputs = [ python perl pkgconfig ];
 
diff --git a/pkgs/development/libraries/qt-5/5.4/0014-mkspecs-libgl.patch b/pkgs/development/libraries/qt-5/5.4/0014-mkspecs-libgl.patch
new file mode 100644
index 000000000000..94a031d12574
--- /dev/null
+++ b/pkgs/development/libraries/qt-5/5.4/0014-mkspecs-libgl.patch
@@ -0,0 +1,15 @@
+Ensure Qt knows where libGL is.
+
+Author: Bjørn Forsman <bjorn.forsman@gmail.com>
+diff -uNr qt-everywhere-opensource-src-5.3.2.orig/qtbase/mkspecs/common/linux.conf qt-everywhere-opensource-src-5.3.2/qtbase/mkspecs/common/linux.conf
+--- qt-everywhere-opensource-src-5.3.2.orig/qtbase/mkspecs/common/linux.conf	2014-09-11 12:48:07.000000000 +0200
++++ qt-everywhere-opensource-src-5.3.2/qtbase/mkspecs/common/linux.conf	2015-08-23 13:03:30.617473019 +0200
+@@ -13,7 +13,7 @@
+ QMAKE_INCDIR_X11        =
+ QMAKE_LIBDIR_X11        =
+ QMAKE_INCDIR_OPENGL     =
+-QMAKE_LIBDIR_OPENGL     =
++QMAKE_LIBDIR_OPENGL     = @mesa@/lib
+ QMAKE_INCDIR_OPENGL_ES2 = $$QMAKE_INCDIR_OPENGL
+ QMAKE_LIBDIR_OPENGL_ES2 = $$QMAKE_LIBDIR_OPENGL
+ QMAKE_INCDIR_EGL        =
diff --git a/pkgs/development/libraries/qt-5/5.4/qt-submodule.nix b/pkgs/development/libraries/qt-5/5.4/qt-submodule.nix
index b242661270d2..4012b637e286 100644
--- a/pkgs/development/libraries/qt-5/5.4/qt-submodule.nix
+++ b/pkgs/development/libraries/qt-5/5.4/qt-submodule.nix
@@ -20,12 +20,6 @@ mkDerivation (args // {
   dontFixLibtool = args.dontFixLibtool or true;
   configureScript = args.configureScript or "qmake";
 
-  /*
-  preConfigure = ''
-    export PATH="$out/bin:$PATH"
-  '';
-  */
-
   postInstall = ''
     rm "$out/bin/qmake" "$out/bin/qt.conf"
 
diff --git a/pkgs/development/libraries/qt-5/5.4/qtbase.nix b/pkgs/development/libraries/qt-5/5.4/qtbase.nix
index 7ef39a408603..2e4a1c1c161a 100644
--- a/pkgs/development/libraries/qt-5/5.4/qtbase.nix
+++ b/pkgs/development/libraries/qt-5/5.4/qtbase.nix
@@ -25,6 +25,8 @@
 
 with stdenv.lib;
 
+let system-x86_64 = elem stdenv.system platforms.x86_64; in
+
 stdenv.mkDerivation {
 
   name = "qtbase-${version}";
@@ -69,7 +71,8 @@ stdenv.mkDerivation {
       (substituteAll { src = ./0011-dlopen-openssl.patch; inherit openssl; })
       (substituteAll { src = ./0012-dlopen-dbus.patch; dbus_libs = dbus; })
       ./0013-xdg_config_dirs.patch
-    ]
+    ] ++ optional mesaSupported
+      (substituteAll { src = ./0014-mkspecs-libgl.patch; inherit mesa; })
     ++ (optional decryptSslTraffic ./0100-ssl.patch);
 
   preConfigure = ''
@@ -82,6 +85,7 @@ stdenv.mkDerivation {
     sed -i 's/PATHS.*NO_DEFAULT_PATH//' "qtbase/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in"
 
     export configureFlags+="-plugindir $out/lib/qt5/plugins -importdir $out/lib/qt5/imports -qmldir $out/lib/qt5/qml"
+    export configureFlags+=" -docdir $out/share/doc/qt5"
   '';
 
   prefixKey = "-prefix ";
@@ -104,6 +108,7 @@ stdenv.mkDerivation {
     -strip
     -reduce-relocations
     -system-proxies
+    -pkg-config
 
     -gui
     -widgets
@@ -124,6 +129,16 @@ stdenv.mkDerivation {
     -no-linuxfb
     -no-kms
 
+    ${optionalString (!system-x86_64) "-no-sse2"}
+    -no-sse3
+    -no-ssse3
+    -no-sse4.1
+    -no-sse4.2
+    -no-avx
+    -no-avx2
+    -no-mips_dsp
+    -no-mips_dspr2
+
     -system-zlib
     -system-libpng
     -system-libjpeg
@@ -142,6 +157,11 @@ stdenv.mkDerivation {
     -${optionalString (buildTests == false) "no"}make tests
   '';
 
+  # PostgreSQL autodetection fails sporadically because Qt omits the "-lpq" flag
+  # if dependency paths contain the string "pq", which can occur in the hash.
+  # To prevent these failures, we need to override PostgreSQL detection.
+  PSQL_LIBS = optionalString (postgresql != null) "-L${postgresql}/lib -lpq";
+
   propagatedBuildInputs = [
     xlibs.libXcomposite libX11 libxcb libXext libXrender libXi
     fontconfig freetype openssl dbus.libs glib udev libxml2 libxslt pcre
@@ -156,7 +176,9 @@ stdenv.mkDerivation {
   ++ optional (postgresql != null) postgresql
   ++ optionals gtkStyle [gnome_vfs libgnomeui gtk GConf];
 
-  buildInputs = [ gdb bison flex gperf ruby ];
+  buildInputs =
+    [ bison flex gperf ruby ]
+    ++ optional developerBuild gdb;
 
   nativeBuildInputs = [ python perl pkgconfig ];
 
@@ -171,12 +193,11 @@ stdenv.mkDerivation {
 
       # Don't retain build-time dependencies like gdb and ruby.
       sed '/QMAKE_DEFAULT_.*DIRS/ d' -i $out/mkspecs/qconfig.pri
-
-      mkdir -p "$out/nix-support"
-      substitute ${./setup-hook.sh} "$out/nix-support/setup-hook" \
-        --subst-var out --subst-var-by lndir "${lndir}"
     '';
 
+  inherit lndir;
+  setupHook = ./setup-hook.sh;
+
   enableParallelBuilding = true; # often fails on Hydra, as well as qt4
 
   meta = {
diff --git a/pkgs/development/libraries/qt-5/5.4/setup-hook.sh b/pkgs/development/libraries/qt-5/5.4/setup-hook.sh
index 940b9d4e7a1f..3bc4890f3bb2 100644
--- a/pkgs/development/libraries/qt-5/5.4/setup-hook.sh
+++ b/pkgs/development/libraries/qt-5/5.4/setup-hook.sh
@@ -25,6 +25,25 @@ addQtModule() {
             if [[ -n $qtSubmodule ]]; then
                 find "$1/lib" -printf 'lib/%P\n' >> "$qtOut/nix-support/qt-inputs"
             fi
+
+            if [[ -d "$1/lib/qt5/plugins" ]]; then
+                QT_PLUGIN_PATH="$QT_PLUGIN_PATH${QT_PLUGIN_PATH:+:}$1/lib/qt5/plugins";
+            fi
+
+            if [[ -d "$1/lib/qt5/imports" ]]; then
+                QML_IMPORT_PATH="$QML_IMPORT_PATH${QML_IMPORT_PATH:+:}$1/lib/qt5/imports";
+            fi
+
+            if [[ -d "$1/lib/qt5/qml" ]]; then
+                QML2_IMPORT_PATH="$QML2_IMPORT_PATH${QML2_IMPORT_PATH:+:}$1/lib/qt5/qml";
+            fi
+        fi
+
+        if [[ -d "$1/share" ]]; then
+            @lndir@/bin/lndir -silent "$1/share" "$qtOut/share"
+            if [[ -n $qtSubmodule ]]; then
+                find "$1/share" -printf 'share/%P\n' >> "$qtOut/nix-support/qt-inputs"
+            fi
         fi
     fi
 }
@@ -40,7 +59,8 @@ else
     qtOut=$out
 fi
 
-mkdir -p "$qtOut/bin" "$qtOut/mkspecs" "$qtOut/include" "$qtOut/nix-support" "$qtOut/lib"
+mkdir -p "$qtOut/bin" "$qtOut/mkspecs" "$qtOut/include" \
+         "$qtOut/nix-support" "$qtOut/lib" "$qtOut/share"
 
 cp "@out@/bin/qmake" "$qtOut/bin"
 cat >"$qtOut/bin/qt.conf" <<EOF
@@ -49,6 +69,7 @@ Prefix = $qtOut
 Plugins = lib/qt5/plugins
 Imports = lib/qt5/imports
 Qml2Imports = lib/qt5/qml
+Documentation = share/doc/qt5
 EOF
 export QMAKE="$qtOut/bin/qmake"
 
diff --git a/pkgs/development/libraries/qt-5/qt-env.nix b/pkgs/development/libraries/qt-5/qt-env.nix
new file mode 100644
index 000000000000..01ddbf314282
--- /dev/null
+++ b/pkgs/development/libraries/qt-5/qt-env.nix
@@ -0,0 +1,31 @@
+{ runCommand, lndir }:
+
+{ paths, qtbase }:
+
+runCommand "qt-env" { inherit paths qtbase; } ''
+
+mkdir -p "$out/bin" "$out/mkspecs" "$out/include" "$out/lib" "$out/share"
+
+cp "$qtbase/bin/qmake" "$out/bin"
+cat >"$out/bin/qt.conf" <<EOF
+[Paths]
+Prefix = $out
+Plugins = lib/qt5/plugins
+Imports = lib/qt5/imports
+Qml2Imports = lib/qt5/qml
+Documentation = share/doc/qt5
+EOF
+
+for path in $paths; do
+    if [[ -d "$path/mkspecs" ]]; then
+        ${lndir}/bin/lndir -silent "$path/mkspecs" "$out/mkspecs"
+
+        for dir in bin include lib share; do
+            if [[ -d "$path/$dir" ]]; then
+                ${lndir}/bin/lndir -silent "$path/$dir" "$out/$dir"
+            fi
+        done
+    fi
+done
+
+''
diff --git a/pkgs/development/libraries/rocksdb/default.nix b/pkgs/development/libraries/rocksdb/default.nix
index 004e5e57de44..1ea903400219 100644
--- a/pkgs/development/libraries/rocksdb/default.nix
+++ b/pkgs/development/libraries/rocksdb/default.nix
@@ -13,13 +13,13 @@ let
 in
 stdenv.mkDerivation rec {
   name = "rocksdb-${version}";
-  version = "3.11.2";
+  version = "3.13.1";
 
   src = fetchFromGitHub {
     owner = "facebook";
     repo = "rocksdb";
     rev = "rocksdb-${version}";
-    sha256 = "0cjwr7n5l2wdzdv4b0p90k0ijg9ka28akpq2aqa8lknsa1kb1cyv";
+    sha256 = "1jw2sjvpixz565wvmgls4rly3wylcmyypka4pvd9mhxkq8d699h9";
   };
 
   buildInputs = [ snappy google-gflags zlib bzip2 lz4 numactl malloc ];
@@ -56,7 +56,7 @@ stdenv.mkDerivation rec {
     homepage = http://rocksdb.org;
     description = "A library that provides an embeddable, persistent key-value store for fast storage";
     license = licenses.bsd3;
-    platforms = platforms.all;
+    platforms = platforms.allBut [ "i686-linux" ];
     maintainers = with maintainers; [ wkennington ];
   };
 }
diff --git a/pkgs/development/libraries/rote/default.nix b/pkgs/development/libraries/rote/default.nix
new file mode 100644
index 000000000000..b87d4ed4ee4a
--- /dev/null
+++ b/pkgs/development/libraries/rote/default.nix
@@ -0,0 +1,32 @@
+{ stdenv, fetchurl, ncurses }:
+
+let version = "0.2.8"; in
+stdenv.mkDerivation rec {
+  name = "rote-${version}";
+
+  src = fetchurl {
+    sha256 = "05v1lw99jv4cwxl7spyi7by61j2scpdsvx809x5cga7dm5dhlmky";
+    url = "mirror://sourceforge/rote/${name}.tar.gz";
+  };
+
+  buildInputs = [ ncurses ];
+
+  enableParallelBuilding = true;
+
+  meta = with stdenv.lib; {
+    inherit version;
+    description = "Our Own Terminal Emulation Library";
+    longDescription = ''
+      ROTE is a simple C library for VT102 terminal emulation. It allows the
+      programmer to set up virtual 'screens' and send them data. The virtual
+      screens will emulate the behavior of a VT102 terminal, interpreting
+      escape sequences, control characters and such. The library supports
+      ncurses as well so that you may render the virtual screen to the real
+      screen when you need to.
+    '';
+    homepage = http://rote.sourceforge.net/;
+    license = licenses.lgpl21;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ nckx ];
+  };
+}
diff --git a/pkgs/development/libraries/ruby_gpgme/default.nix b/pkgs/development/libraries/ruby_gpgme/default.nix
deleted file mode 100644
index c5f2366bfa1c..000000000000
--- a/pkgs/development/libraries/ruby_gpgme/default.nix
+++ /dev/null
@@ -1,64 +0,0 @@
-{ stdenv, fetchurl, gpgme, ruby, rubygems, hoe }:
-
-stdenv.mkDerivation {
-  name = "ruby-gpgme-1.0.8";
-
-  src = fetchurl {
-    url = "https://github.com/ueno/ruby-gpgme/archive/1.0.8.tar.gz";
-    sha256 = "1j7jkl9s8iqcmxf3x6c9kljm19hw1jg6yvwbndmkw43qacdr9nxb";
-  };
-
-  meta = {
-    description = ''
-      Ruby-GPGME is a Ruby language binding of GPGME (GnuPG Made
-      Easy)
-    '';
-    homepage = "http://rubyforge.org/projects/ruby-gpgme/";
-    longDescription = ''
-      Ruby-GPGME is a Ruby language binding of GPGME (GnuPG Made Easy).
-
-      GnuPG Made Easy (GPGME) is a library designed to make access to GnuPG
-      easier for applications. It provides a High-Level Crypto API for
-      encryption, decryption, signing, signature verification and key
-      management.
-    '';
-  };
-
-  buildInputs = [ gpgme rubygems hoe ruby ];
-
-  buildPhase = ''
-    ${ruby}/bin/ruby extconf.rb
-    rake gem
-  '';
-
-  installPhase = ''
-    export HOME=$TMP/home; mkdir -pv "$HOME"
-
-    # For some reason, the installation phase doesn't work with the default
-    # make install command run by gem (we'll fix it and do it ourselves later)
-    gem install --no-verbose --install-dir "$out/${ruby.gemPath}" \
-        --bindir "$out/bin" --no-rdoc --no-ri pkg/gpgme-1.0.8.gem || true
-
-    # Create a bare-bones gemspec file so that ruby will recognise the gem
-    cat <<EOF >"$out/${ruby.gemPath}/specifications/gpgme.gemspec"
-    Gem::Specification.new do |s|
-      s.name              = 'gpgme'
-      s.version           = '1.0.8'
-      s.files             = Dir['{lib,examples}/**/*']
-      s.rubyforge_project = 'ruby-gpgme'
-      s.require_paths     = ['lib']
-    end
-    EOF
-
-    cd "$out/${ruby.gemPath}/gems/gpgme-1.0.8"
-    mkdir src
-    mv lib src
-    sed -i "s/srcdir = ./srcdir = src/" Makefile
-    make install
-
-    mv lib lib.bak
-    mv src/lib lib
-    rmdir src
-  '';
-}
-
diff --git a/pkgs/development/libraries/ruby_ncursesw_sup/default.nix b/pkgs/development/libraries/ruby_ncursesw_sup/default.nix
deleted file mode 100644
index 8d55bafeb20d..000000000000
--- a/pkgs/development/libraries/ruby_ncursesw_sup/default.nix
+++ /dev/null
@@ -1,48 +0,0 @@
-{ stdenv, fetchurl, ncurses, ruby, rubygems }:
-
-stdenv.mkDerivation rec {
-  name = "ncursesw-sup-${version}";
-  version = "1.4.6";
-
-  src = fetchurl {
-    url = "https://github.com/sup-heliotrope/ncursesw-ruby/archive/v${version}.tar.gz";
-    sha256 = "1fzmj5kqh2aql7r7jys8cyf7mb78kz71yc4a6gh74h9s8pybyhh7";
-  };
-
-  meta = {
-    description = ''
-      Hacked up version of ncurses gem that supports wide characters for
-      supmua.org
-    '';
-    homepage = ''http://github.com/sup-heliotrope/ncursesw-ruby'';
-    longDescription = ''
-      This wrapper provides access to the functions, macros, global variables
-      and constants of the ncurses library.  These are mapped to a Ruby Module
-      named "Ncurses":  Functions and external variables are implemented as
-      singleton functions of the Module Ncurses.
-    '';
-  };
-
-  buildInputs = [ ncurses rubygems ];
-
-  buildPhase = "gem build ncursesw.gemspec";
-
-  installPhase = ''
-    export HOME=$TMP/home; mkdir -pv "$HOME"
-
-    # For some reason, the installation phase doesn't work with the default
-    # make install command run by gem (we'll fix it and do it ourselves later)
-    gem install --no-verbose --install-dir "$out/${ruby.gemPath}" \
-        --bindir "$out/bin" --no-rdoc --no-ri ncursesw-${version}.gem || true
-
-    # Needed for ruby to recognise the gem
-    cp ncursesw.gemspec "$out/${ruby.gemPath}/specifications"
-
-    cd "$out/${ruby.gemPath}/gems/ncursesw-${version}"
-    mkdir src
-    mv lib src
-    sed -i "s/srcdir = ./srcdir = src/" Makefile
-    make install
-  '';
-}
-
diff --git a/pkgs/development/libraries/sblim-sfcc/default.nix b/pkgs/development/libraries/sblim-sfcc/default.nix
new file mode 100644
index 000000000000..9ec7afabab16
--- /dev/null
+++ b/pkgs/development/libraries/sblim-sfcc/default.nix
@@ -0,0 +1,30 @@
+{ fetchgit, stdenv, autoconf, automake, libtool, curl }:
+
+stdenv.mkDerivation rec {
+  version = "2.2.9";
+  name = "sblim-sfcc-${version}";
+
+  src = fetchgit {
+    url = "https://github.com/kkaempf/sblim-sfcc.git";
+    rev = "f70fecb410a53531e4fe99d39cf81b581819cac9";
+    sha256 = "1dlhjvi888kz3bq56n0f86f25ny48a18rm4rgb4rx04aimas3dvj";
+  };
+
+  preConfigure = "./autoconfiscate.sh";
+
+  buildInputs = [ autoconf automake libtool curl ];
+
+  meta = {
+    description = "Small Footprint CIM Client Library";
+
+    homepage = http://sourceforge.net/projects/sblim/;
+
+    maintainers = [ stdenv.lib.maintainers.deepfire ];
+
+    license = stdenv.lib.licenses.cpl10;
+
+    platforms = stdenv.lib.platforms.gnu;  # arbitrary choice
+
+    inherit version;
+  };
+}
diff --git a/pkgs/development/libraries/science/math/metis/default.nix b/pkgs/development/libraries/science/math/metis/default.nix
new file mode 100644
index 000000000000..3ce94f28ac2a
--- /dev/null
+++ b/pkgs/development/libraries/science/math/metis/default.nix
@@ -0,0 +1,20 @@
+{ stdenv, fetchurl, unzip, cmake }:
+
+stdenv.mkDerivation {
+  name = "metis-5.1.0";
+
+  src = fetchurl {
+    url = "http://glaros.dtc.umn.edu/gkhome/fetch/sw/metis/metis-5.1.0.tar.gz";
+    sha256 = "1cjxgh41r8k6j029yxs8msp3z6lcnpm16g5pvckk35kc7zhfpykn";
+  };
+
+  cmakeFlags = [ "-DGKLIB_PATH=../GKlib" ];
+  buildInputs = [ unzip cmake ];
+
+  meta = {
+    description = "Serial graph partitioning and fill-reducing matrix ordering";
+    homepage = http://glaros.dtc.umn.edu/gkhome/metis/metis/overview;
+    license = stdenv.lib.licenses.asl20;
+    platforms = stdenv.lib.platforms.all;
+  };
+}
diff --git a/pkgs/development/libraries/signon/default.nix b/pkgs/development/libraries/signon/default.nix
index 0bafb42e2c52..7b3defb8a589 100644
--- a/pkgs/development/libraries/signon/default.nix
+++ b/pkgs/development/libraries/signon/default.nix
@@ -1,10 +1,11 @@
-{ stdenv, fetchurl, doxygen, qt5 }:
+{ stdenv, fetchzip, doxygen, qt5 }:
 
 stdenv.mkDerivation rec {
-  name = "signon-8.56";
-  src = fetchurl {
-    url = "https://accounts-sso.googlecode.com/files/${name}.tar.bz2";
-    sha256 = "00kwysm7bga0bycclkcyslsa6aahcn98drm125l6brzhigc7qxa8";
+  name = "signon-${version}";
+  version = "8.57";
+  src = fetchzip {
+    url = "http://signond.accounts-sso.googlecode.com/archive/${version}.zip";
+    sha256 = "0q1ncmp27jrwbjkqisf0l63zzpw6bcsx5i4y86xixh8wd5arj87a";
   };
 
   buildInputs = [ qt5.base ];
@@ -14,11 +15,4 @@ stdenv.mkDerivation rec {
     qmake PREFIX=$out LIBDIR=$out/lib CMAKE_CONFIG_PATH=$out/lib/cmake/SignOnQt5
   '';
 
-  postInstall = ''
-    mv $out/lib/cmake/SignOnQt5/SignOnQtConfig.cmake \
-      $out/lib/cmake/SignOnQt5/SignOnQt5Config.cmake
-    mv $out/lib/cmake/SignOnQt5/SignOnQtConfigVersion.cmake \
-      $out/lib/cmake/SignOnQt5/SignOnQt5ConfigVersion.cmake
-  '';
-
 }
diff --git a/pkgs/development/libraries/snappy/default.nix b/pkgs/development/libraries/snappy/default.nix
index 90469508d0e5..5ae8f5e62521 100644
--- a/pkgs/development/libraries/snappy/default.nix
+++ b/pkgs/development/libraries/snappy/default.nix
@@ -19,7 +19,8 @@ stdenv.mkDerivation rec {
   # -DNDEBUG for speed
   configureFlags = [ "CXXFLAGS=-DNDEBUG" ];
 
-  doCheck = true;
+  # SIGILL on darwin
+  doCheck = !stdenv.isDarwin;
 
   meta = with stdenv.lib; {
     homepage = http://code.google.com/p/snappy/;
diff --git a/pkgs/development/libraries/sqlite/default.nix b/pkgs/development/libraries/sqlite/default.nix
index 963566e27fa7..f043a37033a8 100644
--- a/pkgs/development/libraries/sqlite/default.nix
+++ b/pkgs/development/libraries/sqlite/default.nix
@@ -3,18 +3,49 @@
 assert interactive -> readline != null && ncurses != null;
 
 stdenv.mkDerivation {
-  name = "sqlite-3.8.10.2";
+  name = "sqlite-3.8.11.1";
 
   src = fetchurl {
-    url = "http://sqlite.org/2015/sqlite-autoconf-3081002.tar.gz";
-    sha1 = "c2f2c17d3dc4c4e179d35cc04e4420636d48a152";
+    url = "http://sqlite.org/2015/sqlite-autoconf-3081101.tar.gz";
+    sha1 = "d0e22d7e361b6f50830a3cdeafe35311443f8f9a";
   };
 
   buildInputs = lib.optionals interactive [ readline ncurses ];
 
-  configureFlags = "--enable-threadsafe";
+  configureFlags = [ "--enable-threadsafe" ];
 
-  NIX_CFLAGS_COMPILE = "-DSQLITE_ENABLE_COLUMN_METADATA=1 -DSQLITE_SECURE_DELETE=1 -DSQLITE_ENABLE_UNLOCK_NOTIFY=1";
+  NIX_CFLAGS_COMPILE = [
+    "-DSQLITE_ENABLE_COLUMN_METADATA"
+    "-DSQLITE_ENABLE_DBSTAT_VTAB"
+    "-DSQLITE_ENABLE_FTS3"
+    "-DSQLITE_ENABLE_FTS3_PARENTHESIS"
+    "-DSQLITE_ENABLE_FTS4"
+    "-DSQLITE_ENABLE_RTREE"
+    "-DSQLITE_ENABLE_STMT_SCANSTATUS"
+    "-DSQLITE_ENABLE_UNLOCK_NOTIFY"
+    "-DSQLITE_SOUNDEX"
+    "-DSQLITE_SECURE_DELETE"
+  ];
+
+  # Test for features which may not be available at compile time
+  preBuild = ''
+    # Use pread(), pread64(), pwrite(), pwrite64() functions for better performance if they are available.
+    if cc -Werror=implicit-function-declaration -x c - -o "$TMPDIR/pread_pwrite_test" <<< \
+      ''$'#include <unistd.h>\nint main()\n{\n  pread(0, NULL, 0, 0);\n  pwrite(0, NULL, 0, 0);\n  return 0;\n}'; then
+      export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -DUSE_PREAD"
+    fi
+    if cc -Werror=implicit-function-declaration -x c - -o "$TMPDIR/pread64_pwrite64_test" <<< \
+      ''$'#include <unistd.h>\nint main()\n{\n  pread64(0, NULL, 0, 0);\n  pwrite64(0, NULL, 0, 0);\n  return 0;\n}'; then
+      export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -DUSE_PREAD64"
+    elif cc -D_LARGEFILE64_SOURCE -Werror=implicit-function-declaration -x c - -o "$TMPDIR/pread64_pwrite64_test" <<< \
+      ''$'#include <unistd.h>\nint main()\n{\n  pread64(0, NULL, 0, 0);\n  pwrite64(0, NULL, 0, 0);\n  return 0;\n}'; then
+      export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -DUSE_PREAD64 -D_LARGEFILE64_SOURCE"
+    fi
+
+    echo ""
+    echo "NIX_CFLAGS_COMPILE = $NIX_CFLAGS_COMPILE"
+    echo ""
+  '';
 
   meta = {
     homepage = http://www.sqlite.org/;
diff --git a/pkgs/development/libraries/sword/default.nix b/pkgs/development/libraries/sword/default.nix
index 6faf2224b0cf..6091bb3c8bb2 100644
--- a/pkgs/development/libraries/sword/default.nix
+++ b/pkgs/development/libraries/sword/default.nix
@@ -2,13 +2,12 @@
 
 stdenv.mkDerivation rec {
 
-  version = "1.7.3";
-
   name = "sword-${version}";
+  version = "1.7.4";
 
   src = fetchurl {
     url = "http://www.crosswire.org/ftpmirror/pub/sword/source/v1.7/${name}.tar.gz";
-    sha256 = "1sm9ivypsx3mraqnziic7qkxjx1b7crvlln0zq6cnpjx2pzqfgas";
+    sha256 = "0g91kpfkwccvdikddffdbzd6glnp1gdvkx4vh04iyz10bb7shpcr";
   };
 
   buildInputs = [ pkgconfig icu clucene_core curl ];
diff --git a/pkgs/development/libraries/talloc/default.nix b/pkgs/development/libraries/talloc/default.nix
index d9f52d8d87c3..467ccf9db86e 100644
--- a/pkgs/development/libraries/talloc/default.nix
+++ b/pkgs/development/libraries/talloc/default.nix
@@ -3,11 +3,11 @@
 }:
 
 stdenv.mkDerivation rec {
-  name = "talloc-2.1.2";
+  name = "talloc-2.1.3";
 
   src = fetchurl {
     url = "mirror://samba/talloc/${name}.tar.gz";
-    sha256 = "13c365f7y8idjf2v1jxdjpkc3lxdmsxxfxjx1ymianm7zjiph393";
+    sha256 = "1c1c3zs13qyripjwcjpz2hqc3p9p50m5yl95gdrrrvyl49dzg9bs";
   };
 
   buildInputs = [
diff --git a/pkgs/development/libraries/tdb/default.nix b/pkgs/development/libraries/tdb/default.nix
index 46f4bb683476..2bb47df20cf0 100644
--- a/pkgs/development/libraries/tdb/default.nix
+++ b/pkgs/development/libraries/tdb/default.nix
@@ -3,11 +3,11 @@
 }:
 
 stdenv.mkDerivation rec {
-  name = "tdb-1.3.6";
+  name = "tdb-1.3.7";
 
   src = fetchurl {
     url = "mirror://samba/tdb/${name}.tar.gz";
-    sha256 = "19arbbicw469q6a9m8yyaigrxzrxkb1jnajlvq1v7n2qgqjdvmw5";
+    sha256 = "04k42cjvjc5wsqsqf44397hclq3nxlm9avjcsbz2hsn01k59akd6";
   };
 
   buildInputs = [
diff --git a/pkgs/development/libraries/ti-rpc/default.nix b/pkgs/development/libraries/ti-rpc/default.nix
index eb795d6b28eb..a4d210547fd2 100644
--- a/pkgs/development/libraries/ti-rpc/default.nix
+++ b/pkgs/development/libraries/ti-rpc/default.nix
@@ -1,19 +1,20 @@
-{ fetchurl, stdenv, libkrb5 }:
+{ fetchurl, stdenv, autoreconfHook, libkrb5 }:
 
 stdenv.mkDerivation rec {
-  name = "libtirpc-0.3.0";
+  name = "libtirpc-0.3.2";
 
   src = fetchurl {
     url = "mirror://sourceforge/libtirpc/${name}.tar.bz2";
-    sha256 = "07d1wlfzf3ia09mjn3f3ay8isk7yx4a6ckfkzx5khnqlc7amkzna";
+    sha256 = "1z1z8xnlqgqznxzmyc6sypjc6b220xkv0s55hxd5sb3zydws6210";
   };
 
+  nativeBuildInputs = [ autoreconfHook ];
   propagatedBuildInputs = [ libkrb5 ];
 
-  # http://www.sourcemage.org/projects/grimoire/repository/revisions/d6344b6a3a94b88ed67925a474de5930803acfbf
-  preConfigure = ''
-    echo "" > src/des_crypt.c
+  # http://sourceforge.net/p/libtirpc/mailman/libtirpc-devel/thread/5581CB06.5020604%40email.com/#msg34216933
+  patches = [ ./fix_missing_rpc_get_default_domain.patch ];
 
+  preConfigure = ''
     sed -es"|/etc/netconfig|$out/etc/netconfig|g" -i doc/Makefile.in tirpc/netconfig.h
   '';
 
diff --git a/pkgs/development/libraries/ti-rpc/fix_missing_rpc_get_default_domain.patch b/pkgs/development/libraries/ti-rpc/fix_missing_rpc_get_default_domain.patch
new file mode 100644
index 000000000000..c905d3c0de87
--- /dev/null
+++ b/pkgs/development/libraries/ti-rpc/fix_missing_rpc_get_default_domain.patch
@@ -0,0 +1,88 @@
+diff -rNu3 libtirpc-0.3.2-old/src/Makefile.am libtirpc-0.3.2/src/Makefile.am
+--- libtirpc-0.3.2-old/src/Makefile.am	2015-07-28 15:17:49.248168000 +0300
++++ libtirpc-0.3.2/src/Makefile.am	2015-07-28 15:18:04.870144456 +0300
+@@ -69,7 +69,7 @@
+ endif
+ 
+ libtirpc_la_SOURCES += key_call.c key_prot_xdr.c getpublickey.c
+-libtirpc_la_SOURCES += netname.c netnamer.c rtime.c
++libtirpc_la_SOURCES += netname.c netnamer.c rpcdname.c rtime.c
+ 
+ CLEANFILES	       = cscope.* *~
+ DISTCLEANFILES	       = Makefile.in
+diff -rNu3 libtirpc-0.3.2-old/src/rpcdname.c libtirpc-0.3.2/src/rpcdname.c
+--- libtirpc-0.3.2-old/src/rpcdname.c	1970-01-01 03:00:00.000000000 +0300
++++ libtirpc-0.3.2/src/rpcdname.c	2015-07-28 15:18:04.870144456 +0300
+@@ -0,0 +1,72 @@
++/*
++ * Copyright (c) 2009, Sun Microsystems, Inc.
++ * All rights reserved.
++ *
++ * Redistribution and use in source and binary forms, with or without
++ * modification, are permitted provided that the following conditions are met:
++ * - Redistributions of source code must retain the above copyright notice,
++ *   this list of conditions and the following disclaimer.
++ * - Redistributions in binary form must reproduce the above copyright notice,
++ *   this list of conditions and the following disclaimer in the documentation
++ *   and/or other materials provided with the distribution.
++ * - Neither the name of Sun Microsystems, Inc. nor the names of its
++ *   contributors may be used to endorse or promote products derived
++ *   from this software without specific prior written permission.
++ *
++ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
++ * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
++ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
++ * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
++ * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
++ * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
++ * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
++ * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
++ * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
++ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
++ * POSSIBILITY OF SUCH DAMAGE.
++ */
++
++/*
++ * rpcdname.c
++ * Gets the default domain name
++ */
++
++#include <stdlib.h>
++#include <unistd.h>
++#include <string.h>
++
++static char *default_domain = 0;
++
++static char *
++get_default_domain()
++{
++	char temp[256];
++
++	if (default_domain)
++		return (default_domain);
++	if (getdomainname(temp, sizeof(temp)) < 0)
++		return (0);
++	if ((int) strlen(temp) > 0) {
++		default_domain = (char *)malloc((strlen(temp)+(unsigned)1));
++		if (default_domain == 0)
++			return (0);
++		(void) strcpy(default_domain, temp);
++		return (default_domain);
++	}
++	return (0);
++}
++
++/*
++ * This is a wrapper for the system call getdomainname which returns a
++ * ypclnt.h error code in the failure case.  It also checks to see that
++ * the domain name is non-null, knowing that the null string is going to
++ * get rejected elsewhere in the NIS client package.
++ */
++int
++__rpc_get_default_domain(domain)
++	char **domain;
++{
++	if ((*domain = get_default_domain()) != 0)
++		return (0);
++	return (-1);
++}
diff --git a/pkgs/development/libraries/uid_wrapper/default.nix b/pkgs/development/libraries/uid_wrapper/default.nix
index 07fffeff20d6..0ec6342c39e6 100644
--- a/pkgs/development/libraries/uid_wrapper/default.nix
+++ b/pkgs/development/libraries/uid_wrapper/default.nix
@@ -1,14 +1,14 @@
 { stdenv, fetchurl, cmake, pkgconfig }:
 
 stdenv.mkDerivation rec {
-  name = "uid_wrapper-1.1.0";
+  name = "uid_wrapper-1.1.1";
 
   src = fetchurl {
     url = "mirror://samba/cwrap/${name}.tar.gz";
-    sha256 = "18xdyy7rvn0zg6j44ay0sxd4q0bplq64syyki9wi8ixhkrzqn0yn";
+    sha256 = "0y033cjs0kwmpx70xc4wh789vk9rw6bziizs28h50ad7lyyvx5b9";
   };
 
-  buildInputs = [ cmake pkgconfig ];
+  nativeBuildInputs = [ cmake pkgconfig ];
 
   meta = with stdenv.lib; {
     description = "a wrapper for the user, group and hosts NSS API";
diff --git a/pkgs/development/libraries/ustr/default.nix b/pkgs/development/libraries/ustr/default.nix
index b016a6f715c1..9a7475969c69 100644
--- a/pkgs/development/libraries/ustr/default.nix
+++ b/pkgs/development/libraries/ustr/default.nix
@@ -1,6 +1,6 @@
-{ stdenv, fetchurl, glibc }:
-stdenv.mkDerivation rec {
+{ stdenv, fetchurl }:
 
+stdenv.mkDerivation rec {
   name = "ustr-${version}";
   version = "1.0.4";
 
@@ -9,14 +9,30 @@ stdenv.mkDerivation rec {
     sha256 = "1i623ygdj7rkizj7985q9d6vj5amwg686aqb5j3ixpkqkyp6xbrx";
   };
 
-  prePatch = "substituteInPlace Makefile --replace /usr/include/ ${glibc}/include/";
+  # Fixes bogus warnings that failed libsemanage
+  patches = [ ./va_args.patch ];
+
+  # Work around gcc5 switch to gnu11
+  NIX_CFLAGS_COMPILE = "-std=gnu89";
+
+  # Fix detection of stdint.h
+  postPatch = ''
+    sed -i 's,\(have_stdint_h\)=0,\1=1,g' Makefile
+    sed -i 's,\(USTR_CONF_HAVE_STDINT_H\) 0,\1 1,g' ustr-import.in
+  '';
 
-  patches = [ ./va_args.patch ]; # fixes bogus warnings that failed libsemanage
+  buildTargets = [ "all-shared" ];
 
-  makeFlags = "DESTDIR=$(out) prefix= LDCONFIG=echo";
+  preBuild = ''
+    makeFlagsArray+=("prefix=$out")
+    makeFlagsArray+=("LDCONFIG=echo")
+    makeFlagsArray+=("HIDE=")
+  '';
 
-  configurePhase = "make ustr-import";
-  buildInputs = [ glibc ];
+  # Remove debug libraries
+  postInstall = ''
+    find $out/lib -name \*debug\* -delete
+  '';
 
   meta = with stdenv.lib; {
     homepage = http://www.and.org/ustr/;
diff --git a/pkgs/development/libraries/vaapi-intel/default.nix b/pkgs/development/libraries/vaapi-intel/default.nix
index d873d801bac7..61f88cea7e1c 100644
--- a/pkgs/development/libraries/vaapi-intel/default.nix
+++ b/pkgs/development/libraries/vaapi-intel/default.nix
@@ -3,11 +3,11 @@
 }:
 
 stdenv.mkDerivation rec {
-  name = "libva-intel-driver-1.5.1";
+  name = "libva-intel-driver-1.6.0";
 
   src = fetchurl {
     url = "http://www.freedesktop.org/software/vaapi/releases/libva-intel-driver/${name}.tar.bz2";
-    sha256 = "1p7aw0wmb6z3rbbm3bqlp6rxw41kii23csbjmcvbbk037lq6rnqb";
+    sha256 = "1m08z9md113rv455i78k6784vkjza5k84d59bgpah08cc7jayxlq";
   };
 
   patchPhase = ''
diff --git a/pkgs/development/libraries/wiredtiger/default.nix b/pkgs/development/libraries/wiredtiger/default.nix
index 5fe75248e353..347686014d1d 100644
--- a/pkgs/development/libraries/wiredtiger/default.nix
+++ b/pkgs/development/libraries/wiredtiger/default.nix
@@ -58,6 +58,12 @@ stdenv.mkDerivation rec {
     ./autogen.sh
   '';
 
+  prePatch = stdenv.lib.optionalString stdenv.isDarwin ''
+    substituteInPlace api/leveldb/leveldb_wt.h --replace \
+      '#include "wiredtiger.h"' \
+      ''$'#include "wiredtiger.h"\n#include "pthread.h"'
+  '';
+
   meta = {
     homepage = http://wiredtiger.com/;
     description = "";
diff --git a/pkgs/development/libraries/xapian/default.nix b/pkgs/development/libraries/xapian/default.nix
index a9334f31ecdc..89f97292d39d 100644
--- a/pkgs/development/libraries/xapian/default.nix
+++ b/pkgs/development/libraries/xapian/default.nix
@@ -9,9 +9,11 @@ stdenv.mkDerivation rec {
     sha256 = "0grd2s6gf8yzqwdaa50g57j9d81mxkrrpkyldm2shgyizdc8gx33";
   };
 
+  outputs = [ "out" "doc" ];
+
   buildInputs = [ libuuid zlib ];
 
-  meta = { 
+  meta = {
     description = "Search engine library";
     homepage = http://xapian.org/;
     license = stdenv.lib.licenses.gpl2Plus;
diff --git a/pkgs/development/libraries/xlslib/default.nix b/pkgs/development/libraries/xlslib/default.nix
index 2492063be270..e68415951c76 100644
--- a/pkgs/development/libraries/xlslib/default.nix
+++ b/pkgs/development/libraries/xlslib/default.nix
@@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "C++/C library to construct Excel .xls files in code";
-    homepage = http://sourceforge.net/projects/xlslib/files/;
+    homepage = http://sourceforge.net/projects/xlslib/;
     license = licenses.bsd2;
     platforms = platforms.unix;
     maintainers = with maintainers; [ abbradar ];