summary refs log tree commit diff
path: root/pkgs/tools
diff options
context:
space:
mode:
authorVladimír Čunát <vcunat@gmail.com>2016-09-17 00:31:34 +0200
committerVladimír Čunát <vcunat@gmail.com>2016-09-17 00:31:34 +0200
commit52e1a198cfb92f9aa36d74be1a11ffeda2f79206 (patch)
treeeac3dfcec97701c35e6596ce778dfcb6750eebf4 /pkgs/tools
parentca0e798e50f65564f0f765e52e5277e3fd279116 (diff)
parentedcaebf1d9e7b7440985a34e5273b82bce5eb938 (diff)
downloadnixlib-52e1a198cfb92f9aa36d74be1a11ffeda2f79206.tar
nixlib-52e1a198cfb92f9aa36d74be1a11ffeda2f79206.tar.gz
nixlib-52e1a198cfb92f9aa36d74be1a11ffeda2f79206.tar.bz2
nixlib-52e1a198cfb92f9aa36d74be1a11ffeda2f79206.tar.lz
nixlib-52e1a198cfb92f9aa36d74be1a11ffeda2f79206.tar.xz
nixlib-52e1a198cfb92f9aa36d74be1a11ffeda2f79206.tar.zst
nixlib-52e1a198cfb92f9aa36d74be1a11ffeda2f79206.zip
Merge branch 'master' into staging
Diffstat (limited to 'pkgs/tools')
-rw-r--r--pkgs/tools/X11/go-sct/default.nix2
-rw-r--r--pkgs/tools/X11/go-sct/deps.json11
-rw-r--r--pkgs/tools/X11/go-sct/deps.nix11
-rw-r--r--pkgs/tools/X11/nitrogen/default.nix4
-rw-r--r--pkgs/tools/X11/obconf/default.nix4
-rw-r--r--pkgs/tools/X11/xnee/default.nix4
-rw-r--r--pkgs/tools/X11/xpra/default.nix6
-rw-r--r--pkgs/tools/admin/gtk-vnc/default.nix8
-rw-r--r--pkgs/tools/admin/lxd/default.nix2
-rw-r--r--pkgs/tools/admin/lxd/deps.json173
-rw-r--r--pkgs/tools/admin/lxd/deps.nix173
-rw-r--r--pkgs/tools/archivers/xarchiver/default.nix4
-rw-r--r--pkgs/tools/audio/beets/copyartifacts-plugin.nix24
-rw-r--r--pkgs/tools/audio/beets/default.nix13
-rw-r--r--pkgs/tools/audio/beets/keyfinder-default-bin.patch35
-rw-r--r--pkgs/tools/audio/playerctl/default.nix4
-rw-r--r--pkgs/tools/backup/bup/default.nix4
-rw-r--r--pkgs/tools/filesystems/go-mtpfs/default.nix2
-rw-r--r--pkgs/tools/filesystems/go-mtpfs/deps.json20
-rw-r--r--pkgs/tools/filesystems/go-mtpfs/deps.nix20
-rw-r--r--pkgs/tools/filesystems/lizardfs/412.patch43
-rw-r--r--pkgs/tools/filesystems/lizardfs/default.nix8
-rw-r--r--pkgs/tools/filesystems/squashfs/default.nix18
-rw-r--r--pkgs/tools/graphics/nip2/default.nix4
-rw-r--r--pkgs/tools/graphics/pdf2svg/default.nix4
-rw-r--r--pkgs/tools/graphics/vips/default.nix2
-rw-r--r--pkgs/tools/inputmethods/fcitx-engines/fcitx-mozc/default.nix4
-rw-r--r--pkgs/tools/inputmethods/ibus-engines/ibus-mozc/default.nix4
-rw-r--r--pkgs/tools/inputmethods/nabi/default.nix4
-rw-r--r--pkgs/tools/misc/alarm-clock-applet/default.nix8
-rw-r--r--pkgs/tools/misc/aspcud/default.nix44
-rw-r--r--pkgs/tools/misc/clasp/default.nix32
-rw-r--r--pkgs/tools/misc/ddccontrol/default.nix4
-rw-r--r--pkgs/tools/misc/fzf/default.nix2
-rw-r--r--pkgs/tools/misc/fzf/deps.json20
-rw-r--r--pkgs/tools/misc/fzf/deps.nix20
-rw-r--r--pkgs/tools/misc/gawp/default.nix2
-rw-r--r--pkgs/tools/misc/gawp/deps.json29
-rw-r--r--pkgs/tools/misc/gawp/deps.nix29
-rw-r--r--pkgs/tools/misc/gnokii/default.nix4
-rw-r--r--pkgs/tools/misc/gparted/default.nix4
-rw-r--r--pkgs/tools/misc/graylog/default.nix4
-rw-r--r--pkgs/tools/misc/gringo/default.nix39
-rw-r--r--pkgs/tools/misc/gringo/gringo-4.5.4-cmath.patch11
-rw-r--r--pkgs/tools/misc/gsmartcontrol/default.nix4
-rw-r--r--pkgs/tools/misc/i3cat/default.nix2
-rw-r--r--pkgs/tools/misc/i3cat/deps.json11
-rw-r--r--pkgs/tools/misc/i3cat/deps.nix11
-rw-r--r--pkgs/tools/misc/man-db/default.nix6
-rw-r--r--pkgs/tools/misc/mc/default.nix7
-rw-r--r--pkgs/tools/misc/mongodb-tools/default.nix2
-rw-r--r--pkgs/tools/misc/mongodb-tools/deps.json47
-rw-r--r--pkgs/tools/misc/mongodb-tools/deps.nix47
-rw-r--r--pkgs/tools/misc/tmuxp/default.nix12
-rw-r--r--pkgs/tools/misc/upower-notify/default.nix2
-rw-r--r--pkgs/tools/misc/upower-notify/deps.json11
-rw-r--r--pkgs/tools/misc/upower-notify/deps.nix11
-rw-r--r--pkgs/tools/misc/xburst-tools/default.nix2
-rw-r--r--pkgs/tools/misc/xflux/gui.nix25
-rw-r--r--pkgs/tools/misc/xflux/setup.patch28
-rw-r--r--pkgs/tools/networking/connman-notify/default.nix2
-rw-r--r--pkgs/tools/networking/curl/7.15.nix79
-rw-r--r--pkgs/tools/networking/gftp/default.nix4
-rw-r--r--pkgs/tools/networking/hping/default.nix7
-rw-r--r--pkgs/tools/networking/mtr/default.nix6
-rw-r--r--pkgs/tools/networking/ngrok/default.nix2
-rw-r--r--pkgs/tools/networking/ngrok/deps.json101
-rw-r--r--pkgs/tools/networking/ngrok/deps.nix101
-rw-r--r--pkgs/tools/networking/openssh/default.nix5
-rw-r--r--pkgs/tools/networking/p2p/gtk-gnutella/default.nix4
-rw-r--r--pkgs/tools/networking/s3gof3r/default.nix2
-rw-r--r--pkgs/tools/networking/s3gof3r/deps.json11
-rw-r--r--pkgs/tools/networking/s3gof3r/deps.nix11
-rw-r--r--pkgs/tools/networking/wicd/default.nix12
-rw-r--r--pkgs/tools/package-management/disnix/default.nix6
-rw-r--r--pkgs/tools/package-management/disnix/dysnomia/default.nix6
-rw-r--r--pkgs/tools/package-management/gx/default.nix2
-rw-r--r--pkgs/tools/package-management/gx/deps.json200
-rw-r--r--pkgs/tools/package-management/gx/deps.nix200
-rw-r--r--pkgs/tools/package-management/gx/go/default.nix2
-rw-r--r--pkgs/tools/package-management/nix/default.nix2
-rw-r--r--pkgs/tools/security/hologram/default.nix2
-rw-r--r--pkgs/tools/security/hologram/deps.json101
-rw-r--r--pkgs/tools/security/hologram/deps.nix101
-rw-r--r--pkgs/tools/security/jd-gui/default.nix4
-rw-r--r--pkgs/tools/security/nmap/default.nix8
-rw-r--r--pkgs/tools/security/tor/torbrowser.nix10
-rw-r--r--pkgs/tools/system/bootchart/default.nix4
-rw-r--r--pkgs/tools/system/confd/default.nix2
-rw-r--r--pkgs/tools/system/confd/deps.json74
-rw-r--r--pkgs/tools/system/confd/deps.nix74
-rw-r--r--pkgs/tools/system/gdmap/default.nix4
-rw-r--r--pkgs/tools/system/lshw/default.nix4
-rw-r--r--pkgs/tools/text/groff/default.nix27
-rw-r--r--pkgs/tools/text/platinum-searcher/default.nix2
-rw-r--r--pkgs/tools/text/platinum-searcher/deps.json83
-rw-r--r--pkgs/tools/text/platinum-searcher/deps.nix83
-rw-r--r--pkgs/tools/text/sift/default.nix2
-rw-r--r--pkgs/tools/text/sift/deps.json29
-rw-r--r--pkgs/tools/text/sift/deps.nix29
-rw-r--r--pkgs/tools/typesetting/xmlroff/default.nix4
-rw-r--r--pkgs/tools/video/mjpegtools/default.nix4
102 files changed, 1304 insertions, 1207 deletions
diff --git a/pkgs/tools/X11/go-sct/default.nix b/pkgs/tools/X11/go-sct/default.nix
index 197a7b80af36..de51e1ad25f5 100644
--- a/pkgs/tools/X11/go-sct/default.nix
+++ b/pkgs/tools/X11/go-sct/default.nix
@@ -13,7 +13,7 @@ buildGoPackage rec {
     sha256 = "1iqdagrq0j7sqxgsj31skgk73k2rbpbvj41v087af9103wf8h9z7";
   };
 
-  goDeps = ./deps.json;
+  goDeps = ./deps.nix;
 
   buildInputs = [ xorg.libX11 xorg.libXrandr ];
 
diff --git a/pkgs/tools/X11/go-sct/deps.json b/pkgs/tools/X11/go-sct/deps.json
deleted file mode 100644
index 227db99338ea..000000000000
--- a/pkgs/tools/X11/go-sct/deps.json
+++ /dev/null
@@ -1,11 +0,0 @@
-[
-    {
-        "goPackagePath": "github.com/cpucycle/astrotime",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/cpucycle/astrotime",
-            "rev": "9c7d514efdb561775030eaf8f1a9ae6bddb3a2ca",
-            "sha256": "024sc7g55v4s54irssm5wsn74sr2k2ynsm6z16w47q66cxhgvby1"
-        }
-    }
-]
diff --git a/pkgs/tools/X11/go-sct/deps.nix b/pkgs/tools/X11/go-sct/deps.nix
new file mode 100644
index 000000000000..f808858e091a
--- /dev/null
+++ b/pkgs/tools/X11/go-sct/deps.nix
@@ -0,0 +1,11 @@
+[
+  {
+    goPackagePath = "github.com/cpucycle/astrotime";
+    fetch = {
+      type = "git";
+      url = "https://github.com/cpucycle/astrotime";
+      rev = "9c7d514efdb561775030eaf8f1a9ae6bddb3a2ca";
+      sha256 = "024sc7g55v4s54irssm5wsn74sr2k2ynsm6z16w47q66cxhgvby1";
+    };
+  }
+]
diff --git a/pkgs/tools/X11/nitrogen/default.nix b/pkgs/tools/X11/nitrogen/default.nix
index dd8b496fe66e..070152427f29 100644
--- a/pkgs/tools/X11/nitrogen/default.nix
+++ b/pkgs/tools/X11/nitrogen/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, pkgconfig, glib, gtk2, gtkmm }:
+{ stdenv, fetchurl, pkgconfig, glib, gtkmm2 }:
 
 let version = "1.5.2";
 in
@@ -10,7 +10,7 @@ stdenv.mkDerivation rec {
     sha256 = "60a2437ce6a6c0ba44505fc8066c1973140d4bb48e1e5649f525c7b0b8bf9fd2";
   };
 
-  buildInputs = [ glib gtk2 gtkmm pkgconfig ];
+  buildInputs = [ glib gtkmm2 pkgconfig ];
 
   NIX_LDFLAGS = "-lX11";
 
