summary refs log tree commit diff
path: root/pkgs
diff options
context:
space:
mode:
authorVladimír Čunát <vcunat@gmail.com>2017-06-18 13:22:23 +0200
committerVladimír Čunát <vcunat@gmail.com>2017-06-18 13:22:23 +0200
commit8702fd35e2bee6fb89e726b2d3c5103a1c60c566 (patch)
tree4a18973fa6782904bb11828063e8f6c7510a9428 /pkgs
parent351b59be55851d94ea078f2a211c0706b317e979 (diff)
parent91e08fe55b93058577253b65ab73121f4bca2763 (diff)
downloadnixlib-8702fd35e2bee6fb89e726b2d3c5103a1c60c566.tar
nixlib-8702fd35e2bee6fb89e726b2d3c5103a1c60c566.tar.gz
nixlib-8702fd35e2bee6fb89e726b2d3c5103a1c60c566.tar.bz2
nixlib-8702fd35e2bee6fb89e726b2d3c5103a1c60c566.tar.lz
nixlib-8702fd35e2bee6fb89e726b2d3c5103a1c60c566.tar.xz
nixlib-8702fd35e2bee6fb89e726b2d3c5103a1c60c566.tar.zst
nixlib-8702fd35e2bee6fb89e726b2d3c5103a1c60c566.zip
Merge branch 'master' into staging
... to get in more fixes of setuid/setgid.
Diffstat (limited to 'pkgs')
-rw-r--r--pkgs/applications/altcoins/bitcoin-classic.nix10
-rw-r--r--pkgs/applications/altcoins/freicoin.nix6
-rw-r--r--pkgs/applications/altcoins/memorycoin.nix8
-rw-r--r--pkgs/applications/altcoins/primecoin.nix8
-rw-r--r--pkgs/applications/graphics/ImageMagick/7.0.nix4
-rw-r--r--pkgs/applications/graphics/ImageMagick/default.nix4
-rw-r--r--pkgs/applications/graphics/feh/default.nix17
-rw-r--r--pkgs/applications/graphics/shotwell/default.nix10
-rw-r--r--pkgs/applications/misc/krename/default.nix6
-rw-r--r--pkgs/applications/misc/udevil/default.nix7
-rw-r--r--pkgs/applications/networking/browsers/chromium/common.nix6
-rw-r--r--pkgs/applications/networking/browsers/chromium/patches/fix_network_api_crash.patch77
-rw-r--r--pkgs/applications/networking/newsreaders/quiterss/default.nix4
-rw-r--r--pkgs/applications/networking/p2p/eiskaltdcpp/default.nix1
-rw-r--r--pkgs/applications/networking/syncthing/inotify-deps.nix23
-rw-r--r--pkgs/applications/networking/syncthing/inotify.nix4
-rw-r--r--pkgs/applications/office/libreoffice/default.nix2
-rw-r--r--pkgs/applications/office/libreoffice/still.nix13
-rw-r--r--pkgs/applications/office/libreoffice/xdg-open.patch25
-rw-r--r--pkgs/applications/office/zim/default.nix13
-rw-r--r--pkgs/applications/video/qstopmotion/default.nix36
-rw-r--r--pkgs/desktops/mate/atril/default.nix37
-rw-r--r--pkgs/desktops/mate/default.nix1
-rw-r--r--pkgs/development/compilers/ghc/head.nix3
-rw-r--r--pkgs/development/interpreters/clojure/clooj.nix3
-rw-r--r--pkgs/development/libraries/accountsservice/default.nix9
-rw-r--r--pkgs/development/libraries/catch/default.nix8
-rw-r--r--pkgs/development/node-packages/node-packages-v4.nix27
-rw-r--r--pkgs/development/node-packages/node-packages-v6.json1
-rw-r--r--pkgs/development/node-packages/node-packages-v6.nix515
-rw-r--r--pkgs/development/ocaml-modules/containers/default.nix7
-rw-r--r--pkgs/development/python-modules/keystoneauth1/default.nix27
-rw-r--r--pkgs/development/python-modules/oslo-config/default.nix22
-rw-r--r--pkgs/development/qtcreator/default.nix22
-rw-r--r--pkgs/development/tools/build-managers/gradle/default.nix10
-rw-r--r--pkgs/games/unnethack/default.nix2
-rw-r--r--pkgs/games/xconq/default.nix2
-rw-r--r--pkgs/games/xsokoban/default.nix6
-rw-r--r--pkgs/os-specific/linux/kernel/linux-4.11.nix4
-rw-r--r--pkgs/os-specific/linux/kernel/linux-4.4.nix4
-rw-r--r--pkgs/os-specific/linux/kernel/linux-4.9.nix4
-rw-r--r--pkgs/os-specific/linux/rewritefs/default.nix5
-rw-r--r--pkgs/os-specific/linux/spl/default.nix4
-rw-r--r--pkgs/os-specific/linux/zfs/default.nix6
-rw-r--r--pkgs/servers/atlassian/confluence.nix4
-rw-r--r--pkgs/servers/atlassian/crowd.nix4
-rw-r--r--pkgs/servers/atlassian/jira.nix4
-rw-r--r--pkgs/servers/computing/torque/default.nix3
-rw-r--r--pkgs/servers/http/hiawatha/default.nix4
-rw-r--r--pkgs/servers/sql/cockroachdb/default.nix37
-rw-r--r--pkgs/servers/sql/cockroachdb/deps.nix471
-rw-r--r--pkgs/shells/rssh/default.nix6
-rw-r--r--pkgs/tools/admin/cli53/default.nix30
-rw-r--r--pkgs/tools/backup/amazon-glacier-cmd-interface/default.nix6
-rw-r--r--pkgs/tools/filesystems/glusterfs/default.nix4
-rw-r--r--pkgs/tools/misc/parallel/default.nix4
-rw-r--r--pkgs/tools/misc/rrdtool/default.nix4
-rw-r--r--pkgs/tools/misc/uucp/default.nix7
-rw-r--r--pkgs/tools/security/logkeys/default.nix1
-rw-r--r--pkgs/tools/security/sudo/default.nix5
-rw-r--r--pkgs/tools/security/super/default.nix7
-rw-r--r--pkgs/tools/security/vulnix/requirements.nix1
-rw-r--r--pkgs/tools/system/at/install.patch2
-rw-r--r--pkgs/tools/system/cron/default.nix3
-rw-r--r--pkgs/tools/system/fakeroot/default.nix5
-rw-r--r--pkgs/tools/system/fakeroot/einval.patch47
-rw-r--r--pkgs/tools/system/logcheck/default.nix5
-rw-r--r--pkgs/top-level/all-packages.nix7
-rw-r--r--pkgs/top-level/python-packages.nix35
69 files changed, 1012 insertions, 707 deletions
diff --git a/pkgs/applications/altcoins/bitcoin-classic.nix b/pkgs/applications/altcoins/bitcoin-classic.nix
index 1cb9a77785e4..5f17eb3a1cf6 100644
--- a/pkgs/applications/altcoins/bitcoin-classic.nix
+++ b/pkgs/applications/altcoins/bitcoin-classic.nix
@@ -13,7 +13,7 @@ stdenv.mkDerivation rec {
     owner = "bitcoinclassic";
     repo = "bitcoinclassic";
     rev = "v${version}";
-    sha256 = "1z6g930csvx49krl34207yqwlr8dkxpi72k3msh15p1kjvv90nvz";
+    sha256 = "00spils0gv8krx2nyxrf6j1dl81wmxk8xjkqc22cv7nsdnakzrvm";
   };
 
   nativeBuildInputs = [ pkgconfig autoreconfHook ];
@@ -32,12 +32,12 @@ stdenv.mkDerivation rec {
       parties. Users hold the crypto keys to their own money and transact directly
       with each other, with the help of a P2P network to check for double-spending.
 
-      Bitcoin Classic stands for the original Bitcoin as Satoshi described it, 
-      "A Peer-to-Peer Electronic Cash System". We are writing the software that 
+      Bitcoin Classic stands for the original Bitcoin as Satoshi described it,
+      "A Peer-to-Peer Electronic Cash System". We are writing the software that
       miners and users say they want. We will make sure it solves their needs, help
-      them deploy it, and gracefully upgrade the bitcoin network's capacity 
+      them deploy it, and gracefully upgrade the bitcoin network's capacity
       together. The data shows that Bitcoin can grow, on-chain, to welcome many
-      more users onto our coin in a safe and distributed manner. In the future we 
+      more users onto our coin in a safe and distributed manner. In the future we
       will continue to release updates that are in line with Satoshi’s whitepaper &
       vision, and are agreed upon by the community.
     '';
diff --git a/pkgs/applications/altcoins/freicoin.nix b/pkgs/applications/altcoins/freicoin.nix
index f7cd04f1be4e..e8a26365361d 100644
--- a/pkgs/applications/altcoins/freicoin.nix
+++ b/pkgs/applications/altcoins/freicoin.nix
@@ -11,16 +11,18 @@ stdenv.mkDerivation rec {
     sha256 = "1m5pcnfhwhcj7q00p2sy3h73rkdm3w6grmljgiq53gshcj08cq1z";
   };
 
+  qmakeFlags = ["USE_UPNP=-"];
+
   # I think that openssl and zlib are required, but come through other
   # packages
 
   installPhase = ''
     mkdir -p $out/bin
     cp freicoin-qt $out/bin
-    '';
+  '';
 
   nativeBuildInputs = [ qmake4Hook ];
-  buildInputs = [ db boost gmp mpfr miniupnpc qt4 ];
+  buildInputs = [ db boost gmp mpfr qt4 ];
 
   meta = with stdenv.lib; {
     description = "Peer-to-peer currency with demurrage fee";
diff --git a/pkgs/applications/altcoins/memorycoin.nix b/pkgs/applications/altcoins/memorycoin.nix
index d30133fa5511..2723bf9dabdb 100644
--- a/pkgs/applications/altcoins/memorycoin.nix
+++ b/pkgs/applications/altcoins/memorycoin.nix
@@ -1,5 +1,5 @@
 { stdenv, fetchurl, pkgconfig, openssl, db48, boost
-, zlib, miniupnpc, qt4, qmake4Hook, utillinux, protobuf, qrencode
+, zlib, qt4, qmake4Hook, utillinux, protobuf, qrencode
 , withGui }:
 
 with stdenv.lib;
@@ -13,10 +13,12 @@ stdenv.mkDerivation rec{
     sha256 = "1iyh6dqrg0mirwci5br5n5qw3ghp2cs23wd8ygr56bh9ml4dr1m8";
   };
 
-  buildInputs = [ pkgconfig openssl db48 boost zlib
-                  miniupnpc utillinux protobuf ]
+  buildInputs = [ pkgconfig openssl db48 boost zlib utillinux protobuf ]
                   ++ optionals withGui [ qt4 qmake4Hook qrencode ];
 
+  qmakeFlags = ["USE_UPNP=-"];
+  makeFlags = ["USE_UPNP=-"];
+
   configureFlags = [ "--with-boost-libdir=${boost.out}/lib" ]
                      ++ optionals withGui [ "--with-gui=qt4" ];
 
diff --git a/pkgs/applications/altcoins/primecoin.nix b/pkgs/applications/altcoins/primecoin.nix
index 7d25a26fba25..311836702122 100644
--- a/pkgs/applications/altcoins/primecoin.nix
+++ b/pkgs/applications/altcoins/primecoin.nix
@@ -1,5 +1,5 @@
 { stdenv, fetchurl, pkgconfig, openssl, db48, boost
-, zlib, miniupnpc, qt4, qmake4Hook, utillinux, protobuf, qrencode
+, zlib, qt4, qmake4Hook, utillinux, protobuf, qrencode
 , withGui }:
 
 with stdenv.lib;
@@ -13,8 +13,10 @@ stdenv.mkDerivation rec{
     sha256 = "0cixnkici74204s9d5iqj5sccib5a8dig2p2fp1axdjifpg787i3";
   };
 
-  buildInputs = [ pkgconfig openssl db48 boost zlib
-                  miniupnpc utillinux protobuf ]
+  qmakeFlags = ["USE_UPNP=-"];
+  makeFlags = ["USE_UPNP=-"];
+
+  buildInputs = [ pkgconfig openssl db48 boost zlib utillinux protobuf ]
                   ++ optionals withGui [ qt4 qmake4Hook qrencode ];
 
   configureFlags = [ "--with-boost-libdir=${boost.out}/lib" ]
diff --git a/pkgs/applications/graphics/ImageMagick/7.0.nix b/pkgs/applications/graphics/ImageMagick/7.0.nix
index 7455736ed024..bcad077b38c9 100644
--- a/pkgs/applications/graphics/ImageMagick/7.0.nix
+++ b/pkgs/applications/graphics/ImageMagick/7.0.nix
@@ -12,8 +12,8 @@ let
     else throw "ImageMagick is not supported on this platform.";
 
   cfg = {
-    version = "7.0.5-7";
-    sha256 = "11k53193az0bvdhp4gz2g9p8fb6r5fr1h74dnfx6ijfnfj80hbgp";
+    version = "7.0.6-0";
+    sha256 = "1vl9mkdp5pskl4lxd1p79ayv1k3gxpa8iz992d302qyllhm7wn1i";
     patches = [];
   };
 in
diff --git a/pkgs/applications/graphics/ImageMagick/default.nix b/pkgs/applications/graphics/ImageMagick/default.nix
index 052d424376d3..8f4d44932f59 100644
--- a/pkgs/applications/graphics/ImageMagick/default.nix
+++ b/pkgs/applications/graphics/ImageMagick/default.nix
@@ -12,8 +12,8 @@ let
     else throw "ImageMagick is not supported on this platform.";
 
   cfg = {
-    version = "6.9.8-9";
-    sha256 = "0wr6wcmvaw62f6pkgnpqnjmp331wfwmds9wmqzr4zv53s9k1lkzn";
+    version = "6.9.8-10";
+    sha256 = "040qs7nwcm84bjd9wryvd58zqfykbmn3y3qfc90lnldww7v6ihlg";
     patches = [];
   }
     # Freeze version on mingw so we don't need to port the patch too often.
diff --git a/pkgs/applications/graphics/feh/default.nix b/pkgs/applications/graphics/feh/default.nix
index 035a275618cf..b7949b4d4f97 100644
--- a/pkgs/applications/graphics/feh/default.nix
+++ b/pkgs/applications/graphics/feh/default.nix
@@ -13,7 +13,7 @@ stdenv.mkDerivation rec {
     sha256 = "09f5rfzls4h5jcrp7ylwbiljp5qzc2nbw9p2csv0pnlaixj69gil";
   };
 
-  outputs = [ "out" "doc" ];
+  outputs = [ "out" "man" "doc" ];
 
   nativeBuildInputs = [ makeWrapper xorg.libXt ]
     ++ optionals doCheck [ perlPackages.TestCommand perlPackages.TestHarness ];
@@ -22,13 +22,20 @@ stdenv.mkDerivation rec {
 
   preBuild = ''
     makeFlags="PREFIX=$out exif=1"
-      '';
+  '';
+
+  postBuild = ''
+    pushd man
+    make
+    popd
+  '';
 
   postInstall = ''
     wrapProgram "$out/bin/feh" --prefix PATH : "${libjpeg.bin}/bin" \
-                               --add-flags '--theme=feh' 
-        '';
-  
+                               --add-flags '--theme=feh'
+    install -D -m 644 man/*.1 $out/share/man/man1
+  '';
+
   checkPhase = ''
     PERL5LIB="${perlPackages.TestCommand}/lib/perl5/site_perl" make test
   '';
diff --git a/pkgs/applications/graphics/shotwell/default.nix b/pkgs/applications/graphics/shotwell/default.nix
index c020f7fc6ca7..3f31b86fe492 100644
--- a/pkgs/applications/graphics/shotwell/default.nix
+++ b/pkgs/applications/graphics/shotwell/default.nix
@@ -8,12 +8,12 @@
 stdenv.mkDerivation rec {
   version = "${major}.${minor}";
   major = "0.26";
-  minor = "1";
+  minor = "2";
   name = "shotwell-${version}";
 
   src = fetchurl {
     url = "mirror://gnome/sources/shotwell/${major}/${name}.tar.xz";
-    sha256 = "0xak1f69lp1yx3p8jgmr9c0z3jypi8zjpy3kiknn5n9g2f5cqq0a";
+    sha256 = "0frjqa6nmh025clwnb74z2rzbdq65wjcp2lf9csgcbkpahyjhrag";
   };
 
   NIX_CFLAGS_COMPILE = "-I${glib.dev}/include/glib-2.0 -I${glib.out}/lib/glib-2.0/include";
@@ -24,11 +24,13 @@ stdenv.mkDerivation rec {
     patchShebangs .
   '';
 
+  nativeBuildInputs = [ pkgconfig wrapGAppsHook ];
+
   buildInputs = [ m4 glibc gtk3 libexif libgphoto2 libsoup libxml2 vala_0_28 sqlite webkitgtk
-                  pkgconfig gst_all_1.gstreamer gst_all_1.gst-plugins-base gnome3.libgee
+                  gst_all_1.gstreamer gst_all_1.gst-plugins-base gnome3.libgee
                   which udev libgudev gnome3.gexiv2 hicolor_icon_theme
                   libraw json_glib gettext desktop_file_utils glib lcms2 gdk_pixbuf librsvg
-                  wrapGAppsHook gnome_doc_utils gnome3.rest gnome3.gcr
+                  gnome_doc_utils gnome3.rest gnome3.gcr
                   gnome3.defaultIconTheme itstool libgdata ];
 
   meta = with stdenv.lib; {
diff --git a/pkgs/applications/misc/krename/default.nix b/pkgs/applications/misc/krename/default.nix
index 1137d6c07f6a..c6baab21ee01 100644
--- a/pkgs/applications/misc/krename/default.nix
+++ b/pkgs/applications/misc/krename/default.nix
@@ -6,15 +6,15 @@
 
 let
   pname = "krename";
-  version = "20161228";
+  version = "20170610";
   unwrapped = kdeDerivation rec {
     name = "${pname}-${version}";
 
     src = fetchFromGitHub {
       owner  = "KDE";
       repo   = "krename";
-      rev    = "4e55c2bef50898eb4a6485ce068379b166121895";
-      sha256 = "09yz3sxy2l6radfybkj2f7224ggf315vnvyksk0aq8f03gan6cbp";
+      rev    = "18000edfec52de0b417d575e14eb078b4bd7b2f3";
+      sha256 = "0hsrlfrbi42jqqnkcz682c6yrfi3xpl299672knj22074wr6sv0j";
     };
 
     meta = with lib; {
diff --git a/pkgs/applications/misc/udevil/default.nix b/pkgs/applications/misc/udevil/default.nix
index 8ce683ec9088..9a4b795061b5 100644
--- a/pkgs/applications/misc/udevil/default.nix
+++ b/pkgs/applications/misc/udevil/default.nix
@@ -7,8 +7,9 @@ stdenv.mkDerivation {
   };
   buildInputs = [ intltool glib pkgconfig udev ];
   configurePhase = ''
-    substituteInPlace src/Makefile.am --replace "-o root -g root" ""
     substituteInPlace src/Makefile.in --replace "-o root -g root" ""
+    # do not set setuid bit in nix store
+    substituteInPlace src/Makefile.in --replace 4755 0755
     ./configure \
       --prefix=$out \
       --with-mount-prog=${utillinux}/bin/mount \
@@ -17,10 +18,6 @@ stdenv.mkDerivation {
       --with-setfacl-prog=${acl.bin}/bin/setfacl \
       --sysconfdir=$prefix/etc
   '';
-  preConfigure = ''
-    cat src/Makefile.am
-    exit 2
-  '';
   patches = [ ./device-info-sys-stat.patch ];
   meta = {
     description = "A command line Linux program which mounts and unmounts removable devices without a password, shows device info, and monitors device changes";
diff --git a/pkgs/applications/networking/browsers/chromium/common.nix b/pkgs/applications/networking/browsers/chromium/common.nix
index e747db6a8b7b..43b6da6bf34e 100644
--- a/pkgs/applications/networking/browsers/chromium/common.nix
+++ b/pkgs/applications/networking/browsers/chromium/common.nix
@@ -105,6 +105,9 @@ let
 
     patches = [
       ./patches/nix_plugin_paths_52.patch
+      # To enable ChromeCast, go to chrome://flags and set "Load Media Router Component Extension" to Enabled
+      # Fixes Chromecast: https://bugs.chromium.org/p/chromium/issues/detail?id=734325
+      ./patches/fix_network_api_crash.patch
     ] ++ optional (versionOlder version "57.0") ./patches/glibc-2.24.patch
       ++ optional enableWideVine ./patches/widevine.patch;
 
@@ -129,6 +132,9 @@ let
         :l; n; bl
       }' gpu/config/gpu_control_list.cc
 
+      # Allow to put extensions into the system-path.
+      sed -i -e 's,/usr,/run/current-system/sw,' chrome/common/chrome_paths.cc
+
       patchShebangs .
       # use our own nodejs
       mkdir -p third_party/node/linux/node-linux-x64/bin
diff --git a/pkgs/applications/networking/browsers/chromium/patches/fix_network_api_crash.patch b/pkgs/applications/networking/browsers/chromium/patches/fix_network_api_crash.patch
new file mode 100644
index 000000000000..093598465c47
--- /dev/null
+++ b/pkgs/applications/networking/browsers/chromium/patches/fix_network_api_crash.patch
@@ -0,0 +1,77 @@
+Index: extensions/browser/api/networking_private/networking_private_linux.cc
+===================================================================
+--- a/extensions/browser/api/networking_private/networking_private_linux.cc.orig	2016-05-05 03:01:50.000000000 +0200
++++ b/extensions/browser/api/networking_private/networking_private_linux.cc	2016-05-10 16:16:42.431052917 +0200
+@@ -215,12 +215,14 @@ void NetworkingPrivateLinux::GetState(
+   std::unique_ptr<base::DictionaryValue> network_properties(
+       new base::DictionaryValue);
+ 
++  std::string* erp = error.get();
++  base::DictionaryValue* npp = network_properties.get();
+   // Runs GetCachedNetworkProperties on |dbus_thread|.
+   dbus_thread_.task_runner()->PostTaskAndReply(
+       FROM_HERE, base::Bind(&NetworkingPrivateLinux::GetCachedNetworkProperties,
+                             base::Unretained(this), guid,
+-                            base::Unretained(network_properties.get()),
+-                            base::Unretained(error.get())),
++                            base::Unretained(npp),
++                            base::Unretained(erp)),
+       base::Bind(&GetCachedNetworkPropertiesCallback, base::Passed(&error),
+                  base::Passed(&network_properties), success_callback,
+                  failure_callback));
+@@ -301,11 +303,12 @@ void NetworkingPrivateLinux::GetNetworks
+ 
+   // Runs GetAllWiFiAccessPoints on the dbus_thread and returns the
+   // results back to OnAccessPointsFound where the callback is fired.
++  NetworkMap* nmp = network_map.get();
+   dbus_thread_.task_runner()->PostTaskAndReply(
+       FROM_HERE,
+       base::Bind(&NetworkingPrivateLinux::GetAllWiFiAccessPoints,
+                  base::Unretained(this), configured_only, visible_only, limit,
+-                 base::Unretained(network_map.get())),
++                 base::Unretained(nmp)),
+       base::Bind(&NetworkingPrivateLinux::OnAccessPointsFound,
+                  base::Unretained(this), base::Passed(&network_map),
+                  success_callback, failure_callback));
+@@ -321,11 +324,12 @@ bool NetworkingPrivateLinux::GetNetworks
+   // Runs GetAllWiFiAccessPoints on the dbus_thread and returns the
+   // results back to SendNetworkListChangedEvent to fire the event. No
+   // callbacks are used in this case.
++  NetworkMap* nmp = network_map.get();
+   dbus_thread_.task_runner()->PostTaskAndReply(
+       FROM_HERE, base::Bind(&NetworkingPrivateLinux::GetAllWiFiAccessPoints,
+                             base::Unretained(this), false /* configured_only */,
+                             false /* visible_only */, 0 /* limit */,
+-                            base::Unretained(network_map.get())),
++                            base::Unretained(nmp)),
+       base::Bind(&NetworkingPrivateLinux::OnAccessPointsFoundViaScan,
+                  base::Unretained(this), base::Passed(&network_map)));
+ 
+@@ -506,11 +510,12 @@ void NetworkingPrivateLinux::StartConnec
+ 
+   std::unique_ptr<std::string> error(new std::string);
+ 
++  std::string* erp = error.get();
+   // Runs ConnectToNetwork on |dbus_thread|.
+   dbus_thread_.task_runner()->PostTaskAndReply(
+       FROM_HERE,
+       base::Bind(&NetworkingPrivateLinux::ConnectToNetwork,
+-                 base::Unretained(this), guid, base::Unretained(error.get())),
++                 base::Unretained(this), guid, base::Unretained(erp)),
+       base::Bind(&OnNetworkConnectOperationCompleted, base::Passed(&error),
+                  success_callback, failure_callback));
+ }
+@@ -524,11 +529,12 @@ void NetworkingPrivateLinux::StartDiscon
+ 
+   std::unique_ptr<std::string> error(new std::string);
+ 
++  std::string* erp = error.get();
+   // Runs DisconnectFromNetwork on |dbus_thread|.
+   dbus_thread_.task_runner()->PostTaskAndReply(
+       FROM_HERE,
+       base::Bind(&NetworkingPrivateLinux::DisconnectFromNetwork,
+-                 base::Unretained(this), guid, base::Unretained(error.get())),
++                 base::Unretained(this), guid, base::Unretained(erp)),
+       base::Bind(&OnNetworkConnectOperationCompleted, base::Passed(&error),
+                  success_callback, failure_callback));
+ }
diff --git a/pkgs/applications/networking/newsreaders/quiterss/default.nix b/pkgs/applications/networking/newsreaders/quiterss/default.nix
index 53520909b09c..2f20710a9096 100644
--- a/pkgs/applications/networking/newsreaders/quiterss/default.nix
+++ b/pkgs/applications/networking/newsreaders/quiterss/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   name = "quiterss-${version}";
-  version = "0.18.4";
+  version = "0.18.5";
 
   src = fetchFromGitHub {
     owner = "QuiteRSS";
     repo = "quiterss";
     rev = "${version}";
-    sha256 = "0gk4s41npg8is0jf4yyqpn8ksqrhwxq97z40iqcbd7dzsiv7bkvj";
+    sha256 = "1y0n5ps1z4wgf9hkfjrw7dfyncrw22bf9mi3052vmf3s7xzz6vbb";
   };
 
   buildInputs = [ qt5.qtbase qt5.qttools qt5.qtwebkit qmakeHook makeQtWrapper pkgconfig sqlite.dev ];
