summary refs log tree commit diff
diff options
context:
space:
mode:
authorKamil Chmielewski <kamil.chm@gmail.com>2016-09-10 12:04:13 +0200
committerzimbatm <zimbatm@zimbatm.com>2016-09-16 00:04:55 +0100
commit914e0e594ca2d0fa5d456be208bf703d79f04fa3 (patch)
tree49cabb000804d24bb798de8afaacaa7fac8a41c8
parent7a6b860e1c5c6e35719631ff3599521144990077 (diff)
downloadnixpkgs-914e0e594ca2d0fa5d456be208bf703d79f04fa3.tar
nixpkgs-914e0e594ca2d0fa5d456be208bf703d79f04fa3.tar.gz
nixpkgs-914e0e594ca2d0fa5d456be208bf703d79f04fa3.tar.bz2
nixpkgs-914e0e594ca2d0fa5d456be208bf703d79f04fa3.tar.lz
nixpkgs-914e0e594ca2d0fa5d456be208bf703d79f04fa3.tar.xz
nixpkgs-914e0e594ca2d0fa5d456be208bf703d79f04fa3.tar.zst
nixpkgs-914e0e594ca2d0fa5d456be208bf703d79f04fa3.zip
buildGoPackage: deps.json -> deps.nix in NIXON
https://github.com/NixOS/nixpkgs/pull/17254#issuecomment-245295541

* update docs to describe `deps.nix`
* include goDeps in nix-shell GOPATH
* NixOS 16.09 rel notes about replacing goPackages
-rw-r--r--doc/languages-frameworks/go.xml41
-rw-r--r--nixos/doc/manual/release-notes/rl-1609.xml7
-rw-r--r--pkgs/applications/misc/hugo/default.nix2
-rw-r--r--pkgs/applications/misc/hugo/deps.json317
-rw-r--r--pkgs/applications/misc/hugo/deps.nix317
-rw-r--r--pkgs/applications/misc/mop/default.nix2
-rw-r--r--pkgs/applications/misc/mop/deps.json11
-rw-r--r--pkgs/applications/misc/mop/deps.nix11
-rw-r--r--pkgs/applications/misc/wego/default.nix2
-rw-r--r--pkgs/applications/misc/wego/deps.json29
-rw-r--r--pkgs/applications/misc/wego/deps.nix29
-rw-r--r--pkgs/applications/networking/drive/default.nix2
-rw-r--r--pkgs/applications/networking/drive/deps.json164
-rw-r--r--pkgs/applications/networking/drive/deps.nix164
-rw-r--r--pkgs/applications/networking/instant-messengers/pond/default.nix2
-rw-r--r--pkgs/applications/networking/instant-messengers/pond/deps.json47
-rw-r--r--pkgs/applications/networking/instant-messengers/pond/deps.nix47
-rw-r--r--pkgs/applications/networking/instant-messengers/xmpp-client/default.nix2
-rw-r--r--pkgs/applications/networking/instant-messengers/xmpp-client/deps.json20
-rw-r--r--pkgs/applications/networking/instant-messengers/xmpp-client/deps.nix20
-rw-r--r--pkgs/applications/networking/syncthing/inotify-deps.json38
-rw-r--r--pkgs/applications/networking/syncthing/inotify-deps.nix38
-rw-r--r--pkgs/applications/networking/syncthing/inotify.nix2
-rw-r--r--pkgs/applications/networking/syncthing012/default.nix2
-rw-r--r--pkgs/applications/networking/syncthing012/deps.json128
-rw-r--r--pkgs/applications/networking/syncthing012/deps.nix128
-rw-r--r--pkgs/applications/version-management/git-and-tools/git-annex-remote-b2/default.nix2
-rw-r--r--pkgs/applications/version-management/git-and-tools/git-annex-remote-b2/deps.json20
-rw-r--r--pkgs/applications/version-management/git-and-tools/git-annex-remote-b2/deps.nix20
-rw-r--r--pkgs/development/go-modules/generic/default.nix12
-rw-r--r--pkgs/development/tools/deis/default.nix2
-rw-r--r--pkgs/development/tools/deis/deps.json29
-rw-r--r--pkgs/development/tools/deis/deps.nix29
-rw-r--r--pkgs/development/tools/go-repo-root/default.nix2
-rw-r--r--pkgs/development/tools/go-repo-root/deps.nix20
-rw-r--r--pkgs/development/tools/go2nix/default.nix6
-rw-r--r--pkgs/development/tools/go2nix/deps.json20
-rw-r--r--pkgs/development/tools/go2nix/deps.nix20
-rw-r--r--pkgs/development/tools/golint/default.nix2
-rw-r--r--pkgs/development/tools/golint/deps.json11
-rw-r--r--pkgs/development/tools/golint/deps.nix11
-rw-r--r--pkgs/development/tools/gotools/default.nix2
-rw-r--r--pkgs/development/tools/gotools/deps.json11
-rw-r--r--pkgs/development/tools/gotools/deps.nix11
-rw-r--r--pkgs/development/tools/gox/default.nix2
-rw-r--r--pkgs/development/tools/gox/deps.json11
-rw-r--r--pkgs/development/tools/gox/deps.nix11
-rw-r--r--pkgs/development/tools/leaps/default.nix2
-rw-r--r--pkgs/development/tools/leaps/deps.json11
-rw-r--r--pkgs/development/tools/leaps/deps.nix11
-rw-r--r--pkgs/development/tools/remarshal/default.nix2
-rw-r--r--pkgs/development/tools/remarshal/deps.json20
-rw-r--r--pkgs/development/tools/remarshal/deps.nix20
-rw-r--r--pkgs/development/tools/textql/default.nix2
-rw-r--r--pkgs/development/tools/textql/deps.json11
-rw-r--r--pkgs/development/tools/textql/deps.nix11
-rw-r--r--pkgs/development/web/minify/default.nix2
-rw-r--r--pkgs/development/web/minify/deps.json74
-rw-r--r--pkgs/development/web/minify/deps.nix74
-rw-r--r--pkgs/misc/vim-plugins/default.nix2
-rw-r--r--pkgs/servers/caddy/default.nix2
-rw-r--r--pkgs/servers/caddy/deps.json182
-rw-r--r--pkgs/servers/caddy/deps.nix182
-rw-r--r--pkgs/servers/etcd/default.nix2
-rw-r--r--pkgs/servers/etcd/deps.json335
-rw-r--r--pkgs/servers/etcd/deps.nix335
-rw-r--r--pkgs/servers/gotty/default.nix2
-rw-r--r--pkgs/servers/gotty/deps.json74
-rw-r--r--pkgs/servers/gotty/deps.nix74
-rw-r--r--pkgs/servers/interlock/default.nix2
-rw-r--r--pkgs/servers/interlock/deps.json65
-rw-r--r--pkgs/servers/interlock/deps.nix65
-rw-r--r--pkgs/servers/mesos-dns/default.nix2
-rw-r--r--pkgs/servers/mesos-dns/deps.json101
-rw-r--r--pkgs/servers/mesos-dns/deps.nix101
-rw-r--r--pkgs/servers/monitoring/prometheus/cli.nix2
-rw-r--r--pkgs/servers/monitoring/prometheus/cli_deps.json11
-rw-r--r--pkgs/servers/monitoring/prometheus/cli_deps.nix11
-rw-r--r--pkgs/servers/monitoring/prometheus/collectd-exporter.nix2
-rw-r--r--pkgs/servers/monitoring/prometheus/collectd-exporter_deps.json65
-rw-r--r--pkgs/servers/monitoring/prometheus/collectd-exporter_deps.nix65
-rw-r--r--pkgs/servers/monitoring/prometheus/haproxy-exporter.nix2
-rw-r--r--pkgs/servers/monitoring/prometheus/haproxy-exporter_deps.json65
-rw-r--r--pkgs/servers/monitoring/prometheus/haproxy-exporter_deps.nix65
-rw-r--r--pkgs/servers/monitoring/prometheus/mesos-exporter.nix2
-rw-r--r--pkgs/servers/monitoring/prometheus/mesos-exporter_deps.json83
-rw-r--r--pkgs/servers/monitoring/prometheus/mesos-exporter_deps.nix83
-rw-r--r--pkgs/servers/monitoring/prometheus/mysqld-exporter.nix2
-rw-r--r--pkgs/servers/monitoring/prometheus/mysqld-exporter_deps.json74
-rw-r--r--pkgs/servers/monitoring/prometheus/mysqld-exporter_deps.nix74
-rw-r--r--pkgs/servers/monitoring/prometheus/nginx-exporter.nix2
-rw-r--r--pkgs/servers/monitoring/prometheus/nginx-exporter_deps.json83
-rw-r--r--pkgs/servers/monitoring/prometheus/nginx-exporter_deps.nix83
-rw-r--r--pkgs/servers/monitoring/prometheus/prom2json.nix2
-rw-r--r--pkgs/servers/monitoring/prometheus/prom2json_deps.json38
-rw-r--r--pkgs/servers/monitoring/prometheus/prom2json_deps.nix38
-rw-r--r--pkgs/servers/monitoring/prometheus/pushgateway.nix2
-rw-r--r--pkgs/servers/monitoring/prometheus/pushgateway_deps.json74
-rw-r--r--pkgs/servers/monitoring/prometheus/pushgateway_deps.nix74
-rw-r--r--pkgs/servers/monitoring/prometheus/statsd-bridge.nix2
-rw-r--r--pkgs/servers/monitoring/prometheus/statsd-bridge_deps.json74
-rw-r--r--pkgs/servers/monitoring/prometheus/statsd-bridge_deps.nix74
-rw-r--r--pkgs/servers/nosql/influxdb/default.nix2
-rw-r--r--pkgs/servers/nosql/influxdb/deps-0.13.0.json200
-rw-r--r--pkgs/servers/nosql/influxdb/deps-0.13.0.json.nix0
-rw-r--r--pkgs/servers/nosql/influxdb/deps-0.13.0.nix200
-rw-r--r--pkgs/servers/nosql/influxdb/deps-1.0.0-beta3.json155
-rw-r--r--pkgs/servers/nosql/influxdb/deps-1.0.0-beta3.nix155
-rwxr-xr-xpkgs/servers/nosql/influxdb/gdm2nix.rb1
-rw-r--r--pkgs/servers/nsq/default.nix2
-rw-r--r--pkgs/servers/nsq/deps.json83
-rw-r--r--pkgs/servers/nsq/deps.nix83
-rw-r--r--pkgs/servers/oauth2_proxy/default.nix2
-rw-r--r--pkgs/servers/oauth2_proxy/deps.json83
-rw-r--r--pkgs/servers/oauth2_proxy/deps.nix83
-rw-r--r--pkgs/servers/serf/default.nix2
-rw-r--r--pkgs/servers/serf/deps.json137
-rw-r--r--pkgs/servers/serf/deps.nix137
-rw-r--r--pkgs/servers/skydns/default.nix2
-rw-r--r--pkgs/servers/skydns/deps.json128
-rw-r--r--pkgs/servers/skydns/deps.nix128
-rw-r--r--pkgs/shells/elvish/default.nix2
-rw-r--r--pkgs/shells/elvish/deps.json20
-rw-r--r--pkgs/shells/elvish/deps.nix20
-rw-r--r--pkgs/shells/oh/default.nix2
-rw-r--r--pkgs/shells/oh/deps.json29
-rw-r--r--pkgs/shells/oh/deps.nix29
-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/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/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/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/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/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/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/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/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/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/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/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/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
173 files changed, 4176 insertions, 4127 deletions
diff --git a/doc/languages-frameworks/go.xml b/doc/languages-frameworks/go.xml
index e56d7dd389d..026acb4e8fb 100644
--- a/doc/languages-frameworks/go.xml
+++ b/doc/languages-frameworks/go.xml
@@ -24,7 +24,7 @@ deis = buildGoPackage rec {
     sha256 = "1qv9lxqx7m18029lj8cw3k7jngvxs4iciwrypdy0gd2nnghc68sw";
   };
 
-  goDeps = ./deps.json; <co xml:id='ex-buildGoPackage-3' />
+  goDeps = ./deps.nix; <co xml:id='ex-buildGoPackage-3' />
 
   buildFlags = "--tags release"; <co xml:id='ex-buildGoPackage-4' />
 }
@@ -56,7 +56,9 @@ the following arguments are of special significance to the function:
   <callout arearefs='ex-buildGoPackage-3'>
     <para>
       <varname>goDeps</varname> is where the Go dependencies of a Go program are listed
-      in a JSON format described below.
+      as a list of package source identified by Go import path.
+      It could be imported as a separate <varname>deps.nix</varname> file for
+      readability. The dependency data structure is described below.
     </para>
   </callout>
 
@@ -70,23 +72,32 @@ the following arguments are of special significance to the function:
 
 </para>
 
-<para>The <varname>goDeps</varname> attribute should point to a JSON file that defines which Go libraries
-  are needed and should be included in <varname>GOPATH</varname> for <varname>buildPhase</varname>.
-
+<para>The <varname>goDeps</varname> attribute can be imported from a separate
+  <varname>nix</varname> file that defines which Go libraries are needed and should
+  be included in <varname>GOPATH</varname> for <varname>buildPhase</varname>.
 </para>
 
-<example xml:id='ex-goDeps'><title>deps.json</title>
+<example xml:id='ex-goDeps'><title>deps.nix</title>
 <programlisting>
 [ <co xml:id='ex-goDeps-1' />
-    {
-        "goPackagePath": "gopkg.in/yaml.v2", <co xml:id='ex-goDeps-2' />
-        "fetch": {
-          "type": "git", <co xml:id='ex-goDeps-3' />
-          "url": "https://gopkg.in/yaml.v2",
-          "rev": "a83829b6f1293c91addabc89d0571c246397bbf4",
-          "sha256": "1m4dsmk90sbi17571h6pld44zxz7jc4lrnl4f27dpd1l8g5xvjhh"
-        }
-    }
+  {
+    goPackagePath = "gopkg.in/yaml.v2"; <co xml:id='ex-goDeps-2' />
+    fetch = {
+      type = "git"; <co xml:id='ex-goDeps-3' />
+      url = "https://gopkg.in/yaml.v2";
+      rev = "a83829b6f1293c91addabc89d0571c246397bbf4";
+      sha256 = "1m4dsmk90sbi17571h6pld44zxz7jc4lrnl4f27dpd1l8g5xvjhh";
+    };
+  }
+  {
+    goPackagePath = "github.com/docopt/docopt-go";
+    fetch = {
+      type = "git";
+      url = "https://github.com/docopt/docopt-go";
+      rev = "784ddc588536785e7299f7272f39101f7faccc3f";
+      sha256 = "0wwz48jl9fvl1iknvn9dqr4gfy1qs03gxaikrxxp9gry6773v3sj";
+    };
+  }
 ]
 </programlisting>
 </example>
diff --git a/nixos/doc/manual/release-notes/rl-1609.xml b/nixos/doc/manual/release-notes/rl-1609.xml
index 792b4458caa..c267e5a4299 100644
--- a/nixos/doc/manual/release-notes/rl-1609.xml
+++ b/nixos/doc/manual/release-notes/rl-1609.xml
@@ -99,6 +99,13 @@ following incompatible changes:</para>
     </para>
   </listitem>
 
+  <listitem>
+    <para><literal>goPackages</literal> was replaced with separated Go applications
+    in appropriate <literal>nixpkgs</literal> categories. Each Go package uses its own
+    dependency set defined in nix. There's also a new <literal>go2nix</literal>
+    tool introduced to generate Go package definition from its Go source automatically.</para>
+  </listitem>
+
 </itemizedlist>
 
 
diff --git a/pkgs/applications/misc/hugo/default.nix b/pkgs/applications/misc/hugo/default.nix
index c183f70a289..90cf8de615d 100644
--- a/pkgs/applications/misc/hugo/default.nix
+++ b/pkgs/applications/misc/hugo/default.nix
@@ -14,5 +14,5 @@ buildGoPackage rec {
     sha256 = "135mrdi8i56z9m2sihjrdfab6lrczbfgavwvfrngvi1zxnx7scmv";
   };
 
-  goDeps = ./deps.json;
+  goDeps = ./deps.nix;
 }
diff --git a/pkgs/applications/misc/hugo/deps.json b/pkgs/applications/misc/hugo/deps.json
deleted file mode 100644
index 53967d1bff0..00000000000
--- a/pkgs/applications/misc/hugo/deps.json
+++ /dev/null
@@ -1,317 +0,0 @@
-[
-    {
-        "goPackagePath": "golang.org/x/sys",
-        "fetch": {
-            "type": "git",
-            "url": "https://go.googlesource.com/sys",
-            "rev": "d9157a9621b69ad1d8d77a1933590c416593f24f",
-            "sha256": "1asdbp7rj1j1m1aar1a022wpcwbml6zih6cpbxaw7b2m8v8is931"
-        }
-    },
-    {
-        "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/gorilla/websocket",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/gorilla/websocket",
-            "rev": "a622679ebd7a3b813862379232f645f8e690e43f",
-            "sha256": "1nc9jbcmgya1i6dmf6sbcqsnxi9hbjg6dz1z0k7zmc6xdwlq0y4q"
-        }
-    },
-    {
-        "goPackagePath": "github.com/inconshreveable/mousetrap",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/inconshreveable/mousetrap",
-            "rev": "9dbb96d2c3a964935b0870b5abaea13c98b483aa",
-            "sha256": "1f9g8vm18qv1rcb745a4iahql9vfrz0jni9mnzriab2wy1pfdl5b"
-        }
-    },
-    {
-        "goPackagePath": "github.com/kardianos/osext",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/kardianos/osext",
-            "rev": "29ae4ffbc9a6fe9fb2bc5029050ce6996ea1d3bc",
-            "sha256": "1mawalaz84i16njkz6f9fd5jxhcbxkbsjnav3cmqq2dncv2hyv8a"
-        }
-    },
-    {
-        "goPackagePath": "github.com/hashicorp/hcl",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/hashicorp/hcl",
-            "rev": "54864211433d45cb780682431585b3e573b49e4a",
-            "sha256": "07l2dydzjpdgm2d4a72hkmincn455j3nrafg6hs3c23bkvizj950"
-        }
-    },
-    {
-        "goPackagePath": "github.com/hashicorp/go-multierror",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/hashicorp/go-multierror",
-            "rev": "56912fb08d85084aa318edcf2bba735b97cf35c5",
-            "sha256": "0s01cqdab2f7fxkkjjk2wqx05a1shnwlvfn45h2pi3i4gapvcn0r"
-        }
-    },
-    {
-        "goPackagePath": "github.com/BurntSushi/toml",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/BurntSushi/toml",
-            "rev": "056c9bc7be7190eaa7715723883caffa5f8fa3e4",
-            "sha256": "0gkgkw04ndr5y7hrdy0r4v2drs5srwfcw2bs1gyas066hwl84xyw"
-        }
-    },
-    {
-        "goPackagePath": "github.com/mitchellh/mapstructure",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/mitchellh/mapstructure",
-            "rev": "281073eb9eb092240d33ef253c404f1cca550309",
-            "sha256": "1zjx9fv29639sp1fn84rxs830z7gp7bs38yd5y1hl5adb8s5x1mh"
-        }
-    },
-    {
-        "goPackagePath": "golang.org/x/text",
-        "fetch": {
-            "type": "git",
-            "url": "https://go.googlesource.com/text",
-            "rev": "5eb8d4684c4796dd36c74f6452f2c0fa6c79597e",
-            "sha256": "1cjwm2pv42dbfqc6ylr7jmma902zg4gng5aarqrbjf1k2nf2vs14"
-        }
-    },
-    {
-        "goPackagePath": "github.com/shurcooL/sanitized_anchor_name",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/shurcooL/sanitized_anchor_name",
-            "rev": "10ef21a441db47d8b13ebcc5fd2310f636973c77",
-            "sha256": "1cnbzcf47cn796rcjpph1s64qrabhkv5dn9sbynsy7m9zdwr5f01"
-        }
-    },
-    {
-        "goPackagePath": "github.com/russross/blackfriday",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/russross/blackfriday",
-            "rev": "d18b67ae0afd61dae240896eae1785f00709aa31",
-            "sha256": "1l78hz8k1ixry5fjw29834jz1q5ysjcpf6kx2ggjj1s6xh0bfzvf"
-        }
-    },
-    {
-        "goPackagePath": "github.com/yosssi/ace",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/yosssi/ace",
-            "rev": "71afeb714739f9d5f7e1849bcd4a0a5938e1a70d",
-            "sha256": "15k7ji8m3nqbwhnsvp82j4qa45sgvwv2giliw2xkdwi2g7mfrn8k"
-        }
-    },
-    {
-        "goPackagePath": "github.com/spf13/viper",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/spf13/viper",
-            "rev": "c1ccc378a054ea8d4e38d8c67f6938d4760b53dd",
-            "sha256": "0lpdzalqhqp9pwsg63inkxwjji7m0pp42ryw1499bqbjp97hriq0"
-        }
-    },
-    {
-        "goPackagePath": "github.com/spf13/pflag",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/spf13/pflag",
-            "rev": "367864438f1b1a3c7db4da06a2f55b144e6784e0",
-            "sha256": "03c6654hv4v1fj79i5sri3p9q2afqgicka4nicb6fr4kcfkkgbfp"
-        }
-    },
-    {
-        "goPackagePath": "github.com/spf13/jwalterweatherman",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/spf13/jwalterweatherman",
-            "rev": "33c24e77fb80341fe7130ee7c594256ff08ccc46",
-            "sha256": "1knvzspqzc2bh58q16zggzc8gcabjp5gr7zk4k7nx5ij4092cg0z"
-        }
-    },
-    {
-        "goPackagePath": "github.com/fsnotify/fsnotify",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/fsnotify/fsnotify",
-            "rev": "30411dbcefb7a1da7e84f75530ad3abe4011b4f8",
-            "sha256": "0kbpvyi6p9942k0vmcw5z13mja47f7hq7nqd332pn2zydss6kddm"
-        }
-    },
-    {
-        "goPackagePath": "github.com/magiconair/properties",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/magiconair/properties",
-            "rev": "c265cfa48dda6474e208715ca93e987829f572f8",
-            "sha256": "1ab9ywwsrdq5mvrcwl7m3276y1q4dfwinbv88vgpqwcqai9wkpp3"
-        }
-    },
-    {
-        "goPackagePath": "github.com/bep/inflect",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/bep/inflect",
-            "rev": "b896c45f5af983b1f416bdf3bb89c4f1f0926f69",
-            "sha256": "0drv6in94n7lmap4ajvgqlvdcbpn8alinfdzywzpihvzbx21b3h3"
-        }
-    },
-    {
-        "goPackagePath": "github.com/eknkc/amber",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/eknkc/amber",
-            "rev": "91774f050c1453128146169b626489e60108ec03",
-            "sha256": "1rb8bm35h8a77q4py6r3818cpwh7kpq1kh2ib2rb4i5s7z75ciis"
-        }
-    },
-    {
-        "goPackagePath": "github.com/spf13/afero",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/spf13/afero",
-            "rev": "1a8ecf8b9da1fb5306e149e83128fc447957d2a8",
-            "sha256": "1nrg0gmqnl4h6zjmi4mdhrwnl3l34nzxpq2hsr3nizfvrx5gqbzw"
-        }
-    },
-    {
-        "goPackagePath": "github.com/spf13/cast",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/spf13/cast",
-            "rev": "27b586b42e29bec072fe7379259cc719e1289da6",
-            "sha256": "1y73pfxdvm1bfpghwsfxj8gl4miv6fpzi9azxcknp6rcjn1gmq0x"
-        }
-    },
-    {
-        "goPackagePath": "github.com/spf13/cobra",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/spf13/cobra",
-            "rev": "bc81c21bd0d8be5ba2d6630a505d79d4467566e7",
-            "sha256": "1sp8gl25cjx0yibh6q1i8d5rbxpwaal3z8vz372wfmbz002say8r"
-        }
-    },
-    {
-        "goPackagePath": "github.com/dchest/cssmin",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/dchest/cssmin",
-            "rev": "fb8d9b44afdc258bfff6052d3667521babcb2239",
-            "sha256": "09sdijfx5d05z4cd5k6lhl7k3kbpdf2amzlngv15h5v0fff9qw4s"
-        }
-    },
-    {
-        "goPackagePath": "github.com/spf13/fsync",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/spf13/fsync",
-            "rev": "eefee59ad7de621617d4ff085cf768aab4b919b1",
-            "sha256": "0d56xdczawikyczc12i661qc79dbv4q8ihlj4p20zsjkyxxym59p"
-        }
-    },
-    {
-        "goPackagePath": "github.com/cpuguy83/go-md2man",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/cpuguy83/go-md2man",
-            "rev": "2724a9c9051aa62e9cca11304e7dd518e9e41599",
-            "sha256": "1j2bigs7ixy20cdqd246nxr417md2qcyvkfk3x94992cr88d0vyj"
-        }
-    },
-    {
-        "goPackagePath": "github.com/miekg/mmark",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/miekg/mmark",
-            "rev": "adb5c3e2e9f3e7da9bd25291edda8e66c0045a2a",
-            "sha256": "0fycz17fj37fh95lfshdrfwrgkzi3hl1kgnily0cxc9zwfbap3qa"
-        }
-    },
-    {
-        "goPackagePath": "github.com/spf13/nitro",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/spf13/nitro",
-            "rev": "24d7ef30a12da0bdc5e2eb370a79c659ddccf0e8",
-            "sha256": "143sbpx0jdgf8f8ayv51x6l4jg6cnv6nps6n60qxhx4vd90s6mib"
-        }
-    },
-    {
-        "goPackagePath": "github.com/PuerkitoBio/purell",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/PuerkitoBio/purell",
-            "rev": "1d5d1cfad45d42ec5f81fa8ef23de09cebc6dcc3",
-            "sha256": "12k82576ka21c6572yy2v81kxpjrgf9mffjlz469g3vs0g3nkwlb"
-        }
-    },
-    {
-        "goPackagePath": "github.com/pkg/sftp",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/pkg/sftp",
-            "rev": "d4c18e7ffdc496a38de67dde6e29b2f364afc472",
-            "sha256": "0cnl83k317gxskayfj3xwr4bl0vcbjvlwi3q0vjwvircynb6xscj"
-        }
-    },
-    {
-        "goPackagePath": "github.com/kr/fs",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/kr/fs",
-            "rev": "2788f0dbd16903de03cb8186e5c7d97b69ad387b",
-            "sha256": "1c0fipl4rsh0v5liq1ska1dl83v3llab4k6lm8mvrx9c4dyp71ly"
-        }
-    },
-    {
-        "goPackagePath": "github.com/kyokomi/emoji",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/kyokomi/emoji",
-            "rev": "17c5e7085c9d59630aa578df67f4469481fbe7a9",
-            "sha256": "0qs4mi7z1lghiyiw7s2bz5y959wj9ifmhyqh39xwqk69d690jwlp"
-        }
-    },
-    {
-        "goPackagePath": "github.com/pkg/errors",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/pkg/errors",
-            "rev": "494e70f7620561491c2ca11e185bbef4b70060da",
-            "sha256": "0a0961ixl67vryhnzyzhai357c9n9a7v3vpkpqrh32spn033gjd9"
-        }
-    },
-    {
-        "goPackagePath": "github.com/PuerkitoBio/urlesc",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/PuerkitoBio/urlesc",
-            "rev": "5fa9ff0392746aeae1c4b37fcc42c65afa7a9587",
-            "sha256": "0dppkmfs0hb5vcqli191x9yss5vvlx29qxjcywhdfirc89rn0sni"
-        }
-    }
-]
diff --git a/pkgs/applications/misc/hugo/deps.nix b/pkgs/applications/misc/hugo/deps.nix
new file mode 100644
index 00000000000..20d0d8f1c9d
--- /dev/null
+++ b/pkgs/applications/misc/hugo/deps.nix
@@ -0,0 +1,317 @@
+[
+  {
+    goPackagePath = "golang.org/x/sys";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/sys";
+      rev = "d9157a9621b69ad1d8d77a1933590c416593f24f";
+      sha256 = "1asdbp7rj1j1m1aar1a022wpcwbml6zih6cpbxaw7b2m8v8is931";
+    };
+  }
+  {
+    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/gorilla/websocket";
+    fetch = {
+      type = "git";
+      url = "https://github.com/gorilla/websocket";
+      rev = "a622679ebd7a3b813862379232f645f8e690e43f";
+      sha256 = "1nc9jbcmgya1i6dmf6sbcqsnxi9hbjg6dz1z0k7zmc6xdwlq0y4q";
+    };
+  }
+  {
+    goPackagePath = "github.com/inconshreveable/mousetrap";
+    fetch = {
+      type = "git";
+      url = "https://github.com/inconshreveable/mousetrap";
+      rev = "9dbb96d2c3a964935b0870b5abaea13c98b483aa";
+      sha256 = "1f9g8vm18qv1rcb745a4iahql9vfrz0jni9mnzriab2wy1pfdl5b";
+    };
+  }
+  {
+    goPackagePath = "github.com/kardianos/osext";
+    fetch = {
+      type = "git";
+      url = "https://github.com/kardianos/osext";
+      rev = "29ae4ffbc9a6fe9fb2bc5029050ce6996ea1d3bc";
+      sha256 = "1mawalaz84i16njkz6f9fd5jxhcbxkbsjnav3cmqq2dncv2hyv8a";
+    };
+  }
+  {
+    goPackagePath = "github.com/hashicorp/hcl";
+    fetch = {
+      type = "git";
+      url = "https://github.com/hashicorp/hcl";
+      rev = "54864211433d45cb780682431585b3e573b49e4a";
+      sha256 = "07l2dydzjpdgm2d4a72hkmincn455j3nrafg6hs3c23bkvizj950";
+    };
+  }
+  {
+    goPackagePath = "github.com/hashicorp/go-multierror";
+    fetch = {
+      type = "git";
+      url = "https://github.com/hashicorp/go-multierror";
+      rev = "56912fb08d85084aa318edcf2bba735b97cf35c5";
+      sha256 = "0s01cqdab2f7fxkkjjk2wqx05a1shnwlvfn45h2pi3i4gapvcn0r";
+    };
+  }
+  {
+    goPackagePath = "github.com/BurntSushi/toml";
+    fetch = {
+      type = "git";
+      url = "https://github.com/BurntSushi/toml";
+      rev = "056c9bc7be7190eaa7715723883caffa5f8fa3e4";
+      sha256 = "0gkgkw04ndr5y7hrdy0r4v2drs5srwfcw2bs1gyas066hwl84xyw";
+    };
+  }
+  {
+    goPackagePath = "github.com/mitchellh/mapstructure";
+    fetch = {
+      type = "git";
+      url = "https://github.com/mitchellh/mapstructure";
+      rev = "281073eb9eb092240d33ef253c404f1cca550309";
+      sha256 = "1zjx9fv29639sp1fn84rxs830z7gp7bs38yd5y1hl5adb8s5x1mh";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/text";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/text";
+      rev = "5eb8d4684c4796dd36c74f6452f2c0fa6c79597e";
+      sha256 = "1cjwm2pv42dbfqc6ylr7jmma902zg4gng5aarqrbjf1k2nf2vs14";
+    };
+  }
+  {
+    goPackagePath = "github.com/shurcooL/sanitized_anchor_name";
+    fetch = {
+      type = "git";
+      url = "https://github.com/shurcooL/sanitized_anchor_name";
+      rev = "10ef21a441db47d8b13ebcc5fd2310f636973c77";
+      sha256 = "1cnbzcf47cn796rcjpph1s64qrabhkv5dn9sbynsy7m9zdwr5f01";
+    };
+  }
+  {
+    goPackagePath = "github.com/russross/blackfriday";
+    fetch = {
+      type = "git";
+      url = "https://github.com/russross/blackfriday";
+      rev = "d18b67ae0afd61dae240896eae1785f00709aa31";
+      sha256 = "1l78hz8k1ixry5fjw29834jz1q5ysjcpf6kx2ggjj1s6xh0bfzvf";
+    };
+  }
+  {
+    goPackagePath = "github.com/yosssi/ace";
+    fetch = {
+      type = "git";
+      url = "https://github.com/yosssi/ace";
+      rev = "71afeb714739f9d5f7e1849bcd4a0a5938e1a70d";
+      sha256 = "15k7ji8m3nqbwhnsvp82j4qa45sgvwv2giliw2xkdwi2g7mfrn8k";
+    };
+  }
+  {
+    goPackagePath = "github.com/spf13/viper";
+    fetch = {
+      type = "git";
+      url = "https://github.com/spf13/viper";
+      rev = "c1ccc378a054ea8d4e38d8c67f6938d4760b53dd";
+      sha256 = "0lpdzalqhqp9pwsg63inkxwjji7m0pp42ryw1499bqbjp97hriq0";
+    };
+  }
+  {
+    goPackagePath = "github.com/spf13/pflag";
+    fetch = {
+      type = "git";
+      url = "https://github.com/spf13/pflag";
+      rev = "367864438f1b1a3c7db4da06a2f55b144e6784e0";
+      sha256 = "03c6654hv4v1fj79i5sri3p9q2afqgicka4nicb6fr4kcfkkgbfp";
+    };
+  }
+  {
+    goPackagePath = "github.com/spf13/jwalterweatherman";
+    fetch = {
+      type = "git";
+      url = "https://github.com/spf13/jwalterweatherman";
+      rev = "33c24e77fb80341fe7130ee7c594256ff08ccc46";
+      sha256 = "1knvzspqzc2bh58q16zggzc8gcabjp5gr7zk4k7nx5ij4092cg0z";
+    };
+  }
+  {
+    goPackagePath = "github.com/fsnotify/fsnotify";
+    fetch = {
+      type = "git";
+      url = "https://github.com/fsnotify/fsnotify";
+      rev = "30411dbcefb7a1da7e84f75530ad3abe4011b4f8";
+      sha256 = "0kbpvyi6p9942k0vmcw5z13mja47f7hq7nqd332pn2zydss6kddm";
+    };
+  }
+  {
+    goPackagePath = "github.com/magiconair/properties";
+    fetch = {
+      type = "git";
+      url = "https://github.com/magiconair/properties";
+      rev = "c265cfa48dda6474e208715ca93e987829f572f8";
+      sha256 = "1ab9ywwsrdq5mvrcwl7m3276y1q4dfwinbv88vgpqwcqai9wkpp3";
+    };
+  }
+  {
+    goPackagePath = "github.com/bep/inflect";
+    fetch = {
+      type = "git";
+      url = "https://github.com/bep/inflect";
+      rev = "b896c45f5af983b1f416bdf3bb89c4f1f0926f69";
+      sha256 = "0drv6in94n7lmap4ajvgqlvdcbpn8alinfdzywzpihvzbx21b3h3";
+    };
+  }
+  {
+    goPackagePath = "github.com/eknkc/amber";
+    fetch = {
+      type = "git";
+      url = "https://github.com/eknkc/amber";
+      rev = "91774f050c1453128146169b626489e60108ec03";
+      sha256 = "1rb8bm35h8a77q4py6r3818cpwh7kpq1kh2ib2rb4i5s7z75ciis";
+    };
+  }
+  {
+    goPackagePath = "github.com/spf13/afero";
+    fetch = {
+      type = "git";
+      url = "https://github.com/spf13/afero";
+      rev = "1a8ecf8b9da1fb5306e149e83128fc447957d2a8";
+      sha256 = "1nrg0gmqnl4h6zjmi4mdhrwnl3l34nzxpq2hsr3nizfvrx5gqbzw";
+    };
+  }
+  {
+    goPackagePath = "github.com/spf13/cast";
+    fetch = {
+      type = "git";
+      url = "https://github.com/spf13/cast";
+      rev = "27b586b42e29bec072fe7379259cc719e1289da6";
+      sha256 = "1y73pfxdvm1bfpghwsfxj8gl4miv6fpzi9azxcknp6rcjn1gmq0x";
+    };
+  }
+  {
+    goPackagePath = "github.com/spf13/cobra";
+    fetch = {
+      type = "git";
+      url = "https://github.com/spf13/cobra";
+      rev = "bc81c21bd0d8be5ba2d6630a505d79d4467566e7";
+      sha256 = "1sp8gl25cjx0yibh6q1i8d5rbxpwaal3z8vz372wfmbz002say8r";
+    };
+  }
+  {
+    goPackagePath = "github.com/dchest/cssmin";
+    fetch = {
+      type = "git";
+      url = "https://github.com/dchest/cssmin";
+      rev = "fb8d9b44afdc258bfff6052d3667521babcb2239";
+      sha256 = "09sdijfx5d05z4cd5k6lhl7k3kbpdf2amzlngv15h5v0fff9qw4s";
+    };
+  }
+  {
+    goPackagePath = "github.com/spf13/fsync";
+    fetch = {
+      type = "git";
+      url = "https://github.com/spf13/fsync";
+      rev = "eefee59ad7de621617d4ff085cf768aab4b919b1";
+      sha256 = "0d56xdczawikyczc12i661qc79dbv4q8ihlj4p20zsjkyxxym59p";
+    };
+  }
+  {
+    goPackagePath = "github.com/cpuguy83/go-md2man";
+    fetch = {
+      type = "git";
+      url = "https://github.com/cpuguy83/go-md2man";
+      rev = "2724a9c9051aa62e9cca11304e7dd518e9e41599";
+      sha256 = "1j2bigs7ixy20cdqd246nxr417md2qcyvkfk3x94992cr88d0vyj";
+    };
+  }
+  {
+    goPackagePath = "github.com/miekg/mmark";
+    fetch = {
+      type = "git";
+      url = "https://github.com/miekg/mmark";
+      rev = "adb5c3e2e9f3e7da9bd25291edda8e66c0045a2a";
+      sha256 = "0fycz17fj37fh95lfshdrfwrgkzi3hl1kgnily0cxc9zwfbap3qa";
+    };
+  }
+  {
+    goPackagePath = "github.com/spf13/nitro";
+    fetch = {
+      type = "git";
+      url = "https://github.com/spf13/nitro";
+      rev = "24d7ef30a12da0bdc5e2eb370a79c659ddccf0e8";
+      sha256 = "143sbpx0jdgf8f8ayv51x6l4jg6cnv6nps6n60qxhx4vd90s6mib";
+    };
+  }
+  {
+    goPackagePath = "github.com/PuerkitoBio/purell";
+    fetch = {
+      type = "git";
+      url = "https://github.com/PuerkitoBio/purell";
+      rev = "1d5d1cfad45d42ec5f81fa8ef23de09cebc6dcc3";
+      sha256 = "12k82576ka21c6572yy2v81kxpjrgf9mffjlz469g3vs0g3nkwlb";
+    };
+  }
+  {
+    goPackagePath = "github.com/pkg/sftp";
+    fetch = {
+      type = "git";
+      url = "https://github.com/pkg/sftp";
+      rev = "d4c18e7ffdc496a38de67dde6e29b2f364afc472";
+      sha256 = "0cnl83k317gxskayfj3xwr4bl0vcbjvlwi3q0vjwvircynb6xscj";
+    };
+  }
+  {
+    goPackagePath = "github.com/kr/fs";
+    fetch = {
+      type = "git";
+      url = "https://github.com/kr/fs";
+      rev = "2788f0dbd16903de03cb8186e5c7d97b69ad387b";
+      sha256 = "1c0fipl4rsh0v5liq1ska1dl83v3llab4k6lm8mvrx9c4dyp71ly";
+    };
+  }
+  {
+    goPackagePath = "github.com/kyokomi/emoji";
+    fetch = {
+      type = "git";
+      url = "https://github.com/kyokomi/emoji";
+      rev = "17c5e7085c9d59630aa578df67f4469481fbe7a9";
+      sha256 = "0qs4mi7z1lghiyiw7s2bz5y959wj9ifmhyqh39xwqk69d690jwlp";
+    };
+  }
+  {
+    goPackagePath = "github.com/pkg/errors";
+    fetch = {
+      type = "git";
+      url = "https://github.com/pkg/errors";
+      rev = "494e70f7620561491c2ca11e185bbef4b70060da";
+      sha256 = "0a0961ixl67vryhnzyzhai357c9n9a7v3vpkpqrh32spn033gjd9";
+    };
+  }
+  {
+    goPackagePath = "github.com/PuerkitoBio/urlesc";
+    fetch = {
+      type = "git";
+      url = "https://github.com/PuerkitoBio/urlesc";
+      rev = "5fa9ff0392746aeae1c4b37fcc42c65afa7a9587";
+      sha256 = "0dppkmfs0hb5vcqli191x9yss5vvlx29qxjcywhdfirc89rn0sni";
+    };
+  }
+]
diff --git a/pkgs/applications/misc/mop/default.nix b/pkgs/applications/misc/mop/default.nix
index ccdb47c4b60..336b136c56d 100644
--- a/pkgs/applications/misc/mop/default.nix
+++ b/pkgs/applications/misc/mop/default.nix
@@ -6,7 +6,7 @@ buildGoPackage rec {
   rev = "bc666ec165d08b43134f7ec0bf29083ad5466243";
 
   goPackagePath = "github.com/michaeldv/mop";
-  goDeps = ./deps.json;
+  goDeps = ./deps.nix;
 
   preConfigure = ''
     for i in $(find . -type f);do
diff --git a/pkgs/applications/misc/mop/deps.json b/pkgs/applications/misc/mop/deps.json
deleted file mode 100644
index d2c59589dc2..00000000000
--- a/pkgs/applications/misc/mop/deps.json
+++ /dev/null
@@ -1,11 +0,0 @@
-[
-    {
-        "goPackagePath": "github.com/nsf/termbox-go",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/nsf/termbox-go",
-            "rev": "9aecf65084a5754f12d27508fa2e6ed56851953b",
-            "sha256": "16sak07bgvmax4zxfrd4jia1dgygk733xa8vk8cdx28z98awbfsh"
-        }
-    }
-]
diff --git a/pkgs/applications/misc/mop/deps.nix b/pkgs/applications/misc/mop/deps.nix
new file mode 100644
index 00000000000..4081cd1ddaa
--- /dev/null
+++ b/pkgs/applications/misc/mop/deps.nix
@@ -0,0 +1,11 @@
+[
+  {
+    goPackagePath = "github.com/nsf/termbox-go";
+    fetch = {
+      type = "git";
+      url = "https://github.com/nsf/termbox-go";
+      rev = "9aecf65084a5754f12d27508fa2e6ed56851953b";
+      sha256 = "16sak07bgvmax4zxfrd4jia1dgygk733xa8vk8cdx28z98awbfsh";
+    };
+  }
+]
diff --git a/pkgs/applications/misc/wego/default.nix b/pkgs/applications/misc/wego/default.nix
index 5918f3ef378..e59a3e98943 100644
--- a/pkgs/applications/misc/wego/default.nix
+++ b/pkgs/applications/misc/wego/default.nix
@@ -13,5 +13,5 @@ buildGoPackage rec {
     sha256 = "14p3hvv82bsxqnbnzz8hjv75i39kzg154a132n6cdxx3vgw76gck";
   };
 
-  goDeps = ./deps.json;
+  goDeps = ./deps.nix;
 }
diff --git a/pkgs/applications/misc/wego/deps.json b/pkgs/applications/misc/wego/deps.json
deleted file mode 100644
index 5bfb64ffbc5..00000000000
--- a/pkgs/applications/misc/wego/deps.json
+++ /dev/null
@@ -1,29 +0,0 @@
-[
-    {
-        "goPackagePath": "github.com/mattn/go-runewidth",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/mattn/go-runewidth",
-            "rev": "d6bea18f789704b5f83375793155289da36a3c7f",
-            "sha256": "1hnigpn7rjbwd1ircxkyx9hvi0xmxr32b2jdy2jzw6b3jmcnz1fs"
-        }
-    },
-    {
-        "goPackagePath": "github.com/mattn/go-colorable",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/mattn/go-colorable",
-            "rev": "3dac7b4f76f6e17fb39b768b89e3783d16e237fe",
-            "sha256": "08680mba8hh2rghymqbzd4m40r9k765w5kbzvrif9ngd6h85qnw6"
-        }
-    },
-    {
-        "goPackagePath": "github.com/schachmat/ingo",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/schachmat/ingo",
-            "rev": "fab41e4e62cbef5d92998746ec25f7e195100f38",
-            "sha256": "04yfnch7pdabjjqfl2qxjmsaknvp4m1rbjlv8qrpmnqwjkxzx0hb"
-        }
-    }
-]
diff --git a/pkgs/applications/misc/wego/deps.nix b/pkgs/applications/misc/wego/deps.nix
new file mode 100644
index 00000000000..408b3908d8f
--- /dev/null
+++ b/pkgs/applications/misc/wego/deps.nix
@@ -0,0 +1,29 @@
+[
+  {
+    goPackagePath = "github.com/mattn/go-runewidth";
+    fetch = {
+      type = "git";
+      url = "https://github.com/mattn/go-runewidth";
+      rev = "d6bea18f789704b5f83375793155289da36a3c7f";
+      sha256 = "1hnigpn7rjbwd1ircxkyx9hvi0xmxr32b2jdy2jzw6b3jmcnz1fs";
+    };
+  }
+  {
+    goPackagePath = "github.com/mattn/go-colorable";
+    fetch = {
+      type = "git";
+      url = "https://github.com/mattn/go-colorable";
+      rev = "3dac7b4f76f6e17fb39b768b89e3783d16e237fe";
+      sha256 = "08680mba8hh2rghymqbzd4m40r9k765w5kbzvrif9ngd6h85qnw6";
+    };
+  }
+  {
+    goPackagePath = "github.com/schachmat/ingo";
+    fetch = {
+      type = "git";
+      url = "https://github.com/schachmat/ingo";
+      rev = "fab41e4e62cbef5d92998746ec25f7e195100f38";
+      sha256 = "04yfnch7pdabjjqfl2qxjmsaknvp4m1rbjlv8qrpmnqwjkxzx0hb";
+    };
+  }
+]
diff --git a/pkgs/applications/networking/drive/default.nix b/pkgs/applications/networking/drive/default.nix
index 3b64d7af43b..3f1b5dad727 100644
--- a/pkgs/applications/networking/drive/default.nix
+++ b/pkgs/applications/networking/drive/default.nix
@@ -14,5 +14,5 @@ buildGoPackage rec {
     sha256 = "07s4nhfcr6vznf1amvl3a4wq2hn9zq871rcppfi4i6zs7iw2ay1v";
   };
 
-  goDeps = ./deps.json;
+  goDeps = ./deps.nix;
 }
diff --git a/pkgs/applications/networking/drive/deps.json b/pkgs/applications/networking/drive/deps.json
deleted file mode 100644
index a1d1fde7727..00000000000
--- a/pkgs/applications/networking/drive/deps.json
+++ /dev/null
@@ -1,164 +0,0 @@
-[
-    {
-        "goPackagePath": "golang.org/x/net",
-        "fetch": {
-            "type": "git",
-            "url": "https://go.googlesource.com/net",
-            "rev": "62ac18b461605b4be188bbc7300e9aa2bc836cd4",
-            "sha256": "0lwwvbbwbf3yshxkfhn6z20gd45dkvnmw2ms36diiy34krgy402p"
-        }
-    },
-    {
-        "goPackagePath": "google.golang.org/api",
-        "fetch": {
-            "type": "git",
-            "url": "https://code.googlesource.com/google-api-go-client",
-            "rev": "a5c3e2a4792aff40e59840d9ecdff0542a202a80",
-            "sha256": "1kigddnbyrl9ddpj5rs8njvf1ck54ipi4q1282k0d6b3am5qfbj8"
-        }
-    },
-    {
-        "goPackagePath": "google.golang.org/cloud",
-        "fetch": {
-            "type": "git",
-            "url": "https://code.googlesource.com/gocloud",
-            "rev": "6335269abf9002cf5a84613c13cda6010842b834",
-            "sha256": "15xrqxna5ms0r634k3bfzyymn431dvqcjwbsap8ay60x371kzbwf"
-        }
-    },
-    {
-        "goPackagePath": "golang.org/x/oauth2",
-        "fetch": {
-            "type": "git",
-            "url": "https://go.googlesource.com/oauth2",
-            "rev": "397fe7649477ff2e8ced8fc0b2696f781e53745a",
-            "sha256": "0fza0l7iwh6llkq2yzqn7dxi138vab0da64lnghfj1p71fprjzn8"
-        }
-    },
-    {
-        "goPackagePath": "github.com/mattn/go-isatty",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/mattn/go-isatty",
-            "rev": "ae0b1f8f8004be68d791a576e3d8e7648ab41449",
-            "sha256": "0qrcsh7j9mxcaspw8lfxh9hhflz55vj4aq1xy00v78301czq6jlj"
-        }
-    },
-    {
-        "goPackagePath": "github.com/boltdb/bolt",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/boltdb/bolt",
-            "rev": "957d850b5158a4eebf915476058e720f43459584",
-            "sha256": "193adhhsqdy0kyq1l1fi8pg2n6pwyrw4h607qm78qyi26f8i7vzf"
-        }
-    },
-    {
-        "goPackagePath": "github.com/cheggaaa/pb",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/cheggaaa/pb",
-            "rev": "e648e12b78cedf14ebb2fc1855033f07b034cfbb",
-            "sha256": "03k4cars7hcqqgdsd0minfls2p7gjpm8q6y8vknh1s68kvxd4xam"
-        }
-    },
-    {
-        "goPackagePath": "github.com/odeke-em/cli-spinner",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/odeke-em/cli-spinner",
-            "rev": "610063bb4aeef25f7645b3e6080456655ec0fb33",
-            "sha256": "13wzs2qrxd72ah32ym0ppswhvyimjw5cqaq3q153y68vlvxd048c"
-        }
-    },
-    {
-        "goPackagePath": "github.com/odeke-em/statos",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/odeke-em/statos",
-            "rev": "f27d6ab69b62abd9d9fe80d355e23a3e45d347d6",
-            "sha256": "17cpks8bi9i7p8j38x0wy60jb9g39wbzszcmhx4hlq6yzxr04jvs"
-        }
-    },
-    {
-        "goPackagePath": "github.com/odeke-em/exponential-backoff",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/odeke-em/exponential-backoff",
-            "rev": "96e25d36ae36ad09ac02cbfe653b44c4043a8e09",
-            "sha256": "1as21p2jj8xpahvdxqwsw2i1s3fll14dlc9j192iq7xl1ybwpqs6"
-        }
-    },
-    {
-        "goPackagePath": "github.com/odeke-em/extractor",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/odeke-em/extractor",
-            "rev": "801861aedb854c7ac5e1329e9713023e9dc2b4d4",
-            "sha256": "036zmnqxy48h6mxiwywgxix2p4fqvl4svlmcp734ri2rbq3cmxs1"
-        }
-    },
-    {
-        "goPackagePath": "github.com/odeke-em/meddler",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/odeke-em/meddler",
-            "rev": "d2b51d2b40e786ab5f810d85e65b96404cf33570",
-            "sha256": "0m0fqrn3kxy4swyk4ja1y42dn1i35rq9j85y11wb222qppy2342x"
-        }
-    },
-    {
-        "goPackagePath": "github.com/odeke-em/xon",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/odeke-em/xon",
-            "rev": "d580be739d723da4f6378083128f93017b8ab295",
-            "sha256": "07a7zj01d4a23xqp01m48jp2v5mw49islf4nbq2rj13sd5w4s6sc"
-        }
-    },
-    {
-        "goPackagePath": "github.com/odeke-em/cache",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/odeke-em/cache",
-            "rev": "b51b08cb6cf889deda6c941a5205baecfd16f3eb",
-            "sha256": "1rmm1ky7irqypqjkk6qcd2n0xkzpaggdxql9dp9i9qci5rvvwwd4"
-        }
-    },
-    {
-        "goPackagePath": "github.com/odeke-em/command",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/odeke-em/command",
-            "rev": "91ca5ec5e9a1bc2668b1ccbe0967e04a349e3561",
-            "sha256": "1ghckzr8h99ckagpmb15p61xazdjmf9mjmlym634hsr9vcj84v62"
-        }
-    },
-    {
-        "goPackagePath": "github.com/odeke-em/log",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/odeke-em/log",
-            "rev": "cad53c4565a0b0304577bd13f3862350bdc5f907",
-            "sha256": "059c933qjikxlvaywzpzljqnab19svymbv6x32pc7khw156fh48w"
-        }
-    },
-    {
-        "goPackagePath": "github.com/odeke-em/pretty-words",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/odeke-em/pretty-words",
-            "rev": "9d37a7fcb4ae6f94b288d371938482994458cecb",
-            "sha256": "1466wjhrg9lhqmzil1vf8qj16fxk32b5kxlcccyw2x6dybqa6pkl"
-        }
-    },
-    {
-        "goPackagePath": "github.com/skratchdot/open-golang",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/skratchdot/open-golang",
-            "rev": "c8748311a7528d0ba7330d302adbc5a677ef9c9e",
-            "sha256": "0qhn2d00v3m9fiqk9z7swdm599clc6j7rnli983s8s1byyp0x3ac"
-        }
-    }
-]
diff --git a/pkgs/applications/networking/drive/deps.nix b/pkgs/applications/networking/drive/deps.nix
new file mode 100644
index 00000000000..ad5a8f7c4e6
--- /dev/null
+++ b/pkgs/applications/networking/drive/deps.nix
@@ -0,0 +1,164 @@
+[
+  {
+    goPackagePath = "golang.org/x/net";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/net";
+      rev = "62ac18b461605b4be188bbc7300e9aa2bc836cd4";
+      sha256 = "0lwwvbbwbf3yshxkfhn6z20gd45dkvnmw2ms36diiy34krgy402p";
+    };
+  }
+  {
+    goPackagePath = "google.golang.org/api";
+    fetch = {
+      type = "git";
+      url = "https://code.googlesource.com/google-api-go-client";
+      rev = "a5c3e2a4792aff40e59840d9ecdff0542a202a80";
+      sha256 = "1kigddnbyrl9ddpj5rs8njvf1ck54ipi4q1282k0d6b3am5qfbj8";
+    };
+  }
+  {
+    goPackagePath = "google.golang.org/cloud";
+    fetch = {
+      type = "git";
+      url = "https://code.googlesource.com/gocloud";
+      rev = "6335269abf9002cf5a84613c13cda6010842b834";
+      sha256 = "15xrqxna5ms0r634k3bfzyymn431dvqcjwbsap8ay60x371kzbwf";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/oauth2";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/oauth2";
+      rev = "397fe7649477ff2e8ced8fc0b2696f781e53745a";
+      sha256 = "0fza0l7iwh6llkq2yzqn7dxi138vab0da64lnghfj1p71fprjzn8";
+    };
+  }
+  {
+    goPackagePath = "github.com/mattn/go-isatty";
+    fetch = {
+      type = "git";
+      url = "https://github.com/mattn/go-isatty";
+      rev = "ae0b1f8f8004be68d791a576e3d8e7648ab41449";
+      sha256 = "0qrcsh7j9mxcaspw8lfxh9hhflz55vj4aq1xy00v78301czq6jlj";
+    };
+  }
+  {
+    goPackagePath = "github.com/boltdb/bolt";
+    fetch = {
+      type = "git";
+      url = "https://github.com/boltdb/bolt";
+      rev = "957d850b5158a4eebf915476058e720f43459584";
+      sha256 = "193adhhsqdy0kyq1l1fi8pg2n6pwyrw4h607qm78qyi26f8i7vzf";
+    };
+  }
+  {
+    goPackagePath = "github.com/cheggaaa/pb";
+    fetch = {
+      type = "git";
+      url = "https://github.com/cheggaaa/pb";
+      rev = "e648e12b78cedf14ebb2fc1855033f07b034cfbb";
+      sha256 = "03k4cars7hcqqgdsd0minfls2p7gjpm8q6y8vknh1s68kvxd4xam";
+    };
+  }
+  {
+    goPackagePath = "github.com/odeke-em/cli-spinner";
+    fetch = {
+      type = "git";
+      url = "https://github.com/odeke-em/cli-spinner";
+      rev = "610063bb4aeef25f7645b3e6080456655ec0fb33";
+      sha256 = "13wzs2qrxd72ah32ym0ppswhvyimjw5cqaq3q153y68vlvxd048c";
+    };
+  }
+  {
+    goPackagePath = "github.com/odeke-em/statos";
+    fetch = {
+      type = "git";
+      url = "https://github.com/odeke-em/statos";
+      rev = "f27d6ab69b62abd9d9fe80d355e23a3e45d347d6";
+      sha256 = "17cpks8bi9i7p8j38x0wy60jb9g39wbzszcmhx4hlq6yzxr04jvs";
+    };
+  }
+  {
+    goPackagePath = "github.com/odeke-em/exponential-backoff";
+    fetch = {
+      type = "git";
+      url = "https://github.com/odeke-em/exponential-backoff";
+      rev = "96e25d36ae36ad09ac02cbfe653b44c4043a8e09";
+      sha256 = "1as21p2jj8xpahvdxqwsw2i1s3fll14dlc9j192iq7xl1ybwpqs6";
+    };
+  }
+  {
+    goPackagePath = "github.com/odeke-em/extractor";
+    fetch = {
+      type = "git";
+      url = "https://github.com/odeke-em/extractor";
+      rev = "801861aedb854c7ac5e1329e9713023e9dc2b4d4";
+      sha256 = "036zmnqxy48h6mxiwywgxix2p4fqvl4svlmcp734ri2rbq3cmxs1";
+    };
+  }
+  {
+    goPackagePath = "github.com/odeke-em/meddler";
+    fetch = {
+      type = "git";
+      url = "https://github.com/odeke-em/meddler";
+      rev = "d2b51d2b40e786ab5f810d85e65b96404cf33570";
+      sha256 = "0m0fqrn3kxy4swyk4ja1y42dn1i35rq9j85y11wb222qppy2342x";
+    };
+  }
+  {
+    goPackagePath = "github.com/odeke-em/xon";
+    fetch = {
+      type = "git";
+      url = "https://github.com/odeke-em/xon";
+      rev = "d580be739d723da4f6378083128f93017b8ab295";
+      sha256 = "07a7zj01d4a23xqp01m48jp2v5mw49islf4nbq2rj13sd5w4s6sc";
+    };
+  }
+  {
+    goPackagePath = "github.com/odeke-em/cache";
+    fetch = {
+      type = "git";
+      url = "https://github.com/odeke-em/cache";
+      rev = "b51b08cb6cf889deda6c941a5205baecfd16f3eb";
+      sha256 = "1rmm1ky7irqypqjkk6qcd2n0xkzpaggdxql9dp9i9qci5rvvwwd4";
+    };
+  }
+  {
+    goPackagePath = "github.com/odeke-em/command";
+    fetch = {
+      type = "git";
+      url = "https://github.com/odeke-em/command";
+      rev = "91ca5ec5e9a1bc2668b1ccbe0967e04a349e3561";
+      sha256 = "1ghckzr8h99ckagpmb15p61xazdjmf9mjmlym634hsr9vcj84v62";
+    };
+  }
+  {
+    goPackagePath = "github.com/odeke-em/log";
+    fetch = {
+      type = "git";
+      url = "https://github.com/odeke-em/log";
+      rev = "cad53c4565a0b0304577bd13f3862350bdc5f907";
+      sha256 = "059c933qjikxlvaywzpzljqnab19svymbv6x32pc7khw156fh48w";
+    };
+  }
+  {
+    goPackagePath = "github.com/odeke-em/pretty-words";
+    fetch = {
+      type = "git";
+      url = "https://github.com/odeke-em/pretty-words";
+      rev = "9d37a7fcb4ae6f94b288d371938482994458cecb";
+      sha256 = "1466wjhrg9lhqmzil1vf8qj16fxk32b5kxlcccyw2x6dybqa6pkl";
+    };
+  }
+  {
+    goPackagePath = "github.com/skratchdot/open-golang";
+    fetch = {
+      type = "git";
+      url = "https://github.com/skratchdot/open-golang";
+      rev = "c8748311a7528d0ba7330d302adbc5a677ef9c9e";
+      sha256 = "0qhn2d00v3m9fiqk9z7swdm599clc6j7rnli983s8s1byyp0x3ac";
+    };
+  }
+]
diff --git a/pkgs/applications/networking/instant-messengers/pond/default.nix b/pkgs/applications/networking/instant-messengers/pond/default.nix
index 3b7b96b778f..8190be65e75 100644
--- a/pkgs/applications/networking/instant-messengers/pond/default.nix
+++ b/pkgs/applications/networking/instant-messengers/pond/default.nix
@@ -18,7 +18,7 @@ buildGoPackage rec {
     sha256 = "1dmgbg4ak3jkbgmxh0lr4hga1nl623mh7pvsgby1rxl4ivbzwkh4";
   };
 
-  goDeps = ./deps.json;
+  goDeps = ./deps.nix;
 
   buildInputs = [ trousers pkgconfig gtk3 gtkspell3 ]
     ++ stdenv.lib.optional isx86_64 dclxvi
diff --git a/pkgs/applications/networking/instant-messengers/pond/deps.json b/pkgs/applications/networking/instant-messengers/pond/deps.json
deleted file mode 100644
index c4d600a2ab3..00000000000
--- a/pkgs/applications/networking/instant-messengers/pond/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/agl/ed25519",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/agl/ed25519",
-            "rev": "278e1ec8e8a6e017cd07577924d6766039146ced",
-            "sha256": "165d89cc6dl28j4hkn86pny0jz3sa6hamzdvpvwdj4iha3x6lzc9"
-        }
-    },
-    {
-        "goPackagePath": "github.com/golang/protobuf",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/golang/protobuf",
-            "rev": "59b73b37c1e45995477aae817e4a653c89a858db",
-            "sha256": "1dx22jvhvj34ivpr7gw01fncg9yyx35mbpal4mpgnqka7ajmgjsa"
-        }
-    },
-    {
-        "goPackagePath": "golang.org/x/net",
-        "fetch": {
-            "type": "git",
-            "url": "https://go.googlesource.com/net",
-            "rev": "62ac18b461605b4be188bbc7300e9aa2bc836cd4",
-            "sha256": "0lwwvbbwbf3yshxkfhn6z20gd45dkvnmw2ms36diiy34krgy402p"
-        }
-    },
-    {
-        "goPackagePath": "github.com/agl/go-gtk",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/agl/go-gtk",
-            "rev": "91c1edb38c241d73129e6b098ca1c9fa83abfc15",
-            "sha256": "156ixlhakpqgyp35rsvmndrqz8aggv5bcmzg9ynpri3b9j6kim4d"
-        }
-    }
-]
diff --git a/pkgs/applications/networking/instant-messengers/pond/deps.nix b/pkgs/applications/networking/instant-messengers/pond/deps.nix
new file mode 100644
index 00000000000..55850f0a89c
--- /dev/null
+++ b/pkgs/applications/networking/instant-messengers/pond/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/agl/ed25519";
+    fetch = {
+      type = "git";
+      url = "https://github.com/agl/ed25519";
+      rev = "278e1ec8e8a6e017cd07577924d6766039146ced";
+      sha256 = "165d89cc6dl28j4hkn86pny0jz3sa6hamzdvpvwdj4iha3x6lzc9";
+    };
+  }
+  {
+    goPackagePath = "github.com/golang/protobuf";
+    fetch = {
+      type = "git";
+      url = "https://github.com/golang/protobuf";
+      rev = "59b73b37c1e45995477aae817e4a653c89a858db";
+      sha256 = "1dx22jvhvj34ivpr7gw01fncg9yyx35mbpal4mpgnqka7ajmgjsa";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/net";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/net";
+      rev = "62ac18b461605b4be188bbc7300e9aa2bc836cd4";
+      sha256 = "0lwwvbbwbf3yshxkfhn6z20gd45dkvnmw2ms36diiy34krgy402p";
+    };
+  }
+  {
+    goPackagePath = "github.com/agl/go-gtk";
+    fetch = {
+      type = "git";
+      url = "https://github.com/agl/go-gtk";
+      rev = "91c1edb38c241d73129e6b098ca1c9fa83abfc15";
+      sha256 = "156ixlhakpqgyp35rsvmndrqz8aggv5bcmzg9ynpri3b9j6kim4d";
+    };
+  }
+]
diff --git a/pkgs/applications/networking/instant-messengers/xmpp-client/default.nix b/pkgs/applications/networking/instant-messengers/xmpp-client/default.nix
index de8d0c19b4f..24c1b9768df 100644
--- a/pkgs/applications/networking/instant-messengers/xmpp-client/default.nix
+++ b/pkgs/applications/networking/instant-messengers/xmpp-client/default.nix
@@ -13,7 +13,7 @@ buildGoPackage rec {
     sha256 = "0a1r08zs723ikcskmn6ylkdi3frcd0i0lkx30i9q39ilf734v253";
   };
 
-  goDeps = ./deps.json;
+  goDeps = ./deps.nix;
 
   meta = with stdenv.lib; {
     description = "An XMPP client with OTR support";
diff --git a/pkgs/applications/networking/instant-messengers/xmpp-client/deps.json b/pkgs/applications/networking/instant-messengers/xmpp-client/deps.json
deleted file mode 100644
index 7ac2b86cc21..00000000000
--- a/pkgs/applications/networking/instant-messengers/xmpp-client/deps.json
+++ /dev/null
@@ -1,20 +0,0 @@
-[
-    {
-        "goPackagePath": "golang.org/x/net",
-        "fetch": {
-            "type": "git",
-            "url": "https://go.googlesource.com/net",
-            "rev": "62ac18b461605b4be188bbc7300e9aa2bc836cd4",
-            "sha256": "0lwwvbbwbf3yshxkfhn6z20gd45dkvnmw2ms36diiy34krgy402p"
-        }
-    },
-    {
-        "goPackagePath": "golang.org/x/crypto",
-        "fetch": {
-            "type": "git",
-            "url": "https://go.googlesource.com/crypto",
-            "rev": "575fdbe86e5dd89229707ebec0575ce7d088a4a6",
-            "sha256": "1kgv1mkw9y404pk3lcwbs0vgl133mwyp294i18jg9hp10s5d56xa"
-        }
-    }
-]
diff --git a/pkgs/applications/networking/instant-messengers/xmpp-client/deps.nix b/pkgs/applications/networking/instant-messengers/xmpp-client/deps.nix
new file mode 100644
index 00000000000..caa41024fc6
--- /dev/null
+++ b/pkgs/applications/networking/instant-messengers/xmpp-client/deps.nix
@@ -0,0 +1,20 @@
+[
+  {
+    goPackagePath = "golang.org/x/net";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/net";
+      rev = "62ac18b461605b4be188bbc7300e9aa2bc836cd4";
+      sha256 = "0lwwvbbwbf3yshxkfhn6z20gd45dkvnmw2ms36diiy34krgy402p";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/crypto";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/crypto";
+      rev = "575fdbe86e5dd89229707ebec0575ce7d088a4a6";
+      sha256 = "1kgv1mkw9y404pk3lcwbs0vgl133mwyp294i18jg9hp10s5d56xa";
+    };
+  }
+]
diff --git a/pkgs/applications/networking/syncthing/inotify-deps.json b/pkgs/applications/networking/syncthing/inotify-deps.json
deleted file mode 100644
index e0cc9680e22..00000000000
--- a/pkgs/applications/networking/syncthing/inotify-deps.json
+++ /dev/null
@@ -1,38 +0,0 @@
-[
-  {
-    "goPackagePath": "github.com/cenkalti/backoff",
-    "fetch": {
-      "type": "git",
-      "url": "https://github.com/cenkalti/backoff",
-      "rev": "cdf48bbc1eb78d1349cbda326a4a037f7ba565c6",
-      "sha256": "0dg7hvpv0a1db8qriygz1jqgp16v8k505b197x9902z7z6lldgbh"
-    }
-  },
-  {
-    "goPackagePath": "github.com/gobwas/glob",
-    "fetch": {
-      "type": "git",
-      "url": "https://github.com/gobwas/glob",
-      "rev": "ce6abff51712df5da11095fb41dd4b0353559797",
-      "sha256": "1gxv4nnn3f9hw1ncdmhsr8fbfdma2h713ima7b4k28gxydfa8i9m"
-    }
-  },
-  {
-    "goPackagePath": "github.com/syncthing/syncthing",
-    "fetch": {
-      "type": "git",
-      "url": "https://github.com/syncthing/syncthing",
-      "rev": "66a506e72b9dcc749d09a03cb120ba86bbf3d7f8",
-      "sha256": "0is4f1r3im2bbmbca9fafzxffikxaf86vd6f851831fk5wi4pzw9"
-    }
-  },
-  {
-    "goPackagePath": "github.com/zillode/notify",
-    "fetch": {
-      "type": "git",
-      "url": "https://github.com/zillode/notify",
-      "rev": "2da5cc9881e8f16bab76b63129c7781898f97d16",
-      "sha256": "0qwsj730p5mivp2xw9zr5vq8xr7rr9cxjmi564wgmsn7dcvqnr40"
-    }
-  }
-]
\ No newline at end of file
diff --git a/pkgs/applications/networking/syncthing/inotify-deps.nix b/pkgs/applications/networking/syncthing/inotify-deps.nix
new file mode 100644
index 00000000000..302e5ee10e1
--- /dev/null
+++ b/pkgs/applications/networking/syncthing/inotify-deps.nix
@@ -0,0 +1,38 @@
+[
+  {
+    goPackagePath = "github.com/cenkalti/backoff";
+    fetch = {
+      type = "git";
+      url = "https://github.com/cenkalti/backoff";
+      rev = "cdf48bbc1eb78d1349cbda326a4a037f7ba565c6";
+      sha256 = "0dg7hvpv0a1db8qriygz1jqgp16v8k505b197x9902z7z6lldgbh";
+    };
+  }
+  {
+    goPackagePath = "github.com/gobwas/glob";
+    fetch = {
+      type = "git";
+      url = "https://github.com/gobwas/glob";
+      rev = "ce6abff51712df5da11095fb41dd4b0353559797";
+      sha256 = "1gxv4nnn3f9hw1ncdmhsr8fbfdma2h713ima7b4k28gxydfa8i9m";
+    };
+  }
+  {
+    goPackagePath = "github.com/syncthing/syncthing";
+    fetch = {
+      type = "git";
+      url = "https://github.com/syncthing/syncthing";
+      rev = "66a506e72b9dcc749d09a03cb120ba86bbf3d7f8";
+      sha256 = "0is4f1r3im2bbmbca9fafzxffikxaf86vd6f851831fk5wi4pzw9";
+    };
+  }
+  {
+    goPackagePath = "github.com/zillode/notify";
+    fetch = {
+      type = "git";
+      url = "https://github.com/zillode/notify";
+      rev = "2da5cc9881e8f16bab76b63129c7781898f97d16";
+      sha256 = "0qwsj730p5mivp2xw9zr5vq8xr7rr9cxjmi564wgmsn7dcvqnr40";
+    };
+  }
+]
diff --git a/pkgs/applications/networking/syncthing/inotify.nix b/pkgs/applications/networking/syncthing/inotify.nix
index 4f001794e86..ea8d73cb863 100644
--- a/pkgs/applications/networking/syncthing/inotify.nix
+++ b/pkgs/applications/networking/syncthing/inotify.nix
@@ -13,7 +13,7 @@ buildGoPackage rec {
     sha256 = "194pbz9zzxaz0vri93czpbsxl85znlba2gy61mjgyr0dm2h4s6yw";
   };
 
-  goDeps = ./inotify-deps.json;
+  goDeps = ./inotify-deps.nix;
 
   meta = {
     homepage = https://github.com/syncthing/syncthing-inotify;
diff --git a/pkgs/applications/networking/syncthing012/default.nix b/pkgs/applications/networking/syncthing012/default.nix
index 9f436d21bc3..5735dd68bcd 100644
--- a/pkgs/applications/networking/syncthing012/default.nix
+++ b/pkgs/applications/networking/syncthing012/default.nix
@@ -16,7 +16,7 @@ buildGoPackage rec {
     sha256 = "0g4sj509h45iq6g7b0pl88rbbn7c7s01774yjc6bl376x1xrl6a1";
   };
 
-  goDeps = ./deps.json;
+  goDeps = ./deps.nix;
 
   postPatch = ''
     # Mostly a cosmetic change
diff --git a/pkgs/applications/networking/syncthing012/deps.json b/pkgs/applications/networking/syncthing012/deps.json
deleted file mode 100644
index b21f2ef6a16..00000000000
--- a/pkgs/applications/networking/syncthing012/deps.json
+++ /dev/null
@@ -1,128 +0,0 @@
-[
-    {
-        "goPackagePath": "golang.org/x/crypto",
-        "fetch": {
-            "type": "git",
-            "url": "https://go.googlesource.com/crypto",
-            "rev": "575fdbe86e5dd89229707ebec0575ce7d088a4a6",
-            "sha256": "1kgv1mkw9y404pk3lcwbs0vgl133mwyp294i18jg9hp10s5d56xa"
-        }
-    },
-    {
-        "goPackagePath": "golang.org/x/net",
-        "fetch": {
-            "type": "git",
-            "url": "https://go.googlesource.com/net",
-            "rev": "62ac18b461605b4be188bbc7300e9aa2bc836cd4",
-            "sha256": "0lwwvbbwbf3yshxkfhn6z20gd45dkvnmw2ms36diiy34krgy402p"
-        }
-    },
-    {
-        "goPackagePath": "github.com/rcrowley/go-metrics",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/rcrowley/go-metrics",
-            "rev": "1ce93efbc8f9c568886b2ef85ce305b2217b3de3",
-            "sha256": "06gg72krlmd0z3zdq6s716blrga95pyj8dc2f2psfbknbkyrkfqa"
-        }
-    },
-    {
-        "goPackagePath": "github.com/kardianos/osext",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/kardianos/osext",
-            "rev": "29ae4ffbc9a6fe9fb2bc5029050ce6996ea1d3bc",
-            "sha256": "1mawalaz84i16njkz6f9fd5jxhcbxkbsjnav3cmqq2dncv2hyv8a"
-        }
-    },
-    {
-        "goPackagePath": "github.com/bkaradzic/go-lz4",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/bkaradzic/go-lz4",
-            "rev": "74ddf82598bc4745b965729e9c6a463bedd33049",
-            "sha256": "1vdid8v0c2v2qhrg9rzn3l7ya1h34jirrxfnir7gv7w6s4ivdvc1"
-        }
-    },
-    {
-        "goPackagePath": "github.com/calmh/luhn",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/calmh/luhn",
-            "rev": "0c8388ff95fa92d4094011e5a04fc99dea3d1632",
-            "sha256": "1hfj1lx7wdpifn16zqrl4xml6cj5gxbn6hfz1f46g2a6bdf0gcvs"
-        }
-    },
-    {
-        "goPackagePath": "golang.org/x/text",
-        "fetch": {
-            "type": "git",
-            "url": "https://go.googlesource.com/text",
-            "rev": "5eb8d4684c4796dd36c74f6452f2c0fa6c79597e",
-            "sha256": "1cjwm2pv42dbfqc6ylr7jmma902zg4gng5aarqrbjf1k2nf2vs14"
-        }
-    },
-    {
-        "goPackagePath": "github.com/vitrun/qart",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/vitrun/qart",
-            "rev": "ccb109cf25f0cd24474da73b9fee4e7a3e8a8ce0",
-            "sha256": "0bhp768b8ha6f25dmhwn9q8m2lkbn4qnjf8n7pizk25jn5zjdvc8"
-        }
-    },
-    {
-        "goPackagePath": "github.com/calmh/du",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/calmh/du",
-            "rev": "3c0690cca16228b97741327b1b6781397afbdb24",
-            "sha256": "1mv6mkbslfc8giv47kyl97ny0igb3l7jya5hc75sm54xi6g205wa"
-        }
-    },
-    {
-        "goPackagePath": "github.com/calmh/xdr",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/calmh/xdr",
-            "rev": "e467b5aeb65ca8516fb3925c84991bf1d7cc935e",
-            "sha256": "1bi4b2xkjzcr0vq1wxz14i9943k71sj092dam0gdmr9yvdrg0nra"
-        }
-    },
-    {
-        "goPackagePath": "github.com/juju/ratelimit",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/juju/ratelimit",
-            "rev": "772f5c38e468398c4511514f4f6aa9a4185bc0a0",
-            "sha256": "02rs61ay6sq499lxxszjsrxp33m6zklds1xrmnr5fk73vpqfa28p"
-        }
-    },
-    {
-        "goPackagePath": "github.com/thejerf/suture",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/thejerf/suture",
-            "rev": "99c1f2d613756768fc4299acd9dc621e11ed3fd7",
-            "sha256": "094ksr2nlxhvxr58nbnzzk0prjskb21r86jmxqjr3rwg4rkwn6d4"
-        }
-    },
-    {
-        "goPackagePath": "github.com/golang/snappy",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/golang/snappy",
-            "rev": "723cc1e459b8eea2dea4583200fd60757d40097a",
-            "sha256": "0bprq0qb46f5511b5scrdqqzskqqi2z8b4yh3216rv0n1crx536h"
-        }
-    },
-    {
-        "goPackagePath": "github.com/syndtr/goleveldb",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/syndtr/goleveldb",
-            "rev": "1a9d62f03ea92815b46fcaab357cfd4df264b1a0",
-            "sha256": "04ywbif36fiah4fw0x2abr5q3p4fdhi6q57d5icc2mz03q889vhb"
-        }
-    }
-]
diff --git a/pkgs/applications/networking/syncthing012/deps.nix b/pkgs/applications/networking/syncthing012/deps.nix
new file mode 100644
index 00000000000..44e18c2f606
--- /dev/null
+++ b/pkgs/applications/networking/syncthing012/deps.nix
@@ -0,0 +1,128 @@
+[
+  {
+    goPackagePath = "golang.org/x/crypto";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/crypto";
+      rev = "575fdbe86e5dd89229707ebec0575ce7d088a4a6";
+      sha256 = "1kgv1mkw9y404pk3lcwbs0vgl133mwyp294i18jg9hp10s5d56xa";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/net";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/net";
+      rev = "62ac18b461605b4be188bbc7300e9aa2bc836cd4";
+      sha256 = "0lwwvbbwbf3yshxkfhn6z20gd45dkvnmw2ms36diiy34krgy402p";
+    };
+  }
+  {
+    goPackagePath = "github.com/rcrowley/go-metrics";
+    fetch = {
+      type = "git";
+      url = "https://github.com/rcrowley/go-metrics";
+      rev = "1ce93efbc8f9c568886b2ef85ce305b2217b3de3";
+      sha256 = "06gg72krlmd0z3zdq6s716blrga95pyj8dc2f2psfbknbkyrkfqa";
+    };
+  }
+  {
+    goPackagePath = "github.com/kardianos/osext";
+    fetch = {
+      type = "git";
+      url = "https://github.com/kardianos/osext";
+      rev = "29ae4ffbc9a6fe9fb2bc5029050ce6996ea1d3bc";
+      sha256 = "1mawalaz84i16njkz6f9fd5jxhcbxkbsjnav3cmqq2dncv2hyv8a";
+    };
+  }
+  {
+    goPackagePath = "github.com/bkaradzic/go-lz4";
+    fetch = {
+      type = "git";
+      url = "https://github.com/bkaradzic/go-lz4";
+      rev = "74ddf82598bc4745b965729e9c6a463bedd33049";
+      sha256 = "1vdid8v0c2v2qhrg9rzn3l7ya1h34jirrxfnir7gv7w6s4ivdvc1";
+    };
+  }
+  {
+    goPackagePath = "github.com/calmh/luhn";
+    fetch = {
+      type = "git";
+      url = "https://github.com/calmh/luhn";
+      rev = "0c8388ff95fa92d4094011e5a04fc99dea3d1632";
+      sha256 = "1hfj1lx7wdpifn16zqrl4xml6cj5gxbn6hfz1f46g2a6bdf0gcvs";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/text";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/text";
+      rev = "5eb8d4684c4796dd36c74f6452f2c0fa6c79597e";
+      sha256 = "1cjwm2pv42dbfqc6ylr7jmma902zg4gng5aarqrbjf1k2nf2vs14";
+    };
+  }
+  {
+    goPackagePath = "github.com/vitrun/qart";
+    fetch = {
+      type = "git";
+      url = "https://github.com/vitrun/qart";
+      rev = "ccb109cf25f0cd24474da73b9fee4e7a3e8a8ce0";
+      sha256 = "0bhp768b8ha6f25dmhwn9q8m2lkbn4qnjf8n7pizk25jn5zjdvc8";
+    };
+  }
+  {
+    goPackagePath = "github.com/calmh/du";
+    fetch = {
+      type = "git";
+      url = "https://github.com/calmh/du";
+      rev = "3c0690cca16228b97741327b1b6781397afbdb24";
+      sha256 = "1mv6mkbslfc8giv47kyl97ny0igb3l7jya5hc75sm54xi6g205wa";
+    };
+  }
+  {
+    goPackagePath = "github.com/calmh/xdr";
+    fetch = {
+      type = "git";
+      url = "https://github.com/calmh/xdr";
+      rev = "e467b5aeb65ca8516fb3925c84991bf1d7cc935e";
+      sha256 = "1bi4b2xkjzcr0vq1wxz14i9943k71sj092dam0gdmr9yvdrg0nra";
+    };
+  }
+  {
+    goPackagePath = "github.com/juju/ratelimit";
+    fetch = {
+      type = "git";
+      url = "https://github.com/juju/ratelimit";
+      rev = "772f5c38e468398c4511514f4f6aa9a4185bc0a0";
+      sha256 = "02rs61ay6sq499lxxszjsrxp33m6zklds1xrmnr5fk73vpqfa28p";
+    };
+  }
+  {
+    goPackagePath = "github.com/thejerf/suture";
+    fetch = {
+      type = "git";
+      url = "https://github.com/thejerf/suture";
+      rev = "99c1f2d613756768fc4299acd9dc621e11ed3fd7";
+      sha256 = "094ksr2nlxhvxr58nbnzzk0prjskb21r86jmxqjr3rwg4rkwn6d4";
+    };
+  }
+  {
+    goPackagePath = "github.com/golang/snappy";
+    fetch = {
+      type = "git";
+      url = "https://github.com/golang/snappy";
+      rev = "723cc1e459b8eea2dea4583200fd60757d40097a";
+      sha256 = "0bprq0qb46f5511b5scrdqqzskqqi2z8b4yh3216rv0n1crx536h";
+    };
+  }
+  {
+    goPackagePath = "github.com/syndtr/goleveldb";
+    fetch = {
+      type = "git";
+      url = "https://github.com/syndtr/goleveldb";
+      rev = "1a9d62f03ea92815b46fcaab357cfd4df264b1a0";
+      sha256 = "04ywbif36fiah4fw0x2abr5q3p4fdhi6q57d5icc2mz03q889vhb";
+    };
+  }
+]
diff --git a/pkgs/applications/version-management/git-and-tools/git-annex-remote-b2/default.nix b/pkgs/applications/version-management/git-and-tools/git-annex-remote-b2/default.nix
index 4ede1b352ea..9f1d8e9d717 100644
--- a/pkgs/applications/version-management/git-and-tools/git-annex-remote-b2/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/git-annex-remote-b2/default.nix
@@ -13,5 +13,5 @@ buildGoPackage rec {
     sha256 = "1139rzdvlj3hanqsccfinprvrzf4qjc5n4f0r21jp9j24yhjs6j2";
   };
 
-  goDeps = ./deps.json;
+  goDeps = ./deps.nix;
 }
diff --git a/pkgs/applications/version-management/git-and-tools/git-annex-remote-b2/deps.json b/pkgs/applications/version-management/git-and-tools/git-annex-remote-b2/deps.json
deleted file mode 100644
index 914655e2813..00000000000
--- a/pkgs/applications/version-management/git-and-tools/git-annex-remote-b2/deps.json
+++ /dev/null
@@ -1,20 +0,0 @@
-[
-    {
-        "goPackagePath": "github.com/pquerna/ffjson",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/pquerna/ffjson",
-            "rev": "674bc015b5b3f50f9bb2561179778586b9af68c5",
-            "sha256": "0l53q7b1g25hfjm1iyynfs413rpav4c51yvdr244ivw1x3hksa7a"
-        }
-    },
-    {
-        "goPackagePath": "gopkg.in/kothar/go-backblaze.v0",
-        "fetch": {
-            "type": "git",
-            "url": "https://gopkg.in/kothar/go-backblaze.v0",
-            "rev": "373819725fc560fa962c6cd883b533d2ebec4844",
-            "sha256": "1kmlwfnnfd4h46bb9pz2gw1hxqm1pzkwvidfmnc0zkrilaywk6fx"
-        }
-    }
-]
diff --git a/pkgs/applications/version-management/git-and-tools/git-annex-remote-b2/deps.nix b/pkgs/applications/version-management/git-and-tools/git-annex-remote-b2/deps.nix
new file mode 100644
index 00000000000..479b3e7d637
--- /dev/null
+++ b/pkgs/applications/version-management/git-and-tools/git-annex-remote-b2/deps.nix
@@ -0,0 +1,20 @@
+[
+  {
+    goPackagePath = "github.com/pquerna/ffjson";
+    fetch = {
+      type = "git";
+      url = "https://github.com/pquerna/ffjson";
+      rev = "674bc015b5b3f50f9bb2561179778586b9af68c5";
+      sha256 = "0l53q7b1g25hfjm1iyynfs413rpav4c51yvdr244ivw1x3hksa7a";
+    };
+  }
+  {
+    goPackagePath = "gopkg.in/kothar/go-backblaze.v0";
+    fetch = {
+      type = "git";
+      url = "https://gopkg.in/kothar/go-backblaze.v0";
+      rev = "373819725fc560fa962c6cd883b533d2ebec4844";
+      sha256 = "1kmlwfnnfd4h46bb9pz2gw1hxqm1pzkwvidfmnc0zkrilaywk6fx";
+    };
+  }
+]
diff --git a/pkgs/development/go-modules/generic/default.nix b/pkgs/development/go-modules/generic/default.nix
index 18bbdef8758..d4d2790b2a3 100644
--- a/pkgs/development/go-modules/generic/default.nix
+++ b/pkgs/development/go-modules/generic/default.nix
@@ -56,7 +56,7 @@ let
     };
 
   importGodeps = { depsFile }:
-    map dep2src (lib.importJSON depsFile);
+    map dep2src (import depsFile);
 
   goPath = if goDeps != null then importGodeps { depsFile = goDeps; } ++ extraSrcs
                              else extraSrcs;
@@ -180,6 +180,16 @@ go.stdenv.mkDerivation (
     done < <(find $bin/bin -type f 2>/dev/null)
   '';
 
+  shellHook = ''
+    d=$(mktemp -d "--suffix=-$name")
+  '' + toString (map (dep: ''
+     mkdir -p "$d/src/$(dirname "${dep.goPackagePath}")"
+     ln -s "${dep.src}" "$d/src/${dep.goPackagePath}"
+  ''
+  ) goPath) + ''
+    export GOPATH="$d:$GOPATH"
+  '';
+
   disallowedReferences = lib.optional (!allowGoReference) go
     ++ lib.optional (!dontRenameImports) govers;
 
diff --git a/pkgs/development/tools/deis/default.nix b/pkgs/development/tools/deis/default.nix
index 471cc80663d..5c76fc69ac3 100644
--- a/pkgs/development/tools/deis/default.nix
+++ b/pkgs/development/tools/deis/default.nix
@@ -21,5 +21,5 @@ buildGoPackage rec {
     sha256 = "1qv9lxqx7m18029lj8cw3k7jngvxs4iciwrypdy0gd2nnghc68sw";
   };
 
-  goDeps = ./deps.json;
+  goDeps = ./deps.nix;
 }
diff --git a/pkgs/development/tools/deis/deps.json b/pkgs/development/tools/deis/deps.json
deleted file mode 100644
index b28ce075e81..00000000000
--- a/pkgs/development/tools/deis/deps.json
+++ /dev/null
@@ -1,29 +0,0 @@
-[
-    {
-        "goPackagePath": "gopkg.in/yaml.v2",
-        "fetch": {
-            "type": "git",
-            "url": "https://gopkg.in/yaml.v2",
-            "rev": "a83829b6f1293c91addabc89d0571c246397bbf4",
-            "sha256": "1m4dsmk90sbi17571h6pld44zxz7jc4lrnl4f27dpd1l8g5xvjhh"
-        }
-    },
-    {
-        "goPackagePath": "github.com/docopt/docopt-go",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/docopt/docopt-go",
-            "rev": "784ddc588536785e7299f7272f39101f7faccc3f",
-            "sha256": "0wwz48jl9fvl1iknvn9dqr4gfy1qs03gxaikrxxp9gry6773v3sj"
-        }
-    },
-    {
-        "goPackagePath": "golang.org/x/crypto",
-        "fetch": {
-            "type": "git",
-            "url": "https://go.googlesource.com/crypto",
-            "rev": "575fdbe86e5dd89229707ebec0575ce7d088a4a6",
-            "sha256": "1kgv1mkw9y404pk3lcwbs0vgl133mwyp294i18jg9hp10s5d56xa"
-        }
-    }
-]
diff --git a/pkgs/development/tools/deis/deps.nix b/pkgs/development/tools/deis/deps.nix
new file mode 100644
index 00000000000..5a1b30a7e66
--- /dev/null
+++ b/pkgs/development/tools/deis/deps.nix
@@ -0,0 +1,29 @@
+[
+  {
+    goPackagePath = "gopkg.in/yaml.v2";
+    fetch = {
+      type = "git";
+      url = "https://gopkg.in/yaml.v2";
+      rev = "a83829b6f1293c91addabc89d0571c246397bbf4";
+      sha256 = "1m4dsmk90sbi17571h6pld44zxz7jc4lrnl4f27dpd1l8g5xvjhh";
+    };
+  }
+  {
+    goPackagePath = "github.com/docopt/docopt-go";
+    fetch = {
+      type = "git";
+      url = "https://github.com/docopt/docopt-go";
+      rev = "784ddc588536785e7299f7272f39101f7faccc3f";
+      sha256 = "0wwz48jl9fvl1iknvn9dqr4gfy1qs03gxaikrxxp9gry6773v3sj";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/crypto";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/crypto";
+      rev = "575fdbe86e5dd89229707ebec0575ce7d088a4a6";
+      sha256 = "1kgv1mkw9y404pk3lcwbs0vgl133mwyp294i18jg9hp10s5d56xa";
+    };
+  }
+]
diff --git a/pkgs/development/tools/go-repo-root/default.nix b/pkgs/development/tools/go-repo-root/default.nix
index d6ae032f078..e47b84354d6 100644
--- a/pkgs/development/tools/go-repo-root/default.nix
+++ b/pkgs/development/tools/go-repo-root/default.nix
@@ -13,5 +13,5 @@ buildGoPackage rec {
     sha256 = "1rlzp8kjv0a3dnfhyqcggny0ad648j5csr2x0siq5prahlp48mg4";
   };
 
-  buildInputs = [ gotools ];
+  goDeps = ./deps.nix;
 }
diff --git a/pkgs/development/tools/go-repo-root/deps.nix b/pkgs/development/tools/go-repo-root/deps.nix
new file mode 100644
index 00000000000..2554b3cad1a
--- /dev/null
+++ b/pkgs/development/tools/go-repo-root/deps.nix
@@ -0,0 +1,20 @@
+[
+  {
+    goPackagePath = "golang.org/x/tools/go/vcs";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/tools";
+      rev = "9ae4729fba20b3533d829a9c6ba8195b068f2abc";
+      sha256 = "1j51aaskfqc953p5s9naqimr04hzfijm4yczdsiway1xnnvvpfr1";
+    };
+  }
+  {
+    goPackagePath = "code.google.com/p/go.tools/go/vcs";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/tools";
+      rev = "9ae4729fba20b3533d829a9c6ba8195b068f2abc";
+      sha256 = "1j51aaskfqc953p5s9naqimr04hzfijm4yczdsiway1xnnvvpfr1";
+    };
+  }
+]
diff --git a/pkgs/development/tools/go2nix/default.nix b/pkgs/development/tools/go2nix/default.nix
index e0e9fe8c3fc..f12497eb78c 100644
--- a/pkgs/development/tools/go2nix/default.nix
+++ b/pkgs/development/tools/go2nix/default.nix
@@ -3,7 +3,7 @@
 
 buildGoPackage rec {
   name = "go2nix-${version}";
-  version = "0.1.0";
+  version = "1.1.0";
   rev = "v${version}";
 
   goPackagePath = "github.com/kamilchm/go2nix";
@@ -12,10 +12,10 @@ buildGoPackage rec {
     inherit rev;
     owner = "kamilchm";
     repo = "go2nix";
-    sha256 = "10nz7gva3n6wk01wphrjjb31sy33kf9ji03zr849x21a669fnmjf";
+    sha256 = "0asbbcyf1hh8khakych0y09rjarjiywr8pyy1v8ghpr1vvg43a09";
   };
 
-  goDeps = ./deps.json;
+  goDeps = ./deps.nix;
 
   buildInputs = [ go-bindata goimports makeWrapper ];
   preBuild = ''go generate ./...'';
diff --git a/pkgs/development/tools/go2nix/deps.json b/pkgs/development/tools/go2nix/deps.json
deleted file mode 100644
index ab9d0d39fce..00000000000
--- a/pkgs/development/tools/go2nix/deps.json
+++ /dev/null
@@ -1,20 +0,0 @@
-[
-    {
-        "goPackagePath": "github.com/Masterminds/vcs",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/Masterminds/vcs",
-            "rev": "7af28b64c5ec41b1558f5514fd938379822c237c",
-            "sha256": "127pamr5lkym3iq6z747bm4y4gyc02glrqb61yv82z1rdyv1dcf6"
-        }
-    },
-    {
-        "goPackagePath": "github.com/jawher/mow.cli",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/jawher/mow.cli",
-            "rev": "772320464101e904cd51198160eb4d489be9cc49",
-            "sha256": "1a8hnh2k3vc3prjhnz4rjbiwhqq6r3mi18h9cdb6fc6s6yzjc19j"
-        }
-    }
-]
diff --git a/pkgs/development/tools/go2nix/deps.nix b/pkgs/development/tools/go2nix/deps.nix
new file mode 100644
index 00000000000..8fc784f4b7f
--- /dev/null
+++ b/pkgs/development/tools/go2nix/deps.nix
@@ -0,0 +1,20 @@
+[
+    {
+        goPackagePath = "github.com/Masterminds/vcs";
+        fetch = {
+            type = "git";
+            url = "https://github.com/Masterminds/vcs";
+            rev = "7af28b64c5ec41b1558f5514fd938379822c237c";
+            sha256 = "127pamr5lkym3iq6z747bm4y4gyc02glrqb61yv82z1rdyv1dcf6";
+        };
+    }
+    {
+        goPackagePath = "github.com/jawher/mow.cli";
+        fetch = {
+            type = "git";
+            url = "https://github.com/jawher/mow.cli";
+            rev = "772320464101e904cd51198160eb4d489be9cc49";
+            sha256 = "1a8hnh2k3vc3prjhnz4rjbiwhqq6r3mi18h9cdb6fc6s6yzjc19j";
+        };
+    }
+]
diff --git a/pkgs/development/tools/golint/default.nix b/pkgs/development/tools/golint/default.nix
index 29e5b28ad57..c54a924a1a6 100644
--- a/pkgs/development/tools/golint/default.nix
+++ b/pkgs/development/tools/golint/default.nix
@@ -14,5 +14,5 @@ buildGoPackage rec {
     sha256 = "024dllcmpg8lx78cqgq551i6f9w6qlykfcx8l7yazak9kjwhpwjg";
   };
 
-  goDeps = ./deps.json;
+  goDeps = ./deps.nix;
 }
diff --git a/pkgs/development/tools/golint/deps.json b/pkgs/development/tools/golint/deps.json
deleted file mode 100644
index 387adc6cf06..00000000000
--- a/pkgs/development/tools/golint/deps.json
+++ /dev/null
@@ -1,11 +0,0 @@
-[
-    {
-        "goPackagePath": "golang.org/x/tools",
-        "fetch": {
-            "type": "git",
-            "url": "https://go.googlesource.com/tools",
-            "rev": "9ae4729fba20b3533d829a9c6ba8195b068f2abc",
-            "sha256": "1j51aaskfqc953p5s9naqimr04hzfijm4yczdsiway1xnnvvpfr1"
-        }
-    }
-]
diff --git a/pkgs/development/tools/golint/deps.nix b/pkgs/development/tools/golint/deps.nix
new file mode 100644
index 00000000000..f03bf9b5b23
--- /dev/null
+++ b/pkgs/development/tools/golint/deps.nix
@@ -0,0 +1,11 @@
+[
+  {
+    goPackagePath = "golang.org/x/tools";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/tools";
+      rev = "9ae4729fba20b3533d829a9c6ba8195b068f2abc";
+      sha256 = "1j51aaskfqc953p5s9naqimr04hzfijm4yczdsiway1xnnvvpfr1";
+    };
+  }
+]
diff --git a/pkgs/development/tools/gotools/default.nix b/pkgs/development/tools/gotools/default.nix
index f00794a7eb0..3408c90cda6 100644
--- a/pkgs/development/tools/gotools/default.nix
+++ b/pkgs/development/tools/gotools/default.nix
@@ -14,7 +14,7 @@ buildGoPackage rec {
     sha256 = "1j51aaskfqc953p5s9naqimr04hzfijm4yczdsiway1xnnvvpfr1";
   };
 
-  goDeps = ./deps.json;
+  goDeps = ./deps.nix;
 
   preConfigure = ''
     # Make the builtin tools available here
diff --git a/pkgs/development/tools/gotools/deps.json b/pkgs/development/tools/gotools/deps.json
deleted file mode 100644
index 64ae72eb3ed..00000000000
--- a/pkgs/development/tools/gotools/deps.json
+++ /dev/null
@@ -1,11 +0,0 @@
-[
-    {
-        "goPackagePath": "golang.org/x/net",
-        "fetch": {
-            "type": "git",
-            "url": "https://go.googlesource.com/net",
-            "rev": "62ac18b461605b4be188bbc7300e9aa2bc836cd4",
-            "sha256": "0lwwvbbwbf3yshxkfhn6z20gd45dkvnmw2ms36diiy34krgy402p"
-        }
-    }
-]
diff --git a/pkgs/development/tools/gotools/deps.nix b/pkgs/development/tools/gotools/deps.nix
new file mode 100644
index 00000000000..d4be771e8d6
--- /dev/null
+++ b/pkgs/development/tools/gotools/deps.nix
@@ -0,0 +1,11 @@
+[
+  {
+    goPackagePath = "golang.org/x/net";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/net";
+      rev = "62ac18b461605b4be188bbc7300e9aa2bc836cd4";
+      sha256 = "0lwwvbbwbf3yshxkfhn6z20gd45dkvnmw2ms36diiy34krgy402p";
+    };
+  }
+]
diff --git a/pkgs/development/tools/gox/default.nix b/pkgs/development/tools/gox/default.nix
index 030a59ed20c..92bb619be70 100644
--- a/pkgs/development/tools/gox/default.nix
+++ b/pkgs/development/tools/gox/default.nix
@@ -14,5 +14,5 @@ buildGoPackage rec {
     sha256 = "14jb2vgfr6dv7zlw8i3ilmp125m5l28ljv41a66c9b8gijhm48k1";
   };
 
-  goDeps = ./deps.json;
+  goDeps = ./deps.nix;
 }
diff --git a/pkgs/development/tools/gox/deps.json b/pkgs/development/tools/gox/deps.json
deleted file mode 100644
index 3406194137c..00000000000
--- a/pkgs/development/tools/gox/deps.json
+++ /dev/null
@@ -1,11 +0,0 @@
-[
-    {
-        "goPackagePath": "github.com/mitchellh/iochan",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/mitchellh/iochan",
-            "rev": "b584a329b193e206025682ae6c10cdbe03b0cd77",
-            "sha256": "1fcwdhfci41ibpng2j4c1bqfng578cwzb3c00yw1lnbwwhaq9r6b"
-        }
-    }
-]
diff --git a/pkgs/development/tools/gox/deps.nix b/pkgs/development/tools/gox/deps.nix
new file mode 100644
index 00000000000..d15b8e7c091
--- /dev/null
+++ b/pkgs/development/tools/gox/deps.nix
@@ -0,0 +1,11 @@
+[
+  {
+    goPackagePath = "github.com/mitchellh/iochan";
+    fetch = {
+      type = "git";
+      url = "https://github.com/mitchellh/iochan";
+      rev = "b584a329b193e206025682ae6c10cdbe03b0cd77";
+      sha256 = "1fcwdhfci41ibpng2j4c1bqfng578cwzb3c00yw1lnbwwhaq9r6b";
+    };
+  }
+]
diff --git a/pkgs/development/tools/leaps/default.nix b/pkgs/development/tools/leaps/default.nix
index d3e82076788..6db999eea54 100644
--- a/pkgs/development/tools/leaps/default.nix
+++ b/pkgs/development/tools/leaps/default.nix
@@ -14,7 +14,7 @@ buildGoPackage rec {
     fetchSubmodules = false;  
   };
 
-  goDeps = ./deps.json;
+  goDeps = ./deps.nix;
   meta = {
     description = "A pair programming tool and library written in Golang";
     homepage = "https://github.com/jeffail/leaps/";
diff --git a/pkgs/development/tools/leaps/deps.json b/pkgs/development/tools/leaps/deps.json
deleted file mode 100644
index 60141d5eeee..00000000000
--- a/pkgs/development/tools/leaps/deps.json
+++ /dev/null
@@ -1,11 +0,0 @@
-[
-  {
-   "goPackagePath": "golang.org/x/net",
-    "fetch": {
-      "type": "git",
-       "url": "https://go.googlesource.com/net",
-       "rev": "07b51741c1d6423d4a6abab1c49940ec09cb1aaf",
-       "sha256": "12lvdj0k2gww4hw5f79qb9yswqpy4i3bgv1likmf3mllgdxfm20w"
-    }
-  }
-]
diff --git a/pkgs/development/tools/leaps/deps.nix b/pkgs/development/tools/leaps/deps.nix
new file mode 100644
index 00000000000..0a6214a76d0
--- /dev/null
+++ b/pkgs/development/tools/leaps/deps.nix
@@ -0,0 +1,11 @@
+[
+  {
+    goPackagePath = "golang.org/x/net";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/net";
+      rev = "07b51741c1d6423d4a6abab1c49940ec09cb1aaf";
+      sha256 = "12lvdj0k2gww4hw5f79qb9yswqpy4i3bgv1likmf3mllgdxfm20w";
+    };
+  }
+]
diff --git a/pkgs/development/tools/remarshal/default.nix b/pkgs/development/tools/remarshal/default.nix
index 49de886654c..ecf919a9829 100644
--- a/pkgs/development/tools/remarshal/default.nix
+++ b/pkgs/development/tools/remarshal/default.nix
@@ -12,7 +12,7 @@ buildGoPackage rec {
     sha256 = "0lhsqca3lq3xvdwsmrngv4p6b7k2lkbfnxnk5qj6jdd5y7f4b496";
   };
 
-  goDeps = ./deps.json;
+  goDeps = ./deps.nix;
 
   meta = with lib; {
     description = "Convert between TOML, YAML and JSON";
diff --git a/pkgs/development/tools/remarshal/deps.json b/pkgs/development/tools/remarshal/deps.json
deleted file mode 100644
index 1cc264181c4..00000000000
--- a/pkgs/development/tools/remarshal/deps.json
+++ /dev/null
@@ -1,20 +0,0 @@
-[
-    {
-        "goPackagePath": "gopkg.in/yaml.v2",
-        "fetch": {
-            "type": "git",
-            "url": "https://gopkg.in/yaml.v2",
-            "rev": "a83829b6f1293c91addabc89d0571c246397bbf4",
-            "sha256": "1m4dsmk90sbi17571h6pld44zxz7jc4lrnl4f27dpd1l8g5xvjhh"
-        }
-    },
-    {
-        "goPackagePath": "github.com/BurntSushi/toml",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/BurntSushi/toml",
-            "rev": "056c9bc7be7190eaa7715723883caffa5f8fa3e4",
-            "sha256": "0gkgkw04ndr5y7hrdy0r4v2drs5srwfcw2bs1gyas066hwl84xyw"
-        }
-    }
-]
diff --git a/pkgs/development/tools/remarshal/deps.nix b/pkgs/development/tools/remarshal/deps.nix
new file mode 100644
index 00000000000..32f9f6eb0bb
--- /dev/null
+++ b/pkgs/development/tools/remarshal/deps.nix
@@ -0,0 +1,20 @@
+[
+  {
+    goPackagePath = "gopkg.in/yaml.v2";
+    fetch = {
+      type = "git";
+      url = "https://gopkg.in/yaml.v2";
+      rev = "a83829b6f1293c91addabc89d0571c246397bbf4";
+      sha256 = "1m4dsmk90sbi17571h6pld44zxz7jc4lrnl4f27dpd1l8g5xvjhh";
+    };
+  }
+  {
+    goPackagePath = "github.com/BurntSushi/toml";
+    fetch = {
+      type = "git";
+      url = "https://github.com/BurntSushi/toml";
+      rev = "056c9bc7be7190eaa7715723883caffa5f8fa3e4";
+      sha256 = "0gkgkw04ndr5y7hrdy0r4v2drs5srwfcw2bs1gyas066hwl84xyw";
+    };
+  }
+]
diff --git a/pkgs/development/tools/textql/default.nix b/pkgs/development/tools/textql/default.nix
index 4caa659c17a..65c0bb8e41e 100644
--- a/pkgs/development/tools/textql/default.nix
+++ b/pkgs/development/tools/textql/default.nix
@@ -14,7 +14,7 @@ buildGoPackage rec {
     sha256 = "1b61w4pc5gl7m12mphricihzq7ifnzwn0yyw3ypv0d0fj26h5hc3";
   };
 
-  goDeps = ./deps.json;
+  goDeps = ./deps.nix;
 
   meta = with stdenv.lib; {
     description = "Execute SQL against structured text like CSV or TSV";
diff --git a/pkgs/development/tools/textql/deps.json b/pkgs/development/tools/textql/deps.json
deleted file mode 100644
index 01c5de1cdc6..00000000000
--- a/pkgs/development/tools/textql/deps.json
+++ /dev/null
@@ -1,11 +0,0 @@
-[
-    {
-        "goPackagePath": "github.com/mattn/go-sqlite3",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/mattn/go-sqlite3",
-            "rev": "b4142c444a8941d0d92b0b7103a24df9cd815e42",
-            "sha256": "0xq2y4am8dz9w9aaq24s1npg1sn8pf2gn4nki73ylz2fpjwq9vla"
-        }
-    }
-]
diff --git a/pkgs/development/tools/textql/deps.nix b/pkgs/development/tools/textql/deps.nix
new file mode 100644
index 00000000000..e166e73a61f
--- /dev/null
+++ b/pkgs/development/tools/textql/deps.nix
@@ -0,0 +1,11 @@
+[
+  {
+    goPackagePath = "github.com/mattn/go-sqlite3";
+    fetch = {
+      type = "git";
+      url = "https://github.com/mattn/go-sqlite3";
+      rev = "b4142c444a8941d0d92b0b7103a24df9cd815e42";
+      sha256 = "0xq2y4am8dz9w9aaq24s1npg1sn8pf2gn4nki73ylz2fpjwq9vla";
+    };
+  }
+]
diff --git a/pkgs/development/web/minify/default.nix b/pkgs/development/web/minify/default.nix
index 3248258d552..0220fbd8df8 100644
--- a/pkgs/development/web/minify/default.nix
+++ b/pkgs/development/web/minify/default.nix
@@ -14,5 +14,5 @@ buildGoPackage rec {
     sha256 = "15d9ivg1a9v9c2n0a9pfw74952xhd4vqgx8d60dhvif9lx1d8wlq";
   };
 
-  goDeps = ./deps.json;
+  goDeps = ./deps.nix;
 }
diff --git a/pkgs/development/web/minify/deps.json b/pkgs/development/web/minify/deps.json
deleted file mode 100644
index 0575578b43c..00000000000
--- a/pkgs/development/web/minify/deps.json
+++ /dev/null
@@ -1,74 +0,0 @@
-[
-    {
-        "goPackagePath": "golang.org/x/sys",
-        "fetch": {
-            "type": "git",
-            "url": "https://go.googlesource.com/sys",
-            "rev": "d9157a9621b69ad1d8d77a1933590c416593f24f",
-            "sha256": "1asdbp7rj1j1m1aar1a022wpcwbml6zih6cpbxaw7b2m8v8is931"
-        }
-    },
-    {
-        "goPackagePath": "github.com/dustin/go-humanize",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/dustin/go-humanize",
-            "rev": "8929fe90cee4b2cb9deb468b51fb34eba64d1bf0",
-            "sha256": "1g155kxjh6hd3ibx41nbpj6f7h5bh54zgl9dr53xzg2xlxljgjy0"
-        }
-    },
-    {
-        "goPackagePath": "github.com/tdewolff/buffer",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/tdewolff/buffer",
-            "rev": "0edfcb7b750146ff879e95831de2ef53605a5cb5",
-            "sha256": "1mdd4k9byp22mw0a399j3w73zjb5g0vn58g76rjy7ajb0dzm80vl"
-        }
-    },
-    {
-        "goPackagePath": "github.com/tdewolff/parse",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/tdewolff/parse",
-            "rev": "34d5c1160d4503da4b456e5094609f2331d6dde3",
-            "sha256": "0hxf65fgkrc1q4p99p33xxxy1s6wxpn1vfsnqf9p846awwbqsy0v"
-        }
-    },
-    {
-        "goPackagePath": "github.com/tdewolff/strconv",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/tdewolff/strconv",
-            "rev": "3e8091f4417ebaaa3910da63a45ea394ebbfb0e3",
-            "sha256": "00w2mryfjhz3vaqzxvbwvyhi1vgpc1s4xfv1r9hxn8hwa078q5gp"
-        }
-    },
-    {
-        "goPackagePath": "github.com/matryer/try",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/matryer/try",
-            "rev": "93d30e50512f879b73829eb79867df38084bcd31",
-            "sha256": "0dmc8iar9685ks1ba3vnycjsx8qxwyqv51jb7677dvwnzbqhgw6f"
-        }
-    },
-    {
-        "goPackagePath": "github.com/fsnotify/fsnotify",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/fsnotify/fsnotify",
-            "rev": "30411dbcefb7a1da7e84f75530ad3abe4011b4f8",
-            "sha256": "0kbpvyi6p9942k0vmcw5z13mja47f7hq7nqd332pn2zydss6kddm"
-        }
-    },
-    {
-        "goPackagePath": "github.com/ogier/pflag",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/ogier/pflag",
-            "rev": "45c278ab3607870051a2ea9040bb85fcb8557481",
-            "sha256": "0620v75wppfd84d95n312wpngcb73cph4q3ivs1h0waljfnsrd5l"
-        }
-    }
-]
diff --git a/pkgs/development/web/minify/deps.nix b/pkgs/development/web/minify/deps.nix
new file mode 100644
index 00000000000..4efaec46d57
--- /dev/null
+++ b/pkgs/development/web/minify/deps.nix
@@ -0,0 +1,74 @@
+[
+  {
+    goPackagePath = "golang.org/x/sys";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/sys";
+      rev = "d9157a9621b69ad1d8d77a1933590c416593f24f";
+      sha256 = "1asdbp7rj1j1m1aar1a022wpcwbml6zih6cpbxaw7b2m8v8is931";
+    };
+  }
+  {
+    goPackagePath = "github.com/dustin/go-humanize";
+    fetch = {
+      type = "git";
+      url = "https://github.com/dustin/go-humanize";
+      rev = "8929fe90cee4b2cb9deb468b51fb34eba64d1bf0";
+      sha256 = "1g155kxjh6hd3ibx41nbpj6f7h5bh54zgl9dr53xzg2xlxljgjy0";
+    };
+  }
+  {
+    goPackagePath = "github.com/tdewolff/buffer";
+    fetch = {
+      type = "git";
+      url = "https://github.com/tdewolff/buffer";
+      rev = "0edfcb7b750146ff879e95831de2ef53605a5cb5";
+      sha256 = "1mdd4k9byp22mw0a399j3w73zjb5g0vn58g76rjy7ajb0dzm80vl";
+    };
+  }
+  {
+    goPackagePath = "github.com/tdewolff/parse";
+    fetch = {
+      type = "git";
+      url = "https://github.com/tdewolff/parse";
+      rev = "34d5c1160d4503da4b456e5094609f2331d6dde3";
+      sha256 = "0hxf65fgkrc1q4p99p33xxxy1s6wxpn1vfsnqf9p846awwbqsy0v";
+    };
+  }
+  {
+    goPackagePath = "github.com/tdewolff/strconv";
+    fetch = {
+      type = "git";
+      url = "https://github.com/tdewolff/strconv";
+      rev = "3e8091f4417ebaaa3910da63a45ea394ebbfb0e3";
+      sha256 = "00w2mryfjhz3vaqzxvbwvyhi1vgpc1s4xfv1r9hxn8hwa078q5gp";
+    };
+  }
+  {
+    goPackagePath = "github.com/matryer/try";
+    fetch = {
+      type = "git";
+      url = "https://github.com/matryer/try";
+      rev = "93d30e50512f879b73829eb79867df38084bcd31";
+      sha256 = "0dmc8iar9685ks1ba3vnycjsx8qxwyqv51jb7677dvwnzbqhgw6f";
+    };
+  }
+  {
+    goPackagePath = "github.com/fsnotify/fsnotify";
+    fetch = {
+      type = "git";
+      url = "https://github.com/fsnotify/fsnotify";
+      rev = "30411dbcefb7a1da7e84f75530ad3abe4011b4f8";
+      sha256 = "0kbpvyi6p9942k0vmcw5z13mja47f7hq7nqd332pn2zydss6kddm";
+    };
+  }
+  {
+    goPackagePath = "github.com/ogier/pflag";
+    fetch = {
+      type = "git";
+      url = "https://github.com/ogier/pflag";
+      rev = "45c278ab3607870051a2ea9040bb85fcb8557481";
+      sha256 = "0620v75wppfd84d95n312wpngcb73cph4q3ivs1h0waljfnsrd5l";
+    };
+  }
+]
diff --git a/pkgs/misc/vim-plugins/default.nix b/pkgs/misc/vim-plugins/default.nix
index f71a2e21a4d..7121ef689ae 100644
--- a/pkgs/misc/vim-plugins/default.nix
+++ b/pkgs/misc/vim-plugins/default.nix
@@ -101,7 +101,7 @@ rec {
 
   fzfWrapper = buildVimPluginFrom2Nix {
     name = fzf.name;
-    src = "${fzf}/share/go/src/github.com/junegunn/fzf";
+    src = fzf.src;
     dependencies = [];
   };
 
diff --git a/pkgs/servers/caddy/default.nix b/pkgs/servers/caddy/default.nix
index 51b4694b630..2c2ad28e292 100644
--- a/pkgs/servers/caddy/default.nix
+++ b/pkgs/servers/caddy/default.nix
@@ -20,5 +20,5 @@ buildGoPackage rec {
       -X github.com/mholt/caddy/caddy/caddymain.gitTag=${version}
   '';
 
-  goDeps = ./deps.json;
+  goDeps = ./deps.nix;
 }
diff --git a/pkgs/servers/caddy/deps.json b/pkgs/servers/caddy/deps.json
deleted file mode 100644
index 6a6638b44b4..00000000000
--- a/pkgs/servers/caddy/deps.json
+++ /dev/null
@@ -1,182 +0,0 @@
-[
-  {
-    "goPackagePath": "github.com/BurntSushi/toml",
-    "fetch": {
-      "type": "git",
-      "url": "https://github.com/BurntSushi/toml",
-      "rev": "99064174e013895bbd9b025c31100bd1d9b590ca",
-      "sha256": "058qrar8rvw3wb0ci1mf1axnqq2729cvv9zmdr4ms2nn9s97yiz9"
-    }
-  },
-  {
-    "goPackagePath": "github.com/dustin/go-humanize",
-    "fetch": {
-      "type": "git",
-      "url": "https://github.com/dustin/go-humanize",
-      "rev": "2fcb5204cdc65b4bec9fd0a87606bb0d0e3c54e8",
-      "sha256": "1m2qgn5vh5m66ggmclgikvwc05np2r7sxgpvlj2jip5d61x29j5k"
-    }
-  },
-  {
-    "goPackagePath": "github.com/flynn/go-shlex",
-    "fetch": {
-      "type": "git",
-      "url": "https://github.com/flynn/go-shlex",
-      "rev": "3f9db97f856818214da2e1057f8ad84803971cff",
-      "sha256": "1j743lysygkpa2s2gii2xr32j7bxgc15zv4113b0q9jhn676ysia"
-    }
-  },
-  {
-    "goPackagePath": "github.com/gorilla/websocket",
-    "fetch": {
-      "type": "git",
-      "url": "https://github.com/gorilla/websocket",
-      "rev": "a69d25be2fe2923a97c2af6849b2f52426f68fc0",
-      "sha256": "1z09mff5yfdrw8vbylrgrick5m5hczjy8m2x6swdq8v062s45g3v"
-    }
-  },
-  {
-    "goPackagePath": "github.com/hashicorp/go-syslog",
-    "fetch": {
-      "type": "git",
-      "url": "https://github.com/hashicorp/go-syslog",
-      "rev": "315de0c1920b18b942603ffdc2229e2af4803c17",
-      "sha256": "1z0kinqp8hbl7hw856jhx41ys97rc6hflcgwrkfyxj5fdx60xis6"
-    }
-  },
-  {
-    "goPackagePath": "github.com/jimstudt/http-authentication",
-    "fetch": {
-      "type": "git",
-      "url": "https://github.com/jimstudt/http-authentication",
-      "rev": "3eca13d6893afd7ecabe15f4445f5d2872a1b012",
-      "sha256": "1drw3bhrxpjzwryqz9nq5s0yyjqyd42iym3bh1zjs5qsh401cq08"
-    }
-  },
-  {
-    "goPackagePath": "github.com/lucas-clemente/aes12",
-    "fetch": {
-      "type": "git",
-      "url": "https://github.com/lucas-clemente/aes12",
-      "rev": "5a3c52721c1e81aa8162601ac2342486525156d5",
-      "sha256": "16z4h752na2d4sskjvbgi9bpwx874lpnzn6i13n33xjz599nps4y"
-    }
-  },
-  {
-    "goPackagePath": "github.com/lucas-clemente/fnv128a",
-    "fetch": {
-      "type": "git",
-      "url": "https://github.com/lucas-clemente/fnv128a",
-      "rev": "393af48d391698c6ae4219566bfbdfef67269997",
-      "sha256": "1cvq0p0k86p668yz9rb3z98fz3f9phvbvqp6ilbasiy4y2x5w184"
-    }
-  },
-  {
-    "goPackagePath": "github.com/lucas-clemente/quic-go",
-    "fetch": {
-      "type": "git",
-      "url": "https://github.com/lucas-clemente/quic-go",
-      "rev": "c2af049b8af811a546bfa6b11f362c9c1e706343",
-      "sha256": "178w1qzpkyrkcnix093lj6dhgg5nylxg0aqmiff6f9ww2xknlw47"
-    }
-  },
-  {
-    "goPackagePath": "github.com/lucas-clemente/quic-go-certificates",
-    "fetch": {
-      "type": "git",
-      "url": "https://github.com/lucas-clemente/quic-go-certificates",
-      "rev": "4904164a1a6479e3b509f616ccd31a7b0e705d52",
-      "sha256": "1kpl8j4lqwq1xqkyikbczq8dwrybbgz4m9ny21a88v0da6r2bcfk"
-    }
-  },
-  {
-    "goPackagePath": "github.com/mholt/caddy",
-    "fetch": {
-      "type": "git",
-      "url": "https://github.com/mholt/caddy",
-      "rev": "c5aa5843d92a27eaf521e28684111030135d9cdc",
-      "sha256": "0slh4nf5pd42mgj1j9hzywqpc3p6d211dm6pdlhb6lyn8f6nprgp"
-    }
-  },
-  {
-    "goPackagePath": "github.com/miekg/dns",
-    "fetch": {
-      "type": "git",
-      "url": "https://github.com/miekg/dns",
-      "rev": "db96a2b759cdef4f11a34506a42eb8d1290c598e",
-      "sha256": "0h5n4psd0p7q55jadgsgz2a1aj791yanrfj76avalh6aawvdpcm6"
-    }
-  },
-  {
-    "goPackagePath": "github.com/russross/blackfriday",
-    "fetch": {
-      "type": "git",
-      "url": "https://github.com/russross/blackfriday",
-      "rev": "93622da34e54fb6529bfb7c57e710f37a8d9cbd8",
-      "sha256": "19y4cx4afm3fjj7w83g0wklbzqdjm7m1j5nq64l4yq8bi50y2iv2"
-    }
-  },
-  {
-    "goPackagePath": "github.com/shurcooL/sanitized_anchor_name",
-    "fetch": {
-      "type": "git",
-      "url": "https://github.com/shurcooL/sanitized_anchor_name",
-      "rev": "10ef21a441db47d8b13ebcc5fd2310f636973c77",
-      "sha256": "1cnbzcf47cn796rcjpph1s64qrabhkv5dn9sbynsy7m9zdwr5f01"
-    }
-  },
-  {
-    "goPackagePath": "github.com/xenolf/lego",
-    "fetch": {
-      "type": "git",
-      "url": "https://github.com/xenolf/lego",
-      "rev": "823436d61175269716a88cd6627bfa603812f10c",
-      "sha256": "1j6nkw00d09ys0p4i7k4xad1fxczg3klvnw4x48wr1zaygnpaw7q"
-    }
-  },
-  {
-    "goPackagePath": "golang.org/x/crypto",
-    "fetch": {
-      "type": "git",
-      "url": "https://go.googlesource.com/crypto",
-      "rev": "b3cc7317554b3e708b116d997899e612bab100d6",
-      "sha256": "1mcrgsvqmghhvf9z99prm15flx9l3irpm20z2zmdmhsprhc0nr5v"
-    }
-  },
-  {
-    "goPackagePath": "golang.org/x/net",
-    "fetch": {
-      "type": "git",
-      "url": "https://go.googlesource.com/net",
-      "rev": "7394c112eae4dba7e96bfcfe738e6373d61772b4",
-      "sha256": "1p8wsxnbsp2lq6hbza2n0zgv4sgpxzzjjlrmcngkhxj47kp3hin7"
-    }
-  },
-  {
-    "goPackagePath": "gopkg.in/natefinch/lumberjack.v2",
-    "fetch": {
-      "type": "git",
-      "url": "https://gopkg.in/natefinch/lumberjack.v2",
-      "rev": "514cbda263a734ae8caac038dadf05f8f3f9f738",
-      "sha256": "1v92v8vkip36l2fs6l5dpp655151hrijjc781cif658r8nf7xr82"
-    }
-  },
-  {
-    "goPackagePath": "gopkg.in/square/go-jose.v1",
-    "fetch": {
-      "type": "git",
-      "url": "https://gopkg.in/square/go-jose.v1",
-      "rev": "a3927f83df1b1516f9e9dec71839c93e6bcf1db0",
-      "sha256": "0zbsy6hbv3p0ahcf4hviyv1vnpdywyf1hdspz8l6vj897myd019f"
-    }
-  },
-  {
-    "goPackagePath": "gopkg.in/yaml.v2",
-    "fetch": {
-      "type": "git",
-      "url": "https://gopkg.in/yaml.v2",
-      "rev": "e4d366fc3c7938e2958e662b4258c7a89e1f0e3e",
-      "sha256": "1himz6569rcgn27q6sdrwvdldx45q2spgjb5cfihgb80zww8di8x"
-    }
-  }
-]
\ No newline at end of file
diff --git a/pkgs/servers/caddy/deps.nix b/pkgs/servers/caddy/deps.nix
new file mode 100644
index 00000000000..7d3d4ad7ba4
--- /dev/null
+++ b/pkgs/servers/caddy/deps.nix
@@ -0,0 +1,182 @@
+[
+  {
+    goPackagePath = "github.com/BurntSushi/toml";
+    fetch = {
+      type = "git";
+      url = "https://github.com/BurntSushi/toml";
+      rev = "99064174e013895bbd9b025c31100bd1d9b590ca";
+      sha256 = "058qrar8rvw3wb0ci1mf1axnqq2729cvv9zmdr4ms2nn9s97yiz9";
+    };
+  }
+  {
+    goPackagePath = "github.com/dustin/go-humanize";
+    fetch = {
+      type = "git";
+      url = "https://github.com/dustin/go-humanize";
+      rev = "2fcb5204cdc65b4bec9fd0a87606bb0d0e3c54e8";
+      sha256 = "1m2qgn5vh5m66ggmclgikvwc05np2r7sxgpvlj2jip5d61x29j5k";
+    };
+  }
+  {
+    goPackagePath = "github.com/flynn/go-shlex";
+    fetch = {
+      type = "git";
+      url = "https://github.com/flynn/go-shlex";
+      rev = "3f9db97f856818214da2e1057f8ad84803971cff";
+      sha256 = "1j743lysygkpa2s2gii2xr32j7bxgc15zv4113b0q9jhn676ysia";
+    };
+  }
+  {
+    goPackagePath = "github.com/gorilla/websocket";
+    fetch = {
+      type = "git";
+      url = "https://github.com/gorilla/websocket";
+      rev = "a69d25be2fe2923a97c2af6849b2f52426f68fc0";
+      sha256 = "1z09mff5yfdrw8vbylrgrick5m5hczjy8m2x6swdq8v062s45g3v";
+    };
+  }
+  {
+    goPackagePath = "github.com/hashicorp/go-syslog";
+    fetch = {
+      type = "git";
+      url = "https://github.com/hashicorp/go-syslog";
+      rev = "315de0c1920b18b942603ffdc2229e2af4803c17";
+      sha256 = "1z0kinqp8hbl7hw856jhx41ys97rc6hflcgwrkfyxj5fdx60xis6";
+    };
+  }
+  {
+    goPackagePath = "github.com/jimstudt/http-authentication";
+    fetch = {
+      type = "git";
+      url = "https://github.com/jimstudt/http-authentication";
+      rev = "3eca13d6893afd7ecabe15f4445f5d2872a1b012";
+      sha256 = "1drw3bhrxpjzwryqz9nq5s0yyjqyd42iym3bh1zjs5qsh401cq08";
+    };
+  }
+  {
+    goPackagePath = "github.com/lucas-clemente/aes12";
+    fetch = {
+      type = "git";
+      url = "https://github.com/lucas-clemente/aes12";
+      rev = "5a3c52721c1e81aa8162601ac2342486525156d5";
+      sha256 = "16z4h752na2d4sskjvbgi9bpwx874lpnzn6i13n33xjz599nps4y";
+    };
+  }
+  {
+    goPackagePath = "github.com/lucas-clemente/fnv128a";
+    fetch = {
+      type = "git";
+      url = "https://github.com/lucas-clemente/fnv128a";
+      rev = "393af48d391698c6ae4219566bfbdfef67269997";
+      sha256 = "1cvq0p0k86p668yz9rb3z98fz3f9phvbvqp6ilbasiy4y2x5w184";
+    };
+  }
+  {
+    goPackagePath = "github.com/lucas-clemente/quic-go";
+    fetch = {
+      type = "git";
+      url = "https://github.com/lucas-clemente/quic-go";
+      rev = "c2af049b8af811a546bfa6b11f362c9c1e706343";
+      sha256 = "178w1qzpkyrkcnix093lj6dhgg5nylxg0aqmiff6f9ww2xknlw47";
+    };
+  }
+  {
+    goPackagePath = "github.com/lucas-clemente/quic-go-certificates";
+    fetch = {
+      type = "git";
+      url = "https://github.com/lucas-clemente/quic-go-certificates";
+      rev = "4904164a1a6479e3b509f616ccd31a7b0e705d52";
+      sha256 = "1kpl8j4lqwq1xqkyikbczq8dwrybbgz4m9ny21a88v0da6r2bcfk";
+    };
+  }
+  {
+    goPackagePath = "github.com/mholt/caddy";
+    fetch = {
+      type = "git";
+      url = "https://github.com/mholt/caddy";
+      rev = "c5aa5843d92a27eaf521e28684111030135d9cdc";
+      sha256 = "0slh4nf5pd42mgj1j9hzywqpc3p6d211dm6pdlhb6lyn8f6nprgp";
+    };
+  }
+  {
+    goPackagePath = "github.com/miekg/dns";
+    fetch = {
+      type = "git";
+      url = "https://github.com/miekg/dns";
+      rev = "db96a2b759cdef4f11a34506a42eb8d1290c598e";
+      sha256 = "0h5n4psd0p7q55jadgsgz2a1aj791yanrfj76avalh6aawvdpcm6";
+    };
+  }
+  {
+    goPackagePath = "github.com/russross/blackfriday";
+    fetch = {
+      type = "git";
+      url = "https://github.com/russross/blackfriday";
+      rev = "93622da34e54fb6529bfb7c57e710f37a8d9cbd8";
+      sha256 = "19y4cx4afm3fjj7w83g0wklbzqdjm7m1j5nq64l4yq8bi50y2iv2";
+    };
+  }
+  {
+    goPackagePath = "github.com/shurcooL/sanitized_anchor_name";
+    fetch = {
+      type = "git";
+      url = "https://github.com/shurcooL/sanitized_anchor_name";
+      rev = "10ef21a441db47d8b13ebcc5fd2310f636973c77";
+      sha256 = "1cnbzcf47cn796rcjpph1s64qrabhkv5dn9sbynsy7m9zdwr5f01";
+    };
+  }
+  {
+    goPackagePath = "github.com/xenolf/lego";
+    fetch = {
+      type = "git";
+      url = "https://github.com/xenolf/lego";
+      rev = "823436d61175269716a88cd6627bfa603812f10c";
+      sha256 = "1j6nkw00d09ys0p4i7k4xad1fxczg3klvnw4x48wr1zaygnpaw7q";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/crypto";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/crypto";
+      rev = "b3cc7317554b3e708b116d997899e612bab100d6";
+      sha256 = "1mcrgsvqmghhvf9z99prm15flx9l3irpm20z2zmdmhsprhc0nr5v";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/net";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/net";
+      rev = "7394c112eae4dba7e96bfcfe738e6373d61772b4";
+      sha256 = "1p8wsxnbsp2lq6hbza2n0zgv4sgpxzzjjlrmcngkhxj47kp3hin7";
+    };
+  }
+  {
+    goPackagePath = "gopkg.in/natefinch/lumberjack.v2";
+    fetch = {
+      type = "git";
+      url = "https://gopkg.in/natefinch/lumberjack.v2";
+      rev = "514cbda263a734ae8caac038dadf05f8f3f9f738";
+      sha256 = "1v92v8vkip36l2fs6l5dpp655151hrijjc781cif658r8nf7xr82";
+    };
+  }
+  {
+    goPackagePath = "gopkg.in/square/go-jose.v1";
+    fetch = {
+      type = "git";
+      url = "https://gopkg.in/square/go-jose.v1";
+      rev = "a3927f83df1b1516f9e9dec71839c93e6bcf1db0";
+      sha256 = "0zbsy6hbv3p0ahcf4hviyv1vnpdywyf1hdspz8l6vj897myd019f";
+    };
+  }
+  {
+    goPackagePath = "gopkg.in/yaml.v2";
+    fetch = {
+      type = "git";
+      url = "https://gopkg.in/yaml.v2";
+      rev = "e4d366fc3c7938e2958e662b4258c7a89e1f0e3e";
+      sha256 = "1himz6569rcgn27q6sdrwvdldx45q2spgjb5cfihgb80zww8di8x";
+    };
+  }
+]
diff --git a/pkgs/servers/etcd/default.nix b/pkgs/servers/etcd/default.nix
index 3d301a6a35b..16189fb4723 100644
--- a/pkgs/servers/etcd/default.nix
+++ b/pkgs/servers/etcd/default.nix
@@ -16,7 +16,7 @@ buildGoPackage rec {
     sha256 = "163qji360y21nr1wnl16nbvvgdgqgbny4c3v3igp87q9p78sdf75";
   };
 
-  goDeps = ./deps.json;
+  goDeps = ./deps.nix;
 
   buildInputs = [ libpcap ];
 
diff --git a/pkgs/servers/etcd/deps.json b/pkgs/servers/etcd/deps.json
deleted file mode 100644
index 6ba22a78b7c..00000000000
--- a/pkgs/servers/etcd/deps.json
+++ /dev/null
@@ -1,335 +0,0 @@
-[
-  {
-    "goPackagePath": "github.com/beorn7/perks",
-    "fetch": {
-      "type": "git",
-      "url": "https://github.com/beorn7/perks",
-      "rev": "4c0e84591b9aa9e6dcfdf3e020114cd81f89d5f9",
-      "sha256": "1hrybsql68xw57brzj805xx2mghydpdiysv3gbhr7f5wlxj2514y"
-    }
-  },
-  {
-    "goPackagePath": "github.com/boltdb/bolt",
-    "fetch": {
-      "type": "git",
-      "url": "https://github.com/boltdb/bolt",
-      "rev": "583e8937c61f1af6513608ccc75c97b6abdf4ff9",
-      "sha256": "0cp5v9iypg9ysiq40k3h3lg7aisxplnmxshha7nama6b170izyay"
-    }
-  },
-  {
-    "goPackagePath": "github.com/cloudfoundry-incubator/candiedyaml",
-    "fetch": {
-      "type": "git",
-      "url": "https://github.com/cloudfoundry-incubator/candiedyaml",
-      "rev": "99c3df83b51532e3615f851d8c2dbb638f5313bf",
-      "sha256": "106nibg7423642gbkg88c5x2jxfz6nmxbribhwb8cr1rn9vpjaxs"
-    }
-  },
-  {
-    "goPackagePath": "github.com/cockroachdb/cmux",
-    "fetch": {
-      "type": "git",
-      "url": "https://github.com/cockroachdb/cmux",
-      "rev": "b64f5908f4945f4b11ed4a0a9d3cc1e23350866d",
-      "sha256": "1by4f3x7j3r3z1sdx1v04r494hn6jaag7lc03prrgx455j8i0jlh"
-    }
-  },
-  {
-    "goPackagePath": "github.com/coreos/etcd",
-    "fetch": {
-      "type": "git",
-      "url": "https://github.com/coreos/etcd.git",
-      "rev": "9efa00d1030d4bf62eb8e5ec130023aeb1b8e2d0",
-      "sha256": "163qji360y21nr1wnl16nbvvgdgqgbny4c3v3igp87q9p78sdf75"
-    }
-  },
-  {
-    "goPackagePath": "github.com/coreos/go-semver",
-    "fetch": {
-      "type": "git",
-      "url": "https://github.com/coreos/go-semver",
-      "rev": "8ab6407b697782a06568d4b7f1db25550ec2e4c6",
-      "sha256": "1gghi5bnqj50hfxhqc1cxmynqmh2yk9ii7ab9gsm75y5cp94ymk0"
-    }
-  },
-  {
-    "goPackagePath": "github.com/coreos/go-systemd",
-    "fetch": {
-      "type": "git",
-      "url": "https://github.com/coreos/go-systemd",
-      "rev": "5c49e4850c879a0ddc061e8f4adcf307de8a8bc2",
-      "sha256": "1w16bnrgfjb5rwha7g8rdjhpgjf8bzmlzhrda5bfvc9ymj3qjibk"
-    }
-  },
-  {
-    "goPackagePath": "github.com/coreos/pkg",
-    "fetch": {
-      "type": "git",
-      "url": "https://github.com/coreos/pkg",
-      "rev": "3ac0863d7acf3bc44daf49afef8919af12f704ef",
-      "sha256": "0l5ans1ls2gknkrnhymgc0zbgg5nqjbjbqc51r611adcr0m6gg8l"
-    }
-  },
-  {
-    "goPackagePath": "github.com/ghodss/yaml",
-    "fetch": {
-      "type": "git",
-      "url": "https://github.com/ghodss/yaml",
-      "rev": "aa0c862057666179de291b67d9f093d12b5a8473",
-      "sha256": "0cbc78n8l7h1gdzhrvahplcvr4v7n8v23vkgskfp843rcx5h6isr"
-    }
-  },
-  {
-    "goPackagePath": "github.com/gogo/protobuf",
-    "fetch": {
-      "type": "git",
-      "url": "https://github.com/gogo/protobuf",
-      "rev": "f20a1444730c7d9949b880a0309e737d007def25",
-      "sha256": "12wa3r2cb2v1m65phbkh692ldlklk459z4x6avpc6im0zkr6r73c"
-    }
-  },
-  {
-    "goPackagePath": "github.com/golang/protobuf",
-    "fetch": {
-      "type": "git",
-      "url": "https://github.com/golang/protobuf",
-      "rev": "f592bd283e9ef86337a432eb50e592278c3d534d",
-      "sha256": "01gxhzn9m6jz6ihwxfycnx39zf5pmkan61l278cnynsb8mibdpvb"
-    }
-  },
-  {
-    "goPackagePath": "github.com/google/btree",
-    "fetch": {
-      "type": "git",
-      "url": "https://github.com/google/btree",
-      "rev": "7d79101e329e5a3adf994758c578dab82b90c017",
-      "sha256": "1c1hsy5s2pfawg3l9954jmqmy4yc2zp3f7i87m00km2yqgb8xpd0"
-    }
-  },
-  {
-    "goPackagePath": "github.com/grpc-ecosystem/grpc-gateway",
-    "fetch": {
-      "type": "git",
-      "url": "https://github.com/grpc-ecosystem/grpc-gateway",
-      "rev": "5e0e028ba0a015710eaebf6e47af18812c9f2767",
-      "sha256": "00s4wxzs6lz5al7y2hxi6r4bxhx5b0ajk5rwxrnb4a4mhlaii8pk"
-    }
-  },
-  {
-    "goPackagePath": "github.com/jonboulle/clockwork",
-    "fetch": {
-      "type": "git",
-      "url": "https://github.com/jonboulle/clockwork",
-      "rev": "e3653ace2d63753697e0e5b07b9393971c0bba9d",
-      "sha256": "1avzqhks12a8x2yzpvjsf3k0gv9cy7zx2z88hn0scacnxkphisvc"
-    }
-  },
-  {
-    "goPackagePath": "github.com/matttproud/golang_protobuf_extensions",
-    "fetch": {
-      "type": "git",
-      "url": "https://github.com/matttproud/golang_protobuf_extensions",
-      "rev": "c12348ce28de40eed0136aa2b644d0ee0650e56c",
-      "sha256": "1d0c1isd2lk9pnfq2nk0aih356j30k3h1gi2w0ixsivi5csl7jya"
-    }
-  },
-  {
-    "goPackagePath": "github.com/prometheus/client_golang",
-    "fetch": {
-      "type": "git",
-      "url": "https://github.com/prometheus/client_golang",
-      "rev": "c5b7fccd204277076155f10851dad72b76a49317",
-      "sha256": "1xqny3147g12n4j03kxm8s9mvdbs3ln6i56c655mybrn9jjy48kd"
-    }
-  },
-  {
-    "goPackagePath": "github.com/prometheus/client_model",
-    "fetch": {
-      "type": "git",
-      "url": "https://github.com/prometheus/client_model",
-      "rev": "fa8ad6fec33561be4280a8f0514318c79d7f6cb6",
-      "sha256": "11a7v1fjzhhwsl128znjcf5v7v6129xjgkdpym2lial4lac1dhm9"
-    }
-  },
-  {
-    "goPackagePath": "github.com/prometheus/common",
-    "fetch": {
-      "type": "git",
-      "url": "https://github.com/prometheus/common",
-      "rev": "ebdfc6da46522d58825777cf1f90490a5b1ef1d8",
-      "sha256": "0js62pj8600773wx6labpd772yyhz5ivim7dnl7b862wblbmc8mq"
-    }
-  },
-  {
-    "goPackagePath": "github.com/prometheus/procfs",
-    "fetch": {
-      "type": "git",
-      "url": "https://github.com/prometheus/procfs",
-      "rev": "abf152e5f3e97f2fafac028d2cc06c1feb87ffa5",
-      "sha256": "0cp8lznv1b4zhi3wnbjkfxwzhkqd3wbmiy6mwgjanip8l9l3ykws"
-    }
-  },
-  {
-    "goPackagePath": "github.com/spf13/cobra",
-    "fetch": {
-      "type": "git",
-      "url": "https://github.com/spf13/cobra",
-      "rev": "7c674d9e72017ed25f6d2b5e497a1368086b6a6f",
-      "sha256": "0an935r7lc11a744mvdrsy56rs2w0ah3gdclvr4gzd5iqr9ap3dr"
-    }
-  },
-  {
-    "goPackagePath": "github.com/spf13/pflag",
-    "fetch": {
-      "type": "git",
-      "url": "https://github.com/spf13/pflag",
-      "rev": "6454a84b6da0ea8b628d5d8a26759f62c6c161b4",
-      "sha256": "06rfi73jhkncn8gxy6klgmba5947k9gpwdswipdpz680yxczcwna"
-    }
-  },
-  {
-    "goPackagePath": "github.com/ugorji/go",
-    "fetch": {
-      "type": "git",
-      "url": "https://github.com/ugorji/go",
-      "rev": "4a1cb5252a6951f715a85d0e4be334c2a2dbf2a2",
-      "sha256": "0izpijk3piihl4fnqg8ncnp5ivbq41pg3xf7iagg4fbg5id4pxbx"
-    }
-  },
-  {
-    "goPackagePath": "github.com/xiang90/probing",
-    "fetch": {
-      "type": "git",
-      "url": "https://github.com/xiang90/probing",
-      "rev": "07dd2e8dfe18522e9c447ba95f2fe95262f63bb2",
-      "sha256": "0r8rq27yigz72mk8z7p61yjfan8id021dnp1v421ln9byzpvabn2"
-    }
-  },
-  {
-    "goPackagePath": "golang.org/x/crypto",
-    "fetch": {
-      "type": "git",
-      "url": "https://go.googlesource.com/crypto",
-      "rev": "88d0005bf4c3ec17306ecaca4281a8d8efd73e91",
-      "sha256": "1d3x0rwfd4cml06ka8gy74wxrw94m2z7qgz6ky0rgmxcr7p5iikz"
-    }
-  },
-  {
-    "goPackagePath": "golang.org/x/net",
-    "fetch": {
-      "type": "git",
-      "url": "https://go.googlesource.com/net",
-      "rev": "7394c112eae4dba7e96bfcfe738e6373d61772b4",
-      "sha256": "1p8wsxnbsp2lq6hbza2n0zgv4sgpxzzjjlrmcngkhxj47kp3hin7"
-    }
-  },
-  {
-    "goPackagePath": "google.golang.org/grpc",
-    "fetch": {
-      "type": "git",
-      "url": "https://github.com/grpc/grpc-go",
-      "rev": "0032a855ba5c8a3c8e0d71c2deef354b70af1584",
-      "sha256": "0qkynp65jwk6jk932k7kwxs5v6fzlfsb1fay71a00dwr36f44s67"
-    }
-  },
-  {
-    "goPackagePath": "github.com/urfave/cli",
-    "fetch": {
-      "type": "git",
-      "url": "https://github.com/urfave/cli",
-      "rev": "168c95418e66e019fe17b8f4f5c45aa62ff80e23",
-      "sha256": "1gdvvim2f1zigcmbpcgypgn7nvpnlr87grbg7lw13fbpy6fnlw2n"
-    }
-  },
-  {
-    "goPackagePath": "github.com/mattn/go-runewidth",
-    "fetch": {
-      "type": "git",
-      "url": "https://github.com/mattn/go-runewidth",
-      "rev": "d6bea18f789704b5f83375793155289da36a3c7f",
-      "sha256": "1hnigpn7rjbwd1ircxkyx9hvi0xmxr32b2jdy2jzw6b3jmcnz1fs"
-    }
-  },
-  {
-    "goPackagePath": "github.com/olekukonko/tablewriter",
-    "fetch": {
-      "type": "git",
-      "url": "https://github.com/olekukonko/tablewriter",
-      "rev": "daf2955e742cf123959884fdff4685aa79b63135",
-      "sha256": "1fvl251ms7qmzfbi853kdgghqkrmyy6n1605mfy50nhgvw03z203"
-    }
-  },
-  {
-    "goPackagePath": "github.com/dustin/go-humanize",
-    "fetch": {
-      "type": "git",
-      "url": "https://github.com/dustin/go-humanize",
-      "rev": "2fcb5204cdc65b4bec9fd0a87606bb0d0e3c54e8",
-      "sha256": "1m2qgn5vh5m66ggmclgikvwc05np2r7sxgpvlj2jip5d61x29j5k"
-    }
-  },
-  {
-    "goPackagePath": "github.com/bgentry/speakeasy",
-    "fetch": {
-      "type": "git",
-      "url": "https://github.com/bgentry/speakeasy",
-      "rev": "a1ccbf2c40dfc8ce514b5c5c6e6d1429ea6880da",
-      "sha256": "0xqpc1qhdcs5blp1mkrppfb1x0rcv4a445mj0yzdwshbzkw5di01"
-    }
-  },
-  {
-    "goPackagePath": "github.com/kr/pty",
-    "fetch": {
-      "type": "git",
-      "url": "https://github.com/kr/pty",
-      "rev": "ce7fa45920dc37a92de8377972e52bc55ffa8d57",
-      "sha256": "0mdlr2mmwjznw2id0l4200xjajq9dh1kxn3z7d3ksn0b5fwinzmk"
-    }
-  },
-  {
-    "goPackagePath": "github.com/golang/groupcache",
-    "fetch": {
-      "type": "git",
-      "url": "https://github.com/golang/groupcache",
-      "rev": "a6b377e3400b08991b80d6805d627f347f983866",
-      "sha256": "125a6zdaxj916yp2rlrkg8xw00vjf5ga9xwdg4clby8wj4fysma2"
-    }
-  },
-  {
-    "goPackagePath": "gopkg.in/cheggaaa/pb.v1",
-    "fetch": {
-      "type": "git",
-      "url": "https://gopkg.in/cheggaaa/pb.v1",
-      "rev": "9453b2db37f4d8bc63751daca63bbe7049eb5e74",
-      "sha256": "0py7dxvm3ydxcw260x7r7xbjww1vkil3rhyy3f9njmjydyb303rb"
-    }
-  },
-  {
-    "goPackagePath": "github.com/golang/glog",
-    "fetch": {
-      "type": "git",
-      "url": "https://github.com/golang/glog",
-      "rev": "23def4e6c14b4da8ac2ed8007337bc5eb5007998",
-      "sha256": "0jb2834rw5sykfr937fxi8hxi2zy80sj2bdn9b3jb4b26ksqng30"
-    }
-  },
-  {
-    "goPackagePath": "github.com/spacejam/loghisto",
-    "fetch": {
-      "type": "git",
-      "url": "https://github.com/spacejam/loghisto",
-      "rev": "9d1d8c1fd2a4ac852bf2e312f2379f553345fda7",
-      "sha256": "0r31y4ci35pp11wqdyarimdq5a703byk3cf6d67adsa4nw0ysfm1"
-    }
-  },
-  {
-    "goPackagePath": "github.com/akrennmair/gopcap",
-    "fetch": {
-      "type": "git",
-      "url": "https://github.com/akrennmair/gopcap",
-      "rev": "00e11033259acb75598ba416495bb708d864a010",
-      "sha256": "0xfw7x5a36w0g76imjvgk055360xg0nva42qhmflfvll7ldxq96a"
-    }
-  }
-]
\ No newline at end of file
diff --git a/pkgs/servers/etcd/deps.nix b/pkgs/servers/etcd/deps.nix
new file mode 100644
index 00000000000..2c07817a980
--- /dev/null
+++ b/pkgs/servers/etcd/deps.nix
@@ -0,0 +1,335 @@
+[
+{
+  goPackagePath = "github.com/beorn7/perks";
+  fetch = {
+    type = "git";
+    url = "https://github.com/beorn7/perks";
+    rev = "4c0e84591b9aa9e6dcfdf3e020114cd81f89d5f9";
+    sha256 = "1hrybsql68xw57brzj805xx2mghydpdiysv3gbhr7f5wlxj2514y";
+  };
+}
+{
+  goPackagePath = "github.com/boltdb/bolt";
+  fetch = {
+    type = "git";
+    url = "https://github.com/boltdb/bolt";
+    rev = "583e8937c61f1af6513608ccc75c97b6abdf4ff9";
+    sha256 = "0cp5v9iypg9ysiq40k3h3lg7aisxplnmxshha7nama6b170izyay";
+  };
+}
+{
+  goPackagePath = "github.com/cloudfoundry-incubator/candiedyaml";
+  fetch = {
+    type = "git";
+    url = "https://github.com/cloudfoundry-incubator/candiedyaml";
+    rev = "99c3df83b51532e3615f851d8c2dbb638f5313bf";
+    sha256 = "106nibg7423642gbkg88c5x2jxfz6nmxbribhwb8cr1rn9vpjaxs";
+  };
+}
+{
+  goPackagePath = "github.com/cockroachdb/cmux";
+  fetch = {
+    type = "git";
+    url = "https://github.com/cockroachdb/cmux";
+    rev = "b64f5908f4945f4b11ed4a0a9d3cc1e23350866d";
+    sha256 = "1by4f3x7j3r3z1sdx1v04r494hn6jaag7lc03prrgx455j8i0jlh";
+  };
+}
+{
+  goPackagePath = "github.com/coreos/etcd";
+  fetch = {
+    type = "git";
+    url = "https://github.com/coreos/etcd.git";
+    rev = "9efa00d1030d4bf62eb8e5ec130023aeb1b8e2d0";
+    sha256 = "163qji360y21nr1wnl16nbvvgdgqgbny4c3v3igp87q9p78sdf75";
+  };
+}
+{
+  goPackagePath = "github.com/coreos/go-semver";
+  fetch = {
+    type = "git";
+    url = "https://github.com/coreos/go-semver";
+    rev = "8ab6407b697782a06568d4b7f1db25550ec2e4c6";
+    sha256 = "1gghi5bnqj50hfxhqc1cxmynqmh2yk9ii7ab9gsm75y5cp94ymk0";
+  };
+}
+{
+  goPackagePath = "github.com/coreos/go-systemd";
+  fetch = {
+    type = "git";
+    url = "https://github.com/coreos/go-systemd";
+    rev = "5c49e4850c879a0ddc061e8f4adcf307de8a8bc2";
+    sha256 = "1w16bnrgfjb5rwha7g8rdjhpgjf8bzmlzhrda5bfvc9ymj3qjibk";
+  };
+}
+{
+  goPackagePath = "github.com/coreos/pkg";
+  fetch = {
+    type = "git";
+    url = "https://github.com/coreos/pkg";
+    rev = "3ac0863d7acf3bc44daf49afef8919af12f704ef";
+    sha256 = "0l5ans1ls2gknkrnhymgc0zbgg5nqjbjbqc51r611adcr0m6gg8l";
+  };
+}
+{
+  goPackagePath = "github.com/ghodss/yaml";
+  fetch = {
+    type = "git";
+    url = "https://github.com/ghodss/yaml";
+    rev = "aa0c862057666179de291b67d9f093d12b5a8473";
+    sha256 = "0cbc78n8l7h1gdzhrvahplcvr4v7n8v23vkgskfp843rcx5h6isr";
+  };
+}
+{
+  goPackagePath = "github.com/gogo/protobuf";
+  fetch = {
+    type = "git";
+    url = "https://github.com/gogo/protobuf";
+    rev = "f20a1444730c7d9949b880a0309e737d007def25";
+    sha256 = "12wa3r2cb2v1m65phbkh692ldlklk459z4x6avpc6im0zkr6r73c";
+  };
+}
+{
+  goPackagePath = "github.com/golang/protobuf";
+  fetch = {
+    type = "git";
+    url = "https://github.com/golang/protobuf";
+    rev = "f592bd283e9ef86337a432eb50e592278c3d534d";
+    sha256 = "01gxhzn9m6jz6ihwxfycnx39zf5pmkan61l278cnynsb8mibdpvb";
+  };
+}
+{
+  goPackagePath = "github.com/google/btree";
+  fetch = {
+    type = "git";
+    url = "https://github.com/google/btree";
+    rev = "7d79101e329e5a3adf994758c578dab82b90c017";
+    sha256 = "1c1hsy5s2pfawg3l9954jmqmy4yc2zp3f7i87m00km2yqgb8xpd0";
+  };
+}
+{
+  goPackagePath = "github.com/grpc-ecosystem/grpc-gateway";
+  fetch = {
+    type = "git";
+    url = "https://github.com/grpc-ecosystem/grpc-gateway";
+    rev = "5e0e028ba0a015710eaebf6e47af18812c9f2767";
+    sha256 = "00s4wxzs6lz5al7y2hxi6r4bxhx5b0ajk5rwxrnb4a4mhlaii8pk";
+  };
+}
+{
+  goPackagePath = "github.com/jonboulle/clockwork";
+  fetch = {
+    type = "git";
+    url = "https://github.com/jonboulle/clockwork";
+    rev = "e3653ace2d63753697e0e5b07b9393971c0bba9d";
+    sha256 = "1avzqhks12a8x2yzpvjsf3k0gv9cy7zx2z88hn0scacnxkphisvc";
+  };
+}
+{
+  goPackagePath = "github.com/matttproud/golang_protobuf_extensions";
+  fetch = {
+    type = "git";
+    url = "https://github.com/matttproud/golang_protobuf_extensions";
+    rev = "c12348ce28de40eed0136aa2b644d0ee0650e56c";
+    sha256 = "1d0c1isd2lk9pnfq2nk0aih356j30k3h1gi2w0ixsivi5csl7jya";
+  };
+}
+{
+  goPackagePath = "github.com/prometheus/client_golang";
+  fetch = {
+    type = "git";
+    url = "https://github.com/prometheus/client_golang";
+    rev = "c5b7fccd204277076155f10851dad72b76a49317";
+    sha256 = "1xqny3147g12n4j03kxm8s9mvdbs3ln6i56c655mybrn9jjy48kd";
+  };
+}
+{
+  goPackagePath = "github.com/prometheus/client_model";
+  fetch = {
+    type = "git";
+    url = "https://github.com/prometheus/client_model";
+    rev = "fa8ad6fec33561be4280a8f0514318c79d7f6cb6";
+    sha256 = "11a7v1fjzhhwsl128znjcf5v7v6129xjgkdpym2lial4lac1dhm9";
+  };
+}
+{
+  goPackagePath = "github.com/prometheus/common";
+  fetch = {
+    type = "git";
+    url = "https://github.com/prometheus/common";
+    rev = "ebdfc6da46522d58825777cf1f90490a5b1ef1d8";
+    sha256 = "0js62pj8600773wx6labpd772yyhz5ivim7dnl7b862wblbmc8mq";
+  };
+}
+{
+  goPackagePath = "github.com/prometheus/procfs";
+  fetch = {
+    type = "git";
+    url = "https://github.com/prometheus/procfs";
+    rev = "abf152e5f3e97f2fafac028d2cc06c1feb87ffa5";
+    sha256 = "0cp8lznv1b4zhi3wnbjkfxwzhkqd3wbmiy6mwgjanip8l9l3ykws";
+  };
+}
+{
+  goPackagePath = "github.com/spf13/cobra";
+  fetch = {
+    type = "git";
+    url = "https://github.com/spf13/cobra";
+    rev = "7c674d9e72017ed25f6d2b5e497a1368086b6a6f";
+    sha256 = "0an935r7lc11a744mvdrsy56rs2w0ah3gdclvr4gzd5iqr9ap3dr";
+  };
+}
+{
+  goPackagePath = "github.com/spf13/pflag";
+  fetch = {
+    type = "git";
+    url = "https://github.com/spf13/pflag";
+    rev = "6454a84b6da0ea8b628d5d8a26759f62c6c161b4";
+    sha256 = "06rfi73jhkncn8gxy6klgmba5947k9gpwdswipdpz680yxczcwna";
+  };
+}
+{
+  goPackagePath = "github.com/ugorji/go";
+  fetch = {
+    type = "git";
+    url = "https://github.com/ugorji/go";
+    rev = "4a1cb5252a6951f715a85d0e4be334c2a2dbf2a2";
+    sha256 = "0izpijk3piihl4fnqg8ncnp5ivbq41pg3xf7iagg4fbg5id4pxbx";
+  };
+}
+{
+  goPackagePath = "github.com/xiang90/probing";
+  fetch = {
+    type = "git";
+    url = "https://github.com/xiang90/probing";
+    rev = "07dd2e8dfe18522e9c447ba95f2fe95262f63bb2";
+    sha256 = "0r8rq27yigz72mk8z7p61yjfan8id021dnp1v421ln9byzpvabn2";
+  };
+}
+{
+  goPackagePath = "golang.org/x/crypto";
+  fetch = {
+    type = "git";
+    url = "https://go.googlesource.com/crypto";
+    rev = "88d0005bf4c3ec17306ecaca4281a8d8efd73e91";
+    sha256 = "1d3x0rwfd4cml06ka8gy74wxrw94m2z7qgz6ky0rgmxcr7p5iikz";
+  };
+}
+{
+  goPackagePath = "golang.org/x/net";
+  fetch = {
+    type = "git";
+    url = "https://go.googlesource.com/net";
+    rev = "7394c112eae4dba7e96bfcfe738e6373d61772b4";
+    sha256 = "1p8wsxnbsp2lq6hbza2n0zgv4sgpxzzjjlrmcngkhxj47kp3hin7";
+  };
+}
+{
+  goPackagePath = "google.golang.org/grpc";
+  fetch = {
+    type = "git";
+    url = "https://github.com/grpc/grpc-go";
+    rev = "0032a855ba5c8a3c8e0d71c2deef354b70af1584";
+    sha256 = "0qkynp65jwk6jk932k7kwxs5v6fzlfsb1fay71a00dwr36f44s67";
+  };
+}
+{
+  goPackagePath = "github.com/urfave/cli";
+  fetch = {
+    type = "git";
+    url = "https://github.com/urfave/cli";
+    rev = "168c95418e66e019fe17b8f4f5c45aa62ff80e23";
+    sha256 = "1gdvvim2f1zigcmbpcgypgn7nvpnlr87grbg7lw13fbpy6fnlw2n";
+  };
+}
+{
+  goPackagePath = "github.com/mattn/go-runewidth";
+  fetch = {
+    type = "git";
+    url = "https://github.com/mattn/go-runewidth";
+    rev = "d6bea18f789704b5f83375793155289da36a3c7f";
+    sha256 = "1hnigpn7rjbwd1ircxkyx9hvi0xmxr32b2jdy2jzw6b3jmcnz1fs";
+  };
+}
+{
+  goPackagePath = "github.com/olekukonko/tablewriter";
+  fetch = {
+    type = "git";
+    url = "https://github.com/olekukonko/tablewriter";
+    rev = "daf2955e742cf123959884fdff4685aa79b63135";
+    sha256 = "1fvl251ms7qmzfbi853kdgghqkrmyy6n1605mfy50nhgvw03z203";
+  };
+}
+{
+  goPackagePath = "github.com/dustin/go-humanize";
+  fetch = {
+    type = "git";
+    url = "https://github.com/dustin/go-humanize";
+    rev = "2fcb5204cdc65b4bec9fd0a87606bb0d0e3c54e8";
+    sha256 = "1m2qgn5vh5m66ggmclgikvwc05np2r7sxgpvlj2jip5d61x29j5k";
+  };
+}
+{
+  goPackagePath = "github.com/bgentry/speakeasy";
+  fetch = {
+    type = "git";
+    url = "https://github.com/bgentry/speakeasy";
+    rev = "a1ccbf2c40dfc8ce514b5c5c6e6d1429ea6880da";
+    sha256 = "0xqpc1qhdcs5blp1mkrppfb1x0rcv4a445mj0yzdwshbzkw5di01";
+  };
+}
+{
+  goPackagePath = "github.com/kr/pty";
+  fetch = {
+    type = "git";
+    url = "https://github.com/kr/pty";
+    rev = "ce7fa45920dc37a92de8377972e52bc55ffa8d57";
+    sha256 = "0mdlr2mmwjznw2id0l4200xjajq9dh1kxn3z7d3ksn0b5fwinzmk";
+  };
+}
+{
+  goPackagePath = "github.com/golang/groupcache";
+  fetch = {
+    type = "git";
+    url = "https://github.com/golang/groupcache";
+    rev = "a6b377e3400b08991b80d6805d627f347f983866";
+    sha256 = "125a6zdaxj916yp2rlrkg8xw00vjf5ga9xwdg4clby8wj4fysma2";
+  };
+}
+{
+  goPackagePath = "gopkg.in/cheggaaa/pb.v1";
+  fetch = {
+    type = "git";
+    url = "https://gopkg.in/cheggaaa/pb.v1";
+    rev = "9453b2db37f4d8bc63751daca63bbe7049eb5e74";
+    sha256 = "0py7dxvm3ydxcw260x7r7xbjww1vkil3rhyy3f9njmjydyb303rb";
+  };
+}
+{
+  goPackagePath = "github.com/golang/glog";
+  fetch = {
+    type = "git";
+    url = "https://github.com/golang/glog";
+    rev = "23def4e6c14b4da8ac2ed8007337bc5eb5007998";
+    sha256 = "0jb2834rw5sykfr937fxi8hxi2zy80sj2bdn9b3jb4b26ksqng30";
+  };
+}
+{
+  goPackagePath = "github.com/spacejam/loghisto";
+  fetch = {
+    type = "git";
+    url = "https://github.com/spacejam/loghisto";
+    rev = "9d1d8c1fd2a4ac852bf2e312f2379f553345fda7";
+    sha256 = "0r31y4ci35pp11wqdyarimdq5a703byk3cf6d67adsa4nw0ysfm1";
+  };
+}
+{
+  goPackagePath = "github.com/akrennmair/gopcap";
+  fetch = {
+    type = "git";
+    url = "https://github.com/akrennmair/gopcap";
+    rev = "00e11033259acb75598ba416495bb708d864a010";
+    sha256 = "0xfw7x5a36w0g76imjvgk055360xg0nva42qhmflfvll7ldxq96a";
+  };
+}
+]
diff --git a/pkgs/servers/gotty/default.nix b/pkgs/servers/gotty/default.nix
index b8718898f4b..28ca858440b 100644
--- a/pkgs/servers/gotty/default.nix
+++ b/pkgs/servers/gotty/default.nix
@@ -14,7 +14,7 @@ buildGoPackage rec {
     sha256 = "0gvnbr61d5si06ik2j075jg00r9b94ryfgg06nqxkf10dp8lgi09";
   };
 
-  goDeps = ./deps.json;
+  goDeps = ./deps.nix;
 
   meta = with stdenv.lib; {
     description = "Share your terminal as a web application";
diff --git a/pkgs/servers/gotty/deps.json b/pkgs/servers/gotty/deps.json
deleted file mode 100644
index 81983165dcd..00000000000
--- a/pkgs/servers/gotty/deps.json
+++ /dev/null
@@ -1,74 +0,0 @@
-[
-    {
-        "goPackagePath": "github.com/gorilla/websocket",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/gorilla/websocket",
-            "rev": "a622679ebd7a3b813862379232f645f8e690e43f",
-            "sha256": "1nc9jbcmgya1i6dmf6sbcqsnxi9hbjg6dz1z0k7zmc6xdwlq0y4q"
-        }
-    },
-    {
-        "goPackagePath": "github.com/kr/pty",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/kr/pty",
-            "rev": "67e2db24c831afa6c64fc17b4a143390674365ef",
-            "sha256": "1l3z3wbb112ar9br44m8g838z0pq2gfxcp5s3ka0xvm1hjvanw2d"
-        }
-    },
-    {
-        "goPackagePath": "github.com/braintree/manners",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/braintree/manners",
-            "rev": "cab36f97339b1925cd89e158632728025557e550",
-            "sha256": "1q508c62iiklghkhwqz9c0zsn9hrij7kqb93gdywzj7ms7x6hlfh"
-        }
-    },
-    {
-        "goPackagePath": "github.com/codegangsta/cli",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/codegangsta/cli",
-            "rev": "71f57d300dd6a780ac1856c005c4b518cfd498ec",
-            "sha256": "1fxznirkvank5461789dm5aw5z8aqi0jvwligvz44659rfl376p3"
-        }
-    },
-    {
-        "goPackagePath": "github.com/elazarl/go-bindata-assetfs",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/elazarl/go-bindata-assetfs",
-            "rev": "d5cac425555ca5cf00694df246e04f05e6a55150",
-            "sha256": "636ce247ff6f85c14f38a421f46662fa77bdc29762692e1f72b3cd1f9d7a1d17"
-        }
-    },
-    {
-        "goPackagePath": "github.com/fatih/structs",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/fatih/structs",
-            "rev": "a9f7daa9c2729e97450c2da2feda19130a367d8f",
-            "sha256": "0pyrc7svc826g37al3db19n5l4r2m9h1mlhjh3hz2r41xfaqia50"
-        }
-    },
-    {
-        "goPackagePath": "github.com/hashicorp/hcl",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/hashicorp/hcl",
-            "rev": "54864211433d45cb780682431585b3e573b49e4a",
-            "sha256": "07l2dydzjpdgm2d4a72hkmincn455j3nrafg6hs3c23bkvizj950"
-        }
-    },
-    {
-        "goPackagePath": "github.com/hashicorp/go-multierror",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/hashicorp/go-multierror",
-            "rev": "56912fb08d85084aa318edcf2bba735b97cf35c5",
-            "sha256": "0s01cqdab2f7fxkkjjk2wqx05a1shnwlvfn45h2pi3i4gapvcn0r"
-        }
-    }
-]
diff --git a/pkgs/servers/gotty/deps.nix b/pkgs/servers/gotty/deps.nix
new file mode 100644
index 00000000000..4f59dc414c4
--- /dev/null
+++ b/pkgs/servers/gotty/deps.nix
@@ -0,0 +1,74 @@
+[
+  {
+    goPackagePath = "github.com/gorilla/websocket";
+    fetch = {
+      type = "git";
+      url = "https://github.com/gorilla/websocket";
+      rev = "a622679ebd7a3b813862379232f645f8e690e43f";
+      sha256 = "1nc9jbcmgya1i6dmf6sbcqsnxi9hbjg6dz1z0k7zmc6xdwlq0y4q";
+    };
+  }
+  {
+    goPackagePath = "github.com/kr/pty";
+    fetch = {
+      type = "git";
+      url = "https://github.com/kr/pty";
+      rev = "67e2db24c831afa6c64fc17b4a143390674365ef";
+      sha256 = "1l3z3wbb112ar9br44m8g838z0pq2gfxcp5s3ka0xvm1hjvanw2d";
+    };
+  }
+  {
+    goPackagePath = "github.com/braintree/manners";
+    fetch = {
+      type = "git";
+      url = "https://github.com/braintree/manners";
+      rev = "cab36f97339b1925cd89e158632728025557e550";
+      sha256 = "1q508c62iiklghkhwqz9c0zsn9hrij7kqb93gdywzj7ms7x6hlfh";
+    };
+  }
+  {
+    goPackagePath = "github.com/codegangsta/cli";
+    fetch = {
+      type = "git";
+      url = "https://github.com/codegangsta/cli";
+      rev = "71f57d300dd6a780ac1856c005c4b518cfd498ec";
+      sha256 = "1fxznirkvank5461789dm5aw5z8aqi0jvwligvz44659rfl376p3";
+    };
+  }
+  {
+    goPackagePath = "github.com/elazarl/go-bindata-assetfs";
+    fetch = {
+      type = "git";
+      url = "https://github.com/elazarl/go-bindata-assetfs";
+      rev = "d5cac425555ca5cf00694df246e04f05e6a55150";
+      sha256 = "636ce247ff6f85c14f38a421f46662fa77bdc29762692e1f72b3cd1f9d7a1d17";
+    };
+  }
+  {
+    goPackagePath = "github.com/fatih/structs";
+    fetch = {
+      type = "git";
+      url = "https://github.com/fatih/structs";
+      rev = "a9f7daa9c2729e97450c2da2feda19130a367d8f";
+      sha256 = "0pyrc7svc826g37al3db19n5l4r2m9h1mlhjh3hz2r41xfaqia50";
+    };
+  }
+  {
+    goPackagePath = "github.com/hashicorp/hcl";
+    fetch = {
+      type = "git";
+      url = "https://github.com/hashicorp/hcl";
+      rev = "54864211433d45cb780682431585b3e573b49e4a";
+      sha256 = "07l2dydzjpdgm2d4a72hkmincn455j3nrafg6hs3c23bkvizj950";
+    };
+  }
+  {
+    goPackagePath = "github.com/hashicorp/go-multierror";
+    fetch = {
+      type = "git";
+      url = "https://github.com/hashicorp/go-multierror";
+      rev = "56912fb08d85084aa318edcf2bba735b97cf35c5";
+      sha256 = "0s01cqdab2f7fxkkjjk2wqx05a1shnwlvfn45h2pi3i4gapvcn0r";
+    };
+  }
+]
diff --git a/pkgs/servers/interlock/default.nix b/pkgs/servers/interlock/default.nix
index 5842495e323..82ed92084df 100644
--- a/pkgs/servers/interlock/default.nix
+++ b/pkgs/servers/interlock/default.nix
@@ -17,7 +17,7 @@ buildGoPackage rec {
     sha256 = "06aqx3jy744yx29xyg8ips0dw16186hfqbxdv3hfrmwxmaxhl4lz";
   };
 
-  goDeps = ./deps.json;
+  goDeps = ./deps.nix;
 
   nativeBuildInputs = [ sudo ];
   buildFlags = [ "-tags textsecure" ];
diff --git a/pkgs/servers/interlock/deps.json b/pkgs/servers/interlock/deps.json
deleted file mode 100644
index 10bb3106c5c..00000000000
--- a/pkgs/servers/interlock/deps.json
+++ /dev/null
@@ -1,65 +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/Sirupsen/logrus",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/Sirupsen/logrus",
-            "rev": "be52937128b38f1d99787bb476c789e2af1147f1",
-            "sha256": "1m6vvd4pg4lwglhk54lv5mf6cc8h7bi0d9zb3gar4crz531r66y4"
-        }
-    },
-    {
-        "goPackagePath": "github.com/agl/ed25519",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/agl/ed25519",
-            "rev": "278e1ec8e8a6e017cd07577924d6766039146ced",
-            "sha256": "165d89cc6dl28j4hkn86pny0jz3sa6hamzdvpvwdj4iha3x6lzc9"
-        }
-    },
-    {
-        "goPackagePath": "github.com/golang/protobuf",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/golang/protobuf",
-            "rev": "59b73b37c1e45995477aae817e4a653c89a858db",
-            "sha256": "1dx22jvhvj34ivpr7gw01fncg9yyx35mbpal4mpgnqka7ajmgjsa"
-        }
-    },
-    {
-        "goPackagePath": "github.com/janimo/textsecure",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/janimo/textsecure",
-            "rev": "c38f429e48d6b2776d17b4171f216f132185b0f6",
-            "sha256": "191pwgfgphr0x04dwpvniax4wilpv52l25bw7d3igvnw302y7i94"
-        }
-    },
-    {
-        "goPackagePath": "golang.org/x/net",
-        "fetch": {
-            "type": "git",
-            "url": "https://go.googlesource.com/net",
-            "rev": "62ac18b461605b4be188bbc7300e9aa2bc836cd4",
-            "sha256": "0lwwvbbwbf3yshxkfhn6z20gd45dkvnmw2ms36diiy34krgy402p"
-        }
-    }
-]
diff --git a/pkgs/servers/interlock/deps.nix b/pkgs/servers/interlock/deps.nix
new file mode 100644
index 00000000000..be5c0529573
--- /dev/null
+++ b/pkgs/servers/interlock/deps.nix
@@ -0,0 +1,65 @@
+[
+  {
+    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/Sirupsen/logrus";
+    fetch = {
+      type = "git";
+      url = "https://github.com/Sirupsen/logrus";
+      rev = "be52937128b38f1d99787bb476c789e2af1147f1";
+      sha256 = "1m6vvd4pg4lwglhk54lv5mf6cc8h7bi0d9zb3gar4crz531r66y4";
+    };
+  }
+  {
+    goPackagePath = "github.com/agl/ed25519";
+    fetch = {
+      type = "git";
+      url = "https://github.com/agl/ed25519";
+      rev = "278e1ec8e8a6e017cd07577924d6766039146ced";
+      sha256 = "165d89cc6dl28j4hkn86pny0jz3sa6hamzdvpvwdj4iha3x6lzc9";
+    };
+  }
+  {
+    goPackagePath = "github.com/golang/protobuf";
+    fetch = {
+      type = "git";
+      url = "https://github.com/golang/protobuf";
+      rev = "59b73b37c1e45995477aae817e4a653c89a858db";
+      sha256 = "1dx22jvhvj34ivpr7gw01fncg9yyx35mbpal4mpgnqka7ajmgjsa";
+    };
+  }
+  {
+    goPackagePath = "github.com/janimo/textsecure";
+    fetch = {
+      type = "git";
+      url = "https://github.com/janimo/textsecure";
+      rev = "c38f429e48d6b2776d17b4171f216f132185b0f6";
+      sha256 = "191pwgfgphr0x04dwpvniax4wilpv52l25bw7d3igvnw302y7i94";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/net";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/net";
+      rev = "62ac18b461605b4be188bbc7300e9aa2bc836cd4";
+      sha256 = "0lwwvbbwbf3yshxkfhn6z20gd45dkvnmw2ms36diiy34krgy402p";
+    };
+  }
+]
diff --git a/pkgs/servers/mesos-dns/default.nix b/pkgs/servers/mesos-dns/default.nix
index 86944c036e4..53c87745e67 100644
--- a/pkgs/servers/mesos-dns/default.nix
+++ b/pkgs/servers/mesos-dns/default.nix
@@ -17,5 +17,5 @@ buildGoPackage rec {
     sha256 = "0zs6lcgk43j7jp370qnii7n55cd9pa8gl56r8hy4nagfvlvrcm02";
   };
 
-  goDeps = ./deps.json;
+  goDeps = ./deps.nix;
 }
diff --git a/pkgs/servers/mesos-dns/deps.json b/pkgs/servers/mesos-dns/deps.json
deleted file mode 100644
index 4df002888c4..00000000000
--- a/pkgs/servers/mesos-dns/deps.json
+++ /dev/null
@@ -1,101 +0,0 @@
-[
-    {
-        "goPackagePath": "golang.org/x/net",
-        "fetch": {
-            "type": "git",
-            "url": "https://go.googlesource.com/net",
-            "rev": "62ac18b461605b4be188bbc7300e9aa2bc836cd4",
-            "sha256": "0lwwvbbwbf3yshxkfhn6z20gd45dkvnmw2ms36diiy34krgy402p"
-        }
-    },
-    {
-        "goPackagePath": "github.com/miekg/dns",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/miekg/dns",
-            "rev": "7e024ce8ce18b21b475ac6baf8fa3c42536bf2fa",
-            "sha256": "0hlwb52lnnj3c6papjk9i5w5cjdw6r7c891v4xksnfvk1f9cy9kl"
-        }
-    },
-    {
-        "goPackagePath": "github.com/gogo/protobuf",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/gogo/protobuf",
-            "rev": "7883e1468d48d969e1c3ce4bcde89b6a7dd4adc4",
-            "sha256": "16ja7lqq96q0pnzgnbwnh0j8qzvqgns1nfk8ndxgkg4sg93bg372"
-        }
-    },
-    {
-        "goPackagePath": "github.com/golang/glog",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/golang/glog",
-            "rev": "fca8c8854093a154ff1eb580aae10276ad6b1b5f",
-            "sha256": "1nr2q0vas0a2f395f4shjxqpas18mjsf8yhgndsav7svngpbbpg8"
-        }
-    },
-    {
-        "goPackagePath": "github.com/mesos/mesos-go",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/mesos/mesos-go",
-            "rev": "aaa5b2fecf0e2db463f4f996c89617d6766b2969",
-            "sha256": "1pk1fpxksjln6kqvgm1igw3582jgrn14fwa8bdj5cwbpy6skjdvk"
-        }
-    },
-    {
-        "goPackagePath": "github.com/pmezard/go-difflib",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/pmezard/go-difflib",
-            "rev": "d8ed2627bdf02c080bf22230dbb337003b7aba2d",
-            "sha256": "0w1jp4k4zbnrxh3jvh8fgbjgqpf2hg31pbj8fb32kh26px9ldpbs"
-        }
-    },
-    {
-        "goPackagePath": "github.com/samuel/go-zookeeper",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/samuel/go-zookeeper",
-            "rev": "5bb5cfc093ad18a28148c578f8632cfdb4d802e4",
-            "sha256": "1kpx1ymh7rds0b2km291idnyqi0zck74nd8hnk72crgz7wmpqv6z"
-        }
-    },
-    {
-        "goPackagePath": "github.com/stretchr/objx",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/stretchr/objx",
-            "rev": "cbeaeb16a013161a98496fad62933b1d21786672",
-            "sha256": "1xn7iibjik77h6h0jilfvcjkkzaqz45baf44p3rb2i03hbmkqkp1"
-        }
-    },
-    {
-        "goPackagePath": "github.com/davecgh/go-spew",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/davecgh/go-spew",
-            "rev": "5215b55f46b2b919f50a1df0eaa5886afe4e3b3d",
-            "sha256": "15h9kl73rdbzlfmsdxp13jja5gs7sknvqkpq2qizq3qv3nr1x8dk"
-        }
-    },
-    {
-        "goPackagePath": "github.com/emicklei/go-restful",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/emicklei/go-restful",
-            "rev": "892402ba11a2e2fd5e1295dd633481f27365f14d",
-            "sha256": "0gr9f53vayc6501a1kaw4p3h9pgf376cgxsfnr3f2dvp0xacvw8x"
-        }
-    },
-    {
-        "goPackagePath": "github.com/stretchr/testify",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/stretchr/testify",
-            "rev": "089c7181b8c728499929ff09b62d3fdd8df8adff",
-            "sha256": "03dzxkxbs298pvfsjz4kdadfaf9jkzsdhshqmg4p12wbyaj09s4p"
-        }
-    }
-]
diff --git a/pkgs/servers/mesos-dns/deps.nix b/pkgs/servers/mesos-dns/deps.nix
new file mode 100644
index 00000000000..00f0f245f6b
--- /dev/null
+++ b/pkgs/servers/mesos-dns/deps.nix
@@ -0,0 +1,101 @@
+[
+  {
+    goPackagePath = "golang.org/x/net";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/net";
+      rev = "62ac18b461605b4be188bbc7300e9aa2bc836cd4";
+      sha256 = "0lwwvbbwbf3yshxkfhn6z20gd45dkvnmw2ms36diiy34krgy402p";
+    };
+  }
+  {
+    goPackagePath = "github.com/miekg/dns";
+    fetch = {
+      type = "git";
+      url = "https://github.com/miekg/dns";
+      rev = "7e024ce8ce18b21b475ac6baf8fa3c42536bf2fa";
+      sha256 = "0hlwb52lnnj3c6papjk9i5w5cjdw6r7c891v4xksnfvk1f9cy9kl";
+    };
+  }
+  {
+    goPackagePath = "github.com/gogo/protobuf";
+    fetch = {
+      type = "git";
+      url = "https://github.com/gogo/protobuf";
+      rev = "7883e1468d48d969e1c3ce4bcde89b6a7dd4adc4";
+      sha256 = "16ja7lqq96q0pnzgnbwnh0j8qzvqgns1nfk8ndxgkg4sg93bg372";
+    };
+  }
+  {
+    goPackagePath = "github.com/golang/glog";
+    fetch = {
+      type = "git";
+      url = "https://github.com/golang/glog";
+      rev = "fca8c8854093a154ff1eb580aae10276ad6b1b5f";
+      sha256 = "1nr2q0vas0a2f395f4shjxqpas18mjsf8yhgndsav7svngpbbpg8";
+    };
+  }
+  {
+    goPackagePath = "github.com/mesos/mesos-go";
+    fetch = {
+      type = "git";
+      url = "https://github.com/mesos/mesos-go";
+      rev = "aaa5b2fecf0e2db463f4f996c89617d6766b2969";
+      sha256 = "1pk1fpxksjln6kqvgm1igw3582jgrn14fwa8bdj5cwbpy6skjdvk";
+    };
+  }
+  {
+    goPackagePath = "github.com/pmezard/go-difflib";
+    fetch = {
+      type = "git";
+      url = "https://github.com/pmezard/go-difflib";
+      rev = "d8ed2627bdf02c080bf22230dbb337003b7aba2d";
+      sha256 = "0w1jp4k4zbnrxh3jvh8fgbjgqpf2hg31pbj8fb32kh26px9ldpbs";
+    };
+  }
+  {
+    goPackagePath = "github.com/samuel/go-zookeeper";
+    fetch = {
+      type = "git";
+      url = "https://github.com/samuel/go-zookeeper";
+      rev = "5bb5cfc093ad18a28148c578f8632cfdb4d802e4";
+      sha256 = "1kpx1ymh7rds0b2km291idnyqi0zck74nd8hnk72crgz7wmpqv6z";
+    };
+  }
+  {
+    goPackagePath = "github.com/stretchr/objx";
+    fetch = {
+      type = "git";
+      url = "https://github.com/stretchr/objx";
+      rev = "cbeaeb16a013161a98496fad62933b1d21786672";
+      sha256 = "1xn7iibjik77h6h0jilfvcjkkzaqz45baf44p3rb2i03hbmkqkp1";
+    };
+  }
+  {
+    goPackagePath = "github.com/davecgh/go-spew";
+    fetch = {
+      type = "git";
+      url = "https://github.com/davecgh/go-spew";
+      rev = "5215b55f46b2b919f50a1df0eaa5886afe4e3b3d";
+      sha256 = "15h9kl73rdbzlfmsdxp13jja5gs7sknvqkpq2qizq3qv3nr1x8dk";
+    };
+  }
+  {
+    goPackagePath = "github.com/emicklei/go-restful";
+    fetch = {
+      type = "git";
+      url = "https://github.com/emicklei/go-restful";
+      rev = "892402ba11a2e2fd5e1295dd633481f27365f14d";
+      sha256 = "0gr9f53vayc6501a1kaw4p3h9pgf376cgxsfnr3f2dvp0xacvw8x";
+    };
+  }
+  {
+    goPackagePath = "github.com/stretchr/testify";
+    fetch = {
+      type = "git";
+      url = "https://github.com/stretchr/testify";
+      rev = "089c7181b8c728499929ff09b62d3fdd8df8adff";
+      sha256 = "03dzxkxbs298pvfsjz4kdadfaf9jkzsdhshqmg4p12wbyaj09s4p";
+    };
+  }
+]
diff --git a/pkgs/servers/monitoring/prometheus/cli.nix b/pkgs/servers/monitoring/prometheus/cli.nix
index 21bc242ec46..39bd3f12e95 100644
--- a/pkgs/servers/monitoring/prometheus/cli.nix
+++ b/pkgs/servers/monitoring/prometheus/cli.nix
@@ -14,7 +14,7 @@ buildGoPackage rec {
     sha256 = "1qxqrcbd0d4mrjrgqz882jh7069nn5gz1b84rq7d7z1f1dqhczxn";
   };
 
-  goDeps = ./cli_deps.json;
+  goDeps = ./cli_deps.nix;
 
   meta = with stdenv.lib; {
     description = "Command line tool for querying the Prometheus HTTP API";
diff --git a/pkgs/servers/monitoring/prometheus/cli_deps.json b/pkgs/servers/monitoring/prometheus/cli_deps.json
deleted file mode 100644
index 57384dba31c..00000000000
--- a/pkgs/servers/monitoring/prometheus/cli_deps.json
+++ /dev/null
@@ -1,11 +0,0 @@
-[
-    {
-        "goPackagePath": "github.com/prometheus/client_golang",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/prometheus/client_golang",
-            "rev": "6dbab8106ed3ed77359ac85d9cf08e30290df864",
-            "sha256": "1i3g5h2ncdb8b67742kfpid7d0a1jas1pyicglbglwngfmzhpkna"
-        }
-    }
-]
diff --git a/pkgs/servers/monitoring/prometheus/cli_deps.nix b/pkgs/servers/monitoring/prometheus/cli_deps.nix
new file mode 100644
index 00000000000..192b6917bf0
--- /dev/null
+++ b/pkgs/servers/monitoring/prometheus/cli_deps.nix
@@ -0,0 +1,11 @@
+[
+  {
+    goPackagePath = "github.com/prometheus/client_golang";
+    fetch = {
+      type = "git";
+      url = "https://github.com/prometheus/client_golang";
+      rev = "6dbab8106ed3ed77359ac85d9cf08e30290df864";
+      sha256 = "1i3g5h2ncdb8b67742kfpid7d0a1jas1pyicglbglwngfmzhpkna";
+    };
+  }
+]
diff --git a/pkgs/servers/monitoring/prometheus/collectd-exporter.nix b/pkgs/servers/monitoring/prometheus/collectd-exporter.nix
index dc9b6fd843e..6c703e5fa7b 100644
--- a/pkgs/servers/monitoring/prometheus/collectd-exporter.nix
+++ b/pkgs/servers/monitoring/prometheus/collectd-exporter.nix
@@ -14,7 +14,7 @@ buildGoPackage rec {
     sha256 = "1p0kb7c8g0r0sp5a6xrx8vnwbw14hhwlqzk4n2xx2y8pvnbivajz";
   };
 
-  goDeps = ./collectd-exporter_deps.json;
+  goDeps = ./collectd-exporter_deps.nix;
 
   meta = with stdenv.lib; {
     description = "Relay server for exporting metrics from collectd to Prometheus";
diff --git a/pkgs/servers/monitoring/prometheus/collectd-exporter_deps.json b/pkgs/servers/monitoring/prometheus/collectd-exporter_deps.json
deleted file mode 100644
index 1ff93e411f8..00000000000
--- a/pkgs/servers/monitoring/prometheus/collectd-exporter_deps.json
+++ /dev/null
@@ -1,65 +0,0 @@
-[
-    {
-        "goPackagePath": "github.com/golang/protobuf",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/golang/protobuf",
-            "rev": "59b73b37c1e45995477aae817e4a653c89a858db",
-            "sha256": "1dx22jvhvj34ivpr7gw01fncg9yyx35mbpal4mpgnqka7ajmgjsa"
-        }
-    },
-    {
-        "goPackagePath": "github.com/prometheus/client_model",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/prometheus/client_model",
-            "rev": "fa8ad6fec33561be4280a8f0514318c79d7f6cb6",
-            "sha256": "11a7v1fjzhhwsl128znjcf5v7v6129xjgkdpym2lial4lac1dhm9"
-        }
-    },
-    {
-        "goPackagePath": "github.com/beorn7/perks",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/beorn7/perks",
-            "rev": "b965b613227fddccbfffe13eae360ed3fa822f8d",
-            "sha256": "1p8zsj4r0g61q922khfxpwxhdma2dx4xad1m5qx43mfn28kxngqk"
-        }
-    },
-    {
-        "goPackagePath": "github.com/matttproud/golang_protobuf_extensions",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/matttproud/golang_protobuf_extensions",
-            "rev": "fc2b8d3a73c4867e51861bbdd5ae3c1f0869dd6a",
-            "sha256": "0ajg41h6402big484drvm72wvid1af2sffw0qkzbmpy04lq68ahj"
-        }
-    },
-    {
-        "goPackagePath": "github.com/prometheus/client_golang",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/prometheus/client_golang",
-            "rev": "6dbab8106ed3ed77359ac85d9cf08e30290df864",
-            "sha256": "1i3g5h2ncdb8b67742kfpid7d0a1jas1pyicglbglwngfmzhpkna"
-        }
-    },
-    {
-        "goPackagePath": "github.com/prometheus/procfs",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/prometheus/procfs",
-            "rev": "c91d8eefde16bd047416409eb56353ea84a186e4",
-            "sha256": "0pj3gzw9b58l72w0rkpn03ayssglmqfmyxghhfad6mh0b49dvj3r"
-        }
-    },
-    {
-        "goPackagePath": "bitbucket.org/ww/goautoneg",
-        "fetch": {
-            "type": "hg",
-            "url": "bitbucket.org/ww/goautoneg",
-            "rev": "75cd24fc2f2c2a2088577d12123ddee5f54e0675",
-            "sha256": "19khhn5xhqv1yp7d6k987gh5w5rhrjnp4p0c6fyrd8z6lzz5h9qi"
-        }
-    }
-]
diff --git a/pkgs/servers/monitoring/prometheus/collectd-exporter_deps.nix b/pkgs/servers/monitoring/prometheus/collectd-exporter_deps.nix
new file mode 100644
index 00000000000..92523d69937
--- /dev/null
+++ b/pkgs/servers/monitoring/prometheus/collectd-exporter_deps.nix
@@ -0,0 +1,65 @@
+[
+  {
+    goPackagePath = "github.com/golang/protobuf";
+    fetch = {
+      type = "git";
+      url = "https://github.com/golang/protobuf";
+      rev = "59b73b37c1e45995477aae817e4a653c89a858db";
+      sha256 = "1dx22jvhvj34ivpr7gw01fncg9yyx35mbpal4mpgnqka7ajmgjsa";
+    };
+  }
+  {
+    goPackagePath = "github.com/prometheus/client_model";
+    fetch = {
+      type = "git";
+      url = "https://github.com/prometheus/client_model";
+      rev = "fa8ad6fec33561be4280a8f0514318c79d7f6cb6";
+      sha256 = "11a7v1fjzhhwsl128znjcf5v7v6129xjgkdpym2lial4lac1dhm9";
+    };
+  }
+  {
+    goPackagePath = "github.com/beorn7/perks";
+    fetch = {
+      type = "git";
+      url = "https://github.com/beorn7/perks";
+      rev = "b965b613227fddccbfffe13eae360ed3fa822f8d";
+      sha256 = "1p8zsj4r0g61q922khfxpwxhdma2dx4xad1m5qx43mfn28kxngqk";
+    };
+  }
+  {
+    goPackagePath = "github.com/matttproud/golang_protobuf_extensions";
+    fetch = {
+      type = "git";
+      url = "https://github.com/matttproud/golang_protobuf_extensions";
+      rev = "fc2b8d3a73c4867e51861bbdd5ae3c1f0869dd6a";
+      sha256 = "0ajg41h6402big484drvm72wvid1af2sffw0qkzbmpy04lq68ahj";
+    };
+  }
+  {
+    goPackagePath = "github.com/prometheus/client_golang";
+    fetch = {
+      type = "git";
+      url = "https://github.com/prometheus/client_golang";
+      rev = "6dbab8106ed3ed77359ac85d9cf08e30290df864";
+      sha256 = "1i3g5h2ncdb8b67742kfpid7d0a1jas1pyicglbglwngfmzhpkna";
+    };
+  }
+  {
+    goPackagePath = "github.com/prometheus/procfs";
+    fetch = {
+      type = "git";
+      url = "https://github.com/prometheus/procfs";
+      rev = "c91d8eefde16bd047416409eb56353ea84a186e4";
+      sha256 = "0pj3gzw9b58l72w0rkpn03ayssglmqfmyxghhfad6mh0b49dvj3r";
+    };
+  }
+  {
+    goPackagePath = "bitbucket.org/ww/goautoneg";
+    fetch = {
+      type = "hg";
+      url = "bitbucket.org/ww/goautoneg";
+      rev = "75cd24fc2f2c2a2088577d12123ddee5f54e0675";
+      sha256 = "19khhn5xhqv1yp7d6k987gh5w5rhrjnp4p0c6fyrd8z6lzz5h9qi";
+    };
+  }
+]
diff --git a/pkgs/servers/monitoring/prometheus/haproxy-exporter.nix b/pkgs/servers/monitoring/prometheus/haproxy-exporter.nix
index f2afd2aa273..ec63d5e6352 100644
--- a/pkgs/servers/monitoring/prometheus/haproxy-exporter.nix
+++ b/pkgs/servers/monitoring/prometheus/haproxy-exporter.nix
@@ -14,7 +14,7 @@ buildGoPackage rec {
     sha256 = "1jkijdawmnj5yps0yaj47nyfmcah0krwmqsjvicm3sl0dhwmac4w";
   };
 
-  goDeps = ./haproxy-exporter_deps.json;
+  goDeps = ./haproxy-exporter_deps.nix;
 
   meta = with stdenv.lib; {
     description = "HAProxy Exporter for the Prometheus monitoring system";
diff --git a/pkgs/servers/monitoring/prometheus/haproxy-exporter_deps.json b/pkgs/servers/monitoring/prometheus/haproxy-exporter_deps.json
deleted file mode 100644
index 1ff93e411f8..00000000000
--- a/pkgs/servers/monitoring/prometheus/haproxy-exporter_deps.json
+++ /dev/null
@@ -1,65 +0,0 @@
-[
-    {
-        "goPackagePath": "github.com/golang/protobuf",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/golang/protobuf",
-            "rev": "59b73b37c1e45995477aae817e4a653c89a858db",
-            "sha256": "1dx22jvhvj34ivpr7gw01fncg9yyx35mbpal4mpgnqka7ajmgjsa"
-        }
-    },
-    {
-        "goPackagePath": "github.com/prometheus/client_model",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/prometheus/client_model",
-            "rev": "fa8ad6fec33561be4280a8f0514318c79d7f6cb6",
-            "sha256": "11a7v1fjzhhwsl128znjcf5v7v6129xjgkdpym2lial4lac1dhm9"
-        }
-    },
-    {
-        "goPackagePath": "github.com/beorn7/perks",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/beorn7/perks",
-            "rev": "b965b613227fddccbfffe13eae360ed3fa822f8d",
-            "sha256": "1p8zsj4r0g61q922khfxpwxhdma2dx4xad1m5qx43mfn28kxngqk"
-        }
-    },
-    {
-        "goPackagePath": "github.com/matttproud/golang_protobuf_extensions",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/matttproud/golang_protobuf_extensions",
-            "rev": "fc2b8d3a73c4867e51861bbdd5ae3c1f0869dd6a",
-            "sha256": "0ajg41h6402big484drvm72wvid1af2sffw0qkzbmpy04lq68ahj"
-        }
-    },
-    {
-        "goPackagePath": "github.com/prometheus/client_golang",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/prometheus/client_golang",
-            "rev": "6dbab8106ed3ed77359ac85d9cf08e30290df864",
-            "sha256": "1i3g5h2ncdb8b67742kfpid7d0a1jas1pyicglbglwngfmzhpkna"
-        }
-    },
-    {
-        "goPackagePath": "github.com/prometheus/procfs",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/prometheus/procfs",
-            "rev": "c91d8eefde16bd047416409eb56353ea84a186e4",
-            "sha256": "0pj3gzw9b58l72w0rkpn03ayssglmqfmyxghhfad6mh0b49dvj3r"
-        }
-    },
-    {
-        "goPackagePath": "bitbucket.org/ww/goautoneg",
-        "fetch": {
-            "type": "hg",
-            "url": "bitbucket.org/ww/goautoneg",
-            "rev": "75cd24fc2f2c2a2088577d12123ddee5f54e0675",
-            "sha256": "19khhn5xhqv1yp7d6k987gh5w5rhrjnp4p0c6fyrd8z6lzz5h9qi"
-        }
-    }
-]
diff --git a/pkgs/servers/monitoring/prometheus/haproxy-exporter_deps.nix b/pkgs/servers/monitoring/prometheus/haproxy-exporter_deps.nix
new file mode 100644
index 00000000000..92523d69937
--- /dev/null
+++ b/pkgs/servers/monitoring/prometheus/haproxy-exporter_deps.nix
@@ -0,0 +1,65 @@
+[
+  {
+    goPackagePath = "github.com/golang/protobuf";
+    fetch = {
+      type = "git";
+      url = "https://github.com/golang/protobuf";
+      rev = "59b73b37c1e45995477aae817e4a653c89a858db";
+      sha256 = "1dx22jvhvj34ivpr7gw01fncg9yyx35mbpal4mpgnqka7ajmgjsa";
+    };
+  }
+  {
+    goPackagePath = "github.com/prometheus/client_model";
+    fetch = {
+      type = "git";
+      url = "https://github.com/prometheus/client_model";
+      rev = "fa8ad6fec33561be4280a8f0514318c79d7f6cb6";
+      sha256 = "11a7v1fjzhhwsl128znjcf5v7v6129xjgkdpym2lial4lac1dhm9";
+    };
+  }
+  {
+    goPackagePath = "github.com/beorn7/perks";
+    fetch = {
+      type = "git";
+      url = "https://github.com/beorn7/perks";
+      rev = "b965b613227fddccbfffe13eae360ed3fa822f8d";
+      sha256 = "1p8zsj4r0g61q922khfxpwxhdma2dx4xad1m5qx43mfn28kxngqk";
+    };
+  }
+  {
+    goPackagePath = "github.com/matttproud/golang_protobuf_extensions";
+    fetch = {
+      type = "git";
+      url = "https://github.com/matttproud/golang_protobuf_extensions";
+      rev = "fc2b8d3a73c4867e51861bbdd5ae3c1f0869dd6a";
+      sha256 = "0ajg41h6402big484drvm72wvid1af2sffw0qkzbmpy04lq68ahj";
+    };
+  }
+  {
+    goPackagePath = "github.com/prometheus/client_golang";
+    fetch = {
+      type = "git";
+      url = "https://github.com/prometheus/client_golang";
+      rev = "6dbab8106ed3ed77359ac85d9cf08e30290df864";
+      sha256 = "1i3g5h2ncdb8b67742kfpid7d0a1jas1pyicglbglwngfmzhpkna";
+    };
+  }
+  {
+    goPackagePath = "github.com/prometheus/procfs";
+    fetch = {
+      type = "git";
+      url = "https://github.com/prometheus/procfs";
+      rev = "c91d8eefde16bd047416409eb56353ea84a186e4";
+      sha256 = "0pj3gzw9b58l72w0rkpn03ayssglmqfmyxghhfad6mh0b49dvj3r";
+    };
+  }
+  {
+    goPackagePath = "bitbucket.org/ww/goautoneg";
+    fetch = {
+      type = "hg";
+      url = "bitbucket.org/ww/goautoneg";
+      rev = "75cd24fc2f2c2a2088577d12123ddee5f54e0675";
+      sha256 = "19khhn5xhqv1yp7d6k987gh5w5rhrjnp4p0c6fyrd8z6lzz5h9qi";
+    };
+  }
+]
diff --git a/pkgs/servers/monitoring/prometheus/mesos-exporter.nix b/pkgs/servers/monitoring/prometheus/mesos-exporter.nix
index ddd7a17364b..42ff2496df1 100644
--- a/pkgs/servers/monitoring/prometheus/mesos-exporter.nix
+++ b/pkgs/servers/monitoring/prometheus/mesos-exporter.nix
@@ -14,7 +14,7 @@ buildGoPackage rec {
     sha256 = "059az73j717gd960g4jigrxnvqrjh9jw1c324xpwaafa0bf10llm";
   };
 
-  goDeps = ./mesos-exporter_deps.json;
+  goDeps = ./mesos-exporter_deps.nix;
 
   meta = with stdenv.lib; {
     description = "Export Mesos metrics to Prometheus";
diff --git a/pkgs/servers/monitoring/prometheus/mesos-exporter_deps.json b/pkgs/servers/monitoring/prometheus/mesos-exporter_deps.json
deleted file mode 100644
index a0b80e0ff14..00000000000
--- a/pkgs/servers/monitoring/prometheus/mesos-exporter_deps.json
+++ /dev/null
@@ -1,83 +0,0 @@
-[
-    {
-        "goPackagePath": "github.com/golang/protobuf",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/golang/protobuf",
-            "rev": "59b73b37c1e45995477aae817e4a653c89a858db",
-            "sha256": "1dx22jvhvj34ivpr7gw01fncg9yyx35mbpal4mpgnqka7ajmgjsa"
-        }
-    },
-    {
-        "goPackagePath": "github.com/prometheus/client_model",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/prometheus/client_model",
-            "rev": "fa8ad6fec33561be4280a8f0514318c79d7f6cb6",
-            "sha256": "11a7v1fjzhhwsl128znjcf5v7v6129xjgkdpym2lial4lac1dhm9"
-        }
-    },
-    {
-        "goPackagePath": "github.com/beorn7/perks",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/beorn7/perks",
-            "rev": "b965b613227fddccbfffe13eae360ed3fa822f8d",
-            "sha256": "1p8zsj4r0g61q922khfxpwxhdma2dx4xad1m5qx43mfn28kxngqk"
-        }
-    },
-    {
-        "goPackagePath": "github.com/matttproud/golang_protobuf_extensions",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/matttproud/golang_protobuf_extensions",
-            "rev": "fc2b8d3a73c4867e51861bbdd5ae3c1f0869dd6a",
-            "sha256": "0ajg41h6402big484drvm72wvid1af2sffw0qkzbmpy04lq68ahj"
-        }
-    },
-    {
-        "goPackagePath": "github.com/prometheus/client_golang",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/prometheus/client_golang",
-            "rev": "6dbab8106ed3ed77359ac85d9cf08e30290df864",
-            "sha256": "1i3g5h2ncdb8b67742kfpid7d0a1jas1pyicglbglwngfmzhpkna"
-        }
-    },
-    {
-        "goPackagePath": "github.com/prometheus/procfs",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/prometheus/procfs",
-            "rev": "c91d8eefde16bd047416409eb56353ea84a186e4",
-            "sha256": "0pj3gzw9b58l72w0rkpn03ayssglmqfmyxghhfad6mh0b49dvj3r"
-        }
-    },
-    {
-        "goPackagePath": "github.com/golang/glog",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/golang/glog",
-            "rev": "fca8c8854093a154ff1eb580aae10276ad6b1b5f",
-            "sha256": "1nr2q0vas0a2f395f4shjxqpas18mjsf8yhgndsav7svngpbbpg8"
-        }
-    },
-    {
-        "goPackagePath": "bitbucket.org/ww/goautoneg",
-        "fetch": {
-            "type": "hg",
-            "url": "bitbucket.org/ww/goautoneg",
-            "rev": "75cd24fc2f2c2a2088577d12123ddee5f54e0675",
-            "sha256": "19khhn5xhqv1yp7d6k987gh5w5rhrjnp4p0c6fyrd8z6lzz5h9qi"
-        }
-    },
-    {
-        "goPackagePath": "github.com/antonlindstrom/mesos_stats",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/antonlindstrom/mesos_stats",
-            "rev": "0c6ea494c19bedc67ebb85ce3d187ec21050e920",
-            "sha256": "18ggyjf4nyn77gkn16wg9krp4dsphgzdgcr3mdflv6mvbr482ar4"
-        }
-    }
-]
diff --git a/pkgs/servers/monitoring/prometheus/mesos-exporter_deps.nix b/pkgs/servers/monitoring/prometheus/mesos-exporter_deps.nix
new file mode 100644
index 00000000000..e8fdcc95da2
--- /dev/null
+++ b/pkgs/servers/monitoring/prometheus/mesos-exporter_deps.nix
@@ -0,0 +1,83 @@
+[
+  {
+    goPackagePath = "github.com/golang/protobuf";
+    fetch = {
+      type = "git";
+      url = "https://github.com/golang/protobuf";
+      rev = "59b73b37c1e45995477aae817e4a653c89a858db";
+      sha256 = "1dx22jvhvj34ivpr7gw01fncg9yyx35mbpal4mpgnqka7ajmgjsa";
+    };
+  }
+  {
+    goPackagePath = "github.com/prometheus/client_model";
+    fetch = {
+      type = "git";
+      url = "https://github.com/prometheus/client_model";
+      rev = "fa8ad6fec33561be4280a8f0514318c79d7f6cb6";
+      sha256 = "11a7v1fjzhhwsl128znjcf5v7v6129xjgkdpym2lial4lac1dhm9";
+    };
+  }
+  {
+    goPackagePath = "github.com/beorn7/perks";
+    fetch = {
+      type = "git";
+      url = "https://github.com/beorn7/perks";
+      rev = "b965b613227fddccbfffe13eae360ed3fa822f8d";
+      sha256 = "1p8zsj4r0g61q922khfxpwxhdma2dx4xad1m5qx43mfn28kxngqk";
+    };
+  }
+  {
+    goPackagePath = "github.com/matttproud/golang_protobuf_extensions";
+    fetch = {
+      type = "git";
+      url = "https://github.com/matttproud/golang_protobuf_extensions";
+      rev = "fc2b8d3a73c4867e51861bbdd5ae3c1f0869dd6a";
+      sha256 = "0ajg41h6402big484drvm72wvid1af2sffw0qkzbmpy04lq68ahj";
+    };
+  }
+  {
+    goPackagePath = "github.com/prometheus/client_golang";
+    fetch = {
+      type = "git";
+      url = "https://github.com/prometheus/client_golang";
+      rev = "6dbab8106ed3ed77359ac85d9cf08e30290df864";
+      sha256 = "1i3g5h2ncdb8b67742kfpid7d0a1jas1pyicglbglwngfmzhpkna";
+    };
+  }
+  {
+    goPackagePath = "github.com/prometheus/procfs";
+    fetch = {
+      type = "git";
+      url = "https://github.com/prometheus/procfs";
+      rev = "c91d8eefde16bd047416409eb56353ea84a186e4";
+      sha256 = "0pj3gzw9b58l72w0rkpn03ayssglmqfmyxghhfad6mh0b49dvj3r";
+    };
+  }
+  {
+    goPackagePath = "github.com/golang/glog";
+    fetch = {
+      type = "git";
+      url = "https://github.com/golang/glog";
+      rev = "fca8c8854093a154ff1eb580aae10276ad6b1b5f";
+      sha256 = "1nr2q0vas0a2f395f4shjxqpas18mjsf8yhgndsav7svngpbbpg8";
+    };
+  }
+  {
+    goPackagePath = "bitbucket.org/ww/goautoneg";
+    fetch = {
+      type = "hg";
+      url = "bitbucket.org/ww/goautoneg";
+      rev = "75cd24fc2f2c2a2088577d12123ddee5f54e0675";
+      sha256 = "19khhn5xhqv1yp7d6k987gh5w5rhrjnp4p0c6fyrd8z6lzz5h9qi";
+    };
+  }
+  {
+    goPackagePath = "github.com/antonlindstrom/mesos_stats";
+    fetch = {
+      type = "git";
+      url = "https://github.com/antonlindstrom/mesos_stats";
+      rev = "0c6ea494c19bedc67ebb85ce3d187ec21050e920";
+      sha256 = "18ggyjf4nyn77gkn16wg9krp4dsphgzdgcr3mdflv6mvbr482ar4";
+    };
+  }
+]
diff --git a/pkgs/servers/monitoring/prometheus/mysqld-exporter.nix b/pkgs/servers/monitoring/prometheus/mysqld-exporter.nix
index 64a9e6cc28e..5a274435e3d 100644
--- a/pkgs/servers/monitoring/prometheus/mysqld-exporter.nix
+++ b/pkgs/servers/monitoring/prometheus/mysqld-exporter.nix
@@ -14,7 +14,7 @@ buildGoPackage rec {
     sha256 = "0pwf2vii9n9zgad1lxgw28c2743yc9c3qc03516fiwvlqc1cpddr";
   };
 
-  goDeps = ./mysqld-exporter_deps.json;
+  goDeps = ./mysqld-exporter_deps.nix;
 
   meta = with stdenv.lib; {
     description = "Prometheus exporter for MySQL server metrics";
diff --git a/pkgs/servers/monitoring/prometheus/mysqld-exporter_deps.json b/pkgs/servers/monitoring/prometheus/mysqld-exporter_deps.json
deleted file mode 100644
index 77d4c301bf8..00000000000
--- a/pkgs/servers/monitoring/prometheus/mysqld-exporter_deps.json
+++ /dev/null
@@ -1,74 +0,0 @@
-[
-    {
-        "goPackagePath": "github.com/golang/protobuf",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/golang/protobuf",
-            "rev": "59b73b37c1e45995477aae817e4a653c89a858db",
-            "sha256": "1dx22jvhvj34ivpr7gw01fncg9yyx35mbpal4mpgnqka7ajmgjsa"
-        }
-    },
-    {
-        "goPackagePath": "github.com/prometheus/client_model",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/prometheus/client_model",
-            "rev": "fa8ad6fec33561be4280a8f0514318c79d7f6cb6",
-            "sha256": "11a7v1fjzhhwsl128znjcf5v7v6129xjgkdpym2lial4lac1dhm9"
-        }
-    },
-    {
-        "goPackagePath": "github.com/beorn7/perks",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/beorn7/perks",
-            "rev": "b965b613227fddccbfffe13eae360ed3fa822f8d",
-            "sha256": "1p8zsj4r0g61q922khfxpwxhdma2dx4xad1m5qx43mfn28kxngqk"
-        }
-    },
-    {
-        "goPackagePath": "github.com/matttproud/golang_protobuf_extensions",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/matttproud/golang_protobuf_extensions",
-            "rev": "fc2b8d3a73c4867e51861bbdd5ae3c1f0869dd6a",
-            "sha256": "0ajg41h6402big484drvm72wvid1af2sffw0qkzbmpy04lq68ahj"
-        }
-    },
-    {
-        "goPackagePath": "github.com/prometheus/client_golang",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/prometheus/client_golang",
-            "rev": "6dbab8106ed3ed77359ac85d9cf08e30290df864",
-            "sha256": "1i3g5h2ncdb8b67742kfpid7d0a1jas1pyicglbglwngfmzhpkna"
-        }
-    },
-    {
-        "goPackagePath": "github.com/prometheus/procfs",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/prometheus/procfs",
-            "rev": "c91d8eefde16bd047416409eb56353ea84a186e4",
-            "sha256": "0pj3gzw9b58l72w0rkpn03ayssglmqfmyxghhfad6mh0b49dvj3r"
-        }
-    },
-    {
-        "goPackagePath": "bitbucket.org/ww/goautoneg",
-        "fetch": {
-            "type": "hg",
-            "url": "bitbucket.org/ww/goautoneg",
-            "rev": "75cd24fc2f2c2a2088577d12123ddee5f54e0675",
-            "sha256": "19khhn5xhqv1yp7d6k987gh5w5rhrjnp4p0c6fyrd8z6lzz5h9qi"
-        }
-    },
-    {
-        "goPackagePath": "github.com/go-sql-driver/mysql",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/go-sql-driver/mysql",
-            "rev": "fb7299726d2e68745a8805b14f2ff44b5c2cfa84",
-            "sha256": "185af0x475hq2wmm2zdvxjyslkplf8zzqijdxa937zqxq63qiw4w"
-        }
-    }
-]
diff --git a/pkgs/servers/monitoring/prometheus/mysqld-exporter_deps.nix b/pkgs/servers/monitoring/prometheus/mysqld-exporter_deps.nix
new file mode 100644
index 00000000000..4910832a62c
--- /dev/null
+++ b/pkgs/servers/monitoring/prometheus/mysqld-exporter_deps.nix
@@ -0,0 +1,74 @@
+[
+  {
+    goPackagePath = "github.com/golang/protobuf";
+    fetch = {
+      type = "git";
+      url = "https://github.com/golang/protobuf";
+      rev = "59b73b37c1e45995477aae817e4a653c89a858db";
+      sha256 = "1dx22jvhvj34ivpr7gw01fncg9yyx35mbpal4mpgnqka7ajmgjsa";
+    };
+  }
+  {
+    goPackagePath = "github.com/prometheus/client_model";
+    fetch = {
+      type = "git";
+      url = "https://github.com/prometheus/client_model";
+      rev = "fa8ad6fec33561be4280a8f0514318c79d7f6cb6";
+      sha256 = "11a7v1fjzhhwsl128znjcf5v7v6129xjgkdpym2lial4lac1dhm9";
+    };
+  }
+  {
+    goPackagePath = "github.com/beorn7/perks";
+    fetch = {
+      type = "git";
+      url = "https://github.com/beorn7/perks";
+      rev = "b965b613227fddccbfffe13eae360ed3fa822f8d";
+      sha256 = "1p8zsj4r0g61q922khfxpwxhdma2dx4xad1m5qx43mfn28kxngqk";
+    };
+  }
+  {
+    goPackagePath = "github.com/matttproud/golang_protobuf_extensions";
+    fetch = {
+      type = "git";
+      url = "https://github.com/matttproud/golang_protobuf_extensions";
+      rev = "fc2b8d3a73c4867e51861bbdd5ae3c1f0869dd6a";
+      sha256 = "0ajg41h6402big484drvm72wvid1af2sffw0qkzbmpy04lq68ahj";
+    };
+  }
+  {
+    goPackagePath = "github.com/prometheus/client_golang";
+    fetch = {
+      type = "git";
+      url = "https://github.com/prometheus/client_golang";
+      rev = "6dbab8106ed3ed77359ac85d9cf08e30290df864";
+      sha256 = "1i3g5h2ncdb8b67742kfpid7d0a1jas1pyicglbglwngfmzhpkna";
+    };
+  }
+  {
+    goPackagePath = "github.com/prometheus/procfs";
+    fetch = {
+      type = "git";
+      url = "https://github.com/prometheus/procfs";
+      rev = "c91d8eefde16bd047416409eb56353ea84a186e4";
+      sha256 = "0pj3gzw9b58l72w0rkpn03ayssglmqfmyxghhfad6mh0b49dvj3r";
+    };
+  }
+  {
+    goPackagePath = "bitbucket.org/ww/goautoneg";
+    fetch = {
+      type = "hg";
+      url = "bitbucket.org/ww/goautoneg";
+      rev = "75cd24fc2f2c2a2088577d12123ddee5f54e0675";
+      sha256 = "19khhn5xhqv1yp7d6k987gh5w5rhrjnp4p0c6fyrd8z6lzz5h9qi";
+    };
+  }
+  {
+    goPackagePath = "github.com/go-sql-driver/mysql";
+    fetch = {
+      type = "git";
+      url = "https://github.com/go-sql-driver/mysql";
+      rev = "fb7299726d2e68745a8805b14f2ff44b5c2cfa84";
+      sha256 = "185af0x475hq2wmm2zdvxjyslkplf8zzqijdxa937zqxq63qiw4w";
+    };
+  }
+]
diff --git a/pkgs/servers/monitoring/prometheus/nginx-exporter.nix b/pkgs/servers/monitoring/prometheus/nginx-exporter.nix
index 9adfdda1d07..280f7e0abd0 100644
--- a/pkgs/servers/monitoring/prometheus/nginx-exporter.nix
+++ b/pkgs/servers/monitoring/prometheus/nginx-exporter.nix
@@ -13,7 +13,7 @@ buildGoPackage rec {
     sha256 = "0p9j0bbr2lr734980x2p8d67lcify21glwc5k3i3j4ri4vadpxvc";
   };
 
-  goDeps = ./nginx-exporter_deps.json;
+  goDeps = ./nginx-exporter_deps.nix;
 
   meta = with stdenv.lib; {
     description = "Metrics relay from nginx stats to Prometheus";
diff --git a/pkgs/servers/monitoring/prometheus/nginx-exporter_deps.json b/pkgs/servers/monitoring/prometheus/nginx-exporter_deps.json
deleted file mode 100644
index 2a86511ef99..00000000000
--- a/pkgs/servers/monitoring/prometheus/nginx-exporter_deps.json
+++ /dev/null
@@ -1,83 +0,0 @@
-[
-    {
-        "goPackagePath": "github.com/Sirupsen/logrus",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/Sirupsen/logrus",
-            "rev": "be52937128b38f1d99787bb476c789e2af1147f1",
-            "sha256": "1m6vvd4pg4lwglhk54lv5mf6cc8h7bi0d9zb3gar4crz531r66y4"
-        }
-    },
-    {
-        "goPackagePath": "github.com/golang/protobuf",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/golang/protobuf",
-            "rev": "59b73b37c1e45995477aae817e4a653c89a858db",
-            "sha256": "1dx22jvhvj34ivpr7gw01fncg9yyx35mbpal4mpgnqka7ajmgjsa"
-        }
-    },
-    {
-        "goPackagePath": "github.com/prometheus/client_model",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/prometheus/client_model",
-            "rev": "fa8ad6fec33561be4280a8f0514318c79d7f6cb6",
-            "sha256": "11a7v1fjzhhwsl128znjcf5v7v6129xjgkdpym2lial4lac1dhm9"
-        }
-    },
-    {
-        "goPackagePath": "github.com/beorn7/perks",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/beorn7/perks",
-            "rev": "b965b613227fddccbfffe13eae360ed3fa822f8d",
-            "sha256": "1p8zsj4r0g61q922khfxpwxhdma2dx4xad1m5qx43mfn28kxngqk"
-        }
-    },
-    {
-        "goPackagePath": "github.com/matttproud/golang_protobuf_extensions",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/matttproud/golang_protobuf_extensions",
-            "rev": "fc2b8d3a73c4867e51861bbdd5ae3c1f0869dd6a",
-            "sha256": "0ajg41h6402big484drvm72wvid1af2sffw0qkzbmpy04lq68ahj"
-        }
-    },
-    {
-        "goPackagePath": "github.com/prometheus/client_golang",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/prometheus/client_golang",
-            "rev": "6dbab8106ed3ed77359ac85d9cf08e30290df864",
-            "sha256": "1i3g5h2ncdb8b67742kfpid7d0a1jas1pyicglbglwngfmzhpkna"
-        }
-    },
-    {
-        "goPackagePath": "github.com/prometheus/procfs",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/prometheus/procfs",
-            "rev": "c91d8eefde16bd047416409eb56353ea84a186e4",
-            "sha256": "0pj3gzw9b58l72w0rkpn03ayssglmqfmyxghhfad6mh0b49dvj3r"
-        }
-    },
-    {
-        "goPackagePath": "bitbucket.org/ww/goautoneg",
-        "fetch": {
-            "type": "hg",
-            "url": "bitbucket.org/ww/goautoneg",
-            "rev": "75cd24fc2f2c2a2088577d12123ddee5f54e0675",
-            "sha256": "19khhn5xhqv1yp7d6k987gh5w5rhrjnp4p0c6fyrd8z6lzz5h9qi"
-        }
-    },
-    {
-        "goPackagePath": "github.com/prometheus/log",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/prometheus/log",
-            "rev": "439e5db48fbb50ebbaf2c816030473a62f505f55",
-            "sha256": "1fl23gsw2hn3c1y91qckr661sybqcw2gqnd1gllxn3hp6p2w6hxv"
-        }
-    }
-]
diff --git a/pkgs/servers/monitoring/prometheus/nginx-exporter_deps.nix b/pkgs/servers/monitoring/prometheus/nginx-exporter_deps.nix
new file mode 100644
index 00000000000..26b2bcaa8d2
--- /dev/null
+++ b/pkgs/servers/monitoring/prometheus/nginx-exporter_deps.nix
@@ -0,0 +1,83 @@
+[
+  {
+    goPackagePath = "github.com/Sirupsen/logrus";
+    fetch = {
+      type = "git";
+      url = "https://github.com/Sirupsen/logrus";
+      rev = "be52937128b38f1d99787bb476c789e2af1147f1";
+      sha256 = "1m6vvd4pg4lwglhk54lv5mf6cc8h7bi0d9zb3gar4crz531r66y4";
+    };
+  }
+  {
+    goPackagePath = "github.com/golang/protobuf";
+    fetch = {
+      type = "git";
+      url = "https://github.com/golang/protobuf";
+      rev = "59b73b37c1e45995477aae817e4a653c89a858db";
+      sha256 = "1dx22jvhvj34ivpr7gw01fncg9yyx35mbpal4mpgnqka7ajmgjsa";
+    };
+  }
+  {
+    goPackagePath = "github.com/prometheus/client_model";
+    fetch = {
+      type = "git";
+      url = "https://github.com/prometheus/client_model";
+      rev = "fa8ad6fec33561be4280a8f0514318c79d7f6cb6";
+      sha256 = "11a7v1fjzhhwsl128znjcf5v7v6129xjgkdpym2lial4lac1dhm9";
+    };
+  }
+  {
+    goPackagePath = "github.com/beorn7/perks";
+    fetch = {
+      type = "git";
+      url = "https://github.com/beorn7/perks";
+      rev = "b965b613227fddccbfffe13eae360ed3fa822f8d";
+      sha256 = "1p8zsj4r0g61q922khfxpwxhdma2dx4xad1m5qx43mfn28kxngqk";
+    };
+  }
+  {
+    goPackagePath = "github.com/matttproud/golang_protobuf_extensions";
+    fetch = {
+      type = "git";
+      url = "https://github.com/matttproud/golang_protobuf_extensions";
+      rev = "fc2b8d3a73c4867e51861bbdd5ae3c1f0869dd6a";
+      sha256 = "0ajg41h6402big484drvm72wvid1af2sffw0qkzbmpy04lq68ahj";
+    };
+  }
+  {
+    goPackagePath = "github.com/prometheus/client_golang";
+    fetch = {
+      type = "git";
+      url = "https://github.com/prometheus/client_golang";
+      rev = "6dbab8106ed3ed77359ac85d9cf08e30290df864";
+      sha256 = "1i3g5h2ncdb8b67742kfpid7d0a1jas1pyicglbglwngfmzhpkna";
+    };
+  }
+  {
+    goPackagePath = "github.com/prometheus/procfs";
+    fetch = {
+      type = "git";
+      url = "https://github.com/prometheus/procfs";
+      rev = "c91d8eefde16bd047416409eb56353ea84a186e4";
+      sha256 = "0pj3gzw9b58l72w0rkpn03ayssglmqfmyxghhfad6mh0b49dvj3r";
+    };
+  }
+  {
+    goPackagePath = "bitbucket.org/ww/goautoneg";
+    fetch = {
+      type = "hg";
+      url = "bitbucket.org/ww/goautoneg";
+      rev = "75cd24fc2f2c2a2088577d12123ddee5f54e0675";
+      sha256 = "19khhn5xhqv1yp7d6k987gh5w5rhrjnp4p0c6fyrd8z6lzz5h9qi";
+    };
+  }
+  {
+    goPackagePath = "github.com/prometheus/log";
+    fetch = {
+      type = "git";
+      url = "https://github.com/prometheus/log";
+      rev = "439e5db48fbb50ebbaf2c816030473a62f505f55";
+      sha256 = "1fl23gsw2hn3c1y91qckr661sybqcw2gqnd1gllxn3hp6p2w6hxv";
+    };
+  }
+]
diff --git a/pkgs/servers/monitoring/prometheus/prom2json.nix b/pkgs/servers/monitoring/prometheus/prom2json.nix
index 19148ec1cb4..788fe863396 100644
--- a/pkgs/servers/monitoring/prometheus/prom2json.nix
+++ b/pkgs/servers/monitoring/prometheus/prom2json.nix
@@ -14,7 +14,7 @@ buildGoPackage rec {
     sha256 = "0wwh3mz7z81fwh8n78sshvj46akcgjhxapjgfic5afc4nv926zdl";
   };
 
-  goDeps = ./prom2json_deps.json;
+  goDeps = ./prom2json_deps.nix;
 
   meta = with stdenv.lib; {
     description = "Tool to scrape a Prometheus client and dump the result as JSON";
diff --git a/pkgs/servers/monitoring/prometheus/prom2json_deps.json b/pkgs/servers/monitoring/prometheus/prom2json_deps.json
deleted file mode 100644
index b716d41b2c1..00000000000
--- a/pkgs/servers/monitoring/prometheus/prom2json_deps.json
+++ /dev/null
@@ -1,38 +0,0 @@
-[
-    {
-        "goPackagePath": "github.com/golang/protobuf",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/golang/protobuf",
-            "rev": "59b73b37c1e45995477aae817e4a653c89a858db",
-            "sha256": "1dx22jvhvj34ivpr7gw01fncg9yyx35mbpal4mpgnqka7ajmgjsa"
-        }
-    },
-    {
-        "goPackagePath": "github.com/prometheus/client_model",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/prometheus/client_model",
-            "rev": "fa8ad6fec33561be4280a8f0514318c79d7f6cb6",
-            "sha256": "11a7v1fjzhhwsl128znjcf5v7v6129xjgkdpym2lial4lac1dhm9"
-        }
-    },
-    {
-        "goPackagePath": "github.com/matttproud/golang_protobuf_extensions",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/matttproud/golang_protobuf_extensions",
-            "rev": "fc2b8d3a73c4867e51861bbdd5ae3c1f0869dd6a",
-            "sha256": "0ajg41h6402big484drvm72wvid1af2sffw0qkzbmpy04lq68ahj"
-        }
-    },
-    {
-        "goPackagePath": "github.com/prometheus/client_golang",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/prometheus/client_golang",
-            "rev": "6dbab8106ed3ed77359ac85d9cf08e30290df864",
-            "sha256": "1i3g5h2ncdb8b67742kfpid7d0a1jas1pyicglbglwngfmzhpkna"
-        }
-    }
-]
diff --git a/pkgs/servers/monitoring/prometheus/prom2json_deps.nix b/pkgs/servers/monitoring/prometheus/prom2json_deps.nix
new file mode 100644
index 00000000000..20cabe3d385
--- /dev/null
+++ b/pkgs/servers/monitoring/prometheus/prom2json_deps.nix
@@ -0,0 +1,38 @@
+[
+  {
+    goPackagePath = "github.com/golang/protobuf";
+    fetch = {
+      type = "git";
+      url = "https://github.com/golang/protobuf";
+      rev = "59b73b37c1e45995477aae817e4a653c89a858db";
+      sha256 = "1dx22jvhvj34ivpr7gw01fncg9yyx35mbpal4mpgnqka7ajmgjsa";
+    };
+  }
+  {
+    goPackagePath = "github.com/prometheus/client_model";
+    fetch = {
+      type = "git";
+      url = "https://github.com/prometheus/client_model";
+      rev = "fa8ad6fec33561be4280a8f0514318c79d7f6cb6";
+      sha256 = "11a7v1fjzhhwsl128znjcf5v7v6129xjgkdpym2lial4lac1dhm9";
+    };
+  }
+  {
+    goPackagePath = "github.com/matttproud/golang_protobuf_extensions";
+    fetch = {
+      type = "git";
+      url = "https://github.com/matttproud/golang_protobuf_extensions";
+      rev = "fc2b8d3a73c4867e51861bbdd5ae3c1f0869dd6a";
+      sha256 = "0ajg41h6402big484drvm72wvid1af2sffw0qkzbmpy04lq68ahj";
+    };
+  }
+  {
+    goPackagePath = "github.com/prometheus/client_golang";
+    fetch = {
+      type = "git";
+      url = "https://github.com/prometheus/client_golang";
+      rev = "6dbab8106ed3ed77359ac85d9cf08e30290df864";
+      sha256 = "1i3g5h2ncdb8b67742kfpid7d0a1jas1pyicglbglwngfmzhpkna";
+    };
+  }
+]
diff --git a/pkgs/servers/monitoring/prometheus/pushgateway.nix b/pkgs/servers/monitoring/prometheus/pushgateway.nix
index 65dda2403fc..6a742796f30 100644
--- a/pkgs/servers/monitoring/prometheus/pushgateway.nix
+++ b/pkgs/servers/monitoring/prometheus/pushgateway.nix
@@ -14,7 +14,7 @@ buildGoPackage rec {
     sha256 = "1bj0s4s3gbcnlp2z2yx7jf3jx14cdg2v4pr0yciai0g6jwwg63hd";
   };
 
-  goDeps = ./pushgateway_deps.json;
+  goDeps = ./pushgateway_deps.nix;
 
   buildInputs = [ go-bindata ];
 
diff --git a/pkgs/servers/monitoring/prometheus/pushgateway_deps.json b/pkgs/servers/monitoring/prometheus/pushgateway_deps.json
deleted file mode 100644
index c5ece41a52e..00000000000
--- a/pkgs/servers/monitoring/prometheus/pushgateway_deps.json
+++ /dev/null
@@ -1,74 +0,0 @@
-[
-    {
-        "goPackagePath": "github.com/golang/protobuf",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/golang/protobuf",
-            "rev": "59b73b37c1e45995477aae817e4a653c89a858db",
-            "sha256": "1dx22jvhvj34ivpr7gw01fncg9yyx35mbpal4mpgnqka7ajmgjsa"
-        }
-    },
-    {
-        "goPackagePath": "github.com/prometheus/client_model",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/prometheus/client_model",
-            "rev": "fa8ad6fec33561be4280a8f0514318c79d7f6cb6",
-            "sha256": "11a7v1fjzhhwsl128znjcf5v7v6129xjgkdpym2lial4lac1dhm9"
-        }
-    },
-    {
-        "goPackagePath": "github.com/beorn7/perks",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/beorn7/perks",
-            "rev": "b965b613227fddccbfffe13eae360ed3fa822f8d",
-            "sha256": "1p8zsj4r0g61q922khfxpwxhdma2dx4xad1m5qx43mfn28kxngqk"
-        }
-    },
-    {
-        "goPackagePath": "github.com/matttproud/golang_protobuf_extensions",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/matttproud/golang_protobuf_extensions",
-            "rev": "fc2b8d3a73c4867e51861bbdd5ae3c1f0869dd6a",
-            "sha256": "0ajg41h6402big484drvm72wvid1af2sffw0qkzbmpy04lq68ahj"
-        }
-    },
-    {
-        "goPackagePath": "github.com/prometheus/client_golang",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/prometheus/client_golang",
-            "rev": "6dbab8106ed3ed77359ac85d9cf08e30290df864",
-            "sha256": "1i3g5h2ncdb8b67742kfpid7d0a1jas1pyicglbglwngfmzhpkna"
-        }
-    },
-    {
-        "goPackagePath": "github.com/prometheus/procfs",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/prometheus/procfs",
-            "rev": "c91d8eefde16bd047416409eb56353ea84a186e4",
-            "sha256": "0pj3gzw9b58l72w0rkpn03ayssglmqfmyxghhfad6mh0b49dvj3r"
-        }
-    },
-    {
-        "goPackagePath": "bitbucket.org/ww/goautoneg",
-        "fetch": {
-            "type": "hg",
-            "url": "bitbucket.org/ww/goautoneg",
-            "rev": "75cd24fc2f2c2a2088577d12123ddee5f54e0675",
-            "sha256": "19khhn5xhqv1yp7d6k987gh5w5rhrjnp4p0c6fyrd8z6lzz5h9qi"
-        }
-    },
-    {
-        "goPackagePath": "github.com/julienschmidt/httprouter",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/julienschmidt/httprouter",
-            "rev": "6aacfd5ab513e34f7e64ea9627ab9670371b34e7",
-            "sha256": "00rrjysmq898qcrf2hfwfh9s70vwvmjx2kp5w03nz1krxa4zhrkl"
-        }
-    }
-]
diff --git a/pkgs/servers/monitoring/prometheus/pushgateway_deps.nix b/pkgs/servers/monitoring/prometheus/pushgateway_deps.nix
new file mode 100644
index 00000000000..33795927ed9
--- /dev/null
+++ b/pkgs/servers/monitoring/prometheus/pushgateway_deps.nix
@@ -0,0 +1,74 @@
+[
+  {
+    goPackagePath = "github.com/golang/protobuf";
+    fetch = {
+      type = "git";
+      url = "https://github.com/golang/protobuf";
+      rev = "59b73b37c1e45995477aae817e4a653c89a858db";
+      sha256 = "1dx22jvhvj34ivpr7gw01fncg9yyx35mbpal4mpgnqka7ajmgjsa";
+    };
+  }
+  {
+    goPackagePath = "github.com/prometheus/client_model";
+    fetch = {
+      type = "git";
+      url = "https://github.com/prometheus/client_model";
+      rev = "fa8ad6fec33561be4280a8f0514318c79d7f6cb6";
+      sha256 = "11a7v1fjzhhwsl128znjcf5v7v6129xjgkdpym2lial4lac1dhm9";
+    };
+  }
+  {
+    goPackagePath = "github.com/beorn7/perks";
+    fetch = {
+      type = "git";
+      url = "https://github.com/beorn7/perks";
+      rev = "b965b613227fddccbfffe13eae360ed3fa822f8d";
+      sha256 = "1p8zsj4r0g61q922khfxpwxhdma2dx4xad1m5qx43mfn28kxngqk";
+    };
+  }
+  {
+    goPackagePath = "github.com/matttproud/golang_protobuf_extensions";
+    fetch = {
+      type = "git";
+      url = "https://github.com/matttproud/golang_protobuf_extensions";
+      rev = "fc2b8d3a73c4867e51861bbdd5ae3c1f0869dd6a";
+      sha256 = "0ajg41h6402big484drvm72wvid1af2sffw0qkzbmpy04lq68ahj";
+    };
+  }
+  {
+    goPackagePath = "github.com/prometheus/client_golang";
+    fetch = {
+      type = "git";
+      url = "https://github.com/prometheus/client_golang";
+      rev = "6dbab8106ed3ed77359ac85d9cf08e30290df864";
+      sha256 = "1i3g5h2ncdb8b67742kfpid7d0a1jas1pyicglbglwngfmzhpkna";
+    };
+  }
+  {
+    goPackagePath = "github.com/prometheus/procfs";
+    fetch = {
+      type = "git";
+      url = "https://github.com/prometheus/procfs";
+      rev = "c91d8eefde16bd047416409eb56353ea84a186e4";
+      sha256 = "0pj3gzw9b58l72w0rkpn03ayssglmqfmyxghhfad6mh0b49dvj3r";
+    };
+  }
+  {
+    goPackagePath = "bitbucket.org/ww/goautoneg";
+    fetch = {
+      type = "hg";
+      url = "bitbucket.org/ww/goautoneg";
+      rev = "75cd24fc2f2c2a2088577d12123ddee5f54e0675";
+      sha256 = "19khhn5xhqv1yp7d6k987gh5w5rhrjnp4p0c6fyrd8z6lzz5h9qi";
+    };
+  }
+  {
+    goPackagePath = "github.com/julienschmidt/httprouter";
+    fetch = {
+      type = "git";
+      url = "https://github.com/julienschmidt/httprouter";
+      rev = "6aacfd5ab513e34f7e64ea9627ab9670371b34e7";
+      sha256 = "00rrjysmq898qcrf2hfwfh9s70vwvmjx2kp5w03nz1krxa4zhrkl";
+    };
+  }
+]
diff --git a/pkgs/servers/monitoring/prometheus/statsd-bridge.nix b/pkgs/servers/monitoring/prometheus/statsd-bridge.nix
index 935692bfa2e..0ff1386074b 100644
--- a/pkgs/servers/monitoring/prometheus/statsd-bridge.nix
+++ b/pkgs/servers/monitoring/prometheus/statsd-bridge.nix
@@ -14,7 +14,7 @@ buildGoPackage rec {
     sha256 = "1gg9v224n05khcwy27637w3rwh0cymm7hx6bginfxd7730rmpp2r";
   };
 
-  goDeps = ./statsd-bridge_deps.json;
+  goDeps = ./statsd-bridge_deps.nix;
 
   meta = with stdenv.lib; {
     description = "Receives StatsD-style metrics and exports them to Prometheus";
diff --git a/pkgs/servers/monitoring/prometheus/statsd-bridge_deps.json b/pkgs/servers/monitoring/prometheus/statsd-bridge_deps.json
deleted file mode 100644
index 4c0bc142c88..00000000000
--- a/pkgs/servers/monitoring/prometheus/statsd-bridge_deps.json
+++ /dev/null
@@ -1,74 +0,0 @@
-[
-    {
-        "goPackagePath": "github.com/golang/protobuf",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/golang/protobuf",
-            "rev": "59b73b37c1e45995477aae817e4a653c89a858db",
-            "sha256": "1dx22jvhvj34ivpr7gw01fncg9yyx35mbpal4mpgnqka7ajmgjsa"
-        }
-    },
-    {
-        "goPackagePath": "github.com/prometheus/client_model",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/prometheus/client_model",
-            "rev": "fa8ad6fec33561be4280a8f0514318c79d7f6cb6",
-            "sha256": "11a7v1fjzhhwsl128znjcf5v7v6129xjgkdpym2lial4lac1dhm9"
-        }
-    },
-    {
-        "goPackagePath": "github.com/beorn7/perks",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/beorn7/perks",
-            "rev": "b965b613227fddccbfffe13eae360ed3fa822f8d",
-            "sha256": "1p8zsj4r0g61q922khfxpwxhdma2dx4xad1m5qx43mfn28kxngqk"
-        }
-    },
-    {
-        "goPackagePath": "github.com/matttproud/golang_protobuf_extensions",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/matttproud/golang_protobuf_extensions",
-            "rev": "fc2b8d3a73c4867e51861bbdd5ae3c1f0869dd6a",
-            "sha256": "0ajg41h6402big484drvm72wvid1af2sffw0qkzbmpy04lq68ahj"
-        }
-    },
-    {
-        "goPackagePath": "github.com/prometheus/client_golang",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/prometheus/client_golang",
-            "rev": "6dbab8106ed3ed77359ac85d9cf08e30290df864",
-            "sha256": "1i3g5h2ncdb8b67742kfpid7d0a1jas1pyicglbglwngfmzhpkna"
-        }
-    },
-    {
-        "goPackagePath": "github.com/prometheus/procfs",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/prometheus/procfs",
-            "rev": "c91d8eefde16bd047416409eb56353ea84a186e4",
-            "sha256": "0pj3gzw9b58l72w0rkpn03ayssglmqfmyxghhfad6mh0b49dvj3r"
-        }
-    },
-    {
-        "goPackagePath": "bitbucket.org/ww/goautoneg",
-        "fetch": {
-            "type": "hg",
-            "url": "bitbucket.org/ww/goautoneg",
-            "rev": "75cd24fc2f2c2a2088577d12123ddee5f54e0675",
-            "sha256": "19khhn5xhqv1yp7d6k987gh5w5rhrjnp4p0c6fyrd8z6lzz5h9qi"
-        }
-    },
-    {
-        "goPackagePath": "github.com/howeyc/fsnotify",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/fsnotify/fsnotify",
-            "rev": "ea925a0a47d225b2ca7f9932b01d2ed4f3ec74f6",
-            "sha256": "15wqjpkfzsxnaxbz6y4r91hw6812g3sc4ipagxw1bya9klbnkdc9"
-        }
-    }
-]
diff --git a/pkgs/servers/monitoring/prometheus/statsd-bridge_deps.nix b/pkgs/servers/monitoring/prometheus/statsd-bridge_deps.nix
new file mode 100644
index 00000000000..fd11ab5a7ea
--- /dev/null
+++ b/pkgs/servers/monitoring/prometheus/statsd-bridge_deps.nix
@@ -0,0 +1,74 @@
+[
+  {
+    goPackagePath = "github.com/golang/protobuf";
+    fetch = {
+      type = "git";
+      url = "https://github.com/golang/protobuf";
+      rev = "59b73b37c1e45995477aae817e4a653c89a858db";
+      sha256 = "1dx22jvhvj34ivpr7gw01fncg9yyx35mbpal4mpgnqka7ajmgjsa";
+    };
+  }
+  {
+    goPackagePath = "github.com/prometheus/client_model";
+    fetch = {
+      type = "git";
+      url = "https://github.com/prometheus/client_model";
+      rev = "fa8ad6fec33561be4280a8f0514318c79d7f6cb6";
+      sha256 = "11a7v1fjzhhwsl128znjcf5v7v6129xjgkdpym2lial4lac1dhm9";
+    };
+  }
+  {
+    goPackagePath = "github.com/beorn7/perks";
+    fetch = {
+      type = "git";
+      url = "https://github.com/beorn7/perks";
+      rev = "b965b613227fddccbfffe13eae360ed3fa822f8d";
+      sha256 = "1p8zsj4r0g61q922khfxpwxhdma2dx4xad1m5qx43mfn28kxngqk";
+    };
+  }
+  {
+    goPackagePath = "github.com/matttproud/golang_protobuf_extensions";
+    fetch = {
+      type = "git";
+      url = "https://github.com/matttproud/golang_protobuf_extensions";
+      rev = "fc2b8d3a73c4867e51861bbdd5ae3c1f0869dd6a";
+      sha256 = "0ajg41h6402big484drvm72wvid1af2sffw0qkzbmpy04lq68ahj";
+    };
+  }
+  {
+    goPackagePath = "github.com/prometheus/client_golang";
+    fetch = {
+      type = "git";
+      url = "https://github.com/prometheus/client_golang";
+      rev = "6dbab8106ed3ed77359ac85d9cf08e30290df864";
+      sha256 = "1i3g5h2ncdb8b67742kfpid7d0a1jas1pyicglbglwngfmzhpkna";
+    };
+  }
+  {
+    goPackagePath = "github.com/prometheus/procfs";
+    fetch = {
+      type = "git";
+      url = "https://github.com/prometheus/procfs";
+      rev = "c91d8eefde16bd047416409eb56353ea84a186e4";
+      sha256 = "0pj3gzw9b58l72w0rkpn03ayssglmqfmyxghhfad6mh0b49dvj3r";
+    };
+  }
+  {
+    goPackagePath = "bitbucket.org/ww/goautoneg";
+    fetch = {
+      type = "hg";
+      url = "bitbucket.org/ww/goautoneg";
+      rev = "75cd24fc2f2c2a2088577d12123ddee5f54e0675";
+      sha256 = "19khhn5xhqv1yp7d6k987gh5w5rhrjnp4p0c6fyrd8z6lzz5h9qi";
+    };
+  }
+  {
+    goPackagePath = "github.com/howeyc/fsnotify";
+    fetch = {
+      type = "git";
+      url = "https://github.com/fsnotify/fsnotify";
+      rev = "ea925a0a47d225b2ca7f9932b01d2ed4f3ec74f6";
+      sha256 = "15wqjpkfzsxnaxbz6y4r91hw6812g3sc4ipagxw1bya9klbnkdc9";
+    };
+  }
+]
diff --git a/pkgs/servers/nosql/influxdb/default.nix b/pkgs/servers/nosql/influxdb/default.nix
index 20c4d699dd4..1614049bf22 100644
--- a/pkgs/servers/nosql/influxdb/default.nix
+++ b/pkgs/servers/nosql/influxdb/default.nix
@@ -11,7 +11,7 @@ buildGoPackage rec {
 
   # Generated with the `gdm2nix.rb` script and the `Godeps` file from the
   # influxdb repo root.
-  goDeps = ./. + builtins.toPath "/deps-${version}.json";
+  goDeps = ./. + builtins.toPath "/deps-${version}.nix";
 
   meta = with lib; {
     description = "An open-source distributed time series database";
diff --git a/pkgs/servers/nosql/influxdb/deps-0.13.0.json b/pkgs/servers/nosql/influxdb/deps-0.13.0.json
deleted file mode 100644
index 33388cc0fb7..00000000000
--- a/pkgs/servers/nosql/influxdb/deps-0.13.0.json
+++ /dev/null
@@ -1,200 +0,0 @@
-[
-  {
-    "goPackagePath": "collectd.org",
-    "fetch": {
-      "type": "git",
-      "url": "https://github.com/collectd/go-collectd.git",
-      "rev": "9fc824c70f713ea0f058a07b49a4c563ef2a3b98",
-      "sha256": "0kjal6bsjpnppfnlqbg7g56xwssaj2ani499yykyj817zq56hi0w"
-    }
-  },
-  {
-    "goPackagePath": "github.com/BurntSushi/toml",
-    "fetch": {
-      "type": "git",
-      "url": "https://github.com/BurntSushi/toml.git",
-      "rev": "a4eecd407cf4129fc902ece859a0114e4cf1a7f4",
-      "sha256": "1l74zvd534k2fs73gmaq4mgl48p1i9559k1gwq4vakca727z5sgf"
-    }
-  },
-  {
-    "goPackagePath": "github.com/armon/go-metrics",
-    "fetch": {
-      "type": "git",
-      "url": "https://github.com/armon/go-metrics.git",
-      "rev": "345426c77237ece5dab0e1605c3e4b35c3f54757",
-      "sha256": "13bp2ykqhnhzif7wzrwsg54c2b0czhgs9csbvzbvc93n72s59jh5"
-    }
-  },
-  {
-    "goPackagePath": "github.com/bmizerany/pat",
-    "fetch": {
-      "type": "git",
-      "url": "https://github.com/bmizerany/pat.git",
-      "rev": "b8a35001b773c267eb260a691f4e5499a3531600",
-      "sha256": "11zxd45rvjm6cn3wzbi18wy9j4vr1r1hgg6gzlqnxffiizkycxmz"
-    }
-  },
-  {
-    "goPackagePath": "github.com/boltdb/bolt",
-    "fetch": {
-      "type": "git",
-      "url": "https://github.com/boltdb/bolt.git",
-      "rev": "2f846c3551b76d7710f159be840d66c3d064abbe",
-      "sha256": "0cvpcgmzlrn87jqrflwf4pciz6i25ri1r83sq7v1z9zry1ah16r5"
-    }
-  },
-  {
-    "goPackagePath": "github.com/davecgh/go-spew",
-    "fetch": {
-      "type": "git",
-      "url": "https://github.com/davecgh/go-spew.git",
-      "rev": "fc32781af5e85e548d3f1abaf0fa3dbe8a72495c",
-      "sha256": "1dwwd4va0qnyr256i7n8d4g24d7yyvwd0975y6v4dy06qpwir232"
-    }
-  },
-  {
-    "goPackagePath": "github.com/dgryski/go-bits",
-    "fetch": {
-      "type": "git",
-      "url": "https://github.com/dgryski/go-bits.git",
-      "rev": "86c69b3c986f9d40065df5bd8f765796549eef2e",
-      "sha256": "08i3p8lcisr88gmwvi8qdc8bgksxh5ydjspgfbi4aba9msybp78b"
-    }
-  },
-  {
-    "goPackagePath": "github.com/dgryski/go-bitstream",
-    "fetch": {
-      "type": "git",
-      "url": "https://github.com/dgryski/go-bitstream.git",
-      "rev": "27cd5973303fde7d914860be1ea4b927a6be0c92",
-      "sha256": "12ji4vcfy0cz12yq43cz0w1f1k4c1kg0vwpsk1iy47kc38kzdkc6"
-    }
-  },
-  {
-    "goPackagePath": "github.com/gogo/protobuf",
-    "fetch": {
-      "type": "git",
-      "url": "https://github.com/gogo/protobuf.git",
-      "rev": "74b6e9deaff6ba6da1389ec97351d337f0d08b06",
-      "sha256": "0045fz4bx72rikm2ggx9j1h3yrq518299qwaizrgy5jvxzj1707b"
-    }
-  },
-  {
-    "goPackagePath": "github.com/golang/snappy",
-    "fetch": {
-      "type": "git",
-      "url": "https://github.com/golang/snappy.git",
-      "rev": "5979233c5d6225d4a8e438cdd0b411888449ddab",
-      "sha256": "0i0pvwc2a4xgsns6mr3xbc6p0sra34qsaagd7yf7v1as0z7ydl3s"
-    }
-  },
-  {
-    "goPackagePath": "github.com/hashicorp/go-msgpack",
-    "fetch": {
-      "type": "git",
-      "url": "https://github.com/hashicorp/go-msgpack.git",
-      "rev": "fa3f63826f7c23912c15263591e65d54d080b458",
-      "sha256": "1f6rd6bm2dm2rk46x8cqrxh5nks1gpk6dvvsag7s5pdjgdxy951k"
-    }
-  },
-  {
-    "goPackagePath": "github.com/hashicorp/raft",
-    "fetch": {
-      "type": "git",
-      "url": "https://github.com/hashicorp/raft.git",
-      "rev": "8fd9a2fdfd154f4b393aa24cff91e3c317efe839",
-      "sha256": "04k03x6r6h2xwxfvbzicfdblifdjn35agw9kwla6akw6l54ygy0f"
-    }
-  },
-  {
-    "goPackagePath": "github.com/hashicorp/raft-boltdb",
-    "fetch": {
-      "type": "git",
-      "url": "https://github.com/hashicorp/raft-boltdb.git",
-      "rev": "d1e82c1ec3f15ee991f7cc7ffd5b67ff6f5bbaee",
-      "sha256": "0p609w6x0h6bapx4b0d91dxnp2kj7dv0534q4blyxp79shv2a8ia"
-    }
-  },
-  {
-    "goPackagePath": "github.com/influxdata/usage-client",
-    "fetch": {
-      "type": "git",
-      "url": "https://github.com/influxdata/usage-client.git",
-      "rev": "475977e68d79883d9c8d67131c84e4241523f452",
-      "sha256": "0yhywablqqpd2x70rax1kf7yaw1jpvrc2gks8360cwisda57d3qy"
-    }
-  },
-  {
-    "goPackagePath": "github.com/jwilder/encoding",
-    "fetch": {
-      "type": "git",
-      "url": "https://github.com/jwilder/encoding.git",
-      "rev": "b421ab402545ef5a119f4f827784c6551d9bfc37",
-      "sha256": "0sjz2cl8kpni0mh0y4269k417dj06gn2y0ppi25i3wh9p4j4i4fq"
-    }
-  },
-  {
-    "goPackagePath": "github.com/kimor79/gollectd",
-    "fetch": {
-      "type": "git",
-      "url": "https://github.com/kimor79/gollectd.git",
-      "rev": "61d0deeb4ffcc167b2a1baa8efd72365692811bc",
-      "sha256": "0als2v4d5hlw0sqam670p3fi471ikgl3l81bp31mf3s3jssdxwfs"
-    }
-  },
-  {
-    "goPackagePath": "github.com/paulbellamy/ratecounter",
-    "fetch": {
-      "type": "git",
-      "url": "https://github.com/paulbellamy/ratecounter.git",
-      "rev": "5a11f585a31379765c190c033b6ad39956584447",
-      "sha256": "137p62imi91zhkjcjigdd64n7f9z6djjpsxcyifgrcxs41jj9ra0"
-    }
-  },
-  {
-    "goPackagePath": "github.com/peterh/liner",
-    "fetch": {
-      "type": "git",
-      "url": "https://github.com/peterh/liner.git",
-      "rev": "82a939e738b0ee23e84ec7a12d8e216f4d95c53f",
-      "sha256": "1187c1rqmh9k9ap5bz3p9hbjp3ad5hysykh58kgv5clah1jbkg04"
-    }
-  },
-  {
-    "goPackagePath": "github.com/rakyll/statik",
-    "fetch": {
-      "type": "git",
-      "url": "https://github.com/rakyll/statik.git",
-      "rev": "274df120e9065bdd08eb1120e0375e3dc1ae8465",
-      "sha256": "0llk7bxmk66wdiy42h32vj1jfk8zg351xq21hwhrq7gkfljghffp"
-    }
-  },
-  {
-    "goPackagePath": "golang.org/x/crypto",
-    "fetch": {
-      "type": "git",
-      "url": "https://github.com/golang/crypto.git",
-      "rev": "1f22c0103821b9390939b6776727195525381532",
-      "sha256": "1acy12f396sr3lrnbcnym5q72qnlign5bagving41qijzjnc219m"
-    }
-  },
-  {
-    "goPackagePath": "golang.org/x/tools",
-    "fetch": {
-      "type": "git",
-      "url": "https://github.com/golang/tools.git",
-      "rev": "8b178a93c1f5b5c8f4e36cd6bd64e0d5bf0ee180",
-      "sha256": "0rqm56c4acrvyqsp53dkzr34pkz922x4rwknaslwlbkyc4gyg2c8"
-    }
-  },
-  {
-    "goPackagePath": "gopkg.in/fatih/pool.v2",
-    "fetch": {
-      "type": "git",
-      "url": "https://github.com/fatih/pool.git",
-      "rev": "cba550ebf9bce999a02e963296d4bc7a486cb715",
-      "sha256": "1jlrakgnpvhi2ny87yrsj1gyrcncfzdhypa9i2mlvvzqlj4r0dn0"
-    }
-  }
-]
\ No newline at end of file
diff --git a/pkgs/servers/nosql/influxdb/deps-0.13.0.json.nix b/pkgs/servers/nosql/influxdb/deps-0.13.0.json.nix
new file mode 100644
index 00000000000..e69de29bb2d
--- /dev/null
+++ b/pkgs/servers/nosql/influxdb/deps-0.13.0.json.nix
diff --git a/pkgs/servers/nosql/influxdb/deps-0.13.0.nix b/pkgs/servers/nosql/influxdb/deps-0.13.0.nix
new file mode 100644
index 00000000000..1b8885a1a0f
--- /dev/null
+++ b/pkgs/servers/nosql/influxdb/deps-0.13.0.nix
@@ -0,0 +1,200 @@
+[
+{
+  goPackagePath = "collectd.org";
+  fetch = {
+    type = "git";
+    url = "https://github.com/collectd/go-collectd.git";
+    rev = "9fc824c70f713ea0f058a07b49a4c563ef2a3b98";
+    sha256 = "0kjal6bsjpnppfnlqbg7g56xwssaj2ani499yykyj817zq56hi0w";
+  };
+}
+{
+  goPackagePath = "github.com/BurntSushi/toml";
+  fetch = {
+    type = "git";
+    url = "https://github.com/BurntSushi/toml.git";
+    rev = "a4eecd407cf4129fc902ece859a0114e4cf1a7f4";
+    sha256 = "1l74zvd534k2fs73gmaq4mgl48p1i9559k1gwq4vakca727z5sgf";
+  };
+}
+{
+  goPackagePath = "github.com/armon/go-metrics";
+  fetch = {
+    type = "git";
+    url = "https://github.com/armon/go-metrics.git";
+    rev = "345426c77237ece5dab0e1605c3e4b35c3f54757";
+    sha256 = "13bp2ykqhnhzif7wzrwsg54c2b0czhgs9csbvzbvc93n72s59jh5";
+  };
+}
+{
+  goPackagePath = "github.com/bmizerany/pat";
+  fetch = {
+    type = "git";
+    url = "https://github.com/bmizerany/pat.git";
+    rev = "b8a35001b773c267eb260a691f4e5499a3531600";
+    sha256 = "11zxd45rvjm6cn3wzbi18wy9j4vr1r1hgg6gzlqnxffiizkycxmz";
+  };
+}
+{
+  goPackagePath = "github.com/boltdb/bolt";
+  fetch = {
+    type = "git";
+    url = "https://github.com/boltdb/bolt.git";
+    rev = "2f846c3551b76d7710f159be840d66c3d064abbe";
+    sha256 = "0cvpcgmzlrn87jqrflwf4pciz6i25ri1r83sq7v1z9zry1ah16r5";
+  };
+}
+{
+  goPackagePath = "github.com/davecgh/go-spew";
+  fetch = {
+    type = "git";
+    url = "https://github.com/davecgh/go-spew.git";
+    rev = "fc32781af5e85e548d3f1abaf0fa3dbe8a72495c";
+    sha256 = "1dwwd4va0qnyr256i7n8d4g24d7yyvwd0975y6v4dy06qpwir232";
+  };
+}
+{
+  goPackagePath = "github.com/dgryski/go-bits";
+  fetch = {
+    type = "git";
+    url = "https://github.com/dgryski/go-bits.git";
+    rev = "86c69b3c986f9d40065df5bd8f765796549eef2e";
+    sha256 = "08i3p8lcisr88gmwvi8qdc8bgksxh5ydjspgfbi4aba9msybp78b";
+  };
+}
+{
+  goPackagePath = "github.com/dgryski/go-bitstream";
+  fetch = {
+    type = "git";
+    url = "https://github.com/dgryski/go-bitstream.git";
+    rev = "27cd5973303fde7d914860be1ea4b927a6be0c92";
+    sha256 = "12ji4vcfy0cz12yq43cz0w1f1k4c1kg0vwpsk1iy47kc38kzdkc6";
+  };
+}
+{
+  goPackagePath = "github.com/gogo/protobuf";
+  fetch = {
+    type = "git";
+    url = "https://github.com/gogo/protobuf.git";
+    rev = "74b6e9deaff6ba6da1389ec97351d337f0d08b06";
+    sha256 = "0045fz4bx72rikm2ggx9j1h3yrq518299qwaizrgy5jvxzj1707b";
+  };
+}
+{
+  goPackagePath = "github.com/golang/snappy";
+  fetch = {
+    type = "git";
+    url = "https://github.com/golang/snappy.git";
+    rev = "5979233c5d6225d4a8e438cdd0b411888449ddab";
+    sha256 = "0i0pvwc2a4xgsns6mr3xbc6p0sra34qsaagd7yf7v1as0z7ydl3s";
+  };
+}
+{
+  goPackagePath = "github.com/hashicorp/go-msgpack";
+  fetch = {
+    type = "git";
+    url = "https://github.com/hashicorp/go-msgpack.git";
+    rev = "fa3f63826f7c23912c15263591e65d54d080b458";
+    sha256 = "1f6rd6bm2dm2rk46x8cqrxh5nks1gpk6dvvsag7s5pdjgdxy951k";
+  };
+}
+{
+  goPackagePath = "github.com/hashicorp/raft";
+  fetch = {
+    type = "git";
+    url = "https://github.com/hashicorp/raft.git";
+    rev = "8fd9a2fdfd154f4b393aa24cff91e3c317efe839";
+    sha256 = "04k03x6r6h2xwxfvbzicfdblifdjn35agw9kwla6akw6l54ygy0f";
+  };
+}
+{
+  goPackagePath = "github.com/hashicorp/raft-boltdb";
+  fetch = {
+    type = "git";
+    url = "https://github.com/hashicorp/raft-boltdb.git";
+    rev = "d1e82c1ec3f15ee991f7cc7ffd5b67ff6f5bbaee";
+    sha256 = "0p609w6x0h6bapx4b0d91dxnp2kj7dv0534q4blyxp79shv2a8ia";
+  };
+}
+{
+  goPackagePath = "github.com/influxdata/usage-client";
+  fetch = {
+    type = "git";
+    url = "https://github.com/influxdata/usage-client.git";
+    rev = "475977e68d79883d9c8d67131c84e4241523f452";
+    sha256 = "0yhywablqqpd2x70rax1kf7yaw1jpvrc2gks8360cwisda57d3qy";
+  };
+}
+{
+  goPackagePath = "github.com/jwilder/encoding";
+  fetch = {
+    type = "git";
+    url = "https://github.com/jwilder/encoding.git";
+    rev = "b421ab402545ef5a119f4f827784c6551d9bfc37";
+    sha256 = "0sjz2cl8kpni0mh0y4269k417dj06gn2y0ppi25i3wh9p4j4i4fq";
+  };
+}
+{
+  goPackagePath = "github.com/kimor79/gollectd";
+  fetch = {
+    type = "git";
+    url = "https://github.com/kimor79/gollectd.git";
+    rev = "61d0deeb4ffcc167b2a1baa8efd72365692811bc";
+    sha256 = "0als2v4d5hlw0sqam670p3fi471ikgl3l81bp31mf3s3jssdxwfs";
+  };
+}
+{
+  goPackagePath = "github.com/paulbellamy/ratecounter";
+  fetch = {
+    type = "git";
+    url = "https://github.com/paulbellamy/ratecounter.git";
+    rev = "5a11f585a31379765c190c033b6ad39956584447";
+    sha256 = "137p62imi91zhkjcjigdd64n7f9z6djjpsxcyifgrcxs41jj9ra0";
+  };
+}
+{
+  goPackagePath = "github.com/peterh/liner";
+  fetch = {
+    type = "git";
+    url = "https://github.com/peterh/liner.git";
+    rev = "82a939e738b0ee23e84ec7a12d8e216f4d95c53f";
+    sha256 = "1187c1rqmh9k9ap5bz3p9hbjp3ad5hysykh58kgv5clah1jbkg04";
+  };
+}
+{
+  goPackagePath = "github.com/rakyll/statik";
+  fetch = {
+    type = "git";
+    url = "https://github.com/rakyll/statik.git";
+    rev = "274df120e9065bdd08eb1120e0375e3dc1ae8465";
+    sha256 = "0llk7bxmk66wdiy42h32vj1jfk8zg351xq21hwhrq7gkfljghffp";
+  };
+}
+{
+  goPackagePath = "golang.org/x/crypto";
+  fetch = {
+    type = "git";
+    url = "https://github.com/golang/crypto.git";
+    rev = "1f22c0103821b9390939b6776727195525381532";
+    sha256 = "1acy12f396sr3lrnbcnym5q72qnlign5bagving41qijzjnc219m";
+  };
+}
+{
+  goPackagePath = "golang.org/x/tools";
+  fetch = {
+    type = "git";
+    url = "https://github.com/golang/tools.git";
+    rev = "8b178a93c1f5b5c8f4e36cd6bd64e0d5bf0ee180";
+    sha256 = "0rqm56c4acrvyqsp53dkzr34pkz922x4rwknaslwlbkyc4gyg2c8";
+  };
+}
+{
+  goPackagePath = "gopkg.in/fatih/pool.v2";
+  fetch = {
+    type = "git";
+    url = "https://github.com/fatih/pool.git";
+    rev = "cba550ebf9bce999a02e963296d4bc7a486cb715";
+    sha256 = "1jlrakgnpvhi2ny87yrsj1gyrcncfzdhypa9i2mlvvzqlj4r0dn0";
+  };
+}
+]
diff --git a/pkgs/servers/nosql/influxdb/deps-1.0.0-beta3.json b/pkgs/servers/nosql/influxdb/deps-1.0.0-beta3.json
deleted file mode 100644
index fe72249ea26..00000000000
--- a/pkgs/servers/nosql/influxdb/deps-1.0.0-beta3.json
+++ /dev/null
@@ -1,155 +0,0 @@
-[
-  {
-    "goPackagePath": "collectd.org",
-    "fetch": {
-      "type": "git",
-      "url": "https://github.com/collectd/go-collectd.git",
-      "rev": "9fc824c70f713ea0f058a07b49a4c563ef2a3b98",
-      "sha256": "0kjal6bsjpnppfnlqbg7g56xwssaj2ani499yykyj817zq56hi0w"
-    }
-  },
-  {
-    "goPackagePath": "github.com/BurntSushi/toml",
-    "fetch": {
-      "type": "git",
-      "url": "https://github.com/BurntSushi/toml.git",
-      "rev": "a4eecd407cf4129fc902ece859a0114e4cf1a7f4",
-      "sha256": "1l74zvd534k2fs73gmaq4mgl48p1i9559k1gwq4vakca727z5sgf"
-    }
-  },
-  {
-    "goPackagePath": "github.com/bmizerany/pat",
-    "fetch": {
-      "type": "git",
-      "url": "https://github.com/bmizerany/pat.git",
-      "rev": "b8a35001b773c267eb260a691f4e5499a3531600",
-      "sha256": "11zxd45rvjm6cn3wzbi18wy9j4vr1r1hgg6gzlqnxffiizkycxmz"
-    }
-  },
-  {
-    "goPackagePath": "github.com/boltdb/bolt",
-    "fetch": {
-      "type": "git",
-      "url": "https://github.com/boltdb/bolt.git",
-      "rev": "2f846c3551b76d7710f159be840d66c3d064abbe",
-      "sha256": "0cvpcgmzlrn87jqrflwf4pciz6i25ri1r83sq7v1z9zry1ah16r5"
-    }
-  },
-  {
-    "goPackagePath": "github.com/davecgh/go-spew",
-    "fetch": {
-      "type": "git",
-      "url": "https://github.com/davecgh/go-spew.git",
-      "rev": "fc32781af5e85e548d3f1abaf0fa3dbe8a72495c",
-      "sha256": "1dwwd4va0qnyr256i7n8d4g24d7yyvwd0975y6v4dy06qpwir232"
-    }
-  },
-  {
-    "goPackagePath": "github.com/dgrijalva/jwt-go",
-    "fetch": {
-      "type": "git",
-      "url": "https://github.com/dgrijalva/jwt-go.git",
-      "rev": "a2c85815a77d0f951e33ba4db5ae93629a1530af",
-      "sha256": "1m7011hdr4qa400awbdagj2m5zwfbvhinq8p5hq7ysn14xpaq5vw"
-    }
-  },
-  {
-    "goPackagePath": "github.com/dgryski/go-bits",
-    "fetch": {
-      "type": "git",
-      "url": "https://github.com/dgryski/go-bits.git",
-      "rev": "86c69b3c986f9d40065df5bd8f765796549eef2e",
-      "sha256": "08i3p8lcisr88gmwvi8qdc8bgksxh5ydjspgfbi4aba9msybp78b"
-    }
-  },
-  {
-    "goPackagePath": "github.com/dgryski/go-bitstream",
-    "fetch": {
-      "type": "git",
-      "url": "https://github.com/dgryski/go-bitstream.git",
-      "rev": "27cd5973303fde7d914860be1ea4b927a6be0c92",
-      "sha256": "12ji4vcfy0cz12yq43cz0w1f1k4c1kg0vwpsk1iy47kc38kzdkc6"
-    }
-  },
-  {
-    "goPackagePath": "github.com/gogo/protobuf",
-    "fetch": {
-      "type": "git",
-      "url": "https://github.com/gogo/protobuf.git",
-      "rev": "74b6e9deaff6ba6da1389ec97351d337f0d08b06",
-      "sha256": "0045fz4bx72rikm2ggx9j1h3yrq518299qwaizrgy5jvxzj1707b"
-    }
-  },
-  {
-    "goPackagePath": "github.com/golang/snappy",
-    "fetch": {
-      "type": "git",
-      "url": "https://github.com/golang/snappy.git",
-      "rev": "5979233c5d6225d4a8e438cdd0b411888449ddab",
-      "sha256": "0i0pvwc2a4xgsns6mr3xbc6p0sra34qsaagd7yf7v1as0z7ydl3s"
-    }
-  },
-  {
-    "goPackagePath": "github.com/influxdata/usage-client",
-    "fetch": {
-      "type": "git",
-      "url": "https://github.com/influxdata/usage-client.git",
-      "rev": "475977e68d79883d9c8d67131c84e4241523f452",
-      "sha256": "0yhywablqqpd2x70rax1kf7yaw1jpvrc2gks8360cwisda57d3qy"
-    }
-  },
-  {
-    "goPackagePath": "github.com/jwilder/encoding",
-    "fetch": {
-      "type": "git",
-      "url": "https://github.com/jwilder/encoding.git",
-      "rev": "b421ab402545ef5a119f4f827784c6551d9bfc37",
-      "sha256": "0sjz2cl8kpni0mh0y4269k417dj06gn2y0ppi25i3wh9p4j4i4fq"
-    }
-  },
-  {
-    "goPackagePath": "github.com/kimor79/gollectd",
-    "fetch": {
-      "type": "git",
-      "url": "https://github.com/kimor79/gollectd.git",
-      "rev": "61d0deeb4ffcc167b2a1baa8efd72365692811bc",
-      "sha256": "0als2v4d5hlw0sqam670p3fi471ikgl3l81bp31mf3s3jssdxwfs"
-    }
-  },
-  {
-    "goPackagePath": "github.com/paulbellamy/ratecounter",
-    "fetch": {
-      "type": "git",
-      "url": "https://github.com/paulbellamy/ratecounter.git",
-      "rev": "5a11f585a31379765c190c033b6ad39956584447",
-      "sha256": "137p62imi91zhkjcjigdd64n7f9z6djjpsxcyifgrcxs41jj9ra0"
-    }
-  },
-  {
-    "goPackagePath": "github.com/peterh/liner",
-    "fetch": {
-      "type": "git",
-      "url": "https://github.com/peterh/liner.git",
-      "rev": "82a939e738b0ee23e84ec7a12d8e216f4d95c53f",
-      "sha256": "1187c1rqmh9k9ap5bz3p9hbjp3ad5hysykh58kgv5clah1jbkg04"
-    }
-  },
-  {
-    "goPackagePath": "github.com/rakyll/statik",
-    "fetch": {
-      "type": "git",
-      "url": "https://github.com/rakyll/statik.git",
-      "rev": "274df120e9065bdd08eb1120e0375e3dc1ae8465",
-      "sha256": "0llk7bxmk66wdiy42h32vj1jfk8zg351xq21hwhrq7gkfljghffp"
-    }
-  },
-  {
-    "goPackagePath": "golang.org/x/crypto",
-    "fetch": {
-      "type": "git",
-      "url": "https://github.com/golang/crypto.git",
-      "rev": "1f22c0103821b9390939b6776727195525381532",
-      "sha256": "1acy12f396sr3lrnbcnym5q72qnlign5bagving41qijzjnc219m"
-    }
-  }
-]
\ No newline at end of file
diff --git a/pkgs/servers/nosql/influxdb/deps-1.0.0-beta3.nix b/pkgs/servers/nosql/influxdb/deps-1.0.0-beta3.nix
new file mode 100644
index 00000000000..016e7a1624d
--- /dev/null
+++ b/pkgs/servers/nosql/influxdb/deps-1.0.0-beta3.nix
@@ -0,0 +1,155 @@
+[
+{
+  goPackagePath = "collectd.org";
+  fetch = {
+    type = "git";
+    url = "https://github.com/collectd/go-collectd.git";
+    rev = "9fc824c70f713ea0f058a07b49a4c563ef2a3b98";
+    sha256 = "0kjal6bsjpnppfnlqbg7g56xwssaj2ani499yykyj817zq56hi0w";
+  };
+}
+{
+  goPackagePath = "github.com/BurntSushi/toml";
+  fetch = {
+    type = "git";
+    url = "https://github.com/BurntSushi/toml.git";
+    rev = "a4eecd407cf4129fc902ece859a0114e4cf1a7f4";
+    sha256 = "1l74zvd534k2fs73gmaq4mgl48p1i9559k1gwq4vakca727z5sgf";
+  };
+}
+{
+  goPackagePath = "github.com/bmizerany/pat";
+  fetch = {
+    type = "git";
+    url = "https://github.com/bmizerany/pat.git";
+    rev = "b8a35001b773c267eb260a691f4e5499a3531600";
+    sha256 = "11zxd45rvjm6cn3wzbi18wy9j4vr1r1hgg6gzlqnxffiizkycxmz";
+  };
+}
+{
+  goPackagePath = "github.com/boltdb/bolt";
+  fetch = {
+    type = "git";
+    url = "https://github.com/boltdb/bolt.git";
+    rev = "2f846c3551b76d7710f159be840d66c3d064abbe";
+    sha256 = "0cvpcgmzlrn87jqrflwf4pciz6i25ri1r83sq7v1z9zry1ah16r5";
+  };
+}
+{
+  goPackagePath = "github.com/davecgh/go-spew";
+  fetch = {
+    type = "git";
+    url = "https://github.com/davecgh/go-spew.git";
+    rev = "fc32781af5e85e548d3f1abaf0fa3dbe8a72495c";
+    sha256 = "1dwwd4va0qnyr256i7n8d4g24d7yyvwd0975y6v4dy06qpwir232";
+  };
+}
+{
+  goPackagePath = "github.com/dgrijalva/jwt-go";
+  fetch = {
+    type = "git";
+    url = "https://github.com/dgrijalva/jwt-go.git";
+    rev = "a2c85815a77d0f951e33ba4db5ae93629a1530af";
+    sha256 = "1m7011hdr4qa400awbdagj2m5zwfbvhinq8p5hq7ysn14xpaq5vw";
+  };
+}
+{
+  goPackagePath = "github.com/dgryski/go-bits";
+  fetch = {
+    type = "git";
+    url = "https://github.com/dgryski/go-bits.git";
+    rev = "86c69b3c986f9d40065df5bd8f765796549eef2e";
+    sha256 = "08i3p8lcisr88gmwvi8qdc8bgksxh5ydjspgfbi4aba9msybp78b";
+  };
+}
+{
+  goPackagePath = "github.com/dgryski/go-bitstream";
+  fetch = {
+    type = "git";
+    url = "https://github.com/dgryski/go-bitstream.git";
+    rev = "27cd5973303fde7d914860be1ea4b927a6be0c92";
+    sha256 = "12ji4vcfy0cz12yq43cz0w1f1k4c1kg0vwpsk1iy47kc38kzdkc6";
+  };
+}
+{
+  goPackagePath = "github.com/gogo/protobuf";
+  fetch = {
+    type = "git";
+    url = "https://github.com/gogo/protobuf.git";
+    rev = "74b6e9deaff6ba6da1389ec97351d337f0d08b06";
+    sha256 = "0045fz4bx72rikm2ggx9j1h3yrq518299qwaizrgy5jvxzj1707b";
+  };
+}
+{
+  goPackagePath = "github.com/golang/snappy";
+  fetch = {
+    type = "git";
+    url = "https://github.com/golang/snappy.git";
+    rev = "5979233c5d6225d4a8e438cdd0b411888449ddab";
+    sha256 = "0i0pvwc2a4xgsns6mr3xbc6p0sra34qsaagd7yf7v1as0z7ydl3s";
+  };
+}
+{
+  goPackagePath = "github.com/influxdata/usage-client";
+  fetch = {
+    type = "git";
+    url = "https://github.com/influxdata/usage-client.git";
+    rev = "475977e68d79883d9c8d67131c84e4241523f452";
+    sha256 = "0yhywablqqpd2x70rax1kf7yaw1jpvrc2gks8360cwisda57d3qy";
+  };
+}
+{
+  goPackagePath = "github.com/jwilder/encoding";
+  fetch = {
+    type = "git";
+    url = "https://github.com/jwilder/encoding.git";
+    rev = "b421ab402545ef5a119f4f827784c6551d9bfc37";
+    sha256 = "0sjz2cl8kpni0mh0y4269k417dj06gn2y0ppi25i3wh9p4j4i4fq";
+  };
+}
+{
+  goPackagePath = "github.com/kimor79/gollectd";
+  fetch = {
+    type = "git";
+    url = "https://github.com/kimor79/gollectd.git";
+    rev = "61d0deeb4ffcc167b2a1baa8efd72365692811bc";
+    sha256 = "0als2v4d5hlw0sqam670p3fi471ikgl3l81bp31mf3s3jssdxwfs";
+  };
+}
+{
+  goPackagePath = "github.com/paulbellamy/ratecounter";
+  fetch = {
+    type = "git";
+    url = "https://github.com/paulbellamy/ratecounter.git";
+    rev = "5a11f585a31379765c190c033b6ad39956584447";
+    sha256 = "137p62imi91zhkjcjigdd64n7f9z6djjpsxcyifgrcxs41jj9ra0";
+  };
+}
+{
+  goPackagePath = "github.com/peterh/liner";
+  fetch = {
+    type = "git";
+    url = "https://github.com/peterh/liner.git";
+    rev = "82a939e738b0ee23e84ec7a12d8e216f4d95c53f";
+    sha256 = "1187c1rqmh9k9ap5bz3p9hbjp3ad5hysykh58kgv5clah1jbkg04";
+  };
+}
+{
+  goPackagePath = "github.com/rakyll/statik";
+  fetch = {
+    type = "git";
+    url = "https://github.com/rakyll/statik.git";
+    rev = "274df120e9065bdd08eb1120e0375e3dc1ae8465";
+    sha256 = "0llk7bxmk66wdiy42h32vj1jfk8zg351xq21hwhrq7gkfljghffp";
+  };
+}
+{
+  goPackagePath = "golang.org/x/crypto";
+  fetch = {
+    type = "git";
+    url = "https://github.com/golang/crypto.git";
+    rev = "1f22c0103821b9390939b6776727195525381532";
+    sha256 = "1acy12f396sr3lrnbcnym5q72qnlign5bagving41qijzjnc219m";
+  };
+}
+]
diff --git a/pkgs/servers/nosql/influxdb/gdm2nix.rb b/pkgs/servers/nosql/influxdb/gdm2nix.rb
index d6ad6aa5eed..4feb78f54bb 100755
--- a/pkgs/servers/nosql/influxdb/gdm2nix.rb
+++ b/pkgs/servers/nosql/influxdb/gdm2nix.rb
@@ -35,4 +35,5 @@ deps = File.read(godeps).lines.map do |line|
   }
 end
 
+#TODO: move to deps.nix in NIXON format
 File.write("deps.json", JSON.pretty_generate(deps))
diff --git a/pkgs/servers/nsq/default.nix b/pkgs/servers/nsq/default.nix
index 334b78c9128..fa78c876c1e 100644
--- a/pkgs/servers/nsq/default.nix
+++ b/pkgs/servers/nsq/default.nix
@@ -14,5 +14,5 @@ buildGoPackage rec {
     sha256 = "1r7jgplzn6bgwhd4vn8045n6cmm4iqbzssbjgj7j1c28zbficy2f";
   };
 
-  goDeps = ./deps.json;
+  goDeps = ./deps.nix;
 }
diff --git a/pkgs/servers/nsq/deps.json b/pkgs/servers/nsq/deps.json
deleted file mode 100644
index c6a8392d919..00000000000
--- a/pkgs/servers/nsq/deps.json
+++ /dev/null
@@ -1,83 +0,0 @@
-[
-    {
-        "goPackagePath": "github.com/mreiferson/go-snappystream",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/mreiferson/go-snappystream",
-            "rev": "028eae7ab5c4c9e2d1cb4c4ca1e53259bbe7e504",
-            "sha256": "0jdd5whp74nvg35d9hzydsi3shnb1vrnd7shi9qz4wxap7gcrid6"
-        }
-    },
-    {
-        "goPackagePath": "github.com/bitly/go-nsq",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/bitly/go-nsq",
-            "rev": "22a8bd48c443ec23bb559675b6df8284bbbdab29",
-            "sha256": "06hrkwk84w8rshkanvfgmgbiml7n06ybv192dvibhwgk2wz2dl46"
-        }
-    },
-    {
-        "goPackagePath": "github.com/bitly/go-simplejson",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/bitly/go-simplejson",
-            "rev": "18db6e68d8fd9cbf2e8ebe4c81a78b96fd9bf05a",
-            "sha256": "0lj9cxyncchlw6p35j0yym5q5waiz0giw6ri41qdwm8y3dghwwiy"
-        }
-    },
-    {
-        "goPackagePath": "github.com/blang/semver",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/blang/semver",
-            "rev": "9bf7bff48b0388cb75991e58c6df7d13e982f1f2",
-            "sha256": "11sinbf942dpyc9wdpidkhmqn438cfp5n8x3xqnmq9aszkld9hy7"
-        }
-    },
-    {
-        "goPackagePath": "github.com/bmizerany/perks",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/bmizerany/perks",
-            "rev": "6cb9d9d729303ee2628580d9aec5db968da3a607",
-            "sha256": "0cdh84hmn21is6hvv6dy9qjdcg9w3l2k8avlk0881a8cqm09s90j"
-        }
-    },
-    {
-        "goPackagePath": "github.com/BurntSushi/toml",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/BurntSushi/toml",
-            "rev": "056c9bc7be7190eaa7715723883caffa5f8fa3e4",
-            "sha256": "0gkgkw04ndr5y7hrdy0r4v2drs5srwfcw2bs1gyas066hwl84xyw"
-        }
-    },
-    {
-        "goPackagePath": "github.com/bitly/go-hostpool",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/bitly/go-hostpool",
-            "rev": "d0e59c22a56e8dadfed24f74f452cea5a52722d2",
-            "sha256": "14ph12krn5zlg00vh9g6g08lkfjxnpw46nzadrfb718yl1hgyk3g"
-        }
-    },
-    {
-        "goPackagePath": "github.com/bitly/timer_metrics",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/bitly/timer_metrics",
-            "rev": "afad1794bb13e2a094720aeb27c088aa64564895",
-            "sha256": "1b717vkwj63qb5kan4b92kx4rg6253l5mdb3lxpxrspy56a6rl0c"
-        }
-    },
-    {
-        "goPackagePath": "github.com/mreiferson/go-options",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/mreiferson/go-options",
-            "rev": "7c174072188d0cfbe6f01bb457626abb22bdff52",
-            "sha256": "0ksyi2cb4k6r2fxamljg42qbz5hdcb9kv5i7y6cx4ajjy0xznwgm"
-        }
-    }
-]
diff --git a/pkgs/servers/nsq/deps.nix b/pkgs/servers/nsq/deps.nix
new file mode 100644
index 00000000000..751a18ca92d
--- /dev/null
+++ b/pkgs/servers/nsq/deps.nix
@@ -0,0 +1,83 @@
+[
+  {
+    goPackagePath = "github.com/mreiferson/go-snappystream";
+    fetch = {
+      type = "git";
+      url = "https://github.com/mreiferson/go-snappystream";
+      rev = "028eae7ab5c4c9e2d1cb4c4ca1e53259bbe7e504";
+      sha256 = "0jdd5whp74nvg35d9hzydsi3shnb1vrnd7shi9qz4wxap7gcrid6";
+    };
+  }
+  {
+    goPackagePath = "github.com/bitly/go-nsq";
+    fetch = {
+      type = "git";
+      url = "https://github.com/bitly/go-nsq";
+      rev = "22a8bd48c443ec23bb559675b6df8284bbbdab29";
+      sha256 = "06hrkwk84w8rshkanvfgmgbiml7n06ybv192dvibhwgk2wz2dl46";
+    };
+  }
+  {
+    goPackagePath = "github.com/bitly/go-simplejson";
+    fetch = {
+      type = "git";
+      url = "https://github.com/bitly/go-simplejson";
+      rev = "18db6e68d8fd9cbf2e8ebe4c81a78b96fd9bf05a";
+      sha256 = "0lj9cxyncchlw6p35j0yym5q5waiz0giw6ri41qdwm8y3dghwwiy";
+    };
+  }
+  {
+    goPackagePath = "github.com/blang/semver";
+    fetch = {
+      type = "git";
+      url = "https://github.com/blang/semver";
+      rev = "9bf7bff48b0388cb75991e58c6df7d13e982f1f2";
+      sha256 = "11sinbf942dpyc9wdpidkhmqn438cfp5n8x3xqnmq9aszkld9hy7";
+    };
+  }
+  {
+    goPackagePath = "github.com/bmizerany/perks";
+    fetch = {
+      type = "git";
+      url = "https://github.com/bmizerany/perks";
+      rev = "6cb9d9d729303ee2628580d9aec5db968da3a607";
+      sha256 = "0cdh84hmn21is6hvv6dy9qjdcg9w3l2k8avlk0881a8cqm09s90j";
+    };
+  }
+  {
+    goPackagePath = "github.com/BurntSushi/toml";
+    fetch = {
+      type = "git";
+      url = "https://github.com/BurntSushi/toml";
+      rev = "056c9bc7be7190eaa7715723883caffa5f8fa3e4";
+      sha256 = "0gkgkw04ndr5y7hrdy0r4v2drs5srwfcw2bs1gyas066hwl84xyw";
+    };
+  }
+  {
+    goPackagePath = "github.com/bitly/go-hostpool";
+    fetch = {
+      type = "git";
+      url = "https://github.com/bitly/go-hostpool";
+      rev = "d0e59c22a56e8dadfed24f74f452cea5a52722d2";
+      sha256 = "14ph12krn5zlg00vh9g6g08lkfjxnpw46nzadrfb718yl1hgyk3g";
+    };
+  }
+  {
+    goPackagePath = "github.com/bitly/timer_metrics";
+    fetch = {
+      type = "git";
+      url = "https://github.com/bitly/timer_metrics";
+      rev = "afad1794bb13e2a094720aeb27c088aa64564895";
+      sha256 = "1b717vkwj63qb5kan4b92kx4rg6253l5mdb3lxpxrspy56a6rl0c";
+    };
+  }
+  {
+    goPackagePath = "github.com/mreiferson/go-options";
+    fetch = {
+      type = "git";
+      url = "https://github.com/mreiferson/go-options";
+      rev = "7c174072188d0cfbe6f01bb457626abb22bdff52";
+      sha256 = "0ksyi2cb4k6r2fxamljg42qbz5hdcb9kv5i7y6cx4ajjy0xznwgm";
+    };
+  }
+]
diff --git a/pkgs/servers/oauth2_proxy/default.nix b/pkgs/servers/oauth2_proxy/default.nix
index 3e3bcea46a2..b58fc342ded 100644
--- a/pkgs/servers/oauth2_proxy/default.nix
+++ b/pkgs/servers/oauth2_proxy/default.nix
@@ -13,5 +13,5 @@ buildGoPackage rec {
     sha256 = "13f6kaq15f6ial9gqzrsx7i94jhd5j70js2k93qwxcw1vkh1b6si";
   };
 
-  goDeps = ./deps.json;
+  goDeps = ./deps.nix;
 }
diff --git a/pkgs/servers/oauth2_proxy/deps.json b/pkgs/servers/oauth2_proxy/deps.json
deleted file mode 100644
index 56f27b6b4e5..00000000000
--- a/pkgs/servers/oauth2_proxy/deps.json
+++ /dev/null
@@ -1,83 +0,0 @@
-[
-    {
-        "goPackagePath": "gopkg.in/fsnotify.v1",
-        "fetch": {
-            "type": "git",
-            "url": "https://gopkg.in/fsnotify.v1",
-            "rev": "96c060f6a6b7e0d6f75fddd10efeaca3e5d1bcb0",
-            "sha256": "1308z1by82fbymcra26wjzw7lpjy91kbpp2skmwqcq4q1iwwzvk2"
-        }
-    },
-    {
-        "goPackagePath": "golang.org/x/net",
-        "fetch": {
-            "type": "git",
-            "url": "https://go.googlesource.com/net",
-            "rev": "62ac18b461605b4be188bbc7300e9aa2bc836cd4",
-            "sha256": "0lwwvbbwbf3yshxkfhn6z20gd45dkvnmw2ms36diiy34krgy402p"
-        }
-    },
-    {
-        "goPackagePath": "github.com/bitly/go-simplejson",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/bitly/go-simplejson",
-            "rev": "18db6e68d8fd9cbf2e8ebe4c81a78b96fd9bf05a",
-            "sha256": "0lj9cxyncchlw6p35j0yym5q5waiz0giw6ri41qdwm8y3dghwwiy"
-        }
-    },
-    {
-        "goPackagePath": "github.com/BurntSushi/toml",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/BurntSushi/toml",
-            "rev": "056c9bc7be7190eaa7715723883caffa5f8fa3e4",
-            "sha256": "0gkgkw04ndr5y7hrdy0r4v2drs5srwfcw2bs1gyas066hwl84xyw"
-        }
-    },
-    {
-        "goPackagePath": "github.com/mreiferson/go-options",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/mreiferson/go-options",
-            "rev": "7c174072188d0cfbe6f01bb457626abb22bdff52",
-            "sha256": "0ksyi2cb4k6r2fxamljg42qbz5hdcb9kv5i7y6cx4ajjy0xznwgm"
-        }
-    },
-    {
-        "goPackagePath": "google.golang.org/api",
-        "fetch": {
-            "type": "git",
-            "url": "https://code.googlesource.com/google-api-go-client",
-            "rev": "a5c3e2a4792aff40e59840d9ecdff0542a202a80",
-            "sha256": "1kigddnbyrl9ddpj5rs8njvf1ck54ipi4q1282k0d6b3am5qfbj8"
-        }
-    },
-    {
-        "goPackagePath": "google.golang.org/cloud",
-        "fetch": {
-            "type": "git",
-            "url": "https://code.googlesource.com/gocloud",
-            "rev": "6335269abf9002cf5a84613c13cda6010842b834",
-            "sha256": "15xrqxna5ms0r634k3bfzyymn431dvqcjwbsap8ay60x371kzbwf"
-        }
-    },
-    {
-        "goPackagePath": "golang.org/x/oauth2",
-        "fetch": {
-            "type": "git",
-            "url": "https://go.googlesource.com/oauth2",
-            "rev": "397fe7649477ff2e8ced8fc0b2696f781e53745a",
-            "sha256": "0fza0l7iwh6llkq2yzqn7dxi138vab0da64lnghfj1p71fprjzn8"
-        }
-    },
-    {
-        "goPackagePath": "github.com/18F/hmacauth",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/18F/hmacauth",
-            "rev": "9232a6386b737d7d1e5c1c6e817aa48d5d8ee7cd",
-            "sha256": "056mcqrf2bv0g9gn2ixv19srk613h4sasl99w9375mpvmadb3pz1"
-        }
-    }
-]
diff --git a/pkgs/servers/oauth2_proxy/deps.nix b/pkgs/servers/oauth2_proxy/deps.nix
new file mode 100644
index 00000000000..37ddbbde64e
--- /dev/null
+++ b/pkgs/servers/oauth2_proxy/deps.nix
@@ -0,0 +1,83 @@
+[
+  {
+    goPackagePath = "gopkg.in/fsnotify.v1";
+    fetch = {
+      type = "git";
+      url = "https://gopkg.in/fsnotify.v1";
+      rev = "96c060f6a6b7e0d6f75fddd10efeaca3e5d1bcb0";
+      sha256 = "1308z1by82fbymcra26wjzw7lpjy91kbpp2skmwqcq4q1iwwzvk2";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/net";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/net";
+      rev = "62ac18b461605b4be188bbc7300e9aa2bc836cd4";
+      sha256 = "0lwwvbbwbf3yshxkfhn6z20gd45dkvnmw2ms36diiy34krgy402p";
+    };
+  }
+  {
+    goPackagePath = "github.com/bitly/go-simplejson";
+    fetch = {
+      type = "git";
+      url = "https://github.com/bitly/go-simplejson";
+      rev = "18db6e68d8fd9cbf2e8ebe4c81a78b96fd9bf05a";
+      sha256 = "0lj9cxyncchlw6p35j0yym5q5waiz0giw6ri41qdwm8y3dghwwiy";
+    };
+  }
+  {
+    goPackagePath = "github.com/BurntSushi/toml";
+    fetch = {
+      type = "git";
+      url = "https://github.com/BurntSushi/toml";
+      rev = "056c9bc7be7190eaa7715723883caffa5f8fa3e4";
+      sha256 = "0gkgkw04ndr5y7hrdy0r4v2drs5srwfcw2bs1gyas066hwl84xyw";
+    };
+  }
+  {
+    goPackagePath = "github.com/mreiferson/go-options";
+    fetch = {
+      type = "git";
+      url = "https://github.com/mreiferson/go-options";
+      rev = "7c174072188d0cfbe6f01bb457626abb22bdff52";
+      sha256 = "0ksyi2cb4k6r2fxamljg42qbz5hdcb9kv5i7y6cx4ajjy0xznwgm";
+    };
+  }
+  {
+    goPackagePath = "google.golang.org/api";
+    fetch = {
+      type = "git";
+      url = "https://code.googlesource.com/google-api-go-client";
+      rev = "a5c3e2a4792aff40e59840d9ecdff0542a202a80";
+      sha256 = "1kigddnbyrl9ddpj5rs8njvf1ck54ipi4q1282k0d6b3am5qfbj8";
+    };
+  }
+  {
+    goPackagePath = "google.golang.org/cloud";
+    fetch = {
+      type = "git";
+      url = "https://code.googlesource.com/gocloud";
+      rev = "6335269abf9002cf5a84613c13cda6010842b834";
+      sha256 = "15xrqxna5ms0r634k3bfzyymn431dvqcjwbsap8ay60x371kzbwf";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/oauth2";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/oauth2";
+      rev = "397fe7649477ff2e8ced8fc0b2696f781e53745a";
+      sha256 = "0fza0l7iwh6llkq2yzqn7dxi138vab0da64lnghfj1p71fprjzn8";
+    };
+  }
+  {
+    goPackagePath = "github.com/18F/hmacauth";
+    fetch = {
+      type = "git";
+      url = "https://github.com/18F/hmacauth";
+      rev = "9232a6386b737d7d1e5c1c6e817aa48d5d8ee7cd";
+      sha256 = "056mcqrf2bv0g9gn2ixv19srk613h4sasl99w9375mpvmadb3pz1";
+    };
+  }
+]
diff --git a/pkgs/servers/serf/default.nix b/pkgs/servers/serf/default.nix
index 4a37213846a..44c766d35d0 100644
--- a/pkgs/servers/serf/default.nix
+++ b/pkgs/servers/serf/default.nix
@@ -13,5 +13,5 @@ buildGoPackage rec {
     sha256 = "1h05h5xhaj27r1mh5zshnykax29lqjhfc0bx4v9swiwb873c24qk";
   };
 
-  goDeps = ./deps.json;
+  goDeps = ./deps.nix;
 }
diff --git a/pkgs/servers/serf/deps.json b/pkgs/servers/serf/deps.json
deleted file mode 100644
index ffd872c6287..00000000000
--- a/pkgs/servers/serf/deps.json
+++ /dev/null
@@ -1,137 +0,0 @@
-[
-    {
-        "goPackagePath": "golang.org/x/crypto",
-        "fetch": {
-            "type": "git",
-            "url": "https://go.googlesource.com/crypto",
-            "rev": "575fdbe86e5dd89229707ebec0575ce7d088a4a6",
-            "sha256": "1kgv1mkw9y404pk3lcwbs0vgl133mwyp294i18jg9hp10s5d56xa"
-        }
-    },
-    {
-        "goPackagePath": "github.com/miekg/dns",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/miekg/dns",
-            "rev": "7e024ce8ce18b21b475ac6baf8fa3c42536bf2fa",
-            "sha256": "0hlwb52lnnj3c6papjk9i5w5cjdw6r7c891v4xksnfvk1f9cy9kl"
-        }
-    },
-    {
-        "goPackagePath": "github.com/armon/go-metrics",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/armon/go-metrics",
-            "rev": "b2d95e5291cdbc26997d1301a5e467ecbb240e25",
-            "sha256": "1jvdf98jlbyzbb9w159nifvv8fihrcs66drnl8pilqdjpmkmyyck"
-        }
-    },
-    {
-        "goPackagePath": "github.com/mattn/go-isatty",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/mattn/go-isatty",
-            "rev": "ae0b1f8f8004be68d791a576e3d8e7648ab41449",
-            "sha256": "0qrcsh7j9mxcaspw8lfxh9hhflz55vj4aq1xy00v78301czq6jlj"
-        }
-    },
-    {
-        "goPackagePath": "github.com/hashicorp/logutils",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/hashicorp/logutils",
-            "rev": "0dc08b1671f34c4250ce212759ebd880f743d883",
-            "sha256": "0rynhjwvacv9ibl2k4fwz0xy71d583ac4p33gm20k9yldqnznc7r"
-        }
-    },
-    {
-        "goPackagePath": "github.com/armon/go-radix",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/armon/go-radix",
-            "rev": "fbd82e84e2b13651f3abc5ffd26b65ba71bc8f93",
-            "sha256": "16y64r1v054c2ln0bi5mrqq1cmvy6d6pnxk1glb8lw2g31ksa80c"
-        }
-    },
-    {
-        "goPackagePath": "github.com/hashicorp/go-syslog",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/hashicorp/go-syslog",
-            "rev": "42a2b573b664dbf281bd48c3cc12c086b17a39ba",
-            "sha256": "1j53m2wjyczm9m55znfycdvm4c8vfniqgk93dvzwy8vpj5gm6sb3"
-        }
-    },
-    {
-        "goPackagePath": "github.com/hashicorp/memberlist",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/hashicorp/memberlist",
-            "rev": "6025015f2dc659ca2c735112d37e753bda6e329d",
-            "sha256": "01s2gwnbgvwz4wshz9d4za0p12ji4fnapnlmz3jwfcmcwjpyqfb7"
-        }
-    },
-    {
-        "goPackagePath": "github.com/mitchellh/mapstructure",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/mitchellh/mapstructure",
-            "rev": "281073eb9eb092240d33ef253c404f1cca550309",
-            "sha256": "1zjx9fv29639sp1fn84rxs830z7gp7bs38yd5y1hl5adb8s5x1mh"
-        }
-    },
-    {
-        "goPackagePath": "github.com/armon/circbuf",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/armon/circbuf",
-            "rev": "f092b4f207b6e5cce0569056fba9e1a2735cb6cf",
-            "sha256": "06kwwdwa3hskdh6ws7clj1vim80dyc3ldim8k9y5qpd30x0avn5s"
-        }
-    },
-    {
-        "goPackagePath": "github.com/hashicorp/mdns",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/hashicorp/mdns",
-            "rev": "2b439d37011456df8ff83a70ffd1cd6046410113",
-            "sha256": "17zwk212zmyramnjylpvvrvbbsz0qb5crkhly6yiqkyll3qzpb96"
-        }
-    },
-    {
-        "goPackagePath": "github.com/mitchellh/cli",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/mitchellh/cli",
-            "rev": "8102d0ed5ea2709ade1243798785888175f6e415",
-            "sha256": "08mj1l94pww72jy34gk9a483hpic0rrackskfw13r3ycy997w7m2"
-        }
-    },
-    {
-        "goPackagePath": "github.com/ryanuber/columnize",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/ryanuber/columnize",
-            "rev": "44cb4788b2ec3c3d158dd3d1b50aba7d66f4b59a",
-            "sha256": "1qrqr76cw58x2hkjic6h88na5ihgvkmp8mqapj8kmjcjzdxkzhr9"
-        }
-    },
-    {
-        "goPackagePath": "github.com/hashicorp/go-msgpack",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/ugorji/go",
-            "rev": "03e33114d4d60a1f37150325e15f51b0fa6fc4f6",
-            "sha256": "01kdzgx23cgb4k867m1pvsw14hhdr9jf2frqy6i4j4221055m57v"
-        }
-    },
-    {
-        "goPackagePath": "github.com/hashicorp/go.net",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/hashicorp/go.net",
-            "rev": "104dcad90073cd8d1e6828b2af19185b60cf3e29",
-            "sha256": "0pfi09h4q6w2x833qxr8r609ml4kw1flqm265j752sb08sbf3zwf"
-        }
-    }
-]
diff --git a/pkgs/servers/serf/deps.nix b/pkgs/servers/serf/deps.nix
new file mode 100644
index 00000000000..bc5b960d147
--- /dev/null
+++ b/pkgs/servers/serf/deps.nix
@@ -0,0 +1,137 @@
+[
+  {
+    goPackagePath = "golang.org/x/crypto";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/crypto";
+      rev = "575fdbe86e5dd89229707ebec0575ce7d088a4a6";
+      sha256 = "1kgv1mkw9y404pk3lcwbs0vgl133mwyp294i18jg9hp10s5d56xa";
+    };
+  }
+  {
+    goPackagePath = "github.com/miekg/dns";
+    fetch = {
+      type = "git";
+      url = "https://github.com/miekg/dns";
+      rev = "7e024ce8ce18b21b475ac6baf8fa3c42536bf2fa";
+      sha256 = "0hlwb52lnnj3c6papjk9i5w5cjdw6r7c891v4xksnfvk1f9cy9kl";
+    };
+  }
+  {
+    goPackagePath = "github.com/armon/go-metrics";
+    fetch = {
+      type = "git";
+      url = "https://github.com/armon/go-metrics";
+      rev = "b2d95e5291cdbc26997d1301a5e467ecbb240e25";
+      sha256 = "1jvdf98jlbyzbb9w159nifvv8fihrcs66drnl8pilqdjpmkmyyck";
+    };
+  }
+  {
+    goPackagePath = "github.com/mattn/go-isatty";
+    fetch = {
+      type = "git";
+      url = "https://github.com/mattn/go-isatty";
+      rev = "ae0b1f8f8004be68d791a576e3d8e7648ab41449";
+      sha256 = "0qrcsh7j9mxcaspw8lfxh9hhflz55vj4aq1xy00v78301czq6jlj";
+    };
+  }
+  {
+    goPackagePath = "github.com/hashicorp/logutils";
+    fetch = {
+      type = "git";
+      url = "https://github.com/hashicorp/logutils";
+      rev = "0dc08b1671f34c4250ce212759ebd880f743d883";
+      sha256 = "0rynhjwvacv9ibl2k4fwz0xy71d583ac4p33gm20k9yldqnznc7r";
+    };
+  }
+  {
+    goPackagePath = "github.com/armon/go-radix";
+    fetch = {
+      type = "git";
+      url = "https://github.com/armon/go-radix";
+      rev = "fbd82e84e2b13651f3abc5ffd26b65ba71bc8f93";
+      sha256 = "16y64r1v054c2ln0bi5mrqq1cmvy6d6pnxk1glb8lw2g31ksa80c";
+    };
+  }
+  {
+    goPackagePath = "github.com/hashicorp/go-syslog";
+    fetch = {
+      type = "git";
+      url = "https://github.com/hashicorp/go-syslog";
+      rev = "42a2b573b664dbf281bd48c3cc12c086b17a39ba";
+      sha256 = "1j53m2wjyczm9m55znfycdvm4c8vfniqgk93dvzwy8vpj5gm6sb3";
+    };
+  }
+  {
+    goPackagePath = "github.com/hashicorp/memberlist";
+    fetch = {
+      type = "git";
+      url = "https://github.com/hashicorp/memberlist";
+      rev = "6025015f2dc659ca2c735112d37e753bda6e329d";
+      sha256 = "01s2gwnbgvwz4wshz9d4za0p12ji4fnapnlmz3jwfcmcwjpyqfb7";
+    };
+  }
+  {
+    goPackagePath = "github.com/mitchellh/mapstructure";
+    fetch = {
+      type = "git";
+      url = "https://github.com/mitchellh/mapstructure";
+      rev = "281073eb9eb092240d33ef253c404f1cca550309";
+      sha256 = "1zjx9fv29639sp1fn84rxs830z7gp7bs38yd5y1hl5adb8s5x1mh";
+    };
+  }
+  {
+    goPackagePath = "github.com/armon/circbuf";
+    fetch = {
+      type = "git";
+      url = "https://github.com/armon/circbuf";
+      rev = "f092b4f207b6e5cce0569056fba9e1a2735cb6cf";
+      sha256 = "06kwwdwa3hskdh6ws7clj1vim80dyc3ldim8k9y5qpd30x0avn5s";
+    };
+  }
+  {
+    goPackagePath = "github.com/hashicorp/mdns";
+    fetch = {
+      type = "git";
+      url = "https://github.com/hashicorp/mdns";
+      rev = "2b439d37011456df8ff83a70ffd1cd6046410113";
+      sha256 = "17zwk212zmyramnjylpvvrvbbsz0qb5crkhly6yiqkyll3qzpb96";
+    };
+  }
+  {
+    goPackagePath = "github.com/mitchellh/cli";
+    fetch = {
+      type = "git";
+      url = "https://github.com/mitchellh/cli";
+      rev = "8102d0ed5ea2709ade1243798785888175f6e415";
+      sha256 = "08mj1l94pww72jy34gk9a483hpic0rrackskfw13r3ycy997w7m2";
+    };
+  }
+  {
+    goPackagePath = "github.com/ryanuber/columnize";
+    fetch = {
+      type = "git";
+      url = "https://github.com/ryanuber/columnize";
+      rev = "44cb4788b2ec3c3d158dd3d1b50aba7d66f4b59a";
+      sha256 = "1qrqr76cw58x2hkjic6h88na5ihgvkmp8mqapj8kmjcjzdxkzhr9";
+    };
+  }
+  {
+    goPackagePath = "github.com/hashicorp/go-msgpack";
+    fetch = {
+      type = "git";
+      url = "https://github.com/ugorji/go";
+      rev = "03e33114d4d60a1f37150325e15f51b0fa6fc4f6";
+      sha256 = "01kdzgx23cgb4k867m1pvsw14hhdr9jf2frqy6i4j4221055m57v";
+    };
+  }
+  {
+    goPackagePath = "github.com/hashicorp/go.net";
+    fetch = {
+      type = "git";
+      url = "https://github.com/hashicorp/go.net";
+      rev = "104dcad90073cd8d1e6828b2af19185b60cf3e29";
+      sha256 = "0pfi09h4q6w2x833qxr8r609ml4kw1flqm265j752sb08sbf3zwf";
+    };
+  }
+]
diff --git a/pkgs/servers/skydns/default.nix b/pkgs/servers/skydns/default.nix
index 657352634ef..ccb174371e0 100644
--- a/pkgs/servers/skydns/default.nix
+++ b/pkgs/servers/skydns/default.nix
@@ -14,5 +14,5 @@ buildGoPackage rec {
     sha256 = "0i1iaif79cwnwm7pc8nxfa261cgl4zhm3p2a5a3smhy1ibgccpq7";
   };
 
-  goDeps = ./deps.json;
+  goDeps = ./deps.nix;
 }
diff --git a/pkgs/servers/skydns/deps.json b/pkgs/servers/skydns/deps.json
deleted file mode 100644
index 5706ab2fc95..00000000000
--- a/pkgs/servers/skydns/deps.json
+++ /dev/null
@@ -1,128 +0,0 @@
-[
-    {
-        "goPackagePath": "github.com/golang/protobuf",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/golang/protobuf",
-            "rev": "59b73b37c1e45995477aae817e4a653c89a858db",
-            "sha256": "1dx22jvhvj34ivpr7gw01fncg9yyx35mbpal4mpgnqka7ajmgjsa"
-        }
-    },
-    {
-        "goPackagePath": "github.com/coreos/go-systemd",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/coreos/go-systemd",
-            "rev": "a606a1e936df81b70d85448221c7b1c6d8a74ef1",
-            "sha256": "0fhan564swp982dnzzspb6jzfdl453489c0qavh65g3shy5x8x28"
-        }
-    },
-    {
-        "goPackagePath": "github.com/rcrowley/go-metrics",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/rcrowley/go-metrics",
-            "rev": "1ce93efbc8f9c568886b2ef85ce305b2217b3de3",
-            "sha256": "06gg72krlmd0z3zdq6s716blrga95pyj8dc2f2psfbknbkyrkfqa"
-        }
-    },
-    {
-        "goPackagePath": "github.com/prometheus/client_model",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/prometheus/client_model",
-            "rev": "fa8ad6fec33561be4280a8f0514318c79d7f6cb6",
-            "sha256": "11a7v1fjzhhwsl128znjcf5v7v6129xjgkdpym2lial4lac1dhm9"
-        }
-    },
-    {
-        "goPackagePath": "github.com/prometheus/common",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/prometheus/common",
-            "rev": "40456948a47496dc22168e6af39297a2f8fbf38c",
-            "sha256": "15700w18pifng0l2isa6v25y91r5rb7yfgljqw2g2gqrvac6sr5l"
-        }
-    },
-    {
-        "goPackagePath": "github.com/beorn7/perks",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/beorn7/perks",
-            "rev": "b965b613227fddccbfffe13eae360ed3fa822f8d",
-            "sha256": "1p8zsj4r0g61q922khfxpwxhdma2dx4xad1m5qx43mfn28kxngqk"
-        }
-    },
-    {
-        "goPackagePath": "github.com/coreos/go-etcd",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/coreos/go-etcd",
-            "rev": "9847b93751a5fbaf227b893d172cee0104ac6427",
-            "sha256": "1ihq01ayqzxvn6hca5j00vl189vi5lm78f0fy2wpk5mrm3xi01l4"
-        }
-    },
-    {
-        "goPackagePath": "github.com/matttproud/golang_protobuf_extensions",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/matttproud/golang_protobuf_extensions",
-            "rev": "fc2b8d3a73c4867e51861bbdd5ae3c1f0869dd6a",
-            "sha256": "0ajg41h6402big484drvm72wvid1af2sffw0qkzbmpy04lq68ahj"
-        }
-    },
-    {
-        "goPackagePath": "github.com/prometheus/client_golang",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/prometheus/client_golang",
-            "rev": "6dbab8106ed3ed77359ac85d9cf08e30290df864",
-            "sha256": "1i3g5h2ncdb8b67742kfpid7d0a1jas1pyicglbglwngfmzhpkna"
-        }
-    },
-    {
-        "goPackagePath": "github.com/stathat/go",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/stathat/go",
-            "rev": "91dfa3a59c5b233fef9a346a1460f6e2bc889d93",
-            "sha256": "105ql5v8r4hqcsq0ag7asdxqg9n7rvf83y1q1dj2nfjyn4manv6r"
-        }
-    },
-    {
-        "goPackagePath": "github.com/ugorji/go",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/ugorji/go",
-            "rev": "03e33114d4d60a1f37150325e15f51b0fa6fc4f6",
-            "sha256": "01kdzgx23cgb4k867m1pvsw14hhdr9jf2frqy6i4j4221055m57v"
-        }
-    },
-    {
-        "goPackagePath": "github.com/miekg/dns",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/miekg/dns",
-            "rev": "7e024ce8ce18b21b475ac6baf8fa3c42536bf2fa",
-            "sha256": "0hlwb52lnnj3c6papjk9i5w5cjdw6r7c891v4xksnfvk1f9cy9kl"
-        }
-    },
-    {
-        "goPackagePath": "github.com/prometheus/procfs",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/prometheus/procfs",
-            "rev": "c91d8eefde16bd047416409eb56353ea84a186e4",
-            "sha256": "0pj3gzw9b58l72w0rkpn03ayssglmqfmyxghhfad6mh0b49dvj3r"
-        }
-    },
-    {
-        "goPackagePath": "bitbucket.org/ww/goautoneg",
-        "fetch": {
-            "type": "hg",
-            "url": "bitbucket.org/ww/goautoneg",
-            "rev": "75cd24fc2f2c2a2088577d12123ddee5f54e0675",
-            "sha256": "19khhn5xhqv1yp7d6k987gh5w5rhrjnp4p0c6fyrd8z6lzz5h9qi"
-        }
-    }
-]
diff --git a/pkgs/servers/skydns/deps.nix b/pkgs/servers/skydns/deps.nix
new file mode 100644
index 00000000000..a4f4eb12045
--- /dev/null
+++ b/pkgs/servers/skydns/deps.nix
@@ -0,0 +1,128 @@
+[
+  {
+    goPackagePath = "github.com/golang/protobuf";
+    fetch = {
+      type = "git";
+      url = "https://github.com/golang/protobuf";
+      rev = "59b73b37c1e45995477aae817e4a653c89a858db";
+      sha256 = "1dx22jvhvj34ivpr7gw01fncg9yyx35mbpal4mpgnqka7ajmgjsa";
+    };
+  }
+  {
+    goPackagePath = "github.com/coreos/go-systemd";
+    fetch = {
+      type = "git";
+      url = "https://github.com/coreos/go-systemd";
+      rev = "a606a1e936df81b70d85448221c7b1c6d8a74ef1";
+      sha256 = "0fhan564swp982dnzzspb6jzfdl453489c0qavh65g3shy5x8x28";
+    };
+  }
+  {
+    goPackagePath = "github.com/rcrowley/go-metrics";
+    fetch = {
+      type = "git";
+      url = "https://github.com/rcrowley/go-metrics";
+      rev = "1ce93efbc8f9c568886b2ef85ce305b2217b3de3";
+      sha256 = "06gg72krlmd0z3zdq6s716blrga95pyj8dc2f2psfbknbkyrkfqa";
+    };
+  }
+  {
+    goPackagePath = "github.com/prometheus/client_model";
+    fetch = {
+      type = "git";
+      url = "https://github.com/prometheus/client_model";
+      rev = "fa8ad6fec33561be4280a8f0514318c79d7f6cb6";
+      sha256 = "11a7v1fjzhhwsl128znjcf5v7v6129xjgkdpym2lial4lac1dhm9";
+    };
+  }
+  {
+    goPackagePath = "github.com/prometheus/common";
+    fetch = {
+      type = "git";
+      url = "https://github.com/prometheus/common";
+      rev = "40456948a47496dc22168e6af39297a2f8fbf38c";
+      sha256 = "15700w18pifng0l2isa6v25y91r5rb7yfgljqw2g2gqrvac6sr5l";
+    };
+  }
+  {
+    goPackagePath = "github.com/beorn7/perks";
+    fetch = {
+      type = "git";
+      url = "https://github.com/beorn7/perks";
+      rev = "b965b613227fddccbfffe13eae360ed3fa822f8d";
+      sha256 = "1p8zsj4r0g61q922khfxpwxhdma2dx4xad1m5qx43mfn28kxngqk";
+    };
+  }
+  {
+    goPackagePath = "github.com/coreos/go-etcd";
+    fetch = {
+      type = "git";
+      url = "https://github.com/coreos/go-etcd";
+      rev = "9847b93751a5fbaf227b893d172cee0104ac6427";
+      sha256 = "1ihq01ayqzxvn6hca5j00vl189vi5lm78f0fy2wpk5mrm3xi01l4";
+    };
+  }
+  {
+    goPackagePath = "github.com/matttproud/golang_protobuf_extensions";
+    fetch = {
+      type = "git";
+      url = "https://github.com/matttproud/golang_protobuf_extensions";
+      rev = "fc2b8d3a73c4867e51861bbdd5ae3c1f0869dd6a";
+      sha256 = "0ajg41h6402big484drvm72wvid1af2sffw0qkzbmpy04lq68ahj";
+    };
+  }
+  {
+    goPackagePath = "github.com/prometheus/client_golang";
+    fetch = {
+      type = "git";
+      url = "https://github.com/prometheus/client_golang";
+      rev = "6dbab8106ed3ed77359ac85d9cf08e30290df864";
+      sha256 = "1i3g5h2ncdb8b67742kfpid7d0a1jas1pyicglbglwngfmzhpkna";
+    };
+  }
+  {
+    goPackagePath = "github.com/stathat/go";
+    fetch = {
+      type = "git";
+      url = "https://github.com/stathat/go";
+      rev = "91dfa3a59c5b233fef9a346a1460f6e2bc889d93";
+      sha256 = "105ql5v8r4hqcsq0ag7asdxqg9n7rvf83y1q1dj2nfjyn4manv6r";
+    };
+  }
+  {
+    goPackagePath = "github.com/ugorji/go";
+    fetch = {
+      type = "git";
+      url = "https://github.com/ugorji/go";
+      rev = "03e33114d4d60a1f37150325e15f51b0fa6fc4f6";
+      sha256 = "01kdzgx23cgb4k867m1pvsw14hhdr9jf2frqy6i4j4221055m57v";
+    };
+  }
+  {
+    goPackagePath = "github.com/miekg/dns";
+    fetch = {
+      type = "git";
+      url = "https://github.com/miekg/dns";
+      rev = "7e024ce8ce18b21b475ac6baf8fa3c42536bf2fa";
+      sha256 = "0hlwb52lnnj3c6papjk9i5w5cjdw6r7c891v4xksnfvk1f9cy9kl";
+    };
+  }
+  {
+    goPackagePath = "github.com/prometheus/procfs";
+    fetch = {
+      type = "git";
+      url = "https://github.com/prometheus/procfs";
+      rev = "c91d8eefde16bd047416409eb56353ea84a186e4";
+      sha256 = "0pj3gzw9b58l72w0rkpn03ayssglmqfmyxghhfad6mh0b49dvj3r";
+    };
+  }
+  {
+    goPackagePath = "bitbucket.org/ww/goautoneg";
+    fetch = {
+      type = "hg";
+      url = "bitbucket.org/ww/goautoneg";
+      rev = "75cd24fc2f2c2a2088577d12123ddee5f54e0675";
+      sha256 = "19khhn5xhqv1yp7d6k987gh5w5rhrjnp4p0c6fyrd8z6lzz5h9qi";
+    };
+  }
+]
diff --git a/pkgs/shells/elvish/default.nix b/pkgs/shells/elvish/default.nix
index 021d4f074ed..884f34dcf02 100644
--- a/pkgs/shells/elvish/default.nix
+++ b/pkgs/shells/elvish/default.nix
@@ -13,7 +13,7 @@ buildGoPackage rec {
     sha256 = "1xwhjbw0y6j5xy19hz39456l0v6vjg2icd7c1jx4h1cydk3yn39f";
   };
 
-  goDeps = ./deps.json;
+  goDeps = ./deps.nix;
 
   meta = with stdenv.lib; {
     description = "A Novel unix shell in go language";
diff --git a/pkgs/shells/elvish/deps.json b/pkgs/shells/elvish/deps.json
deleted file mode 100644
index d1a4ceebe99..00000000000
--- a/pkgs/shells/elvish/deps.json
+++ /dev/null
@@ -1,20 +0,0 @@
-[
-    {
-        "goPackagePath": "github.com/elves/getopt",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/elves/getopt",
-            "rev": "f91a7bf920995832d55a1182f26657bc975b9c24",
-            "sha256": "0wz5dz0iq1b1c2w30mmcgll9xidsrnlvs2906jw9szy0h67310za"
-        }
-    },
-    {
-        "goPackagePath": "github.com/mattn/go-sqlite3",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/mattn/go-sqlite3",
-            "rev": "b4142c444a8941d0d92b0b7103a24df9cd815e42",
-            "sha256": "0xq2y4am8dz9w9aaq24s1npg1sn8pf2gn4nki73ylz2fpjwq9vla"
-        }
-    }
-]
diff --git a/pkgs/shells/elvish/deps.nix b/pkgs/shells/elvish/deps.nix
new file mode 100644
index 00000000000..cff60bad0a9
--- /dev/null
+++ b/pkgs/shells/elvish/deps.nix
@@ -0,0 +1,20 @@
+[
+  {
+    goPackagePath = "github.com/elves/getopt";
+    fetch = {
+      type = "git";
+      url = "https://github.com/elves/getopt";
+      rev = "f91a7bf920995832d55a1182f26657bc975b9c24";
+      sha256 = "0wz5dz0iq1b1c2w30mmcgll9xidsrnlvs2906jw9szy0h67310za";
+    };
+  }
+  {
+    goPackagePath = "github.com/mattn/go-sqlite3";
+    fetch = {
+      type = "git";
+      url = "https://github.com/mattn/go-sqlite3";
+      rev = "b4142c444a8941d0d92b0b7103a24df9cd815e42";
+      sha256 = "0xq2y4am8dz9w9aaq24s1npg1sn8pf2gn4nki73ylz2fpjwq9vla";
+    };
+  }
+]
diff --git a/pkgs/shells/oh/default.nix b/pkgs/shells/oh/default.nix
index c6d3ad06df4..c118cea1172 100644
--- a/pkgs/shells/oh/default.nix
+++ b/pkgs/shells/oh/default.nix
@@ -13,5 +13,5 @@ buildGoPackage rec {
     sha256 = "0ajidzs0aisbw74nri9ks6sx6644nmwkisc9mvxm3f89zmnlsgwr";
   };
 
-  goDeps = ./deps.json;
+  goDeps = ./deps.nix;
 }
diff --git a/pkgs/shells/oh/deps.json b/pkgs/shells/oh/deps.json
deleted file mode 100644
index 5aabd0e6dba..00000000000
--- a/pkgs/shells/oh/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": "github.com/michaelmacinnis/adapted",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/michaelmacinnis/adapted",
-            "rev": "0dd5fa34d6f9d74c7c0deed1fc224f9a87e02978",
-            "sha256": "16n3a87m33pqx4qih713q3gw2j6ksj1q3ngjax6bpn5b11rqvikv"
-        }
-    },
-    {
-        "goPackagePath": "github.com/peterh/liner",
-        "fetch": {
-            "type": "git",
-            "url": "https://github.com/peterh/liner",
-            "rev": "ad1edfd30321d8f006ccf05f1e0524adeb943060",
-            "sha256": "0c24d9j1gnq7r982h1l2isp3d37379qw155hr8ihx9i2mhpfz317"
-        }
-    }
-]
diff --git a/pkgs/shells/oh/deps.nix b/pkgs/shells/oh/deps.nix
new file mode 100644
index 00000000000..b4b98f10c3a
--- /dev/null
+++ b/pkgs/shells/oh/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 = "github.com/michaelmacinnis/adapted";
+    fetch = {
+      type = "git";
+      url = "https://github.com/michaelmacinnis/adapted";
+      rev = "0dd5fa34d6f9d74c7c0deed1fc224f9a87e02978";
+      sha256 = "16n3a87m33pqx4qih713q3gw2j6ksj1q3ngjax6bpn5b11rqvikv";
+    };
+  }
+  {
+    goPackagePath = "github.com/peterh/liner";
+    fetch = {
+      type = "git";
+      url = "https://github.com/peterh/liner";
+      rev = "ad1edfd30321d8f006ccf05f1e0524adeb943060";
+      sha256 = "0c24d9j1gnq7r982h1l2isp3d37379qw155hr8ihx9i2mhpfz317";
+    };
+  }
+]
diff --git a/pkgs/tools/X11/go-sct/default.nix b/pkgs/tools/X11/go-sct/default.nix
index 197a7b80af3..de51e1ad25f 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 227db99338e..00000000000
--- 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 00000000000..f808858e091
--- /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/admin/lxd/default.nix b/pkgs/tools/admin/lxd/default.nix
index be7d534b3d6..40647f73379 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 1a0e2d3245f..00000000000
--- 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 00000000000..7325100bb3a
--- /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/filesystems/go-mtpfs/default.nix b/pkgs/tools/filesystems/go-mtpfs/default.nix
index 0bb92f14e15..028aef6024b 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 9960293f090..00000000000
--- 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 00000000000..4bba3f23739
--- /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/misc/fzf/default.nix b/pkgs/tools/misc/fzf/default.nix
index 3eaf5ae5d1b..60a7007db19 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 a856d2d5fa8..00000000000
--- 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 00000000000..98530853832
--- /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 6e3fe1223fc..7c944ceaab3 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 a51c1725353..00000000000
--- 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 00000000000..cf577a30354
--- /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/i3cat/default.nix b/pkgs/tools/misc/i3cat/default.nix
index 1cda3149bb4..52e7793d974 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 0db944a8361..00000000000
--- 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 00000000000..01e85cbd824
--- /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/mongodb-tools/default.nix b/pkgs/tools/misc/mongodb-tools/default.nix
index 113b8b2b4ce..f67fd383f18 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 c1cc7f96f75..00000000000
--- 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 00000000000..437dcd64937
--- /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/upower-notify/default.nix b/pkgs/tools/misc/upower-notify/default.nix
index d02e2865c8f..ff8e7873839 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 96db25d0c7d..00000000000
--- 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 00000000000..8a729857b81
--- /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/networking/ngrok/default.nix b/pkgs/tools/networking/ngrok/default.nix
index 9644fa06972..e354ad223b8 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 943967b7342..00000000000
--- 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 00000000000..1db3c3e6519
--- /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/s3gof3r/default.nix b/pkgs/tools/networking/s3gof3r/default.nix
index 6231d5005dc..a13d6599ffb 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 e73edde322f..00000000000
--- 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 00000000000..49c5d600be2
--- /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/package-management/gx/default.nix b/pkgs/tools/package-management/gx/default.nix
index 89d795c8e50..b879ef002b1 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 3dd8e8f6ab3..00000000000
--- 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 00000000000..19372f807c2
--- /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 912c870c27b..877d5c6540a 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/security/hologram/default.nix b/pkgs/tools/security/hologram/default.nix
index 5e8d260d693..e7673cf5842 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 3d40bfd2cee..00000000000
--- 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 00000000000..2c4cdbe84f0
--- /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/system/confd/default.nix b/pkgs/tools/system/confd/default.nix
index 5da87f4ce46..ebe654d946e 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 407870efdaa..00000000000
--- 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 00000000000..74467ddf9cc
--- /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/text/platinum-searcher/default.nix b/pkgs/tools/text/platinum-searcher/default.nix
index 21a49d493aa..502af44262b 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 5578478eb4c..00000000000
--- 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 00000000000..da3f3ff1b8a
--- /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 9a93b64e369..42a2ab852e1 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 3869e6e5ca9..00000000000
--- 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 00000000000..038555fa3ca
--- /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";
+    };
+  }
+]