summary refs log tree commit diff
path: root/pkgs
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs')
-rw-r--r--pkgs/applications/audio/flac/default.nix2
-rw-r--r--pkgs/build-support/setup-hooks/move-docs.sh1
-rw-r--r--pkgs/desktops/gnome-2/platform/GConf/default.nix4
-rw-r--r--pkgs/desktops/gnome-3/3.16/core/libcroco/default.nix2
-rw-r--r--pkgs/development/compilers/llvm/3.5/libc++/setup-hook.sh6
-rw-r--r--pkgs/development/compilers/llvm/3.6/libc++/setup-hook.sh6
-rw-r--r--pkgs/development/compilers/orc/default.nix2
-rw-r--r--pkgs/development/interpreters/perl/5.20/default.nix2
-rw-r--r--pkgs/development/interpreters/perl/5.22/default.nix2
-rw-r--r--pkgs/development/libraries/SDL/default.nix2
-rw-r--r--pkgs/development/libraries/at-spi2-core/default.nix2
-rw-r--r--pkgs/development/libraries/dbus-glib/default.nix2
-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/gnutls/generic.nix2
-rw-r--r--pkgs/development/libraries/gperftools/default.nix6
-rw-r--r--pkgs/development/libraries/harfbuzz/default.nix2
-rw-r--r--pkgs/development/libraries/kerberos/heimdal.nix2
-rw-r--r--pkgs/development/libraries/kyotocabinet/default.nix12
-rw-r--r--pkgs/development/libraries/libogg/default.nix2
-rw-r--r--pkgs/development/libraries/libpcap/default.nix4
-rw-r--r--pkgs/development/libraries/libsoup/default.nix2
-rw-r--r--pkgs/development/libraries/libtiff/default.nix2
-rw-r--r--pkgs/development/libraries/libvorbis/default.nix2
-rw-r--r--pkgs/development/libraries/libxml2/default.nix4
-rw-r--r--pkgs/development/libraries/libxslt/default.nix2
-rw-r--r--pkgs/development/libraries/mesa/default.nix7
-rw-r--r--pkgs/development/libraries/openldap/default.nix2
-rw-r--r--pkgs/development/libraries/openssl/default.nix2
-rw-r--r--pkgs/development/libraries/pcre/default.nix2
-rw-r--r--pkgs/development/libraries/poppler/default.nix2
-rw-r--r--pkgs/development/libraries/snappy/default.nix3
-rw-r--r--pkgs/development/libraries/wiredtiger/default.nix6
-rw-r--r--pkgs/development/python-modules/pygobject/default.nix2
-rw-r--r--pkgs/misc/ghostscript/default.nix79
-rw-r--r--pkgs/os-specific/linux/udisks/2-default.nix2
-rw-r--r--pkgs/servers/nosql/mongodb/default.nix11
-rw-r--r--pkgs/servers/x11/xorg/overrides.nix17
-rw-r--r--pkgs/shells/bash/default.nix2
-rw-r--r--pkgs/top-level/all-packages.nix14
41 files changed, 167 insertions, 125 deletions
diff --git a/pkgs/applications/audio/flac/default.nix b/pkgs/applications/audio/flac/default.nix
index 5dd70673521..18fb48a17ba 100644
--- a/pkgs/applications/audio/flac/default.nix
+++ b/pkgs/applications/audio/flac/default.nix
@@ -8,6 +8,8 @@ stdenv.mkDerivation rec {
     sha256 = "4773c0099dba767d963fd92143263be338c48702172e8754b9bc5103efe1c56c";
   };
 
+  outputs = [ "out" "doc" ];
+
   buildInputs = [ libogg ];
 
   #doCheck = true; # takes lots of time