diff --git a/pkgs/tools/X11/obconf/default.nix b/pkgs/tools/X11/obconf/default.nix
index 272143791f2c..cb3749efb445 100644
--- a/pkgs/tools/X11/obconf/default.nix
+++ b/pkgs/tools/X11/obconf/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, pkgconfig, gtk, libglade, openbox,
+{ stdenv, fetchurl, pkgconfig, gtk2, libglade, openbox,
   imlib2, libstartup_notification, makeWrapper }:
 
 stdenv.mkDerivation rec {
@@ -11,7 +11,7 @@ stdenv.mkDerivation rec {
   };
 
   buildInputs = [
-    pkgconfig gtk libglade openbox imlib2 libstartup_notification makeWrapper
+    pkgconfig gtk2 libglade openbox imlib2 libstartup_notification makeWrapper
   ];
 
   postInstall = ''
diff --git a/pkgs/tools/X11/xnee/default.nix b/pkgs/tools/X11/xnee/default.nix
index 43fa105e6808..63abc31e0076 100644
--- a/pkgs/tools/X11/xnee/default.nix
+++ b/pkgs/tools/X11/xnee/default.nix
@@ -1,5 +1,5 @@
 { fetchurl, stdenv, libX11, xproto, libXext, xextproto, libXtst
-, gtk, libXi, inputproto, pkgconfig, recordproto, texinfo }:
+, gtk2, libXi, inputproto, pkgconfig, recordproto, texinfo }:
 
 stdenv.mkDerivation rec {
   version = "3.19";
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
     '';
 
   buildInputs =
-    [ libX11 xproto libXext xextproto libXtst gtk
+    [ libX11 xproto libXext xextproto libXtst gtk2
       libXi inputproto pkgconfig recordproto
       texinfo
     ];
diff --git a/pkgs/tools/X11/xpra/default.nix b/pkgs/tools/X11/xpra/default.nix
index 1a84eaddda64..f3159533931b 100644
--- a/pkgs/tools/X11/xpra/default.nix
+++ b/pkgs/tools/X11/xpra/default.nix
@@ -1,5 +1,5 @@
 { stdenv, fetchurl, pythonPackages, pkgconfig
-, xorg, gtk, glib, pango, cairo, gdk_pixbuf, atk
+, xorg, gtk2, glib, pango, cairo, gdk_pixbuf, atk
 , makeWrapper, xkbcomp, xorgserver, getopt, xauth, utillinux, which, fontsConf, xkeyboard_config
 , ffmpeg, x264, libvpx, libwebp
 , libfakeXinerama }:
@@ -22,7 +22,7 @@ in buildPythonApplication rec {
     xorg.xproto xorg.fixesproto xorg.libXtst xorg.libXfixes xorg.libXcomposite xorg.libXdamage
     xorg.libXrandr xorg.libxkbfile
 
-    pango cairo gdk_pixbuf atk gtk glib
+    pango cairo gdk_pixbuf atk gtk2 glib
 
     ffmpeg libvpx x264 libwebp
 
@@ -30,7 +30,7 @@ in buildPythonApplication rec {
   ];
 
   propagatedBuildInputs = with pythonPackages; [
-    pillow pygtk pygobject rencode pycrypto cryptography pycups lz4 dbus-python
+    pillow pygtk pygobject2 rencode pycrypto cryptography pycups lz4 dbus-python
   ];
 
   preBuild = ''
diff --git a/pkgs/tools/admin/gtk-vnc/default.nix b/pkgs/tools/admin/gtk-vnc/default.nix
index 9ef9755d6bcb..cf58f75aaccc 100644
--- a/pkgs/tools/admin/gtk-vnc/default.nix
+++ b/pkgs/tools/admin/gtk-vnc/default.nix
@@ -1,7 +1,7 @@
 { stdenv, fetchurl, gobjectIntrospection
-, python, gtk, pygtk, gnutls, cairo, libtool, glib, pkgconfig, libtasn1
+, python, gtk2, pygtk, gnutls, cairo, libtool, glib, pkgconfig, libtasn1
 , libffi, cyrus_sasl, intltool, perl, perlPackages, libpulseaudio
-, kbproto, libX11, libXext, xextproto, pygobject, libgcrypt, gtk3, vala_0_23
+, kbproto, libX11, libXext, xextproto, pygobject2, libgcrypt, gtk3, vala_0_23
 , pygobject3, libogg, enableGTK3 ? false, libgpgerror }:
 
 stdenv.mkDerivation rec {
@@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
     python gnutls cairo libtool pkgconfig glib libffi libgcrypt
     intltool cyrus_sasl libpulseaudio perl perlPackages.TextCSV
     gobjectIntrospection libogg libgpgerror
-  ] ++ (if enableGTK3 then [ gtk3 vala_0_23 pygobject3 ] else [ gtk pygtk pygobject ]);
+  ] ++ (if enableGTK3 then [ gtk3 vala_0_23 pygobject3 ] else [ gtk2 pygtk pygobject2 ]);
 
   NIX_CFLAGS_COMPILE = "-fstack-protector-all";
   configureFlags = [
@@ -27,7 +27,7 @@ stdenv.mkDerivation rec {
   ];
 
   makeFlags = stdenv.lib.optionalString (!enableGTK3)
-    "CODEGENDIR=${pygobject}/share/pygobject/2.0/codegen/ DEFSDIR=${pygtk}/share/pygtk/2.0/defs/";
+    "CODEGENDIR=${pygobject2}/share/pygobject/2.0/codegen/ DEFSDIR=${pygtk}/share/pygtk/2.0/defs/";
 
   # Fix broken .la files
   preFixup = ''
diff --git a/pkgs/tools/admin/lxd/default.nix b/pkgs/tools/admin/lxd/default.nix
index be7d534b3d6e..40647f73379b 100644
--- a/pkgs/tools/admin/lxd/default.nix
+++ b/pkgs/tools/admin/lxd/default.nix
@@ -14,7 +14,7 @@ buildGoPackage rec {
     sha256 = "1rs9g1snjymg6pjz5bj77zk5wbs0w8xmrfxzqs32w6zr1dxhf9hs";
   };
 
-  goDeps = ./deps.json;
+  goDeps = ./deps.nix;
 
   nativeBuildInputs = [ pkgconfig ];
   buildInputs = [ lxc ];
diff --git a/pkgs/tools/admin/lxd/deps.json b/pkgs/tools/admin/lxd/deps.json
deleted file mode 100644
index 1a0e2d3245f5..000000000000
--- a/pkgs/tools/admin/lxd/deps.json
+++ /dev/null
@@ -1,173 +0,0 @@
-[
-    {
-        "goPackagePath": "gopkg.in/yaml.v2",
-        "fetch": {
-            "type": "git",
-            "url": "https://gopkg.in/yaml.v2",
-            "rev": "a83829b6f1293c91addabc89d0571c246397bbf4",
-            "sha256": "1m4dsmk90sbi17571h6pld44zxz7jc4lrnl4f27dpd1l8g5xvjhh"
-        }
-    },
-    {
-        "goPackagePath": "golang.org/x/crypto",
-        "fetch": {
-            "type": "git",
-            "url": "https://go.googlesource.com/crypto",
-            "rev": "575fdbe86e5dd89229707ebec0575ce7d088a4a6",
-            "sha256": "1kgv1mkw9y404pk3lcwbs0vgl133mwyp294i18jg9hp10s5d56xa"
-        }
-    },
-    {
-        "goPackagePath": "github.com/golang/protobuf",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/golang/protobuf",
-            "rev": "59b73b37c1e45995477aae817e4a653c89a858db",
-            "sha256": "1dx22jvhvj34ivpr7gw01fncg9yyx35mbpal4mpgnqka7ajmgjsa"
-        }
-    },
-    {
-        "goPackagePath": "gopkg.in/tomb.v2",
-        "fetch": {
-            "type": "git",
-            "url": "https://gopkg.in/tomb.v2",
-            "rev": "14b3d72120e8d10ea6e6b7f87f7175734b1faab8",
-            "sha256": "1nza31jvkpka5431c4bdbirvjdy36b1b55sbzljqhqih25jrcjx5"
-        }
-    },
-    {
-        "goPackagePath": "github.com/gorilla/websocket",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/gorilla/websocket",
-            "rev": "a622679ebd7a3b813862379232f645f8e690e43f",
-            "sha256": "1nc9jbcmgya1i6dmf6sbcqsnxi9hbjg6dz1z0k7zmc6xdwlq0y4q"
-        }
-    },
-    {
-        "goPackagePath": "github.com/syndtr/gocapability",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/syndtr/gocapability",
-            "rev": "2c00daeb6c3b45114c80ac44119e7b8801fdd852",
-            "sha256": "1x7jdcg2r5pakjf20q7bdiidfmv7vcjiyg682186rkp2wz0yws0l"
-        }
-    },
-    {
-        "goPackagePath": "gopkg.in/inconshreveable/log15.v2",
-        "fetch": {
-            "type": "git",
-            "url": "https://gopkg.in/inconshreveable/log15.v2",
-            "rev": "b105bd37f74e5d9dc7b6ad7806715c7a2b83fd3f",
-            "sha256": "18rldvi60i7b3lljfrsqgcc24gdkw2pcixxydznyggaqhh96l6a8"
-        }
-    },
-    {
-        "goPackagePath": "github.com/gorilla/mux",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/gorilla/mux",
-            "rev": "8096f47503459bcc74d1f4c487b7e6e42e5746b5",
-            "sha256": "0163fm9jsh54df471mx9kfhdg0070klqhw9ja0qwdzqibxq791b9"
-        }
-    },
-    {
-        "goPackagePath": "github.com/pborman/uuid",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/pborman/uuid",
-            "rev": "ca53cad383cad2479bbba7f7a1a05797ec1386e4",
-            "sha256": "0rcx669bbjkkwdlw81spnra4ffgzd4rbpywnrj3w41m9vq6mk1gn"
-        }
-    },
-    {
-        "goPackagePath": "gopkg.in/flosch/pongo2.v3",
-        "fetch": {
-            "type": "git",
-            "url": "https://gopkg.in/flosch/pongo2.v3",
-            "rev": "5e81b817a0c48c1c57cdf1a9056cf76bdee02ca9",
-            "sha256": "0fd7d79644zmcirsb1gvhmh0l5vb5nyxmkzkvqpmzzcg6yfczph8"
-        }
-    },
-    {
-        "goPackagePath": "github.com/olekukonko/tablewriter",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/olekukonko/tablewriter",
-            "rev": "cca8bbc0798408af109aaaa239cbd2634846b340",
-            "sha256": "0f9ph3z7lh6p6gihbl1461j9yq5qiaqxr9mzdkp512n18v89ml48"
-        }
-    },
-    {
-        "goPackagePath": "github.com/mattn/go-sqlite3",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/mattn/go-sqlite3",
-            "rev": "b4142c444a8941d0d92b0b7103a24df9cd815e42",
-            "sha256": "0xq2y4am8dz9w9aaq24s1npg1sn8pf2gn4nki73ylz2fpjwq9vla"
-        }
-    },
-    {
-        "goPackagePath": "gopkg.in/lxc/go-lxc.v2",
-        "fetch": {
-            "type": "git",
-            "url": "https://gopkg.in/lxc/go-lxc.v2",
-            "rev": "8f9e220b36393c03854c2d224c5a55644b13e205",
-            "sha256": "1dc1n2561k3pxbm2zzh3qwlh30bcb2k9v22ghvr7ps2j9lmhs0ip"
-        }
-    },
-    {
-        "goPackagePath": "github.com/mattn/go-runewidth",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/mattn/go-runewidth",
-            "rev": "d6bea18f789704b5f83375793155289da36a3c7f",
-            "sha256": "1hnigpn7rjbwd1ircxkyx9hvi0xmxr32b2jdy2jzw6b3jmcnz1fs"
-        }
-    },
-    {
-        "goPackagePath": "github.com/coreos/go-systemd",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/coreos/go-systemd",
-            "rev": "a606a1e936df81b70d85448221c7b1c6d8a74ef1",
-            "sha256": "0fhan564swp982dnzzspb6jzfdl453489c0qavh65g3shy5x8x28"
-        }
-    },
-    {
-        "goPackagePath": "github.com/dustinkirkland/golang-petname",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/dustinkirkland/golang-petname",
-            "rev": "2182cecef7f257230fc998bc351a08a5505f5e6c",
-            "sha256": "1xagj34y5rxl7rykhil8iqxlls9rbgcxgdvgfp7kg39pinw83arl"
-        }
-    },
-    {
-        "goPackagePath": "github.com/gorilla/context",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/gorilla/context",
-            "rev": "215affda49addc4c8ef7e2534915df2c8c35c6cd",
-            "sha256": "1ybvjknncyx1f112mv28870n0l7yrymsr0861vzw10gc4yn1h97g"
-        }
-    },
-    {
-        "goPackagePath": "github.com/mattn/go-colorable",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/mattn/go-colorable",
-            "rev": "3dac7b4f76f6e17fb39b768b89e3783d16e237fe",
-            "sha256": "08680mba8hh2rghymqbzd4m40r9k765w5kbzvrif9ngd6h85qnw6"
-        }
-    },
-    {
-        "goPackagePath": "github.com/gosexy/gettext",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/gosexy/gettext",
-            "rev": "305f360aee30243660f32600b87c3c1eaa947187",
-            "sha256": "0sm7ziv56ms0lrk30ipbl6i17azar3a44dd2xvr011442zs5ym09"
-        }
-    }
-]
diff --git a/pkgs/tools/admin/lxd/deps.nix b/pkgs/tools/admin/lxd/deps.nix
new file mode 100644
index 000000000000..7325100bb3ad
--- /dev/null
+++ b/pkgs/tools/admin/lxd/deps.nix
@@ -0,0 +1,173 @@
+[
+  {
+    goPackagePath = "gopkg.in/yaml.v2";
+    fetch = {
+      type = "git";
+      url = "https://gopkg.in/yaml.v2";
+      rev = "a83829b6f1293c91addabc89d0571c246397bbf4";
+      sha256 = "1m4dsmk90sbi17571h6pld44zxz7jc4lrnl4f27dpd1l8g5xvjhh";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/crypto";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/crypto";
+      rev = "575fdbe86e5dd89229707ebec0575ce7d088a4a6";
+      sha256 = "1kgv1mkw9y404pk3lcwbs0vgl133mwyp294i18jg9hp10s5d56xa";
+    };
+  }
+  {
+    goPackagePath = "github.com/golang/protobuf";
+    fetch = {
+      type = "git";
+      url = "https://github.com/golang/protobuf";
+      rev = "59b73b37c1e45995477aae817e4a653c89a858db";
+      sha256 = "1dx22jvhvj34ivpr7gw01fncg9yyx35mbpal4mpgnqka7ajmgjsa";
+    };
+  }
+  {
+    goPackagePath = "gopkg.in/tomb.v2";
+    fetch = {
+      type = "git";
+      url = "https://gopkg.in/tomb.v2";
+      rev = "14b3d72120e8d10ea6e6b7f87f7175734b1faab8";
+      sha256 = "1nza31jvkpka5431c4bdbirvjdy36b1b55sbzljqhqih25jrcjx5";
+    };
+  }
+  {
+    goPackagePath = "github.com/gorilla/websocket";
+    fetch = {
+      type = "git";
+      url = "https://github.com/gorilla/websocket";
+      rev = "a622679ebd7a3b813862379232f645f8e690e43f";
+      sha256 = "1nc9jbcmgya1i6dmf6sbcqsnxi9hbjg6dz1z0k7zmc6xdwlq0y4q";
+    };
+  }
+  {
+    goPackagePath = "github.com/syndtr/gocapability";
+    fetch = {
+      type = "git";
+      url = "https://github.com/syndtr/gocapability";
+      rev = "2c00daeb6c3b45114c80ac44119e7b8801fdd852";
+      sha256 = "1x7jdcg2r5pakjf20q7bdiidfmv7vcjiyg682186rkp2wz0yws0l";
+    };
+  }
+  {
+    goPackagePath = "gopkg.in/inconshreveable/log15.v2";
+    fetch = {
+      type = "git";
+      url = "https://gopkg.in/inconshreveable/log15.v2";
+      rev = "b105bd37f74e5d9dc7b6ad7806715c7a2b83fd3f";
+      sha256 = "18rldvi60i7b3lljfrsqgcc24gdkw2pcixxydznyggaqhh96l6a8";
+    };
+  }
+  {
+    goPackagePath = "github.com/gorilla/mux";
+    fetch = {
+      type = "git";
+      url = "https://github.com/gorilla/mux";
+      rev = "8096f47503459bcc74d1f4c487b7e6e42e5746b5";
+      sha256 = "0163fm9jsh54df471mx9kfhdg0070klqhw9ja0qwdzqibxq791b9";
+    };
+  }
+  {
+    goPackagePath = "github.com/pborman/uuid";
+    fetch = {
+      type = "git";
+      url = "https://github.com/pborman/uuid";
+      rev = "ca53cad383cad2479bbba7f7a1a05797ec1386e4";
+      sha256 = "0rcx669bbjkkwdlw81spnra4ffgzd4rbpywnrj3w41m9vq6mk1gn";
+    };
+  }
+  {
+    goPackagePath = "gopkg.in/flosch/pongo2.v3";
+    fetch = {
+      type = "git";
+      url = "https://gopkg.in/flosch/pongo2.v3";
+      rev = "5e81b817a0c48c1c57cdf1a9056cf76bdee02ca9";
+      sha256 = "0fd7d79644zmcirsb1gvhmh0l5vb5nyxmkzkvqpmzzcg6yfczph8";
+    };
+  }
+  {
+    goPackagePath = "github.com/olekukonko/tablewriter";
+    fetch = {
+      type = "git";
+      url = "https://github.com/olekukonko/tablewriter";
+      rev = "cca8bbc0798408af109aaaa239cbd2634846b340";
+      sha256 = "0f9ph3z7lh6p6gihbl1461j9yq5qiaqxr9mzdkp512n18v89ml48";
+    };
+  }
+  {
+    goPackagePath = "github.com/mattn/go-sqlite3";
+    fetch = {
+      type = "git";
+      url = "https://github.com/mattn/go-sqlite3";
+      rev = "b4142c444a8941d0d92b0b7103a24df9cd815e42";
+      sha256 = "0xq2y4am8dz9w9aaq24s1npg1sn8pf2gn4nki73ylz2fpjwq9vla";
+    };
+  }
+  {
+    goPackagePath = "gopkg.in/lxc/go-lxc.v2";
+    fetch = {
+      type = "git";
+      url = "https://gopkg.in/lxc/go-lxc.v2";
+      rev = "8f9e220b36393c03854c2d224c5a55644b13e205";
+      sha256 = "1dc1n2561k3pxbm2zzh3qwlh30bcb2k9v22ghvr7ps2j9lmhs0ip";
+    };
+  }
+  {
+    goPackagePath = "github.com/mattn/go-runewidth";
+    fetch = {
+      type = "git";
+      url = "https://github.com/mattn/go-runewidth";
+      rev = "d6bea18f789704b5f83375793155289da36a3c7f";
+      sha256 = "1hnigpn7rjbwd1ircxkyx9hvi0xmxr32b2jdy2jzw6b3jmcnz1fs";
+    };
+  }
+  {
+    goPackagePath = "github.com/coreos/go-systemd";
+    fetch = {
+      type = "git";
+      url = "https://github.com/coreos/go-systemd";
+      rev = "a606a1e936df81b70d85448221c7b1c6d8a74ef1";
+      sha256 = "0fhan564swp982dnzzspb6jzfdl453489c0qavh65g3shy5x8x28";
+    };
+  }
+  {
+    goPackagePath = "github.com/dustinkirkland/golang-petname";
+    fetch = {
+      type = "git";
+      url = "https://github.com/dustinkirkland/golang-petname";
+      rev = "2182cecef7f257230fc998bc351a08a5505f5e6c";
+      sha256 = "1xagj34y5rxl7rykhil8iqxlls9rbgcxgdvgfp7kg39pinw83arl";
+    };
+  }
+  {
+    goPackagePath = "github.com/gorilla/context";
+    fetch = {
+      type = "git";
+      url = "https://github.com/gorilla/context";
+      rev = "215affda49addc4c8ef7e2534915df2c8c35c6cd";
+      sha256 = "1ybvjknncyx1f112mv28870n0l7yrymsr0861vzw10gc4yn1h97g";
+    };
+  }
+  {
+    goPackagePath = "github.com/mattn/go-colorable";
+    fetch = {
+      type = "git";
+      url = "https://github.com/mattn/go-colorable";
+      rev = "3dac7b4f76f6e17fb39b768b89e3783d16e237fe";
+      sha256 = "08680mba8hh2rghymqbzd4m40r9k765w5kbzvrif9ngd6h85qnw6";
+    };
+  }
+  {
+    goPackagePath = "github.com/gosexy/gettext";
+    fetch = {
+      type = "git";
+      url = "https://github.com/gosexy/gettext";
+      rev = "305f360aee30243660f32600b87c3c1eaa947187";
+      sha256 = "0sm7ziv56ms0lrk30ipbl6i17azar3a44dd2xvr011442zs5ym09";
+    };
+  }
+]
diff --git a/pkgs/tools/archivers/xarchiver/default.nix b/pkgs/tools/archivers/xarchiver/default.nix
index e924a58d4d71..6ed6a7f24021 100644
--- a/pkgs/tools/archivers/xarchiver/default.nix
+++ b/pkgs/tools/archivers/xarchiver/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchFromGitHub, gtk, pkgconfig, intltool }:
+{ stdenv, fetchFromGitHub, gtk2, pkgconfig, intltool }:
 
 stdenv.mkDerivation rec {
   version = "0.5.4.7";
@@ -11,7 +11,7 @@ stdenv.mkDerivation rec {
     sha256 = "0w9lx8d8r50j48qfhn2r0dlcnwy3pjyy6xjvgpr0qagy5l1q1qj4";
   };
 
-  buildInputs = [ gtk pkgconfig intltool ];
+  buildInputs = [ gtk2 pkgconfig intltool ];
 
   meta = {
     description = "GTK+ frontend to 7z,zip,rar,tar,bzip2, gzip,arj, lha, rpm and deb (open and extract only)";
diff --git a/pkgs/tools/audio/beets/copyartifacts-plugin.nix b/pkgs/tools/audio/beets/copyartifacts-plugin.nix
new file mode 100644
index 000000000000..d3b36d15e03e
--- /dev/null
+++ b/pkgs/tools/audio/beets/copyartifacts-plugin.nix
@@ -0,0 +1,24 @@
+{ stdenv, buildPythonApplication, fetchFromGitHub, pythonPackages }:
+
+buildPythonApplication rec {
+  name = "beets-copyartifacts";
+
+  src = fetchFromGitHub {
+    repo = "beets-copyartifacts";
+    owner = "sbarakat";
+    rev = "dac4a1605111e24bb5b498aa84cead7c87480834";
+    sha256 = "0p5cskfgqinzh48a58hw56f96g9lar3k3g2p0ip1m9kawzf6axng";
+  };
+
+  postPatch = ''
+    sed -i -e '/install_requires/,/\]/{/beets/d}' setup.py
+    sed -i -e '/namespace_packages/d' setup.py
+    printf 'from pkgutil import extend_path\n__path__ = extend_path(__path__, __name__)\n' >beetsplug/__init__.py
+  '';
+
+  meta = {
+    description = "Beets plugin to move non-music files during the import process";
+    homepage = "https://github.com/sbarakat/beets-copyartifacts";
+    license = stdenv.lib.licenses.mit;
+  };
+}
diff --git a/pkgs/tools/audio/beets/default.nix b/pkgs/tools/audio/beets/default.nix
index 9dcfbd10b353..d7fb0e2aab4f 100644
--- a/pkgs/tools/audio/beets/default.nix
+++ b/pkgs/tools/audio/beets/default.nix
@@ -8,6 +8,7 @@
 , enableDiscogs        ? true
 , enableEmbyupdate     ? true
 , enableFetchart       ? true
+, enableKeyfinder      ? true, keyfinder-cli ? null
 , enableLastfm         ? true
 , enableMpd            ? true
 , enableReplaygain     ? true, bs1770gain ? null
@@ -15,7 +16,8 @@
 , enableWeb            ? true
 
 # External plugins
-, enableAlternatives ? false
+, enableAlternatives   ? false
+, enableCopyArtifacts  ? false
 
 , bashInteractive, bashCompletion
 }:
@@ -25,6 +27,7 @@ assert enableBadfiles    -> flac != null && mp3val != null;
 assert enableConvert     -> ffmpeg != null;
 assert enableDiscogs     -> pythonPackages.discogs_client != null;
 assert enableFetchart    -> pythonPackages.responses      != null;
+assert enableKeyfinder   -> keyfinder-cli != null;
 assert enableLastfm      -> pythonPackages.pylast         != null;
 assert enableMpd         -> pythonPackages.mpd            != null;
 assert enableReplaygain  -> bs1770gain                    != null;
@@ -42,6 +45,7 @@ let
     discogs = enableDiscogs;
     embyupdate = enableEmbyupdate;
     fetchart = enableFetchart;
+    keyfinder = enableKeyfinder;
     lastgenre = enableLastfm;
     lastimport = enableLastfm;
     mpdstats = enableMpd;
@@ -54,7 +58,7 @@ let
   pluginsWithoutDeps = [
     "beatport" "bench" "bpd" "bpm" "bucket" "cue" "duplicates" "edit" "embedart"
     "export" "filefilter" "freedesktop" "fromfilename" "ftintitle" "fuzzy" "hook" "ihate"
-    "importadded" "importfeeds" "info" "inline" "ipfs" "keyfinder" "lyrics"
+    "importadded" "importfeeds" "info" "inline" "ipfs" "lyrics"
     "mbcollection" "mbsubmit" "mbsync" "metasync" "missing" "permissions" "play"
     "plexupdate" "random" "rewrite" "scrub" "smartplaylist" "spotify" "the"
     "types" "zero"
@@ -98,12 +102,16 @@ in buildPythonApplication rec {
                                    pythonPackages.requests2
     ++ optional enableConvert      ffmpeg
     ++ optional enableDiscogs      pythonPackages.discogs_client
+    ++ optional enableKeyfinder    keyfinder-cli
     ++ optional enableLastfm       pythonPackages.pylast
     ++ optional enableMpd          pythonPackages.mpd
     ++ optional enableThumbnails   pythonPackages.pyxdg
     ++ optional enableWeb          pythonPackages.flask
     ++ optional enableAlternatives (import ./alternatives-plugin.nix {
       inherit stdenv buildPythonApplication pythonPackages fetchFromGitHub;
+    })
+    ++ optional enableCopyArtifacts (import ./copyartifacts-plugin.nix {
+      inherit stdenv buildPythonApplication pythonPackages fetchFromGitHub;
     });
 
   buildInputs = with pythonPackages; [
@@ -117,6 +125,7 @@ in buildPythonApplication rec {
 
   patches = [
     ./replaygain-default-bs1770gain.patch
+    ./keyfinder-default-bin.patch
   ];
 
   postPatch = ''
diff --git a/pkgs/tools/audio/beets/keyfinder-default-bin.patch b/pkgs/tools/audio/beets/keyfinder-default-bin.patch
new file mode 100644
index 000000000000..b0b573bbf313
--- /dev/null
+++ b/pkgs/tools/audio/beets/keyfinder-default-bin.patch
@@ -0,0 +1,35 @@
+diff --git a/beetsplug/keyfinder.py b/beetsplug/keyfinder.py
+index b6131a4..b493792 100644
+--- a/beetsplug/keyfinder.py
++++ b/beetsplug/keyfinder.py
+@@ -30,7 +30,7 @@ class KeyFinderPlugin(BeetsPlugin):
+     def __init__(self):
+         super(KeyFinderPlugin, self).__init__()
+         self.config.add({
+-            u'bin': u'KeyFinder',
++            u'bin': u'keyfinder-cli',
+             u'auto': True,
+             u'overwrite': False,
+         })
+@@ -59,7 +59,7 @@ class KeyFinderPlugin(BeetsPlugin):
+                 continue
+ 
+             try:
+-                output = util.command_output([bin, b'-f',
++                output = util.command_output([bin,
+                                               util.syspath(item.path)])
+             except (subprocess.CalledProcessError, OSError) as exc:
+                 self._log.error(u'execution failed: {0}', exc)
+diff --git a/test/test_keyfinder.py b/test/test_keyfinder.py
+index 00952fe..01ff8d4 100644
+--- a/test/test_keyfinder.py
++++ b/test/test_keyfinder.py
+@@ -46,7 +46,7 @@ class KeyFinderTest(unittest.TestCase, TestHelper):
+         item.load()
+         self.assertEqual(item['initial_key'], 'C#m')
+         self.command_output.assert_called_with(
+-            ['KeyFinder', '-f', util.syspath(item.path)])
++            ['keyfinder-cli', util.syspath(item.path)])
+ 
+     def test_add_key_on_import(self):
+         self.command_output.return_value = 'dbm'
diff --git a/pkgs/tools/audio/playerctl/default.nix b/pkgs/tools/audio/playerctl/default.nix
index bd5a6b1d592f..38df702cb16e 100644
--- a/pkgs/tools/audio/playerctl/default.nix
+++ b/pkgs/tools/audio/playerctl/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchFromGitHub, autoconf, automake, libtool, which, gnome, glib,
+{ stdenv, fetchFromGitHub, autoconf, automake, libtool, which, gnome2, glib,
   pkgconfig, gobjectIntrospection }:
 
 stdenv.mkDerivation rec {
@@ -13,7 +13,7 @@ stdenv.mkDerivation rec {
   };
 
   buildInputs = [
-    which autoconf automake libtool gnome.gtkdoc glib pkgconfig
+    which autoconf automake libtool gnome2.gtkdoc glib pkgconfig
     gobjectIntrospection
   ];
 
diff --git a/pkgs/tools/backup/bup/default.nix b/pkgs/tools/backup/bup/default.nix
index efca158efc61..f1774507225e 100644
--- a/pkgs/tools/backup/bup/default.nix
+++ b/pkgs/tools/backup/bup/default.nix
@@ -5,7 +5,7 @@
 
 assert par2Support -> par2cmdline != null;
 
-let version = "0.26"; in
+let version = "0.28.1"; in
 
 with stdenv.lib;
 
@@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
     repo = "bup";
     owner = "bup";
     rev = version;
-    sha256 = "0g7b0xl3kg0z6rn81fvzl1xnvva305i7pjih2hm68mcj0adk3v0d";
+    sha256 = "1hsxzrjvqa3pd74vmz8agiiwynrzynp1i726h0fzdsakc4adya4l";
   };
 
   buildInputs = [ git pythonPackages.python ];
diff --git a/pkgs/tools/filesystems/go-mtpfs/default.nix b/pkgs/tools/filesystems/go-mtpfs/default.nix
index 0bb92f14e15c..028aef6024b1 100644
--- a/pkgs/tools/filesystems/go-mtpfs/default.nix
+++ b/pkgs/tools/filesystems/go-mtpfs/default.nix
@@ -16,5 +16,5 @@ buildGoPackage rec {
     sha256 = "1jcqp9n8fd9psfsnhfj6w97yp0zmyxplsig8pyp2gqzh4lnb5fqm";
   };
 
-  goDeps = ./deps.json;
+  goDeps = ./deps.nix;
 }
diff --git a/pkgs/tools/filesystems/go-mtpfs/deps.json b/pkgs/tools/filesystems/go-mtpfs/deps.json
deleted file mode 100644
index 9960293f0908..000000000000
--- a/pkgs/tools/filesystems/go-mtpfs/deps.json
+++ /dev/null
@@ -1,20 +0,0 @@
-[
-    {
-        "goPackagePath": "github.com/hanwen/go-fuse",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/hanwen/go-fuse",
-            "rev": "bd746dd8bcc8c059a9d953a786a6156eb83f398e",
-            "sha256": "1dvvclp418j3d02v9717sfqhl6fw6yyddr9r3j8gsiv8nb62ib56"
-        }
-    },
-    {
-        "goPackagePath": "github.com/hanwen/usb",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/hanwen/usb",
-            "rev": "69aee4530ac705cec7c5344418d982aaf15cf0b1",
-            "sha256": "01k0c2g395j65vm1w37mmrfkg6nm900khjrrizzpmx8f8yf20dky"
-        }
-    }
-]
diff --git a/pkgs/tools/filesystems/go-mtpfs/deps.nix b/pkgs/tools/filesystems/go-mtpfs/deps.nix
new file mode 100644
index 000000000000..4bba3f237392
--- /dev/null
+++ b/pkgs/tools/filesystems/go-mtpfs/deps.nix
@@ -0,0 +1,20 @@
+[
+  {
+    goPackagePath = "github.com/hanwen/go-fuse";
+    fetch = {
+      type = "git";
+      url = "https://github.com/hanwen/go-fuse";
+      rev = "bd746dd8bcc8c059a9d953a786a6156eb83f398e";
+      sha256 = "1dvvclp418j3d02v9717sfqhl6fw6yyddr9r3j8gsiv8nb62ib56";
+    };
+  }
+  {
+    goPackagePath = "github.com/hanwen/usb";
+    fetch = {
+      type = "git";
+      url = "https://github.com/hanwen/usb";
+      rev = "69aee4530ac705cec7c5344418d982aaf15cf0b1";
+      sha256 = "01k0c2g395j65vm1w37mmrfkg6nm900khjrrizzpmx8f8yf20dky";
+    };
+  }
+]
diff --git a/pkgs/tools/filesystems/lizardfs/412.patch b/pkgs/tools/filesystems/lizardfs/412.patch
deleted file mode 100644
index a2890cad3994..000000000000
--- a/pkgs/tools/filesystems/lizardfs/412.patch
+++ /dev/null
@@ -1,43 +0,0 @@
-From 26a27dedb7bee36f3ac5f48e22b977ea001d5903 Mon Sep 17 00:00:00 2001
-From: Maksymilian Paszkiewicz <mpaszkiewicz@skytechnology.pl>
-Date: Mon, 23 May 2016 12:25:19 +0200
-Subject: [PATCH] common: Fix minor compile and copyright issues
-
-This commit adds include <cmath> directive to
-slice_read_planner.cc and fixes copyright
-statement in filesystem_operations.cc
-
-Closes #411
-Closes #412
-
-Change-Id: I3ac995708a09f64e1389871be2e961d594e4bc68
----
- src/common/slice_read_planner.cc    | 2 ++
- src/master/filesystem_operations.cc | 3 ++-
- 2 files changed, 4 insertions(+), 1 deletion(-)
-
-diff --git a/src/common/slice_read_planner.cc b/src/common/slice_read_planner.cc
-index 94c106c..d0284f1 100644
---- a/src/common/slice_read_planner.cc
-+++ b/src/common/slice_read_planner.cc
-@@ -20,6 +20,8 @@
- 
- #include "common/slice_read_planner.h"
- 
-+#include <cmath>
-+
- /*!
-  * Prepares read planner for serving selected parts of a slice type.
-  * Firstly, function checks if:
-diff --git a/src/master/filesystem_operations.cc b/src/master/filesystem_operations.cc
-index 69ff270..dc30b1f 100644
---- a/src/master/filesystem_operations.cc
-+++ b/src/master/filesystem_operations.cc
-@@ -1,5 +1,6 @@
- /*
--   Copyright 2013-2015 Skytechnology sp. z o.o..
-+   Copyright 2005-2010 Jakub Kruszona-Zawadzki, Gemius SA, 2013-2014 EditShare,
-+   2013-2016 Skytechnology sp. z o.o..
- 
-    This file is part of LizardFS.
- 
diff --git a/pkgs/tools/filesystems/lizardfs/default.nix b/pkgs/tools/filesystems/lizardfs/default.nix
index 0301d2e18fbf..a50d8341f6b0 100644
--- a/pkgs/tools/filesystems/lizardfs/default.nix
+++ b/pkgs/tools/filesystems/lizardfs/default.nix
@@ -18,13 +18,13 @@
 
 stdenv.mkDerivation rec {
   name = "lizardfs-${version}";
-  version = "3.10.0";
+  version = "3.10.2";
 
   src = fetchFromGitHub {
     owner = "lizardfs";
     repo = "lizardfs";
-    rev = "v.${version}";
-    sha256 = "18p2pj9crjqgxxxzdfcs3j3fqhinmwi7qxcf71jsw17syqwyygh8";
+    rev = "v${version}";
+    sha256 = "0xw6skprxw0wcbqh4yx8f8a4q00x0sfz42llqgd047bcbga1k5zg";
   };
 
   buildInputs = 
@@ -32,8 +32,6 @@ stdenv.mkDerivation rec {
       zlib boost pkgconfig judy pam makeWrapper
     ];
 
-  patches = [ ./412.patch ];
-
   postInstall = ''
     wrapProgram $out/sbin/lizardfs-cgiserver \
         --prefix PATH ":" "${python}/bin"
diff --git a/pkgs/tools/filesystems/squashfs/default.nix b/pkgs/tools/filesystems/squashfs/default.nix
index 5e1700af0178..a2fc5bc3d40b 100644
--- a/pkgs/tools/filesystems/squashfs/default.nix
+++ b/pkgs/tools/filesystems/squashfs/default.nix
@@ -1,21 +1,29 @@
-{ stdenv, fetchgit, zlib, xz }:
+{ stdenv, fetchFromGitHub, zlib, xz
+, lz4 ? null
+, lz4Support ? false
+}:
+
+assert lz4Support -> (lz4 != null);
 
 stdenv.mkDerivation rec {
   name = "squashfs-4.4dev";
 
-  src = fetchgit {
-    url = https://github.com/plougher/squashfs-tools.git;
+  src = fetchFromGitHub {
+    owner = "plougher";
+    repo = "squashfs-tools";
     sha256 = "059pa2shdysr3zfmwrhq28s12zbi5nyzbpzyaf5lmspgfh1493ks";
     rev = "9c1db6d13a51a2e009f0027ef336ce03624eac0d";
   };
 
-  buildInputs = [ zlib xz ];
+  buildInputs = [ zlib xz ]
+    ++ stdenv.lib.optional lz4Support lz4;
 
   preBuild = "cd squashfs-tools";
 
   installFlags = "INSTALL_DIR=\${out}/bin";
 
-  makeFlags = "XZ_SUPPORT=1";
+  makeFlags = [ "XZ_SUPPORT=1" ]
+    ++ stdenv.lib.optional lz4Support "LZ4_SUPPORT=1";
 
   meta = {
     homepage = http://squashfs.sourceforge.net/;
diff --git a/pkgs/tools/graphics/nip2/default.nix b/pkgs/tools/graphics/nip2/default.nix
index fb88a8c37d4c..d0ad0c27f20d 100644
--- a/pkgs/tools/graphics/nip2/default.nix
+++ b/pkgs/tools/graphics/nip2/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, pkgconfig, glib, libxml2, flex, bison, vips, gnome,
+{ stdenv, fetchurl, pkgconfig, glib, libxml2, flex, bison, vips, gnome2,
 fftw, gsl, goffice, libgsf }:
 
 stdenv.mkDerivation rec {
@@ -11,7 +11,7 @@ stdenv.mkDerivation rec {
 
   buildInputs =
   [ pkgconfig glib libxml2 flex bison vips
-    gnome.gtk fftw gsl goffice libgsf
+    gnome2.gtk fftw gsl goffice libgsf
   ];
 
   meta = with stdenv.lib; {
diff --git a/pkgs/tools/graphics/pdf2svg/default.nix b/pkgs/tools/graphics/pdf2svg/default.nix
index 52ca99b97645..dad611868bc2 100644
--- a/pkgs/tools/graphics/pdf2svg/default.nix
+++ b/pkgs/tools/graphics/pdf2svg/default.nix
@@ -1,5 +1,5 @@
 { stdenv, fetchFromGitHub, autoreconfHook, pkgconfig
-, cairo, gtk, poppler }:
+, cairo, gtk2, poppler }:
 
 stdenv.mkDerivation rec {
   name = "pdf2svg-${version}";
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
     sha256 = "14ffdm4y26imq99wjhkrhy9lp33165xci1l5ndwfia8hz53bl02k";
   };
 
-  buildInputs = [ autoreconfHook cairo pkgconfig poppler gtk ];
+  buildInputs = [ autoreconfHook cairo pkgconfig poppler gtk2 ];
 
   meta = with stdenv.lib; {
     description = "PDF converter to SVG format";
diff --git a/pkgs/tools/graphics/vips/default.nix b/pkgs/tools/graphics/vips/default.nix
index 6ff2ee5cd442..4fb16b497176 100644
--- a/pkgs/tools/graphics/vips/default.nix
+++ b/pkgs/tools/graphics/vips/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, pkgconfig, glib, libxml2, flex, bison, vips, gnome,
+{ stdenv, fetchurl, pkgconfig, glib, libxml2, flex, bison, vips,
   fftw, orc, lcms, imagemagick, openexr, libtiff, libjpeg, libgsf, libexif,
   python27, libpng, matio ? null, cfitsio ? null, libwebp ? null
 }:
diff --git a/pkgs/tools/inputmethods/fcitx-engines/fcitx-mozc/default.nix b/pkgs/tools/inputmethods/fcitx-engines/fcitx-mozc/default.nix
index 5366fe558770..cdd99cd7e9a5 100644
--- a/pkgs/tools/inputmethods/fcitx-engines/fcitx-mozc/default.nix
+++ b/pkgs/tools/inputmethods/fcitx-engines/fcitx-mozc/default.nix
@@ -1,5 +1,5 @@
 { clangStdenv, fetchFromGitHub, fetchurl, fetchpatch, fetchsvn, gyp, which, ninja, 
-  python, pkgconfig, protobuf, gtk, zinnia, qt4, libxcb, tegaki-zinnia-japanese,
+  python, pkgconfig, protobuf, gtk2, zinnia, qt4, libxcb, tegaki-zinnia-japanese,
   fcitx, gettext }:
 let
   japanese_usage_dictionary = fetchsvn {
@@ -23,7 +23,7 @@ in clangStdenv.mkDerivation rec {
   };
 
   nativeBuildInputs = [ gyp which ninja python pkgconfig ];
-  buildInputs = [ protobuf gtk zinnia qt4 libxcb fcitx gettext ];
+  buildInputs = [ protobuf gtk2 zinnia qt4 libxcb fcitx gettext ];
 
   postUnpack = ''
     rmdir $sourceRoot/src/third_party/japanese_usage_dictionary/
diff --git a/pkgs/tools/inputmethods/ibus-engines/ibus-mozc/default.nix b/pkgs/tools/inputmethods/ibus-engines/ibus-mozc/default.nix
index e06d2b004ee9..644725c29107 100644
--- a/pkgs/tools/inputmethods/ibus-engines/ibus-mozc/default.nix
+++ b/pkgs/tools/inputmethods/ibus-engines/ibus-mozc/default.nix
@@ -1,4 +1,4 @@
-{ clangStdenv, fetchFromGitHub, fetchsvn, gyp, which, ninja, python, pkgconfig, protobuf, ibus, gtk, zinnia, qt4, libxcb, tegaki-zinnia-japanese }:
+{ clangStdenv, fetchFromGitHub, fetchsvn, gyp, which, ninja, python, pkgconfig, protobuf, ibus, gtk2, zinnia, qt4, libxcb, tegaki-zinnia-japanese }:
 
 let
   japanese_usage_dictionary = fetchsvn {
@@ -20,7 +20,7 @@ in clangStdenv.mkDerivation rec {
   };
 
   nativeBuildInputs = [ gyp which ninja python pkgconfig ];
-  buildInputs = [ protobuf ibus gtk zinnia qt4 libxcb ];
+  buildInputs = [ protobuf ibus gtk2 zinnia qt4 libxcb ];
 
   src = fetchFromGitHub {
     owner  = "google";
diff --git a/pkgs/tools/inputmethods/nabi/default.nix b/pkgs/tools/inputmethods/nabi/default.nix
index 894c7b617600..cb33abc3213d 100644
--- a/pkgs/tools/inputmethods/nabi/default.nix
+++ b/pkgs/tools/inputmethods/nabi/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, pkgconfig, gtk, libhangul }:
+{ stdenv, fetchurl, pkgconfig, gtk2, libhangul }:
 
 stdenv.mkDerivation {
   name = "nabi-1.0.0";
@@ -8,7 +8,7 @@ stdenv.mkDerivation {
     sha256 = "0craa24pw7b70sh253arv9bg9sy4q3mhsjwfss3bnv5nf0xwnncw";
   };
 
-  buildInputs = [ gtk libhangul pkgconfig ];
+  buildInputs = [ gtk2 libhangul pkgconfig ];
 
   meta = with stdenv.lib; {
     description = "The Easy Hangul XIM";
diff --git a/pkgs/tools/misc/alarm-clock-applet/default.nix b/pkgs/tools/misc/alarm-clock-applet/default.nix
index 9a3e0b905e13..88992c8e4e30 100644
--- a/pkgs/tools/misc/alarm-clock-applet/default.nix
+++ b/pkgs/tools/misc/alarm-clock-applet/default.nix
@@ -2,7 +2,7 @@
 , glib
 , gtk2
 , gst_all_1
-, gnome
+, gnome2
 , libnotify
 , libxml2
 , libunique
@@ -30,8 +30,8 @@ stdenv.mkDerivation rec {
     gtk2
     gst_all_1.gstreamer
     gst_plugins
-    gnome.GConf
-    gnome.gnome_icon_theme
+    gnome2.GConf
+    gnome2.gnome_icon_theme
     libnotify
     libxml2
     libunique
@@ -39,7 +39,7 @@ stdenv.mkDerivation rec {
     wrapGAppsHook
   ];
 
-  propagatedUserEnvPkgs = [ gnome.GConf.out ];
+  propagatedUserEnvPkgs = [ gnome2.GConf.out ];
 
   enableParallelBuilding = true;
 
diff --git a/pkgs/tools/misc/aspcud/default.nix b/pkgs/tools/misc/aspcud/default.nix
new file mode 100644
index 000000000000..577c0a33b3ee
--- /dev/null
+++ b/pkgs/tools/misc/aspcud/default.nix
@@ -0,0 +1,44 @@
+{ stdenv, fetchurl,
+  boost, clasp, cmake, gringo, re2c
+}:
+
+let
+  version = "1.9.0";
+in
+
+stdenv.mkDerivation rec {
+  name = "aspcud-${version}";
+
+  src = fetchurl {
+    url = "mirror://sourceforge/project/potassco/aspcud/${version}/aspcud-${version}-source.tar.gz";
+    sha256 = "029035vcdk527ssf126i8ipi5zs73gqpbrg019pvm9r24rf0m373";
+  };
+
+  buildInputs = [ boost clasp cmake gringo re2c ];
+
+  buildPhase = ''
+    cmake -DCMAKE_BUILD_TYPE=Release \
+      -DGRINGO_LOC=${gringo}/bin/gringo \
+      -DCLASP_LOC=${clasp}/bin/clasp \
+      -DENCODING_LOC=$out/share/aspcud/specification.lp \
+      .
+
+    make
+  '';
+
+  installPhase = ''
+    mkdir -p $out/bin
+    cp bin/{aspcud,cudf2lp,lemon} $out/bin
+
+    mkdir -p $out/share/aspcud
+    cp ../share/aspcud/specification.lp $out/share/aspcud
+  '';
+
+  meta = with stdenv.lib; {
+    description = "Solver for package problems in CUDF format using ASP";
+    homepage = http://potasssco.sourceforge.net/;
+    platforms = platforms.linux;
+    maintainers = [ maintainers.hakuch ];
+    license = licenses.gpl3Plus;
+  };
+}
diff --git a/pkgs/tools/misc/clasp/default.nix b/pkgs/tools/misc/clasp/default.nix
new file mode 100644
index 000000000000..135eda554b36
--- /dev/null
+++ b/pkgs/tools/misc/clasp/default.nix
@@ -0,0 +1,32 @@
+{ stdenv, fetchurl }:
+
+let
+  version = "3.1.4";
+in
+
+stdenv.mkDerivation {
+  name = "clasp-${version}";
+
+  src = fetchurl {
+    url = "mirror://sourceforge/project/potassco/clasp/${version}/clasp-${version}-source.tar.gz";
+    sha256 = "1zkjqc4gp4n9p2kf3k3z8x82g42any4p3shhhivny89z1jlxi9zn";
+  };
+
+  preConfigure = "patchShebangs ./configure.sh";
+  configureScript = "./configure.sh";
+
+  preBuild = "cd build/release";
+
+  installPhase = ''
+    mkdir -p $out/bin
+    cp bin/clasp $out/bin/clasp
+  '';
+
+  meta = with stdenv.lib; {
+    description = "Answer set solver for (extended) normal and disjunctive logic programs";
+    homepage = http://potassco.sourceforge.net/;
+    platforms = platforms.all;
+    maintainers = [ maintainers.hakuch ];
+    license = licenses.gpl2Plus;
+  };
+}
diff --git a/pkgs/tools/misc/ddccontrol/default.nix b/pkgs/tools/misc/ddccontrol/default.nix
index fb11a3b87567..ddf9c38ec93a 100644
--- a/pkgs/tools/misc/ddccontrol/default.nix
+++ b/pkgs/tools/misc/ddccontrol/default.nix
@@ -1,5 +1,5 @@
 { stdenv, fetchurl, autoreconfHook, intltool, perl, perlPackages, libxml2
-, pciutils, pkgconfig, gtk, ddccontrol-db
+, pciutils, pkgconfig, gtk2, ddccontrol-db
 }:
 
 let version = "0.4.2"; in
@@ -14,7 +14,7 @@ stdenv.mkDerivation {
   nativeBuildInputs = [ autoreconfHook intltool pkgconfig ];
 
   buildInputs = [
-    perl perlPackages.libxml_perl libxml2 pciutils gtk ddccontrol-db
+    perl perlPackages.libxml_perl libxml2 pciutils gtk2 ddccontrol-db
   ];
 
   patches = [ ./automake.patch ];
diff --git a/pkgs/tools/misc/fzf/default.nix b/pkgs/tools/misc/fzf/default.nix
index 3eaf5ae5d1b3..60a7007db195 100644
--- a/pkgs/tools/misc/fzf/default.nix
+++ b/pkgs/tools/misc/fzf/default.nix
@@ -16,7 +16,7 @@ buildGoPackage rec {
 
   buildInputs = [ ncurses ];
 
-  goDeps = ./deps.json;
+  goDeps = ./deps.nix;
 
   patchPhase = ''
     sed -i -e "s|expand('<sfile>:h:h').'/bin/fzf'|'$bin/bin/fzf'|" plugin/fzf.vim
diff --git a/pkgs/tools/misc/fzf/deps.json b/pkgs/tools/misc/fzf/deps.json
deleted file mode 100644
index a856d2d5fa81..000000000000
--- a/pkgs/tools/misc/fzf/deps.json
+++ /dev/null
@@ -1,20 +0,0 @@
-[
-  {
-    "goPackagePath": "github.com/junegunn/go-runewidth",
-    "fetch": {
-      "type": "git",
-      "url": "https://github.com/junegunn/go-runewidth",
-      "rev": "63c378b851290989b19ca955468386485f118c65",
-      "sha256": "1z5mhfrpqdssn3603vwd95w69z28igwq96lh7b9rrdcx440i822d"
-    }
-  },
-  {
-    "goPackagePath": "github.com/junegunn/go-shellwords",
-    "fetch": {
-      "type": "git",
-      "url": "https://github.com/junegunn/go-shellwords",
-      "rev": "35d512af75e283aae4ca1fc3d44b159ed66189a4",
-      "sha256": "08la0axabk9hiba9mm4ypp6a116qhvdlxa1jvkxhv3d4zpjsp4n7"
-    }
-  }
-]
diff --git a/pkgs/tools/misc/fzf/deps.nix b/pkgs/tools/misc/fzf/deps.nix
new file mode 100644
index 000000000000..985308538321
--- /dev/null
+++ b/pkgs/tools/misc/fzf/deps.nix
@@ -0,0 +1,20 @@
+[
+  {
+    goPackagePath = "github.com/junegunn/go-runewidth";
+    fetch = {
+      type = "git";
+      url = "https://github.com/junegunn/go-runewidth";
+      rev = "63c378b851290989b19ca955468386485f118c65";
+      sha256 = "1z5mhfrpqdssn3603vwd95w69z28igwq96lh7b9rrdcx440i822d";
+    };
+  }
+  {
+    goPackagePath = "github.com/junegunn/go-shellwords";
+    fetch = {
+      type = "git";
+      url = "https://github.com/junegunn/go-shellwords";
+      rev = "35d512af75e283aae4ca1fc3d44b159ed66189a4";
+      sha256 = "08la0axabk9hiba9mm4ypp6a116qhvdlxa1jvkxhv3d4zpjsp4n7";
+    };
+  }
+]
diff --git a/pkgs/tools/misc/gawp/default.nix b/pkgs/tools/misc/gawp/default.nix
index 6e3fe1223fc4..7c944ceaab3f 100644
--- a/pkgs/tools/misc/gawp/default.nix
+++ b/pkgs/tools/misc/gawp/default.nix
@@ -15,5 +15,5 @@ buildGoPackage rec {
     sha256 = "0bbmbb1xxdgvqvg1ssn9d4j213li7bbbx3y42iz4fs10xv7x4r0c";
   };
 
-  goDeps = ./deps.json;
+  goDeps = ./deps.nix;
 }
diff --git a/pkgs/tools/misc/gawp/deps.json b/pkgs/tools/misc/gawp/deps.json
deleted file mode 100644
index a51c17253538..000000000000
--- a/pkgs/tools/misc/gawp/deps.json
+++ /dev/null
@@ -1,29 +0,0 @@
-[
-    {
-        "goPackagePath": "golang.org/x/sys",
-        "fetch": {
-            "type": "git",
-            "url": "https://go.googlesource.com/sys",
-            "rev": "d9157a9621b69ad1d8d77a1933590c416593f24f",
-            "sha256": "1asdbp7rj1j1m1aar1a022wpcwbml6zih6cpbxaw7b2m8v8is931"
-        }
-    },
-    {
-        "goPackagePath": "gopkg.in/fsnotify.v1",
-        "fetch": {
-            "type": "git",
-            "url": "https://gopkg.in/fsnotify.v1",
-            "rev": "96c060f6a6b7e0d6f75fddd10efeaca3e5d1bcb0",
-            "sha256": "1308z1by82fbymcra26wjzw7lpjy91kbpp2skmwqcq4q1iwwzvk2"
-        }
-    },
-    {
-        "goPackagePath": "gopkg.in/yaml.v2",
-        "fetch": {
-            "type": "git",
-            "url": "https://gopkg.in/yaml.v2",
-            "rev": "a83829b6f1293c91addabc89d0571c246397bbf4",
-            "sha256": "1m4dsmk90sbi17571h6pld44zxz7jc4lrnl4f27dpd1l8g5xvjhh"
-        }
-    }
-]
diff --git a/pkgs/tools/misc/gawp/deps.nix b/pkgs/tools/misc/gawp/deps.nix
new file mode 100644
index 000000000000..cf577a30354c
--- /dev/null
+++ b/pkgs/tools/misc/gawp/deps.nix
@@ -0,0 +1,29 @@
+[
+  {
+    goPackagePath = "golang.org/x/sys";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/sys";
+      rev = "d9157a9621b69ad1d8d77a1933590c416593f24f";
+      sha256 = "1asdbp7rj1j1m1aar1a022wpcwbml6zih6cpbxaw7b2m8v8is931";
+    };
+  }
+  {
+    goPackagePath = "gopkg.in/fsnotify.v1";
+    fetch = {
+      type = "git";
+      url = "https://gopkg.in/fsnotify.v1";
+      rev = "96c060f6a6b7e0d6f75fddd10efeaca3e5d1bcb0";
+      sha256 = "1308z1by82fbymcra26wjzw7lpjy91kbpp2skmwqcq4q1iwwzvk2";
+    };
+  }
+  {
+    goPackagePath = "gopkg.in/yaml.v2";
+    fetch = {
+      type = "git";
+      url = "https://gopkg.in/yaml.v2";
+      rev = "a83829b6f1293c91addabc89d0571c246397bbf4";
+      sha256 = "1m4dsmk90sbi17571h6pld44zxz7jc4lrnl4f27dpd1l8g5xvjhh";
+    };
+  }
+]
diff --git a/pkgs/tools/misc/gnokii/default.nix b/pkgs/tools/misc/gnokii/default.nix
index d1551eb4ccd6..adad66c9bfa4 100644
--- a/pkgs/tools/misc/gnokii/default.nix
+++ b/pkgs/tools/misc/gnokii/default.nix
@@ -1,5 +1,5 @@
 { stdenv, fetchurl, intltool, perl, gettext, libusb, pkgconfig, bluez
-, readline, pcsclite, libical, gtk, glib, libXpm }:
+, readline, pcsclite, libical, gtk2, glib, libXpm }:
 
 stdenv.mkDerivation rec {
   name = "gnokii-${version}";
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
 
   buildInputs = [
     perl intltool gettext libusb
-    glib gtk pkgconfig bluez readline
+    glib gtk2 pkgconfig bluez readline
     libXpm pcsclite libical
   ];
 
diff --git a/pkgs/tools/misc/gparted/default.nix b/pkgs/tools/misc/gparted/default.nix
index d73def7ab9bb..cdf2a4aca86c 100644
--- a/pkgs/tools/misc/gparted/default.nix
+++ b/pkgs/tools/misc/gparted/default.nix
@@ -1,5 +1,5 @@
 { stdenv, fetchurl, intltool, gettext, makeWrapper
-, parted, gtk, glib, libuuid, pkgconfig, gtkmm, libxml2, hicolor_icon_theme
+, parted, glib, libuuid, pkgconfig, gtkmm2, libxml2, hicolor_icon_theme
 , gpart, hdparm, procps, utillinux
 }:
 
@@ -13,7 +13,7 @@ stdenv.mkDerivation rec {
 
   configureFlags = [ "--disable-doc" ];
 
-  buildInputs = [ parted gtk glib libuuid gtkmm libxml2 hicolor_icon_theme ];
+  buildInputs = [ parted glib libuuid gtkmm2 libxml2 hicolor_icon_theme ];
   nativeBuildInputs = [ intltool gettext makeWrapper pkgconfig ];
 
   postInstall = ''
diff --git a/pkgs/tools/misc/graylog/default.nix b/pkgs/tools/misc/graylog/default.nix
index 5a007a0ac727..829c524113b9 100644
--- a/pkgs/tools/misc/graylog/default.nix
+++ b/pkgs/tools/misc/graylog/default.nix
@@ -1,12 +1,12 @@
 { stdenv, fetchurl }:
 
 stdenv.mkDerivation rec {
-  version = "2.1.0";
+  version = "2.1.1";
   name = "graylog-${version}";
 
   src = fetchurl {
     url = "https://packages.graylog2.org/releases/graylog/graylog-${version}.tgz";
-    sha256 = "09rcgjxnv235a9rvyfcfdjvmr3rjb0jg5sph8sqvzgspvas9pgvn";
+    sha256 = "0p7vx6b4k6lzxi0v9x44wbrvplw93288lpixpwckc0xx0r7js07z";
   };
 
   dontBuild = true;
diff --git a/pkgs/tools/misc/gringo/default.nix b/pkgs/tools/misc/gringo/default.nix
new file mode 100644
index 000000000000..ae71c01314cf
--- /dev/null
+++ b/pkgs/tools/misc/gringo/default.nix
@@ -0,0 +1,39 @@
+{ stdenv, fetchurl,
+  bison, re2c, scons
+}:
+
+let
+  version = "4.5.4";
+in
+
+stdenv.mkDerivation rec {
+  name = "gringo-${version}";
+
+  src = fetchurl {
+    url = "mirror://sourceforge/project/potassco/gringo/${version}/gringo-${version}-source.tar.gz";
+    sha256 = "16k4pkwyr2mh5w8j91vhxh9aff7f4y31npwf09w6f8q63fxvpy41";
+  };
+
+  buildInputs = [ bison re2c scons ];
+
+  patches = [
+    ./gringo-4.5.4-cmath.patch
+  ];
+
+  buildPhase = ''
+    scons --build-dir=release
+  '';
+
+  installPhase = ''
+    mkdir -p $out/bin
+    cp build/release/gringo $out/bin/gringo
+  '';
+
+  meta = with stdenv.lib; {
+    description = "Converts input programs with first-order variables to equivalent ground programs";
+    homepage = http://potassco.sourceforge.net/;
+    platforms = platforms.linux;
+    maintainers = [ maintainers.hakuch ];
+    license = licenses.gpl3Plus;
+  };
+}
diff --git a/pkgs/tools/misc/gringo/gringo-4.5.4-cmath.patch b/pkgs/tools/misc/gringo/gringo-4.5.4-cmath.patch
new file mode 100644
index 000000000000..7b5510e2344b
--- /dev/null
+++ b/pkgs/tools/misc/gringo/gringo-4.5.4-cmath.patch
@@ -0,0 +1,11 @@
+--- gringo/libgringo/src/term.cc~	2016-07-12 23:56:10.593577749 -0400
++++ gringo/libgringo/src/term.cc	2016-07-12 23:52:35.169968338 -0400
+@@ -22,6 +22,8 @@
+ #include "gringo/logger.hh"
+ #include "gringo/graph.hh"
+ 
++#include <cmath>
++
+ namespace Gringo {
+ 
+ // {{{ definition of Defines
diff --git a/pkgs/tools/misc/gsmartcontrol/default.nix b/pkgs/tools/misc/gsmartcontrol/default.nix
index 5f21559d4715..f362e7c53a24 100644
--- a/pkgs/tools/misc/gsmartcontrol/default.nix
+++ b/pkgs/tools/misc/gsmartcontrol/default.nix
@@ -1,4 +1,4 @@
-{ fetchurl, stdenv, smartmontools, gtk, gtkmm, libglademm, pkgconfig, pcre }:
+{ fetchurl, stdenv, smartmontools, gtkmm2, libglademm, pkgconfig, pcre }:
 
 stdenv.mkDerivation rec {
   version="0.8.7";
@@ -9,7 +9,7 @@ stdenv.mkDerivation rec {
     sha256 = "1ipykzqpfvlr84j38hr7q2cag4imrn1gql10slp8bfrs4h1si3vh";
   };
 
-  buildInputs = [ smartmontools gtk gtkmm libglademm pkgconfig pcre ];
+  buildInputs = [ smartmontools gtkmm2 libglademm pkgconfig pcre ];
 
   #installTargets = "install datainstall";
 
diff --git a/pkgs/tools/misc/i3cat/default.nix b/pkgs/tools/misc/i3cat/default.nix
index 1cda3149bb42..52e7793d9744 100644
--- a/pkgs/tools/misc/i3cat/default.nix
+++ b/pkgs/tools/misc/i3cat/default.nix
@@ -13,5 +13,5 @@ buildGoPackage rec {
     sha256 = "1xlm5c9ajdb71985nq7hcsaraq2z06przbl6r4ykvzi8w2lwgv72";
   };
 
-  goDeps = ./deps.json;
+  goDeps = ./deps.nix;
 }
diff --git a/pkgs/tools/misc/i3cat/deps.json b/pkgs/tools/misc/i3cat/deps.json
deleted file mode 100644
index 0db944a83613..000000000000
--- a/pkgs/tools/misc/i3cat/deps.json
+++ /dev/null
@@ -1,11 +0,0 @@
-[
-    {
-        "goPackagePath": "github.com/vincent-petithory/structfield",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/vincent-petithory/structfield",
-            "rev": "01a738558a47fbf16712994d1737fb31c77e7d11",
-            "sha256": "1kyx71z13mf6hc8ly0j0b9zblgvj5lzzvgnc3fqh61wgxrsw24dw"
-        }
-    }
-]
diff --git a/pkgs/tools/misc/i3cat/deps.nix b/pkgs/tools/misc/i3cat/deps.nix
new file mode 100644
index 000000000000..01e85cbd824d
--- /dev/null
+++ b/pkgs/tools/misc/i3cat/deps.nix
@@ -0,0 +1,11 @@
+[
+  {
+    goPackagePath = "github.com/vincent-petithory/structfield";
+    fetch = {
+      type = "git";
+      url = "https://github.com/vincent-petithory/structfield";
+      rev = "01a738558a47fbf16712994d1737fb31c77e7d11";
+      sha256 = "1kyx71z13mf6hc8ly0j0b9zblgvj5lzzvgnc3fqh61wgxrsw24dw";
+    };
+  }
+]
diff --git a/pkgs/tools/misc/man-db/default.nix b/pkgs/tools/misc/man-db/default.nix
index 9724278b6087..b049e0706e9a 100644
--- a/pkgs/tools/misc/man-db/default.nix
+++ b/pkgs/tools/misc/man-db/default.nix
@@ -15,6 +15,12 @@ stdenv.mkDerivation rec {
   buildInputs = [ libpipeline db groff ];
   troff="${groff}/bin/groff";
 
+  postPatch = ''
+    substituteInPlace src/man_db.conf.in \
+      --replace "/usr/local/share" "/run/current-system/sw/share" \
+      --replace "/usr/share" "/run/current-system/sw/share"
+  '';
+
   configureFlags = [
     "--disable-setuid"
     "--localstatedir=/var"
diff --git a/pkgs/tools/misc/mc/default.nix b/pkgs/tools/misc/mc/default.nix
index 8616a40df43f..fbd2c642b9d2 100644
--- a/pkgs/tools/misc/mc/default.nix
+++ b/pkgs/tools/misc/mc/default.nix
@@ -1,5 +1,5 @@
 { stdenv, fetchurl, pkgconfig, glib, gpm, file, e2fsprogs
-, libX11, libICE, perl, zip, unzip, gettext, slang}:
+, libX11, libICE, perl, zip, unzip, gettext, slang, libssh2, openssl}:
 
 stdenv.mkDerivation rec {
   name = "mc-${version}";
@@ -10,7 +10,10 @@ stdenv.mkDerivation rec {
     sha256 = "0fvqzffppj0aja9hi0k1xdjg5m6s99immlla1y9yzn5fp8vwpl36";    
   };
   
-  buildInputs = [ pkgconfig perl glib gpm slang zip unzip file gettext libX11 libICE e2fsprogs ];
+  buildInputs = [ pkgconfig perl glib gpm slang zip unzip file gettext libX11 libICE e2fsprogs
+    libssh2 openssl ];
+
+  configureFlags = [ "--enable-vfs-smb" ];
 
   meta = {
     description = "File Manager and User Shell for the GNU Project";
diff --git a/pkgs/tools/misc/mongodb-tools/default.nix b/pkgs/tools/misc/mongodb-tools/default.nix
index 113b8b2b4cec..f67fd383f18d 100644
--- a/pkgs/tools/misc/mongodb-tools/default.nix
+++ b/pkgs/tools/misc/mongodb-tools/default.nix
@@ -21,7 +21,7 @@ buildGoPackage rec {
     sha256 = "142vxgniri1mfy2xmfgxhbdp6k6h8c5milv454krv1b51v43hsbm";
   };
 
-  goDeps = ./deps.json;
+  goDeps = ./deps.nix;
 
   # Mongodb incorrectly names all of their binaries main
   # Let's work around this with our own installer
diff --git a/pkgs/tools/misc/mongodb-tools/deps.json b/pkgs/tools/misc/mongodb-tools/deps.json
deleted file mode 100644
index c1cc7f96f750..000000000000
--- a/pkgs/tools/misc/mongodb-tools/deps.json
+++ /dev/null
@@ -1,47 +0,0 @@
-[
-    {
-        "goPackagePath": "golang.org/x/crypto",
-        "fetch": {
-            "type": "git",
-            "url": "https://go.googlesource.com/crypto",
-            "rev": "575fdbe86e5dd89229707ebec0575ce7d088a4a6",
-            "sha256": "1kgv1mkw9y404pk3lcwbs0vgl133mwyp294i18jg9hp10s5d56xa"
-        }
-    },
-    {
-        "goPackagePath": "github.com/howeyc/gopass",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/howeyc/gopass",
-            "rev": "2c70fa70727c953c51695f800f25d6b44abb368e",
-            "sha256": "152lrkfxk205rlxiign0w5wb0fmfh910yz4jhlv4f4l1qr1h2lx8"
-        }
-    },
-    {
-        "goPackagePath": "gopkg.in/mgo.v2",
-        "fetch": {
-            "type": "git",
-            "url": "https://gopkg.in/mgo.v2",
-            "rev": "c6a7dce14133ccac2dcac3793f1d6e2ef048503a",
-            "sha256": "0rg232q1bkq3y3kd5816hgk1jpf7i38aha5q5ia7j6p9xashz7vj"
-        }
-    },
-    {
-        "goPackagePath": "gopkg.in/tomb.v2",
-        "fetch": {
-            "type": "git",
-            "url": "https://gopkg.in/tomb.v2",
-            "rev": "14b3d72120e8d10ea6e6b7f87f7175734b1faab8",
-            "sha256": "1nza31jvkpka5431c4bdbirvjdy36b1b55sbzljqhqih25jrcjx5"
-        }
-    },
-    {
-        "goPackagePath": "github.com/jessevdk/go-flags",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/jessevdk/go-flags",
-            "rev": "1b89bf73cd2c3a911d7b2a279ab085c4a18cf539",
-            "sha256": "027nglc5xx1cm03z9sisg0iqrhwcj6gh5z254rrpl8p4fwrxx680"
-        }
-    }
-]
diff --git a/pkgs/tools/misc/mongodb-tools/deps.nix b/pkgs/tools/misc/mongodb-tools/deps.nix
new file mode 100644
index 000000000000..437dcd649373
--- /dev/null
+++ b/pkgs/tools/misc/mongodb-tools/deps.nix
@@ -0,0 +1,47 @@
+[
+  {
+    goPackagePath = "golang.org/x/crypto";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/crypto";
+      rev = "575fdbe86e5dd89229707ebec0575ce7d088a4a6";
+      sha256 = "1kgv1mkw9y404pk3lcwbs0vgl133mwyp294i18jg9hp10s5d56xa";
+    };
+  }
+  {
+    goPackagePath = "github.com/howeyc/gopass";
+    fetch = {
+      type = "git";
+      url = "https://github.com/howeyc/gopass";
+      rev = "2c70fa70727c953c51695f800f25d6b44abb368e";
+      sha256 = "152lrkfxk205rlxiign0w5wb0fmfh910yz4jhlv4f4l1qr1h2lx8";
+    };
+  }
+  {
+    goPackagePath = "gopkg.in/mgo.v2";
+    fetch = {
+      type = "git";
+      url = "https://gopkg.in/mgo.v2";
+      rev = "c6a7dce14133ccac2dcac3793f1d6e2ef048503a";
+      sha256 = "0rg232q1bkq3y3kd5816hgk1jpf7i38aha5q5ia7j6p9xashz7vj";
+    };
+  }
+  {
+    goPackagePath = "gopkg.in/tomb.v2";
+    fetch = {
+      type = "git";
+      url = "https://gopkg.in/tomb.v2";
+      rev = "14b3d72120e8d10ea6e6b7f87f7175734b1faab8";
+      sha256 = "1nza31jvkpka5431c4bdbirvjdy36b1b55sbzljqhqih25jrcjx5";
+    };
+  }
+  {
+    goPackagePath = "github.com/jessevdk/go-flags";
+    fetch = {
+      type = "git";
+      url = "https://github.com/jessevdk/go-flags";
+      rev = "1b89bf73cd2c3a911d7b2a279ab085c4a18cf539";
+      sha256 = "027nglc5xx1cm03z9sisg0iqrhwcj6gh5z254rrpl8p4fwrxx680";
+    };
+  }
+]
diff --git a/pkgs/tools/misc/tmuxp/default.nix b/pkgs/tools/misc/tmuxp/default.nix
index 91a55694f853..1f1ec0437f86 100644
--- a/pkgs/tools/misc/tmuxp/default.nix
+++ b/pkgs/tools/misc/tmuxp/default.nix
@@ -11,7 +11,17 @@ pythonPackages.buildPythonApplication rec {
     sha256 = "05z5ssv9glsqmcy9fdq06bawy1274dnzqsqd3a4z4jd0w6j09smn";
   };
 
-  buildInputs = with pythonPackages; [ pytest ];
+  patchPhase = ''
+    # Dependencies required for testing shouldn't pinned to
+    # a specific version.
+    substituteInPlace requirements/test.txt \
+      --replace "==" ">="
+  '';
+
+  buildInputs = with pythonPackages; [
+    pytest
+    pytest-rerunfailures
+  ];
 
   propagatedBuildInputs = with pythonPackages; [
     click colorama kaptan libtmux
diff --git a/pkgs/tools/misc/upower-notify/default.nix b/pkgs/tools/misc/upower-notify/default.nix
index d02e2865c8f5..ff8e7873839b 100644
--- a/pkgs/tools/misc/upower-notify/default.nix
+++ b/pkgs/tools/misc/upower-notify/default.nix
@@ -19,5 +19,5 @@ buildGoPackage rec {
     sha256 = "16zlvn53p9m10ph8n9gps51fkkvl6sf4afdzni6azk05j0ng49jw";
   };
 
-  goDeps = ./deps.json;
+  goDeps = ./deps.nix;
 }
diff --git a/pkgs/tools/misc/upower-notify/deps.json b/pkgs/tools/misc/upower-notify/deps.json
deleted file mode 100644
index 96db25d0c7d5..000000000000
--- a/pkgs/tools/misc/upower-notify/deps.json
+++ /dev/null
@@ -1,11 +0,0 @@
-[
-    {
-        "goPackagePath": "github.com/godbus/dbus",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/godbus/dbus",
-            "rev": "32c6cc29c14570de4cf6d7e7737d68fb2d01ad15",
-            "sha256": "0v401f761l88yapiaw23pxvxviqrwl2r2vfd6lq02044i7x4i5r3"
-        }
-    }
-]
diff --git a/pkgs/tools/misc/upower-notify/deps.nix b/pkgs/tools/misc/upower-notify/deps.nix
new file mode 100644
index 000000000000..8a729857b819
--- /dev/null
+++ b/pkgs/tools/misc/upower-notify/deps.nix
@@ -0,0 +1,11 @@
+[
+  {
+    goPackagePath = "github.com/godbus/dbus";
+    fetch = {
+      type = "git";
+      url = "https://github.com/godbus/dbus";
+      rev = "32c6cc29c14570de4cf6d7e7737d68fb2d01ad15";
+      sha256 = "0v401f761l88yapiaw23pxvxviqrwl2r2vfd6lq02044i7x4i5r3";
+    };
+  }
+]
diff --git a/pkgs/tools/misc/xburst-tools/default.nix b/pkgs/tools/misc/xburst-tools/default.nix
index 56d16fbd9055..408879a45345 100644
--- a/pkgs/tools/misc/xburst-tools/default.nix
+++ b/pkgs/tools/misc/xburst-tools/default.nix
@@ -33,6 +33,6 @@ stdenv.mkDerivation {
     license = stdenv.lib.licenses.gpl3;
     homepage = http://www.linux-mtd.infradead.org/;
     maintainers = with stdenv.lib.maintainers; [viric];
-    platforms = with stdenv.lib.platforms; linux;
+    platforms = stdenv.lib.platforms.x86_64;
   };
 }
diff --git a/pkgs/tools/misc/xflux/gui.nix b/pkgs/tools/misc/xflux/gui.nix
index 0cf30942e739..8300c8ef30af 100644
--- a/pkgs/tools/misc/xflux/gui.nix
+++ b/pkgs/tools/misc/xflux/gui.nix
@@ -1,40 +1,45 @@
-{ stdenv, pkgs, fetchFromGitHub, buildPythonPackage,
+{ stdenv, fetchFromGitHub, buildPythonPackage,
   pexpect,
   pyGtkGlade,
   pygobject,
   pyxdg,
   gnome_python,
+  libappindicator-gtk2,
+  xflux,
+  python
 }:
 buildPythonPackage rec {
-  version = "1.1.1";
   name = "xflux-gui-${version}";
+  version = "2016-08-08";
 
   src = fetchFromGitHub {
     repo = "xflux-gui";
     owner = "xflux-gui";
-    rev = "d897dfd";
-    sha256 = "1mx1r2hz3g3waafn4w8hql0gaasfizbzz60bk5llw007k4k8892r";
+    rev = "4125e70b6ad0aeda7de46b3a7083a26c392555dc";
+    sha256 = "1l56f59hnjyi7nn8wn3dfdx6lw2qjbrhdlcfz0qvwj6b0953f2s7";
   };
 
-  # remove messing with shipped binary
-  patches = [ ./setup.patch ];
-
   # not sure if these need to be propagated or not?
   propagatedBuildInputs = [
     pexpect
     pyGtkGlade
     pygobject
     pyxdg
-    pkgs.libappindicator-gtk2
+    libappindicator-gtk2
     gnome_python
   ];
 
   buildInputs = [
-    pkgs.xflux
+    xflux
   ];
 
   postPatch = ''
-     substituteInPlace src/fluxgui/xfluxcontroller.py --replace "pexpect.spawn(\"xflux\"" "pexpect.spawn(\"${pkgs.xflux}/bin/xflux\""
+     substituteInPlace src/fluxgui/xfluxcontroller.py --replace "pexpect.spawn(\"xflux\"" "pexpect.spawn(\"${xflux}/bin/xflux\""
+  '';
+
+  postFixup = ''
+    wrapPythonPrograms
+    patchPythonScript $out/${python.sitePackages}/fluxgui/fluxapp.py
   '';
 
   meta = {
diff --git a/pkgs/tools/misc/xflux/setup.patch b/pkgs/tools/misc/xflux/setup.patch
deleted file mode 100644
index c36f81f7d808..000000000000
--- a/pkgs/tools/misc/xflux/setup.patch
+++ /dev/null
@@ -1,28 +0,0 @@
-diff --git a/setup.py b/setup.py
-index e11f199..b1cb0e5 100644
---- a/setup.py
-+++ b/setup.py
-@@ -4,13 +4,6 @@ from distutils.core import setup
- from sys import maxsize
- from os import rename
- 
--# Determines which is the appropriate executable for 32-bit
--if maxsize == 2147483647:
--    rename("xflux32", "xflux")
--# ... or 64-bit processors
--elif maxsize == 9223372036854775807:
--    rename("xflux64", "xflux")
--
- setup(name = "f.lux indicator applet",
-     version = "1.1.8",
-     description = "f.lux indicator applet - better lighting for your computer",
-@@ -22,8 +15,7 @@ setup(name = "f.lux indicator applet",
-     packages = ["fluxgui",],
-     package_data = {"fluxgui" : ["*.glade"] },
-     data_files=[('share/icons/hicolor/scalable/apps', ['fluxgui.svg', 'fluxgui-light.svg', 'fluxgui-dark.svg']),
--            ('share/applications', ['desktop/fluxgui.desktop']),
--            ('bin', ['xflux']),],
-+            ('share/applications', ['desktop/fluxgui.desktop']),],
-     scripts = ["fluxgui"],
-     long_description = """f.lux indicator applet is an indicator applet to
-     control xflux, an application that makes the color of your computer's
diff --git a/pkgs/tools/networking/connman-notify/default.nix b/pkgs/tools/networking/connman-notify/default.nix
index 4f70888fca63..b565b35a929b 100644
--- a/pkgs/tools/networking/connman-notify/default.nix
+++ b/pkgs/tools/networking/connman-notify/default.nix
@@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
   buildInputs = [
     pythonPackages.python
     pythonPackages.dbus-python
-    pythonPackages.pygobject
+    pythonPackages.pygobject2
     pythonPackages.pygtk
     pythonPackages.notify
   ];
diff --git a/pkgs/tools/networking/curl/7.15.nix b/pkgs/tools/networking/curl/7.15.nix
deleted file mode 100644
index c3c16cc08b44..000000000000
--- a/pkgs/tools/networking/curl/7.15.nix
+++ /dev/null
@@ -1,79 +0,0 @@
-{ stdenv, fetchurl
-, zlibSupport ? false, zlib ? null
-, sslSupport ? false, openssl ? null
-, scpSupport ? false, libssh2 ? null
-, gssSupport ? false, gss ? null
-, c-aresSupport ? false, c-ares ? null
-, linkStatic ? false
-}:
-
-assert zlibSupport -> zlib != null;
-assert sslSupport -> openssl != null;
-assert scpSupport -> libssh2 != null;
-assert c-aresSupport -> c-ares != null;
-
-stdenv.mkDerivation rec {
-  name = "curl-7.15.0";
-
-  src = fetchurl {
-    url = "http://curl.haxx.se/download/archeology/${name}.tar.gz";
-    sha256 = "061bgjm6rv0l9804vmm4jvr023l52qvmy9qq4zjv4lgqhlljvhz3";
-  };
-
-  patches = [ ./disable-ca-install.patch ];
-
-  # Zlib and OpenSSL must be propagated because `libcurl.la' contains
-  # "-lz -lssl", which aren't necessary direct build inputs of
-  # applications that use Curl.
-  propagatedBuildInputs = with stdenv.lib;
-    optional zlibSupport zlib ++
-    optional gssSupport gss ++
-    optional c-aresSupport c-ares ++
-    optional sslSupport openssl;
-
-  preConfigure = ''
-    sed -e 's|/usr/bin|/no-such-path|g' -i.bak configure
-  '';
-
-  configureFlags = [
-      "--with-ca-bundle=/etc/ssl/certs/ca-certificates.crt"
-      ( if sslSupport then "--with-ssl=${openssl.dev}" else "--without-ssl" )
-      ( if scpSupport then "--with-libssh2=${libssh2.dev}" else "--without-libssh2" )
-    ]
-    ++ stdenv.lib.optional c-aresSupport "--enable-ares=${c-ares}"
-    ++ stdenv.lib.optional gssSupport "--with-gssapi=${gss}"
-    ++ stdenv.lib.optionals linkStatic [ "--enable-static" "--disable-shared" ]
-  ;
-
-  dontDisableStatic = linkStatic;
-
-  LDFLAGS = if linkStatic then "-static" else "";
-  CXX = "g++";
-  CXXCPP = "g++ -E";
-
-  # libtool hack to get a static binary. Notice that to 'configure' I passed
-  # other LDFLAGS, because it doesn't use libtool for linking in the tests.
-  makeFlags = if linkStatic then "LDFLAGS=-all-static" else "";
-
-  crossAttrs = {
-    # We should refer to the cross built openssl
-    # For the 'urandom', maybe it should be a cross-system option
-    configureFlags = [
-        ( if sslSupport then "--with-ssl=${openssl.crossDrv}" else "--without-ssl" )
-        "--with-random /dev/urandom"
-      ]
-      ++ stdenv.lib.optionals linkStatic [ "--enable-static" "--disable-shared" ]
-    ;
-  };
-
-  passthru = {
-    inherit sslSupport openssl;
-  };
-
-  meta = {
-    homepage = "http://curl.haxx.se/";
-    description = "A command line tool for transferring files with URL syntax";
-    platforms = with stdenv.lib.platforms; allBut darwin;
-    broken = true;
-  };
-}
diff --git a/pkgs/tools/networking/gftp/default.nix b/pkgs/tools/networking/gftp/default.nix
index 2b5aae72de42..b122f532630d 100644
--- a/pkgs/tools/networking/gftp/default.nix
+++ b/pkgs/tools/networking/gftp/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, gtk, readline, ncurses, gettext, openssl, pkgconfig }:
+{ stdenv, fetchurl, gtk2, readline, ncurses, gettext, openssl, pkgconfig }:
 
 stdenv.mkDerivation {
   name = "gftp-2.0.19";
@@ -8,7 +8,7 @@ stdenv.mkDerivation {
     sha256 = "1z8b26n23k0sjbxgrix646b06cnpndpq7cbcj0ilsvvdx5ms81jk";
   };
 
-  buildInputs = [ gtk readline ncurses gettext openssl pkgconfig ];
+  buildInputs = [ gtk2 readline ncurses gettext openssl pkgconfig ];
 
   meta = { 
     description = "GTK+-based FTP client";
diff --git a/pkgs/tools/networking/hping/default.nix b/pkgs/tools/networking/hping/default.nix
index 23322d5b8f22..4b14c9db9630 100644
--- a/pkgs/tools/networking/hping/default.nix
+++ b/pkgs/tools/networking/hping/default.nix
@@ -40,10 +40,11 @@ stdenv.mkDerivation rec {
     ln -vs hping3.8.gz "$out/share/man/man8/hping2.8.gz"
   '';
 
-  meta = {
+  meta = with stdenv.lib; {
     description = "A command-line oriented TCP/IP packet assembler/analyzer";
     homepage = "http://www.hping.org/";
-    license = stdenv.lib.licenses.gpl2;
-    platforms = stdenv.lib.platforms.all;
+    license = licenses.gpl2;
+    platforms = platforms.all;
+    broken = stdenv.isDarwin;
   };
 }
diff --git a/pkgs/tools/networking/mtr/default.nix b/pkgs/tools/networking/mtr/default.nix
index af5155695f48..c96e5cac367c 100644
--- a/pkgs/tools/networking/mtr/default.nix
+++ b/pkgs/tools/networking/mtr/default.nix
@@ -1,7 +1,7 @@
 {stdenv, fetchurl, ncurses, autoconf
-, withGtk ? false, gtk ? null}:
+, withGtk ? false, gtk2 ? null}:
 
-assert withGtk -> gtk != null;
+assert withGtk -> gtk2 != null;
 
 with stdenv.lib;
 stdenv.mkDerivation rec {
@@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
 
   configureFlags = optionalString (!withGtk) "--without-gtk";
 
-  buildInputs = [ autoconf ncurses ] ++ optional withGtk gtk;
+  buildInputs = [ autoconf ncurses ] ++ optional withGtk gtk2;
 
   meta = {
     homepage = http://www.bitwizard.nl/mtr/;
diff --git a/pkgs/tools/networking/ngrok/default.nix b/pkgs/tools/networking/ngrok/default.nix
index 9644fa069722..e354ad223b8c 100644
--- a/pkgs/tools/networking/ngrok/default.nix
+++ b/pkgs/tools/networking/ngrok/default.nix
@@ -14,7 +14,7 @@ buildGoPackage rec {
     sha256 = "1r4nc9knp0nxg4vglg7v7jbyd1nh1j2590l720ahll8a4fbsx5a4";
   };
 
-  goDeps = ./deps.json;
+  goDeps = ./deps.nix;
 
   buildInputs = [ go-bindata ];
 
diff --git a/pkgs/tools/networking/ngrok/deps.json b/pkgs/tools/networking/ngrok/deps.json
deleted file mode 100644
index 943967b73428..000000000000
--- a/pkgs/tools/networking/ngrok/deps.json
+++ /dev/null
@@ -1,101 +0,0 @@
-[
-    {
-        "goPackagePath": "github.com/gorilla/websocket",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/gorilla/websocket",
-            "rev": "a622679ebd7a3b813862379232f645f8e690e43f",
-            "sha256": "1nc9jbcmgya1i6dmf6sbcqsnxi9hbjg6dz1z0k7zmc6xdwlq0y4q"
-        }
-    },
-    {
-        "goPackagePath": "github.com/rcrowley/go-metrics",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/rcrowley/go-metrics",
-            "rev": "1ce93efbc8f9c568886b2ef85ce305b2217b3de3",
-            "sha256": "06gg72krlmd0z3zdq6s716blrga95pyj8dc2f2psfbknbkyrkfqa"
-        }
-    },
-    {
-        "goPackagePath": "github.com/inconshreveable/go-vhost",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/inconshreveable/go-vhost",
-            "rev": "c4c28117502e4bf00960c8282b2d1c51c865fe2c",
-            "sha256": "1rway6sls6fl2s2jk20ajj36rrlzh9944ncc9pdd19kifix54z32"
-        }
-    },
-    {
-        "goPackagePath": "code.google.com/p/log4go",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/ccpaging/log4go",
-            "rev": "cb4cc51cd03958183d3b637d0750497d88c2f7a8",
-            "sha256": "0l9f86zzhla9hq35q4xhgs837283qrm4gxbp5lrwwls54ifiq7k2"
-        }
-    },
-    {
-        "goPackagePath": "github.com/daviddengcn/go-colortext",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/daviddengcn/go-colortext",
-            "rev": "13eaeb896f5985a1ab74ddea58707a73d875ba57",
-            "sha256": "0618xs9lc5xfp5zkkb5j47dr7i30ps3zj5fj0zpv8afqh2cc689x"
-        }
-    },
-    {
-        "goPackagePath": "gopkg.in/yaml.v1",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/go-yaml/yaml",
-            "rev": "b0c168ac0cf9493da1f9bb76c34b26ffef940b4a",
-            "sha256": "0jbdy41pplf2d1j24qwr8gc5qsig6ai5ch8rwgvg72kq9q0901cy"
-        }
-    },
-    {
-        "goPackagePath": "github.com/inconshreveable/mousetrap",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/inconshreveable/mousetrap",
-            "rev": "9dbb96d2c3a964935b0870b5abaea13c98b483aa",
-            "sha256": "1f9g8vm18qv1rcb745a4iahql9vfrz0jni9mnzriab2wy1pfdl5b"
-        }
-    },
-    {
-        "goPackagePath": "github.com/nsf/termbox-go",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/nsf/termbox-go",
-            "rev": "9aecf65084a5754f12d27508fa2e6ed56851953b",
-            "sha256": "16sak07bgvmax4zxfrd4jia1dgygk733xa8vk8cdx28z98awbfsh"
-        }
-    },
-    {
-        "goPackagePath": "gopkg.in/inconshreveable/go-update.v0",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/inconshreveable/go-update",
-            "rev": "d8b0b1d421aa1cbf392c05869f8abbc669bb7066",
-            "sha256": "0cvkik2w368fzimx3y29ncfgw7004qkbdf2n3jy5czvzn35q7dpa"
-        }
-    },
-    {
-        "goPackagePath": "github.com/kardianos/osext",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/kardianos/osext",
-            "rev": "29ae4ffbc9a6fe9fb2bc5029050ce6996ea1d3bc",
-            "sha256": "1mawalaz84i16njkz6f9fd5jxhcbxkbsjnav3cmqq2dncv2hyv8a"
-        }
-    },
-    {
-        "goPackagePath": "github.com/kr/binarydist",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/kr/binarydist",
-            "rev": "9955b0ab8708602d411341e55fffd7e0700f86bd",
-            "sha256": "11wncbbbrdcxl5ff3h6w8vqfg4bxsf8709mh6vda0cv236flkyn3"
-        }
-    }
-]
diff --git a/pkgs/tools/networking/ngrok/deps.nix b/pkgs/tools/networking/ngrok/deps.nix
new file mode 100644
index 000000000000..1db3c3e65191
--- /dev/null
+++ b/pkgs/tools/networking/ngrok/deps.nix
@@ -0,0 +1,101 @@
+[
+  {
+    goPackagePath = "github.com/gorilla/websocket";
+    fetch = {
+      type = "git";
+      url = "https://github.com/gorilla/websocket";
+      rev = "a622679ebd7a3b813862379232f645f8e690e43f";
+      sha256 = "1nc9jbcmgya1i6dmf6sbcqsnxi9hbjg6dz1z0k7zmc6xdwlq0y4q";
+    };
+  }
+  {
+    goPackagePath = "github.com/rcrowley/go-metrics";
+    fetch = {
+      type = "git";
+      url = "https://github.com/rcrowley/go-metrics";
+      rev = "1ce93efbc8f9c568886b2ef85ce305b2217b3de3";
+      sha256 = "06gg72krlmd0z3zdq6s716blrga95pyj8dc2f2psfbknbkyrkfqa";
+    };
+  }
+  {
+    goPackagePath = "github.com/inconshreveable/go-vhost";
+    fetch = {
+      type = "git";
+      url = "https://github.com/inconshreveable/go-vhost";
+      rev = "c4c28117502e4bf00960c8282b2d1c51c865fe2c";
+      sha256 = "1rway6sls6fl2s2jk20ajj36rrlzh9944ncc9pdd19kifix54z32";
+    };
+  }
+  {
+    goPackagePath = "code.google.com/p/log4go";
+    fetch = {
+      type = "git";
+      url = "https://github.com/ccpaging/log4go";
+      rev = "cb4cc51cd03958183d3b637d0750497d88c2f7a8";
+      sha256 = "0l9f86zzhla9hq35q4xhgs837283qrm4gxbp5lrwwls54ifiq7k2";
+    };
+  }
+  {
+    goPackagePath = "github.com/daviddengcn/go-colortext";
+    fetch = {
+      type = "git";
+      url = "https://github.com/daviddengcn/go-colortext";
+      rev = "13eaeb896f5985a1ab74ddea58707a73d875ba57";
+      sha256 = "0618xs9lc5xfp5zkkb5j47dr7i30ps3zj5fj0zpv8afqh2cc689x";
+    };
+  }
+  {
+    goPackagePath = "gopkg.in/yaml.v1";
+    fetch = {
+      type = "git";
+      url = "https://github.com/go-yaml/yaml";
+      rev = "b0c168ac0cf9493da1f9bb76c34b26ffef940b4a";
+      sha256 = "0jbdy41pplf2d1j24qwr8gc5qsig6ai5ch8rwgvg72kq9q0901cy";
+    };
+  }
+  {
+    goPackagePath = "github.com/inconshreveable/mousetrap";
+    fetch = {
+      type = "git";
+      url = "https://github.com/inconshreveable/mousetrap";
+      rev = "9dbb96d2c3a964935b0870b5abaea13c98b483aa";
+      sha256 = "1f9g8vm18qv1rcb745a4iahql9vfrz0jni9mnzriab2wy1pfdl5b";
+    };
+  }
+  {
+    goPackagePath = "github.com/nsf/termbox-go";
+    fetch = {
+      type = "git";
+      url = "https://github.com/nsf/termbox-go";
+      rev = "9aecf65084a5754f12d27508fa2e6ed56851953b";
+      sha256 = "16sak07bgvmax4zxfrd4jia1dgygk733xa8vk8cdx28z98awbfsh";
+    };
+  }
+  {
+    goPackagePath = "gopkg.in/inconshreveable/go-update.v0";
+    fetch = {
+      type = "git";
+      url = "https://github.com/inconshreveable/go-update";
+      rev = "d8b0b1d421aa1cbf392c05869f8abbc669bb7066";
+      sha256 = "0cvkik2w368fzimx3y29ncfgw7004qkbdf2n3jy5czvzn35q7dpa";
+    };
+  }
+  {
+    goPackagePath = "github.com/kardianos/osext";
+    fetch = {
+      type = "git";
+      url = "https://github.com/kardianos/osext";
+      rev = "29ae4ffbc9a6fe9fb2bc5029050ce6996ea1d3bc";
+      sha256 = "1mawalaz84i16njkz6f9fd5jxhcbxkbsjnav3cmqq2dncv2hyv8a";
+    };
+  }
+  {
+    goPackagePath = "github.com/kr/binarydist";
+    fetch = {
+      type = "git";
+      url = "https://github.com/kr/binarydist";
+      rev = "9955b0ab8708602d411341e55fffd7e0700f86bd";
+      sha256 = "11wncbbbrdcxl5ff3h6w8vqfg4bxsf8709mh6vda0cv236flkyn3";
+    };
+  }
+]
diff --git a/pkgs/tools/networking/openssh/default.nix b/pkgs/tools/networking/openssh/default.nix
index 8f4c0aa54dfa..a6e4b7c4c209 100644
--- a/pkgs/tools/networking/openssh/default.nix
+++ b/pkgs/tools/networking/openssh/default.nix
@@ -17,9 +17,10 @@ let
     sha256 = "682b4a6880d224ee0b7447241b684330b731018585f1ba519f46660c10d63950";
   };
 
+  # **please** update this patch when you update to a new openssh release.
   gssapiSrc = fetchpatch {
-    url = "https://anonscm.debian.org/cgit/pkg-ssh/openssh.git/plain/debian/patches/gssapi.patch?id=46961f5704f8e86cea3e99253faad55aef4d8f35";
-    sha256 = "01mf2vx1gavypbdx06mcbmcrkm2smff0h3jfmr61k6h6j3xk88y5";
+    url = "https://anonscm.debian.org/cgit/pkg-ssh/openssh.git/plain/debian/patches/gssapi.patch?id=477bb7636238c106f8cd7c868a8c0c5eabcfb3db";
+    sha256 = "1kcx2rw6z7y591vr60ww2m2civ0cx6f6awdpi66p1sric9b65si3";
   };
 
 in
diff --git a/pkgs/tools/networking/p2p/gtk-gnutella/default.nix b/pkgs/tools/networking/p2p/gtk-gnutella/default.nix
index a29503aba1e7..901d84b46926 100644
--- a/pkgs/tools/networking/p2p/gtk-gnutella/default.nix
+++ b/pkgs/tools/networking/p2p/gtk-gnutella/default.nix
@@ -1,5 +1,5 @@
 { stdenv, fetchurl, bison, pkgconfig
-, glib, gtk, libxml2, gettext, zlib, binutils, gnutls }:
+, glib, gtk2, libxml2, gettext, zlib, binutils, gnutls }:
 
 let
   name = "gtk-gnutella";
@@ -14,7 +14,7 @@ stdenv.mkDerivation {
   };
 
   nativeBuildInputs = [ bison binutils gettext pkgconfig ];
-  buildInputs = [ glib gnutls gtk libxml2 zlib ];
+  buildInputs = [ glib gnutls gtk2 libxml2 zlib ];
 
   hardeningDisable = [ "bindnow" "fortify" "pic" "relro" ];
 
diff --git a/pkgs/tools/networking/s3gof3r/default.nix b/pkgs/tools/networking/s3gof3r/default.nix
index 6231d5005dc9..a13d6599ffb0 100644
--- a/pkgs/tools/networking/s3gof3r/default.nix
+++ b/pkgs/tools/networking/s3gof3r/default.nix
@@ -13,5 +13,5 @@ buildGoPackage rec {
     sha256 = "10banc8hnhxpsdmlkf9nc5fjkh1349bgpd9k7lggw3yih1rvmh7k";
   };
 
-  goDeps = ./deps.json;
+  goDeps = ./deps.nix;
 }
diff --git a/pkgs/tools/networking/s3gof3r/deps.json b/pkgs/tools/networking/s3gof3r/deps.json
deleted file mode 100644
index e73edde322fc..000000000000
--- a/pkgs/tools/networking/s3gof3r/deps.json
+++ /dev/null
@@ -1,11 +0,0 @@
-[
-    {
-        "goPackagePath": "github.com/jessevdk/go-flags",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/jessevdk/go-flags",
-            "rev": "1b89bf73cd2c3a911d7b2a279ab085c4a18cf539",
-            "sha256": "027nglc5xx1cm03z9sisg0iqrhwcj6gh5z254rrpl8p4fwrxx680"
-        }
-    }
-]
diff --git a/pkgs/tools/networking/s3gof3r/deps.nix b/pkgs/tools/networking/s3gof3r/deps.nix
new file mode 100644
index 000000000000..49c5d600be2f
--- /dev/null
+++ b/pkgs/tools/networking/s3gof3r/deps.nix
@@ -0,0 +1,11 @@
+[
+  {
+    goPackagePath = "github.com/jessevdk/go-flags";
+    fetch = {
+      type = "git";
+      url = "https://github.com/jessevdk/go-flags";
+      rev = "1b89bf73cd2c3a911d7b2a279ab085c4a18cf539";
+      sha256 = "027nglc5xx1cm03z9sisg0iqrhwcj6gh5z254rrpl8p4fwrxx680";
+    };
+  }
+]
diff --git a/pkgs/tools/networking/wicd/default.nix b/pkgs/tools/networking/wicd/default.nix
index 59bbd918d643..d693b8db953a 100644
--- a/pkgs/tools/networking/wicd/default.nix
+++ b/pkgs/tools/networking/wicd/default.nix
@@ -4,7 +4,7 @@
 , locale ? "C" }:
 
 let
-  inherit (pythonPackages) python pygobject dbus-python pyGtkGlade pycairo;
+  inherit (pythonPackages) python pygobject2 dbus-python pyGtkGlade pycairo;
 in stdenv.mkDerivation rec {
   name = "wicd-${version}";
   version = "1.7.2.4";
@@ -38,15 +38,15 @@ in stdenv.mkDerivation rec {
     substituteInPlace in/scripts=wicd.in --subst-var-by TEMPLATE-DEFAULT $out/share/other/dhclient.conf.template.default
 
     sed -i "2iexport PATH=${stdenv.lib.makeBinPath [ python wpa_supplicant dhcpcd dhcp wirelesstools nettools nettools iputils openresolv iproute ]}\$\{PATH:+:\}\$PATH" in/scripts=wicd.in
-    sed -i "3iexport PYTHONPATH=$(toPythonPath $out):$(toPythonPath ${pygobject}):$(toPythonPath ${dbus-python})\$\{PYTHONPATH:+:\}\$PYTHONPATH" in/scripts=wicd.in
+    sed -i "3iexport PYTHONPATH=$(toPythonPath $out):$(toPythonPath ${pygobject2}):$(toPythonPath ${dbus-python})\$\{PYTHONPATH:+:\}\$PYTHONPATH" in/scripts=wicd.in
     sed -i "2iexport PATH=${python}/bin\$\{PATH:+:\}\$PATH" in/scripts=wicd-client.in
-    sed -i "3iexport PYTHONPATH=$(toPythonPath $out):$(toPythonPath ${pyGtkGlade})/gtk-2.0:$(toPythonPath ${pygobject}):$(toPythonPath ${pygobject})/gtk-2.0:$(toPythonPath ${pycairo}):$(toPythonPath ${dbus-python})\$\{PYTHONPATH:+:\}\$PYTHONPATH" in/scripts=wicd-client.in
+    sed -i "3iexport PYTHONPATH=$(toPythonPath $out):$(toPythonPath ${pyGtkGlade})/gtk-2.0:$(toPythonPath ${pygobject2}):$(toPythonPath ${pygobject2})/gtk-2.0:$(toPythonPath ${pycairo}):$(toPythonPath ${dbus-python})\$\{PYTHONPATH:+:\}\$PYTHONPATH" in/scripts=wicd-client.in
     sed -i "2iexport PATH=${python}/bin\$\{PATH:+:\}\$PATH" in/scripts=wicd-gtk.in
-    sed -i "3iexport PYTHONPATH=$(toPythonPath $out):$(toPythonPath ${pyGtkGlade})/gtk-2.0:$(toPythonPath ${pygobject}):$(toPythonPath ${pygobject})/gtk-2.0:$(toPythonPath ${pycairo}):$(toPythonPath ${dbus-python}):$(toPythonPath ${pythonPackages.notify})\$\{PYTHONPATH:+:\}\$PYTHONPATH" in/scripts=wicd-gtk.in
+    sed -i "3iexport PYTHONPATH=$(toPythonPath $out):$(toPythonPath ${pyGtkGlade})/gtk-2.0:$(toPythonPath ${pygobject2}):$(toPythonPath ${pygobject2})/gtk-2.0:$(toPythonPath ${pycairo}):$(toPythonPath ${dbus-python}):$(toPythonPath ${pythonPackages.notify})\$\{PYTHONPATH:+:\}\$PYTHONPATH" in/scripts=wicd-gtk.in
     sed -i "2iexport PATH=${python}/bin\$\{PATH:+:\}\$PATH" in/scripts=wicd-cli.in
-    sed -i "3iexport PYTHONPATH=$(toPythonPath $out):$(toPythonPath ${pyGtkGlade})/gtk-2.0:$(toPythonPath ${pygobject}):$(toPythonPath ${pycairo}):$(toPythonPath ${dbus-python})\$\{PYTHONPATH:+:\}\$PYTHONPATH" in/scripts=wicd-cli.in
+    sed -i "3iexport PYTHONPATH=$(toPythonPath $out):$(toPythonPath ${pyGtkGlade})/gtk-2.0:$(toPythonPath ${pygobject2}):$(toPythonPath ${pycairo}):$(toPythonPath ${dbus-python})\$\{PYTHONPATH:+:\}\$PYTHONPATH" in/scripts=wicd-cli.in
     sed -i "2iexport PATH=${python}/bin\$\{PATH:+:\}\$PATH" in/scripts=wicd-curses.in
-    sed -i "3iexport PYTHONPATH=$(toPythonPath $out):$(toPythonPath ${pyGtkGlade})/gtk-2.0:$(toPythonPath ${pygobject}):$(toPythonPath ${pycairo}):$(toPythonPath ${dbus-python}):$(toPythonPath ${pythonPackages.urwid}):$(toPythonPath ${pythonPackages.curses})\$\{PYTHONPATH:+:\}\$PYTHONPATH" in/scripts=wicd-curses.in
+    sed -i "3iexport PYTHONPATH=$(toPythonPath $out):$(toPythonPath ${pyGtkGlade})/gtk-2.0:$(toPythonPath ${pygobject2}):$(toPythonPath ${pycairo}):$(toPythonPath ${dbus-python}):$(toPythonPath ${pythonPackages.urwid}):$(toPythonPath ${pythonPackages.curses})\$\{PYTHONPATH:+:\}\$PYTHONPATH" in/scripts=wicd-curses.in
     rm po/ast.po
   '';
 
diff --git a/pkgs/tools/package-management/disnix/default.nix b/pkgs/tools/package-management/disnix/default.nix
index 5ace2ad618f2..45bd2abe8ece 100644
--- a/pkgs/tools/package-management/disnix/default.nix
+++ b/pkgs/tools/package-management/disnix/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl, pkgconfig, glib, libxml2, libxslt, getopt, nixUnstable, dysnomia, libintlOrEmpty, libiconv }:
 
 stdenv.mkDerivation {
-  name = "disnix-0.6";
+  name = "disnix-0.6.1";
   
   src = fetchurl {
-    url = http://hydra.nixos.org/build/36897417/download/4/disnix-0.6.tar.gz;
-    sha256 = "1i3wxp7zn765gg0sri2jsdabkj0l7aqi8cxp46pyybdf4852d6gd";
+    url = http://hydra.nixos.org/build/40497264/download/4/disnix-0.6.1.tar.gz;
+    sha256 = "123y8vp31sl394rl7pg2xy13ng9i3pk4s7skyqhngjbqzjl72lhj";
   };
   
   buildInputs = [ pkgconfig glib libxml2 libxslt getopt nixUnstable libintlOrEmpty libiconv dysnomia ];
diff --git a/pkgs/tools/package-management/disnix/dysnomia/default.nix b/pkgs/tools/package-management/disnix/dysnomia/default.nix
index 25df812254c7..08f58f668ece 100644
--- a/pkgs/tools/package-management/disnix/dysnomia/default.nix
+++ b/pkgs/tools/package-management/disnix/dysnomia/default.nix
@@ -20,10 +20,10 @@ assert enableEjabberdDump -> ejabberd != null;
 assert enableMongoDatabase -> (mongodb != null && mongodb-tools != null);
 
 stdenv.mkDerivation {
-  name = "dysnomia-0.6";
+  name = "dysnomia-0.6.1";
   src = fetchurl {
-    url = http://hydra.nixos.org/build/36895408/download/1/dysnomia-0.6.tar.gz;
-    sha256 = "1gg2avj57amxf2qi5zjk0rjyakvy5bqaar2r2151cvjlas1z1alw";
+    url = http://hydra.nixos.org/build/40438996/download/1/dysnomia-0.6.1.tar.gz;
+    sha256 = "0apwh80hi09bvmzy0cs7sljzjd5ximj1smhrdi3hvhm3wr48jvbi";
   };
   
   preConfigure = if enableEjabberdDump then "export PATH=$PATH:${ejabberd}/sbin" else "";
diff --git a/pkgs/tools/package-management/gx/default.nix b/pkgs/tools/package-management/gx/default.nix
index 89d795c8e505..b879ef002b12 100644
--- a/pkgs/tools/package-management/gx/default.nix
+++ b/pkgs/tools/package-management/gx/default.nix
@@ -19,7 +19,7 @@ buildGoPackage rec {
       --replace "github.com/ipfs/go-ipfs/Godeps/_workspace/src/github.com/jbenet/go-random" "github.com/jbenet/go-random"
   '';
 
-  goDeps = ./deps.json;
+  goDeps = ./deps.nix;
 
   meta = with stdenv.lib; {
     description = "A packaging tool built around IPFS";
diff --git a/pkgs/tools/package-management/gx/deps.json b/pkgs/tools/package-management/gx/deps.json
deleted file mode 100644
index 3dd8e8f6ab31..000000000000
--- a/pkgs/tools/package-management/gx/deps.json
+++ /dev/null
@@ -1,200 +0,0 @@
-[
-  {
-    "goPackagePath": "github.com/anacrolix/missinggo",
-    "fetch": {
-      "type": "git",
-      "url": "https://github.com/anacrolix/missinggo",
-      "rev": "e40875155efce3d98562ca9e265e152c364ada3e",
-      "sha256": "1p1qgnb430dz84d2395i6417jqnlvrx9zwg9rq1ri8d5v7dif4fg"
-    }
-  },
-  {
-    "goPackagePath": "github.com/anacrolix/sync",
-    "fetch": {
-      "type": "git",
-      "url": "https://github.com/anacrolix/sync",
-      "rev": "812602587b72df6a2a4f6e30536adc75394a374b",
-      "sha256": "0pc38wanzws3vzqj0l5pakg3gn2hacqrb4n7pd0sqz083rss5k0l"
-    }
-  },
-  {
-    "goPackagePath": "github.com/anacrolix/utp",
-    "fetch": {
-      "type": "git",
-      "url": "https://github.com/anacrolix/utp",
-      "rev": "d7ad5aff2b8a5fa415d1c1ed00b71cfd8b4c69e0",
-      "sha256": "07piwfny3b4prxf2shc512ai0qmrmrj839lbza9clhgcmj1a75d7"
-    }
-  },
-  {
-    "goPackagePath": "github.com/blang/semver",
-    "fetch": {
-      "type": "git",
-      "url": "https://github.com/blang/semver",
-      "rev": "aea32c919a18e5ef4537bbd283ff29594b1b0165",
-      "sha256": "1s80qlij6j6wrh0fhm0l11hbf3qjra67nca5bl7izyfjj4621fcd"
-    }
-  },
-  {
-    "goPackagePath": "github.com/bradfitz/iter",
-    "fetch": {
-      "type": "git",
-      "url": "https://github.com/bradfitz/iter",
-      "rev": "454541ec3da2a73fc34fd049b19ee5777bf19345",
-      "sha256": "0v07zlq2h2rjz5mdvh0rgizyzcj68qa235gci6hvlrai7igyi57i"
-    }
-  },
-  {
-    "goPackagePath": "github.com/codegangsta/cli",
-    "fetch": {
-      "type": "git",
-      "url": "https://github.com/codegangsta/cli",
-      "rev": "e5bef42c62aa7d25aba4880dc02b7624f01e9e19",
-      "sha256": "1g0z2klbaivd0w1fwf1k1dkyk8jbq28qd7fvczjv0yj6hg4vz1wq"
-    }
-  },
-  {
-    "goPackagePath": "github.com/ipfs/go-ipfs-api",
-    "fetch": {
-      "type": "git",
-      "url": "https://github.com/ipfs/go-ipfs-api",
-      "rev": "7c354892da3abdaafb6ac576c100b259b1a73dac",
-      "sha256": "0n8k9ydn2l362vq0bpbjkciw08div3hpc22qygp6zsrlammizcvc"
-    }
-  },
-  {
-    "goPackagePath": "github.com/jbenet/go-base58",
-    "fetch": {
-      "type": "git",
-      "url": "https://github.com/jbenet/go-base58",
-      "rev": "6237cf65f3a6f7111cd8a42be3590df99a66bc7d",
-      "sha256": "11yp7yg62bhw6jqdrlf2144bffk12jmb1nvqkm172pdhxfwrp3bf"
-    }
-  },
-  {
-    "goPackagePath": "github.com/jbenet/go-multiaddr",
-    "fetch": {
-      "type": "git",
-      "url": "https://github.com/jbenet/go-multiaddr",
-      "rev": "f3dff105e44513821be8fbe91c89ef15eff1b4d4",
-      "sha256": "0rz17cvhslspp2z8jbxah22kndqiq9zl8nlf14ng8hfxdfm1x4n7"
-    }
-  },
-  {
-    "goPackagePath": "github.com/jbenet/go-multiaddr-net",
-    "fetch": {
-      "type": "git",
-      "url": "https://github.com/jbenet/go-multiaddr-net",
-      "rev": "d4cfd691db9f50e430528f682ca603237b0eaae0",
-      "sha256": "031xb8j5nysw052cm36rjn19c5wkjf8dh8x21vrbyb7220h5zp90"
-    }
-  },
-  {
-    "goPackagePath": "github.com/jbenet/go-multihash",
-    "fetch": {
-      "type": "git",
-      "url": "https://github.com/jbenet/go-multihash",
-      "rev": "e8d2374934f16a971d1e94a864514a21ac74bf7f",
-      "sha256": "1hlzgmjszn8mfvn848jbnpsvccm9g3m42saavgbh48qdryraqscp"
-    }
-  },
-  {
-    "goPackagePath": "github.com/jbenet/go-os-rename",
-    "fetch": {
-      "type": "git",
-      "url": "https://github.com/jbenet/go-os-rename",
-      "rev": "3ac97f61ef67a6b87b95c1282f6c317ed0e693c2",
-      "sha256": "0fmsmmh9h3l7swf5d56spy9jyrnrvw0vnxgh11mpvxmw5hv3lclr"
-    }
-  },
-  {
-    "goPackagePath": "github.com/jbenet/go-random",
-    "fetch": {
-      "type": "git",
-      "url": "https://github.com/jbenet/go-random",
-      "rev": "384f606e91f542a98e779e652eed88051618f0f7",
-      "sha256": "0gcshzl9n3apzc0jaxqrjsc038yfrzfyhpdqgbpcnajin83l2msa"
-    }
-  },
-  {
-    "goPackagePath": "github.com/jbenet/go-random-files",
-    "fetch": {
-      "type": "git",
-      "url": "https://github.com/jbenet/go-random-files",
-      "rev": "737479700b40b4b50e914e963ce8d9d44603e3c8",
-      "sha256": "1klpdc4qkrfy31r7qh00fcz42blswzabmcnry9byd5adhszxj9bw"
-    }
-  },
-  {
-    "goPackagePath": "github.com/kr/fs",
-    "fetch": {
-      "type": "git",
-      "url": "https://github.com/kr/fs",
-      "rev": "2788f0dbd16903de03cb8186e5c7d97b69ad387b",
-      "sha256": "1c0fipl4rsh0v5liq1ska1dl83v3llab4k6lm8mvrx9c4dyp71ly"
-    }
-  },
-  {
-    "goPackagePath": "github.com/mitchellh/go-homedir",
-    "fetch": {
-      "type": "git",
-      "url": "https://github.com/mitchellh/go-homedir",
-      "rev": "1111e456ffea841564ac0fa5f69c26ef44dafec9",
-      "sha256": "1ycb1cffgs46jnj4cbpjd46mcl584kxdmldlvfysg0wza9pp4x23"
-    }
-  },
-  {
-    "goPackagePath": "github.com/sabhiram/go-git-ignore",
-    "fetch": {
-      "type": "git",
-      "url": "https://github.com/sabhiram/go-git-ignore",
-      "rev": "228fcfa2a06e870a3ef238d54c45ea847f492a37",
-      "sha256": "0xyj2zsxjjbyd3ppxvs294c8y2ip181dxhvycaxxx6qysbm2nlzj"
-    }
-  },
-  {
-    "goPackagePath": "github.com/whyrusleeping/go-multipart-files",
-    "fetch": {
-      "type": "git",
-      "url": "https://github.com/whyrusleeping/go-multipart-files",
-      "rev": "3be93d9f6b618f2b8564bfb1d22f1e744eabbae2",
-      "sha256": "0lf58q5nrxp10v7mj4b0lz01jz8is1xysxwdwkhhs88qxha8vm2f"
-    }
-  },
-  {
-    "goPackagePath": "github.com/whyrusleeping/json-filter",
-    "fetch": {
-      "type": "git",
-      "url": "https://github.com/whyrusleeping/json-filter",
-      "rev": "e9937f5649231265a56d0a419f062530425401a1",
-      "sha256": "1b7czlx57acbi30b9m1w2lvlxnh65c4pmxaa0546pjjip83byb3s"
-    }
-  },
-  {
-    "goPackagePath": "github.com/whyrusleeping/stump",
-    "fetch": {
-      "type": "git",
-      "url": "https://github.com/whyrusleeping/stump",
-      "rev": "206f8f13aae1697a6fc1f4a55799faf955971fc5",
-      "sha256": "1s40qdppjnk8gijk7x6kbviiqz62nz3h6gic2q9cwcmq8r5isw7n"
-    }
-  },
-  {
-    "goPackagePath": "github.com/whyrusleeping/tar-utils",
-    "fetch": {
-      "type": "git",
-      "url": "https://github.com/whyrusleeping/tar-utils",
-      "rev": "beab27159606f5a7c978268dd1c3b12a0f1de8a7",
-      "sha256": "07z4is00ridjp8c6cn68lkg1fz6ksj1q7f26g7ir7qx8mx10fj72"
-    }
-  },
-  {
-    "goPackagePath": "golang.org/x/crypto",
-    "fetch": {
-      "type": "git",
-      "url": "https://go.googlesource.com/crypto",
-      "rev": "f3241ce8505855877cc8a9717bd61a0f7c4ea83c",
-      "sha256": "0wxfnbhaq1m3i5jylww9llm2xl9hk33q6nxyz5i475rfrg0p3wsq"
-    }
-  }
-]
diff --git a/pkgs/tools/package-management/gx/deps.nix b/pkgs/tools/package-management/gx/deps.nix
new file mode 100644
index 000000000000..19372f807c21
--- /dev/null
+++ b/pkgs/tools/package-management/gx/deps.nix
@@ -0,0 +1,200 @@
+[
+  {
+    goPackagePath = "github.com/anacrolix/missinggo";
+    fetch = {
+      type = "git";
+      url = "https://github.com/anacrolix/missinggo";
+      rev = "e40875155efce3d98562ca9e265e152c364ada3e";
+      sha256 = "1p1qgnb430dz84d2395i6417jqnlvrx9zwg9rq1ri8d5v7dif4fg";
+    };
+  }
+  {
+    goPackagePath = "github.com/anacrolix/sync";
+    fetch = {
+      type = "git";
+      url = "https://github.com/anacrolix/sync";
+      rev = "812602587b72df6a2a4f6e30536adc75394a374b";
+      sha256 = "0pc38wanzws3vzqj0l5pakg3gn2hacqrb4n7pd0sqz083rss5k0l";
+    };
+  }
+  {
+    goPackagePath = "github.com/anacrolix/utp";
+    fetch = {
+      type = "git";
+      url = "https://github.com/anacrolix/utp";
+      rev = "d7ad5aff2b8a5fa415d1c1ed00b71cfd8b4c69e0";
+      sha256 = "07piwfny3b4prxf2shc512ai0qmrmrj839lbza9clhgcmj1a75d7";
+    };
+  }
+  {
+    goPackagePath = "github.com/blang/semver";
+    fetch = {
+      type = "git";
+      url = "https://github.com/blang/semver";
+      rev = "aea32c919a18e5ef4537bbd283ff29594b1b0165";
+      sha256 = "1s80qlij6j6wrh0fhm0l11hbf3qjra67nca5bl7izyfjj4621fcd";
+    };
+  }
+  {
+    goPackagePath = "github.com/bradfitz/iter";
+    fetch = {
+      type = "git";
+      url = "https://github.com/bradfitz/iter";
+      rev = "454541ec3da2a73fc34fd049b19ee5777bf19345";
+      sha256 = "0v07zlq2h2rjz5mdvh0rgizyzcj68qa235gci6hvlrai7igyi57i";
+    };
+  }
+  {
+    goPackagePath = "github.com/codegangsta/cli";
+    fetch = {
+      type = "git";
+      url = "https://github.com/codegangsta/cli";
+      rev = "e5bef42c62aa7d25aba4880dc02b7624f01e9e19";
+      sha256 = "1g0z2klbaivd0w1fwf1k1dkyk8jbq28qd7fvczjv0yj6hg4vz1wq";
+    };
+  }
+  {
+    goPackagePath = "github.com/ipfs/go-ipfs-api";
+    fetch = {
+      type = "git";
+      url = "https://github.com/ipfs/go-ipfs-api";
+      rev = "7c354892da3abdaafb6ac576c100b259b1a73dac";
+      sha256 = "0n8k9ydn2l362vq0bpbjkciw08div3hpc22qygp6zsrlammizcvc";
+    };
+  }
+  {
+    goPackagePath = "github.com/jbenet/go-base58";
+    fetch = {
+      type = "git";
+      url = "https://github.com/jbenet/go-base58";
+      rev = "6237cf65f3a6f7111cd8a42be3590df99a66bc7d";
+      sha256 = "11yp7yg62bhw6jqdrlf2144bffk12jmb1nvqkm172pdhxfwrp3bf";
+    };
+  }
+  {
+    goPackagePath = "github.com/jbenet/go-multiaddr";
+    fetch = {
+      type = "git";
+      url = "https://github.com/jbenet/go-multiaddr";
+      rev = "f3dff105e44513821be8fbe91c89ef15eff1b4d4";
+      sha256 = "0rz17cvhslspp2z8jbxah22kndqiq9zl8nlf14ng8hfxdfm1x4n7";
+    };
+  }
+  {
+    goPackagePath = "github.com/jbenet/go-multiaddr-net";
+    fetch = {
+      type = "git";
+      url = "https://github.com/jbenet/go-multiaddr-net";
+      rev = "d4cfd691db9f50e430528f682ca603237b0eaae0";
+      sha256 = "031xb8j5nysw052cm36rjn19c5wkjf8dh8x21vrbyb7220h5zp90";
+    };
+  }
+  {
+    goPackagePath = "github.com/jbenet/go-multihash";
+    fetch = {
+      type = "git";
+      url = "https://github.com/jbenet/go-multihash";
+      rev = "e8d2374934f16a971d1e94a864514a21ac74bf7f";
+      sha256 = "1hlzgmjszn8mfvn848jbnpsvccm9g3m42saavgbh48qdryraqscp";
+    };
+  }
+  {
+    goPackagePath = "github.com/jbenet/go-os-rename";
+    fetch = {
+      type = "git";
+      url = "https://github.com/jbenet/go-os-rename";
+      rev = "3ac97f61ef67a6b87b95c1282f6c317ed0e693c2";
+      sha256 = "0fmsmmh9h3l7swf5d56spy9jyrnrvw0vnxgh11mpvxmw5hv3lclr";
+    };
+  }
+  {
+    goPackagePath = "github.com/jbenet/go-random";
+    fetch = {
+      type = "git";
+      url = "https://github.com/jbenet/go-random";
+      rev = "384f606e91f542a98e779e652eed88051618f0f7";
+      sha256 = "0gcshzl9n3apzc0jaxqrjsc038yfrzfyhpdqgbpcnajin83l2msa";
+    };
+  }
+  {
+    goPackagePath = "github.com/jbenet/go-random-files";
+    fetch = {
+      type = "git";
+      url = "https://github.com/jbenet/go-random-files";
+      rev = "737479700b40b4b50e914e963ce8d9d44603e3c8";
+      sha256 = "1klpdc4qkrfy31r7qh00fcz42blswzabmcnry9byd5adhszxj9bw";
+    };
+  }
+  {
+    goPackagePath = "github.com/kr/fs";
+    fetch = {
+      type = "git";
+      url = "https://github.com/kr/fs";
+      rev = "2788f0dbd16903de03cb8186e5c7d97b69ad387b";
+      sha256 = "1c0fipl4rsh0v5liq1ska1dl83v3llab4k6lm8mvrx9c4dyp71ly";
+    };
+  }
+  {
+    goPackagePath = "github.com/mitchellh/go-homedir";
+    fetch = {
+      type = "git";
+      url = "https://github.com/mitchellh/go-homedir";
+      rev = "1111e456ffea841564ac0fa5f69c26ef44dafec9";
+      sha256 = "1ycb1cffgs46jnj4cbpjd46mcl584kxdmldlvfysg0wza9pp4x23";
+    };
+  }
+  {
+    goPackagePath = "github.com/sabhiram/go-git-ignore";
+    fetch = {
+      type = "git";
+      url = "https://github.com/sabhiram/go-git-ignore";
+      rev = "228fcfa2a06e870a3ef238d54c45ea847f492a37";
+      sha256 = "0xyj2zsxjjbyd3ppxvs294c8y2ip181dxhvycaxxx6qysbm2nlzj";
+    };
+  }
+  {
+    goPackagePath = "github.com/whyrusleeping/go-multipart-files";
+    fetch = {
+      type = "git";
+      url = "https://github.com/whyrusleeping/go-multipart-files";
+      rev = "3be93d9f6b618f2b8564bfb1d22f1e744eabbae2";
+      sha256 = "0lf58q5nrxp10v7mj4b0lz01jz8is1xysxwdwkhhs88qxha8vm2f";
+    };
+  }
+  {
+    goPackagePath = "github.com/whyrusleeping/json-filter";
+    fetch = {
+      type = "git";
+      url = "https://github.com/whyrusleeping/json-filter";
+      rev = "e9937f5649231265a56d0a419f062530425401a1";
+      sha256 = "1b7czlx57acbi30b9m1w2lvlxnh65c4pmxaa0546pjjip83byb3s";
+    };
+  }
+  {
+    goPackagePath = "github.com/whyrusleeping/stump";
+    fetch = {
+      type = "git";
+      url = "https://github.com/whyrusleeping/stump";
+      rev = "206f8f13aae1697a6fc1f4a55799faf955971fc5";
+      sha256 = "1s40qdppjnk8gijk7x6kbviiqz62nz3h6gic2q9cwcmq8r5isw7n";
+    };
+  }
+  {
+    goPackagePath = "github.com/whyrusleeping/tar-utils";
+    fetch = {
+      type = "git";
+      url = "https://github.com/whyrusleeping/tar-utils";
+      rev = "beab27159606f5a7c978268dd1c3b12a0f1de8a7";
+      sha256 = "07z4is00ridjp8c6cn68lkg1fz6ksj1q7f26g7ir7qx8mx10fj72";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/crypto";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/crypto";
+      rev = "f3241ce8505855877cc8a9717bd61a0f7c4ea83c";
+      sha256 = "0wxfnbhaq1m3i5jylww9llm2xl9hk33q6nxyz5i475rfrg0p3wsq";
+    };
+  }
+]
diff --git a/pkgs/tools/package-management/gx/go/default.nix b/pkgs/tools/package-management/gx/go/default.nix
index 912c870c27b0..877d5c6540a0 100644
--- a/pkgs/tools/package-management/gx/go/default.nix
+++ b/pkgs/tools/package-management/gx/go/default.nix
@@ -16,7 +16,7 @@ buildGoPackage rec {
     sha256 = "0qxp7gqrx1rhcbqvp4jdb3gj1dlj200bdc4gq8pfklc8fcz1lc6l";
   };
 
-  goDeps = ../deps.json;
+  goDeps = ../deps.nix;
 
   extraSrcs = [
     {
diff --git a/pkgs/tools/package-management/nix/default.nix b/pkgs/tools/package-management/nix/default.nix
index 1563af1374ca..71938e37bfed 100644
--- a/pkgs/tools/package-management/nix/default.nix
+++ b/pkgs/tools/package-management/nix/default.nix
@@ -41,7 +41,7 @@ let
 
     installFlags = "sysconfdir=$(out)/etc";
 
-    doInstallCheck = false;
+    doInstallCheck = true;
 
     separateDebugInfo = stdenv.isLinux;
 
diff --git a/pkgs/tools/security/hologram/default.nix b/pkgs/tools/security/hologram/default.nix
index 5e8d260d6936..e7673cf58422 100644
--- a/pkgs/tools/security/hologram/default.nix
+++ b/pkgs/tools/security/hologram/default.nix
@@ -13,5 +13,5 @@ buildGoPackage rec {
     sha256 = "0i0p170brdsczfz079mqbc5y7x7mdph04p3wgqsd7xcrddvlkkaf";
   };
 
-  goDeps = ./deps.json;
+  goDeps = ./deps.nix;
 }
diff --git a/pkgs/tools/security/hologram/deps.json b/pkgs/tools/security/hologram/deps.json
deleted file mode 100644
index 3d40bfd2cee0..000000000000
--- a/pkgs/tools/security/hologram/deps.json
+++ /dev/null
@@ -1,101 +0,0 @@
-[
-    {
-        "goPackagePath": "golang.org/x/crypto",
-        "fetch": {
-            "type": "git",
-            "url": "https://go.googlesource.com/crypto",
-            "rev": "575fdbe86e5dd89229707ebec0575ce7d088a4a6",
-            "sha256": "1kgv1mkw9y404pk3lcwbs0vgl133mwyp294i18jg9hp10s5d56xa"
-        }
-    },
-    {
-        "goPackagePath": "github.com/golang/protobuf",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/golang/protobuf",
-            "rev": "59b73b37c1e45995477aae817e4a653c89a858db",
-            "sha256": "1dx22jvhvj34ivpr7gw01fncg9yyx35mbpal4mpgnqka7ajmgjsa"
-        }
-    },
-    {
-        "goPackagePath": "github.com/howeyc/gopass",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/howeyc/gopass",
-            "rev": "2c70fa70727c953c51695f800f25d6b44abb368e",
-            "sha256": "152lrkfxk205rlxiign0w5wb0fmfh910yz4jhlv4f4l1qr1h2lx8"
-        }
-    },
-    {
-        "goPackagePath": "github.com/aybabtme/rgbterm",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/aybabtme/rgbterm",
-            "rev": "c07e2f009ed2311e9c35bca12ec00b38ccd48283",
-            "sha256": "1qph7drds44jzx1whqlrh1hs58k0wv0v58zyq2a81hmm72gsgzam"
-        }
-    },
-    {
-        "goPackagePath": "github.com/vaughan0/go-ini",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/vaughan0/go-ini",
-            "rev": "a98ad7ee00ec53921f08832bc06ecf7fd600e6a1",
-            "sha256": "1l1isi3czis009d9k5awsj4xdxgbxn4n9yqjc1ac7f724x6jacfa"
-        }
-    },
-    {
-        "goPackagePath": "github.com/mitchellh/go-homedir",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/mitchellh/go-homedir",
-            "rev": "1f6da4a72e57d4e7edd4a7295a585e0a3999a2d4",
-            "sha256": "1l5lrsjrnwxn299mhvyxvz8hd0spkx0d31gszm4cyx21bg1xsiy9"
-        }
-    },
-    {
-        "goPackagePath": "github.com/goamz/goamz",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/goamz/goamz",
-            "rev": "2a8fed5e89ab9e16210fc337d1aac780e8c7bbb7",
-            "sha256": "0rlinp0cvgw66qjndg4padr5s0wd3n7kjfggkx6czqj9bqaxcz4b"
-        }
-    },
-    {
-        "goPackagePath": "github.com/nmcclain/asn1-ber",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/go-asn1-ber/asn1-ber",
-            "rev": "f4b6f4a84f5cde443d1925b5ec185ee93c2bdc72",
-            "sha256": "0qdyax6yw3hvplzqc2ykpihi3m5y4nii581ay0mxy9c54bzs2nk9"
-        }
-    },
-    {
-        "goPackagePath": "gopkg.in/asn1-ber.v1",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/go-asn1-ber/asn1-ber",
-            "rev": "f4b6f4a84f5cde443d1925b5ec185ee93c2bdc72",
-            "sha256": "0qdyax6yw3hvplzqc2ykpihi3m5y4nii581ay0mxy9c54bzs2nk9"
-        }
-    },
-    {
-        "goPackagePath": "github.com/peterbourgon/g2s",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/peterbourgon/g2s",
-            "rev": "ec76db4c1ac16400ac0e17ca9c4840e1d23da5dc",
-            "sha256": "1p4p8755v2nrn54rik7yifpg9szyg44y5rpp0kryx4ycl72307rj"
-        }
-    },
-    {
-        "goPackagePath": "github.com/nmcclain/ldap",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/go-ldap/ldap",
-            "rev": "83e65426fd1c06626e88aa8a085e5bfed0208e29",
-            "sha256": "179lwaf0hvczl8g4xzkpcpzq25p1b23f7399bx5zl55iin62d8yz"
-        }
-    }
-]
diff --git a/pkgs/tools/security/hologram/deps.nix b/pkgs/tools/security/hologram/deps.nix
new file mode 100644
index 000000000000..2c4cdbe84f00
--- /dev/null
+++ b/pkgs/tools/security/hologram/deps.nix
@@ -0,0 +1,101 @@
+[
+  {
+    goPackagePath = "golang.org/x/crypto";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/crypto";
+      rev = "575fdbe86e5dd89229707ebec0575ce7d088a4a6";
+      sha256 = "1kgv1mkw9y404pk3lcwbs0vgl133mwyp294i18jg9hp10s5d56xa";
+    };
+  }
+  {
+    goPackagePath = "github.com/golang/protobuf";
+    fetch = {
+      type = "git";
+      url = "https://github.com/golang/protobuf";
+      rev = "59b73b37c1e45995477aae817e4a653c89a858db";
+      sha256 = "1dx22jvhvj34ivpr7gw01fncg9yyx35mbpal4mpgnqka7ajmgjsa";
+    };
+  }
+  {
+    goPackagePath = "github.com/howeyc/gopass";
+    fetch = {
+      type = "git";
+      url = "https://github.com/howeyc/gopass";
+      rev = "2c70fa70727c953c51695f800f25d6b44abb368e";
+      sha256 = "152lrkfxk205rlxiign0w5wb0fmfh910yz4jhlv4f4l1qr1h2lx8";
+    };
+  }
+  {
+    goPackagePath = "github.com/aybabtme/rgbterm";
+    fetch = {
+      type = "git";
+      url = "https://github.com/aybabtme/rgbterm";
+      rev = "c07e2f009ed2311e9c35bca12ec00b38ccd48283";
+      sha256 = "1qph7drds44jzx1whqlrh1hs58k0wv0v58zyq2a81hmm72gsgzam";
+    };
+  }
+  {
+    goPackagePath = "github.com/vaughan0/go-ini";
+    fetch = {
+      type = "git";
+      url = "https://github.com/vaughan0/go-ini";
+      rev = "a98ad7ee00ec53921f08832bc06ecf7fd600e6a1";
+      sha256 = "1l1isi3czis009d9k5awsj4xdxgbxn4n9yqjc1ac7f724x6jacfa";
+    };
+  }
+  {
+    goPackagePath = "github.com/mitchellh/go-homedir";
+    fetch = {
+      type = "git";
+      url = "https://github.com/mitchellh/go-homedir";
+      rev = "1f6da4a72e57d4e7edd4a7295a585e0a3999a2d4";
+      sha256 = "1l5lrsjrnwxn299mhvyxvz8hd0spkx0d31gszm4cyx21bg1xsiy9";
+    };
+  }
+  {
+    goPackagePath = "github.com/goamz/goamz";
+    fetch = {
+      type = "git";
+      url = "https://github.com/goamz/goamz";
+      rev = "2a8fed5e89ab9e16210fc337d1aac780e8c7bbb7";
+      sha256 = "0rlinp0cvgw66qjndg4padr5s0wd3n7kjfggkx6czqj9bqaxcz4b";
+    };
+  }
+  {
+    goPackagePath = "github.com/nmcclain/asn1-ber";
+    fetch = {
+      type = "git";
+      url = "https://github.com/go-asn1-ber/asn1-ber";
+      rev = "f4b6f4a84f5cde443d1925b5ec185ee93c2bdc72";
+      sha256 = "0qdyax6yw3hvplzqc2ykpihi3m5y4nii581ay0mxy9c54bzs2nk9";
+    };
+  }
+  {
+    goPackagePath = "gopkg.in/asn1-ber.v1";
+    fetch = {
+      type = "git";
+      url = "https://github.com/go-asn1-ber/asn1-ber";
+      rev = "f4b6f4a84f5cde443d1925b5ec185ee93c2bdc72";
+      sha256 = "0qdyax6yw3hvplzqc2ykpihi3m5y4nii581ay0mxy9c54bzs2nk9";
+    };
+  }
+  {
+    goPackagePath = "github.com/peterbourgon/g2s";
+    fetch = {
+      type = "git";
+      url = "https://github.com/peterbourgon/g2s";
+      rev = "ec76db4c1ac16400ac0e17ca9c4840e1d23da5dc";
+      sha256 = "1p4p8755v2nrn54rik7yifpg9szyg44y5rpp0kryx4ycl72307rj";
+    };
+  }
+  {
+    goPackagePath = "github.com/nmcclain/ldap";
+    fetch = {
+      type = "git";
+      url = "https://github.com/go-ldap/ldap";
+      rev = "83e65426fd1c06626e88aa8a085e5bfed0208e29";
+      sha256 = "179lwaf0hvczl8g4xzkpcpzq25p1b23f7399bx5zl55iin62d8yz";
+    };
+  }
+]
diff --git a/pkgs/tools/security/jd-gui/default.nix b/pkgs/tools/security/jd-gui/default.nix
index f247f8c4e89e..106fbf0a150a 100644
--- a/pkgs/tools/security/jd-gui/default.nix
+++ b/pkgs/tools/security/jd-gui/default.nix
@@ -1,8 +1,8 @@
-{ stdenv, fetchurl, gtk, atk, gdk_pixbuf, pango, makeWrapper }:
+{ stdenv, fetchurl, gtk2, atk, gdk_pixbuf, pango, makeWrapper }:
 
 let
   dynlibPath = stdenv.lib.makeLibraryPath
-    [ gtk atk gdk_pixbuf pango ];
+    [ gtk2 atk gdk_pixbuf pango ];
 in
 stdenv.mkDerivation rec {
   name    = "jd-gui-${version}";
diff --git a/pkgs/tools/security/nmap/default.nix b/pkgs/tools/security/nmap/default.nix
index f9c7dba5660b..3bc5d4158346 100644
--- a/pkgs/tools/security/nmap/default.nix
+++ b/pkgs/tools/security/nmap/default.nix
@@ -1,7 +1,7 @@
 { stdenv, fetchurl, libpcap, pkgconfig, openssl
 , graphicalSupport ? false
 , libX11 ? null
-, gtk ? null
+, gtk2 ? null
 , pythonPackages
 , makeWrapper ? null
 }:
@@ -9,7 +9,7 @@
 with stdenv.lib;
 
 let
-  inherit (pythonPackages) python pygtk pygobject pycairo pysqlite;
+  inherit (pythonPackages) python pygtk pygobject2 pycairo pysqlite;
 in stdenv.mkDerivation rec {
   name = "nmap${optionalString graphicalSupport "-graphical"}-${version}";
   version = "7.12";
@@ -26,12 +26,12 @@ in stdenv.mkDerivation rec {
   postInstall = ''
       wrapProgram $out/bin/ndiff --prefix PYTHONPATH : "$(toPythonPath $out)" --prefix PYTHONPATH : "$PYTHONPATH"
   '' + optionalString graphicalSupport ''
-      wrapProgram $out/bin/zenmap --prefix PYTHONPATH : "$(toPythonPath $out)" --prefix PYTHONPATH : "$PYTHONPATH" --prefix PYTHONPATH : $(toPythonPath ${pygtk})/gtk-2.0 --prefix PYTHONPATH : $(toPythonPath ${pygobject})/gtk-2.0 --prefix PYTHONPATH : $(toPythonPath ${pycairo})/gtk-2.0
+      wrapProgram $out/bin/zenmap --prefix PYTHONPATH : "$(toPythonPath $out)" --prefix PYTHONPATH : "$PYTHONPATH" --prefix PYTHONPATH : $(toPythonPath ${pygtk})/gtk-2.0 --prefix PYTHONPATH : $(toPythonPath ${pygobject2})/gtk-2.0 --prefix PYTHONPATH : $(toPythonPath ${pycairo})/gtk-2.0
   '';
 
   buildInputs = [ libpcap pkgconfig openssl makeWrapper python ]
     ++ optionals graphicalSupport [
-      libX11 gtk pygtk pysqlite pygobject pycairo
+      libX11 gtk2 pygtk pysqlite pygobject2 pycairo
     ];
 
   meta = {
diff --git a/pkgs/tools/security/tor/torbrowser.nix b/pkgs/tools/security/tor/torbrowser.nix
index da45866ed2fe..900ad39ecb23 100644
--- a/pkgs/tools/security/tor/torbrowser.nix
+++ b/pkgs/tools/security/tor/torbrowser.nix
@@ -1,24 +1,24 @@
 { stdenv, fetchurl, makeDesktopItem
-, libXrender, libX11, libXext, libXt, alsaLib, dbus, dbus_glib, glib, gtk
+, libXrender, libX11, libXext, libXt, alsaLib, dbus, dbus_glib, glib, gtk2
 , atk, pango, freetype, fontconfig, gdk_pixbuf, cairo, zlib
 }:
 
 let
   libPath = stdenv.lib.makeLibraryPath [
-    stdenv.cc.cc zlib glib alsaLib dbus dbus_glib gtk atk pango freetype
+    stdenv.cc.cc zlib glib alsaLib dbus dbus_glib gtk2 atk pango freetype
     fontconfig gdk_pixbuf cairo libXrender libX11 libXext libXt
   ];
 in
 
 stdenv.mkDerivation rec {
   name = "tor-browser-${version}";
-  version = "6.0.4";
+  version = "6.0.5";
 
   src = fetchurl {
     url = "https://archive.torproject.org/tor-package-archive/torbrowser/${version}/tor-browser-linux${if stdenv.is64bit then "64" else "32"}-${version}_en-US.tar.xz";
     sha256 = if stdenv.is64bit then
-      "14ds39frkg4hbim0icb372crink902f7i6mqj6dmbaiz2fi88y8q" else
-      "1d2mg46dg5y16h5lwzq0ilv3zk8aqy3vg3j4a5c3wzsxj0hpl4v5";
+      "fc917bd702b1275cae3f7fa8036c3c44af9b4f003f3d4a8fbb9f6c0974277ad4" else
+      "e0c3ce406b6de082692ce3db52b6e04053e205194b26fbf0eee9014be543d98d";
   };
 
   desktopItem = makeDesktopItem {
diff --git a/pkgs/tools/system/bootchart/default.nix b/pkgs/tools/system/bootchart/default.nix
index 518fb4944f49..b5f1af6dfeda 100644
--- a/pkgs/tools/system/bootchart/default.nix
+++ b/pkgs/tools/system/bootchart/default.nix
@@ -1,4 +1,4 @@
-{stdenv, fetchurl, lib, pkgconfig, glib, gtk, python27, pythonPackages }:
+{stdenv, fetchurl, lib, pkgconfig, glib, gtk2, python27, pythonPackages }:
 
 stdenv.mkDerivation rec {
   version = "0.14.7";
@@ -9,7 +9,7 @@ stdenv.mkDerivation rec {
     sha256 = "1abn4amsyys6vwn7csxsxny94n24ycca3xhqxqcmdc4j0dzn3kmb";
   };
 
-  buildInputs = [ pkgconfig glib gtk python27 pythonPackages.wrapPython pythonPackages.pygtk ];
+  buildInputs = [ pkgconfig glib gtk2 python27 pythonPackages.wrapPython pythonPackages.pygtk ];
   pythonPath = with pythonPackages; [ pygtk pycairo ];
 
   installPhase = ''
diff --git a/pkgs/tools/system/confd/default.nix b/pkgs/tools/system/confd/default.nix
index 5da87f4ce46e..ebe654d946e3 100644
--- a/pkgs/tools/system/confd/default.nix
+++ b/pkgs/tools/system/confd/default.nix
@@ -15,5 +15,5 @@ buildGoPackage rec {
     sha256 = "0rz533575hdcln8ciqaz79wbnga3czj243g7fz8869db6sa7jwlr";
   };
 
-  goDeps = ./deps.json;
+  goDeps = ./deps.nix;
 }
diff --git a/pkgs/tools/system/confd/deps.json b/pkgs/tools/system/confd/deps.json
deleted file mode 100644
index 407870efdaa3..000000000000
--- a/pkgs/tools/system/confd/deps.json
+++ /dev/null
@@ -1,74 +0,0 @@
-[
-    {
-        "goPackagePath": "github.com/Sirupsen/logrus",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/Sirupsen/logrus",
-            "rev": "be52937128b38f1d99787bb476c789e2af1147f1",
-            "sha256": "1m6vvd4pg4lwglhk54lv5mf6cc8h7bi0d9zb3gar4crz531r66y4"
-        }
-    },
-    {
-        "goPackagePath": "github.com/coreos/go-etcd",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/coreos/go-etcd",
-            "rev": "9847b93751a5fbaf227b893d172cee0104ac6427",
-            "sha256": "1ihq01ayqzxvn6hca5j00vl189vi5lm78f0fy2wpk5mrm3xi01l4"
-        }
-    },
-    {
-        "goPackagePath": "github.com/ugorji/go",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/ugorji/go",
-            "rev": "03e33114d4d60a1f37150325e15f51b0fa6fc4f6",
-            "sha256": "01kdzgx23cgb4k867m1pvsw14hhdr9jf2frqy6i4j4221055m57v"
-        }
-    },
-    {
-        "goPackagePath": "github.com/samuel/go-zookeeper",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/samuel/go-zookeeper",
-            "rev": "5bb5cfc093ad18a28148c578f8632cfdb4d802e4",
-            "sha256": "1kpx1ymh7rds0b2km291idnyqi0zck74nd8hnk72crgz7wmpqv6z"
-        }
-    },
-    {
-        "goPackagePath": "github.com/BurntSushi/toml",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/BurntSushi/toml",
-            "rev": "056c9bc7be7190eaa7715723883caffa5f8fa3e4",
-            "sha256": "0gkgkw04ndr5y7hrdy0r4v2drs5srwfcw2bs1gyas066hwl84xyw"
-        }
-    },
-    {
-        "goPackagePath": "github.com/kelseyhightower/memkv",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/kelseyhightower/memkv",
-            "rev": "7f9c7f36f45ba80c62fe22779ee78d9b4ca36580",
-            "sha256": "090x65kr3gqh8fc8z4rm9hc2r0v0k7rfm5vsbmhdh21f48ixw540"
-        }
-    },
-    {
-        "goPackagePath": "github.com/armon/consul-api",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/armon/consul-api",
-            "rev": "f79efe463cdbb62f6d5a55f879a63ec554eb13e5",
-            "sha256": "1rkmzfhsazj9p2b6ywvs8yramzvxfxyvplzxi0ldvhcv04887gcp"
-        }
-    },
-    {
-        "goPackagePath": "github.com/garyburd/redigo",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/garyburd/redigo",
-            "rev": "535138d7bcd717d6531c701ef5933d98b1866257",
-            "sha256": "1m7nc1gvv5yqnq8ii75f33485il6y6prf8gxl97dimsw94qccc5v"
-        }
-    }
-]
diff --git a/pkgs/tools/system/confd/deps.nix b/pkgs/tools/system/confd/deps.nix
new file mode 100644
index 000000000000..74467ddf9cc7
--- /dev/null
+++ b/pkgs/tools/system/confd/deps.nix
@@ -0,0 +1,74 @@
+[
+  {
+    goPackagePath = "github.com/Sirupsen/logrus";
+    fetch = {
+      type = "git";
+      url = "https://github.com/Sirupsen/logrus";
+      rev = "be52937128b38f1d99787bb476c789e2af1147f1";
+      sha256 = "1m6vvd4pg4lwglhk54lv5mf6cc8h7bi0d9zb3gar4crz531r66y4";
+    };
+  }
+  {
+    goPackagePath = "github.com/coreos/go-etcd";
+    fetch = {
+      type = "git";
+      url = "https://github.com/coreos/go-etcd";
+      rev = "9847b93751a5fbaf227b893d172cee0104ac6427";
+      sha256 = "1ihq01ayqzxvn6hca5j00vl189vi5lm78f0fy2wpk5mrm3xi01l4";
+    };
+  }
+  {
+    goPackagePath = "github.com/ugorji/go";
+    fetch = {
+      type = "git";
+      url = "https://github.com/ugorji/go";
+      rev = "03e33114d4d60a1f37150325e15f51b0fa6fc4f6";
+      sha256 = "01kdzgx23cgb4k867m1pvsw14hhdr9jf2frqy6i4j4221055m57v";
+    };
+  }
+  {
+    goPackagePath = "github.com/samuel/go-zookeeper";
+    fetch = {
+      type = "git";
+      url = "https://github.com/samuel/go-zookeeper";
+      rev = "5bb5cfc093ad18a28148c578f8632cfdb4d802e4";
+      sha256 = "1kpx1ymh7rds0b2km291idnyqi0zck74nd8hnk72crgz7wmpqv6z";
+    };
+  }
+  {
+    goPackagePath = "github.com/BurntSushi/toml";
+    fetch = {
+      type = "git";
+      url = "https://github.com/BurntSushi/toml";
+      rev = "056c9bc7be7190eaa7715723883caffa5f8fa3e4";
+      sha256 = "0gkgkw04ndr5y7hrdy0r4v2drs5srwfcw2bs1gyas066hwl84xyw";
+    };
+  }
+  {
+    goPackagePath = "github.com/kelseyhightower/memkv";
+    fetch = {
+      type = "git";
+      url = "https://github.com/kelseyhightower/memkv";
+      rev = "7f9c7f36f45ba80c62fe22779ee78d9b4ca36580";
+      sha256 = "090x65kr3gqh8fc8z4rm9hc2r0v0k7rfm5vsbmhdh21f48ixw540";
+    };
+  }
+  {
+    goPackagePath = "github.com/armon/consul-api";
+    fetch = {
+      type = "git";
+      url = "https://github.com/armon/consul-api";
+      rev = "f79efe463cdbb62f6d5a55f879a63ec554eb13e5";
+      sha256 = "1rkmzfhsazj9p2b6ywvs8yramzvxfxyvplzxi0ldvhcv04887gcp";
+    };
+  }
+  {
+    goPackagePath = "github.com/garyburd/redigo";
+    fetch = {
+      type = "git";
+      url = "https://github.com/garyburd/redigo";
+      rev = "535138d7bcd717d6531c701ef5933d98b1866257";
+      sha256 = "1m7nc1gvv5yqnq8ii75f33485il6y6prf8gxl97dimsw94qccc5v";
+    };
+  }
+]
diff --git a/pkgs/tools/system/gdmap/default.nix b/pkgs/tools/system/gdmap/default.nix
index 7800bfa08313..1d33e5fb09fe 100644
--- a/pkgs/tools/system/gdmap/default.nix
+++ b/pkgs/tools/system/gdmap/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, gtk, pkgconfig, libxml2, intltool, gettext }:
+{ stdenv, fetchurl, gtk2, pkgconfig, libxml2, intltool, gettext }:
 
 stdenv.mkDerivation rec {
   name = "gdmap-0.8.1";
@@ -8,7 +8,7 @@ stdenv.mkDerivation rec {
     sha256 = "0nr8l88cg19zj585hczj8v73yh21k7j13xivhlzl8jdk0j0cj052";
   };
 
-  buildInputs = [ gtk pkgconfig libxml2 intltool gettext ];
+  buildInputs = [ gtk2 pkgconfig libxml2 intltool gettext ];
 
   patches = [ ./get_sensitive.patch ./set_flags.patch ];
 
diff --git a/pkgs/tools/system/lshw/default.nix b/pkgs/tools/system/lshw/default.nix
index 02b331a36deb..75ad15b7311d 100644
--- a/pkgs/tools/system/lshw/default.nix
+++ b/pkgs/tools/system/lshw/default.nix
@@ -1,5 +1,5 @@
 { stdenv, fetchurl
-, withGUI? false, gtk? null, pkgconfig? null, sqlite? null  # compile GUI
+, withGUI ? false, gtk2 ? null, pkgconfig? null, sqlite ? null  # compile GUI
  }:
 stdenv.mkDerivation rec {
 
@@ -11,7 +11,7 @@ stdenv.mkDerivation rec {
     sha256 = "1728b96gyjmrp31knzips9azn6wkfdp5k5dnbil7h7hgz99w177b";
   };
 
-  buildInputs = [] ++ stdenv.lib.optional withGUI [ gtk pkgconfig sqlite ];
+  buildInputs = [] ++ stdenv.lib.optional withGUI [ gtk2 pkgconfig sqlite ];
 
   postBuild = if withGUI then "make gui" else "";
 
diff --git a/pkgs/tools/text/groff/default.nix b/pkgs/tools/text/groff/default.nix
index 728e9de8b488..df6a1119800e 100644
--- a/pkgs/tools/text/groff/default.nix
+++ b/pkgs/tools/text/groff/default.nix
@@ -1,4 +1,7 @@
-{ stdenv, fetchurl, ghostscript, perl, groff }:
+{ stdenv, fetchurl, perl, groff
+, ghostscript #for postscript and html output
+, psutils, netpbm #for html output
+}:
 
 stdenv.mkDerivation rec {
   name = "groff-1.22.3";
@@ -12,7 +15,21 @@ stdenv.mkDerivation rec {
 
   enableParallelBuilding = false;
 
-  buildInputs = [ ghostscript ];
+  postPatch = stdenv.lib.optionalString (psutils != null) ''
+    substituteInPlace src/preproc/html/pre-html.cpp \
+      --replace "psselect" "${psutils}/bin/psselect"
+  '' + stdenv.lib.optionalString (netpbm != null) ''
+    substituteInPlace src/preproc/html/pre-html.cpp \
+      --replace "pnmcut" "${netpbm}/bin/pnmcut" \
+      --replace "pnmcrop" "${netpbm}/bin/pnmcrop" \
+      --replace "pnmtopng" "${netpbm}/bin/pnmtopng"
+    substituteInPlace tmac/www.tmac \
+      --replace "pnmcrop" "${netpbm}/bin/pnmcrop" \
+      --replace "pngtopnm" "${netpbm}/bin/pngtopnm" \
+      --replace "@PNMTOPS_NOSETPAGE@" "${netpbm}/bin/pnmtops -nosetpage"
+  '';
+
+  buildInputs = [ ghostscript psutils netpbm ];
   nativeBuildInputs = [ perl ];
 
   # Builds running without a chroot environment may detect the presence
@@ -20,7 +37,11 @@ stdenv.mkDerivation rec {
   # package. To avoid this issue, X11 support is explicitly disabled.
   # Note: If we ever want to *enable* X11 support, then we'll probably
   # have to pass "--with-appresdir", too.
-  configureFlags = "--without-x";
+  configureFlags = [
+    "--without-x"
+  ] ++ stdenv.lib.optionals (ghostscript != null) [
+    "--with-gs=${ghostscript}/bin/gs"
+  ];
 
   doCheck = true;
 
diff --git a/pkgs/tools/text/platinum-searcher/default.nix b/pkgs/tools/text/platinum-searcher/default.nix
index 21a49d493aa7..502af44262b6 100644
--- a/pkgs/tools/text/platinum-searcher/default.nix
+++ b/pkgs/tools/text/platinum-searcher/default.nix
@@ -14,7 +14,7 @@ buildGoPackage rec {
     sha256 = "09pkdfh7fqn3x4l9zaw5wzk20k7nfdwry7br9vfy3vv3fwv61ynp";
   };
 
-  goDeps = ./deps.json;
+  goDeps = ./deps.nix;
 
   meta = with stdenv.lib; {
     homepage = https://github.com/monochromegane/the_platinum_searcher;
diff --git a/pkgs/tools/text/platinum-searcher/deps.json b/pkgs/tools/text/platinum-searcher/deps.json
deleted file mode 100644
index 5578478eb4c3..000000000000
--- a/pkgs/tools/text/platinum-searcher/deps.json
+++ /dev/null
@@ -1,83 +0,0 @@
-[
-    {
-        "goPackagePath": "gopkg.in/yaml.v2",
-        "fetch": {
-            "type": "git",
-            "url": "https://gopkg.in/yaml.v2",
-            "rev": "a83829b6f1293c91addabc89d0571c246397bbf4",
-            "sha256": "1m4dsmk90sbi17571h6pld44zxz7jc4lrnl4f27dpd1l8g5xvjhh"
-        }
-    },
-    {
-        "goPackagePath": "github.com/jessevdk/go-flags",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/jessevdk/go-flags",
-            "rev": "1b89bf73cd2c3a911d7b2a279ab085c4a18cf539",
-            "sha256": "027nglc5xx1cm03z9sisg0iqrhwcj6gh5z254rrpl8p4fwrxx680"
-        }
-    },
-    {
-        "goPackagePath": "github.com/BurntSushi/toml",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/BurntSushi/toml",
-            "rev": "056c9bc7be7190eaa7715723883caffa5f8fa3e4",
-            "sha256": "0gkgkw04ndr5y7hrdy0r4v2drs5srwfcw2bs1gyas066hwl84xyw"
-        }
-    },
-    {
-        "goPackagePath": "golang.org/x/text",
-        "fetch": {
-            "type": "git",
-            "url": "https://go.googlesource.com/text",
-            "rev": "5eb8d4684c4796dd36c74f6452f2c0fa6c79597e",
-            "sha256": "1cjwm2pv42dbfqc6ylr7jmma902zg4gng5aarqrbjf1k2nf2vs14"
-        }
-    },
-    {
-        "goPackagePath": "github.com/monochromegane/conflag",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/monochromegane/conflag",
-            "rev": "6d68c9aa4183844ddc1655481798fe4d90d483e9",
-            "sha256": "0csfr5c8d3kbna9sqhzfp2z06wq6mc6ijja1zj2i82kzsq8534wa"
-        }
-    },
-    {
-        "goPackagePath": "github.com/monochromegane/go-home",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/monochromegane/go-home",
-            "rev": "25d9dda593924a11ea52e4ffbc8abdb0dbe96401",
-            "sha256": "172chakrj22xfm0bcda4qj5zqf7lwr53pzwc3xj6wz8vd2bcxkww"
-        }
-    },
-    {
-        "goPackagePath": "github.com/monochromegane/terminal",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/monochromegane/terminal",
-            "rev": "2da212063ce19aed90ee5bbb00ad1ad7393d7f48",
-            "sha256": "1rddaq9pk5q57ildms35iihghqk505gb349pb0f6k3svchay38nh"
-        }
-    },
-    {
-        "goPackagePath": "github.com/monochromegane/go-gitignore",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/monochromegane/go-gitignore",
-            "rev": "38717d0a108ca0e5af632cd6845ca77d45b50729",
-            "sha256": "0r1inabpgg6sn6i47b02hcmd2p4dc1ab1mcy20mn1b2k3mpdj4b7"
-        }
-    },
-    {
-        "goPackagePath": "github.com/shiena/ansicolor",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/shiena/ansicolor",
-            "rev": "a5e2b567a4dd6cc74545b8a4f27c9d63b9e7735b",
-            "sha256": "0gwplb1b4fvav1vjf4b2dypy5rcp2w41vrbxkd1dsmac870cy75p"
-        }
-    }
-]
diff --git a/pkgs/tools/text/platinum-searcher/deps.nix b/pkgs/tools/text/platinum-searcher/deps.nix
new file mode 100644
index 000000000000..da3f3ff1b8ab
--- /dev/null
+++ b/pkgs/tools/text/platinum-searcher/deps.nix
@@ -0,0 +1,83 @@
+[
+  {
+    goPackagePath = "gopkg.in/yaml.v2";
+    fetch = {
+      type = "git";
+      url = "https://gopkg.in/yaml.v2";
+      rev = "a83829b6f1293c91addabc89d0571c246397bbf4";
+      sha256 = "1m4dsmk90sbi17571h6pld44zxz7jc4lrnl4f27dpd1l8g5xvjhh";
+    };
+  }
+  {
+    goPackagePath = "github.com/jessevdk/go-flags";
+    fetch = {
+      type = "git";
+      url = "https://github.com/jessevdk/go-flags";
+      rev = "1b89bf73cd2c3a911d7b2a279ab085c4a18cf539";
+      sha256 = "027nglc5xx1cm03z9sisg0iqrhwcj6gh5z254rrpl8p4fwrxx680";
+    };
+  }
+  {
+    goPackagePath = "github.com/BurntSushi/toml";
+    fetch = {
+      type = "git";
+      url = "https://github.com/BurntSushi/toml";
+      rev = "056c9bc7be7190eaa7715723883caffa5f8fa3e4";
+      sha256 = "0gkgkw04ndr5y7hrdy0r4v2drs5srwfcw2bs1gyas066hwl84xyw";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/text";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/text";
+      rev = "5eb8d4684c4796dd36c74f6452f2c0fa6c79597e";
+      sha256 = "1cjwm2pv42dbfqc6ylr7jmma902zg4gng5aarqrbjf1k2nf2vs14";
+    };
+  }
+  {
+    goPackagePath = "github.com/monochromegane/conflag";
+    fetch = {
+      type = "git";
+      url = "https://github.com/monochromegane/conflag";
+      rev = "6d68c9aa4183844ddc1655481798fe4d90d483e9";
+      sha256 = "0csfr5c8d3kbna9sqhzfp2z06wq6mc6ijja1zj2i82kzsq8534wa";
+    };
+  }
+  {
+    goPackagePath = "github.com/monochromegane/go-home";
+    fetch = {
+      type = "git";
+      url = "https://github.com/monochromegane/go-home";
+      rev = "25d9dda593924a11ea52e4ffbc8abdb0dbe96401";
+      sha256 = "172chakrj22xfm0bcda4qj5zqf7lwr53pzwc3xj6wz8vd2bcxkww";
+    };
+  }
+  {
+    goPackagePath = "github.com/monochromegane/terminal";
+    fetch = {
+      type = "git";
+      url = "https://github.com/monochromegane/terminal";
+      rev = "2da212063ce19aed90ee5bbb00ad1ad7393d7f48";
+      sha256 = "1rddaq9pk5q57ildms35iihghqk505gb349pb0f6k3svchay38nh";
+    };
+  }
+  {
+    goPackagePath = "github.com/monochromegane/go-gitignore";
+    fetch = {
+      type = "git";
+      url = "https://github.com/monochromegane/go-gitignore";
+      rev = "38717d0a108ca0e5af632cd6845ca77d45b50729";
+      sha256 = "0r1inabpgg6sn6i47b02hcmd2p4dc1ab1mcy20mn1b2k3mpdj4b7";
+    };
+  }
+  {
+    goPackagePath = "github.com/shiena/ansicolor";
+    fetch = {
+      type = "git";
+      url = "https://github.com/shiena/ansicolor";
+      rev = "a5e2b567a4dd6cc74545b8a4f27c9d63b9e7735b";
+      sha256 = "0gwplb1b4fvav1vjf4b2dypy5rcp2w41vrbxkd1dsmac870cy75p";
+    };
+  }
+]
diff --git a/pkgs/tools/text/sift/default.nix b/pkgs/tools/text/sift/default.nix
index 9a93b64e3693..42a2ab852e1d 100644
--- a/pkgs/tools/text/sift/default.nix
+++ b/pkgs/tools/text/sift/default.nix
@@ -14,7 +14,7 @@ buildGoPackage rec {
     sha256 = "1nb042k420xr6000ipwhqn41vg8jfp6ghq4z7y1sjnndkrhclzm1";
   };
 
-  goDeps = ./deps.json;
+  goDeps = ./deps.nix;
 
   meta = with lib; {
     description = "sift is a fast and powerful alternative to grep";
diff --git a/pkgs/tools/text/sift/deps.json b/pkgs/tools/text/sift/deps.json
deleted file mode 100644
index 3869e6e5ca9a..000000000000
--- a/pkgs/tools/text/sift/deps.json
+++ /dev/null
@@ -1,29 +0,0 @@
-[
-    {
-        "goPackagePath": "golang.org/x/crypto",
-        "fetch": {
-            "type": "git",
-            "url": "https://go.googlesource.com/crypto",
-            "rev": "575fdbe86e5dd89229707ebec0575ce7d088a4a6",
-            "sha256": "1kgv1mkw9y404pk3lcwbs0vgl133mwyp294i18jg9hp10s5d56xa"
-        }
-    },
-    {
-        "goPackagePath": "github.com/svent/go-flags",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/svent/go-flags",
-            "rev": "4bcbad344f0318adaf7aabc16929701459009aa3",
-            "sha256": "1gb416fgxl9gq4q6wsv3i2grq1mzbi7lvfvmfdqbxqbv9vizzh34"
-        }
-    },
-    {
-        "goPackagePath": "github.com/svent/go-nbreader",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/svent/go-nbreader",
-            "rev": "7cef48da76dca6a496faa7fe63e39ed665cbd219",
-            "sha256": "0hw11jj5r3f6qwydg41nc3c6aadlbkhc1qpxra2609lis0qa9h4r"
-        }
-    }
-]
diff --git a/pkgs/tools/text/sift/deps.nix b/pkgs/tools/text/sift/deps.nix
new file mode 100644
index 000000000000..038555fa3cab
--- /dev/null
+++ b/pkgs/tools/text/sift/deps.nix
@@ -0,0 +1,29 @@
+[
+  {
+    goPackagePath = "golang.org/x/crypto";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/crypto";
+      rev = "575fdbe86e5dd89229707ebec0575ce7d088a4a6";
+      sha256 = "1kgv1mkw9y404pk3lcwbs0vgl133mwyp294i18jg9hp10s5d56xa";
+    };
+  }
+  {
+    goPackagePath = "github.com/svent/go-flags";
+    fetch = {
+      type = "git";
+      url = "https://github.com/svent/go-flags";
+      rev = "4bcbad344f0318adaf7aabc16929701459009aa3";
+      sha256 = "1gb416fgxl9gq4q6wsv3i2grq1mzbi7lvfvmfdqbxqbv9vizzh34";
+    };
+  }
+  {
+    goPackagePath = "github.com/svent/go-nbreader";
+    fetch = {
+      type = "git";
+      url = "https://github.com/svent/go-nbreader";
+      rev = "7cef48da76dca6a496faa7fe63e39ed665cbd219";
+      sha256 = "0hw11jj5r3f6qwydg41nc3c6aadlbkhc1qpxra2609lis0qa9h4r";
+    };
+  }
+]
diff --git a/pkgs/tools/typesetting/xmlroff/default.nix b/pkgs/tools/typesetting/xmlroff/default.nix
index daa79d8e352c..05ce5057347d 100644
--- a/pkgs/tools/typesetting/xmlroff/default.nix
+++ b/pkgs/tools/typesetting/xmlroff/default.nix
@@ -1,5 +1,5 @@
 { stdenv, fetchurl, pkgconfig, libxml2, libxslt, popt, perl
-, glib, pango, pangoxsl, gtk, libtool, autoconf, automake }:
+, glib, pango, pangoxsl, gtk2, libtool, autoconf, automake }:
 
 stdenv.mkDerivation rec {
   name = "xmlroff-${version}";
@@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
     glib
     pango
     pangoxsl
-    gtk
+    gtk2
     popt
   ];
 
diff --git a/pkgs/tools/video/mjpegtools/default.nix b/pkgs/tools/video/mjpegtools/default.nix
index ebfff5dbabcd..71b1b43f6535 100644
--- a/pkgs/tools/video/mjpegtools/default.nix
+++ b/pkgs/tools/video/mjpegtools/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, lib, fetchurl, gtk, libdv, libjpeg, libpng, libX11, pkgconfig, SDL, SDL_gfx
+{ stdenv, lib, fetchurl, gtk2, libdv, libjpeg, libpng, libX11, pkgconfig, SDL, SDL_gfx
 , withMinimal ? false
 }:
 
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
   hardeningDisable = [ "format" ];
 
   buildInputs = [ libdv libjpeg libpng pkgconfig ]
-              ++ lib.optional (!withMinimal) [ gtk libX11 SDL SDL_gfx ];
+              ++ lib.optional (!withMinimal) [ gtk2 libX11 SDL SDL_gfx ];
 
   NIX_CFLAGS_COMPILE = lib.optional (!withMinimal) "-I${SDL.dev}/include/SDL";