diff --git a/pkgs/applications/networking/p2p/eiskaltdcpp/default.nix b/pkgs/applications/networking/p2p/eiskaltdcpp/default.nix
index 8d46cf621044..6b6f66e24d09 100644
--- a/pkgs/applications/networking/p2p/eiskaltdcpp/default.nix
+++ b/pkgs/applications/networking/p2p/eiskaltdcpp/default.nix
@@ -15,6 +15,7 @@ stdenv.mkDerivation rec {
     -DUSE_QT_QML=ON
     -DFREE_SPACE_BAR_C=ON
     -DUSE_MINIUPNP=ON
+    -DLOCAL_MINIUPNP=ON
     -DDBUS_NOTIFY=ON
     -DUSE_JS=ON
     -DPERL_REGEX=ON
diff --git a/pkgs/applications/networking/syncthing/inotify-deps.nix b/pkgs/applications/networking/syncthing/inotify-deps.nix
index d8b087dcb80a..e5e554db67b8 100644
--- a/pkgs/applications/networking/syncthing/inotify-deps.nix
+++ b/pkgs/applications/networking/syncthing/inotify-deps.nix
@@ -1,30 +1,21 @@
-# This file was generated by go2nix.
+# This file was generated by https://github.com/kamilchm/go2nix v1.2.0
 [
   {
-    goPackagePath = "github.com/cenkalti/backoff";
-    fetch = {
-      type = "git";
-      url = "https://github.com/cenkalti/backoff";
-      rev = "b02f2bbce11d7ea6b97f282ef1771b0fe2f65ef3";
-      sha256 = "0lhcll9pzcxbbm9sdsijvcvdqc4lrsgbyw0q1xly0pnz556v6pyc";
-    };
-  }
-  {
     goPackagePath = "github.com/syncthing/syncthing";
     fetch = {
       type = "git";
       url = "https://github.com/syncthing/syncthing";
-      rev = "fb6d453c74d8420af847460e42e05779e90311b6";
-      sha256 = "18fya44i80ij5wqpwg0bff2hp058rh87b9zld2rpw0z8r04bnsv0";
+      rev = "d0061c172caecd3baf61f3ff720f56fdb805186e";
+      sha256 = "08cn0ym4arjppbnfn2b37crarwmiqbj4yjr7kinhdxx9gqm5wkj1";
     };
   }
   {
-    goPackagePath = "github.com/zillode/notify";
+    goPackagePath = "golang.org/x/sys";
     fetch = {
       type = "git";
-      url = "https://github.com/zillode/notify";
-      rev = "df33c1a773b462f936a149c36696c018c047eaa9";
-      sha256 = "0ncfqnj5kvbyw630xsxqkxy3y6jv5hp89fqi9mzra3lr4zckiv3s";
+      url = "https://go.googlesource.com/sys";
+      rev = "fb4cac33e3196ff7f507ab9b2d2a44b0142f5b5a";
+      sha256 = "1y5lx3f7rawfxrqg0s2ndgbjjjaml3rn3f27h9w9c5mw3xk7lrgj";
     };
   }
 ]
diff --git a/pkgs/applications/networking/syncthing/inotify.nix b/pkgs/applications/networking/syncthing/inotify.nix
index 6e9c1ba10280..c83d9a2fcd00 100644
--- a/pkgs/applications/networking/syncthing/inotify.nix
+++ b/pkgs/applications/networking/syncthing/inotify.nix
@@ -2,7 +2,7 @@
 
 buildGoPackage rec {
   name = "syncthing-inotify-${version}";
-  version = "0.8.5";
+  version = "0.8.6";
 
   goPackagePath = "github.com/syncthing/syncthing-inotify";
 
@@ -10,7 +10,7 @@ buildGoPackage rec {
     owner  = "syncthing";
     repo   = "syncthing-inotify";
     rev    = "v${version}";
-    sha256 = "13qfppwlqrx3fs44ghnffdp9x0hs7mn1gal2316p7jb0klkcpfzh";
+    sha256 = "0z1zpb7av4q5nj2d4yda9jcbjdz4yj3823c29y73yf0gfp26lppl";
   };
 
   goDeps = ./inotify-deps.nix;
diff --git a/pkgs/applications/office/libreoffice/default.nix b/pkgs/applications/office/libreoffice/default.nix
index ee59f0d078d4..0f5f59209660 100644
--- a/pkgs/applications/office/libreoffice/default.nix
+++ b/pkgs/applications/office/libreoffice/default.nix
@@ -72,6 +72,8 @@ in stdenv.mkDerivation rec {
   configureScript = "./autogen.sh";
   dontUseCmakeConfigure = true;
 
+  patches = [ ./xdg-open.patch ];
+
   postUnpack = ''
     mkdir -v $sourceRoot/src
   '' + (stdenv.lib.concatMapStrings (f: "ln -sfv ${f} $sourceRoot/src/${f.md5 or f.outputHash}-${f.name}\nln -sfv ${f} $sourceRoot/src/${f.name}\n") srcs.third_party)
diff --git a/pkgs/applications/office/libreoffice/still.nix b/pkgs/applications/office/libreoffice/still.nix
index 7a2174b557e1..7c122c0725af 100644
--- a/pkgs/applications/office/libreoffice/still.nix
+++ b/pkgs/applications/office/libreoffice/still.nix
@@ -73,11 +73,14 @@ in stdenv.mkDerivation rec {
   dontUseCmakeConfigure = true;
 
   # ICU 58, included in 5.3.x
-  patches = [(fetchurl {
-    url = "https://gerrit.libreoffice.org/gitweb?p=core.git;a=patch;h=3e42714c76b1347babfdea0564009d8d82a83af4";
-    sha256 = "10bid0jdw1rpdsqwzzk3r4rp6bjs2cvi82h7anz2m1amfjdv86my";
-    name = "libreoffice-5.2.x-icu4c-58.patch";
-  })];
+  patches = [
+    (fetchurl {
+      url = "https://gerrit.libreoffice.org/gitweb?p=core.git;a=patch;h=3e42714c76b1347babfdea0564009d8d82a83af4";
+      sha256 = "10bid0jdw1rpdsqwzzk3r4rp6bjs2cvi82h7anz2m1amfjdv86my";
+      name = "libreoffice-5.2.x-icu4c-58.patch";}
+    )
+    ./xdg-open.patch
+  ];
 
   postUnpack = ''
     mkdir -v $sourceRoot/src
diff --git a/pkgs/applications/office/libreoffice/xdg-open.patch b/pkgs/applications/office/libreoffice/xdg-open.patch
new file mode 100644
index 000000000000..3ff7e5d80f7a
--- /dev/null
+++ b/pkgs/applications/office/libreoffice/xdg-open.patch
@@ -0,0 +1,25 @@
+diff --git a/shell/source/unix/exec/shellexec.cxx b/shell/source/unix/exec/shellexec.cxx
+--- a/shell/source/unix/exec/shellexec.cxx
++++ b/shell/source/unix/exec/shellexec.cxx
+@@ -150,7 +150,7 @@ void SAL_CALL ShellExec::execute( const OUString& aCommand, const OUString& aPar
+         if (std::getenv("LIBO_FLATPAK") != nullptr) {
+             aBuffer.append("/app/bin/xdg-open");
+         } else {
+-            aBuffer.append("/usr/bin/xdg-open");
++            aBuffer.append("xdg-open");
+         }
+ #endif
+         aBuffer.append(" ");
+diff --git a/shell/source/unix/misc/senddoc.sh b/shell/source/unix/misc/senddoc.sh
+index 4519e01f26e2..8985711a2c01 100755
+--- a/shell/source/unix/misc/senddoc.sh
++++ b/shell/source/unix/misc/senddoc.sh
+@@ -393,6 +393,8 @@ case `basename "$MAILER" | sed 's/-.*$//'` in
+             MAILER=/usr/bin/kde-open
+         elif [ -x /usr/bin/xdg-open ] ; then
+             MAILER=/usr/bin/xdg-open
++        elif type -p xdg-open >/dev/null 2>&1 ; then
++            MAILER="$(type -p xdg-open)"
+         else
+             echo "Unsupported mail client: `basename $MAILER | sed 's/-.*^//'`"
+             exit 2
diff --git a/pkgs/applications/office/zim/default.nix b/pkgs/applications/office/zim/default.nix
index 227b982689e1..18c4514c4de1 100644
--- a/pkgs/applications/office/zim/default.nix
+++ b/pkgs/applications/office/zim/default.nix
@@ -9,11 +9,11 @@
 
 python2Packages.buildPythonApplication rec {
   name = "zim-${version}";
-  version = "0.65";
+  version = "0.67-rc2";
 
   src = fetchurl {
     url = "http://zim-wiki.org/downloads/${name}.tar.gz";
-    sha256 = "15pdq4fxag85qjsrdmmssiq85qsk5vnbp8mrqnpvx8lm8crz6hjl";
+    sha256 = "0l4q2dfnvyn0jr1lggf8g7515q4z7qr1lnmy0lsyhjf477ldszqf";
   };
 
   propagatedBuildInputs = with python2Packages; [ pyGtkGlade pyxdg pygobject2 ];
@@ -37,9 +37,10 @@ python2Packages.buildPythonApplication rec {
   '';
 
 
-  meta = {
-      description = "A desktop wiki";
-      homepage = http://zim-wiki.org;
-      license = stdenv.lib.licenses.gpl2Plus;
+  meta = with stdenv.lib; {
+    description = "A desktop wiki";
+    homepage = http://zim-wiki.org;
+    license = licenses.gpl2Plus;
+    maintainers = with maintainers; [ pSub ];
   };
 }
diff --git a/pkgs/applications/video/qstopmotion/default.nix b/pkgs/applications/video/qstopmotion/default.nix
new file mode 100644
index 000000000000..310ac974fca7
--- /dev/null
+++ b/pkgs/applications/video/qstopmotion/default.nix
@@ -0,0 +1,36 @@
+{ stdenv, fetchurl, qt5, gstreamer, gstreamermm, gst_plugins_bad
+, gst_plugins_base, gst_plugins_good, ffmpeg, guvcview, automoc4
+, cmake, libxml2, gettext, pkgconfig, libgphoto2, gphoto2, v4l_utils
+, libv4l, pcre }:
+
+stdenv.mkDerivation rec {
+  pname = "qstopmotion";
+  version = "2.3.2";
+  name = "${pname}-${version}";
+
+  src = fetchurl {
+    url = "mirror://sourceforge/project/${pname}/Version_2_3_2/${name}-Source.tar.gz";
+    sha256 = "1vbiznwyc05jqg0dpmgxmvf7kdzmlck0i8v2c5d69kgrdnaypcrf";
+  };
+
+  buildInputs = [ qt5.qtbase gstreamer gstreamermm gst_plugins_bad gst_plugins_good
+                  gst_plugins_base ffmpeg guvcview v4l_utils libv4l pcre
+		];
+
+  nativeBuildInputs = [ pkgconfig cmake gettext libgphoto2 gphoto2 libxml2 libv4l ];
+
+  meta = with stdenv.lib; {
+    homepage = "http://www.qstopmotion.org";
+    description = "Create stopmotion animation with a (web)camera";
+    longDescription = ''
+      Qstopmotion is a tool to create stopmotion
+      animation. Its users are able to create stop-motions from pictures
+      imported from a camera or from the harddrive and export the
+      animation to different video formats such as mpeg or avi.
+    '';
+
+    license = stdenv.lib.licenses.gpl2Plus;
+    maintainers = [ maintainers.leenaars ];
+    platforms = stdenv.lib.platforms.gnu;
+  };
+}
diff --git a/pkgs/desktops/mate/atril/default.nix b/pkgs/desktops/mate/atril/default.nix
new file mode 100644
index 000000000000..197c5470d2bd
--- /dev/null
+++ b/pkgs/desktops/mate/atril/default.nix
@@ -0,0 +1,37 @@
+{ stdenv, fetchurl, pkgconfig, intltool, gtk3, libxml2, libsecret, poppler, itstool, mate, wrapGAppsHook }:
+
+stdenv.mkDerivation rec {
+  name = "atril-${version}";
+  version = "${major-ver}.${minor-ver}";
+  major-ver = "1.19";
+  minor-ver = "0";
+
+  src = fetchurl {
+    url = "http://pub.mate-desktop.org/releases/${major-ver}/${name}.tar.xz";
+    sha256 = "0v829yvr738y5s2knyvimcgqv351qzb0rpw5il19qc27rbzyri1r";
+  };
+
+  nativeBuildInputs = [
+    pkgconfig
+    intltool
+    wrapGAppsHook
+  ];
+
+  buildInputs = [
+    gtk3
+    itstool
+    libsecret
+    libxml2
+    poppler
+    mate.mate-desktop
+  ];
+
+  configureFlags = [ "--disable-caja" ];
+  
+  meta = {
+    description = "A simple multi-page document viewer for the MATE desktop";
+    homepage = "http://mate-desktop.org";
+    license = stdenv.lib.licenses.gpl2;
+    platforms = stdenv.lib.platforms.unix;
+  };
+}
diff --git a/pkgs/desktops/mate/default.nix b/pkgs/desktops/mate/default.nix
index d9565e8f4d1a..528f792a600d 100644
--- a/pkgs/desktops/mate/default.nix
+++ b/pkgs/desktops/mate/default.nix
@@ -1,5 +1,6 @@
 { callPackage, pkgs }:
 rec {
+  atril = callPackage ./atril { };
   caja = callPackage ./caja { };
   mate-common = callPackage ./mate-common { };
   mate-desktop = callPackage ./mate-desktop { };
diff --git a/pkgs/development/compilers/ghc/head.nix b/pkgs/development/compilers/ghc/head.nix
index 006a9f8fbc46..3e1aada22eb1 100644
--- a/pkgs/development/compilers/ghc/head.nix
+++ b/pkgs/development/compilers/ghc/head.nix
@@ -15,6 +15,8 @@ let
   version = "8.1.20170106";
   rev = "b4f2afe70ddbd0576b4eba3f82ba1ddc52e9b3bd";
 
+  outputs = [ "out" "doc" ];
+
   commonPreConfigure =  ''
     echo ${version} >VERSION
     echo ${rev} >GIT_COMMIT_ID
@@ -48,6 +50,7 @@ in stdenv.mkDerivation (rec {
   configureFlags = [
     "CC=${stdenv.cc}/bin/cc"
     "--with-curses-includes=${ncurses.dev}/include" "--with-curses-libraries=${ncurses.out}/lib"
+    "--datadir=$doc/share/doc/ghc"
   ] ++ stdenv.lib.optional (! enableIntegerSimple) [
     "--with-gmp-includes=${gmp.dev}/include" "--with-gmp-libraries=${gmp.out}/lib"
   ] ++ stdenv.lib.optional stdenv.isDarwin [
diff --git a/pkgs/development/interpreters/clojure/clooj.nix b/pkgs/development/interpreters/clojure/clooj.nix
index 527a5b2e5700..57ced325aad0 100644
--- a/pkgs/development/interpreters/clojure/clooj.nix
+++ b/pkgs/development/interpreters/clojure/clooj.nix
@@ -6,7 +6,8 @@ stdenv.mkDerivation {
   name = "clooj-${version}";
 
   jar = fetchurl {
-    url = "http://download1492.mediafire.com/5bbi05sxgxog/prkf64humftrmz3/clooj-0.4.4-standalone.jar";
+    # mirrored as original mediafire.com source does not work without user interaction
+    url = "https://archive.org/download/clooj-0.4.4-standalone/clooj-0.4.4-standalone.jar";
     sha256 = "0hbc29bg2a86rm3sx9kvj7h7db9j0kbnrb706wsfiyk3zi3bavnd";
   };
 
diff --git a/pkgs/development/libraries/accountsservice/default.nix b/pkgs/development/libraries/accountsservice/default.nix
index 1a49913727d8..d1b3b9b98271 100644
--- a/pkgs/development/libraries/accountsservice/default.nix
+++ b/pkgs/development/libraries/accountsservice/default.nix
@@ -3,15 +3,16 @@
 
 stdenv.mkDerivation rec {
   name = "accountsservice-${version}";
-  version = "0.6.43";
+  version = "0.6.45";
 
   src = fetchurl {
     url = "http://www.freedesktop.org/software/accountsservice/accountsservice-${version}.tar.xz";
-    sha256 = "1k6n9079001sgcwlkq0bz6mkn4m8y4dwf6hs1qm85swcld5ajfzd";
+    sha256 = "09pg25ir7kjigvp2cxd9fkfw8c8ql8vrswfvymg9zmbmma9w43zv";
   };
 
-  buildInputs = [ pkgconfig glib intltool libtool makeWrapper
-                  gobjectIntrospection polkit systemd ];
+  nativeBuildInputs = [ pkgconfig makeWrapper ];
+
+  buildInputs = [ glib intltool libtool gobjectIntrospection polkit systemd ];
 
   configureFlags = [ "--with-systemdsystemunitdir=$(out)/etc/systemd/system"
                      "--localstatedir=/var" ];
diff --git a/pkgs/development/libraries/catch/default.nix b/pkgs/development/libraries/catch/default.nix
index 021512a40e70..66ed90a90b3a 100644
--- a/pkgs/development/libraries/catch/default.nix
+++ b/pkgs/development/libraries/catch/default.nix
@@ -3,16 +3,16 @@
 stdenv.mkDerivation rec {
 
   name = "catch-${version}";
-  version = "1.7.0";
+  version = "1.9.5";
 
   src = fetchFromGitHub {
     owner = "philsquared";
     repo = "Catch";
-    rev = "v." + version;
-    sha256 = "0harki6irc4mqipjc24zyy0jimidr5ng3ss29bnpzbbwhrnkyrgm";
+    rev = "v${version}";
+    sha256 = "1in4f6w1pja8m1hvyiwx7s7gxnj6nlj1fgxw9blldffh09ikgpm2";
   };
 
-  buildInputs = [ cmake ];
+  nativeBuildInputs = [ cmake ];
   cmakeFlags = [ "-DUSE_CPP14=ON" ];
 
   doCheck = true;
diff --git a/pkgs/development/node-packages/node-packages-v4.nix b/pkgs/development/node-packages/node-packages-v4.nix
index bbc0f2b8ad03..c8e51f53a9ac 100644
--- a/pkgs/development/node-packages/node-packages-v4.nix
+++ b/pkgs/development/node-packages/node-packages-v4.nix
@@ -2056,13 +2056,13 @@ let
         sha1 = "27a5dea06b36b04a0a9966774b290868f0fc40fd";
       };
     };
-    "uuid-3.0.1" = {
+    "uuid-3.1.0" = {
       name = "uuid";
       packageName = "uuid";
-      version = "3.0.1";
+      version = "3.1.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/uuid/-/uuid-3.0.1.tgz";
-        sha1 = "6544bba2dfda8c1cf17e629a3a305e2bb1fee6c1";
+        url = "https://registry.npmjs.org/uuid/-/uuid-3.1.0.tgz";
+        sha1 = "3dd3d3e790abc24d7b0d3a034ffababe28ebbc04";
       };
     };
     "delayed-stream-1.0.0" = {
@@ -3874,6 +3874,15 @@ let
         sha1 = "ec0c1e53536b76647a24b77cb83966d9315123d9";
       };
     };
+    "uuid-3.0.1" = {
+      name = "uuid";
+      packageName = "uuid";
+      version = "3.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/uuid/-/uuid-3.0.1.tgz";
+        sha1 = "6544bba2dfda8c1cf17e629a3a305e2bb1fee6c1";
+      };
+    };
     "validate-npm-package-name-3.0.0" = {
       name = "validate-npm-package-name";
       packageName = "validate-npm-package-name";
@@ -6044,7 +6053,7 @@ in
             ];
           })
           sources."tunnel-agent-0.6.0"
-          sources."uuid-3.0.1"
+          sources."uuid-3.1.0"
         ];
       })
       sources."rimraf-2.6.1"
@@ -6542,7 +6551,7 @@ in
                     ];
                   })
                   sources."tunnel-agent-0.6.0"
-                  sources."uuid-3.0.1"
+                  sources."uuid-3.1.0"
                 ];
               })
               (sources."rimraf-2.6.1" // {
@@ -6784,7 +6793,7 @@ in
                     ];
                   })
                   sources."tunnel-agent-0.6.0"