diff --git a/pkgs/build-support/setup-hooks/move-docs.sh b/pkgs/build-support/setup-hooks/move-docs.sh
index c819ee12a9c..57b71c15691 100644
--- a/pkgs/build-support/setup-hooks/move-docs.sh
+++ b/pkgs/build-support/setup-hooks/move-docs.sh
@@ -42,6 +42,7 @@ _moveDocs() {
     _moveToOutput share/man "$man"
     _moveToOutput share/info "$info"
     _moveToOutput share/doc "$doc"
+    _moveToOutput share/gtk-doc "$doc"
 
     # Remove empty share directory.
     if [ -d "$out/share" ]; then
diff --git a/pkgs/desktops/gnome-2/platform/GConf/default.nix b/pkgs/desktops/gnome-2/platform/GConf/default.nix
index d4a8e1ff846..db51a5f8962 100644
--- a/pkgs/desktops/gnome-2/platform/GConf/default.nix
+++ b/pkgs/desktops/gnome-2/platform/GConf/default.nix
@@ -4,13 +4,15 @@
 assert withGtk -> (gtk != null);
 
 stdenv.mkDerivation {
-  name = "GConf-2.32.4";
+  name = "gconf-2.32.4";
 
   src = fetchurl {
     url = mirror://gnome/sources/GConf/2.32/GConf-2.32.4.tar.xz;
     sha256 = "09ch709cb9fniwc4221xgkq0jf0x0lxs814sqig8p2dcll0llvzk";
   };
 
+  outputs = [ "out" "doc" ];
+
   buildInputs = [ ORBit2 dbus_libs dbus_glib libxml2 ]
     # polkit requires pam, which requires shadow.h, which is not available on
     # darwin
diff --git a/pkgs/desktops/gnome-3/3.16/core/libcroco/default.nix b/pkgs/desktops/gnome-3/3.16/core/libcroco/default.nix
index 1875c1491f9..e8ddf7096e6 100644
--- a/pkgs/desktops/gnome-3/3.16/core/libcroco/default.nix
+++ b/pkgs/desktops/gnome-3/3.16/core/libcroco/default.nix
@@ -8,6 +8,8 @@ stdenv.mkDerivation rec {
     sha256 = "0w453f3nnkbkrly7spx5lx5pf6mwynzmd5qhszprq8amij2invpa";
   };
 
+  outputs = [ "out" "doc" ];
+
   configureFlags = stdenv.lib.optional stdenv.isDarwin "--disable-Bsymbolic";
 
   buildInputs = [ pkgconfig libxml2 glib ];
diff --git a/pkgs/development/compilers/llvm/3.5/libc++/setup-hook.sh b/pkgs/development/compilers/llvm/3.5/libc++/setup-hook.sh
index 8a45be7e85a..62ab46ac310 100644
--- a/pkgs/development/compilers/llvm/3.5/libc++/setup-hook.sh
+++ b/pkgs/development/compilers/llvm/3.5/libc++/setup-hook.sh
@@ -1,4 +1,2 @@
-export NIX_CFLAGS_COMPILE+=" -isystem @out@/include/c++/v1"
-
-export NIX_CXXSTDLIB_COMPILE=" -stdlib=libc++"
-export NIX_CXXSTDLIB_LINK=" -stdlib=libc++"
+export NIX_CXXSTDLIB_COMPILE+=" -isystem @out@/include/c++/v1"
+export NIX_CXXSTDLIB_LINK=" -lc++ -lc++abi"
diff --git a/pkgs/development/compilers/llvm/3.6/libc++/setup-hook.sh b/pkgs/development/compilers/llvm/3.6/libc++/setup-hook.sh
index 8a45be7e85a..62ab46ac310 100644
--- a/pkgs/development/compilers/llvm/3.6/libc++/setup-hook.sh
+++ b/pkgs/development/compilers/llvm/3.6/libc++/setup-hook.sh
@@ -1,4 +1,2 @@
-export NIX_CFLAGS_COMPILE+=" -isystem @out@/include/c++/v1"
-
-export NIX_CXXSTDLIB_COMPILE=" -stdlib=libc++"
-export NIX_CXXSTDLIB_LINK=" -stdlib=libc++"
+export NIX_CXXSTDLIB_COMPILE+=" -isystem @out@/include/c++/v1"
+export NIX_CXXSTDLIB_LINK=" -lc++ -lc++abi"
diff --git a/pkgs/development/compilers/orc/default.nix b/pkgs/development/compilers/orc/default.nix
index 1c1b5d53cee..3b8916c67e9 100644
--- a/pkgs/development/compilers/orc/default.nix
+++ b/pkgs/development/compilers/orc/default.nix
@@ -8,6 +8,8 @@ stdenv.mkDerivation rec {
     sha256 = "1ryz1gfgrxcj806cakcblxf0bcwq8p2mw8k86fs3f5wlwayawzkn";
   };
 
+  outputs = [ "out" "doc" ];
+
   # building memcpy_speed.log
   # ../test-driver: line 107:  4495 Segmentation fault      "$@" > $log_file 2>&1
   # FAIL: memcpy_speed
diff --git a/pkgs/development/interpreters/perl/5.20/default.nix b/pkgs/development/interpreters/perl/5.20/default.nix
index e8eb3a70e37..141484814ea 100644
--- a/pkgs/development/interpreters/perl/5.20/default.nix
+++ b/pkgs/development/interpreters/perl/5.20/default.nix
@@ -28,6 +28,8 @@ stdenv.mkDerivation rec {
     sha256 = "17cvplgpxbm1hshxlkra2fldn4da1iap1lsnb04hdm8ply93k95i";
   };
 
+  outputs = [ "out" "man" ];
+
   patches =
     [ # Do not look in /usr etc. for dependencies.
       ./no-sys-dirs.patch
diff --git a/pkgs/development/interpreters/perl/5.22/default.nix b/pkgs/development/interpreters/perl/5.22/default.nix
index f9068de1c2c..e0be8610fb7 100644
--- a/pkgs/development/interpreters/perl/5.22/default.nix
+++ b/pkgs/development/interpreters/perl/5.22/default.nix
@@ -28,6 +28,8 @@ stdenv.mkDerivation rec {
     sha256 = "0g5bl8sdpzx9gx2g5jq3py4bj07z2ylk7s1qn0fvsss2yl3hhs8c";
   };
 
+  outputs = [ "out" "man" ];
+
   patches =
     [ # Do not look in /usr etc. for dependencies.
       ./no-sys-dirs.patch
diff --git a/pkgs/development/libraries/SDL/default.nix b/pkgs/development/libraries/SDL/default.nix
index a62fc837dd0..1fae5d42ab7 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/at-spi2-core/default.nix b/pkgs/development/libraries/at-spi2-core/default.nix
index a3632bc13fd..0fc28185501 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/dbus-glib/default.nix b/pkgs/development/libraries/dbus-glib/default.nix
index 00b302bde8d..480dc61897b 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/gettext/0.17.nix b/pkgs/development/libraries/gettext/0.17.nix
deleted file mode 100644
index 3ea70bea80b..00000000000
--- 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 bb1a0519e7b..00000000000
--- 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 4b6fd2008e8..a56795a4c15 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/gnutls/generic.nix b/pkgs/development/libraries/gnutls/generic.nix
index 436f6beb54e..95768c3ab48 100644
--- a/pkgs/development/libraries/gnutls/generic.nix
+++ b/pkgs/development/libraries/gnutls/generic.nix
@@ -13,6 +13,8 @@ stdenv.mkDerivation rec {
 
   inherit src patches;
 
+  outputs = [ "out" "man" ];
+
   configureFlags =
     # FIXME: perhaps use $SSL_CERT_FILE instead
     lib.optional stdenv.isLinux "--with-default-trust-store-file=/etc/ssl/certs/ca-certificates.crt"
diff --git a/pkgs/development/libraries/gperftools/default.nix b/pkgs/development/libraries/gperftools/default.nix
index 8c2feccebb7..5fa14e64a22 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/harfbuzz/default.nix b/pkgs/development/libraries/harfbuzz/default.nix
index 216bad19790..bac9edd5c2e 100644
--- a/pkgs/development/libraries/harfbuzz/default.nix
+++ b/pkgs/development/libraries/harfbuzz/default.nix
@@ -15,6 +15,8 @@ stdenv.mkDerivation rec {
     sha256 = "0z05vj3va43adzxn026fpdvdd533q5zrs5dcxaz3gd021hysa6nq";
   };
 
+  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/kerberos/heimdal.nix b/pkgs/development/libraries/kerberos/heimdal.nix
index 159b53b7650..98907da3e42 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 6c4575b4e9d..6617816b642 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/libogg/default.nix b/pkgs/development/libraries/libogg/default.nix
index 57b8b2fc66e..4e017840472 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 9ed1aab4034..213dbe50aaf 100644
--- a/pkgs/development/libraries/libpcap/default.nix
+++ b/pkgs/development/libraries/libpcap/default.nix
@@ -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/libsoup/default.nix b/pkgs/development/libraries/libsoup/default.nix
index 12bb589cd9f..73a437b0291 100644
--- a/pkgs/development/libraries/libsoup/default.nix
+++ b/pkgs/development/libraries/libsoup/default.nix
@@ -14,6 +14,8 @@ stdenv.mkDerivation {
     sha256 = "ea34dd64fe44343445daf6dd690d0691e9d973468de44878da97371c16d89784";
   };
 
+  outputs = [ "out" "doc" ];
+
   patchPhase = ''
     patchShebangs libsoup/
     patch -p1 < ${./bad-symbol.patch}
diff --git a/pkgs/development/libraries/libtiff/default.nix b/pkgs/development/libraries/libtiff/default.nix
index 739148cb9a6..25f6cf5b6b7 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/libvorbis/default.nix b/pkgs/development/libraries/libvorbis/default.nix
index cff6cbe8616..d58607ea298 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/libxml2/default.nix b/pkgs/development/libraries/libxml2/default.nix
index 153096ee45c..2fdc198aa11 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 fda24776480..3579e99ec7a 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/mesa/default.nix b/pkgs/development/libraries/mesa/default.nix
index 9d7fa4ae406..c30ef49268f 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
@@ -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/openldap/default.nix b/pkgs/development/libraries/openldap/default.nix
index e5b7ce10719..6bc9b977363 100644
--- a/pkgs/development/libraries/openldap/default.nix
+++ b/pkgs/development/libraries/openldap/default.nix
@@ -8,6 +8,8 @@ stdenv.mkDerivation rec {
     sha256 = "0vkzfd1pmin6xsv8lb1nabfxma8n1q00khr6nfifqkxlm2s6p197";
   };
 
+  outputs = [ "out" "man" ];
+
   nativeBuildInputs = [ autoconf ];
   buildInputs = [ openssl cyrus_sasl db groff ];
 
diff --git a/pkgs/development/libraries/openssl/default.nix b/pkgs/development/libraries/openssl/default.nix
index b9224dad110..ca3e7999f9b 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/pcre/default.nix b/pkgs/development/libraries/pcre/default.nix
index 71f0df40ec2..a34f3e5e132 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/poppler/default.nix b/pkgs/development/libraries/poppler/default.nix
index f54f12031b4..ce63f5c9716 100644
--- a/pkgs/development/libraries/poppler/default.nix
+++ b/pkgs/development/libraries/poppler/default.nix
@@ -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/snappy/default.nix b/pkgs/development/libraries/snappy/default.nix
index 90469508d0e..5ae8f5e6252 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/wiredtiger/default.nix b/pkgs/development/libraries/wiredtiger/default.nix
index 5fe75248e35..347686014d1 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/python-modules/pygobject/default.nix b/pkgs/development/python-modules/pygobject/default.nix
index 9393b0a2f94..6f713933040 100644
--- a/pkgs/development/python-modules/pygobject/default.nix
+++ b/pkgs/development/python-modules/pygobject/default.nix
@@ -8,6 +8,8 @@ stdenv.mkDerivation rec {
     sha256 = "1f5dfxjnil2glfwxnqr14d2cjfbkghsbsn8n04js2c2icr7iv2pv";
   };
 
+  outputs = [ "out" "doc" ];
+
   configureFlags = "--disable-introspection";
 
   buildInputs = [ python pkgconfig glib ];
diff --git a/pkgs/misc/ghostscript/default.nix b/pkgs/misc/ghostscript/default.nix
index 11f816dbb97..81c70504d80 100644
--- a/pkgs/misc/ghostscript/default.nix
+++ b/pkgs/misc/ghostscript/default.nix
@@ -7,26 +7,43 @@
 
 assert x11Support -> x11 != null;
 assert cupsSupport -> cups != null;
+let
+  version = "9.15";
+  sha256 = "0p1isp6ssfay141klirn7n9s8b546vcz6paksfmksbwy0ljsypg6";
+
+  fonts = stdenv.mkDerivation {
+    name = "ghostscript-fonts";
+
+    srcs = [
+      (fetchurl {
+        url = "mirror://sourceforge/gs-fonts/ghostscript-fonts-std-8.11.tar.gz";
+        sha256 = "00f4l10xd826kak51wsmaz69szzm2wp8a41jasr4jblz25bg7dhf";
+      })
+      (fetchurl {
+        url = "mirror://gnu/ghostscript/gnu-gs-fonts-other-6.0.tar.gz";
+        sha256 = "1cxaah3r52qq152bbkiyj2f7dx1rf38vsihlhjmrvzlr8v6cqil1";
+      })
+      # ... add other fonts here
+    ];
+
+    installPhase = ''
+      mkdir "$out"
+      mv -v * "$out/"
+    '';
+  };
 
+in
 stdenv.mkDerivation rec {
-  name = "ghostscript-9.15";
+  name = "ghostscript-${version}";
 
   src = fetchurl {
     url = "http://downloads.ghostscript.com/public/${name}.tar.bz2";
-    sha256 = "0p1isp6ssfay141klirn7n9s8b546vcz6paksfmksbwy0ljsypg6";
+    inherit sha256;
   };
 
-  fonts = [
-    (fetchurl {
-      url = "mirror://sourceforge/gs-fonts/ghostscript-fonts-std-8.11.tar.gz";
-      sha256 = "00f4l10xd826kak51wsmaz69szzm2wp8a41jasr4jblz25bg7dhf";
-    })
-    (fetchurl {
-      url = "mirror://gnu/ghostscript/gnu-gs-fonts-other-6.0.tar.gz";
-      sha256 = "1cxaah3r52qq152bbkiyj2f7dx1rf38vsihlhjmrvzlr8v6cqil1";
-    })
-    # ... add other fonts here
-  ];
+  patches = [ ./urw-font-files.patch ];
+
+  outputs = [ "out" "doc" ];
 
   enableParallelBuilding = true;
 
@@ -40,12 +57,16 @@ stdenv.mkDerivation rec {
     # [] # maybe sometimes jpeg2000 support
     ;
 
-  patches = [ ./urw-font-files.patch ];
-
   makeFlags = [ "cups_serverroot=$(out)" "cups_serverbin=$(out)/lib/cups" ];
 
+  preConfigure = ''
+    rm -rf jpeg libpng zlib jasper expat tiff lcms{,2} jbig2dec openjpeg freetype cups/libs
+
+    sed "s@if ( test -f \$(INCLUDE)[^ ]* )@if ( true )@; s@INCLUDE=/usr/include@INCLUDE=/no-such-path@" -i base/unix-aux.mak
+  '';
+
   configureFlags =
-    [ "--with-system-libtiff" "--disable-sse2"
+    [ "--with-system-libtiff"
       "--enable-dynamic"
       (if x11Support then "--with-x" else "--without-x")
       (if cupsSupport then "--enable-cups" else "--disable-cups")
@@ -53,27 +74,19 @@ stdenv.mkDerivation rec {
 
   doCheck = true;
 
-  installTargets="install soinstall";
-
-  #CFLAGS = "-fPIC";
-  #NIX_LDFLAGS =
-  #  "-lz -rpath${ if stdenv.isDarwin then " " else "="}${freetype}/lib";
-
-  preConfigure = ''
-    rm -rf jpeg libpng zlib jasper expat tiff lcms{,2} jbig2dec openjpeg freetype cups/libs
-
-    sed "s@if ( test -f \$(INCLUDE)[^ ]* )@if ( true )@; s@INCLUDE=/usr/include@INCLUDE=/no-such-path@" -i base/unix-aux.mak
-  '';
+  # don't build/install statically linked bin/gs
+  buildFlags = "so";
+  installTargets="soinstall";
 
   postInstall = ''
-    # ToDo: web says the fonts should be already included
-    for i in $fonts; do
-      (cd $out/share/ghostscript && tar xvfz $i)
-    done
+    ln -s gsc "$out"/bin/gs
+
+    mkdir -p "$doc/share/ghostscript/${version}"
+    mv "$out/share/ghostscript/${version}"/{doc,examples} "$doc/share/ghostscript/${version}/"
 
-    rm -rf $out/lib/cups/filter/{gstopxl,gstoraster}
+    ln -s "${fonts}" "$out/share/ghostscript/fonts"
 
-    rm -rf $out/share/ghostscript/*/{doc,examples}
+    rm -r $out/lib/cups/filter/{gstopxl,gstoraster}
   '';
 
   meta = {
diff --git a/pkgs/os-specific/linux/udisks/2-default.nix b/pkgs/os-specific/linux/udisks/2-default.nix
index 9b7a7501629..76d6caa767c 100644
--- a/pkgs/os-specific/linux/udisks/2-default.nix
+++ b/pkgs/os-specific/linux/udisks/2-default.nix
@@ -11,6 +11,8 @@ stdenv.mkDerivation rec {
     sha256 = "0spl155k0g2l2hvqf8xyjv08i68gfyhzpjva6cwlzxx0bz4gbify";
   };
 
+  outputs = [ "out" "doc" ];
+
   patches = [ ./force-path.patch ];
 
   # FIXME remove /var/run/current-system/sw/* references
diff --git a/pkgs/servers/nosql/mongodb/default.nix b/pkgs/servers/nosql/mongodb/default.nix
index 81205c92d4c..318bda2fe44 100644
--- a/pkgs/servers/nosql/mongodb/default.nix
+++ b/pkgs/servers/nosql/mongodb/default.nix
@@ -21,6 +21,10 @@ let version = "3.0.4";
     ] ++ optional stdenv.is64bit wiredtiger;
 
     other-args = concatStringsSep " " ([
+      # these are opt-in, lol
+      "--cc-use-shell-environment"
+      "--cxx-use-shell-environment"
+
       "--c++11=on"
       "--ssl"
       #"--rocksdb" # Don't have this packaged yet
@@ -47,6 +51,13 @@ in stdenv.mkDerivation rec {
     # fix environment variable reading
     substituteInPlace SConstruct \
         --replace "env = Environment(" "env = Environment(ENV = os.environ,"
+  '' + stdenv.lib.optionalString stdenv.isDarwin ''
+
+    substituteInPlace src/third_party/s2/s1angle.cc --replace drem remainder
+    substituteInPlace src/third_party/s2/s1interval.cc --replace drem remainder
+    substituteInPlace src/third_party/s2/s2cap.cc --replace drem remainder
+    substituteInPlace src/third_party/s2/s2latlng.cc --replace drem remainder
+    substituteInPlace src/third_party/s2/s2latlngrect.cc --replace drem remainder
   '';
 
   buildPhase = ''
diff --git a/pkgs/servers/x11/xorg/overrides.nix b/pkgs/servers/x11/xorg/overrides.nix
index 336ae652628..afd864eafac 100644
--- a/pkgs/servers/x11/xorg/overrides.nix
+++ b/pkgs/servers/x11/xorg/overrides.nix
@@ -73,6 +73,7 @@ in
   libxcb = attrs : attrs // {
     nativeBuildInputs = [ args.python ];
     configureFlags = "--enable-xkb";
+    outputs = [ "out" "doc" "man" ];
   };
 
   xcbproto = attrs : attrs // {
@@ -97,6 +98,7 @@ in
         rm -rf $out/share/doc
       '';
     CPP = stdenv.lib.optionalString stdenv.isDarwin "clang -E -";
+    outputs = [ "out" "man" ];
   };
 
   libXfont = attrs: attrs // {
@@ -107,7 +109,6 @@ in
     ];
   };
 
-
   libXxf86vm = attrs: attrs // {
     preConfigure = setMalloc0ReturnsNullCrossCompiling;
   };
@@ -126,6 +127,7 @@ in
     '';
     propagatedBuildInputs = [ xorg.libSM ];
     CPP = stdenv.lib.optionalString stdenv.isDarwin "clang -E -";
+    outputs = [ "out" "doc" "man" ];
   };
 
   # See https://bugs.freedesktop.org/show_bug.cgi?id=47792
@@ -420,4 +422,17 @@ in
   xwd = attrs: attrs // {
     buildInputs = with xorg; attrs.buildInputs ++ [libXt libxkbfile];
   };
+
+  kbproto = attrs: attrs // {
+    outputs = [ "out" "doc" ];
+  };
+
+  xextproto = attrs: attrs // {
+    outputs = [ "out" "doc" ];
+  };
+
+  xproto = attrs: attrs // {
+    outputs = [ "out" "doc" ];
+  };
+
 }
diff --git a/pkgs/shells/bash/default.nix b/pkgs/shells/bash/default.nix
index 014a3ad4a2c..ea65e1f63c8 100644
--- a/pkgs/shells/bash/default.nix
+++ b/pkgs/shells/bash/default.nix
@@ -18,6 +18,8 @@ stdenv.mkDerivation rec {
     inherit sha256;
   };
 
+  outputs = [ "out" "doc" ];
+
   NIX_CFLAGS_COMPILE = ''
     -DSYS_BASHRC="/etc/bashrc"
     -DSYS_BASH_LOGOUT="/etc/bash_logout"
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index e7f93aedfc2..721a10db30d 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -3667,7 +3667,7 @@ let
     libc = glibc;
     binutils = binutils;
     inherit coreutils zlib;
-    extraPackages = [ libcxx ];
+    extraPackages = [ libcxx libcxxabi ];
     nativeTools = false;
     nativeLibc = false;
   };
@@ -6253,15 +6253,9 @@ let
 
   getdata = callPackage ../development/libraries/getdata { };
 
-  gettext = gettext_0_19;
+  gettext = callPackage ../development/libraries/gettext { };
 
-  gettext_0_17 = callPackage ../development/libraries/gettext/0.17.nix { };
-  gettext_0_18 = callPackage ../development/libraries/gettext/0.18.nix { };
-  gettext_0_19 = callPackage ../development/libraries/gettext { };
-
-  gettextWithExpat = gettext: callPackage ../development/libraries/gettext/expat.nix {
-    inherit gettext;
-  };
+  gettextWithExpat = callPackage ../development/libraries/gettext/expat.nix { };
 
   gd = callPackage ../development/libraries/gd { };
 
@@ -6480,7 +6474,7 @@ let
   };
 
   gtk3 = callPackage ../development/libraries/gtk+/3.x.nix {
-    gettext = gettextWithExpat gettext_0_19;
+    gettext = gettextWithExpat;
   };
 
   gtk = pkgs.gtk2;