-                  sources."uuid-3.0.1"
+                  sources."uuid-3.1.0"
                 ];
               })
               (sources."rimraf-2.6.1" // {
@@ -7099,7 +7108,7 @@ in
             ];
           })
           sources."tunnel-agent-0.6.0"
-          sources."uuid-3.0.1"
+          sources."uuid-3.1.0"
         ];
       })
       (sources."rimraf-2.6.1" // {
@@ -8107,7 +8116,7 @@ in
             ];
           })
           sources."tunnel-agent-0.4.3"
-          sources."uuid-3.0.1"
+          sources."uuid-3.1.0"
         ];
       })
       sources."semver-5.3.0"
diff --git a/pkgs/development/node-packages/node-packages-v6.json b/pkgs/development/node-packages/node-packages-v6.json
index 08b3445e3d47..b362281ee213 100644
--- a/pkgs/development/node-packages/node-packages-v6.json
+++ b/pkgs/development/node-packages/node-packages-v6.json
@@ -26,6 +26,7 @@
 , "htmlhint"
 , "ios-deploy"
 , "istanbul"
+, "javascript-typescript-langserver"
 , "jayschema"
 , "jshint"
 , "json"
diff --git a/pkgs/development/node-packages/node-packages-v6.nix b/pkgs/development/node-packages/node-packages-v6.nix
index 5387a2acd058..1fca65308082 100644
--- a/pkgs/development/node-packages/node-packages-v6.nix
+++ b/pkgs/development/node-packages/node-packages-v6.nix
@@ -1489,13 +1489,13 @@ let
         sha1 = "9c70bfd8169bc1dcbf48604e0f04b8b49cde9e9f";
       };
     };
-    "uuid-3.0.1" = {
+    "uuid-3.1.0" = {
       name = "uuid";
       packageName = "uuid";
-      version = "3.0.1";
+      version = "3.1.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/uuid/-/uuid-3.0.1.tgz";
-        sha1 = "6544bba2dfda8c1cf17e629a3a305e2bb1fee6c1";
+        url = "https://registry.npmjs.org/uuid/-/uuid-3.1.0.tgz";
+        sha1 = "3dd3d3e790abc24d7b0d3a034ffababe28ebbc04";
       };
     };
     "validator-5.2.0" = {
@@ -2767,13 +2767,13 @@ let
         sha1 = "8ce447bdb5b6c577f8a63e3fa78056ec4bb4dbfb";
       };
     };
-    "promise-7.1.1" = {
+    "promise-7.3.0" = {
       name = "promise";
       packageName = "promise";
-      version = "7.1.1";
+      version = "7.3.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/promise/-/promise-7.1.1.tgz";
-        sha1 = "489654c692616b8aa55b0724fa809bb7db49c5bf";
+        url = "https://registry.npmjs.org/promise/-/promise-7.3.0.tgz";
+        sha1 = "e7feec5aa87a2cbb81acf47d9a3adbd9d4642d7b";
       };
     };
     "asap-2.0.5" = {
@@ -7528,6 +7528,15 @@ let
         sha1 = "71766db352326928cf3a807242ba762322636723";
       };
     };
+    "uuid-3.0.1" = {
+      name = "uuid";
+      packageName = "uuid";
+      version = "3.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/uuid/-/uuid-3.0.1.tgz";
+        sha1 = "6544bba2dfda8c1cf17e629a3a305e2bb1fee6c1";
+      };
+    };
     "bplist-creator-0.0.7" = {
       name = "bplist-creator";
       packageName = "bplist-creator";
@@ -9053,13 +9062,13 @@ let
         sha1 = "cac328f7bee45730d404b692203fcb590e172d5e";
       };
     };
-    "aws-sdk-2.70.0" = {
+    "aws-sdk-2.72.0" = {
       name = "aws-sdk";
       packageName = "aws-sdk";
-      version = "2.70.0";
+      version = "2.72.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/aws-sdk/-/aws-sdk-2.70.0.tgz";
-        sha1 = "4163d94ac9e6a82f6a073ab74f8ae3c28a0a7534";
+        url = "https://registry.npmjs.org/aws-sdk/-/aws-sdk-2.72.0.tgz";
+        sha1 = "59021c14e354f34a4fb4f229ac10f8e36428f4d4";
       };
     };
     "request-2.81.0" = {
@@ -12231,6 +12240,231 @@ let
         sha1 = "dab73fbcfc2ba819b4de03bd6f6eaa48164b3f9d";
       };
     };
+    "@reactivex/rxjs-5.4.1" = {
+      name = "@reactivex/rxjs";
+      packageName = "@reactivex/rxjs";
+      version = "5.4.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@reactivex/rxjs/-/rxjs-5.4.1.tgz";
+        sha1 = "e472c38c84eb411690f281253d3a93a3466ad041";
+      };
+    };
+    "chai-4.0.2" = {
+      name = "chai";
+      packageName = "chai";
+      version = "4.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/chai/-/chai-4.0.2.tgz";
+        sha1 = "2f7327c4de6f385dd7787999e2ab02697a32b83b";
+      };
+    };
+    "chai-as-promised-7.0.0" = {
+      name = "chai-as-promised";
+      packageName = "chai-as-promised";
+      version = "7.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/chai-as-promised/-/chai-as-promised-7.0.0.tgz";
+        sha1 = "c87ee613eaa196766393da6fbb4052f112acf675";
+      };
+    };
+    "fast-json-patch-1.2.2" = {
+      name = "fast-json-patch";
+      packageName = "fast-json-patch";
+      version = "1.2.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/fast-json-patch/-/fast-json-patch-1.2.2.tgz";
+        sha1 = "d377d97c6911dbdd2a1c80bfacda048a4f83bbf9";
+      };
+    };
+    "iterare-0.0.8" = {
+      name = "iterare";
+      packageName = "iterare";
+      version = "0.0.8";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/iterare/-/iterare-0.0.8.tgz";
+        sha1 = "a969a80a1fbff6b78f28776594d7bc2bdfab6aad";
+      };
+    };
+    "mz-2.6.0" = {
+      name = "mz";
+      packageName = "mz";
+      version = "2.6.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/mz/-/mz-2.6.0.tgz";
+        sha1 = "c8b8521d958df0a4f2768025db69c719ee4ef1ce";
+      };
+    };
+    "object-hash-1.1.8" = {
+      name = "object-hash";
+      packageName = "object-hash";
+      version = "1.1.8";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/object-hash/-/object-hash-1.1.8.tgz";
+        sha1 = "28a659cf987d96a4dabe7860289f3b5326c4a03c";
+      };
+    };
+    "opentracing-0.14.1" = {
+      name = "opentracing";
+      packageName = "opentracing";
+      version = "0.14.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/opentracing/-/opentracing-0.14.1.tgz";
+        sha1 = "40d278beea417660a35dd9d3ee76511ffa911dcd";
+      };
+    };
+    "semaphore-async-await-1.5.1" = {
+      name = "semaphore-async-await";
+      packageName = "semaphore-async-await";
+      version = "1.5.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/semaphore-async-await/-/semaphore-async-await-1.5.1.tgz";
+        sha1 = "857bef5e3644601ca4b9570b87e9df5ca12974fa";
+      };
+    };
+    "string-similarity-1.2.0" = {
+      name = "string-similarity";
+      packageName = "string-similarity";
+      version = "1.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/string-similarity/-/string-similarity-1.2.0.tgz";
+        sha1 = "d75153cb383846318b7a39a8d9292bb4db4e9c30";
+      };
+    };
+    "typescript-2.3.4" = {
+      name = "typescript";
+      packageName = "typescript";
+      version = "2.3.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/typescript/-/typescript-2.3.4.tgz";
+        sha1 = "3d38321828231e434f287514959c37a82b629f42";
+      };
+    };
+    "vscode-jsonrpc-3.3.0" = {
+      name = "vscode-jsonrpc";
+      packageName = "vscode-jsonrpc";
+      version = "3.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/vscode-jsonrpc/-/vscode-jsonrpc-3.3.0.tgz";
+        sha1 = "03bdab0b10f04727ec3b8d403cd511a8a365b13d";
+      };
+    };
+    "vscode-languageserver-3.3.0" = {
+      name = "vscode-languageserver";
+      packageName = "vscode-languageserver";
+      version = "3.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/vscode-languageserver/-/vscode-languageserver-3.3.0.tgz";
+        sha1 = "f547d4f0e5702f88ff3695bae5905f9604c8cc62";
+      };
+    };
+    "vscode-languageserver-types-3.3.0" = {
+      name = "vscode-languageserver-types";
+      packageName = "vscode-languageserver-types";
+      version = "3.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/vscode-languageserver-types/-/vscode-languageserver-types-3.3.0.tgz";
+        sha1 = "8964dc7c2247536fbefd2d6836bf3febac80dd00";
+      };
+    };
+    "symbol-observable-1.0.4" = {
+      name = "symbol-observable";
+      packageName = "symbol-observable";
+      version = "1.0.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/symbol-observable/-/symbol-observable-1.0.4.tgz";
+        sha1 = "29bf615d4aa7121bdd898b22d4b3f9bc4e2aa03d";
+      };
+    };
+    "assertion-error-1.0.2" = {
+      name = "assertion-error";
+      packageName = "assertion-error";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/assertion-error/-/assertion-error-1.0.2.tgz";
+        sha1 = "13ca515d86206da0bac66e834dd397d87581094c";
+      };
+    };
+    "check-error-1.0.2" = {
+      name = "check-error";
+      packageName = "check-error";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/check-error/-/check-error-1.0.2.tgz";
+        sha1 = "574d312edd88bb5dd8912e9286dd6c0aed4aac82";
+      };
+    };
+    "deep-eql-2.0.2" = {
+      name = "deep-eql";
+      packageName = "deep-eql";
+      version = "2.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/deep-eql/-/deep-eql-2.0.2.tgz";
+        sha1 = "b1bac06e56f0a76777686d50c9feb75c2ed7679a";
+      };
+    };
+    "get-func-name-2.0.0" = {
+      name = "get-func-name";
+      packageName = "get-func-name";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/get-func-name/-/get-func-name-2.0.0.tgz";
+        sha1 = "ead774abee72e20409433a066366023dd6887a41";
+      };
+    };
+    "pathval-1.1.0" = {
+      name = "pathval";
+      packageName = "pathval";
+      version = "1.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pathval/-/pathval-1.1.0.tgz";
+        sha1 = "b942e6d4bde653005ef6b71361def8727d0645e0";
+      };
+    };
+    "type-detect-4.0.3" = {
+      name = "type-detect";
+      packageName = "type-detect";
+      version = "4.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/type-detect/-/type-detect-4.0.3.tgz";
+        sha1 = "0e3f2670b44099b0b46c284d136a7ef49c74c2ea";
+      };
+    };
+    "type-detect-3.0.0" = {
+      name = "type-detect";
+      packageName = "type-detect";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/type-detect/-/type-detect-3.0.0.tgz";
+        sha1 = "46d0cc8553abb7b13a352b0d6dea2fd58f2d9b55";
+      };
+    };
+    "any-promise-1.3.0" = {
+      name = "any-promise";
+      packageName = "any-promise";
+      version = "1.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/any-promise/-/any-promise-1.3.0.tgz";
+        sha1 = "abc6afeedcea52e809cdc0376aed3ce39635d17f";
+      };
+    };
+    "thenify-all-1.6.0" = {
+      name = "thenify-all";
+      packageName = "thenify-all";
+      version = "1.6.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/thenify-all/-/thenify-all-1.6.0.tgz";
+        sha1 = "1a1918d402d8fc3f98fbf234db0bcc8cc10e9726";
+      };
+    };
+    "thenify-3.3.0" = {
+      name = "thenify";
+      packageName = "thenify";
+      version = "3.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/thenify/-/thenify-3.3.0.tgz";
+        sha1 = "e69e38a1babe969b0108207978b9f62b88604839";
+      };
+    };
     "when-3.4.6" = {
       name = "when";
       packageName = "when";
@@ -14589,13 +14823,13 @@ let
         sha1 = "52c074f42a32140132baea108d42cbcd0ef397d2";
       };
     };
-    "node-red-node-rbe-0.1.10" = {
+    "node-red-node-rbe-0.1.11" = {
       name = "node-red-node-rbe";
       packageName = "node-red-node-rbe";
-      version = "0.1.10";
+      version = "0.1.11";
       src = fetchurl {
-        url = "https://registry.npmjs.org/node-red-node-rbe/-/node-red-node-rbe-0.1.10.tgz";
-        sha1 = "f05f72ace39b1b6158a48ee19d5c6cc426719a8f";
+        url = "https://registry.npmjs.org/node-red-node-rbe/-/node-red-node-rbe-0.1.11.tgz";
+        sha1 = "a670c1542a6eaf5e06db45490c2a7edf8a9f70b6";
       };
     };
     "bcrypt-1.0.2" = {
@@ -20605,7 +20839,7 @@ in
       sources."tunnel-0.0.2"
       sources."underscore-1.4.4"
       sources."user-home-2.0.0"
-      sources."uuid-3.0.1"
+      sources."uuid-3.1.0"
       sources."validator-5.2.0"
       (sources."winston-2.1.1" // {
         dependencies = [
@@ -20795,7 +21029,7 @@ in
       sources."then-request-2.2.0"
       sources."typedarray-0.0.6"
       sources."http-basic-2.5.1"
-      sources."promise-7.1.1"
+      sources."promise-7.3.0"
       sources."asap-2.0.5"
       sources."os-homedir-1.0.2"
       sources."mute-stream-0.0.7"
@@ -21653,7 +21887,7 @@ in
         dependencies = [
           sources."form-data-2.1.4"
           sources."qs-6.3.2"
-          sources."uuid-3.0.1"
+          sources."uuid-3.1.0"
         ];
       })
       sources."tar-2.2.1"
@@ -22480,7 +22714,7 @@ in
       sources."JSONStream-1.3.1"
       sources."async-2.4.1"
       sources."aws4-1.6.0"
-      sources."aws-sdk-2.70.0"
+      sources."aws-sdk-2.72.0"
       sources."ini-1.3.4"
       sources."optimist-0.6.1"
       sources."request-2.81.0"
@@ -23249,7 +23483,7 @@ in
       sources."stringstream-0.0.5"
       sources."tough-cookie-2.3.2"
       sources."tunnel-agent-0.6.0"
-      sources."uuid-3.0.1"
+      sources."uuid-3.1.0"
       sources."delayed-stream-1.0.0"
       sources."asynckit-0.4.0"
       sources."ajv-4.11.8"
@@ -23927,6 +24161,201 @@ in
     };
     production = true;
   };
+  javascript-typescript-langserver = nodeEnv.buildNodePackage {
+    name = "javascript-typescript-langserver";
+    packageName = "javascript-typescript-langserver";
+    version = "2.0.0";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/javascript-typescript-langserver/-/javascript-typescript-langserver-2.0.0.tgz";
+      sha1 = "aad1582560c53dc91c13be6c2abb76cebbc9c971";
+    };
+    dependencies = [
+      sources."@reactivex/rxjs-5.4.1"
+      sources."chai-4.0.2"
+      sources."chai-as-promised-7.0.0"
+      sources."chalk-1.1.3"
+      sources."commander-2.9.0"
+      sources."fast-json-patch-1.2.2"
+      sources."glob-7.1.2"
+      sources."iterare-0.0.8"
+      sources."lodash-4.17.4"
+      sources."mz-2.6.0"
+      sources."object-hash-1.1.8"
+      sources."opentracing-0.14.1"
+      sources."semaphore-async-await-1.5.1"
+      sources."string-similarity-1.2.0"
+      sources."typescript-2.3.4"
+      sources."vscode-jsonrpc-3.3.0"
+      sources."vscode-languageserver-3.3.0"
+      sources."vscode-languageserver-types-3.3.0"
+      sources."symbol-observable-1.0.4"
+      sources."assertion-error-1.0.2"
+      sources."check-error-1.0.2"
+      (sources."deep-eql-2.0.2" // {
+        dependencies = [
+          sources."type-detect-3.0.0"
+        ];
+      })
+      sources."get-func-name-2.0.0"
+      sources."pathval-1.1.0"
+      sources."type-detect-4.0.3"
+      sources."eslint-3.19.0"
+      sources."babel-code-frame-6.22.0"
+      sources."concat-stream-1.6.0"
+      sources."debug-2.6.8"
+      sources."doctrine-2.0.0"
+      sources."escope-3.6.0"
+      sources."espree-3.4.3"
+      sources."esquery-1.0.0"
+      sources."estraverse-4.2.0"
+      sources."esutils-2.0.2"
+      sources."file-entry-cache-2.0.0"
+      sources."globals-9.18.0"
+      sources."ignore-3.3.3"
+      sources."imurmurhash-0.1.4"
+      sources."inquirer-0.12.0"
+      sources."is-my-json-valid-2.16.0"
+      sources."is-resolvable-1.0.0"
+      sources."js-yaml-3.8.4"
+      sources."json-stable-stringify-1.0.1"
+      sources."levn-0.3.0"
+      sources."mkdirp-0.5.1"
+      sources."natural-compare-1.4.0"
+      sources."optionator-0.8.2"
+      sources."path-is-inside-1.0.2"
+      sources."pluralize-1.2.1"
+      sources."progress-1.1.8"
+      sources."require-uncached-1.0.3"
+      sources."shelljs-0.7.8"
+      sources."strip-bom-3.0.0"
+      sources."strip-json-comments-2.0.1"
+      (sources."table-3.8.3" // {
+        dependencies = [
+          sources."string-width-2.0.0"
+          sources."is-fullwidth-code-point-2.0.0"
+        ];
+      })
+      sources."text-table-0.2.0"
+      sources."user-home-2.0.0"
+      sources."js-tokens-3.0.1"
+      sources."inherits-2.0.3"
+      sources."typedarray-0.0.6"
+      sources."readable-stream-2.2.11"
+      sources."core-util-is-1.0.2"
+      sources."isarray-1.0.0"
+      sources."process-nextick-args-1.0.7"
+      sources."safe-buffer-5.0.1"
+      sources."string_decoder-1.0.2"
+      sources."util-deprecate-1.0.2"
+      sources."ms-2.0.0"
+      sources."es6-map-0.1.5"
+      sources."es6-weak-map-2.0.2"
+      (sources."esrecurse-4.1.0" // {
+        dependencies = [
+          sources."estraverse-4.1.1"
+        ];
+      })
+      sources."d-1.0.0"
+      sources."es5-ext-0.10.23"
+      sources."es6-iterator-2.0.1"
+      sources."es6-set-0.1.5"
+      sources."es6-symbol-3.1.1"
+      sources."event-emitter-0.3.5"
+      sources."object-assign-4.1.1"
+      sources."acorn-5.0.3"
+      (sources."acorn-jsx-3.0.1" // {
+        dependencies = [
+          sources."acorn-3.3.0"
+        ];
+      })
+      sources."flat-cache-1.2.2"
+      sources."circular-json-0.3.1"
+      sources."del-2.2.2"
+      sources."graceful-fs-4.1.11"
+      sources."write-0.2.1"
+      sources."globby-5.0.0"
+      sources."is-path-cwd-1.0.0"
+      sources."is-path-in-cwd-1.0.0"
+      sources."pify-2.3.0"
+      sources."pinkie-promise-2.0.1"
+      sources."rimraf-2.6.1"
+      sources."array-union-1.0.2"
+      sources."arrify-1.0.1"
+      sources."array-uniq-1.0.3"
+      sources."is-path-inside-1.0.0"
+      sources."pinkie-2.0.4"
+      sources."ansi-escapes-1.4.0"
+      sources."ansi-regex-2.1.1"
+      sources."cli-cursor-1.0.2"
+      sources."cli-width-2.1.0"
+      sources."figures-1.7.0"
+      sources."readline2-1.0.1"
+      sources."run-async-0.1.0"
+      sources."rx-lite-3.1.2"
+      sources."string-width-1.0.2"
+      sources."strip-ansi-3.0.1"
+      sources."through-2.3.8"
+      sources."restore-cursor-1.0.1"
+      sources."exit-hook-1.1.1"
+      sources."onetime-1.1.0"
+      sources."escape-string-regexp-1.0.5"
+      sources."code-point-at-1.1.0"
+      sources."is-fullwidth-code-point-1.0.0"
+      sources."mute-stream-0.0.5"
+      sources."number-is-nan-1.0.1"
+      sources."once-1.4.0"
+      sources."wrappy-1.0.2"
+      sources."generate-function-2.0.0"
+      sources."generate-object-property-1.2.0"
+      sources."jsonpointer-4.0.1"
+      sources."xtend-4.0.1"
+      sources."is-property-1.0.2"
+      sources."tryit-1.0.3"
+      sources."argparse-1.0.9"
+      sources."esprima-3.1.3"
+      sources."sprintf-js-1.0.3"
+      sources."jsonify-0.0.0"
+      sources."prelude-ls-1.1.2"
+      sources."type-check-0.3.2"
+      sources."minimist-0.0.8"
+      sources."deep-is-0.1.3"
+      sources."wordwrap-1.0.0"
+      sources."fast-levenshtein-2.0.6"
+      sources."caller-path-0.1.0"
+      sources."resolve-from-1.0.1"
+      sources."callsites-0.2.0"
+      sources."interpret-1.0.3"
+      sources."rechoir-0.6.2"
+      sources."resolve-1.3.3"
+      sources."path-parse-1.0.5"
+      sources."ajv-4.11.8"
+      sources."ajv-keywords-1.5.1"
+      sources."slice-ansi-0.0.4"
+      sources."co-4.6.0"
+      sources."os-homedir-1.0.2"
+      sources."ansi-styles-2.2.1"
+      sources."has-ansi-2.0.0"
+      sources."supports-color-2.0.0"
+      sources."graceful-readlink-1.0.1"
+      sources."fs.realpath-1.0.0"
+      sources."inflight-1.0.6"
+      sources."minimatch-3.0.4"
+      sources."path-is-absolute-1.0.1"
+      sources."brace-expansion-1.1.8"
+      sources."balanced-match-1.0.0"
+      sources."concat-map-0.0.1"
+      sources."any-promise-1.3.0"
+      sources."thenify-all-1.6.0"
+      sources."thenify-3.3.0"
+    ];
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "Implementation of the Language Server Protocol for JavaScript and TypeScript";
+      homepage = https://github.com/sourcegraph/javascript-typescript-langserver;
+      license = "Apache-2.0";
+    };
+    production = true;
+  };
   jayschema = nodeEnv.buildNodePackage {
     name = "jayschema";
     packageName = "jayschema";
@@ -24150,7 +24579,7 @@ in
       sources."stringstream-0.0.5"
       sources."tough-cookie-2.3.2"
       sources."tunnel-agent-0.6.0"
-      sources."uuid-3.0.1"
+      sources."uuid-3.1.0"
       sources."delayed-stream-1.0.0"
       sources."asynckit-0.4.0"
       sources."ajv-4.11.8"
@@ -24534,7 +24963,7 @@ in
       sources."stringstream-0.0.5"
       sources."tough-cookie-2.3.2"
       sources."tunnel-agent-0.6.0"
-      sources."uuid-3.0.1"
+      sources."uuid-3.1.0"
       sources."delayed-stream-1.0.0"
       sources."asynckit-0.4.0"
       sources."ajv-4.11.8"
@@ -25162,7 +25591,7 @@ in
       sources."stringstream-0.0.5"
       sources."tough-cookie-2.3.2"
       sources."tunnel-agent-0.6.0"
-      sources."uuid-3.0.1"
+      sources."uuid-3.1.0"
       sources."delayed-stream-1.0.0"
       sources."asynckit-0.4.0"
       sources."ajv-4.11.8"
@@ -25339,7 +25768,7 @@ in
       sources."stringstream-0.0.5"
       sources."tough-cookie-2.3.2"
       sources."tunnel-agent-0.6.0"
-      sources."uuid-3.0.1"
+      sources."uuid-3.1.0"
       sources."delayed-stream-1.0.0"
       sources."asynckit-0.4.0"
       sources."ajv-4.11.8"
@@ -25612,7 +26041,7 @@ in
       sources."stringstream-0.0.5"
       sources."tough-cookie-2.3.2"
       sources."tunnel-agent-0.6.0"
-      sources."uuid-3.0.1"
+      sources."uuid-3.1.0"
       sources."delayed-stream-1.0.0"
       sources."asynckit-0.4.0"
       sources."ajv-4.11.8"
@@ -25751,7 +26180,7 @@ in
       sources."stringstream-0.0.5"
       sources."tough-cookie-2.3.2"
       sources."tunnel-agent-0.6.0"
-      sources."uuid-3.0.1"
+      sources."uuid-3.1.0"
       sources."delayed-stream-1.0.0"
       sources."asynckit-0.4.0"
       sources."ajv-4.11.8"
@@ -25963,7 +26392,7 @@ in
       sources."stringstream-0.0.5"
       sources."tough-cookie-2.3.2"
       sources."tunnel-agent-0.6.0"
-      sources."uuid-3.0.1"
+      sources."uuid-3.1.0"
       sources."delayed-stream-1.0.0"
       sources."asynckit-0.4.0"
       sources."ajv-4.11.8"
@@ -26162,7 +26591,7 @@ in
           sources."tunnel-agent-0.6.0"
         ];
       })
-      sources."node-red-node-rbe-0.1.10"
+      sources."node-red-node-rbe-0.1.11"
       sources."bcrypt-1.0.2"
       sources."bytes-2.4.0"
       sources."content-type-1.0.2"
@@ -26471,7 +26900,7 @@ in
       sources."twitter-ng-0.6.2"
       sources."oauth-0.9.14"
       sources."performance-now-0.2.0"
-      sources."uuid-3.0.1"
+      sources."uuid-3.1.0"
       sources."asynckit-0.4.0"
       sources."ajv-4.11.8"
       sources."har-schema-1.0.5"
@@ -27089,7 +27518,7 @@ in
       sources."stringstream-0.0.5"
       sources."tough-cookie-2.3.2"
       sources."tunnel-agent-0.6.0"
-      sources."uuid-3.0.1"
+      sources."uuid-3.1.0"
       sources."delayed-stream-1.0.0"
       sources."asynckit-0.4.0"
       sources."ajv-4.11.8"
@@ -27548,7 +27977,7 @@ in
           sources."punycode-1.3.2"
         ];
       })
-      sources."uuid-3.0.1"
+      sources."uuid-3.1.0"
       sources."xdg-basedir-2.0.0"
       sources."async-1.5.2"
       sources."cli-cursor-1.0.2"
@@ -27665,7 +28094,7 @@ in
       sources."is-utf8-0.2.1"
       sources."pseudomap-1.0.2"
       sources."yallist-2.1.2"
-      sources."promise-7.1.1"
+      sources."promise-7.3.0"
       sources."string-length-1.0.1"
       sources."duplexify-3.5.0"
       sources."infinity-agent-2.0.3"
@@ -27820,7 +28249,7 @@ in
         ];
       })
       sources."object.assign-4.0.4"
-      sources."promise-7.1.1"
+      sources."promise-7.3.0"
       sources."inflight-1.0.6"
       sources."minimatch-3.0.4"
       sources."once-1.4.0"
@@ -27883,7 +28312,7 @@ in
       sources."stringstream-0.0.5"
       sources."tough-cookie-2.3.2"
       sources."tunnel-agent-0.6.0"
-      sources."uuid-3.0.1"
+      sources."uuid-3.1.0"
       sources."delayed-stream-1.0.0"
       sources."asynckit-0.4.0"
       sources."ajv-4.11.8"
@@ -29000,7 +29429,7 @@ in
       sources."stringstream-0.0.5"
       sources."tough-cookie-2.3.2"
       sources."tunnel-agent-0.6.0"
-      sources."uuid-3.0.1"
+      sources."uuid-3.1.0"
       sources."delayed-stream-1.0.0"
       sources."asynckit-0.4.0"
       sources."ajv-4.11.8"
@@ -29199,7 +29628,7 @@ in
       sources."stringstream-0.0.5"
       sources."tough-cookie-2.3.2"
       sources."tunnel-agent-0.6.0"
-      sources."uuid-3.0.1"
+      sources."uuid-3.1.0"
       sources."delayed-stream-1.0.0"
       sources."asynckit-0.4.0"
       sources."ajv-4.11.8"
@@ -29637,10 +30066,10 @@ in
   uglify-js = nodeEnv.buildNodePackage {
     name = "uglify-js";
     packageName = "uglify-js";
-    version = "3.0.16";
+    version = "3.0.17";
     src = fetchurl {
-      url = "https://registry.npmjs.org/uglify-js/-/uglify-js-3.0.16.tgz";
-      sha1 = "fe394c6708a79ffbf21ca15d6591b16334501aec";
+      url = "https://registry.npmjs.org/uglify-js/-/uglify-js-3.0.17.tgz";
+      sha1 = "d228cd55c2df9b3d2f53f147568cb4cc4a72cc06";
     };
     dependencies = [
       sources."commander-2.9.0"
@@ -30761,7 +31190,7 @@ in
       sources."stringstream-0.0.5"
       sources."tough-cookie-2.3.2"
       sources."tunnel-agent-0.6.0"
-      sources."uuid-3.0.1"
+      sources."uuid-3.1.0"
       sources."delayed-stream-1.0.0"
       sources."asynckit-0.4.0"
       sources."har-schema-1.0.5"
@@ -30911,7 +31340,7 @@ in
       sources."strip-bom-3.0.0"
       sources."tar-fs-1.15.3"
       sources."tar-stream-1.5.4"
-      sources."uuid-3.0.1"
+      sources."uuid-3.1.0"
       sources."v8-compile-cache-1.1.0"
       sources."validate-npm-package-license-3.0.1"
       sources."core-js-2.4.1"
@@ -31263,7 +31692,7 @@ in
       sources."os-name-1.0.3"
       sources."request-2.81.0"
       sources."tough-cookie-2.3.2"
-      sources."uuid-3.0.1"
+      sources."uuid-3.1.0"
       (sources."mkdirp-0.5.1" // {
         dependencies = [
           sources."minimist-0.0.8"
diff --git a/pkgs/development/ocaml-modules/containers/default.nix b/pkgs/development/ocaml-modules/containers/default.nix
index 2e56635f3600..f44db6151751 100644
--- a/pkgs/development/ocaml-modules/containers/default.nix
+++ b/pkgs/development/ocaml-modules/containers/default.nix
@@ -6,7 +6,7 @@ let
   mkpath = p:
       "${p}/lib/ocaml/${ocaml.version}/site-lib";
 
-  version = "0.22";
+  version = "1.2";
 
 in
 
@@ -17,7 +17,7 @@ stdenv.mkDerivation {
     owner = "c-cube";
     repo = "ocaml-containers";
     rev = "${version}";
-    sha256 = "1kbf865z484z9nxskmg150xhfspikkvsxk0wbry5vvczqr63cwhq";
+    sha256 = "0k1676bn12hhayjlpy8bxfc3sgq6wd7zkh0ca700zh8jxjrshjqk";
   };
 
   buildInputs = [ ocaml findlib ocamlbuild cppo gen sequence qtest ounit ocaml_oasis qcheck ];
@@ -39,9 +39,8 @@ EOF
   configureFlags = [
     "--enable-unix"
     "--enable-thread"
-    "--enable-bigarray"
-    "--enable-advanced"
     "--enable-tests"
+    "--enable-docs"
     "--disable-bench"
   ];
 
diff --git a/pkgs/development/python-modules/keystoneauth1/default.nix b/pkgs/development/python-modules/keystoneauth1/default.nix
new file mode 100644
index 000000000000..033f08f9587c
--- /dev/null
+++ b/pkgs/development/python-modules/keystoneauth1/default.nix
@@ -0,0 +1,27 @@
+{ buildPythonPackage, isPyPy, fetchPypi, python
+, pbr, testtools, testresources, testrepository, mock
+, pep8, fixtures, mox3, requests-mock
+, iso8601, requests, six, stevedore, webob, oslo-config
+}:
+
+buildPythonPackage rec {
+  pname = "keystoneauth1";
+  version = "1.1.0";
+  name = "${pname}-${version}";
+  disabled = isPyPy; # a test fails
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "05fc6xsp5mal52ijvj84sf7mrw706ihadfdf5mnq9zxn7pfl4118";
+  };
+
+  buildInputs = [ pbr testtools testresources testrepository mock
+                  pep8 fixtures mox3 requests-mock ];
+  propagatedBuildInputs = [ iso8601 requests six stevedore
+                            webob oslo-config ];
+
+  postPatch = ''
+    sed -i 's@python@${python.interpreter}@' .testr.conf
+    substituteInPlace requirements.txt --replace "argparse"
+  '';
+}
diff --git a/pkgs/development/python-modules/oslo-config/default.nix b/pkgs/development/python-modules/oslo-config/default.nix
new file mode 100644
index 000000000000..7cdfb9061fb2
--- /dev/null
+++ b/pkgs/development/python-modules/oslo-config/default.nix
@@ -0,0 +1,22 @@
+{ buildPythonPackage, fetchPypi, pbr, six, netaddr, stevedore, mock }:
+
+buildPythonPackage rec {
+  pname = "oslo.config";
+  version = "2.5.0";
+  name = "${pname}-${version}";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "043mavrzj7vjn7kh1dddci4sf67qwqnnn6cm0k1d19alks9hismz";
+  };
+
+  propagatedBuildInputs = [ pbr six netaddr stevedore ];
+  buildInputs = [ mock ];
+
+  # TODO: circular import on oslo-i18n
+  doCheck = false;
+
+  postPatch = ''
+    substituteInPlace requirements.txt --replace "argparse"
+  '';
+}
diff --git a/pkgs/development/qtcreator/default.nix b/pkgs/development/qtcreator/default.nix
index f66070be6944..6fadf530ed00 100644
--- a/pkgs/development/qtcreator/default.nix
+++ b/pkgs/development/qtcreator/default.nix
@@ -6,8 +6,8 @@
 with stdenv.lib;
 
 let
-  baseVersion = "4.2";
-  revision = "1";
+  baseVersion = "4.3";
+  revision = "0";
 in
 
 stdenv.mkDerivation rec {
@@ -15,8 +15,8 @@ stdenv.mkDerivation rec {
   version = "${baseVersion}.${revision}";
 
   src = fetchurl {
-    url = "http://download.qt-project.org/official_releases/qtcreator/${baseVersion}/${version}/qt-creator-opensource-src-${version}.tar.gz";
-    sha256 = "0f2slaf579q2anflf524lbhmpwrwy3hzjfxzs10n44r7s7yc4dr5";
+    url = "http://download.qt-project.org/official_releases/qtcreator/${baseVersion}/${version}/qt-creator-opensource-src-${version}.tar.xz";
+    sha256 = "1n3ihky72p6q69n6c8s5hacq8rxdqmmr6msg89w5amwd17sam7p9";
   };
 
   buildInputs = [ qtbase qtscript qtquickcontrols qtdeclarative ];
@@ -36,18 +36,8 @@ stdenv.mkDerivation rec {
   '';
 
   postInstall = ''
-    # Install desktop file
-    mkdir -p "$out/share/applications"
-    cat > "$out/share/applications/qtcreator.desktop" << __EOF__
-    [Desktop Entry]
-    Exec=$out/bin/qtcreator
-    Name=Qt Creator
-    GenericName=Cross-platform IDE for Qt
-    Icon=QtProject-qtcreator.png
-    Terminal=false
-    Type=Application
-    Categories=Qt;Development;IDE;
-    __EOF__
+    substituteInPlace $out/share/applications/org.qt-project.qtcreator.desktop \
+      --replace "Exec=qtcreator" "Exec=$out/bin/qtcreator"
     wrapQtProgram $out/bin/qtcreator
   '';
 
diff --git a/pkgs/development/tools/build-managers/gradle/default.nix b/pkgs/development/tools/build-managers/gradle/default.nix
index 51aaf5e6a79a..460c6d44e4e3 100644
--- a/pkgs/development/tools/build-managers/gradle/default.nix
+++ b/pkgs/development/tools/build-managers/gradle/default.nix
@@ -52,6 +52,16 @@ rec {
   };
 
   gradle_latest = gradleGen rec {
+    name = "gradle-4.0";
+    nativeVersion = "0.14";
+
+    src = fetchurl {
+      url = "http://services.gradle.org/distributions/${name}-bin.zip";
+      sha256 = "1zlxnyb7iva0bb0862vbigfjrmxgbisa2zam7j896ams57g2vgan";
+    };
+  };
+
+  gradle_3_5 = gradleGen rec {
     name = "gradle-3.5";
     nativeVersion = "0.14";
 
diff --git a/pkgs/games/unnethack/default.nix b/pkgs/games/unnethack/default.nix
index ae32de2e7716..ea0186323c02 100644
--- a/pkgs/games/unnethack/default.nix
+++ b/pkgs/games/unnethack/default.nix
@@ -20,6 +20,8 @@ stdenv.mkDerivation rec {
                      "--with-gamesdir=/tmp/unnethack"
                    ];
 
+  makeFlags = [ "GAMEPERM=744" ];
+
   postInstall = ''
     cp -r /tmp/unnethack $out/share/unnethack/profile
     mv $out/bin/unnethack $out/bin/.wrapped_unnethack
diff --git a/pkgs/games/xconq/default.nix b/pkgs/games/xconq/default.nix
index e6e237529531..e8e27d7afb66 100644
--- a/pkgs/games/xconq/default.nix
+++ b/pkgs/games/xconq/default.nix
@@ -26,6 +26,8 @@ stdenv.mkDerivation rec {
     # Fix Makefiles
     find . -name 'Makefile.in' -exec sed -re 's@^        ( *)(cd|[&][&])@	\1\2@' -i '{}' ';'
     find . -name 'Makefile.in' -exec sed -e '/chown/d; /chgrp/d' -i '{}' ';'
+    # do not set sticky bit in nix store
+    find . -name 'Makefile.in' -exec sed -e 's/04755/755/g' -i '{}' ';'
     sed -e '/^			* *[$][(]tcltkdir[)]\/[*][.][*]/d' -i tcltk/Makefile.in
 
     # Fix C files
diff --git a/pkgs/games/xsokoban/default.nix b/pkgs/games/xsokoban/default.nix
index 47d05b7e3f6a..814241244e31 100644
--- a/pkgs/games/xsokoban/default.nix
+++ b/pkgs/games/xsokoban/default.nix
@@ -15,6 +15,10 @@ stdenv.mkDerivation rec {
 
   hardeningDisable = [ "format" ];
 
+  prePatch = ''
+    substituteInPlace Makefile.in --replace 4755 0755
+  '';
+
   preConfigure = ''
     sed -e 's/getline/my_getline/' -i score.c
 
@@ -22,7 +26,7 @@ stdenv.mkDerivation rec {
     cat >>config.h <<EOF
     #define HERE "@nixos-packaged"
     #define WWW 0
-    #define OWNER "'$(whoami)'"
+    #define OWNER "$(whoami)"
     #define ROOTDIR "$out/lib/xsokoban"
     #define ANYLEVEL 1
     #define SCOREFILE ".xsokoban-score"
diff --git a/pkgs/os-specific/linux/kernel/linux-4.11.nix b/pkgs/os-specific/linux/kernel/linux-4.11.nix
index d6d183198040..92525b115eec 100644
--- a/pkgs/os-specific/linux/kernel/linux-4.11.nix
+++ b/pkgs/os-specific/linux/kernel/linux-4.11.nix
@@ -1,12 +1,12 @@
 { stdenv, fetchurl, perl, buildLinux, ... } @ args:
 
 import ./generic.nix (args // rec {
-  version = "4.11.5";
+  version = "4.11.6";
   extraMeta.branch = "4.11";
 
   src = fetchurl {
     url = "mirror://kernel/linux/kernel/v4.x/linux-${version}.tar.xz";
-    sha256 = "0k3dy4izi56nfkp2r0cps817zfnc14czghr9l5z5k8j8x5blqipp";
+    sha256 = "0ccna0hrqcza3jz83gaxlcg5vijl83w5w3g87v93a5x06ky9nlr5";
   };
 
   kernelPatches = args.kernelPatches;
diff --git a/pkgs/os-specific/linux/kernel/linux-4.4.nix b/pkgs/os-specific/linux/kernel/linux-4.4.nix
index 51cd396ac60c..5328bb9a0432 100644
--- a/pkgs/os-specific/linux/kernel/linux-4.4.nix
+++ b/pkgs/os-specific/linux/kernel/linux-4.4.nix
@@ -1,12 +1,12 @@
 { stdenv, fetchurl, perl, buildLinux, ... } @ args:
 
 import ./generic.nix (args // rec {
-  version = "4.4.72";
+  version = "4.4.73";
   extraMeta.branch = "4.4";
 
   src = fetchurl {
     url = "mirror://kernel/linux/kernel/v4.x/linux-${version}.tar.xz";
-    sha256 = "1s7d6mw4vjsjwdyxbj0p04yq1nsxs3b0b7bi04ilcn2zhldv8cs1";
+    sha256 = "1dj4gpv01si4wiihm8wijkhx0l6ashvydniqrbpq78sby6sn5180";
   };
 
   kernelPatches = args.kernelPatches;
diff --git a/pkgs/os-specific/linux/kernel/linux-4.9.nix b/pkgs/os-specific/linux/kernel/linux-4.9.nix
index ae1a4e4b120b..521f53e309ba 100644
--- a/pkgs/os-specific/linux/kernel/linux-4.9.nix
+++ b/pkgs/os-specific/linux/kernel/linux-4.9.nix
@@ -1,12 +1,12 @@
 { stdenv, fetchurl, perl, buildLinux, ... } @ args:
 
 import ./generic.nix (args // rec {
-  version = "4.9.32";
+  version = "4.9.33";
   extraMeta.branch = "4.9";
 
   src = fetchurl {
     url = "mirror://kernel/linux/kernel/v4.x/linux-${version}.tar.xz";
-    sha256 = "0r87c65gf9j6shavsr0zviibpbvngccppw5k3wfmmxfjpdsnayf3";
+    sha256 = "0d2cai3bq1bkmisbsl6l27di765xmzn3lscwray30ldbssijpjpm";
   };
 
   kernelPatches = args.kernelPatches;
diff --git a/pkgs/os-specific/linux/rewritefs/default.nix b/pkgs/os-specific/linux/rewritefs/default.nix
index 362f3edbc92a..8ec46d64600a 100644
--- a/pkgs/os-specific/linux/rewritefs/default.nix
+++ b/pkgs/os-specific/linux/rewritefs/default.nix
@@ -13,6 +13,11 @@ stdenv.mkDerivation rec {
  
   buildInputs = [ pkgconfig fuse pcre ];
 
+  prePatch = ''
+    # do not set sticky bit in nix store
+    substituteInPlace Makefile --replace 6755 0755
+  '';
+
   preConfigure = "substituteInPlace Makefile --replace /usr/local $out";
 
   meta = with stdenv.lib; {
diff --git a/pkgs/os-specific/linux/spl/default.nix b/pkgs/os-specific/linux/spl/default.nix
index a67c94268440..26cc8ea7c711 100644
--- a/pkgs/os-specific/linux/spl/default.nix
+++ b/pkgs/os-specific/linux/spl/default.nix
@@ -62,8 +62,8 @@ in
   assert buildKernel -> kernel != null;
   {
     splStable = common {
-      version = "0.6.5.9";
-      sha256 = "15qpx2nhprmk14jgb7yqp9dvfb6i3hhhspi77kvian171b0a6112";
+      version = "0.6.5.10";
+      sha256 = "1zdxggpdz9j0lpcqfnkvf4iym7mp2k246sg1s4frqaw1pwwcw9vi";
     };
     splUnstable = common {
       version = "0.7.0-rc4";
diff --git a/pkgs/os-specific/linux/zfs/default.nix b/pkgs/os-specific/linux/zfs/default.nix
index b03da8869f74..8a6d727a6964 100644
--- a/pkgs/os-specific/linux/zfs/default.nix
+++ b/pkgs/os-specific/linux/zfs/default.nix
@@ -123,12 +123,12 @@ in
     # to be adapted
     zfsStable = common {
       # comment/uncomment if breaking kernel versions are known
-      incompatibleKernelVersion = "4.11";
+      incompatibleKernelVersion = "4.12";
 
-      version = "0.6.5.9";
+      version = "0.6.5.10";
 
       # this package should point to the latest release.
-      sha256 = "1m8q39j13k46fn0pw3adq87c20rpkg28llxgv2a90994p4127xh0";
+      sha256 = "04gn5fj22z17zq2nazxwl3j9dr33l79clha6ipxvdz241bhjqrk3";
       extraPatches = [
         (fetchpatch {
           url = "https://github.com/Mic92/zfs/compare/zfs-0.6.5.8...nixos-zfs-0.6.5.8.patch";
diff --git a/pkgs/servers/atlassian/confluence.nix b/pkgs/servers/atlassian/confluence.nix
index aafb30441d74..20b7250d75df 100644
--- a/pkgs/servers/atlassian/confluence.nix
+++ b/pkgs/servers/atlassian/confluence.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   name = "atlassian-confluence-${version}";
-  version = "6.1.1";
+  version = "6.2.2";
 
   src = fetchurl {
     url = "https://www.atlassian.com/software/confluence/downloads/binary/${name}.tar.gz";
-    sha256 = "0klb8hxsmgcwjcp20xa7823jm040q7wdqicc6g7s27gjzvbqj800";
+    sha256 = "1fpn799382m8x7b0s3w4mxzlhy1s62ya287i622gbadqscprhagg";
   };
 
   phases = [ "unpackPhase" "buildPhase" "installPhase" ];
diff --git a/pkgs/servers/atlassian/crowd.nix b/pkgs/servers/atlassian/crowd.nix
index d80691231c5e..0d78f361525b 100644
--- a/pkgs/servers/atlassian/crowd.nix
+++ b/pkgs/servers/atlassian/crowd.nix
@@ -3,11 +3,11 @@
 
 stdenv.mkDerivation rec {
   name = "atlassian-crowd-${version}";
-  version = "2.11.1";
+  version = "2.12.0";
 
   src = fetchurl {
     url = "https://www.atlassian.com/software/crowd/downloads/binary/${name}.tar.gz";
-    sha256 = "12gb9p5npcdr7mxyyir3xgjkc6n05zfi4i5dqkg8f7jrhi49nas7";
+    sha256 = "1kfnsa25axlyhnapfza381p94pyfixh7j999qhpg3ii821n9sggm";
   };
 
   phases = [ "unpackPhase" "buildPhase" "installPhase" "fixupPhase" ];
diff --git a/pkgs/servers/atlassian/jira.nix b/pkgs/servers/atlassian/jira.nix
index 1f2601ab0d5e..48678804c566 100644
--- a/pkgs/servers/atlassian/jira.nix
+++ b/pkgs/servers/atlassian/jira.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   name = "atlassian-jira-${version}";
-  version = "7.3.4";
+  version = "7.3.7";
 
   src = fetchurl {
     url = "https://downloads.atlassian.com/software/jira/downloads/atlassian-jira-software-${version}.tar.gz";
-    sha256 = "0xkwf8n37hwv52rl3dbqkacr1fyxz4bd7gkcmpg0wshnxmyq4vg7";
+    sha256 = "1ixnnw3yj2ip9ndr9pwxcmdy8gaixkmp517ahg3w8xzymr8wh2qp";
   };
 
   phases = [ "unpackPhase" "buildPhase" "installPhase" "fixupPhase" ];
diff --git a/pkgs/servers/computing/torque/default.nix b/pkgs/servers/computing/torque/default.nix
index 6d0037f74bdb..d0b8567c7483 100644
--- a/pkgs/servers/computing/torque/default.nix
+++ b/pkgs/servers/computing/torque/default.nix
@@ -29,8 +29,9 @@ stdenv.mkDerivation rec {
 
    for f in $(find ./ -name Makefile.in); do
      echo patching $f...
-     sed -i $f -e '/PBS_MKDIRS/d'
+     sed -i $f -e '/PBS_MKDIRS/d' -e '/chmod u+s/d'
    done
+
   '';
 
   postInstall = ''
diff --git a/pkgs/servers/http/hiawatha/default.nix b/pkgs/servers/http/hiawatha/default.nix
index 26566b2281cc..c5dd9f7a577d 100644
--- a/pkgs/servers/http/hiawatha/default.nix
+++ b/pkgs/servers/http/hiawatha/default.nix
@@ -21,6 +21,10 @@ stdenv.mkDerivation rec {
 
   buildInputs =  [ cmake libxslt zlib libxml2 ] ++ stdenv.lib.optional enableSSL openssl ;
 
+  prePatch = ''
+    substituteInPlace CMakeLists.txt --replace SETUID ""
+  '';
+
   cmakeFlags = [
     ( if enableSSL then "-DENABLE_TLS=on" else "-DENABLE_TLS=off" )
     ( if enableMonitor then "-DENABLE_MONITOR=on" else "-DENABLE_MONITOR=off" )
diff --git a/pkgs/servers/sql/cockroachdb/default.nix b/pkgs/servers/sql/cockroachdb/default.nix
index 0a5e0d170403..01f92dfa2b99 100644
--- a/pkgs/servers/sql/cockroachdb/default.nix
+++ b/pkgs/servers/sql/cockroachdb/default.nix
@@ -1,27 +1,36 @@
-{ stdenv, buildGoPackage, fetchFromGitHub, gcc }:
+{ stdenv, buildGoPackage, fetchurl, cmake, xz, which }:
 
 buildGoPackage rec {
   name = "cockroach-${version}";
-  version = "beta-20160915";
+  version = "v1.0.2";
 
   goPackagePath = "github.com/cockroachdb/cockroach";
-  subPackages = [ "." ];
 
-  src = fetchFromGitHub {
-    owner = "cockroachdb";
-    repo = "cockroach";
-    rev = version;
-    sha256 = "11camp588vsccxlc138l7x4qws2fj5wpx1177irzayqdng8dilx3";
+  src = fetchurl {
+    url = "https://binaries.cockroachdb.com/cockroach-${version}.src.tgz";
+    sha256 = "0xq5lg9a2lxn89lilq3zzcd4kph0a5sga3b5bb9xv6af87igy6zp";
   };
 
-  buildFlagsArray = ''
-    -ldflags=
-      -X github.com/cockroachdb/cockroach/build.tag=${version}
-  '';
+  buildInputs = [ cmake xz which ];
 
-  buildInputs = [ gcc ];
+  buildPhase =
+    ''
+      cd $NIX_BUILD_TOP/go/src/${goPackagePath}
+      patchShebangs ./
+      make buildoss
+      cd src/${goPackagePath}
+      for asset in man autocomplete; do
+        ./cockroach gen $asset
+      done
+    '';
 
-  goDeps = ./deps.nix;
+  installPhase =
+    ''
+      mkdir -p $bin/{bin,share,etc/bash_completion.d}
+      mv cockroach $bin/bin
+      mv man $bin/share
+      mv cockroach.bash $bin/etc/bash_completion.d
+    '';
 
   meta = with stdenv.lib; {
     homepage = https://www.cockroachlabs.com;
diff --git a/pkgs/servers/sql/cockroachdb/deps.nix b/pkgs/servers/sql/cockroachdb/deps.nix
deleted file mode 100644
index da2ab57f91a1..000000000000
--- a/pkgs/servers/sql/cockroachdb/deps.nix
+++ /dev/null
@@ -1,471 +0,0 @@
-# This file was generated by go2nix.
-[
-  {
-    goPackagePath = "github.com/VividCortex/ewma";
-    fetch = {
-      type = "git";
-      url = "https://github.com/VividCortex/ewma";
-      rev = "8b9f1311551e712ea8a06b494238b8a2351e1c33";
-      sha256 = "1w8gf6310dxl57jdq1b04wbh4ssb0nvck3926bbd86mnw78z0byl";
-    };
-  }
-  {
-    goPackagePath = "github.com/backtrace-labs/go-bcd";
-    fetch = {
-      type = "git";
-      url = "https://github.com/backtrace-labs/go-bcd";
-      rev = "c5383e2df7004f8b2fb2f10a33167d757bb0fbfb";
-      sha256 = "0v7al14ql8vddj8bw2yp1pp47nfdhq6vglbv6fmpg5sf5yfsp9xa";
-    };
-  }
-  {
-    goPackagePath = "github.com/biogo/store";
-    fetch = {
-      type = "git";
-      url = "https://github.com/biogo/store";
-      rev = "913427a1d5e89604e50ea1db0f28f34966d61602";
-      sha256 = "0xgz1g9digvvw64rmzw90a6iyxlljiiz2i1x0x0d8mw4wyaxcipz";
-    };
-  }
-  {
-    goPackagePath = "github.com/cenk/backoff";
-    fetch = {
-      type = "git";
-      url = "https://github.com/cenk/backoff";
-      rev = "cdf48bbc1eb78d1349cbda326a4a037f7ba565c6";
-      sha256 = "0dg7hvpv0a1db8qriygz1jqgp16v8k505b197x9902z7z6lldgbh";
-    };
-  }
-  {
-    goPackagePath = "github.com/chzyer/readline";
-    fetch = {
-      type = "git";
-      url = "https://github.com/chzyer/readline";
-      rev = "a193146c91dea4b6cf30f355e99fb85f73d20f07";
-      sha256 = "0amg5p3xadmj4p58f63f8kkggs9q3f3jhi7ijzb79grbg1lj2rj2";
-    };
-  }
-  {
-    goPackagePath = "github.com/cockroachdb/c-jemalloc";
-    fetch = {
-      type = "git";
-      url = "https://github.com/cockroachdb/c-jemalloc";
-      rev = "42e6a32cd7a4dff9c70d80323681d46d046181ef";
-      sha256 = "16ddzw35xj2vz8324mac5bhhr9akvjrg14lgq2mn5nfw1zs42r7n";
-    };
-  }
-  {
-    goPackagePath = "github.com/cockroachdb/c-protobuf";
-    fetch = {
-      type = "git";
-      url = "https://github.com/cockroachdb/c-protobuf";
-      rev = "951f3e665896e7ba939fd1f2db9aeaae6ca988f8";
-      sha256 = "032ncrq4p48riwk8zj6p3rp65p87k9793lg107ja6mf8nx0v3z3l";
-    };
-  }
-  {
-    goPackagePath = "github.com/cockroachdb/c-rocksdb";
-    fetch = {
-      type = "git";
-      url = "https://github.com/cockroachdb/c-rocksdb";
-      rev = "b5ca031b93fde49bfa2ba99aba423136aebf3c06";
-      sha256 = "1vwq8fbcgwvq2mqv1vwm3b671iklg26s7zd3bgxr5rl076mhn6s5";
-    };
-  }
-  {
-    goPackagePath = "github.com/cockroachdb/c-snappy";
-    fetch = {
-      type = "git";
-      url = "https://github.com/cockroachdb/c-snappy";
-      rev = "d4e7b428fe7fc09e93573df3448567a62df8c9fa";
-      sha256 = "09c1pnks51ypvqh97yf9mvi034cc3bb8dj3vkl9v959pg5ix91g4";
-    };
-  }
-  {
-    goPackagePath = "github.com/cockroachdb/cmux";
-    fetch = {
-      type = "git";
-      url = "https://github.com/cockroachdb/cmux";
-      rev = "b64f5908f4945f4b11ed4a0a9d3cc1e23350866d";
-      sha256 = "1by4f3x7j3r3z1sdx1v04r494hn6jaag7lc03prrgx455j8i0jlh";
-    };
-  }
-  {
-    goPackagePath = "github.com/cockroachdb/cockroach";
-    fetch = {
-      type = "git";
-      url = "https://github.com/cockroachdb/cockroach";
-      rev = "3fff05767cd3eda2197ce102391c0de447fef606";
-      sha256 = "11camp588vsccxlc138l7x4qws2fj5wpx1177irzayqdng8dilx3";
-    };
-  }
-  {
-    goPackagePath = "github.com/cockroachdb/pq";
-    fetch = {
-      type = "git";
-      url = "https://github.com/cockroachdb/pq";
-      rev = "40c6b2414c76cdb84aacc955f79dc844e48ad0c0";
-      sha256 = "16pnyndzlsk5rbbrimpkg6mf9w2qf0z64pk2k70ja4a65kihlw9g";
-    };
-  }
-  {
-    goPackagePath = "github.com/codahale/hdrhistogram";
-    fetch = {
-      type = "git";
-      url = "https://github.com/codahale/hdrhistogram";
-      rev = "f8ad88b59a584afeee9d334eff879b104439117b";
-      sha256 = "1y1llqaczhc5hqa71pwa1ns8nchizpl678lp23vl51c04swn8h8n";
-    };
-  }
-  {
-    goPackagePath = "github.com/coreos/etcd";
-    fetch = {
-      type = "git";
-      url = "https://github.com/coreos/etcd";
-      rev = "656167d760543d442eae62f0c8c4f92c05f59508";
-      sha256 = "1v4bwfh7ziklfcdapnyky00gjivcn1n30b72pwmbdlk7283p555k";
-    };
-  }
-  {
-    goPackagePath = "github.com/cpuguy83/go-md2man";
-    fetch = {
-      type = "git";
-      url = "https://github.com/cpuguy83/go-md2man";
-      rev = "2724a9c9051aa62e9cca11304e7dd518e9e41599";
-      sha256 = "1j2bigs7ixy20cdqd246nxr417md2qcyvkfk3x94992cr88d0vyj";
-    };
-  }
-  {
-    goPackagePath = "github.com/dustin/go-humanize";
-    fetch = {
-      type = "git";
-      url = "https://github.com/dustin/go-humanize";
-      rev = "2fcb5204cdc65b4bec9fd0a87606bb0d0e3c54e8";
-      sha256 = "1m2qgn5vh5m66ggmclgikvwc05np2r7sxgpvlj2jip5d61x29j5k";
-    };
-  }
-  {
-    goPackagePath = "github.com/elastic/gosigar";
-    fetch = {
-      type = "git";
-      url = "https://github.com/elastic/gosigar";
-      rev = "7c0ce0d4814c8d4950d7e7f40ed3b6359e757875";
-      sha256 = "1nar7jia3xfgwnvazp25m9b0kxxklarrq9fzdr63j3nqy2fnwvca";
-    };
-  }
-  {
-    goPackagePath = "github.com/elazarl/go-bindata-assetfs";
-    fetch = {
-      type = "git";
-      url = "https://github.com/elazarl/go-bindata-assetfs";
-      rev = "e1a2a7ec64b07d04ac9ebb072404fe8b7b60de1b";
-      sha256 = "0b6q8h9fwpgpkvml1j87wq9174g7px1dmskhm884drpvswda2djk";
-    };
-  }
-  {
-    goPackagePath = "github.com/facebookgo/clock";
-    fetch = {
-      type = "git";
-      url = "https://github.com/facebookgo/clock";
-      rev = "600d898af40aa09a7a93ecb9265d87b0504b6f03";
-      sha256 = "1z3jxwsqll65il7rcdx5j4dggg6w143z24h3agk09xvsc2iyj7a2";
-    };
-  }
-  {
-    goPackagePath = "github.com/gogo/protobuf";
-    fetch = {
-      type = "git";
-      url = "https://github.com/gogo/protobuf";
-      rev = "a4cceea7a401a73fefafd1a21fedbd4694124a82";
-      sha256 = "1b23izdgxlz010qrqgazm5yg0bc3pkni1qdf8n3z3xcn58hcx2yg";
-    };
-  }
-  {
-    goPackagePath = "github.com/golang/protobuf";
-    fetch = {
-      type = "git";
-      url = "https://github.com/golang/protobuf";
-      rev = "2c1988e8c18d14b142c0b472624f71647cf39adb";
-      sha256 = "176x3yv6l0i49ddv73r9v6w9qcmgrfzy8db26r01yk7sczq75nd5";
-    };
-  }
-  {
-    goPackagePath = "github.com/google/btree";
-    fetch = {
-      type = "git";
-      url = "https://github.com/google/btree";
-      rev = "7d79101e329e5a3adf994758c578dab82b90c017";
-      sha256 = "1c1hsy5s2pfawg3l9954jmqmy4yc2zp3f7i87m00km2yqgb8xpd0";
-    };
-  }
-  {
-    goPackagePath = "github.com/grpc-ecosystem/grpc-gateway";
-    fetch = {
-      type = "git";
-      url = "https://github.com/grpc-ecosystem/grpc-gateway";
-      rev = "ccd4e6b091a44f9f6b32848ffc63b3e8f8e26092";
-      sha256 = "0nl9hddmxw2s4cqpg70k1913fna101lxrha6dgplw8g8rjikfna4";
-    };
-  }
-  {
-    goPackagePath = "github.com/julienschmidt/httprouter";
-    fetch = {
-      type = "git";
-      url = "https://github.com/julienschmidt/httprouter";
-      rev = "d8ff598a019f2c7bad0980917a588193cf26666e";
-      sha256 = "11sdd5fi2w0szk850n4y35x4v2ndy62c3ss9alha5xcj4jh1j0yq";
-    };
-  }
-  {
-    goPackagePath = "github.com/kr/pretty";
-    fetch = {
-      type = "git";
-      url = "https://github.com/kr/pretty";
-      rev = "737b74a46c4bf788349f72cb256fed10aea4d0ac";
-      sha256 = "13bip4vamvij8dx0v0nhrikz6qhsimd0w4i55424c76ws6ph84i8";
-    };
-  }
-  {
-    goPackagePath = "github.com/kr/text";
-    fetch = {
-      type = "git";
-      url = "https://github.com/kr/text";
-      rev = "7cafcd837844e784b526369c9bce262804aebc60";
-      sha256 = "0br693pf6vdr1sfvzdz6zxq7hjpdgci0il4wj0v636r8lyy21vsx";
-    };
-  }
-  {
-    goPackagePath = "github.com/lib/pq";
-    fetch = {
-      type = "git";
-      url = "https://github.com/lib/pq";
-      rev = "80f8150043c80fb52dee6bc863a709cdac7ec8f8";
-      sha256 = "0brk4di63f56x9fsidn8dk7c2azan1kjzrli79h262j9pd17c3jm";
-    };
-  }
-  {
-    goPackagePath = "github.com/lightstep/lightstep-tracer-go";
-    fetch = {
-      type = "git";
-      url = "https://github.com/lightstep/lightstep-tracer-go";
-      rev = "f3c66066ce6023ad1bd721cfbd9fbd6292eb08cc";
-      sha256 = "1ci38j6d3spy2279l6anxxvm7k85h4fr08pdfw9ghrv96ajmaizb";
-    };
-  }
-  {
-    goPackagePath = "github.com/mattn/go-isatty";
-    fetch = {
-      type = "git";
-      url = "https://github.com/mattn/go-isatty";
-      rev = "66b8e73f3f5cda9f96b69efd03dd3d7fc4a5cdb8";
-      sha256 = "17lf13ndnai9a6dlmykqkdyzf1z04q7kffs0l7kvd78wpv3l6rm5";
-    };
-  }
-  {
-    goPackagePath = "github.com/mattn/go-runewidth";
-    fetch = {
-      type = "git";
-      url = "https://github.com/mattn/go-runewidth";
-      rev = "d6bea18f789704b5f83375793155289da36a3c7f";
-      sha256 = "1hnigpn7rjbwd1ircxkyx9hvi0xmxr32b2jdy2jzw6b3jmcnz1fs";
-    };
-  }
-  {
-    goPackagePath = "github.com/matttproud/golang_protobuf_extensions";
-    fetch = {
-      type = "git";
-      url = "https://github.com/matttproud/golang_protobuf_extensions";
-      rev = "c12348ce28de40eed0136aa2b644d0ee0650e56c";
-      sha256 = "1d0c1isd2lk9pnfq2nk0aih356j30k3h1gi2w0ixsivi5csl7jya";
-    };
-  }
-  {
-    goPackagePath = "github.com/olekukonko/tablewriter";
-    fetch = {
-      type = "git";
-      url = "https://github.com/olekukonko/tablewriter";
-      rev = "daf2955e742cf123959884fdff4685aa79b63135";
-      sha256 = "1fvl251ms7qmzfbi853kdgghqkrmyy6n1605mfy50nhgvw03z203";
-    };
-  }
-  {
-    goPackagePath = "github.com/opentracing/basictracer-go";
-    fetch = {
-      type = "git";
-      url = "https://github.com/opentracing/basictracer-go";
-      rev = "c7c0202a8a77f658aeb2193a27b6c0cfcc821038";
-      sha256 = "09mh7dlhr3lyw8kwpa07ywjzr3bg7847ky4hvx551lhyqk0bfv0l";
-    };
-  }
-  {
-    goPackagePath = "github.com/opentracing/opentracing-go";
-    fetch = {
-      type = "git";
-      url = "https://github.com/opentracing/opentracing-go";
-      rev = "855519783f479520497c6b3445611b05fc42f009";
-      sha256 = "15amxprc5n0dgr42jd1lkcn697m7pcvmksps9g1gw38ahyicxq8g";
-    };
-  }
-  {
-    goPackagePath = "github.com/petermattis/goid";
-    fetch = {
-      type = "git";
-      url = "https://github.com/petermattis/goid";
-      rev = "208e1c5be6bf38853827abdc6290b5f6a0c404d5";
-      sha256 = "0d511pdyrv9lkzq04agnm7019c1769vmdq8kyh66pq2np1x6jsl2";
-    };
-  }
-  {
-    goPackagePath = "github.com/pkg/errors";
-    fetch = {
-      type = "git";
-      url = "https://github.com/pkg/errors";
-      rev = "a22138067af1c4942683050411a841ade67fe1eb";
-      sha256 = "0fay1zxi8y4kj1q33mqxdsbicg9cplknnmzz87c9saq7rb4k6f36";
-    };
-  }
-  {
-    goPackagePath = "github.com/prometheus/client_model";
-    fetch = {
-      type = "git";
-      url = "https://github.com/prometheus/client_model";
-      rev = "fa8ad6fec33561be4280a8f0514318c79d7f6cb6";
-      sha256 = "11a7v1fjzhhwsl128znjcf5v7v6129xjgkdpym2lial4lac1dhm9";
-    };
-  }
-  {
-    goPackagePath = "github.com/prometheus/common";
-    fetch = {
-      type = "git";
-      url = "https://github.com/prometheus/common";
-      rev = "ebdfc6da46522d58825777cf1f90490a5b1ef1d8";
-      sha256 = "0js62pj8600773wx6labpd772yyhz5ivim7dnl7b862wblbmc8mq";
-    };
-  }
-  {
-    goPackagePath = "github.com/rcrowley/go-metrics";
-    fetch = {
-      type = "git";
-      url = "https://github.com/rcrowley/go-metrics";
-      rev = "bdb33529eca3e55eac7328e07c57012a797af602";
-      sha256 = "146hfddgdi8rkg25v1f25klz3sy5slp0gny2lwjyi63jwly07512";
-    };
-  }
-  {
-    goPackagePath = "github.com/rubyist/circuitbreaker";
-    fetch = {
-      type = "git";
-      url = "https://github.com/rubyist/circuitbreaker";
-      rev = "7e3e7fbe9c62b943d487af023566a79d9eb22d3b";
-      sha256 = "01fshh514bq2bk7f6xv7zr781m23d3k1mla1lh8azqw5874m7a07";
-    };
-  }
-  {
-    goPackagePath = "github.com/russross/blackfriday";
-    fetch = {
-      type = "git";
-      url = "https://github.com/russross/blackfriday";
-      rev = "93622da34e54fb6529bfb7c57e710f37a8d9cbd8";
-      sha256 = "19y4cx4afm3fjj7w83g0wklbzqdjm7m1j5nq64l4yq8bi50y2iv2";
-    };
-  }
-  {
-    goPackagePath = "github.com/satori/go.uuid";
-    fetch = {
-      type = "git";
-      url = "https://github.com/satori/go.uuid";
-      rev = "0aa62d5ddceb50dbcb909d790b5345affd3669b6";
-      sha256 = "1vfzfcspanxcbpdpv49580rh6kamzcs3lm70xnx724mkwi41zi8w";
-    };
-  }
-  {
-    goPackagePath = "github.com/shurcooL/sanitized_anchor_name";
-    fetch = {
-      type = "git";
-      url = "https://github.com/shurcooL/sanitized_anchor_name";
-      rev = "10ef21a441db47d8b13ebcc5fd2310f636973c77";
-      sha256 = "1cnbzcf47cn796rcjpph1s64qrabhkv5dn9sbynsy7m9zdwr5f01";
-    };
-  }
-  {
-    goPackagePath = "github.com/spf13/cobra";
-    fetch = {
-      type = "git";
-      url = "https://github.com/spf13/cobra";
-      rev = "7c674d9e72017ed25f6d2b5e497a1368086b6a6f";
-      sha256 = "0an935r7lc11a744mvdrsy56rs2w0ah3gdclvr4gzd5iqr9ap3dr";
-    };
-  }
-  {
-    goPackagePath = "github.com/spf13/pflag";
-    fetch = {
-      type = "git";
-      url = "https://github.com/spf13/pflag";
-      rev = "f676131e2660dc8cd88de99f7486d34aa8172635";
-      sha256 = "0gj4fpary501n32ag49mkd0vymqw01am0lv78l9db9dvd2im0i4m";
-    };
-  }
-  {
-    goPackagePath = "golang.org/x/crypto";
-    fetch = {
-      type = "git";
-      url = "https://go.googlesource.com/crypto";
-      rev = "a548aac93ed489257b9d959b40fe1e8c1e20778c";
-      sha256 = "022vl9s6hf8qzdrxfivzd3dg1gsr1vns0j3a3xfdkgv5z9qyvy83";
-    };
-  }
-  {
-    goPackagePath = "golang.org/x/net";
-    fetch = {
-      type = "git";
-      url = "https://go.googlesource.com/net";
-      rev = "07b51741c1d6423d4a6abab1c49940ec09cb1aaf";
-      sha256 = "12lvdj0k2gww4hw5f79qb9yswqpy4i3bgv1likmf3mllgdxfm20w";
-    };
-  }
-  {
-    goPackagePath = "golang.org/x/sys";
-    fetch = {
-      type = "git";
-      url = "https://go.googlesource.com/sys";
-      rev = "a646d33e2ee3172a661fc09bca23bb4889a41bc8";
-      sha256 = "1jniqg2nv5zhdzfm9gwfx0s9q8mwxrgcxdbkd6cddk9w0qgji9dc";
-    };
-  }
-  {
-    goPackagePath = "golang.org/x/text";
-    fetch = {
-      type = "git";
-      url = "https://go.googlesource.com/text";
-      rev = "2910a502d2bf9e43193af9d68ca516529614eed3";
-      sha256 = "1h2bxzsnqksnvrk2lplpqzzpp9m9zmd6f2aajyahc56bxb1804jq";
-    };
-  }
-  {
-    goPackagePath = "google.golang.org/grpc";
-    fetch = {
-      type = "git";
-      url = "https://github.com/grpc/grpc-go";
-      rev = "79b7c349179cdd6efd8bac4a1ce7f01b98c16e9b";
-      sha256 = "0w2g3pcxxgnp3fk0qy7ail8mxdxv3cf1yavdx8rrjn9idyd261df";
-    };
-  }
-  {
-    goPackagePath = "gopkg.in/inf.v0";
-    fetch = {
-      type = "git";
-      url = "https://gopkg.in/inf.v0";
-      rev = "3887ee99ecf07df5b447e9b00d9c0b2adaa9f3e4";
-      sha256 = "0rf3vwyb8aqnac9x9d6ax7z5526c45a16yjm2pvkijr6qgqz8b82";
-    };
-  }
-  {
-    goPackagePath = "gopkg.in/yaml.v1";
-    fetch = {
-      type = "git";
-      url = "https://gopkg.in/yaml.v1";
-      rev = "9f9df34309c04878acc86042b16630b0f696e1de";
-      sha256 = "1r8d346szqa9x8q03wiycik5qy3d6w8qq4hs99z1p64q5lm0g7gm";
-    };
-  }
-]
diff --git a/pkgs/shells/rssh/default.nix b/pkgs/shells/rssh/default.nix
index b84f5f26685b..d3ce1ff1cc2d 100644
--- a/pkgs/shells/rssh/default.nix
+++ b/pkgs/shells/rssh/default.nix
@@ -59,6 +59,12 @@ stdenv.mkDerivation rec {
     })
   ];
 
+  # Run this after to avoid conflict with patches above
+  postPatch = ''
+    sed -i '/chmod u+s/d' Makefile.in
+  '';
+
+
   buildInputs = [ openssh rsync cvs ];
 
   configureFlags = [
diff --git a/pkgs/tools/admin/cli53/default.nix b/pkgs/tools/admin/cli53/default.nix
index bdb9fd2d4772..5c80e76f482f 100644
--- a/pkgs/tools/admin/cli53/default.nix
+++ b/pkgs/tools/admin/cli53/default.nix
@@ -1,21 +1,27 @@
-{ lib, python2Packages, fetchurl }:
+{ stdenv, buildGoPackage, fetchFromGitHub }:
 
-python2Packages.buildPythonApplication rec {
+buildGoPackage rec {
   name = "cli53-${version}";
-  version = "0.4.4";
+  version = "0.8.8";
 
-  src = fetchurl {
-    url = "mirror://pypi/c/cli53/${name}.tar.gz";
-    sha256 = "0s9jzigq6a16m2c3qklssx2lz16cf13g5zh80vh24kxazaxqzbig";
+  goPackagePath = "github.com/barnybug/cli53";
+
+  src = fetchFromGitHub {
+    owner = "barnybug";
+    repo = "cli53";
+    rev = version;
+    sha256 = "1hbx64rn25qzp2xlfwv8xaqyfcax9b6pl30j9vciw7cb346i84gc";
   };
 
-  propagatedBuildInputs = with python2Packages; [
-    argparse
-    boto
-    dns
-  ];
+  buildPhase = ''
+    pushd go/src/${goPackagePath}/cmd/cli53
+    go get .
+    popd
+  '';
+
+  goDeps = ./deps.nix;
 
-  meta = {
+  meta = with stdenv.lib; {
     description = "CLI tool for the Amazon Route 53 DNS service";
     homepage = https://github.com/barnybug/cli53;
     license = lib.licenses.mit;
diff --git a/pkgs/tools/backup/amazon-glacier-cmd-interface/default.nix b/pkgs/tools/backup/amazon-glacier-cmd-interface/default.nix
index d5f47f9a6c0d..472b4a6508f2 100644
--- a/pkgs/tools/backup/amazon-glacier-cmd-interface/default.nix
+++ b/pkgs/tools/backup/amazon-glacier-cmd-interface/default.nix
@@ -11,8 +11,12 @@ python2Packages.buildPythonApplication rec {
     sha256 = "1k5z8kda9v6klr4536pf5qbq9zklxvyysv7nc48gllschl09jywc";
   };
 
+  # argparse is part of the standardlib
+  prePatch = ''
+    substituteInPlace setup.py --replace "'argparse'," ""
+  '';
+
   propagatedBuildInputs = with python2Packages; [
-    argparse
     boto
     dateutil
     prettytable
diff --git a/pkgs/tools/filesystems/glusterfs/default.nix b/pkgs/tools/filesystems/glusterfs/default.nix
index 60e49486454b..af76e429d31c 100644
--- a/pkgs/tools/filesystems/glusterfs/default.nix
+++ b/pkgs/tools/filesystems/glusterfs/default.nix
@@ -65,6 +65,10 @@ rec {
   inherit (s) name version;
   inherit buildInputs propagatedBuildInputs;
 
+  postPatch = ''
+    sed -e '/chmod u+s/d' -i contrib/fuse-util/Makefile.am
+  '';
+
   patches = [
     ./glusterfs-use-PATH-instead-of-hardcodes.patch
     ./glusterfs-fix-unsubstituted-autoconf-macros.patch
diff --git a/pkgs/tools/misc/parallel/default.nix b/pkgs/tools/misc/parallel/default.nix
index 8097902b0d98..07326e7a8ed6 100644
--- a/pkgs/tools/misc/parallel/default.nix
+++ b/pkgs/tools/misc/parallel/default.nix
@@ -1,11 +1,11 @@
 { fetchurl, stdenv, perl, makeWrapper, procps }:
 
 stdenv.mkDerivation rec {
-  name = "parallel-20170422";
+  name = "parallel-20170522";
 
   src = fetchurl {
     url = "mirror://gnu/parallel/${name}.tar.bz2";
-    sha256 = "0afk1q8mqzz02h6imyykgi9gwk5gj08hzs6lwgd65ilj4slkh93s";
+    sha256 = "1k5wlcc0dr2fxna0vi48s0l6pvbyl4pbclbih4103f1155im23ca";
   };
 
   nativeBuildInputs = [ makeWrapper perl ];
diff --git a/pkgs/tools/misc/rrdtool/default.nix b/pkgs/tools/misc/rrdtool/default.nix
index 3d2666add420..6d961c69b13d 100644
--- a/pkgs/tools/misc/rrdtool/default.nix
+++ b/pkgs/tools/misc/rrdtool/default.nix
@@ -2,11 +2,11 @@
 , tcl-8_5, darwin }:
 
 stdenv.mkDerivation rec {
-  name = "rrdtool-1.6.0";
+  name = "rrdtool-1.7.0";
 
   src = fetchurl {
     url = "http://oss.oetiker.ch/rrdtool/pub/${name}.tar.gz";
-    sha256 = "1msj1qsy3sdmx2g2rngp9a9qv50hz0ih7yx6nkx2b21drn4qx56d";
+    sha256 = "0ssjqpa0dwwzbylc0drmlbq922qcw8crffc0rpr805xr6n4k8zgr";
   };
 
   nativeBuildInputs = [ pkgconfig ];
diff --git a/pkgs/tools/misc/uucp/default.nix b/pkgs/tools/misc/uucp/default.nix
index 4ef050b409e5..acb42a7a8d27 100644
--- a/pkgs/tools/misc/uucp/default.nix
+++ b/pkgs/tools/misc/uucp/default.nix
@@ -10,6 +10,13 @@ stdenv.mkDerivation rec {
 
   hardeningDisable = [ "format" ];
 
+  prePatch = ''
+    # do not set sticky bit in nix store
+    substituteInPlace Makefile.in \
+      --replace 4555 0555
+    sed -i '/chown $(OWNER)/d' Makefile.in
+  '';
+
   meta = {
     description = "Unix-unix cp over serial line, also includes cu program";
 
diff --git a/pkgs/tools/security/logkeys/default.nix b/pkgs/tools/security/logkeys/default.nix
index b856308712f8..2d58bcc9a230 100644
--- a/pkgs/tools/security/logkeys/default.nix
+++ b/pkgs/tools/security/logkeys/default.nix
@@ -15,6 +15,7 @@ stdenv.mkDerivation rec {
   postPatch = ''
     substituteInPlace src/Makefile.in --replace 'root' '$(id -u)'
     substituteInPlace configure --replace '/dev/input' '/tmp'
+    sed -i '/chmod u+s/d' src/Makefile.in
  '';
 
   meta = with stdenv.lib; {
diff --git a/pkgs/tools/security/sudo/default.nix b/pkgs/tools/security/sudo/default.nix
index 785ba93f1371..840d24f6e67d 100644
--- a/pkgs/tools/security/sudo/default.nix
+++ b/pkgs/tools/security/sudo/default.nix
@@ -14,6 +14,11 @@ stdenv.mkDerivation rec {
     sha256 = "07fvh8qy0l1h93lccc625f48d8yp0pkp5rjjykq13pb07ar0x64y";
   };
 
+  prePatch = ''
+    # do not set sticky bit in nix store
+    substituteInPlace src/Makefile.in --replace 04755 0755
+  '';
+
   configureFlags = [
     "--with-env-editor"
     "--with-editor=/run/current-system/sw/bin/nano"
diff --git a/pkgs/tools/security/super/default.nix b/pkgs/tools/security/super/default.nix
index abfdf8eedca5..866e1f41028b 100644
--- a/pkgs/tools/security/super/default.nix
+++ b/pkgs/tools/security/super/default.nix
@@ -9,6 +9,13 @@ stdenv.mkDerivation rec {
     sha256 = "0k476f83w7f45y9jpyxwr00ikv1vhjiq0c26fgjch9hnv18icvwy";
   };
 
+  prePatch = ''
+    # do not set sticky bit in nix store
+    substituteInPlace Makefile.in \
+      --replace "-o root" "" \
+      --replace 04755 755
+  '';
+
   patches = [
    (fetchpatch { url = http://anonscm.debian.org/cgit/users/robert/super.git/plain/debian/patches/14-Fix-unchecked-setuid-call.patch;
                  sha256 = "08m9hw4kyfjv0kqns1cqha4v5hkgp4s4z0q1rgif1fnk14xh7wqh";
diff --git a/pkgs/tools/security/vulnix/requirements.nix b/pkgs/tools/security/vulnix/requirements.nix
index 952dc1ce652f..bf87fe1c64dc 100644
--- a/pkgs/tools/security/vulnix/requirements.nix
+++ b/pkgs/tools/security/vulnix/requirements.nix
@@ -26,6 +26,7 @@ rec {
       url = "https://pypi.python.org/packages/52/b3/a96d62711a26d8cfbe546519975dc9ed54d2eb50b3238d2e6de045764796/ZConfig-3.1.0.tar.gz";
       sha256 = "c21fa3a073a56925a8098036d46717392994a92cffea1b3cda3176b70c0a842e";
     };
+    propagatedBuildInputs = with self; [ zope_testrunner ];
     meta = with stdenv.lib; {
       homepage = "";
       license = licenses.zpt21;
diff --git a/pkgs/tools/system/at/install.patch b/pkgs/tools/system/at/install.patch
index 0297d680aa46..35be4af875a3 100644
--- a/pkgs/tools/system/at/install.patch
+++ b/pkgs/tools/system/at/install.patch
@@ -20,7 +20,7 @@
 +	$(INSTALL) -m 755 -d $(IROOT)$(sbindir)
 +	$(INSTALL) -m 755 -d $(IROOT)$(docdir)
 +	$(INSTALL) -m 755 -d $(IROOT)$(atdocdir)
-+	$(INSTALL) -m 6755 -s at $(IROOT)$(bindir)
++	$(INSTALL) -m 0755 -s at $(IROOT)$(bindir)
  	$(LN_S) -f at $(IROOT)$(bindir)/atq
  	$(LN_S) -f at $(IROOT)$(bindir)/atrm
 -	$(INSTALL) -g root -o root -m 755 batch $(IROOT)$(bindir)
diff --git a/pkgs/tools/system/cron/default.nix b/pkgs/tools/system/cron/default.nix
index 910bee727bb9..4a8babfd6302 100644
--- a/pkgs/tools/system/cron/default.nix
+++ b/pkgs/tools/system/cron/default.nix
@@ -12,7 +12,8 @@ stdenv.mkDerivation {
   hardeningEnable = [ "pie" ];
 
   preBuild = ''
-    substituteInPlace Makefile --replace ' -o root' ' ' --replace 111 755
+    # do not set sticky bit in /nix/store 
+    substituteInPlace Makefile --replace ' -o root' ' ' --replace 111 755 --replace 4755 0755
     makeFlags="DESTROOT=$out CC=cc"
 
     # We want to ignore the $glibc/include/paths.h definition of
diff --git a/pkgs/tools/system/fakeroot/default.nix b/pkgs/tools/system/fakeroot/default.nix
index 5286b6b2cbc9..eca3977f459f 100644
--- a/pkgs/tools/system/fakeroot/default.nix
+++ b/pkgs/tools/system/fakeroot/default.nix
@@ -9,8 +9,9 @@ stdenv.mkDerivation rec {
     sha256 = "0313xb2j6a4wihrw9gfd4rnyqw7zzv6wf3rfh2gglgnv356ic2kw";
   };
 
+  patches = stdenv.lib.optional stdenv.isLinux ./einval.patch
   # patchset from brew
-  patches = stdenv.lib.optionals stdenv.isDarwin [
+  ++ stdenv.lib.optionals stdenv.isDarwin [
     (fetchpatch {
       name = "0001-Implement-openat-2-wrapper-which-handles-optional-ar.patch";
       url = "https://bugs.debian.org/cgi-bin/bugreport.cgi?msg=5;filename=0001-Implement-openat-2-wrapper-which-handles-optional-ar.patch;att=1;bug=766649";
@@ -26,7 +27,7 @@ stdenv.mkDerivation rec {
       url = "https://bugs.debian.org/cgi-bin/bugreport.cgi?att=2;bug=766649;filename=fakeroot-always-pass-mode.patch;msg=20";
       sha256 = "0i3zaca1v449dm9m1cq6wq4dy6hc2y04l05m9gg8d4y4swld637p";
     })
-    ];
+  ];
 
   buildInputs = [ getopt ]
     ++ stdenv.lib.optional (!stdenv.isDarwin) libcap
diff --git a/pkgs/tools/system/fakeroot/einval.patch b/pkgs/tools/system/fakeroot/einval.patch
new file mode 100644
index 000000000000..f8d4fb83d137
--- /dev/null
+++ b/pkgs/tools/system/fakeroot/einval.patch
@@ -0,0 +1,47 @@
+Ignore EINVAL errors.  This matters within user namespaces.
+
+See:
+https://github.com/NixOS/nixpkgs/issues/25901
+https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=802612
+https://github.com/NixOS/nixpkgs/issues/10496
+
+diff --git a/libfakeroot.c b/libfakeroot.c
+index 68a95fb..70da8bc 100644
+--- a/libfakeroot.c
++++ b/libfakeroot.c
+@@ -792,7 +792,7 @@ int chown(const char *path, uid_t owner, gid_t group){
+     r=next_lchown(path,owner,group);
+   else
+     r=0;
+-  if(r&&(errno==EPERM))
++  if(r&&(errno==EPERM||errno==EINVAL))
+     r=0;
+
+   return r;
+@@ -819,7 +819,7 @@ int lchown(const char *path, uid_t owner, gid_t group){
+     r=next_lchown(path,owner,group);
+   else
+     r=0;
+-  if(r&&(errno==EPERM))
++  if(r&&(errno==EPERM||errno==EINVAL))
+     r=0;
+
+   return r;
+@@ -843,7 +843,7 @@ int fchown(int fd, uid_t owner, gid_t group){
+   else
+     r=0;
+
+-  if(r&&(errno==EPERM))
++  if(r&&(errno==EPERM||errno==EINVAL))
+     r=0;
+
+   return r;
+@@ -870,7 +870,7 @@ int fchownat(int dir_fd, const char *path, uid_t owner, gid_t group, int flags)
+   else
+     r=0;
+
+-  if(r&&(errno==EPERM))
++  if(r&&(errno==EPERM||errno==EINVAL))
+     r=0;
+
+   return r;
diff --git a/pkgs/tools/system/logcheck/default.nix b/pkgs/tools/system/logcheck/default.nix
index 40cee73dcd29..f27a0cbcb999 100644
--- a/pkgs/tools/system/logcheck/default.nix
+++ b/pkgs/tools/system/logcheck/default.nix
@@ -10,6 +10,11 @@ stdenv.mkDerivation rec {
     sha256 = "1x4skb5nmv2xj8cygj8pq1rd1ws4m2fsibw54yslgdyjri4r2yq7";
   };
 
+  prePatch = ''
+    # do not set sticky bit in nix store.
+    substituteInPlace Makefile --replace 2750 0750
+  '';
+
   preConfigure = ''
     substituteInPlace src/logtail --replace "/usr/bin/perl" "${perl}/bin/perl"
     substituteInPlace src/logtail2 --replace "/usr/bin/perl" "${perl}/bin/perl"
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index c87ab0a1c4ea..bdd4604d1619 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -6791,6 +6791,7 @@ with pkgs;
   gradle = self.gradleGen.gradle_latest;
   gradle_2_14 = self.gradleGen.gradle_2_14;
   gradle_2_5 = self.gradleGen.gradle_2_5;
+  gradle_3_5 = self.gradleGen.gradle_3_5;
 
   gperf = callPackage ../development/tools/misc/gperf { };
   # 3.1 changed some parameters from int to size_t, leading to mismatches.
@@ -11547,9 +11548,7 @@ with pkgs;
 
   cifs-utils = callPackage ../os-specific/linux/cifs-utils { };
 
-  cockroachdb = callPackage ../servers/sql/cockroachdb {
-    gcc = gcc6; # needs gcc 6.0 and above
-  };
+  cockroachdb = callPackage ../servers/sql/cockroachdb { };
 
   conky = callPackage ../os-specific/linux/conky ({
     lua = lua5_1; # conky can use 5.2, but toluapp can not
@@ -15542,6 +15541,8 @@ with pkgs;
   # 0.5.7 segfaults when opening the main panel with qt 5.7 and fails to compile with qt 5.8
   qsyncthingtray = libsForQt56.callPackage ../applications/misc/qsyncthingtray { };
 
+  qstopmotion = callPackage ../applications/video/qstopmotion { };
+
   qsynth = callPackage ../applications/audio/qsynth { };
 
   qtbitcointrader = callPackage ../applications/misc/qtbitcointrader { };
diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix
index 332fa5f83a08..e85fc22e3b93 100644
--- a/pkgs/top-level/python-packages.nix
+++ b/pkgs/top-level/python-packages.nix
@@ -17006,21 +17006,7 @@ in {
     '';
   };
 
-  oslo-config = buildPythonPackage rec {
-    name = "oslo.config-${version}";
-    version = "2.5.0";
-
-    src = pkgs.fetchurl {
-      url = "mirror://pypi/o/oslo.config/${name}.tar.gz";
-      sha256 = "043mavrzj7vjn7kh1dddci4sf67qwqnnn6cm0k1d19alks9hismz";
-    };
-
-    propagatedBuildInputs = with self; [ argparse pbr six netaddr stevedore ];
-    buildInputs = [ self.mock ];
-
-    # TODO: circular import on oslo-i18n
-    doCheck = false;
-  };
+  oslo-config = callPackage ../development/python-modules/oslo-config { };
 
   oslotest = buildPythonPackage rec {
     name = "oslotest-${version}";
@@ -17060,24 +17046,7 @@ in {
     '';
   };
 
-  keystoneauth1 = buildPythonPackage rec {
-    name = "keystoneauth1-${version}";
-    version = "1.1.0";
-    disabled = isPyPy; # a test fails
-
-    src = pkgs.fetchurl {
-      url = "mirror://pypi/k/keystoneauth1/${name}.tar.gz";
-      sha256 = "05fc6xsp5mal52ijvj84sf7mrw706ihadfdf5mnq9zxn7pfl4118";
-    };
-
-    buildInputs = with self; [ pbr testtools testresources testrepository mock
-                               pep8 fixtures mox3 requests-mock ];
-    propagatedBuildInputs = with self; [ argparse iso8601 requests six stevedore
-                                         webob oslo-config ];
-    patchPhase = ''
-      sed -i 's@python@${python.interpreter}@' .testr.conf
-    '';
-  };
+  keystoneauth1 = callPackage ../development/python-modules/keystoneauth1 {};
 
   requests-mock = buildPythonPackage rec {
     name = "requests-mock-${version}";