about summary refs log tree commit diff
path: root/pkgs/tools
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/tools')
-rw-r--r--pkgs/tools/X11/focus/default.nix34
-rw-r--r--pkgs/tools/X11/pmenu/default.nix60
-rw-r--r--pkgs/tools/admin/aliyun-cli/default.nix6
-rw-r--r--pkgs/tools/admin/boulder/default.nix53
-rw-r--r--pkgs/tools/admin/lxd/default.nix7
-rw-r--r--pkgs/tools/admin/nomachine-client/default.nix8
-rw-r--r--pkgs/tools/admin/trinsic-cli/default.nix4
-rw-r--r--pkgs/tools/backup/borgmatic/default.nix4
-rw-r--r--pkgs/tools/backup/dar/default.nix4
-rw-r--r--pkgs/tools/backup/duplicity/default.nix1
-rw-r--r--pkgs/tools/backup/zfsbackup/default.nix26
-rw-r--r--pkgs/tools/backup/zfsbackup/deps.nix1326
-rw-r--r--pkgs/tools/bluetooth/blueman/default.nix4
-rw-r--r--pkgs/tools/filesystems/bindfs/default.nix4
-rw-r--r--pkgs/tools/filesystems/gcsfuse/default.nix16
-rw-r--r--pkgs/tools/filesystems/httm/default.nix6
-rw-r--r--pkgs/tools/games/minecraft/packwiz/default.nix6
-rw-r--r--pkgs/tools/inputmethods/uim/default.nix18
-rw-r--r--pkgs/tools/misc/antimicrox/default.nix4
-rw-r--r--pkgs/tools/misc/chafa/default.nix4
-rw-r--r--pkgs/tools/misc/chezmoi/default.nix6
-rw-r--r--pkgs/tools/misc/dateutils/default.nix4
-rw-r--r--pkgs/tools/misc/diffoscope/default.nix4
-rw-r--r--pkgs/tools/misc/dsq/default.nix4
-rw-r--r--pkgs/tools/misc/dterm/default.nix27
-rw-r--r--pkgs/tools/misc/dua/default.nix6
-rw-r--r--pkgs/tools/misc/fend/default.nix6
-rw-r--r--pkgs/tools/misc/flameshot/default.nix4
-rw-r--r--pkgs/tools/misc/qjoypad/default.nix36
-rw-r--r--pkgs/tools/misc/tmux/default.nix6
-rw-r--r--pkgs/tools/misc/youtube-dl/default.nix18
-rw-r--r--pkgs/tools/networking/brook/default.nix6
-rw-r--r--pkgs/tools/networking/clash/default.nix6
-rw-r--r--pkgs/tools/networking/mu/default.nix69
-rw-r--r--pkgs/tools/networking/networkmanager/default.nix16
-rw-r--r--pkgs/tools/networking/offlineimap/default.nix1
-rw-r--r--pkgs/tools/networking/routedns/default.nix29
-rw-r--r--pkgs/tools/networking/vegeta/default.nix37
-rw-r--r--pkgs/tools/networking/vegeta/deps.nix255
-rw-r--r--pkgs/tools/networking/waitron/default.nix33
-rw-r--r--pkgs/tools/networking/waitron/deps.nix57
-rw-r--r--pkgs/tools/nix/alejandra/default.nix6
-rw-r--r--pkgs/tools/nix/nar-serve/default.nix6
-rw-r--r--pkgs/tools/nix/nixel/default.nix36
-rw-r--r--pkgs/tools/package-management/appimagekit/default.nix1
-rw-r--r--pkgs/tools/package-management/cargo-about/default.nix31
-rw-r--r--pkgs/tools/package-management/cargo-about/zstd-pkg-config.patch39
-rw-r--r--pkgs/tools/package-management/cargo-audit/default.nix46
-rw-r--r--pkgs/tools/package-management/cargo-deb/default.nix49
-rw-r--r--pkgs/tools/package-management/cargo-deps/default.nix20
-rw-r--r--pkgs/tools/package-management/cargo-download/Cargo.nix675
-rw-r--r--pkgs/tools/package-management/cargo-download/crates-io.nix5289
-rw-r--r--pkgs/tools/package-management/cargo-download/default.nix14
-rw-r--r--pkgs/tools/package-management/cargo-edit/default.nix41
-rw-r--r--pkgs/tools/package-management/cargo-graph/default.nix22
-rw-r--r--pkgs/tools/package-management/cargo-kcov/default.nix35
-rw-r--r--pkgs/tools/package-management/cargo-license/default.nix20
-rw-r--r--pkgs/tools/package-management/cargo-outdated/default.nix38
-rw-r--r--pkgs/tools/package-management/cargo-release/default.nix27
-rw-r--r--pkgs/tools/package-management/cargo-update/default.nix49
-rw-r--r--pkgs/tools/package-management/micromamba/default.nix2
-rw-r--r--pkgs/tools/security/certstrap/default.nix24
-rw-r--r--pkgs/tools/security/fail2ban/default.nix6
-rw-r--r--pkgs/tools/security/himitsu-firefox/default.nix46
-rw-r--r--pkgs/tools/security/himitsu/default.nix34
-rw-r--r--pkgs/tools/security/metasploit/Gemfile2
-rw-r--r--pkgs/tools/security/metasploit/Gemfile.lock26
-rw-r--r--pkgs/tools/security/metasploit/default.nix4
-rw-r--r--pkgs/tools/security/metasploit/gemset.nix38
-rw-r--r--pkgs/tools/security/regpg/default.nix52
-rw-r--r--pkgs/tools/security/rekor/default.nix6
-rw-r--r--pkgs/tools/security/schleuder/Gemfile3
-rw-r--r--pkgs/tools/security/schleuder/Gemfile.lock85
-rw-r--r--pkgs/tools/security/schleuder/cli/Gemfile4
-rw-r--r--pkgs/tools/security/schleuder/cli/Gemfile.lock21
-rw-r--r--pkgs/tools/security/schleuder/cli/default.nix34
-rw-r--r--pkgs/tools/security/schleuder/cli/gemset.nix25
-rw-r--r--pkgs/tools/security/schleuder/default.nix38
-rw-r--r--pkgs/tools/security/schleuder/gemset.nix316
-rw-r--r--pkgs/tools/security/sslscan/default.nix4
-rw-r--r--pkgs/tools/system/btop/default.nix4
-rw-r--r--pkgs/tools/system/openipmi/default.nix2
-rw-r--r--pkgs/tools/system/smartmontools/default.nix10
-rw-r--r--pkgs/tools/text/dos2unix/default.nix4
-rw-r--r--pkgs/tools/text/mdbook/default.nix6
-rw-r--r--pkgs/tools/text/nkf/default.nix11
-rw-r--r--pkgs/tools/text/poedit/default.nix8
-rw-r--r--pkgs/tools/video/rtmpdump/default.nix6
-rw-r--r--pkgs/tools/x11/xmcp/default.nix33
89 files changed, 1214 insertions, 8309 deletions
diff --git a/pkgs/tools/X11/focus/default.nix b/pkgs/tools/X11/focus/default.nix
new file mode 100644
index 0000000000000..20c7e2e25d90a
--- /dev/null
+++ b/pkgs/tools/X11/focus/default.nix
@@ -0,0 +1,34 @@
+{ lib
+, stdenv
+, fetchFromGitHub
+, libX11
+, libXinerama
+}:
+
+stdenv.mkDerivation rec {
+  pname = "focus";
+  version = "unstable-2021-02-23";
+
+  src = fetchFromGitHub {
+    owner = "phillbush";
+    repo = "focus";
+    rev = "fed2fdbd3f73b192882d97aeb5b1cea681bb7d85";
+    sha256 = "sha256-IDiUXindzv5Ng5oCTyUlj2il/2kLvXG4YhgiYp7ZebQ=";
+  };
+
+  buildInputs = [ libX11 libXinerama ];
+
+  makeFlags = [ "PREFIX=\${out}" ];
+
+  meta = with lib; {
+    description = "Focus window, workspace or monitor by direction or cycle through them";
+    longDescription = ''
+      A collection of utilities that change the focus of windows, workspaces or
+      monitors.
+    '';
+    homepage = "https://github.com/phillbush/focus";
+    license = licenses.publicDomain;
+    maintainers = with maintainers; [ azahi ];
+    platforms = platforms.unix;
+  };
+}
diff --git a/pkgs/tools/X11/pmenu/default.nix b/pkgs/tools/X11/pmenu/default.nix
new file mode 100644
index 0000000000000..7de509a299c58
--- /dev/null
+++ b/pkgs/tools/X11/pmenu/default.nix
@@ -0,0 +1,60 @@
+{ lib
+, stdenv
+, fetchFromGitHub
+, writeText
+, fontconfig
+, imlib2
+, libX11
+, libXext
+, libXft
+, libXinerama
+, libXrender
+, conf ? null
+}:
+
+stdenv.mkDerivation rec {
+  pname = "pmenu";
+  version = "3.0.1";
+
+  src = fetchFromGitHub {
+    owner = "phillbush";
+    repo = "pmenu";
+    rev = "v${version}";
+    sha256 = "sha256-xeOiJEOPz5QEMlWP6bWhTjmj4tfNqh3rsEVmnKvrKuM=";
+  };
+
+  buildInputs = [
+    fontconfig
+    imlib2
+    libX11
+    libXext
+    libXft
+    libXinerama
+    libXrender
+  ];
+
+  postPatch = let
+      configFile =
+        if lib.isDerivation conf || builtins.isPath conf
+        then conf else writeText "config.h" conf;
+    in
+    lib.optionalString (conf != null) "mv ${configFile} config.h";
+
+  makeFlags = [
+    "INSTALL=install"
+    "PREFIX=\${out}"
+  ];
+
+  meta = with lib; {
+    description = "A pie-menu tool";
+    longDescription = ''
+      πmenu is a pie menu utility for X. πmenu receives a menu specification in
+      stdin, shows a menu for the user to select one of the options, and outputs
+      the option selected to stdout.
+    '';
+    homepage = "https://github.com/phillbush/pmenu";
+    license = licenses.mit;
+    maintainers = with maintainers; [ azahi ];
+    platforms = platforms.unix;
+  };
+}
diff --git a/pkgs/tools/admin/aliyun-cli/default.nix b/pkgs/tools/admin/aliyun-cli/default.nix
index e2359bd5e117a..b18b8a82088ee 100644
--- a/pkgs/tools/admin/aliyun-cli/default.nix
+++ b/pkgs/tools/admin/aliyun-cli/default.nix
@@ -2,17 +2,17 @@
 
 buildGoModule rec {
   pname = "aliyun-cli";
-  version = "3.0.121";
+  version = "3.0.123";
 
   src = fetchFromGitHub {
     rev = "v${version}";
     owner = "aliyun";
     repo = pname;
     fetchSubmodules = true;
-    sha256 = "sha256-1D1JZZ/KMC4oZRaYvWpUazTk7llvX5WHPBxWEGCiKrI=";
+    sha256 = "sha256-68u31s7SsRRT9OQpTqlhAs5Dx+ggbTTSeKYBByiqn6g=";
   };
 
-  vendorSha256 = "sha256-f3GXkAvTe8rPFWCR5TM4mDK/VOQWt2lrZrfJ/Wvw8Uc=";
+  vendorSha256 = "sha256-X5r89aI7UdVlzEJi8zaOzwTETwb+XH8dKO6rVe//FNs=";
 
   subPackages = [ "main" ];
 
diff --git a/pkgs/tools/admin/boulder/default.nix b/pkgs/tools/admin/boulder/default.nix
index 706ac84afb330..6de6ae6c02022 100644
--- a/pkgs/tools/admin/boulder/default.nix
+++ b/pkgs/tools/admin/boulder/default.nix
@@ -1,30 +1,51 @@
-{ buildGoPackage
-, libtool
+{ lib
+, buildGoModule
 , fetchFromGitHub
-, lib
 }:
 
-buildGoPackage rec{
-
+buildGoModule rec {
   pname = "boulder";
-  version = "release-2019-10-13";
-
-  goPackagePath = "github.com/letsencrypt/boulder";
-
-  buildInputs = [ libtool ];
+  version = "release-2022-05-31";
+  rev = "99dcb9a5b31be576a55e33184581c942421bc172";
 
   src = fetchFromGitHub {
     owner = "letsencrypt";
     repo = "boulder";
     rev = version;
-    sha256 = "0kis23dnjja6jp192rjpv2m9m2zmzfwhs93440nxg354k6fp8jdg";
+    sha256 = "sha256-x1Vf8agwVTgSkDVEdAnG3div+MzRsMi96jKJRc2s8Ks=";
   };
 
-  meta = {
+  vendorSha256 = null;
+
+  subPackages = [ "cmd/boulder" ];
+
+  ldflags = with lib;
+    mapAttrsToList (n: v: ''"-X github.com/letsencrypt/boulder/core.Build${n}=${v}"'') {
+      ID = substring 0 8 rev;
+      Host = "nixbld@localhost";
+      Time = "Thu  1 Jan 00:00:00 UTC 1970";
+    };
+
+  postInstall = ''
+    for i in $($out/bin/boulder --list); do
+      ln -s $out/bin/boulder $out/bin/$i
+    done
+  '';
+
+  # There are no tests for cmd/boulder.
+  doCheck = false;
+
+  meta = with lib; {
     homepage = "https://github.com/letsencrypt/boulder";
-    description = "An ACME-based CA, written in Go";
-    license = [ lib.licenses.mpl20 ];
-    maintainers = [ ];
+    description = "An ACME-based certificate authority, written in Go";
+    longDescription = ''
+      This is an implementation of an ACME-based CA. The ACME protocol allows
+      the CA to automatically verify that an applicant for a certificate
+      actually controls an identifier, and allows domain holders to issue and
+      revoke certificates for their domains. Boulder is the software that runs
+      Let's Encrypt.
+    '';
+    license = licenses.mpl20;
+    maintainers = with maintainers; [ azahi ];
   };
-
 }
diff --git a/pkgs/tools/admin/lxd/default.nix b/pkgs/tools/admin/lxd/default.nix
index 5198f79a7f188..d664cdd50860d 100644
--- a/pkgs/tools/admin/lxd/default.nix
+++ b/pkgs/tools/admin/lxd/default.nix
@@ -1,4 +1,4 @@
-{ lib, hwdata, pkg-config, lxc, buildGo118Package, fetchurl, fetchpatch
+{ lib, hwdata, pkg-config, lxc, buildGo118Package, fetchurl
 , makeWrapper, acl, rsync, gnutar, xz, btrfs-progs, gzip, dnsmasq, attr
 , squashfsTools, iproute2, iptables, libcap
 , dqlite, raft-canonical, sqlite-replication, udev
@@ -11,7 +11,7 @@
 
 buildGo118Package rec {
   pname = "lxd";
-  version = "5.2";
+  version = "5.3";
 
   goPackagePath = "github.com/lxc/lxd";
 
@@ -20,7 +20,7 @@ buildGo118Package rec {
       "https://linuxcontainers.org/downloads/lxd/lxd-${version}.tar.gz"
       "https://github.com/lxc/lxd/releases/download/lxd-${version}/lxd-${version}.tar.gz"
     ];
-    sha256 = "sha256-4i0rNKGEjTOyCAsrHII1WvttNv3+SeZ/RLN0ntvALkw=";
+    sha256 = "sha256-DRdKCfp0nL3lg5O/Wm7vX2grO/DBuyhHRi85XI5laZU=";
   };
 
   postPatch = ''
@@ -60,6 +60,7 @@ buildGo118Package rec {
   meta = with lib; {
     description = "Daemon based on liblxc offering a REST API to manage containers";
     homepage = "https://linuxcontainers.org/lxd/";
+    changelog = "https://github.com/lxc/lxd/releases/tag/lxd-${version}";
     license = licenses.asl20;
     maintainers = with maintainers; [ fpletz marsam ];
     platforms = platforms.linux;
diff --git a/pkgs/tools/admin/nomachine-client/default.nix b/pkgs/tools/admin/nomachine-client/default.nix
index 7e8ff1d087575..d0ed40c7d059d 100644
--- a/pkgs/tools/admin/nomachine-client/default.nix
+++ b/pkgs/tools/admin/nomachine-client/default.nix
@@ -1,8 +1,8 @@
 { lib, stdenv, file, fetchurl, makeWrapper,
   autoPatchelfHook, jsoncpp, libpulseaudio }:
 let
-  versionMajor = "7.9";
-  versionMinor = "2";
+  versionMajor = "7.10";
+  versionMinor = "1";
   versionBuild_x86_64 = "1";
   versionBuild_i686 = "1";
 in
@@ -14,12 +14,12 @@ in
       if stdenv.hostPlatform.system == "x86_64-linux" then
         fetchurl {
           url = "https://download.nomachine.com/download/${versionMajor}/Linux/nomachine_${version}_${versionBuild_x86_64}_x86_64.tar.gz";
-          sha256 = "sha256-Gsi0Hj6cfpxzr0zbWfsq0ZJvCPATQn9YvHbx0Cziia4=";
+          sha256 = "sha256-alClFaNbQ76r8LukbygesWWXA5rx6VEzxK+bY5tOfO0=";
         }
       else if stdenv.hostPlatform.system == "i686-linux" then
         fetchurl {
           url = "https://download.nomachine.com/download/${versionMajor}/Linux/nomachine_${version}_${versionBuild_i686}_i686.tar.gz";
-          sha256 = "sha256-zmXOLzFePAD+oH00bAkNsEFviQwkjjqC/gAv87E1qX4=";
+          sha256 = "sha256-UDvrjb/2rXvSvpiA+UwiVi4YyXhFLNiEtrszqjAPGXc=";
         }
       else
         throw "NoMachine client is not supported on ${stdenv.hostPlatform.system}";
diff --git a/pkgs/tools/admin/trinsic-cli/default.nix b/pkgs/tools/admin/trinsic-cli/default.nix
index d6e6d6f100c56..907516ce3655b 100644
--- a/pkgs/tools/admin/trinsic-cli/default.nix
+++ b/pkgs/tools/admin/trinsic-cli/default.nix
@@ -2,11 +2,11 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "trinsic-cli";
-  version = "1.4.0";
+  version = "1.5.0";
 
   src = fetchurl {
     url = "https://github.com/trinsic-id/sdk/releases/download/v${version}/trinsic-cli-vendor-${version}.tar.gz";
-    sha256 = "sha256-Dxmjbd1Q2JNeET22Fte7bygd+oH3ZfovRTJh5xforuw=";
+    sha256 = "sha256-Z9orGhxbu/ehyaYhY35lYWcZQWNVk+zLSoqwAZwnpLY=";
   };
 
   cargoVendorDir = "vendor";
diff --git a/pkgs/tools/backup/borgmatic/default.nix b/pkgs/tools/backup/borgmatic/default.nix
index 904e64704c90a..70ca704831e68 100644
--- a/pkgs/tools/backup/borgmatic/default.nix
+++ b/pkgs/tools/backup/borgmatic/default.nix
@@ -2,11 +2,11 @@
 
 python3Packages.buildPythonApplication rec {
   pname = "borgmatic";
-  version = "1.5.18";
+  version = "1.6.3";
 
   src = python3Packages.fetchPypi {
     inherit pname version;
-    sha256 = "sha256-dX1U1zza8zMhDiTLE+DgtN6RLRciLks4NDOukpKH/po=";
+    sha256 = "sha256-CLScfmv0Jp4nfKAQvaq3XdYxNl9pDfEi5hz1ybikWDc=";
   };
 
   checkInputs = with python3Packages; [ flexmock pytestCheckHook pytest-cov ];
diff --git a/pkgs/tools/backup/dar/default.nix b/pkgs/tools/backup/dar/default.nix
index 92642973d45b3..f4f2a2630098e 100644
--- a/pkgs/tools/backup/dar/default.nix
+++ b/pkgs/tools/backup/dar/default.nix
@@ -9,12 +9,12 @@
 with lib;
 
 stdenv.mkDerivation rec {
-  version = "2.7.5";
+  version = "2.7.6";
   pname = "dar";
 
   src = fetchurl {
     url = "mirror://sourceforge/dar/${pname}-${version}.tar.gz";
-    sha256 = "sha256-lfpJOomadV/oTJsOloH1rYF5Wy3kVr+EBUvqZ+xaCWY=";
+    sha256 = "sha256-PV5ESJE1B2gQnX6QUeJgOb3rkG3jApTn4NcRBbh9bao=";
   };
 
   outputs = [ "out" "dev" ];
diff --git a/pkgs/tools/backup/duplicity/default.nix b/pkgs/tools/backup/duplicity/default.nix
index 95e29686f24e6..46f841c8f5b3b 100644
--- a/pkgs/tools/backup/duplicity/default.nix
+++ b/pkgs/tools/backup/duplicity/default.nix
@@ -70,7 +70,6 @@ pythonPackages.buildPythonApplication rec {
 
   pythonPath = with pythonPackages; [
     b2sdk
-    boto
     boto3
     cffi
     cryptography
diff --git a/pkgs/tools/backup/zfsbackup/default.nix b/pkgs/tools/backup/zfsbackup/default.nix
index ff47ce47edef1..332ad619a431d 100644
--- a/pkgs/tools/backup/zfsbackup/default.nix
+++ b/pkgs/tools/backup/zfsbackup/default.nix
@@ -1,26 +1,34 @@
-{ lib, buildGoPackage, fetchFromGitHub }:
+{ lib
+, buildGoModule
+, fetchFromGitHub
+, zfs
+}:
 
-buildGoPackage rec {
+buildGoModule rec {
   pname = "zfsbackup";
-  version = "unstable-2020-09-30";
-  rev = "092f80846b23e02f99d2aa72d9d889eabfdcb053";
-
-  goPackagePath = "github.com/someone1/zfsbackup-go";
+  version = "unstable-2021-05-26";
+  rev = "2d4534b920d3c57552667e1c6da9978b3a9278f0";
 
   src = fetchFromGitHub {
     owner = "someone1";
     repo = "zfsbackup-go";
     inherit rev;
-    sha256 = "1xiacaf4r9jkx0m8wjfis14cq622yhljldwkflh9ni3khax7dlgi";
+    sha256 = "sha256-slVwXXGLvq+eAlqzD8p1fnc17CGUBY0Z68SURBBuf2k=";
   };
 
-  goDeps = ./deps.nix;
+  vendorSha256 = "sha256-jpxp8RKDBrkBBaY89QnKYGWFI/DUURUVX8cPJ/qoLrg=";
+
+  ldflags = [ "-w" "-s" ];
+
+  # Tests require loading the zfs kernel module.
+  doCheck = false;
 
   meta = with lib; {
     description = "Backup ZFS snapshots to cloud storage such as Google, Amazon, Azure, etc";
     homepage = "https://github.com/someone1/zfsbackup-go";
     license = licenses.mit;
-    maintainers = [ maintainers.xfix ];
+    maintainers = with maintainers; [ xfix ];
+    platforms = platforms.linux;
     mainProgram = "zfsbackup-go";
   };
 }
diff --git a/pkgs/tools/backup/zfsbackup/deps.nix b/pkgs/tools/backup/zfsbackup/deps.nix
deleted file mode 100644
index 28be9fa141cf9..0000000000000
--- a/pkgs/tools/backup/zfsbackup/deps.nix
+++ /dev/null
@@ -1,1326 +0,0 @@
-# file generated from go.mod using vgo2nix (https://github.com/adisbladis/vgo2nix)
-[
-  {
-    goPackagePath = "cloud.google.com/go";
-    fetch = {
-      type = "git";
-      url = "https://github.com/googleapis/google-cloud-go";
-      rev = "v0.57.0";
-      sha256 = "0lcq68h0x56qb14yx2df584ad0g9s1s19py813dy9nzqp0bmjig8";
-    };
-  }
-  {
-    goPackagePath = "dmitri.shuralyov.com/gpu/mtl";
-    fetch = {
-      type = "git";
-      url = "https://dmitri.shuralyov.com/gpu/mtl";
-      rev = "666a987793e9";
-      sha256 = "1isd03hgiwcf2ld1rlp0plrnfz7r4i7c5q4kb6hkcd22axnmrv0z";
-    };
-  }
-  {
-    goPackagePath = "github.com/Azure/azure-pipeline-go";
-    fetch = {
-      type = "git";
-      url = "https://github.com/Azure/azure-pipeline-go";
-      rev = "v0.2.2";
-      sha256 = "1agn2nzmm1dkwggm4w7h4bnrav4n5jrl0vqbqy2s49vqlr8zirn6";
-    };
-  }
-  {
-    goPackagePath = "github.com/Azure/azure-sdk-for-go";
-    fetch = {
-      type = "git";
-      url = "https://github.com/Azure/azure-sdk-for-go";
-      rev = "v42.3.0";
-      sha256 = "1nqxpifrr8n17irkfzhx253b17cwd15x4vfqxx80l5y7dn0jqavq";
-    };
-  }
-  {
-    goPackagePath = "github.com/Azure/azure-storage-blob-go";
-    fetch = {
-      type = "git";
-      url = "https://github.com/Azure/azure-storage-blob-go";
-      rev = "v0.8.0";
-      sha256 = "00gsnk9s1rlrakqvcm917hn4r47jannxwp7rkhrb71pamzm46752";
-    };
-  }
-  {
-    goPackagePath = "github.com/BurntSushi/toml";
-    fetch = {
-      type = "git";
-      url = "https://github.com/BurntSushi/toml";
-      rev = "v0.3.1";
-      sha256 = "1fjdwwfzyzllgiwydknf1pwjvy49qxfsczqx5gz3y0izs7as99j6";
-    };
-  }
-  {
-    goPackagePath = "github.com/BurntSushi/xgb";
-    fetch = {
-      type = "git";
-      url = "https://github.com/BurntSushi/xgb";
-      rev = "27f122750802";
-      sha256 = "18lp2x8f5bljvlz0r7xn744f0c9rywjsb9ifiszqqdcpwhsa0kvj";
-    };
-  }
-  {
-    goPackagePath = "github.com/OneOfOne/xxhash";
-    fetch = {
-      type = "git";
-      url = "https://github.com/OneOfOne/xxhash";
-      rev = "v1.2.2";
-      sha256 = "1mjfhrwhvxa48rycjnqpqzm521i38h1hdyz6pdwmhd7xb8j6gwi6";
-    };
-  }
-  {
-    goPackagePath = "github.com/alecthomas/template";
-    fetch = {
-      type = "git";
-      url = "https://github.com/alecthomas/template";
-      rev = "a0175ee3bccc";
-      sha256 = "0qjgvvh26vk1cyfq9fadyhfgdj36f1iapbmr5xp6zqipldz8ffxj";
-    };
-  }
-  {
-    goPackagePath = "github.com/alecthomas/units";
-    fetch = {
-      type = "git";
-      url = "https://github.com/alecthomas/units";
-      rev = "2efee857e7cf";
-      sha256 = "1j65b91qb9sbrml9cpabfrcf07wmgzzghrl7809hjjhrmbzri5bl";
-    };
-  }
-  {
-    goPackagePath = "github.com/armon/consul-api";
-    fetch = {
-      type = "git";
-      url = "https://github.com/armon/consul-api";
-      rev = "eb2c6b5be1b6";
-      sha256 = "1j6fdr1sg36qy4n4xjl7brq739fpm5npq98cmvklzjc9qrx98nk9";
-    };
-  }
-  {
-    goPackagePath = "github.com/aws/aws-sdk-go";
-    fetch = {
-      type = "git";
-      url = "https://github.com/aws/aws-sdk-go";
-      rev = "v1.31.4";
-      sha256 = "07ia78j6j2y139iq9x5gin0fwc77wv8x0zhg47kibykxn4iyx85y";
-    };
-  }
-  {
-    goPackagePath = "github.com/beorn7/perks";
-    fetch = {
-      type = "git";
-      url = "https://github.com/beorn7/perks";
-      rev = "v1.0.0";
-      sha256 = "1i1nz1f6g55xi2y3aiaz5kqfgvknarbfl4f0sx4nyyb4s7xb1z9x";
-    };
-  }
-  {
-    goPackagePath = "github.com/cenkalti/backoff";
-    fetch = {
-      type = "git";
-      url = "https://github.com/cenkalti/backoff";
-      rev = "v2.2.1";
-      sha256 = "1mf4lsl3rbb8kk42x0mrhzzy4ikqy0jf6nxpzhkr02rdgwh6rjk8";
-    };
-  }
-  {
-    goPackagePath = "github.com/census-instrumentation/opencensus-proto";
-    fetch = {
-      type = "git";
-      url = "https://github.com/census-instrumentation/opencensus-proto";
-      rev = "v0.2.1";
-      sha256 = "19fcx3sc99i5dsklny6r073z5j20vlwn2xqm6di1q3b1xwchzqfj";
-    };
-  }
-  {
-    goPackagePath = "github.com/cespare/xxhash";
-    fetch = {
-      type = "git";
-      url = "https://github.com/cespare/xxhash";
-      rev = "v1.1.0";
-      sha256 = "1qyzlcdcayavfazvi03izx83fvip8h36kis44zr2sg7xf6sx6l4x";
-    };
-  }
-  {
-    goPackagePath = "github.com/chzyer/logex";
-    fetch = {
-      type = "git";
-      url = "https://github.com/chzyer/logex";
-      rev = "v1.1.10";
-      sha256 = "08pbjj3wx9acavlwyr055isa8a5hnmllgdv5k6ra60l5y1brmlq4";
-    };
-  }
-  {
-    goPackagePath = "github.com/chzyer/readline";
-    fetch = {
-      type = "git";
-      url = "https://github.com/chzyer/readline";
-      rev = "2972be24d48e";
-      sha256 = "104q8dazj8yf6b089jjr82fy9h1g80zyyzvp3g8b44a7d8ngjj6r";
-    };
-  }
-  {
-    goPackagePath = "github.com/chzyer/test";
-    fetch = {
-      type = "git";
-      url = "https://github.com/chzyer/test";
-      rev = "a1ea475d72b1";
-      sha256 = "0rns2aqk22i9xsgyap0pq8wi4cfaxsri4d9q6xxhhyma8jjsnj2k";
-    };
-  }
-  {
-    goPackagePath = "github.com/client9/misspell";
-    fetch = {
-      type = "git";
-      url = "https://github.com/client9/misspell";
-      rev = "v0.3.4";
-      sha256 = "1vwf33wsc4la25zk9nylpbp9px3svlmldkm0bha4hp56jws4q9cs";
-    };
-  }
-  {
-    goPackagePath = "github.com/cncf/udpa";
-    fetch = {
-      type = "git";
-      url = "https://github.com/cncf/udpa";
-      rev = "269d4d468f6f";
-      sha256 = "0i1jiaw2k3hlwwmg4hap81vb4s1p25xp9kdfww37v0fbgjariccs";
-    };
-  }
-  {
-    goPackagePath = "github.com/coreos/bbolt";
-    fetch = {
-      type = "git";
-      url = "https://github.com/coreos/bbolt";
-      rev = "v1.3.2";
-      sha256 = "13d5l6p6c5wvkr6vn9hkhz9c593qifn7fgx0hg4d6jcvg1y0bnm2";
-    };
-  }
-  {
-    goPackagePath = "github.com/coreos/etcd";
-    fetch = {
-      type = "git";
-      url = "https://github.com/coreos/etcd";
-      rev = "v3.3.10";
-      sha256 = "1x2ii1hj8jraba8rbxz6dmc03y3sjxdnzipdvg6fywnlq1f3l3wl";
-    };
-  }
-  {
-    goPackagePath = "github.com/coreos/go-semver";
-    fetch = {
-      type = "git";
-      url = "https://github.com/coreos/go-semver";
-      rev = "v0.2.0";
-      sha256 = "1gghi5bnqj50hfxhqc1cxmynqmh2yk9ii7ab9gsm75y5cp94ymk0";
-    };
-  }
-  {
-    goPackagePath = "github.com/coreos/go-systemd";
-    fetch = {
-      type = "git";
-      url = "https://github.com/coreos/go-systemd";
-      rev = "95778dfbb74e";
-      sha256 = "1s3bg9p78wkixn2bqb2p23wbsqfg949ml6crw2b498s71mwh8rcf";
-    };
-  }
-  {
-    goPackagePath = "github.com/coreos/pkg";
-    fetch = {
-      type = "git";
-      url = "https://github.com/coreos/pkg";
-      rev = "399ea9e2e55f";
-      sha256 = "0nxbn0m7lr4dg0yrwnvlkfiyg3ndv8vdpssjx7b714nivpc6ar0y";
-    };
-  }
-  {
-    goPackagePath = "github.com/cpuguy83/go-md2man";
-    fetch = {
-      type = "git";
-      url = "https://github.com/cpuguy83/go-md2man";
-      rev = "v2.0.0";
-      sha256 = "0r1f7v475dxxgzqci1mxfliwadcrk86ippflx9n411325l4g3ghv";
-    };
-  }
-  {
-    goPackagePath = "github.com/davecgh/go-spew";
-    fetch = {
-      type = "git";
-      url = "https://github.com/davecgh/go-spew";
-      rev = "v1.1.1";
-      sha256 = "0hka6hmyvp701adzag2g26cxdj47g21x6jz4sc6jjz1mn59d474y";
-    };
-  }
-  {
-    goPackagePath = "github.com/dgrijalva/jwt-go";
-    fetch = {
-      type = "git";
-      url = "https://github.com/dgrijalva/jwt-go";
-      rev = "v3.2.0";
-      sha256 = "08m27vlms74pfy5z79w67f9lk9zkx6a9jd68k3c4msxy75ry36mp";
-    };
-  }
-  {
-    goPackagePath = "github.com/dgryski/go-sip13";
-    fetch = {
-      type = "git";
-      url = "https://github.com/dgryski/go-sip13";
-      rev = "e10d5fee7954";
-      sha256 = "15fyibfas209ljz3f7g07kdmfbl3hhyd9n5n7aq5n5p9m5mn41d6";
-    };
-  }
-  {
-    goPackagePath = "github.com/dnaeon/go-vcr";
-    fetch = {
-      type = "git";
-      url = "https://github.com/dnaeon/go-vcr";
-      rev = "v1.0.1";
-      sha256 = "1d0kpqr12qrqlamz5a47bp05mx49za2v6l1k7c6z71xahfmb7v2d";
-    };
-  }
-  {
-    goPackagePath = "github.com/dustin/go-humanize";
-    fetch = {
-      type = "git";
-      url = "https://github.com/dustin/go-humanize";
-      rev = "v1.0.0";
-      sha256 = "1kqf1kavdyvjk7f8kx62pnm7fbypn9z1vbf8v2qdh3y7z7a0cbl3";
-    };
-  }
-  {
-    goPackagePath = "github.com/envoyproxy/go-control-plane";
-    fetch = {
-      type = "git";
-      url = "https://github.com/envoyproxy/go-control-plane";
-      rev = "v0.9.4";
-      sha256 = "0m0crzx70lp7vz13v20wxb1fcfdnzp7h3mkh3bn6a8mbfz6w5asj";
-    };
-  }
-  {
-    goPackagePath = "github.com/envoyproxy/protoc-gen-validate";
-    fetch = {
-      type = "git";
-      url = "https://github.com/envoyproxy/protoc-gen-validate";
-      rev = "v0.1.0";
-      sha256 = "0kxd3wwh3xwqk0r684hsy281xq4y71cd11d4q2hspcjbnlbwh7cy";
-    };
-  }
-  {
-    goPackagePath = "github.com/fsnotify/fsnotify";
-    fetch = {
-      type = "git";
-      url = "https://github.com/fsnotify/fsnotify";
-      rev = "v1.4.7";
-      sha256 = "07va9crci0ijlivbb7q57d2rz9h27zgn2fsm60spjsqpdbvyrx4g";
-    };
-  }
-  {
-    goPackagePath = "github.com/ghodss/yaml";
-    fetch = {
-      type = "git";
-      url = "https://github.com/ghodss/yaml";
-      rev = "v1.0.0";
-      sha256 = "0skwmimpy7hlh7pva2slpcplnm912rp3igs98xnqmn859kwa5v8g";
-    };
-  }
-  {
-    goPackagePath = "github.com/go-gl/glfw";
-    fetch = {
-      type = "git";
-      url = "https://github.com/go-gl/glfw";
-      rev = "6f7a984d4dc4";
-      sha256 = "1nyv7h08qf4dp8w9pmcnrc6vv9bkwj8fil6pz0mkbss5hf4i8xcq";
-    };
-  }
-  {
-    goPackagePath = "github.com/go-kit/kit";
-    fetch = {
-      type = "git";
-      url = "https://github.com/go-kit/kit";
-      rev = "v0.8.0";
-      sha256 = "1rcywbc2pvab06qyf8pc2rdfjv7r6kxdv2v4wnpqnjhz225wqvc0";
-    };
-  }
-  {
-    goPackagePath = "github.com/go-logfmt/logfmt";
-    fetch = {
-      type = "git";
-      url = "https://github.com/go-logfmt/logfmt";
-      rev = "v0.4.0";
-      sha256 = "06smxc112xmixz78nyvk3b2hmc7wasf2sl5vxj1xz62kqcq9lzm9";
-    };
-  }
-  {
-    goPackagePath = "github.com/go-sql-driver/mysql";
-    fetch = {
-      type = "git";
-      url = "https://github.com/go-sql-driver/mysql";
-      rev = "v1.5.0";
-      sha256 = "11x0m9yf3kdnf6981182r824psgxwfaqhn3x3in4yiidp0w0hk3v";
-    };
-  }
-  {
-    goPackagePath = "github.com/go-stack/stack";
-    fetch = {
-      type = "git";
-      url = "https://github.com/go-stack/stack";
-      rev = "v1.8.0";
-      sha256 = "0wk25751ryyvxclyp8jdk5c3ar0cmfr8lrjb66qbg4808x66b96v";
-    };
-  }
-  {
-    goPackagePath = "github.com/gogo/protobuf";
-    fetch = {
-      type = "git";
-      url = "https://github.com/gogo/protobuf";
-      rev = "v1.2.1";
-      sha256 = "06yqa6h0kw3gr5pc3qmas7f7435a96zf7iw7p0l00r2hqf6fqq6m";
-    };
-  }
-  {
-    goPackagePath = "github.com/golang/glog";
-    fetch = {
-      type = "git";
-      url = "https://github.com/golang/glog";
-      rev = "23def4e6c14b";
-      sha256 = "0jb2834rw5sykfr937fxi8hxi2zy80sj2bdn9b3jb4b26ksqng30";
-    };
-  }
-  {
-    goPackagePath = "github.com/golang/groupcache";
-    fetch = {
-      type = "git";
-      url = "https://github.com/golang/groupcache";
-      rev = "8c9f03a8e57e";
-      sha256 = "0vjjr79r32icjzlb05wn02k59av7jx0rn1jijml8r4whlg7dnkfh";
-    };
-  }
-  {
-    goPackagePath = "github.com/golang/mock";
-    fetch = {
-      type = "git";
-      url = "https://github.com/golang/mock";
-      rev = "v1.4.3";
-      sha256 = "1p37xnja1dgq5ykx24n7wincwz2gahjh71b95p8vpw7ss2g8j8wx";
-    };
-  }
-  {
-    goPackagePath = "github.com/golang/protobuf";
-    fetch = {
-      type = "git";
-      url = "https://github.com/golang/protobuf";
-      rev = "v1.4.1";
-      sha256 = "0w7ks4vffnnkp0miwgc3chrsnmya45lzvpahb2wmw0jwhdp5kdx7";
-    };
-  }
-  {
-    goPackagePath = "github.com/google/btree";
-    fetch = {
-      type = "git";
-      url = "https://github.com/google/btree";
-      rev = "v1.0.0";
-      sha256 = "0ba430m9fbnagacp57krgidsyrgp3ycw5r7dj71brgp5r52g82p6";
-    };
-  }
-  {
-    goPackagePath = "github.com/google/go-cmp";
-    fetch = {
-      type = "git";
-      url = "https://github.com/google/go-cmp";
-      rev = "v0.4.0";
-      sha256 = "1x5pvl3fb5sbyng7i34431xycnhmx8xx94gq2n19g6p0vz68z2v2";
-    };
-  }
-  {
-    goPackagePath = "github.com/google/martian";
-    fetch = {
-      type = "git";
-      url = "https://github.com/google/martian";
-      rev = "v2.1.0";
-      sha256 = "197hil6vrjk50b9wvwyzf61csid83whsjj6ik8mc9r2lryxlyyrp";
-    };
-  }
-  {
-    goPackagePath = "github.com/google/pprof";
-    fetch = {
-      type = "git";
-      url = "https://github.com/google/pprof";
-      rev = "fc25d7d30c6d";
-      sha256 = "0ba28qx2i1bi6n6x5g670v8hmqavwj8lwl8psnc6vzagmdhjw0vg";
-    };
-  }
-  {
-    goPackagePath = "github.com/google/renameio";
-    fetch = {
-      type = "git";
-      url = "https://github.com/google/renameio";
-      rev = "v0.1.0";
-      sha256 = "1ki2x5a9nrj17sn092d6n4zr29lfg5ydv4xz5cp58z6cw8ip43jx";
-    };
-  }
-  {
-    goPackagePath = "github.com/googleapis/gax-go";
-    fetch = {
-      type = "git";
-      url = "https://github.com/googleapis/gax-go";
-      rev = "v2.0.5";
-      sha256 = "1lxawwngv6miaqd25s3ba0didfzylbwisd2nz7r4gmbmin6jsjrx";
-    };
-  }
-  {
-    goPackagePath = "github.com/gorilla/websocket";
-    fetch = {
-      type = "git";
-      url = "https://github.com/gorilla/websocket";
-      rev = "v1.4.0";
-      sha256 = "00i4vb31nsfkzzk7swvx3i75r2d960js3dri1875vypk3v2s0pzk";
-    };
-  }
-  {
-    goPackagePath = "github.com/grpc-ecosystem/go-grpc-middleware";
-    fetch = {
-      type = "git";
-      url = "https://github.com/grpc-ecosystem/go-grpc-middleware";
-      rev = "v1.0.0";
-      sha256 = "0lwgxih021xfhfb1xb9la5f98bpgpaiz63sbllx77qwwl2rmhrsp";
-    };
-  }
-  {
-    goPackagePath = "github.com/grpc-ecosystem/go-grpc-prometheus";
-    fetch = {
-      type = "git";
-      url = "https://github.com/grpc-ecosystem/go-grpc-prometheus";
-      rev = "v1.2.0";
-      sha256 = "1lzk54h7np32b3acidg1ggbn8ppbnns0m71gcg9d1qkkdh8zrijl";
-    };
-  }
-  {
-    goPackagePath = "github.com/grpc-ecosystem/grpc-gateway";
-    fetch = {
-      type = "git";
-      url = "https://github.com/grpc-ecosystem/grpc-gateway";
-      rev = "v1.9.0";
-      sha256 = "1r4y48c76yxc2hpqszfjirvh7zxjb6z72qmk95li12ar79dhv3dy";
-    };
-  }
-  {
-    goPackagePath = "github.com/hashicorp/golang-lru";
-    fetch = {
-      type = "git";
-      url = "https://github.com/hashicorp/golang-lru";
-      rev = "v0.5.1";
-      sha256 = "13f870cvk161bzjj6x41l45r5x9i1z9r2ymwmvm7768kg08zznpy";
-    };
-  }
-  {
-    goPackagePath = "github.com/hashicorp/hcl";
-    fetch = {
-      type = "git";
-      url = "https://github.com/hashicorp/hcl";
-      rev = "v1.0.0";
-      sha256 = "0q6ml0qqs0yil76mpn4mdx4lp94id8vbv575qm60jzl1ijcl5i66";
-    };
-  }
-  {
-    goPackagePath = "github.com/ianlancetaylor/demangle";
-    fetch = {
-      type = "git";
-      url = "https://github.com/ianlancetaylor/demangle";
-      rev = "5e5cf60278f6";
-      sha256 = "1fhjk11cip9c3jyj1byz9z77n6n2rlxmyz0xjx1zpn1da3cvri75";
-    };
-  }
-  {
-    goPackagePath = "github.com/inconshreveable/mousetrap";
-    fetch = {
-      type = "git";
-      url = "https://github.com/inconshreveable/mousetrap";
-      rev = "v1.0.0";
-      sha256 = "1mn0kg48xkd74brf48qf5hzp0bc6g8cf5a77w895rl3qnlpfw152";
-    };
-  }
-  {
-    goPackagePath = "github.com/jmespath/go-jmespath";
-    fetch = {
-      type = "git";
-      url = "https://github.com/jmespath/go-jmespath";
-      rev = "v0.3.0";
-      sha256 = "12qgp7yb7yfjxhd311kb820fcjmg7gd4hp2fc4v6x8s7121pwnjp";
-    };
-  }
-  {
-    goPackagePath = "github.com/jonboulle/clockwork";
-    fetch = {
-      type = "git";
-      url = "https://github.com/jonboulle/clockwork";
-      rev = "v0.1.0";
-      sha256 = "1pqxhsdavbp1n5grgyx2j6ylvql2fzn2cvpsgkc8li69dil7sibl";
-    };
-  }
-  {
-    goPackagePath = "github.com/jstemmer/go-junit-report";
-    fetch = {
-      type = "git";
-      url = "https://github.com/jstemmer/go-junit-report";
-      rev = "v0.9.1";
-      sha256 = "1knip80yir1cdsjlb3rzy0a4w3kl4ljpiciaz6hjzwqlfhnv7bkw";
-    };
-  }
-  {
-    goPackagePath = "github.com/juju/ratelimit";
-    fetch = {
-      type = "git";
-      url = "https://github.com/juju/ratelimit";
-      rev = "v1.0.1";
-      sha256 = "0ppwvwbh9jdpdk4f9924vw373cpfz5g5ad10c707p22a984vanrz";
-    };
-  }
-  {
-    goPackagePath = "github.com/julienschmidt/httprouter";
-    fetch = {
-      type = "git";
-      url = "https://github.com/julienschmidt/httprouter";
-      rev = "v1.2.0";
-      sha256 = "1k8bylc9s4vpvf5xhqh9h246dl1snxrzzz0614zz88cdh8yzs666";
-    };
-  }
-  {
-    goPackagePath = "github.com/kisielk/errcheck";
-    fetch = {
-      type = "git";
-      url = "https://github.com/kisielk/errcheck";
-      rev = "v1.1.0";
-      sha256 = "19vd4rxmqbk5lpiav3pf7df3yjlz0l0dwx9mn0gjq5f998iyhy6y";
-    };
-  }
-  {
-    goPackagePath = "github.com/kisielk/gotool";
-    fetch = {
-      type = "git";
-      url = "https://github.com/kisielk/gotool";
-      rev = "v1.0.0";
-      sha256 = "14af2pa0ssyp8bp2mvdw184s5wcysk6akil3wzxmr05wwy951iwn";
-    };
-  }
-  {
-    goPackagePath = "github.com/klauspost/compress";
-    fetch = {
-      type = "git";
-      url = "https://github.com/klauspost/compress";
-      rev = "v1.10.6";
-      sha256 = "0jnm5mjazxkjwzb7z6sjlqm2l68z4h4xjhir2lgfkf04rj4l290s";
-    };
-  }
-  {
-    goPackagePath = "github.com/klauspost/pgzip";
-    fetch = {
-      type = "git";
-      url = "https://github.com/klauspost/pgzip";
-      rev = "v1.2.4";
-      sha256 = "0mnhfdn0isbkra455jynqjbmrwymx09shlbzbyvgfycih3nbrif0";
-    };
-  }
-  {
-    goPackagePath = "github.com/konsorten/go-windows-terminal-sequences";
-    fetch = {
-      type = "git";
-      url = "https://github.com/konsorten/go-windows-terminal-sequences";
-      rev = "v1.0.1";
-      sha256 = "1lchgf27n276vma6iyxa0v1xds68n2g8lih5lavqnx5x6q5pw2ip";
-    };
-  }
-  {
-    goPackagePath = "github.com/kr/logfmt";
-    fetch = {
-      type = "git";
-      url = "https://github.com/kr/logfmt";
-      rev = "b84e30acd515";
-      sha256 = "02ldzxgznrfdzvghfraslhgp19la1fczcbzh7wm2zdc6lmpd1qq9";
-    };
-  }
-  {
-    goPackagePath = "github.com/kr/pretty";
-    fetch = {
-      type = "git";
-      url = "https://github.com/kr/pretty";
-      rev = "v0.1.0";
-      sha256 = "18m4pwg2abd0j9cn5v3k2ksk9ig4vlwxmlw9rrglanziv9l967qp";
-    };
-  }
-  {
-    goPackagePath = "github.com/kr/pty";
-    fetch = {
-      type = "git";
-      url = "https://github.com/kr/pty";
-      rev = "v1.1.1";
-      sha256 = "0383f0mb9kqjvncqrfpidsf8y6ns5zlrc91c6a74xpyxjwvzl2y6";
-    };
-  }
-  {
-    goPackagePath = "github.com/kr/text";
-    fetch = {
-      type = "git";
-      url = "https://github.com/kr/text";
-      rev = "v0.1.0";
-      sha256 = "1gm5bsl01apvc84bw06hasawyqm4q84vx1pm32wr9jnd7a8vjgj1";
-    };
-  }
-  {
-    goPackagePath = "github.com/kurin/blazer";
-    fetch = {
-      type = "git";
-      url = "https://github.com/kurin/blazer";
-      rev = "v0.5.3";
-      sha256 = "18jsq7n31ycvaivpvyksbddj82spw4g29w6dx92x2wab2hzbc7ik";
-    };
-  }
-  {
-    goPackagePath = "github.com/magiconair/properties";
-    fetch = {
-      type = "git";
-      url = "https://github.com/magiconair/properties";
-      rev = "v1.8.0";
-      sha256 = "1a10362wv8a8qwb818wygn2z48lgzch940hvpv81hv8gc747ajxn";
-    };
-  }
-  {
-    goPackagePath = "github.com/mattn/go-ieproxy";
-    fetch = {
-      type = "git";
-      url = "https://github.com/mattn/go-ieproxy";
-      rev = "v0.0.1";
-      sha256 = "0x1ijwwp22s20vjbca5ac7y7bx2jp6jizzqa38ks4943q7vi4w09";
-    };
-  }
-  {
-    goPackagePath = "github.com/matttproud/golang_protobuf_extensions";
-    fetch = {
-      type = "git";
-      url = "https://github.com/matttproud/golang_protobuf_extensions";
-      rev = "v1.0.1";
-      sha256 = "1d0c1isd2lk9pnfq2nk0aih356j30k3h1gi2w0ixsivi5csl7jya";
-    };
-  }
-  {
-    goPackagePath = "github.com/miolini/datacounter";
-    fetch = {
-      type = "git";
-      url = "https://github.com/miolini/datacounter";
-      rev = "v1.0.2";
-      sha256 = "0lqhdb9glx65ycjjrqqqpd28zi95qnr2sdz93y6fma0khss46c5f";
-    };
-  }
-  {
-    goPackagePath = "github.com/mitchellh/go-homedir";
-    fetch = {
-      type = "git";
-      url = "https://github.com/mitchellh/go-homedir";
-      rev = "v1.1.0";
-      sha256 = "0ydzkipf28hwj2bfxqmwlww47khyk6d152xax4bnyh60f4lq3nx1";
-    };
-  }
-  {
-    goPackagePath = "github.com/mitchellh/mapstructure";
-    fetch = {
-      type = "git";
-      url = "https://github.com/mitchellh/mapstructure";
-      rev = "v1.1.2";
-      sha256 = "03bpv28jz9zhn4947saqwi328ydj7f6g6pf1m2d4m5zdh5jlfkrr";
-    };
-  }
-  {
-    goPackagePath = "github.com/mwitkow/go-conntrack";
-    fetch = {
-      type = "git";
-      url = "https://github.com/mwitkow/go-conntrack";
-      rev = "cc309e4a2223";
-      sha256 = "0nbrnpk7bkmqg9mzwsxlm0y8m7s9qd9phr1q30qlx2qmdmz7c1mf";
-    };
-  }
-  {
-    goPackagePath = "github.com/nightlyone/lockfile";
-    fetch = {
-      type = "git";
-      url = "https://github.com/nightlyone/lockfile";
-      rev = "v1.0.0";
-      sha256 = "0jzlngank7yaq5pl5mipsfglmalv9x2b9yhqr78w5dmx4hikh7kr";
-    };
-  }
-  {
-    goPackagePath = "github.com/oklog/ulid";
-    fetch = {
-      type = "git";
-      url = "https://github.com/oklog/ulid";
-      rev = "v1.3.1";
-      sha256 = "0hybwyid820n80axrk863k2py93hbqlq6hxhf84ppmz0qd0ys0gq";
-    };
-  }
-  {
-    goPackagePath = "github.com/op/go-logging";
-    fetch = {
-      type = "git";
-      url = "https://github.com/op/go-logging";
-      rev = "970db520ece7";
-      sha256 = "1cpna2x5l071z1vrnk7zipdkka8dzwsjyx7m79xk0lr08rip0kcj";
-    };
-  }
-  {
-    goPackagePath = "github.com/pelletier/go-toml";
-    fetch = {
-      type = "git";
-      url = "https://github.com/pelletier/go-toml";
-      rev = "v1.2.0";
-      sha256 = "1fjzpcjng60mc3a4b2ql5a00d5gah84wj740dabv9kq67mpg8fxy";
-    };
-  }
-  {
-    goPackagePath = "github.com/pkg/errors";
-    fetch = {
-      type = "git";
-      url = "https://github.com/pkg/errors";
-      rev = "v0.9.1";
-      sha256 = "1761pybhc2kqr6v5fm8faj08x9bql8427yqg6vnfv6nhrasx1mwq";
-    };
-  }
-  {
-    goPackagePath = "github.com/pmezard/go-difflib";
-    fetch = {
-      type = "git";
-      url = "https://github.com/pmezard/go-difflib";
-      rev = "v1.0.0";
-      sha256 = "0c1cn55m4rypmscgf0rrb88pn58j3ysvc2d0432dp3c6fqg6cnzw";
-    };
-  }
-  {
-    goPackagePath = "github.com/prometheus/client_golang";
-    fetch = {
-      type = "git";
-      url = "https://github.com/prometheus/client_golang";
-      rev = "v0.9.3";
-      sha256 = "1608rm1y2p3iv8k2x7wyc6hshvpbfkv2k77hy0x870syms1g3g1p";
-    };
-  }
-  {
-    goPackagePath = "github.com/prometheus/client_model";
-    fetch = {
-      type = "git";
-      url = "https://github.com/prometheus/client_model";
-      rev = "14fe0d1b01d4";
-      sha256 = "0zdmk6rbbx39cvfz0r59v2jg5sg9yd02b4pds5n5llgvivi99550";
-    };
-  }
-  {
-    goPackagePath = "github.com/prometheus/common";
-    fetch = {
-      type = "git";
-      url = "https://github.com/prometheus/common";
-      rev = "v0.4.0";
-      sha256 = "00008pczafy982m59n1j31pnp41f4grbc2c40jccp52xg3m5klmr";
-    };
-  }
-  {
-    goPackagePath = "github.com/prometheus/procfs";
-    fetch = {
-      type = "git";
-      url = "https://github.com/prometheus/procfs";
-      rev = "5867b95ac084";
-      sha256 = "1rahdk62ajj4zpfb3mgzjqip773la9fb0m87m7s9a0b39l3fmzvr";
-    };
-  }
-  {
-    goPackagePath = "github.com/prometheus/tsdb";
-    fetch = {
-      type = "git";
-      url = "https://github.com/prometheus/tsdb";
-      rev = "v0.7.1";
-      sha256 = "1c1da8i5byvhh4fp3vqjfb65aaksjskn3ggb8wg9hcfzjrhgpz04";
-    };
-  }
-  {
-    goPackagePath = "github.com/rogpeppe/fastuuid";
-    fetch = {
-      type = "git";
-      url = "https://github.com/rogpeppe/fastuuid";
-      rev = "6724a57986af";
-      sha256 = "12s65phfx6hxj4v0b5kj8akgrbf5mxpa101fyzw03h6hld1f70cz";
-    };
-  }
-  {
-    goPackagePath = "github.com/rogpeppe/go-internal";
-    fetch = {
-      type = "git";
-      url = "https://github.com/rogpeppe/go-internal";
-      rev = "v1.3.0";
-      sha256 = "0mcdh1licgnnahwml9y2iq6xy5x9xmjw5frcnds2s3wpjyqrl216";
-    };
-  }
-  {
-    goPackagePath = "github.com/russross/blackfriday";
-    fetch = {
-      type = "git";
-      url = "https://github.com/russross/blackfriday";
-      rev = "v2.0.1";
-      sha256 = "0nlz7isdd4rgnwzs68499hlwicxz34j2k2a0b8jy0y7ycd2bcr5j";
-    };
-  }
-  {
-    goPackagePath = "github.com/satori/go.uuid";
-    fetch = {
-      type = "git";
-      url = "https://github.com/satori/go.uuid";
-      rev = "v1.2.0";
-      sha256 = "1j4s5pfg2ldm35y8ls8jah4dya2grfnx2drb4jcbjsyrp4cm5yfb";
-    };
-  }
-  {
-    goPackagePath = "github.com/shurcooL/sanitized_anchor_name";
-    fetch = {
-      type = "git";
-      url = "https://github.com/shurcooL/sanitized_anchor_name";
-      rev = "v1.0.0";
-      sha256 = "1gv9p2nr46z80dnfjsklc6zxbgk96349sdsxjz05f3z6wb6m5l8f";
-    };
-  }
-  {
-    goPackagePath = "github.com/sirupsen/logrus";
-    fetch = {
-      type = "git";
-      url = "https://github.com/sirupsen/logrus";
-      rev = "v1.2.0";
-      sha256 = "0r6334x2bls8ddznvzaldx4g88msjjns4mlks95rqrrg7h0ijigg";
-    };
-  }
-  {
-    goPackagePath = "github.com/soheilhy/cmux";
-    fetch = {
-      type = "git";
-      url = "https://github.com/soheilhy/cmux";
-      rev = "v0.1.4";
-      sha256 = "1f736g68d9vwlyfb6g0fxkr0r875369xafk30cz8kaq5niaqwv0h";
-    };
-  }
-  {
-    goPackagePath = "github.com/spaolacci/murmur3";
-    fetch = {
-      type = "git";
-      url = "https://github.com/spaolacci/murmur3";
-      rev = "f09979ecbc72";
-      sha256 = "1lv3zyz3jy2d76bhvvs8svygx66606iygdvwy5cwc0p5z8yghq25";
-    };
-  }
-  {
-    goPackagePath = "github.com/spf13/afero";
-    fetch = {
-      type = "git";
-      url = "https://github.com/spf13/afero";
-      rev = "v1.1.2";
-      sha256 = "0miv4faf5ihjfifb1zv6aia6f6ik7h1s4954kcb8n6ixzhx9ck6k";
-    };
-  }
-  {
-    goPackagePath = "github.com/spf13/cast";
-    fetch = {
-      type = "git";
-      url = "https://github.com/spf13/cast";
-      rev = "v1.3.0";
-      sha256 = "0xq1ffqj8y8h7dcnm0m9lfrh0ga7pssnn2c1dnr09chqbpn4bdc5";
-    };
-  }
-  {
-    goPackagePath = "github.com/spf13/cobra";
-    fetch = {
-      type = "git";
-      url = "https://github.com/spf13/cobra";
-      rev = "v1.0.0";
-      sha256 = "0vbppqqhby302a5ayn0296jqr71qkcd4c9am7wzsk6z71fwdsa7h";
-    };
-  }
-  {
-    goPackagePath = "github.com/spf13/jwalterweatherman";
-    fetch = {
-      type = "git";
-      url = "https://github.com/spf13/jwalterweatherman";
-      rev = "v1.0.0";
-      sha256 = "093fmmvavv84pv4q84hav7ph3fmrq87bvspjj899q0qsx37yvdr8";
-    };
-  }
-  {
-    goPackagePath = "github.com/spf13/pflag";
-    fetch = {
-      type = "git";
-      url = "https://github.com/spf13/pflag";
-      rev = "v1.0.5";
-      sha256 = "0gpmacngd0gpslnbkzi263f5ishigzgh6pbdv9hp092rnjl4nd31";
-    };
-  }
-  {
-    goPackagePath = "github.com/spf13/viper";
-    fetch = {
-      type = "git";
-      url = "https://github.com/spf13/viper";
-      rev = "v1.4.0";
-      sha256 = "1zpzxvn13wpvbblbbn73svaq39zgxfjqhci9d68g3qf309pcfy19";
-    };
-  }
-  {
-    goPackagePath = "github.com/stretchr/objx";
-    fetch = {
-      type = "git";
-      url = "https://github.com/stretchr/objx";
-      rev = "v0.1.1";
-      sha256 = "0iph0qmpyqg4kwv8jsx6a56a7hhqq8swrazv40ycxk9rzr0s8yls";
-    };
-  }
-  {
-    goPackagePath = "github.com/stretchr/testify";
-    fetch = {
-      type = "git";
-      url = "https://github.com/stretchr/testify";
-      rev = "v1.5.1";
-      sha256 = "09r89m1wy4cjv2nps1ykp00qjpi0531r07q3s34hr7m6njk4srkl";
-    };
-  }
-  {
-    goPackagePath = "github.com/tmc/grpc-websocket-proxy";
-    fetch = {
-      type = "git";
-      url = "https://github.com/tmc/grpc-websocket-proxy";
-      rev = "0ad062ec5ee5";
-      sha256 = "1anw4v9wspnw9xf2z5r9w0sszwjklyanl0l85wgg6nxak9gnrqp4";
-    };
-  }
-  {
-    goPackagePath = "github.com/ugorji/go";
-    fetch = {
-      type = "git";
-      url = "https://github.com/ugorji/go";
-      rev = "v1.1.4";
-      sha256 = "0ma2qvn5wqvjidpdz74x832a813qnr1cxbx6n6n125ak9b3wbn5w";
-    };
-  }
-  {
-    goPackagePath = "github.com/xiang90/probing";
-    fetch = {
-      type = "git";
-      url = "https://github.com/xiang90/probing";
-      rev = "43a291ad63a2";
-      sha256 = "1z22ms16j5j42775mf31isanwx2pwr1d8wqw8006dczjv36qnz5i";
-    };
-  }
-  {
-    goPackagePath = "github.com/xordataexchange/crypt";
-    fetch = {
-      type = "git";
-      url = "https://github.com/xordataexchange/crypt";
-      rev = "b2862e3d0a77";
-      sha256 = "04q3856anpzl4gdfgmg7pbp9cx231nkz3ymq2xp27rnmmwhfxr8y";
-    };
-  }
-  {
-    goPackagePath = "github.com/yuin/goldmark";
-    fetch = {
-      type = "git";
-      url = "https://github.com/yuin/goldmark";
-      rev = "v1.1.27";
-      sha256 = "1872cqnii0kwiqcy81yin0idvjy5mdy4zlzz0csb319lcjs3b923";
-    };
-  }
-  {
-    goPackagePath = "go.etcd.io/bbolt";
-    fetch = {
-      type = "git";
-      url = "https://github.com/etcd-io/bbolt";
-      rev = "v1.3.2";
-      sha256 = "13d5l6p6c5wvkr6vn9hkhz9c593qifn7fgx0hg4d6jcvg1y0bnm2";
-    };
-  }
-  {
-    goPackagePath = "go.opencensus.io";
-    fetch = {
-      type = "git";
-      url = "https://github.com/census-instrumentation/opencensus-go";
-      rev = "v0.22.3";
-      sha256 = "0xj16iq5jp26hi2py7lsd8cvqh651fgn39y05gzvjdi88d9xd3nw";
-    };
-  }
-  {
-    goPackagePath = "go.uber.org/atomic";
-    fetch = {
-      type = "git";
-      url = "https://github.com/uber-go/atomic";
-      rev = "v1.4.0";
-      sha256 = "0c6yzx15c20719xii3dm0vyjd8i9jx45m0wh5yp1zf29b0gbljcy";
-    };
-  }
-  {
-    goPackagePath = "go.uber.org/multierr";
-    fetch = {
-      type = "git";
-      url = "https://github.com/uber-go/multierr";
-      rev = "v1.1.0";
-      sha256 = "1slfc6syvw8cvr6rbrjsy6ja5w8gsx0f8aq8qm16rp2x5c2pj07w";
-    };
-  }
-  {
-    goPackagePath = "go.uber.org/zap";
-    fetch = {
-      type = "git";
-      url = "https://github.com/uber-go/zap";
-      rev = "v1.10.0";
-      sha256 = "10hdzr1rghwbsl6bbd30779dx44fh9mg9pq8d2cgqlknqxxpvpvr";
-    };
-  }
-  {
-    goPackagePath = "golang.org/x/crypto";
-    fetch = {
-      type = "git";
-      url = "https://go.googlesource.com/crypto";
-      rev = "06a226fb4e37";
-      sha256 = "0fdig6jx81g7a44dnxggibl909wchsj4nakmmhhz7db36sl0d7m5";
-    };
-  }
-  {
-    goPackagePath = "golang.org/x/exp";
-    fetch = {
-      type = "git";
-      url = "https://go.googlesource.com/exp";
-      rev = "6cc2880d07d6";
-      sha256 = "1iia6hiif6hcp0cg1i6nq63qg0pmvm2kq24pf2r2il3597rfmlgy";
-    };
-  }
-  {
-    goPackagePath = "golang.org/x/image";
-    fetch = {
-      type = "git";
-      url = "https://go.googlesource.com/image";
-      rev = "cff245a6509b";
-      sha256 = "0hiznlkiaay30acwvvyq8g6bm32r7bc6gv47pygrcxqpapasbz84";
-    };
-  }
-  {
-    goPackagePath = "golang.org/x/lint";
-    fetch = {
-      type = "git";
-      url = "https://go.googlesource.com/lint";
-      rev = "738671d3881b";
-      sha256 = "0jkiz4py59jjnkyxbxifpf7bsar11lbgmj5jiq2kic5k03shkn9c";
-    };
-  }
-  {
-    goPackagePath = "golang.org/x/mobile";
-    fetch = {
-      type = "git";
-      url = "https://go.googlesource.com/mobile";
-      rev = "d2bd2a29d028";
-      sha256 = "1nv6vvhnjr01nx9y06q46ww87dppdwpbqrlsfg1xf2587wxl8xiv";
-    };
-  }
-  {
-    goPackagePath = "golang.org/x/mod";
-    fetch = {
-      type = "git";
-      url = "https://go.googlesource.com/mod";
-      rev = "v0.2.0";
-      sha256 = "1fp6885dclq77mh73v7i54v2b9llpv4di193zc8vmsbbkkc483cl";
-    };
-  }
-  {
-    goPackagePath = "golang.org/x/net";
-    fetch = {
-      type = "git";
-      url = "https://go.googlesource.com/net";
-      rev = "7e3656a0809f";
-      sha256 = "1rmj59bd0hvf8cbp42c0y8y38prs5ill1zszhqp9i8m86cvkfqk9";
-    };
-  }
-  {
-    goPackagePath = "golang.org/x/oauth2";
-    fetch = {
-      type = "git";
-      url = "https://go.googlesource.com/oauth2";
-      rev = "bf48bf16ab8d";
-      sha256 = "1sirdib60zwmh93kf9qrx51r8544k1p9rs5mk0797wibz3m4mrdg";
-    };
-  }
-  {
-    goPackagePath = "golang.org/x/sync";
-    fetch = {
-      type = "git";
-      url = "https://go.googlesource.com/sync";
-      rev = "43a5402ce75a";
-      sha256 = "0j6zrrb81qjr1926kkwmn0di9a0jn8qyjd9dw614rfkihxgq1vsm";
-    };
-  }
-  {
-    goPackagePath = "golang.org/x/sys";
-    fetch = {
-      type = "git";
-      url = "https://go.googlesource.com/sys";
-      rev = "7e40ca221e25";
-      sha256 = "1fkhs1sn6prfsqaj70kya2gn1sqqa85lmgff6j6s7027zc1yjvqa";
-    };
-  }
-  {
-    goPackagePath = "golang.org/x/text";
-    fetch = {
-      type = "git";
-      url = "https://go.googlesource.com/text";
-      rev = "v0.3.2";
-      sha256 = "0flv9idw0jm5nm8lx25xqanbkqgfiym6619w575p7nrdh0riqwqh";
-    };
-  }
-  {
-    goPackagePath = "golang.org/x/time";
-    fetch = {
-      type = "git";
-      url = "https://go.googlesource.com/time";
-      rev = "555d28b269f0";
-      sha256 = "1rhl4lyz030kwfsg63yk83yd3ivryv1afmzdz9sxbhcj84ym6h4r";
-    };
-  }
-  {
-    goPackagePath = "golang.org/x/tools";
-    fetch = {
-      type = "git";
-      url = "https://go.googlesource.com/tools";
-      rev = "2bc93b1c0c88";
-      sha256 = "10sg7nvw40f2d6hxmsy4nvhmawbidk022v3arbh8acsjxglw84zs";
-    };
-  }
-  {
-    goPackagePath = "golang.org/x/xerrors";
-    fetch = {
-      type = "git";
-      url = "https://go.googlesource.com/xerrors";
-      rev = "9bdfabe68543";
-      sha256 = "1yjfi1bk9xb81lqn85nnm13zz725wazvrx3b50hx19qmwg7a4b0c";
-    };
-  }
-  {
-    goPackagePath = "google.golang.org/api";
-    fetch = {
-      type = "git";
-      url = "https://github.com/googleapis/google-api-go-client";
-      rev = "v0.25.0";
-      sha256 = "0bfpii160ns1pl3iqc38h5db258mv58igf2ifglds3dajgsj2qrr";
-    };
-  }
-  {
-    goPackagePath = "google.golang.org/appengine";
-    fetch = {
-      type = "git";
-      url = "https://github.com/golang/appengine";
-      rev = "v1.6.6";
-      sha256 = "15c38h6fbv06cnkr6yknygfrpibyms2mya4w0l29kaxf42jn1qi5";
-    };
-  }
-  {
-    goPackagePath = "google.golang.org/genproto";
-    fetch = {
-      type = "git";
-      url = "https://github.com/googleapis/go-genproto";
-      rev = "f5ebc3bea380";
-      sha256 = "1v5dyp6g35rwjwx1ixjy7yh1hay4n7ya5aq5h4ckvd9h0j7rw5sz";
-    };
-  }
-  {
-    goPackagePath = "google.golang.org/grpc";
-    fetch = {
-      type = "git";
-      url = "https://github.com/grpc/grpc-go";
-      rev = "v1.29.1";
-      sha256 = "1465947r6536si36cl2ppx7929la9zba1y6xfczfyp4kgf8988hf";
-    };
-  }
-  {
-    goPackagePath = "google.golang.org/protobuf";
-    fetch = {
-      type = "git";
-      url = "https://go.googlesource.com/protobuf";
-      rev = "v1.22.0";
-      sha256 = "0n7lc4m7kfvj01glc0gnjy0zsnsic7cxnbvlajy0h14cxbab87pj";
-    };
-  }
-  {
-    goPackagePath = "gopkg.in/alecthomas/kingpin.v2";
-    fetch = {
-      type = "git";
-      url = "https://gopkg.in/alecthomas/kingpin.v2";
-      rev = "v2.2.6";
-      sha256 = "0mndnv3hdngr3bxp7yxfd47cas4prv98sqw534mx7vp38gd88n5r";
-    };
-  }
-  {
-    goPackagePath = "gopkg.in/check.v1";
-    fetch = {
-      type = "git";
-      url = "https://gopkg.in/check.v1";
-      rev = "788fd7840127";
-      sha256 = "0v3bim0j375z81zrpr5qv42knqs0y2qv2vkjiqi5axvb78slki1a";
-    };
-  }
-  {
-    goPackagePath = "gopkg.in/errgo.v2";
-    fetch = {
-      type = "git";
-      url = "https://gopkg.in/errgo.v2";
-      rev = "v2.1.0";
-      sha256 = "065mbihiy7q67wnql0bzl9y1kkvck5ivra68254zbih52jxwrgr2";
-    };
-  }
-  {
-    goPackagePath = "gopkg.in/resty.v1";
-    fetch = {
-      type = "git";
-      url = "https://gopkg.in/resty.v1";
-      rev = "v1.12.0";
-      sha256 = "062mn735rqzhha5ag07z4gz08hxzrfm2yx067jfmaaxmb6797lmp";
-    };
-  }
-  {
-    goPackagePath = "gopkg.in/yaml.v2";
-    fetch = {
-      type = "git";
-      url = "https://gopkg.in/yaml.v2";
-      rev = "v2.2.2";
-      sha256 = "01wj12jzsdqlnidpyjssmj0r4yavlqy7dwrg7adqd8dicjc4ncsa";
-    };
-  }
-  {
-    goPackagePath = "honnef.co/go/tools";
-    fetch = {
-      type = "git";
-      url = "https://github.com/dominikh/go-tools";
-      rev = "v0.0.1-2020.1.3";
-      sha256 = "0pvi1mzhy6zgx4zfgdypbl4zhvgg11hl5qv7blf2qs0a96j2djhf";
-    };
-  }
-  {
-    goPackagePath = "rsc.io/binaryregexp";
-    fetch = {
-      type = "git";
-      url = "https://github.com/rsc/binaryregexp";
-      rev = "v0.2.0";
-      sha256 = "1kar0myy85waw418zslviwx8846zj0m9cmqkxjx0fvgjdi70nc4b";
-    };
-  }
-  {
-    goPackagePath = "rsc.io/quote";
-    fetch = {
-      type = "git";
-      url = "https://github.com/rsc/quote";
-      rev = "v3.1.0";
-      sha256 = "0nvv97hwwrl1mx5gzsbdm1ndnwpg3m7i2jb10ig9wily7zmvki0i";
-    };
-  }
-  {
-    goPackagePath = "rsc.io/sampler";
-    fetch = {
-      type = "git";
-      url = "https://github.com/rsc/sampler";
-      rev = "v1.3.0";
-      sha256 = "0byxk2ynba50py805kcvbvjzh59l1r308i1xgyzpw6lff4xx9xjh";
-    };
-  }
-]
diff --git a/pkgs/tools/bluetooth/blueman/default.nix b/pkgs/tools/bluetooth/blueman/default.nix
index 74ebb04f74744..2f59d14902bb2 100644
--- a/pkgs/tools/bluetooth/blueman/default.nix
+++ b/pkgs/tools/bluetooth/blueman/default.nix
@@ -9,11 +9,11 @@ let
 
 in stdenv.mkDerivation rec {
   pname = "blueman";
-  version = "2.2.4";
+  version = "2.2.5";
 
   src = fetchurl {
     url = "https://github.com/blueman-project/blueman/releases/download/${version}/${pname}-${version}.tar.xz";
-    sha256 = "sha256-VdY5/u2gtDsYplnmWYUhOlS0fcsTSPO07/tSONskJgI=";
+    sha256 = "sha256-yfPAqU3HyAvTIwS7Jf3tIU/jC3AY6e9Gsvy9HYA8fHw=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/tools/filesystems/bindfs/default.nix b/pkgs/tools/filesystems/bindfs/default.nix
index 12052100db32a..333157d829fb8 100644
--- a/pkgs/tools/filesystems/bindfs/default.nix
+++ b/pkgs/tools/filesystems/bindfs/default.nix
@@ -1,12 +1,12 @@
 { lib, stdenv, fetchurl, fuse, pkg-config }:
 
 stdenv.mkDerivation rec {
-  version = "1.15.1";
+  version = "1.16.0";
   pname = "bindfs";
 
   src = fetchurl {
     url    = "https://bindfs.org/downloads/${pname}-${version}.tar.gz";
-    sha256 = "sha256-BN01hKbN+a9DRNQDxiGFyp+rMc465aJdAQG8EJNsaKs=";
+    sha256 = "sha256-AuvvqqZOGwRPxcdDxYKarSHtb3FF9NsHI7zEXwhXgfY=";
   };
 
   nativeBuildInputs = [ pkg-config ];
diff --git a/pkgs/tools/filesystems/gcsfuse/default.nix b/pkgs/tools/filesystems/gcsfuse/default.nix
index 0a621c5e034df..12447377ae933 100644
--- a/pkgs/tools/filesystems/gcsfuse/default.nix
+++ b/pkgs/tools/filesystems/gcsfuse/default.nix
@@ -1,32 +1,32 @@
-{ lib, buildGoPackage, fetchFromGitHub }:
+{ lib, buildGoModule, fetchFromGitHub }:
 
-buildGoPackage rec {
+buildGoModule rec {
   pname = "gcsfuse";
-  version = "0.41.1";
+  version = "0.41.4";
 
   src = fetchFromGitHub {
     owner = "googlecloudplatform";
     repo = "gcsfuse";
     rev = "v${version}";
-    sha256 = "sha256-5Kfd033SG1ldF+2QCZ01aa7ts0mA8uPXiLmqZIr94YQ=";
+    sha256 = "sha256-8QzSvR/uelp9iBLK+DsUXsH6fBOIoeXePeN7Spht6SE=";
   };
 
-  goPackagePath = "github.com/googlecloudplatform/gcsfuse";
+  vendorSha256 = null;
 
   subPackages = [ "." "tools/mount_gcsfuse" ];
 
+  ldflags = [ "-s" "-w" "-X main.gcsfuseVersion=${version}" ];
+
   postInstall = ''
     ln -s $out/bin/mount_gcsfuse $out/bin/mount.gcsfuse
     ln -s $out/bin/mount_gcsfuse $out/bin/mount.fuse.gcsfuse
   '';
 
-  ldflags = [ "-s" "-w" "-X main.gcsfuseVersion=${version}" ];
-
   meta = with lib;{
     description = "A user-space file system for interacting with Google Cloud Storage";
     homepage = "https://cloud.google.com/storage/docs/gcs-fuse";
     license = licenses.asl20;
     platforms = platforms.unix;
-    maintainers = [];
+    maintainers = with maintainers; [ aaronjheng ];
   };
 }
diff --git a/pkgs/tools/filesystems/httm/default.nix b/pkgs/tools/filesystems/httm/default.nix
index f4cfdc46e9b43..c68e692ed2d1b 100644
--- a/pkgs/tools/filesystems/httm/default.nix
+++ b/pkgs/tools/filesystems/httm/default.nix
@@ -6,16 +6,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "httm";
-  version = "0.11.6";
+  version = "0.12.1";
 
   src = fetchFromGitHub {
     owner = "kimono-koans";
     repo = pname;
     rev = version;
-    sha256 = "5jeCENAas7i/eBySSBjwmdc3MEHVhWWH7/RZGS8g1Y4=";
+    sha256 = "2pShuWJns8VnxiRgj5GLv5Y7H5Qw/SfQ6lVo6VqyU/A=";
   };
 
-  cargoSha256 = "x4qfi3Wm5r0HNqDgmJBXNvS1xQDU7MQ/H2+zNpHon+s=";
+  cargoSha256 = "x5JUwQxrZ5TBG8FAMlomTkZOCxV0c/7i5sx33BCUkKo=";
 
   nativeBuildInputs = [ installShellFiles ];
 
diff --git a/pkgs/tools/games/minecraft/packwiz/default.nix b/pkgs/tools/games/minecraft/packwiz/default.nix
index 3be2798312e77..80feced2b7013 100644
--- a/pkgs/tools/games/minecraft/packwiz/default.nix
+++ b/pkgs/tools/games/minecraft/packwiz/default.nix
@@ -6,13 +6,13 @@
 
 buildGoModule rec {
   pname = "packwiz";
-  version = "unstable-2022-5-25";
+  version = "unstable-2022-06-08";
 
   src = fetchFromGitHub {
     owner = "packwiz";
     repo = "packwiz";
-    rev = "e71b63ea98283c8c1f0e03ee51ae40f452f22a61";
-    sha256 = "sha256-XwGacEVfQAduDCSMQFRw7Xnx4bND2zaV7l27B+2u5xg=";
+    rev = "d051932bbbeb7b16cd21a1897019428e71f63bfd";
+    sha256 = "sha256-H1v5pY9hJYGP0ZiE/GrsATf1ljw69085t6PQhPOfYCs=";
   };
 
   vendorSha256 = "sha256-M9u7N4IrL0B4pPRQwQG5TlMaGT++w3ZKHZ0RdxEHPKk=";
diff --git a/pkgs/tools/inputmethods/uim/default.nix b/pkgs/tools/inputmethods/uim/default.nix
index 9336d5429c128..e1daecbd10ff7 100644
--- a/pkgs/tools/inputmethods/uim/default.nix
+++ b/pkgs/tools/inputmethods/uim/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchFromGitHub, shared-mime-info
+{ lib, stdenv, fetchFromGitHub, fetchpatch, shared-mime-info
 , autoconf, automake, intltool, libtool, pkg-config, cmake
 , ruby, librsvg
 , ncurses, m17n_lib, m17n_db, expat
@@ -86,7 +86,21 @@ stdenv.mkDerivation rec {
     ./autogen.sh
   '';
 
-  patches = [ ./data-hook.patch ];
+  patches = [
+    ./data-hook.patch
+
+    # Pull upstream fix for -fno-common toolchains
+    #   https://github.com/uim/libgcroots/pull/4
+    (fetchpatch {
+      name = "libgcroots-fno-common.patch";
+      url = "https://github.com/uim/libgcroots/commit/7e39241344ad0663409e836560ae6b5eb231e1fc.patch";
+      sha256 = "0iifcl5lk8bvl0cflm47gkymg88aiwzj0gxh2aj3mqlyhvyx78nz";
+      # Patch comes from git submodule. Relocate as:
+      # a/include/private/gc_priv.h -> a/sigscheme/libgcroots/include/private/gc_priv.h
+      stripLen = 1;
+      extraPrefix = "sigscheme/libgcroots/";
+    })
+  ];
 
   configureFlags = [
     # configure in maintainer mode or else some pixmaps won't get autogenerated
diff --git a/pkgs/tools/misc/antimicrox/default.nix b/pkgs/tools/misc/antimicrox/default.nix
index b39d9b17002fe..73e430e54e340 100644
--- a/pkgs/tools/misc/antimicrox/default.nix
+++ b/pkgs/tools/misc/antimicrox/default.nix
@@ -12,13 +12,13 @@
 
 mkDerivation rec {
   pname = "antimicrox";
-  version = "3.2.3";
+  version = "3.2.4";
 
   src = fetchFromGitHub {
     owner = "AntiMicroX";
     repo = pname;
     rev = version;
-    sha256 = "sha256-Qn2XT/l3zx0u3twKsQr1cHbaRiLTglQf0WNx8tqtKro=";
+    sha256 = "sha256-catgal3bpWJUcTo0x0V0X3VV87AHO2Dp58IpQ/ILsZ8=";
   };
 
   nativeBuildInputs = [ cmake extra-cmake-modules pkg-config itstool ];
diff --git a/pkgs/tools/misc/chafa/default.nix b/pkgs/tools/misc/chafa/default.nix
index 7a0178eea735f..85b52dd398c25 100644
--- a/pkgs/tools/misc/chafa/default.nix
+++ b/pkgs/tools/misc/chafa/default.nix
@@ -4,14 +4,14 @@
 }:
 
 stdenv.mkDerivation rec {
-  version = "1.8.0";
+  version = "1.10.3";
   pname = "chafa";
 
   src = fetchFromGitHub {
     owner = "hpjansson";
     repo = "chafa";
     rev = version;
-    sha256 = "sha256-8ENPmcl0KVxoBu8FGOGk+y8XsONWW0YW32MHAKBUiPE=";
+    sha256 = "sha256-GRPn0xPWtCayOdmA6M+KQrObAHtZIJLEydXaKhhO5IU=";
   };
 
   nativeBuildInputs = [ autoconf
diff --git a/pkgs/tools/misc/chezmoi/default.nix b/pkgs/tools/misc/chezmoi/default.nix
index 782efb24f48d3..7fc8f0ad1458a 100644
--- a/pkgs/tools/misc/chezmoi/default.nix
+++ b/pkgs/tools/misc/chezmoi/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "chezmoi";
-  version = "2.16.0";
+  version = "2.18.1";
 
   src = fetchFromGitHub {
     owner = "twpayne";
     repo = "chezmoi";
     rev = "v${version}";
-    sha256 = "sha256-J5L4xFdRV8eOJgILQqK0DhvP5/AXAmr7spzokhd4kcg=";
+    sha256 = "sha256-eRlEhtpUBZBS3fNrkkXPiktPyGQ2K8MFwsDVo3DUb+o=";
   };
 
-  vendorSha256 = "sha256-y+xPuW8l3XvpnlqdlNIWdweNXMsAOrwbXHq2cJQRcOY=";
+  vendorSha256 = "sha256-u+iFnBzlaa+7heQEI18WWD45TSxEpIY73ZrxjLx84Ic=";
 
   doCheck = false;
 
diff --git a/pkgs/tools/misc/dateutils/default.nix b/pkgs/tools/misc/dateutils/default.nix
index 20837d5ee3ec7..ec8f9ca83d93e 100644
--- a/pkgs/tools/misc/dateutils/default.nix
+++ b/pkgs/tools/misc/dateutils/default.nix
@@ -1,12 +1,12 @@
 { lib, stdenv, fetchurl, autoreconfHook, tzdata, fetchpatch }:
 
 stdenv.mkDerivation rec {
-  version = "0.4.9";
+  version = "0.4.10";
   pname = "dateutils";
 
   src = fetchurl {
     url = "https://bitbucket.org/hroptatyr/dateutils/downloads/${pname}-${version}.tar.xz";
-    sha256 = "1hy96h9imxdbg9y7305mgv4grr6x4qic9xy3vhgh15lvjkcmc0kr";
+    sha256 = "sha256-PFCOKIm51a7Kt9WdcyWnAIlZMRGhIwpJbasPWtZ3zew=";
   };
 
   nativeBuildInputs = [ autoreconfHook ];
diff --git a/pkgs/tools/misc/diffoscope/default.nix b/pkgs/tools/misc/diffoscope/default.nix
index ae0a38b6d3166..2307dddf6cacc 100644
--- a/pkgs/tools/misc/diffoscope/default.nix
+++ b/pkgs/tools/misc/diffoscope/default.nix
@@ -11,11 +11,11 @@
 # Note: when upgrading this package, please run the list-missing-tools.sh script as described below!
 python3Packages.buildPythonApplication rec {
   pname = "diffoscope";
-  version = "216";
+  version = "217";
 
   src = fetchurl {
     url = "https://diffoscope.org/archive/diffoscope-${version}.tar.bz2";
-    sha256 = "sha256-KSmC2mNNzsC2H5xOOQ/3gODsSvFQD95XGtrzbDud0W0=";
+    sha256 = "sha256-JS6lzxOsE3K4gH3VHsRY5Iucq5PBH3jFD5lSmNZWEG4=";
   };
 
   outputs = [ "out" "man" ];
diff --git a/pkgs/tools/misc/dsq/default.nix b/pkgs/tools/misc/dsq/default.nix
index 1d6dde3c3cffa..62a17142bde6b 100644
--- a/pkgs/tools/misc/dsq/default.nix
+++ b/pkgs/tools/misc/dsq/default.nix
@@ -15,13 +15,13 @@
 
 buildGoModule rec {
   pname = "dsq";
-  version = "0.20.1";
+  version = "0.20.2";
 
   src = fetchFromGitHub {
     owner = "multiprocessio";
     repo = "dsq";
     rev = version;
-    hash = "sha256-zTrIs6Q/+PW6CKCx1L8VaXhc1ZAqbb+Od+LJNjPCOTs=";
+    hash = "sha256-dgx1rFdhEtvyH/N3AtQE89ASBoE3CLl+ZFWwWWYe0II=";
   };
 
   vendorSha256 = "sha256-bLaBBWChK2RKXd/rX9m9UfHu8zt0j8TOm5S2M02U91A=";
diff --git a/pkgs/tools/misc/dterm/default.nix b/pkgs/tools/misc/dterm/default.nix
deleted file mode 100644
index 48665751aeb3f..0000000000000
--- a/pkgs/tools/misc/dterm/default.nix
+++ /dev/null
@@ -1,27 +0,0 @@
-{ lib, stdenv, fetchurl, readline }:
-
-stdenv.mkDerivation rec {
-  pname = "dterm";
-  version = "0.5";
-
-  src = fetchurl {
-    url = "http://www.knossos.net.nz/downloads/dterm-${version}.tgz";
-    sha256 = "94533be79f1eec965e59886d5f00a35cb675c5db1d89419f253bb72f140abddb";
-  };
-
-  buildInputs = [ readline ];
-  postPatch = ''
-    substituteInPlace Makefile \
-      --replace 'gcc' '${stdenv.cc.targetPrefix}cc'
-  '';
-  preInstall = "mkdir -p $out/bin";
-  installFlags = [ "BIN=$(out)/bin/" ];
-
-  meta = with lib; {
-    homepage = "http://www.knossos.net.nz/resources/free-software/dterm/";
-    description = "A simple terminal program";
-    license = licenses.gpl2Only;
-    maintainers = with maintainers; [ auchter ];
-    platforms = platforms.unix;
-  };
-}
diff --git a/pkgs/tools/misc/dua/default.nix b/pkgs/tools/misc/dua/default.nix
index 4a83d8147acb3..526eb705e4cc8 100644
--- a/pkgs/tools/misc/dua/default.nix
+++ b/pkgs/tools/misc/dua/default.nix
@@ -2,7 +2,7 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "dua";
-  version = "2.17.5";
+  version = "2.17.7";
 
   buildInputs = lib.optionals stdenv.isDarwin [ libiconv Foundation ];
 
@@ -10,7 +10,7 @@ rustPlatform.buildRustPackage rec {
     owner = "Byron";
     repo = "dua-cli";
     rev = "v${version}";
-    sha256 = "sha256-dpkUbZz/bIiTMhZalXHGct77qMzYB6LATs7MPVyW1GY=";
+    sha256 = "sha256-FiTjN4coOJZ3Uu9LfaJxcpvVKS+5MVYWQPmwllBh1Jg=";
     # Remove unicode file names which leads to different checksums on HFS+
     # vs. other filesystems because of unicode normalisation.
     postFetch = ''
@@ -18,7 +18,7 @@ rustPlatform.buildRustPackage rec {
     '';
   };
 
-  cargoSha256 = "sha256-xBiabY0aGPxrAHypuSg3AF/EcChDgtIK9cJDCeTNkm0=";
+  cargoSha256 = "sha256-xCHbS+D7ss85hklv9xftJTsctvQlAjkKtuJbTt5R8nM=";
 
   doCheck = false;
 
diff --git a/pkgs/tools/misc/fend/default.nix b/pkgs/tools/misc/fend/default.nix
index 07880c4fbdc54..afdc719a5e448 100644
--- a/pkgs/tools/misc/fend/default.nix
+++ b/pkgs/tools/misc/fend/default.nix
@@ -7,16 +7,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "fend";
-  version = "1.0.1";
+  version = "1.0.3";
 
   src = fetchFromGitHub {
     owner = "printfn";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-EV3uxoN6RuQ7grXLcFev1ZCfjVnVIDumQmHdpUm1Jbc=";
+    sha256 = "sha256-eYCFX3JVsTnmVzHQd9JU6BT80kS0LTjVwVcfNJink1M=";
   };
 
-  cargoSha256 = "sha256-lNpFdrriAglLaiWjxVP4JoiBuU+zdLlerAIApIvHHZw=";
+  cargoSha256 = "sha256-+N8/ZKj1Ht2lkTYSEm/lrLtopBQqc82gIFiLzJ6NogU=";
 
   buildInputs = lib.optionals stdenv.isDarwin [ darwin.apple_sdk.frameworks.Security ];
 
diff --git a/pkgs/tools/misc/flameshot/default.nix b/pkgs/tools/misc/flameshot/default.nix
index 82cf7a3b78fd9..4bbe0508c12c5 100644
--- a/pkgs/tools/misc/flameshot/default.nix
+++ b/pkgs/tools/misc/flameshot/default.nix
@@ -10,13 +10,13 @@
 
 mkDerivation rec {
   pname = "flameshot";
-  version = "11.0.0";
+  version = "12.0.0";
 
   src = fetchFromGitHub {
     owner = "flameshot-org";
     repo = "flameshot";
     rev = "v${version}";
-    sha256 = "sha256-SlnEXW3Uhdgl0icwYyYsKQOcYkAtHpAvL6LMXBF2gWM=";
+    sha256 = "sha256-ByW+XYTaeBTTbOaxNeF367nqgnBM+EC8jm+PmwHcVGQ=";
   };
 
   passthru = {
diff --git a/pkgs/tools/misc/qjoypad/default.nix b/pkgs/tools/misc/qjoypad/default.nix
index 0c3b4a9ed2f83..018086e6dc7cb 100644
--- a/pkgs/tools/misc/qjoypad/default.nix
+++ b/pkgs/tools/misc/qjoypad/default.nix
@@ -1,21 +1,19 @@
-{ lib, stdenv, fetchurl, pkg-config, libX11, libXtst, qt4 }:
-stdenv.mkDerivation rec {
+{ lib, mkDerivation, fetchFromGitHub, pkg-config, cmake, libX11, libXtst, qtbase, qttools, qtx11extras }:
+mkDerivation rec {
   pname = "qjoypad";
-  version = "4.1.0";
-  src = fetchurl {
-    url = "mirror://sourceforge/qjoypad/qjoypad-${version}.tar.gz";
-    sha256 = "1jlm7i26nfp185xrl41kz5z6fgvyj51bjpz48cg27xx64y40iamm";
+  version = "4.3.1";
+
+  src = fetchFromGitHub {
+    owner = "panzi";
+    repo = pname;
+    rev = "v${version}";
+    hash = "sha256:1w26ddxb1xirb7qjf7kv9llxzjhbhcb7warnxbx41qhbni46g26y";
   };
-  nativeBuildInputs = [ pkg-config ];
-  buildInputs = [ libX11 libXtst qt4 ];
-  NIX_LDFLAGS = "-lX11";
-  patchPhase = ''
-    cd src
-    substituteInPlace config --replace /bin/bash ${stdenv.shell}
-    mkdir -p $out
-    export NIX_LDFLAGS="$NIX_LDFLAGS -rpath ${libX11}/lib"
-  '';
-  meta = {
+
+  nativeBuildInputs = [ pkg-config cmake ];
+  buildInputs = [ libX11 libXtst qtbase qttools qtx11extras ];
+
+  meta = with lib; {
     description = "A program that lets you use gaming devices anywhere";
     longDescription = ''
       A simple Linux/QT program that lets you use your gaming devices
@@ -33,9 +31,9 @@ stdenv.mkDerivation rec {
       of gaming devices in Linux, and makes the Linux gaming
       experience just a little bit nicer.
     '';
-    homepage = "http://qjoypad.sourceforge.net";
+    homepage = "https://github.com/panzi/qjoypad/";
     license = lib.licenses.gpl2;
-    maintainers = with lib.maintainers; [ astsmtl ];
-    platforms = with lib.platforms; linux;
+    maintainers = with maintainers; [ astsmtl ];
+    platforms = with platforms; linux;
   };
 }
diff --git a/pkgs/tools/misc/tmux/default.nix b/pkgs/tools/misc/tmux/default.nix
index fd4361d27678a..44cbe713f096e 100644
--- a/pkgs/tools/misc/tmux/default.nix
+++ b/pkgs/tools/misc/tmux/default.nix
@@ -6,7 +6,7 @@
 , libevent
 , ncurses
 , pkg-config
-, systemd
+, withSystemd ? stdenv.isLinux && !stdenv.hostPlatform.isStatic, systemd
 , utf8proc
 }:
 
@@ -43,13 +43,13 @@ stdenv.mkDerivation rec {
   buildInputs = [
     ncurses
     libevent
-  ] ++ lib.optionals stdenv.isLinux [ systemd ]
+  ] ++ lib.optionals withSystemd [ systemd ]
   ++ lib.optionals stdenv.isDarwin [ utf8proc ];
 
   configureFlags = [
     "--sysconfdir=/etc"
     "--localstatedir=/var"
-  ] ++ lib.optionals stdenv.isLinux [ "--enable-systemd" ]
+  ] ++ lib.optionals withSystemd [ "--enable-systemd" ]
   ++ lib.optionals stdenv.isDarwin [ "--enable-utf8proc" ];
 
   enableParallelBuilding = true;
diff --git a/pkgs/tools/misc/youtube-dl/default.nix b/pkgs/tools/misc/youtube-dl/default.nix
index fd038d7acb128..4aee6bdeb5f51 100644
--- a/pkgs/tools/misc/youtube-dl/default.nix
+++ b/pkgs/tools/misc/youtube-dl/default.nix
@@ -25,8 +25,8 @@ buildPythonPackage rec {
   };
 
   patches = [
-    # Fixes throttling on youtube.com. Without the patch downloads are capped at
-    # about 80KiB/s. See, e.g.,
+    # Fixes throttling on youtube.com by decoding a "n-parameter". Without the patch
+    # downloads are capped at about 80KiB/s. See, e.g.,
     #
     #   https://github.com/ytdl-org/youtube-dl/issues/29326
     #
@@ -37,6 +37,20 @@ buildPythonPackage rec {
       url = "https://github.com/ytdl-org/youtube-dl/compare/57044eacebc6f2f3cd83c345e1b6e659a22e4773...1e677567cd083d43f55daef0cc74e5fa24575ae3.diff";
       sha256 = "11s0j3w60r75xx20p0x2j3yc4d3yvz99r0572si8b5qd93lqs4pr";
     })
+    # The above patch may fail to decode the n-parameter (if, say, YouTube is updated). Failure to decode
+    # it blocks the download instead of falling back to the throttled version. The patch below implements
+    # better fallback behaviour.
+    (fetchpatch {
+      name = "avoid-crashing-if-nsig-decode-fails.patch";
+      url = "https://github.com/ytdl-org/youtube-dl/commit/41f0043983c831b7c0c3614340d2f66ec153087b.diff";
+      sha256 = "sha256-a72gWhBXCLjuBBD36PpZ5F/AHBdiBv4W8Wf9g4P/aBY=";
+    })
+    # YouTube changed the n-parameter format in April 2022, so decoder updates are required.
+    (fetchpatch {
+      name = "fix-n-descrambling.patch";
+      url = "https://github.com/ytdl-org/youtube-dl/commit/a0068bd6bec16008bda7a39caecccbf84881c603.diff";
+      sha256 = "sha256-tSuEns4jputa2nOOo6JsFXpK3hvJ/+z1/ymcLsd3A6w=";
+    })
   ];
 
   nativeBuildInputs = [ installShellFiles makeWrapper ];
diff --git a/pkgs/tools/networking/brook/default.nix b/pkgs/tools/networking/brook/default.nix
index e0e37e99ac743..b4a5a30beeb35 100644
--- a/pkgs/tools/networking/brook/default.nix
+++ b/pkgs/tools/networking/brook/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "brook";
-  version = "20220515";
+  version = "20220707";
 
   src = fetchFromGitHub {
     owner = "txthinking";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-olYlAuIcK34nNXbfiPT4+u0L3xcxBMMty72FjSeuNqg=";
+    sha256 = "sha256-TlbVXfNUvCHHX0BReSVE6GNfmS+p6lWSdO0OtOC+I2U=";
   };
 
-  vendorSha256 = "sha256-ic5QYRVElEuH4D29PXgTzMHU0KjrxDqcdfg7Kd37/YU=";
+  vendorSha256 = "sha256-MPLM1lBM1K55q6nsfmOekdFlSDmPsLLDv09mD1XqLNo=";
 
   meta = with lib; {
     homepage = "https://github.com/txthinking/brook";
diff --git a/pkgs/tools/networking/clash/default.nix b/pkgs/tools/networking/clash/default.nix
index d3125d13adabd..0341e7e7f3d32 100644
--- a/pkgs/tools/networking/clash/default.nix
+++ b/pkgs/tools/networking/clash/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "clash";
-  version = "1.10.6";
+  version = "1.11.0";
 
   src = fetchFromGitHub {
     owner = "Dreamacro";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-v9MUMgHIpHDUEmB5vXOIOkSriX+PCPtiiHHB4H5FeMw=";
+    sha256 = "sha256-8g5rrkRA31wHvwY3JDFIU+slU0cLHFpADyd897hVyw0=";
   };
 
-  vendorSha256 = "sha256-egbXCRmC862tctapMUWTcNej1g6a9wCt2JIC9DSEP6k=";
+  vendorSha256 = "sha256-iW14KxtUY2nhpShcdrHLiCRZxsoXyLSPt01dB0Ds28Y=";
 
   # Do not build testing suit
   excludedPackages = [ "./test" ];
diff --git a/pkgs/tools/networking/mu/default.nix b/pkgs/tools/networking/mu/default.nix
index fd140bfe55edc..b218a19154a5c 100644
--- a/pkgs/tools/networking/mu/default.nix
+++ b/pkgs/tools/networking/mu/default.nix
@@ -1,53 +1,46 @@
-{ lib, stdenv, fetchFromGitHub, sqlite, pkg-config, autoreconfHook, pmccabe
-, xapian, glib, gmime3, texinfo, emacs, guile
-, gtk3, webkitgtk, libsoup, icu
-, makeWrapper
-, withMug ? false
-, batchSize ? null }:
+{ lib
+, stdenv
+, fetchFromGitHub
+, meson
+, ninja
+, pkg-config
+, coreutils
+, emacs
+, glib
+, gmime3
+, texinfo
+, xapian
+}:
 
 stdenv.mkDerivation rec {
   pname = "mu";
-  version = "1.6.11";
+  version = "1.8.0";
 
   src = fetchFromGitHub {
     owner  = "djcb";
     repo   = "mu";
-    rev    = version;
-    sha256 = "E/6+vEwYXk65/ZoAtUeTjvg56g6gz+Qtcaz0qwEru6c=";
+    rev    = "v${version}";
+    sha256 = "rb8R04eU/rG7PXx/horYk0+/3AgbxYYZtxy4ACILOZ8=";
   };
 
-  postPatch = lib.optionalString (batchSize != null) ''
-    sed -i lib/mu-store.cc --regexp-extended \
-      -e 's@(constexpr auto BatchSize).*@\1 = ${toString batchSize};@'
-  '';
+  postPatch = ''
+      # Fix mu4e-builddir (set it to $out)
+      substituteInPlace mu4e/mu4e-config.el.in \
+        --replace "@abs_top_builddir@" "$out"
+      substituteInPlace lib/utils/mu-utils.cc \
+        --replace "/bin/rm" "${coreutils}/bin/rm"
+    '';
 
-  buildInputs = [
-    sqlite xapian glib gmime3 texinfo emacs libsoup icu
-  ]
-    # Workaround for https://github.com/djcb/mu/issues/1641
-    ++ lib.optional (!stdenv.isDarwin) guile
-    ++ lib.optionals withMug [ gtk3 webkitgtk ];
+  buildInputs = [ emacs glib gmime3 texinfo xapian ];
 
-  nativeBuildInputs = [ pkg-config autoreconfHook pmccabe makeWrapper ];
+  mesonFlags = [
+    "-Dguile=disabled"
+    "-Dreadline=disabled"
+  ];
 
-  enableParallelBuilding = true;
+  nativeBuildInputs = [ pkg-config meson ninja ];
 
-  preBuild = ''
-    # Fix mu4e-builddir (set it to $out)
-    substituteInPlace mu4e/mu4e-meta.el.in \
-      --replace "@abs_top_builddir@" "$out"
-  '';
-
-  # Make sure included scripts can find their dependencies & optionally install mug
-  postInstall = ''
-    wrapProgram "$out/bin/mu" \
-      --prefix LD_LIBRARY_PATH : "$out/lib" \
-      --prefix GUILE_LOAD_PATH : "$out/share/guile/site/2.2"
-  '' + lib.optionalString withMug ''
-    for f in mug ; do
-      install -m755 toys/$f/$f $out/bin/$f
-    done
-  '';
+  enableParallelBuilding = true;
 
   doCheck = true;
 
@@ -55,7 +48,7 @@ stdenv.mkDerivation rec {
     description = "A collection of utilties for indexing and searching Maildirs";
     license = licenses.gpl3Plus;
     homepage = "https://www.djcbsoftware.nl/code/mu/";
-    changelog = "https://github.com/djcb/mu/releases/tag/${version}";
+    changelog = "https://github.com/djcb/mu/releases/tag/v${version}";
     maintainers = with maintainers; [ antono chvp peterhoeg ];
     platforms = platforms.mesaPlatforms;
   };
diff --git a/pkgs/tools/networking/networkmanager/default.nix b/pkgs/tools/networking/networkmanager/default.nix
index c85d7ef612812..97a029d353b2d 100644
--- a/pkgs/tools/networking/networkmanager/default.nix
+++ b/pkgs/tools/networking/networkmanager/default.nix
@@ -119,6 +119,22 @@ stdenv.mkDerivation rec {
     # Meson does not support using different directories during build and
     # for installation like Autotools did with flags passed to make install.
     ./fix-install-paths.patch
+
+    (fetchpatch {
+      # Prevent downgrade to plain network on Enhanced Open profiles
+      url = "https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/commit/b7946e50acc0d20d31b0c1098fdadc2f105ba799.patch";
+      hash = "sha256-CdZiubfqhJQ5w4+s9O8C5WI9Ls/paONzDX4rX6yEmS0=";
+    })
+    (fetchpatch {
+      # Treat OWE BSSIDs as valid candidates for open profiles
+      url = "https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/commit/dd80cdcc1bd5e2535b8e4a1d1d0c62f1d3328a7c.patch";
+      hash = "sha256-QMZvWN3g8K+UH6y05+RkCmF+gHHU4pB+UXfU770AUis=";
+    })
+    (fetchpatch {
+      # Allow distinguishing pure OWE networks from those with transition mode enabled
+      url = "https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/commit/13ea8d2e7dddd8279c82230594cea533ca349dd3.patch";
+      hash = "sha256-BiINGzX/Zp8pwdbMiDScrZvrHtH7coXkZm1HScFuFWA=";
+    })
   ];
 
   buildInputs = [
diff --git a/pkgs/tools/networking/offlineimap/default.nix b/pkgs/tools/networking/offlineimap/default.nix
index 98aabadf6da33..aa9c588e25312 100644
--- a/pkgs/tools/networking/offlineimap/default.nix
+++ b/pkgs/tools/networking/offlineimap/default.nix
@@ -32,7 +32,6 @@ python3.pkgs.buildPythonApplication rec {
     certifi
     distro
     imaplib2
-    kerberos
     pysocks
     rfc6555
     urllib3
diff --git a/pkgs/tools/networking/routedns/default.nix b/pkgs/tools/networking/routedns/default.nix
new file mode 100644
index 0000000000000..4cf2c9eeeed8b
--- /dev/null
+++ b/pkgs/tools/networking/routedns/default.nix
@@ -0,0 +1,29 @@
+{ lib
+, buildGoModule
+, fetchFromGitHub
+}:
+
+buildGoModule rec {
+  pname = "routedns";
+  version = "0.1.5";
+
+  src = fetchFromGitHub {
+    owner = "folbricht";
+    repo = "routedns";
+    # https://github.com/folbricht/routedns/issues/237
+    rev = "02f14a567fee2a289810979446f5260b8a31bf73";
+    sha256 = "sha256-oImimNBz1qizUPD6qHi73fGKNCu5cii99GIUo21e+bs=";
+  };
+
+  vendorSha256 = "sha256-T6adpxJgOPGy+UOOlGAAf1gjk1wJxwOc9enfv9X3LBE=";
+
+  subPackages = [ "./cmd/routedns" ];
+
+  meta = with lib; {
+    homepage = "https://github.com/folbricht/routedns";
+    description = "DNS stub resolver, proxy and router";
+    license = licenses.bsd3;
+    maintainers = with maintainers; [ jsimonetti ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/tools/networking/vegeta/default.nix b/pkgs/tools/networking/vegeta/default.nix
index 16abe8c60335e..6e7bbaa8366bf 100644
--- a/pkgs/tools/networking/vegeta/default.nix
+++ b/pkgs/tools/networking/vegeta/default.nix
@@ -1,25 +1,40 @@
-{ lib, fetchFromGitHub, buildGoPackage }:
+{ lib
+, fetchFromGitHub
+, buildGoModule
+}:
 
-buildGoPackage rec {
+buildGoModule rec {
   pname = "vegeta";
   version = "12.8.4";
+  rev = "e04d9c0df8177e8633bff4afe7b39c2f3a9e7dea";
 
   src = fetchFromGitHub {
-    owner  = "tsenart";
-    repo   = pname;
-    rev    = "v${version}";
-    sha256 = "0sw10k4g370c544dgw2c1sqdnxryld8lf6c1wnyknrm3zsfzn1hl";
+    owner = "tsenart";
+    repo = "vegeta";
+    rev = "v${version}";
+    sha256 = "sha256-FAb7nf6jZju95YEZR1GjPnfbsA5M8NcIKQyc8cgEgWs=";
   };
 
-  goPackagePath = "github.com/tsenart/${pname}";
+  vendorSha256 = "sha256-v9Hu9eQJSmm4Glt49F7EN40rKjrg4acyll9Bfgey+Mw=";
 
-  goDeps = ./deps.nix;
+  subPackages = [ "." ];
+
+  ldflags = (lib.mapAttrsToList (n: v: "-X main.${n}=${v}") {
+    Version = version;
+    Commit = rev;
+    Date = "1970-01-01T00:00:00Z";
+  }) ++ [ "-s" "-w" "-extldflags '-static'" ];
 
   meta = with lib; {
     description = "Versatile HTTP load testing tool";
-    license = licenses.mit;
+    longDescription = ''
+      Vegeta is a versatile HTTP load testing tool built out of a need to drill
+      HTTP services with a constant request rate. It can be used both as a
+      command line utility and a library.
+    '';
     homepage = "https://github.com/tsenart/vegeta/";
-    maintainers = [ maintainers.mmahut ];
+    changelog = "https://github.com/tsenart/vegeta/releases/tag/${src.rev}";
+    license = licenses.mit;
+    maintainers = with maintainers; [ mmahut ];
   };
 }
-
diff --git a/pkgs/tools/networking/vegeta/deps.nix b/pkgs/tools/networking/vegeta/deps.nix
deleted file mode 100644
index 1a06ad178ec44..0000000000000
--- a/pkgs/tools/networking/vegeta/deps.nix
+++ /dev/null
@@ -1,255 +0,0 @@
-# file generated from go.mod using vgo2nix (https://github.com/adisbladis/vgo2nix)
-[
-  {
-    goPackagePath = "github.com/alecthomas/jsonschema";
-    fetch = {
-      type = "git";
-      url = "https://github.com/alecthomas/jsonschema";
-      rev = "f2c93856175a";
-      sha256 = "145w6zg453mbspfyixs71xfjwi3djq20lij1rcgrdcn5gmwj2cal";
-    };
-  }
-  {
-    goPackagePath = "github.com/bmizerany/perks";
-    fetch = {
-      type = "git";
-      url = "https://github.com/bmizerany/perks";
-      rev = "d9a9656a3a4b";
-      sha256 = "0f39b3zfm1zd6xcvlm6szgss026qs84n2j9y5bnb3zxzdkxb9w9n";
-    };
-  }
-  {
-    goPackagePath = "github.com/c2h5oh/datasize";
-    fetch = {
-      type = "git";
-      url = "https://github.com/c2h5oh/datasize";
-      rev = "4eba002a5eae";
-      sha256 = "02sxd659q7m7axfywiqfxk5rh6djh2m5240bin1makldj1nj16j3";
-    };
-  }
-  {
-    goPackagePath = "github.com/dgryski/go-gk";
-    fetch = {
-      type = "git";
-      url = "https://github.com/dgryski/go-gk";
-      rev = "201884a44051";
-      sha256 = "17csmdlqibg5g2pjybh4522dis6nklyhjvly55pawy0vprd17agz";
-    };
-  }
-  {
-    goPackagePath = "github.com/dgryski/go-lttb";
-    fetch = {
-      type = "git";
-      url = "https://github.com/dgryski/go-lttb";
-      rev = "318fcdf10a77";
-      sha256 = "0cs2rr2j6fbbpgmfxkq39pir4bibfzkfwxvd2cvw30q97cmfpiz3";
-    };
-  }
-  {
-    goPackagePath = "github.com/gonum/blas";
-    fetch = {
-      type = "git";
-      url = "https://github.com/gonum/blas";
-      rev = "f22b278b28ac";
-      sha256 = "0dh73akv4gazyhva9xbm9xbq786vij8iisivp3p65p6ahf502fs6";
-    };
-  }
-  {
-    goPackagePath = "github.com/gonum/diff";
-    fetch = {
-      type = "git";
-      url = "https://github.com/gonum/diff";
-      rev = "500114f11e71";
-      sha256 = "1bg4k3bxqb44nz1nmyigr5bx55859n55vvi45w2rq4y5djvpral8";
-    };
-  }
-  {
-    goPackagePath = "github.com/gonum/floats";
-    fetch = {
-      type = "git";
-      url = "https://github.com/gonum/floats";
-      rev = "c233463c7e82";
-      sha256 = "12m7pa64mk3am2i10agg6c1aqdfgx9i3f4bgf3w7wra8bnnjncp6";
-    };
-  }
-  {
-    goPackagePath = "github.com/gonum/integrate";
-    fetch = {
-      type = "git";
-      url = "https://github.com/gonum/integrate";
-      rev = "a422b5c0fdf2";
-      sha256 = "01wfav882h3bcp137cd2bsr91hkmmi4d6qwhdm0xv1p2z2qzs7iq";
-    };
-  }
-  {
-    goPackagePath = "github.com/gonum/internal";
-    fetch = {
-      type = "git";
-      url = "https://github.com/gonum/internal";
-      rev = "f884aa714029";
-      sha256 = "038w8pc82vxq773qg0mw472f3p8h5vkh3ggcdn09qd3s6myp2zq7";
-    };
-  }
-  {
-    goPackagePath = "github.com/gonum/lapack";
-    fetch = {
-      type = "git";
-      url = "https://github.com/gonum/lapack";
-      rev = "e4cdc5a0bff9";
-      sha256 = "046fffskysg0bmha16s5582bimpis0m6qd7c7k1n65a0qhrslli1";
-    };
-  }
-  {
-    goPackagePath = "github.com/gonum/mathext";
-    fetch = {
-      type = "git";
-      url = "https://github.com/gonum/mathext";
-      rev = "8a4bf007ea55";
-      sha256 = "044xy32mgcjc5948na6f6fgqqq17canw3z6sppidmj52s17p0k7i";
-    };
-  }
-  {
-    goPackagePath = "github.com/gonum/matrix";
-    fetch = {
-      type = "git";
-      url = "https://github.com/gonum/matrix";
-      rev = "c518dec07be9";
-      sha256 = "0i6pyxxhcy2s9as77g90dsj9xya48775dl5fxgvqal665cxc4l4i";
-    };
-  }
-  {
-    goPackagePath = "github.com/gonum/stat";
-    fetch = {
-      type = "git";
-      url = "https://github.com/gonum/stat";
-      rev = "41a0da705a5b";
-      sha256 = "0r9mqiy3ma0c15p57bz4xq2vf105s9g1lqysb7ff0nip4050cpvn";
-    };
-  }
-  {
-    goPackagePath = "github.com/google/go-cmp";
-    fetch = {
-      type = "git";
-      url = "https://github.com/google/go-cmp";
-      rev = "v0.2.0";
-      sha256 = "1fbv0x27k9sn8svafc0hjwsnckk864lv4yi7bvzrxvmd3d5hskds";
-    };
-  }
-  {
-    goPackagePath = "github.com/influxdata/tdigest";
-    fetch = {
-      type = "git";
-      url = "https://github.com/influxdata/tdigest";
-      rev = "a7d76c6f093a";
-      sha256 = "02jxrb2d1n6zflwa7jhgid5344l6zj4gxg4kis20v7xa6iqrj1ni";
-    };
-  }
-  {
-    goPackagePath = "github.com/mailru/easyjson";
-    fetch = {
-      type = "git";
-      url = "https://github.com/mailru/easyjson";
-      rev = "v0.7.0";
-      sha256 = "13zv5fvjp3nr65lhqhiw6i6mlmqvyls882rlmcas0ab35alsxni8";
-    };
-  }
-  {
-    goPackagePath = "github.com/miekg/dns";
-    fetch = {
-      type = "git";
-      url = "https://github.com/miekg/dns";
-      rev = "v1.1.17";
-      sha256 = "0x0375n7n1qmgyn7yvpr65z4ll4l39q2xagyfafw09h3kkrkpka8";
-    };
-  }
-  {
-    goPackagePath = "github.com/streadway/quantile";
-    fetch = {
-      type = "git";
-      url = "https://github.com/streadway/quantile";
-      rev = "b0c588724d25";
-      sha256 = "1y27nrg7wkyrvw07a5s7wl4lpwxshwyvhzc6i0rzn20dajah2vkh";
-    };
-  }
-  {
-    goPackagePath = "github.com/tsenart/go-tsz";
-    fetch = {
-      type = "git";
-      url = "https://github.com/tsenart/go-tsz";
-      rev = "cdeb9e1e981e";
-      sha256 = "1lgnllx810ly0203jn9vkimcwqv3302mnh9d7mip1yyq4cmvlj3b";
-    };
-  }
-  {
-    goPackagePath = "golang.org/x/crypto";
-    fetch = {
-      type = "git";
-      url = "https://go.googlesource.com/crypto";
-      rev = "9756ffdc2472";
-      sha256 = "0q7hxaaq6lp0v8qqzifvysl47z5rfdlrxkh3d29vsl3wyby3dxl8";
-    };
-  }
-  {
-    goPackagePath = "golang.org/x/net";
-    fetch = {
-      type = "git";
-      url = "https://go.googlesource.com/net";
-      rev = "ba9fcec4b297";
-      sha256 = "1hbqvy6r0s5h0dpdqw8fynl3cq0acin3iyqki9xvl5r8h33yb9bx";
-    };
-  }
-  {
-    goPackagePath = "golang.org/x/sync";
-    fetch = {
-      type = "git";
-      url = "https://go.googlesource.com/sync";
-      rev = "112230192c58";
-      sha256 = "05i2k43j2d0llq768hg5pf3hb2yhfzp9la1w5wp0rsnnzblr0lfn";
-    };
-  }
-  {
-    goPackagePath = "golang.org/x/sys";
-    fetch = {
-      type = "git";
-      url = "https://go.googlesource.com/sys";
-      rev = "749cb33beabd";
-      sha256 = "0dm3257q3rv2kyn5lmqqim2fqg634v6rhrqq4glvbk4wx4l3v337";
-    };
-  }
-  {
-    goPackagePath = "golang.org/x/text";
-    fetch = {
-      type = "git";
-      url = "https://go.googlesource.com/text";
-      rev = "v0.3.2";
-      sha256 = "0flv9idw0jm5nm8lx25xqanbkqgfiym6619w575p7nrdh0riqwqh";
-    };
-  }
-  {
-    goPackagePath = "golang.org/x/tools";
-    fetch = {
-      type = "git";
-      url = "https://go.googlesource.com/tools";
-      rev = "2ca718005c18";
-      sha256 = "1nl4cw8vrfigab0hij86vl2mmhfmyim69r7vy5qk2v60g8frvgxg";
-    };
-  }
-  {
-    goPackagePath = "golang.org/x/xerrors";
-    fetch = {
-      type = "git";
-      url = "https://go.googlesource.com/xerrors";
-      rev = "a985d3407aa7";
-      sha256 = "00wzr5w8aadipgc3rkk8f11i41znskfj9ix5nhhaxyg7isrslgcj";
-    };
-  }
-  {
-    goPackagePath = "pgregory.net/rapid";
-    fetch = {
-      type = "git";
-      url = "https://github.com/flyingmutant/rapid";
-      rev = "v0.3.3";
-      sha256 = "04w4dmx753b2xp5z5br5wxalgkkgag8qpbxics2gdcksqgi85vg3";
-    };
-  }
-]
diff --git a/pkgs/tools/networking/waitron/default.nix b/pkgs/tools/networking/waitron/default.nix
index 4f2f634d4942d..7ef984147a322 100644
--- a/pkgs/tools/networking/waitron/default.nix
+++ b/pkgs/tools/networking/waitron/default.nix
@@ -1,29 +1,38 @@
-{ lib, buildGoPackage, fetchFromGitHub, fetchhg, fetchbzr, fetchsvn }:
+{ lib
+, buildGoModule
+, fetchFromGitHub
+}:
 
-buildGoPackage rec {
+buildGoModule rec {
   pname = "waitron";
-  version = "unstable-2020-01-24";
-
-  goPackagePath = "github.com/ns1/waitron";
+  version = "unstable-2020-08-04";
+  rev = "2315857d94e3d1a1e79ac48f8f6a68d59d0ce300";
 
   src = fetchFromGitHub {
     owner = "ns1";
     repo = "waitron";
-    rev = "c96833619cbb0cf2bc71b1d7b534101e139cc6e6";
+    inherit rev;
     sha256 = "sha256-ZkGhEOckIOYGb6Yjr4I4e9cjAHDfksRwHW+zgOMZ/FE=";
   };
 
+  vendorSha256 = "sha256-grQFLo0BIIa/kNKF4vPw/V1WN9sxOucz6+wET2PBU1I=";
+
+  subPackages = [ "." ];
+
   patches = [
     ./staticfiles-directory.patch
   ];
 
-  goDeps = ./deps.nix;
-
-  meta = {
+  meta = with lib; {
     description = "A tool to manage network booting of machines";
+    longDescription = ''
+      Waitron is used to build machines (primarily bare-metal, but anything that
+      understands PXE booting will work) based on definitions from any number of
+      specified inventory sources.
+    '';
     homepage = "https://github.com/ns1/waitron";
-    license =  lib.licenses.asl20;
-    maintainers = with lib.maintainers; [ guibert ];
-    platforms = lib.platforms.linux;
+    license =  licenses.asl20;
+    maintainers = with maintainers; [ guibert ];
+    platforms = platforms.linux;
   };
 }
diff --git a/pkgs/tools/networking/waitron/deps.nix b/pkgs/tools/networking/waitron/deps.nix
deleted file mode 100644
index 46369c783184f..0000000000000
--- a/pkgs/tools/networking/waitron/deps.nix
+++ /dev/null
@@ -1,57 +0,0 @@
-# This file was generated by https://github.com/kamilchm/go2nix v1.3.0
-[
-  {
-    goPackagePath = "github.com/flosch/pongo2";
-    fetch = {
-      type = "git";
-      url = "https://github.com/flosch/pongo2";
-      rev = "bbf5a6c351f4d4e883daa40046a404d7553e0a00";
-      sha256 = "0yqh58phznnxakm64w82gawrpndb0r85vsd1s7h244qqrq7w4avq";
-    };
-  }
-  {
-    goPackagePath = "github.com/gorilla/handlers";
-    fetch = {
-      type = "git";
-      url = "https://github.com/gorilla/handlers";
-      rev = "f08afc1876ad882db8074bcb8a4cc96107d3a5f4";
-      sha256 = "1ysm6sw3jqa3h8pb5qpqgh44g91c23n3as277sh0vyp7282290jq";
-    };
-  }
-  {
-    goPackagePath = "github.com/juju/errors";
-    fetch = {
-      type = "git";
-      url = "https://github.com/juju/errors";
-      rev = "d42613fe1ab9e303fc850e7a19fda2e8eeb6516e";
-      sha256 = "0qggzzvh9lzlfk8ixlyw8bw645rh0lrjrd367505hhl6cg18v8yf";
-    };
-  }
-  {
-    goPackagePath = "github.com/julienschmidt/httprouter";
-    fetch = {
-      type = "git";
-      url = "https://github.com/julienschmidt/httprouter";
-      rev = "8c9f31f047a304abedb5614d4a18a843cd5f4a40";
-      sha256 = "00f5ja1yslrjclx3sf29mzpcsrpfd15kkw5ygv7n4jsyb4v3xgj6";
-    };
-  }
-  {
-    goPackagePath = "github.com/satori/go.uuid";
-    fetch = {
-      type = "git";
-      url = "https://github.com/satori/go.uuid";
-      rev = "b2ce2384e17bbe0c6d34077efa39dbab3e09123b";
-      sha256 = "1yz4cx02377ijlf8mnn84j1dcmlwh8ncx7y3kw1zg2qw0z4x119c";
-    };
-  }
-  {
-    goPackagePath = "gopkg.in/yaml.v2";
-    fetch = {
-      type = "git";
-      url = "https://gopkg.in/yaml.v2";
-      rev = "53403b58ad1b561927d19068c655246f2db79d48";
-      sha256 = "1inf7svydzscwv9fcjd2rm61a4xjk6jkswknybmns2n58shimapw";
-    };
-  }
-]
diff --git a/pkgs/tools/nix/alejandra/default.nix b/pkgs/tools/nix/alejandra/default.nix
index 0e7f5e133eaad..5cfacdb50bc04 100644
--- a/pkgs/tools/nix/alejandra/default.nix
+++ b/pkgs/tools/nix/alejandra/default.nix
@@ -7,16 +7,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "alejandra";
-  version = "1.4.0";
+  version = "1.5.0";
 
   src = fetchFromGitHub {
     owner = "kamadorueda";
     repo = "alejandra";
     rev = version;
-    sha256 = "sha256-0AolxQtKj3Oek0WSbODDpPVO5Ih8PXHOA3qXEKPB4dQ=";
+    sha256 = "sha256-A0ruEdPeKIzGYxyXNACnzaKtQUVc30s2ExTUzdFTcWM=";
   };
 
-  cargoSha256 = "sha256-USI98hozlTaTj07tMbCQEWDgRkHsd4PFW1HUpKsNZJA=";
+  cargoSha256 = "sha256-BmpFyVF2fxV3rExI7rpOQlVwHEJNlof44dnUshaO/no=";
 
   passthru.tests = {
     version = testers.testVersion { package = alejandra; };
diff --git a/pkgs/tools/nix/nar-serve/default.nix b/pkgs/tools/nix/nar-serve/default.nix
index 1d7fd6beb4a7d..10ac797578f98 100644
--- a/pkgs/tools/nix/nar-serve/default.nix
+++ b/pkgs/tools/nix/nar-serve/default.nix
@@ -4,16 +4,16 @@
 }:
 buildGoModule rec {
   pname = "nar-serve";
-  version = "0.4.0";
+  version = "0.6.1";
 
   src = fetchFromGitHub {
     owner = "numtide";
     repo = "nar-serve";
     rev = "v${version}";
-    hash = "sha256-h/pzKRXgcGTpr1YUKppDa+iTLKak/PGhbYa8ZczWj1U=";
+    hash = "sha256-cSOYHYJJEGzFtkD4mjTmYBiM9CaWKt64xgV/JeNHpfM=";
   };
 
-  vendorSha256 = "sha256-eW+cul/5qJocpKV/6azxj7HTmkezDw6dNubPtAOP5HU=";
+  vendorSha256 = "sha256-RpjLs4+9abbbysYAlPDUXBLe1cz4Lp+QmR1yv+LpYwQ=";
 
   doCheck = false;
 
diff --git a/pkgs/tools/nix/nixel/default.nix b/pkgs/tools/nix/nixel/default.nix
new file mode 100644
index 0000000000000..5ce14a8d312fe
--- /dev/null
+++ b/pkgs/tools/nix/nixel/default.nix
@@ -0,0 +1,36 @@
+{ lib
+, rustPlatform
+, fetchFromGitHub
+, testers
+, nixel
+}:
+
+rustPlatform.buildRustPackage rec {
+  pname = "nixel";
+  version = "4.1.0";
+
+  src = fetchFromGitHub {
+    owner = "kamadorueda";
+    repo = pname;
+    rev = version;
+    sha256 = "sha256-dQ3wzBTjteqk9rju+FMAO+ydimnGu24Y2DEDLX/P+1A=";
+  };
+
+  cargoSha256 = "sha256-1OsHs0W3ji9Kgpv7nGY9XyGxJ4c0faN2VuFLsdwkgKY=";
+
+  # Package requires a non reproducible submodule
+  # https://github.com/kamadorueda/nixel/blob/2873bd84bf4fc540d0ae8af062e109cc9ad40454/.gitmodules#L7
+  doCheck = false;
+  #
+  # Let's test it runs
+  passthru.tests = {
+    version = testers.testVersion { package = nixel; };
+  };
+
+  meta = with lib; {
+    description = "Lexer, Parser, Abstract Syntax Tree and Concrete Syntax Tree for the Nix Expressions Language";
+    homepage = "https://github.com/kamadorueda/nixel";
+    license = licenses.agpl3Only;
+    maintainers = with maintainers; [ kamadorueda ];
+  };
+}
diff --git a/pkgs/tools/package-management/appimagekit/default.nix b/pkgs/tools/package-management/appimagekit/default.nix
index 3118b784334b0..151566ba8e8e2 100644
--- a/pkgs/tools/package-management/appimagekit/default.nix
+++ b/pkgs/tools/package-management/appimagekit/default.nix
@@ -96,6 +96,7 @@ in stdenv.mkDerivation rec {
     "-DUSE_SYSTEM_LIBARCHIVE=ON"
     "-DUSE_SYSTEM_GTEST=ON"
     "-DUSE_SYSTEM_MKSQUASHFS=ON"
+    "-DTOOLS_PREFIX=${stdenv.cc.targetPrefix}"
   ];
 
   postInstall = ''
diff --git a/pkgs/tools/package-management/cargo-about/default.nix b/pkgs/tools/package-management/cargo-about/default.nix
deleted file mode 100644
index 8b98858e823b9..0000000000000
--- a/pkgs/tools/package-management/cargo-about/default.nix
+++ /dev/null
@@ -1,31 +0,0 @@
-{ lib, rustPlatform, fetchFromGitHub, pkg-config, zstd, stdenv }:
-
-rustPlatform.buildRustPackage rec {
-  pname = "cargo-about";
-  version = "0.5.1";
-
-  src = fetchFromGitHub {
-    owner = "EmbarkStudios";
-    repo = "cargo-about";
-    rev = version;
-    sha256 = "sha256-T8Hhody0jMmZb6/xMkSvKCv4STZPbcrf/UB3APspYDM=";
-  };
-
-  # enable pkg-config feature of zstd
-  cargoPatches = [ ./zstd-pkg-config.patch ];
-
-  cargoSha256 = "sha256-x/HzDYNy0FDxJmhjSUUEiyahM7Sw27aC+ULP/Ii0X/8=";
-
-  nativeBuildInputs = [ pkg-config ];
-
-  buildInputs = [ zstd ];
-
-  meta = with lib; {
-    description = "Cargo plugin to generate list of all licenses for a crate";
-    homepage = "https://github.com/EmbarkStudios/cargo-about";
-    changelog = "https://github.com/EmbarkStudios/cargo-about/blob/${version}/CHANGELOG.md";
-    license = with licenses; [ mit /* or */ asl20 ];
-    maintainers = with maintainers; [ evanjs figsoda ];
-    broken = stdenv.isDarwin;
-  };
-}
diff --git a/pkgs/tools/package-management/cargo-about/zstd-pkg-config.patch b/pkgs/tools/package-management/cargo-about/zstd-pkg-config.patch
deleted file mode 100644
index e084538ca924c..0000000000000
--- a/pkgs/tools/package-management/cargo-about/zstd-pkg-config.patch
+++ /dev/null
@@ -1,39 +0,0 @@
---- a/Cargo.lock
-+++ b/Cargo.lock
-@@ -183,6 +183,7 @@ dependencies = [
-  "toml_edit",
-  "twox-hash",
-  "url",
-+ "zstd",
- ]
- 
- [[package]]
-@@ -1039,6 +1040,12 @@ version = "0.1.0"
- source = "registry+https://github.com/rust-lang/crates.io-index"
- checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184"
- 
-+[[package]]
-+name = "pkg-config"
-+version = "0.3.22"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "12295df4f294471248581bc09bef3c38a5e46f1e36d6a37353621a0c6c357e1f"
-+
- [[package]]
- name = "ppv-lite86"
- version = "0.2.15"
-@@ -1902,4 +1909,5 @@ checksum = "2141bed8922b427761470e6bbfeff255da94fa20b0bbeab0d9297fcaf71e3aa7"
- dependencies = [
-  "cc",
-  "libc",
-+ "pkg-config",
- ]
-diff --git a/Cargo.toml b/Cargo.toml
-index bf2a896..35cbf7c 100644
---- a/Cargo.toml
-+++ b/Cargo.toml
-@@ -80,3 +80,5 @@ toml_edit = "0.9"
- twox-hash = "1.6"
- # Url parsing
- url = "2.2"
-+
-+zstd = { version = "*", features = ["pkg-config"] }
diff --git a/pkgs/tools/package-management/cargo-audit/default.nix b/pkgs/tools/package-management/cargo-audit/default.nix
deleted file mode 100644
index 982a000caa74d..0000000000000
--- a/pkgs/tools/package-management/cargo-audit/default.nix
+++ /dev/null
@@ -1,46 +0,0 @@
-{ lib
-, stdenv
-, rustPlatform
-, fetchFromGitHub
-, openssl
-, pkg-config
-, Security
-, libiconv
-}:
-
-rustPlatform.buildRustPackage rec {
-  pname = "cargo-audit";
-  version = "0.17.0";
-
-  src = fetchFromGitHub {
-    owner = "RustSec";
-    repo = "rustsec";
-    rev = "cargo-audit%2Fv${version}";
-    sha256 = "sha256-x91x5XjIRXLhs96r06ITbpHCkHoaCaMXH+VCp6f57Gg=";
-  };
-
-  cargoSha256 = "sha256-/CzRkdo4kfvRwOZsfyu0zL3UnjEKCBj7wj40jlydSDI=";
-
-  nativeBuildInputs = [
-    pkg-config
-  ];
-
-  buildInputs = [
-    openssl
-    libiconv
-  ] ++ lib.optionals stdenv.isDarwin [
-    Security
-  ];
-
-  buildFeatures = [ "fix" ];
-
-  # The tests require network access which is not available in sandboxed Nix builds.
-  doCheck = false;
-
-  meta = with lib; {
-    description = "Audit Cargo.lock files for crates with security vulnerabilities";
-    homepage = "https://rustsec.org";
-    license = with licenses; [ mit /* or */ asl20 ];
-    maintainers = with maintainers; [ basvandijk jk ];
-  };
-}
diff --git a/pkgs/tools/package-management/cargo-deb/default.nix b/pkgs/tools/package-management/cargo-deb/default.nix
deleted file mode 100644
index 2eb2ddd2d9843..0000000000000
--- a/pkgs/tools/package-management/cargo-deb/default.nix
+++ /dev/null
@@ -1,49 +0,0 @@
-{ stdenv
-, lib
-, fetchFromGitHub
-, rustPlatform
-, rust
-, libiconv
-, Security
-}:
-
-rustPlatform.buildRustPackage rec {
-  pname = "cargo-deb";
-  version = "1.30.0";
-
-  src = fetchFromGitHub {
-    owner = "mmstick";
-    repo = pname;
-    rev = "v${version}";
-    sha256 = "sha256-rAmG6Aj0D9dHVueh1BN1Chhit+XFhqGib1WTvMDy0LI=";
-  };
-
-  buildInputs = lib.optionals stdenv.isDarwin [ libiconv Security ];
-
-  cargoSha256 = "sha256-MEpyEdjLWNZvqE7gJLvQ169tgmJRzec4vqQI9fF3xr8=";
-
-  preCheck = ''
-    substituteInPlace tests/command.rs \
-      --replace 'target/debug' "target/${rust.toRustTarget stdenv.buildPlatform}/release"
-
-    # This is an FHS specific assert depending on glibc location
-    substituteInPlace src/dependencies.rs \
-      --replace 'assert!(deps.iter().any(|d| d.starts_with("libc")));' '// no libc assert here'
-  '';
-
-  meta = with lib; {
-    description = "Generate Debian packages from information in Cargo.toml";
-    homepage = "https://github.com/mmstick/cargo-deb";
-    license = licenses.mit;
-    # test failures:
-    #   control::tests::generate_scripts_generates_maintainer_scripts_for_unit
-    #   dh_installsystemd::tests::find_units_in_empty_dir_finds_nothing
-    #   dh_lib::tests::apply_with_no_matching_files
-    #   dh_lib::tests::debhelper_script_subst_with_generated_file_only
-    #   dh_lib::tests::debhelper_script_subst_with_no_matching_files
-    #   dh_lib::tests::pkgfile_finds_most_specific_match_without_pkg_file
-    #   dh_lib::tests::pkgfile_finds_most_specific_match_without_unit_file
-    broken = (stdenv.isDarwin && stdenv.isx86_64);
-    maintainers = with maintainers; [ Br1ght0ne ];
-  };
-}
diff --git a/pkgs/tools/package-management/cargo-deps/default.nix b/pkgs/tools/package-management/cargo-deps/default.nix
deleted file mode 100644
index b98a0d75793f3..0000000000000
--- a/pkgs/tools/package-management/cargo-deps/default.nix
+++ /dev/null
@@ -1,20 +0,0 @@
-{ lib, fetchCrate, rustPlatform }:
-
-rustPlatform.buildRustPackage rec {
-  pname = "cargo-deps";
-  version = "1.4.1";
-
-  src = fetchCrate {
-    inherit pname version;
-    sha256 = "sha256-WzvWkn2o39InESSzF5oLVP1I876b+r749hjZgh2DxOk=";
-  };
-
-  cargoSha256 = "15pf4x2aw8sl65g63cz4yv9y78yc2wi25h9khpqx6i7gyd7dxbsc";
-
-  meta = with lib; {
-    description = "Cargo subcommand for building dependency graphs of Rust projects";
-    homepage = "https://github.com/m-cat/cargo-deps";
-    license = licenses.mit;
-    maintainers = with maintainers; [ arcnmx ];
-  };
-}
diff --git a/pkgs/tools/package-management/cargo-download/Cargo.nix b/pkgs/tools/package-management/cargo-download/Cargo.nix
deleted file mode 100644
index f96a3a207df01..0000000000000
--- a/pkgs/tools/package-management/cargo-download/Cargo.nix
+++ /dev/null
@@ -1,675 +0,0 @@
-# Generated by carnix 0.10.0: carnix generate-nix
-{ lib, buildPlatform, buildRustCrate, buildRustCrateHelpers, cratesIO, fetchgit }:
-with buildRustCrateHelpers;
-let inherit (lib.lists) fold;
-    inherit (lib.attrsets) recursiveUpdate;
-in
-rec {
-  crates = cratesIO;
-  cargo_download = crates.crates.cargo_download."0.1.2" deps;
-  __all = [ (cargo_download {}) ];
-  deps.adler32."1.0.2" = {};
-  deps.aho_corasick."0.5.3" = {
-    memchr = "0.1.11";
-  };
-  deps.ansi_term."0.9.0" = {};
-  deps.arrayvec."0.4.8" = {
-    nodrop = "0.1.13";
-  };
-  deps.atty."0.2.3" = {
-    termion = "1.5.1";
-    libc = "0.2.44";
-    kernel32_sys = "0.2.2";
-    winapi = "0.2.8";
-  };
-  deps.base64."0.9.3" = {
-    byteorder = "1.1.0";
-    safemem = "0.3.0";
-  };
-  deps.bitflags."0.7.0" = {};
-  deps.bitflags."0.9.1" = {};
-  deps.bitflags."1.0.4" = {};
-  deps.byteorder."1.1.0" = {};
-  deps.bytes."0.4.11" = {
-    byteorder = "1.1.0";
-    iovec = "0.1.1";
-  };
-  deps.cargo_download."0.1.2" = {
-    ansi_term = "0.9.0";
-    clap = "2.27.1";
-    conv = "0.3.3";
-    derive_error = "0.0.3";
-    exitcode = "1.1.2";
-    flate2 = "0.2.20";
-    isatty = "0.1.5";
-    itertools = "0.6.5";
-    lazy_static = "0.2.10";
-    log = "0.3.8";
-    maplit = "0.1.6";
-    reqwest = "0.9.5";
-    semver = "0.9.0";
-    serde_json = "1.0.6";
-    slog = "1.7.1";
-    slog_envlogger = "0.5.0";
-    slog_stdlog = "1.1.0";
-    slog_stream = "1.2.1";
-    tar = "0.4.13";
-    time = "0.1.38";
-  };
-  deps.case."0.1.0" = {};
-  deps.cc."1.0.3" = {};
-  deps.cfg_if."0.1.2" = {};
-  deps.chrono."0.2.25" = {
-    num = "0.1.40";
-    time = "0.1.38";
-  };
-  deps.clap."2.27.1" = {
-    ansi_term = "0.9.0";
-    atty = "0.2.3";
-    bitflags = "0.9.1";
-    strsim = "0.6.0";
-    textwrap = "0.9.0";
-    unicode_width = "0.1.4";
-    vec_map = "0.8.0";
-  };
-  deps.cloudabi."0.0.3" = {
-    bitflags = "1.0.4";
-  };
-  deps.conv."0.3.3" = {
-    custom_derive = "0.1.7";
-  };
-  deps.core_foundation."0.5.1" = {
-    core_foundation_sys = "0.5.1";
-    libc = "0.2.44";
-  };
-  deps.core_foundation_sys."0.5.1" = {
-    libc = "0.2.44";
-  };
-  deps.crc32fast."1.1.1" = {};
-  deps.crossbeam."0.2.10" = {};
-  deps.crossbeam_deque."0.6.2" = {
-    crossbeam_epoch = "0.6.1";
-    crossbeam_utils = "0.6.1";
-  };
-  deps.crossbeam_epoch."0.6.1" = {
-    arrayvec = "0.4.8";
-    cfg_if = "0.1.2";
-    crossbeam_utils = "0.6.1";
-    lazy_static = "1.2.0";
-    memoffset = "0.2.1";
-    scopeguard = "0.3.3";
-  };
-  deps.crossbeam_utils."0.6.1" = {
-    cfg_if = "0.1.2";
-  };
-  deps.custom_derive."0.1.7" = {};
-  deps.derive_error."0.0.3" = {
-    case = "0.1.0";
-    quote = "0.3.15";
-    syn = "0.11.11";
-  };
-  deps.dtoa."0.4.2" = {};
-  deps.either."1.4.0" = {};
-  deps.encoding_rs."0.8.13" = {
-    cfg_if = "0.1.2";
-  };
-  deps.exitcode."1.1.2" = {};
-  deps.filetime."0.1.14" = {
-    cfg_if = "0.1.2";
-    redox_syscall = "0.1.31";
-    libc = "0.2.44";
-  };
-  deps.flate2."0.2.20" = {
-    libc = "0.2.44";
-    miniz_sys = "0.1.10";
-  };
-  deps.fnv."1.0.6" = {};
-  deps.foreign_types."0.3.2" = {
-    foreign_types_shared = "0.1.1";
-  };
-  deps.foreign_types_shared."0.1.1" = {};
-  deps.fuchsia_zircon."0.2.1" = {
-    fuchsia_zircon_sys = "0.2.0";
-  };
-  deps.fuchsia_zircon."0.3.3" = {
-    bitflags = "1.0.4";
-    fuchsia_zircon_sys = "0.3.3";
-  };
-  deps.fuchsia_zircon_sys."0.2.0" = {
-    bitflags = "0.7.0";
-  };
-  deps.fuchsia_zircon_sys."0.3.3" = {};
-  deps.futures."0.1.25" = {};
-  deps.futures_cpupool."0.1.7" = {
-    futures = "0.1.25";
-    num_cpus = "1.8.0";
-  };
-  deps.h2."0.1.13" = {
-    byteorder = "1.1.0";
-    bytes = "0.4.11";
-    fnv = "1.0.6";
-    futures = "0.1.25";
-    http = "0.1.14";
-    indexmap = "1.0.2";
-    log = "0.4.6";
-    slab = "0.4.0";
-    string = "0.1.2";
-    tokio_io = "0.1.10";
-  };
-  deps.http."0.1.14" = {
-    bytes = "0.4.11";
-    fnv = "1.0.6";
-    itoa = "0.4.3";
-  };
-  deps.httparse."1.2.3" = {};
-  deps.hyper."0.12.16" = {
-    bytes = "0.4.11";
-    futures = "0.1.25";
-    futures_cpupool = "0.1.7";
-    h2 = "0.1.13";
-    http = "0.1.14";
-    httparse = "1.2.3";
-    iovec = "0.1.1";
-    itoa = "0.4.3";
-    log = "0.4.6";
-    net2 = "0.2.33";
-    time = "0.1.38";
-    tokio = "0.1.7";
-    tokio_executor = "0.1.5";
-    tokio_io = "0.1.10";
-    tokio_reactor = "0.1.7";
-    tokio_tcp = "0.1.2";
-    tokio_threadpool = "0.1.9";
-    tokio_timer = "0.2.5";
-    want = "0.0.6";
-  };
-  deps.hyper_tls."0.3.1" = {
-    bytes = "0.4.11";
-    futures = "0.1.25";
-    hyper = "0.12.16";
-    native_tls = "0.2.2";
-    tokio_io = "0.1.10";
-  };
-  deps.idna."0.1.4" = {
-    matches = "0.1.6";
-    unicode_bidi = "0.3.4";
-    unicode_normalization = "0.1.5";
-  };
-  deps.indexmap."1.0.2" = {};
-  deps.iovec."0.1.1" = {
-    libc = "0.2.44";
-    winapi = "0.2.8";
-  };
-  deps.isatty."0.1.5" = {
-    libc = "0.2.44";
-    kernel32_sys = "0.2.2";
-    winapi = "0.2.8";
-  };
-  deps.itertools."0.6.5" = {
-    either = "1.4.0";
-  };
-  deps.itoa."0.3.4" = {};
-  deps.itoa."0.4.3" = {};
-  deps.kernel32_sys."0.2.2" = {
-    winapi = "0.2.8";
-    winapi_build = "0.1.1";
-  };
-  deps.lazy_static."0.2.10" = {};
-  deps.lazy_static."1.2.0" = {};
-  deps.lazycell."1.2.0" = {};
-  deps.libc."0.2.44" = {};
-  deps.libflate."0.1.19" = {
-    adler32 = "1.0.2";
-    byteorder = "1.1.0";
-    crc32fast = "1.1.1";
-  };
-  deps.lock_api."0.1.5" = {
-    owning_ref = "0.4.0";
-    scopeguard = "0.3.3";
-  };
-  deps.log."0.3.8" = {};
-  deps.log."0.4.6" = {
-    cfg_if = "0.1.2";
-  };
-  deps.maplit."0.1.6" = {};
-  deps.matches."0.1.6" = {};
-  deps.memchr."0.1.11" = {
-    libc = "0.2.44";
-  };
-  deps.memoffset."0.2.1" = {};
-  deps.mime."0.3.12" = {
-    unicase = "2.1.0";
-  };
-  deps.mime_guess."2.0.0-alpha.6" = {
-    mime = "0.3.12";
-    phf = "0.7.21";
-    unicase = "1.4.2";
-    phf_codegen = "0.7.21";
-  };
-  deps.miniz_sys."0.1.10" = {
-    libc = "0.2.44";
-    cc = "1.0.3";
-  };
-  deps.mio."0.6.16" = {
-    iovec = "0.1.1";
-    lazycell = "1.2.0";
-    log = "0.4.6";
-    net2 = "0.2.33";
-    slab = "0.4.0";
-    fuchsia_zircon = "0.3.3";
-    fuchsia_zircon_sys = "0.3.3";
-    libc = "0.2.44";
-    kernel32_sys = "0.2.2";
-    miow = "0.2.1";
-    winapi = "0.2.8";
-  };
-  deps.miow."0.2.1" = {
-    kernel32_sys = "0.2.2";
-    net2 = "0.2.33";
-    winapi = "0.2.8";
-    ws2_32_sys = "0.2.1";
-  };
-  deps.native_tls."0.2.2" = {
-    lazy_static = "1.2.0";
-    libc = "0.2.44";
-    security_framework = "0.2.1";
-    security_framework_sys = "0.2.1";
-    tempfile = "3.0.5";
-    openssl = "0.10.15";
-    openssl_probe = "0.1.2";
-    openssl_sys = "0.9.39";
-    log = "0.4.6";
-    schannel = "0.1.14";
-  };
-  deps.net2."0.2.33" = {
-    cfg_if = "0.1.2";
-    libc = "0.2.44";
-    winapi = "0.3.6";
-  };
-  deps.nodrop."0.1.13" = {};
-  deps.num."0.1.40" = {
-    num_integer = "0.1.35";
-    num_iter = "0.1.34";
-    num_traits = "0.1.40";
-  };
-  deps.num_integer."0.1.35" = {
-    num_traits = "0.1.40";
-  };
-  deps.num_iter."0.1.34" = {
-    num_integer = "0.1.35";
-    num_traits = "0.1.40";
-  };
-  deps.num_traits."0.1.40" = {};
-  deps.num_cpus."1.8.0" = {
-    libc = "0.2.44";
-  };
-  deps.openssl."0.10.15" = {
-    bitflags = "1.0.4";
-    cfg_if = "0.1.2";
-    foreign_types = "0.3.2";
-    lazy_static = "1.2.0";
-    libc = "0.2.44";
-    openssl_sys = "0.9.39";
-  };
-  deps.openssl_probe."0.1.2" = {};
-  deps.openssl_sys."0.9.39" = {
-    libc = "0.2.44";
-    cc = "1.0.3";
-    pkg_config = "0.3.9";
-  };
-  deps.owning_ref."0.4.0" = {
-    stable_deref_trait = "1.1.1";
-  };
-  deps.parking_lot."0.6.4" = {
-    lock_api = "0.1.5";
-    parking_lot_core = "0.3.1";
-  };
-  deps.parking_lot_core."0.3.1" = {
-    rand = "0.5.5";
-    smallvec = "0.6.7";
-    rustc_version = "0.2.3";
-    libc = "0.2.44";
-    winapi = "0.3.6";
-  };
-  deps.percent_encoding."1.0.1" = {};
-  deps.phf."0.7.21" = {
-    phf_shared = "0.7.21";
-  };
-  deps.phf_codegen."0.7.21" = {
-    phf_generator = "0.7.21";
-    phf_shared = "0.7.21";
-  };
-  deps.phf_generator."0.7.21" = {
-    phf_shared = "0.7.21";
-    rand = "0.3.18";
-  };
-  deps.phf_shared."0.7.21" = {
-    siphasher = "0.2.2";
-    unicase = "1.4.2";
-  };
-  deps.pkg_config."0.3.9" = {};
-  deps.quote."0.3.15" = {};
-  deps.rand."0.3.18" = {
-    libc = "0.2.44";
-    fuchsia_zircon = "0.2.1";
-  };
-  deps.rand."0.5.5" = {
-    rand_core = "0.2.2";
-    cloudabi = "0.0.3";
-    fuchsia_zircon = "0.3.3";
-    libc = "0.2.44";
-    winapi = "0.3.6";
-  };
-  deps.rand."0.6.1" = {
-    rand_chacha = "0.1.0";
-    rand_core = "0.3.0";
-    rand_hc = "0.1.0";
-    rand_isaac = "0.1.1";
-    rand_pcg = "0.1.1";
-    rand_xorshift = "0.1.0";
-    rustc_version = "0.2.3";
-    cloudabi = "0.0.3";
-    fuchsia_zircon = "0.3.3";
-    libc = "0.2.44";
-    winapi = "0.3.6";
-  };
-  deps.rand_chacha."0.1.0" = {
-    rand_core = "0.3.0";
-    rustc_version = "0.2.3";
-  };
-  deps.rand_core."0.2.2" = {
-    rand_core = "0.3.0";
-  };
-  deps.rand_core."0.3.0" = {};
-  deps.rand_hc."0.1.0" = {
-    rand_core = "0.3.0";
-  };
-  deps.rand_isaac."0.1.1" = {
-    rand_core = "0.3.0";
-  };
-  deps.rand_pcg."0.1.1" = {
-    rand_core = "0.3.0";
-    rustc_version = "0.2.3";
-  };
-  deps.rand_xorshift."0.1.0" = {
-    rand_core = "0.3.0";
-  };
-  deps.redox_syscall."0.1.31" = {};
-  deps.redox_termios."0.1.1" = {
-    redox_syscall = "0.1.31";
-  };
-  deps.regex."0.1.80" = {
-    aho_corasick = "0.5.3";
-    memchr = "0.1.11";
-    regex_syntax = "0.3.9";
-    thread_local = "0.2.7";
-    utf8_ranges = "0.1.3";
-  };
-  deps.regex_syntax."0.3.9" = {};
-  deps.remove_dir_all."0.5.1" = {
-    winapi = "0.3.6";
-  };
-  deps.reqwest."0.9.5" = {
-    base64 = "0.9.3";
-    bytes = "0.4.11";
-    encoding_rs = "0.8.13";
-    futures = "0.1.25";
-    http = "0.1.14";
-    hyper = "0.12.16";
-    hyper_tls = "0.3.1";
-    libflate = "0.1.19";
-    log = "0.4.6";
-    mime = "0.3.12";
-    mime_guess = "2.0.0-alpha.6";
-    native_tls = "0.2.2";
-    serde = "1.0.21";
-    serde_json = "1.0.6";
-    serde_urlencoded = "0.5.1";
-    tokio = "0.1.7";
-    tokio_io = "0.1.10";
-    url = "1.6.1";
-    uuid = "0.7.1";
-  };
-  deps.rustc_version."0.2.3" = {
-    semver = "0.9.0";
-  };
-  deps.safemem."0.3.0" = {};
-  deps.schannel."0.1.14" = {
-    lazy_static = "1.2.0";
-    winapi = "0.3.6";
-  };
-  deps.scopeguard."0.3.3" = {};
-  deps.security_framework."0.2.1" = {
-    core_foundation = "0.5.1";
-    core_foundation_sys = "0.5.1";
-    libc = "0.2.44";
-    security_framework_sys = "0.2.1";
-  };
-  deps.security_framework_sys."0.2.1" = {
-    core_foundation_sys = "0.5.1";
-    libc = "0.2.44";
-  };
-  deps.semver."0.9.0" = {
-    semver_parser = "0.7.0";
-  };
-  deps.semver_parser."0.7.0" = {};
-  deps.serde."1.0.21" = {};
-  deps.serde_json."1.0.6" = {
-    dtoa = "0.4.2";
-    itoa = "0.3.4";
-    num_traits = "0.1.40";
-    serde = "1.0.21";
-  };
-  deps.serde_urlencoded."0.5.1" = {
-    dtoa = "0.4.2";
-    itoa = "0.3.4";
-    serde = "1.0.21";
-    url = "1.6.1";
-  };
-  deps.siphasher."0.2.2" = {};
-  deps.slab."0.4.0" = {};
-  deps.slog."1.7.1" = {};
-  deps.slog_envlogger."0.5.0" = {
-    log = "0.3.8";
-    regex = "0.1.80";
-    slog = "1.7.1";
-    slog_stdlog = "1.1.0";
-    slog_term = "1.5.0";
-  };
-  deps.slog_extra."0.1.2" = {
-    slog = "1.7.1";
-    thread_local = "0.3.4";
-  };
-  deps.slog_stdlog."1.1.0" = {
-    crossbeam = "0.2.10";
-    lazy_static = "0.2.10";
-    log = "0.3.8";
-    slog = "1.7.1";
-    slog_term = "1.5.0";
-  };
-  deps.slog_stream."1.2.1" = {
-    slog = "1.7.1";
-    slog_extra = "0.1.2";
-    thread_local = "0.3.4";
-  };
-  deps.slog_term."1.5.0" = {
-    chrono = "0.2.25";
-    isatty = "0.1.5";
-    slog = "1.7.1";
-    slog_stream = "1.2.1";
-    thread_local = "0.3.4";
-  };
-  deps.smallvec."0.6.7" = {
-    unreachable = "1.0.0";
-  };
-  deps.stable_deref_trait."1.1.1" = {};
-  deps.string."0.1.2" = {};
-  deps.strsim."0.6.0" = {};
-  deps.syn."0.11.11" = {
-    quote = "0.3.15";
-    synom = "0.11.3";
-    unicode_xid = "0.0.4";
-  };
-  deps.synom."0.11.3" = {
-    unicode_xid = "0.0.4";
-  };
-  deps.tar."0.4.13" = {
-    filetime = "0.1.14";
-    libc = "0.2.44";
-    xattr = "0.1.11";
-  };
-  deps.tempfile."3.0.5" = {
-    cfg_if = "0.1.2";
-    rand = "0.6.1";
-    remove_dir_all = "0.5.1";
-    redox_syscall = "0.1.31";
-    libc = "0.2.44";
-    winapi = "0.3.6";
-  };
-  deps.termion."1.5.1" = {
-    libc = "0.2.44";
-    redox_syscall = "0.1.31";
-    redox_termios = "0.1.1";
-  };
-  deps.textwrap."0.9.0" = {
-    unicode_width = "0.1.4";
-  };
-  deps.thread_id."2.0.0" = {
-    kernel32_sys = "0.2.2";
-    libc = "0.2.44";
-  };
-  deps.thread_local."0.2.7" = {
-    thread_id = "2.0.0";
-  };
-  deps.thread_local."0.3.4" = {
-    lazy_static = "0.2.10";
-    unreachable = "1.0.0";
-  };
-  deps.time."0.1.38" = {
-    libc = "0.2.44";
-    redox_syscall = "0.1.31";
-    kernel32_sys = "0.2.2";
-    winapi = "0.2.8";
-  };
-  deps.tokio."0.1.7" = {
-    futures = "0.1.25";
-    mio = "0.6.16";
-    tokio_executor = "0.1.5";
-    tokio_fs = "0.1.4";
-    tokio_io = "0.1.10";
-    tokio_reactor = "0.1.7";
-    tokio_tcp = "0.1.2";
-    tokio_threadpool = "0.1.9";
-    tokio_timer = "0.2.5";
-    tokio_udp = "0.1.3";
-  };
-  deps.tokio_codec."0.1.1" = {
-    bytes = "0.4.11";
-    futures = "0.1.25";
-    tokio_io = "0.1.10";
-  };
-  deps.tokio_executor."0.1.5" = {
-    futures = "0.1.25";
-  };
-  deps.tokio_fs."0.1.4" = {
-    futures = "0.1.25";
-    tokio_io = "0.1.10";
-    tokio_threadpool = "0.1.9";
-  };
-  deps.tokio_io."0.1.10" = {
-    bytes = "0.4.11";
-    futures = "0.1.25";
-    log = "0.4.6";
-  };
-  deps.tokio_reactor."0.1.7" = {
-    crossbeam_utils = "0.6.1";
-    futures = "0.1.25";
-    lazy_static = "1.2.0";
-    log = "0.4.6";
-    mio = "0.6.16";
-    num_cpus = "1.8.0";
-    parking_lot = "0.6.4";
-    slab = "0.4.0";
-    tokio_executor = "0.1.5";
-    tokio_io = "0.1.10";
-  };
-  deps.tokio_tcp."0.1.2" = {
-    bytes = "0.4.11";
-    futures = "0.1.25";
-    iovec = "0.1.1";
-    mio = "0.6.16";
-    tokio_io = "0.1.10";
-    tokio_reactor = "0.1.7";
-  };
-  deps.tokio_threadpool."0.1.9" = {
-    crossbeam_deque = "0.6.2";
-    crossbeam_utils = "0.6.1";
-    futures = "0.1.25";
-    log = "0.4.6";
-    num_cpus = "1.8.0";
-    rand = "0.6.1";
-    tokio_executor = "0.1.5";
-  };
-  deps.tokio_timer."0.2.5" = {
-    futures = "0.1.25";
-    tokio_executor = "0.1.5";
-  };
-  deps.tokio_udp."0.1.3" = {
-    bytes = "0.4.11";
-    futures = "0.1.25";
-    log = "0.4.6";
-    mio = "0.6.16";
-    tokio_codec = "0.1.1";
-    tokio_io = "0.1.10";
-    tokio_reactor = "0.1.7";
-  };
-  deps.try_lock."0.2.2" = {};
-  deps.unicase."1.4.2" = {
-    version_check = "0.1.3";
-  };
-  deps.unicase."2.1.0" = {
-    version_check = "0.1.3";
-  };
-  deps.unicode_bidi."0.3.4" = {
-    matches = "0.1.6";
-  };
-  deps.unicode_normalization."0.1.5" = {};
-  deps.unicode_width."0.1.4" = {};
-  deps.unicode_xid."0.0.4" = {};
-  deps.unreachable."1.0.0" = {
-    void = "1.0.2";
-  };
-  deps.url."1.6.1" = {
-    idna = "0.1.4";
-    matches = "0.1.6";
-    percent_encoding = "1.0.1";
-  };
-  deps.utf8_ranges."0.1.3" = {};
-  deps.uuid."0.7.1" = {
-    rand = "0.5.5";
-  };
-  deps.vcpkg."0.2.2" = {};
-  deps.vec_map."0.8.0" = {};
-  deps.version_check."0.1.3" = {};
-  deps.void."1.0.2" = {};
-  deps.want."0.0.6" = {
-    futures = "0.1.25";
-    log = "0.4.6";
-    try_lock = "0.2.2";
-  };
-  deps.winapi."0.2.8" = {};
-  deps.winapi."0.3.6" = {
-    winapi_i686_pc_windows_gnu = "0.4.0";
-    winapi_x86_64_pc_windows_gnu = "0.4.0";
-  };
-  deps.winapi_build."0.1.1" = {};
-  deps.winapi_i686_pc_windows_gnu."0.4.0" = {};
-  deps.winapi_x86_64_pc_windows_gnu."0.4.0" = {};
-  deps.ws2_32_sys."0.2.1" = {
-    winapi = "0.2.8";
-    winapi_build = "0.1.1";
-  };
-  deps.xattr."0.1.11" = {
-    libc = "0.2.44";
-  };
-}
diff --git a/pkgs/tools/package-management/cargo-download/crates-io.nix b/pkgs/tools/package-management/cargo-download/crates-io.nix
deleted file mode 100644
index dde192585e08a..0000000000000
--- a/pkgs/tools/package-management/cargo-download/crates-io.nix
+++ /dev/null
@@ -1,5289 +0,0 @@
-{ lib, buildRustCrate, buildRustCrateHelpers }:
-with buildRustCrateHelpers;
-let inherit (lib.lists) fold;
-    inherit (lib.attrsets) recursiveUpdate;
-in
-rec {
-
-# adler32-1.0.2
-
-  crates.adler32."1.0.2" = deps: { features?(features_.adler32."1.0.2" deps {}) }: buildRustCrate {
-    crateName = "adler32";
-    version = "1.0.2";
-    description = "Minimal Adler32 implementation for Rust.";
-    authors = [ "Remi Rampin <remirampin@gmail.com>" ];
-    sha256 = "1974q3nysai026zhz24df506cxwi09jdzqksll4h7ibpb5n9g1d4";
-  };
-  features_.adler32."1.0.2" = deps: f: updateFeatures f ({
-    adler32."1.0.2".default = (f.adler32."1.0.2".default or true);
-  }) [];
-
-
-# end
-# aho-corasick-0.5.3
-
-  crates.aho_corasick."0.5.3" = deps: { features?(features_.aho_corasick."0.5.3" deps {}) }: buildRustCrate {
-    crateName = "aho-corasick";
-    version = "0.5.3";
-    description = "Fast multiple substring searching with finite state machines.";
-    authors = [ "Andrew Gallant <jamslam@gmail.com>" ];
-    sha256 = "1igab46mvgknga3sxkqc917yfff0wsjxjzabdigmh240p5qxqlnn";
-    libName = "aho_corasick";
-    crateBin =
-      [{  name = "aho-corasick-dot"; }];
-    dependencies = mapFeatures features ([
-      (crates."memchr"."${deps."aho_corasick"."0.5.3"."memchr"}" deps)
-    ]);
-  };
-  features_.aho_corasick."0.5.3" = deps: f: updateFeatures f ({
-    aho_corasick."0.5.3".default = (f.aho_corasick."0.5.3".default or true);
-    memchr."${deps.aho_corasick."0.5.3".memchr}".default = true;
-  }) [
-    (features_.memchr."${deps."aho_corasick"."0.5.3"."memchr"}" deps)
-  ];
-
-
-# end
-# ansi_term-0.9.0
-
-  crates.ansi_term."0.9.0" = deps: { features?(features_.ansi_term."0.9.0" deps {}) }: buildRustCrate {
-    crateName = "ansi_term";
-    version = "0.9.0";
-    description = "Library for ANSI terminal colours and styles (bold, underline)";
-    authors = [ "ogham@bsago.me" "Ryan Scheel (Havvy) <ryan.havvy@gmail.com>" ];
-    sha256 = "1vcd8m2hglrdi4zmqnkkz5zy3c73ifgii245k7vj6qr5dzpn9hij";
-  };
-  features_.ansi_term."0.9.0" = deps: f: updateFeatures f ({
-    ansi_term."0.9.0".default = (f.ansi_term."0.9.0".default or true);
-  }) [];
-
-
-# end
-# arrayvec-0.4.8
-
-  crates.arrayvec."0.4.8" = deps: { features?(features_.arrayvec."0.4.8" deps {}) }: buildRustCrate {
-    crateName = "arrayvec";
-    version = "0.4.8";
-    description = "A vector with fixed capacity, backed by an array (it can be stored on the stack too). Implements fixed capacity ArrayVec and ArrayString.";
-    authors = [ "bluss" ];
-    sha256 = "0zwpjdxgr0a11h9x7mkrif4wyx3c81b90paxjf326i86s13kib1g";
-    dependencies = mapFeatures features ([
-      (crates."nodrop"."${deps."arrayvec"."0.4.8"."nodrop"}" deps)
-    ]);
-    features = mkFeatures (features."arrayvec"."0.4.8" or {});
-  };
-  features_.arrayvec."0.4.8" = deps: f: updateFeatures f (rec {
-    arrayvec = fold recursiveUpdate {} [
-      { "0.4.8"."serde" =
-        (f.arrayvec."0.4.8"."serde" or false) ||
-        (f.arrayvec."0.4.8".serde-1 or false) ||
-        (arrayvec."0.4.8"."serde-1" or false); }
-      { "0.4.8"."std" =
-        (f.arrayvec."0.4.8"."std" or false) ||
-        (f.arrayvec."0.4.8".default or false) ||
-        (arrayvec."0.4.8"."default" or false); }
-      { "0.4.8".default = (f.arrayvec."0.4.8".default or true); }
-    ];
-    nodrop."${deps.arrayvec."0.4.8".nodrop}".default = (f.nodrop."${deps.arrayvec."0.4.8".nodrop}".default or false);
-  }) [
-    (features_.nodrop."${deps."arrayvec"."0.4.8"."nodrop"}" deps)
-  ];
-
-
-# end
-# atty-0.2.3
-
-  crates.atty."0.2.3" = deps: { features?(features_.atty."0.2.3" deps {}) }: buildRustCrate {
-    crateName = "atty";
-    version = "0.2.3";
-    description = "A simple interface for querying atty";
-    authors = [ "softprops <d.tangren@gmail.com>" ];
-    sha256 = "0zl0cjfgarp5y78nd755lpki5bbkj4hgmi88v265m543yg29i88f";
-    dependencies = (if kernel == "redox" then mapFeatures features ([
-      (crates."termion"."${deps."atty"."0.2.3"."termion"}" deps)
-    ]) else [])
-      ++ (if (kernel == "linux" || kernel == "darwin") then mapFeatures features ([
-      (crates."libc"."${deps."atty"."0.2.3"."libc"}" deps)
-    ]) else [])
-      ++ (if kernel == "windows" then mapFeatures features ([
-      (crates."kernel32_sys"."${deps."atty"."0.2.3"."kernel32_sys"}" deps)
-      (crates."winapi"."${deps."atty"."0.2.3"."winapi"}" deps)
-    ]) else []);
-  };
-  features_.atty."0.2.3" = deps: f: updateFeatures f ({
-    atty."0.2.3".default = (f.atty."0.2.3".default or true);
-    kernel32_sys."${deps.atty."0.2.3".kernel32_sys}".default = true;
-    libc."${deps.atty."0.2.3".libc}".default = (f.libc."${deps.atty."0.2.3".libc}".default or false);
-    termion."${deps.atty."0.2.3".termion}".default = true;
-    winapi."${deps.atty."0.2.3".winapi}".default = true;
-  }) [
-    (features_.termion."${deps."atty"."0.2.3"."termion"}" deps)
-    (features_.libc."${deps."atty"."0.2.3"."libc"}" deps)
-    (features_.kernel32_sys."${deps."atty"."0.2.3"."kernel32_sys"}" deps)
-    (features_.winapi."${deps."atty"."0.2.3"."winapi"}" deps)
-  ];
-
-
-# end
-# base64-0.9.3
-
-  crates.base64."0.9.3" = deps: { features?(features_.base64."0.9.3" deps {}) }: buildRustCrate {
-    crateName = "base64";
-    version = "0.9.3";
-    description = "encodes and decodes base64 as bytes or utf8";
-    authors = [ "Alice Maz <alice@alicemaz.com>" "Marshall Pierce <marshall@mpierce.org>" ];
-    sha256 = "11hhz8ln4zbpn2h2gm9fbbb9j254wrd4fpmddlyah2rrnqsmmqkd";
-    dependencies = mapFeatures features ([
-      (crates."byteorder"."${deps."base64"."0.9.3"."byteorder"}" deps)
-      (crates."safemem"."${deps."base64"."0.9.3"."safemem"}" deps)
-    ]);
-  };
-  features_.base64."0.9.3" = deps: f: updateFeatures f ({
-    base64."0.9.3".default = (f.base64."0.9.3".default or true);
-    byteorder."${deps.base64."0.9.3".byteorder}".default = true;
-    safemem."${deps.base64."0.9.3".safemem}".default = true;
-  }) [
-    (features_.byteorder."${deps."base64"."0.9.3"."byteorder"}" deps)
-    (features_.safemem."${deps."base64"."0.9.3"."safemem"}" deps)
-  ];
-
-
-# end
-# bitflags-0.7.0
-
-  crates.bitflags."0.7.0" = deps: { features?(features_.bitflags."0.7.0" deps {}) }: buildRustCrate {
-    crateName = "bitflags";
-    version = "0.7.0";
-    description = "A macro to generate structures which behave like bitflags.\n";
-    authors = [ "The Rust Project Developers" ];
-    sha256 = "1hr72xg5slm0z4pxs2hiy4wcyx3jva70h58b7mid8l0a4c8f7gn5";
-  };
-  features_.bitflags."0.7.0" = deps: f: updateFeatures f ({
-    bitflags."0.7.0".default = (f.bitflags."0.7.0".default or true);
-  }) [];
-
-
-# end
-# bitflags-0.9.1
-
-  crates.bitflags."0.9.1" = deps: { features?(features_.bitflags."0.9.1" deps {}) }: buildRustCrate {
-    crateName = "bitflags";
-    version = "0.9.1";
-    description = "A macro to generate structures which behave like bitflags.\n";
-    authors = [ "The Rust Project Developers" ];
-    sha256 = "18h073l5jd88rx4qdr95fjddr9rk79pb1aqnshzdnw16cfmb9rws";
-    features = mkFeatures (features."bitflags"."0.9.1" or {});
-  };
-  features_.bitflags."0.9.1" = deps: f: updateFeatures f (rec {
-    bitflags = fold recursiveUpdate {} [
-      { "0.9.1"."example_generated" =
-        (f.bitflags."0.9.1"."example_generated" or false) ||
-        (f.bitflags."0.9.1".default or false) ||
-        (bitflags."0.9.1"."default" or false); }
-      { "0.9.1".default = (f.bitflags."0.9.1".default or true); }
-    ];
-  }) [];
-
-
-# end
-# bitflags-1.0.4
-
-  crates.bitflags."1.0.4" = deps: { features?(features_.bitflags."1.0.4" deps {}) }: buildRustCrate {
-    crateName = "bitflags";
-    version = "1.0.4";
-    description = "A macro to generate structures which behave like bitflags.\n";
-    authors = [ "The Rust Project Developers" ];
-    sha256 = "1g1wmz2001qmfrd37dnd5qiss5njrw26aywmg6yhkmkbyrhjxb08";
-    features = mkFeatures (features."bitflags"."1.0.4" or {});
-  };
-  features_.bitflags."1.0.4" = deps: f: updateFeatures f ({
-    bitflags."1.0.4".default = (f.bitflags."1.0.4".default or true);
-  }) [];
-
-
-# end
-# byteorder-1.1.0
-
-  crates.byteorder."1.1.0" = deps: { features?(features_.byteorder."1.1.0" deps {}) }: buildRustCrate {
-    crateName = "byteorder";
-    version = "1.1.0";
-    description = "Library for reading/writing numbers in big-endian and little-endian.";
-    authors = [ "Andrew Gallant <jamslam@gmail.com>" ];
-    sha256 = "1i2n0161jm00zvzh4bncgv9zrwa6ydbxdn5j4bx0wwn7rvi9zycp";
-    features = mkFeatures (features."byteorder"."1.1.0" or {});
-  };
-  features_.byteorder."1.1.0" = deps: f: updateFeatures f (rec {
-    byteorder = fold recursiveUpdate {} [
-      { "1.1.0"."std" =
-        (f.byteorder."1.1.0"."std" or false) ||
-        (f.byteorder."1.1.0".default or false) ||
-        (byteorder."1.1.0"."default" or false); }
-      { "1.1.0".default = (f.byteorder."1.1.0".default or true); }
-    ];
-  }) [];
-
-
-# end
-# bytes-0.4.11
-
-  crates.bytes."0.4.11" = deps: { features?(features_.bytes."0.4.11" deps {}) }: buildRustCrate {
-    crateName = "bytes";
-    version = "0.4.11";
-    description = "Types and traits for working with bytes";
-    authors = [ "Carl Lerche <me@carllerche.com>" ];
-    sha256 = "1lk8bnxcd8shiizarf0n6ljmj1542n90jw6lz6i270gxl7rzplmh";
-    dependencies = mapFeatures features ([
-      (crates."byteorder"."${deps."bytes"."0.4.11"."byteorder"}" deps)
-      (crates."iovec"."${deps."bytes"."0.4.11"."iovec"}" deps)
-    ]);
-    features = mkFeatures (features."bytes"."0.4.11" or {});
-  };
-  features_.bytes."0.4.11" = deps: f: updateFeatures f (rec {
-    byteorder = fold recursiveUpdate {} [
-      { "${deps.bytes."0.4.11".byteorder}"."i128" =
-        (f.byteorder."${deps.bytes."0.4.11".byteorder}"."i128" or false) ||
-        (bytes."0.4.11"."i128" or false) ||
-        (f."bytes"."0.4.11"."i128" or false); }
-      { "${deps.bytes."0.4.11".byteorder}".default = true; }
-    ];
-    bytes."0.4.11".default = (f.bytes."0.4.11".default or true);
-    iovec."${deps.bytes."0.4.11".iovec}".default = true;
-  }) [
-    (features_.byteorder."${deps."bytes"."0.4.11"."byteorder"}" deps)
-    (features_.iovec."${deps."bytes"."0.4.11"."iovec"}" deps)
-  ];
-
-
-# end
-# cargo-download-0.1.2
-
-  crates.cargo_download."0.1.2" = deps: { features?(features_.cargo_download."0.1.2" deps {}) }: buildRustCrate {
-    crateName = "cargo-download";
-    version = "0.1.2";
-    description = "Cargo subcommand for downloading crate sources";
-    authors = [ "Karol Kuczmarski <karol.kuczmarski@gmail.com>" ];
-    sha256 = "1gfn0iabiriq0n9sqkyp2g73rw12mr9ng61fx198xaffflxk7g36";
-    crateBin =
-      [{  name = "cargo-download"; }];
-    dependencies = mapFeatures features ([
-      (crates."ansi_term"."${deps."cargo_download"."0.1.2"."ansi_term"}" deps)
-      (crates."clap"."${deps."cargo_download"."0.1.2"."clap"}" deps)
-      (crates."conv"."${deps."cargo_download"."0.1.2"."conv"}" deps)
-      (crates."derive_error"."${deps."cargo_download"."0.1.2"."derive_error"}" deps)
-      (crates."exitcode"."${deps."cargo_download"."0.1.2"."exitcode"}" deps)
-      (crates."flate2"."${deps."cargo_download"."0.1.2"."flate2"}" deps)
-      (crates."isatty"."${deps."cargo_download"."0.1.2"."isatty"}" deps)
-      (crates."itertools"."${deps."cargo_download"."0.1.2"."itertools"}" deps)
-      (crates."lazy_static"."${deps."cargo_download"."0.1.2"."lazy_static"}" deps)
-      (crates."log"."${deps."cargo_download"."0.1.2"."log"}" deps)
-      (crates."maplit"."${deps."cargo_download"."0.1.2"."maplit"}" deps)
-      (crates."reqwest"."${deps."cargo_download"."0.1.2"."reqwest"}" deps)
-      (crates."semver"."${deps."cargo_download"."0.1.2"."semver"}" deps)
-      (crates."serde_json"."${deps."cargo_download"."0.1.2"."serde_json"}" deps)
-      (crates."slog"."${deps."cargo_download"."0.1.2"."slog"}" deps)
-      (crates."slog_envlogger"."${deps."cargo_download"."0.1.2"."slog_envlogger"}" deps)
-      (crates."slog_stdlog"."${deps."cargo_download"."0.1.2"."slog_stdlog"}" deps)
-      (crates."slog_stream"."${deps."cargo_download"."0.1.2"."slog_stream"}" deps)
-      (crates."tar"."${deps."cargo_download"."0.1.2"."tar"}" deps)
-      (crates."time"."${deps."cargo_download"."0.1.2"."time"}" deps)
-    ]);
-  };
-  features_.cargo_download."0.1.2" = deps: f: updateFeatures f ({
-    ansi_term."${deps.cargo_download."0.1.2".ansi_term}".default = true;
-    cargo_download."0.1.2".default = (f.cargo_download."0.1.2".default or true);
-    clap."${deps.cargo_download."0.1.2".clap}".default = true;
-    conv."${deps.cargo_download."0.1.2".conv}".default = true;
-    derive_error."${deps.cargo_download."0.1.2".derive_error}".default = true;
-    exitcode."${deps.cargo_download."0.1.2".exitcode}".default = true;
-    flate2."${deps.cargo_download."0.1.2".flate2}".default = true;
-    isatty."${deps.cargo_download."0.1.2".isatty}".default = true;
-    itertools."${deps.cargo_download."0.1.2".itertools}".default = true;
-    lazy_static."${deps.cargo_download."0.1.2".lazy_static}".default = true;
-    log."${deps.cargo_download."0.1.2".log}".default = true;
-    maplit."${deps.cargo_download."0.1.2".maplit}".default = true;
-    reqwest."${deps.cargo_download."0.1.2".reqwest}".default = true;
-    semver."${deps.cargo_download."0.1.2".semver}".default = true;
-    serde_json."${deps.cargo_download."0.1.2".serde_json}".default = true;
-    slog."${deps.cargo_download."0.1.2".slog}".default = true;
-    slog_envlogger."${deps.cargo_download."0.1.2".slog_envlogger}".default = true;
-    slog_stdlog."${deps.cargo_download."0.1.2".slog_stdlog}".default = true;
-    slog_stream."${deps.cargo_download."0.1.2".slog_stream}".default = true;
-    tar."${deps.cargo_download."0.1.2".tar}".default = true;
-    time."${deps.cargo_download."0.1.2".time}".default = true;
-  }) [
-    (features_.ansi_term."${deps."cargo_download"."0.1.2"."ansi_term"}" deps)
-    (features_.clap."${deps."cargo_download"."0.1.2"."clap"}" deps)
-    (features_.conv."${deps."cargo_download"."0.1.2"."conv"}" deps)
-    (features_.derive_error."${deps."cargo_download"."0.1.2"."derive_error"}" deps)
-    (features_.exitcode."${deps."cargo_download"."0.1.2"."exitcode"}" deps)
-    (features_.flate2."${deps."cargo_download"."0.1.2"."flate2"}" deps)
-    (features_.isatty."${deps."cargo_download"."0.1.2"."isatty"}" deps)
-    (features_.itertools."${deps."cargo_download"."0.1.2"."itertools"}" deps)
-    (features_.lazy_static."${deps."cargo_download"."0.1.2"."lazy_static"}" deps)
-    (features_.log."${deps."cargo_download"."0.1.2"."log"}" deps)
-    (features_.maplit."${deps."cargo_download"."0.1.2"."maplit"}" deps)
-    (features_.reqwest."${deps."cargo_download"."0.1.2"."reqwest"}" deps)
-    (features_.semver."${deps."cargo_download"."0.1.2"."semver"}" deps)
-    (features_.serde_json."${deps."cargo_download"."0.1.2"."serde_json"}" deps)
-    (features_.slog."${deps."cargo_download"."0.1.2"."slog"}" deps)
-    (features_.slog_envlogger."${deps."cargo_download"."0.1.2"."slog_envlogger"}" deps)
-    (features_.slog_stdlog."${deps."cargo_download"."0.1.2"."slog_stdlog"}" deps)
-    (features_.slog_stream."${deps."cargo_download"."0.1.2"."slog_stream"}" deps)
-    (features_.tar."${deps."cargo_download"."0.1.2"."tar"}" deps)
-    (features_.time."${deps."cargo_download"."0.1.2"."time"}" deps)
-  ];
-
-
-# end
-# case-0.1.0
-
-  crates.case."0.1.0" = deps: { features?(features_.case."0.1.0" deps {}) }: buildRustCrate {
-    crateName = "case";
-    version = "0.1.0";
-    description = "A set of letter case string helpers";
-    authors = [ "Skyler Lipthay <skyler.lipthay@gmail.com>" ];
-    sha256 = "06i1x3wqv30rkvlgj134qf9vzxhzz28bz41mm0rgki0i0f7gf96n";
-  };
-  features_.case."0.1.0" = deps: f: updateFeatures f ({
-    case."0.1.0".default = (f.case."0.1.0".default or true);
-  }) [];
-
-
-# end
-# cc-1.0.3
-
-  crates.cc."1.0.3" = deps: { features?(features_.cc."1.0.3" deps {}) }: buildRustCrate {
-    crateName = "cc";
-    version = "1.0.3";
-    description = "A build-time dependency for Cargo build scripts to assist in invoking the native\nC compiler to compile native C code into a static archive to be linked into Rust\ncode.\n";
-    authors = [ "Alex Crichton <alex@alexcrichton.com>" ];
-    sha256 = "193pwqgh79w6k0k29svyds5nnlrwx44myqyrw605d5jj4yk2zmpr";
-    dependencies = mapFeatures features ([
-]);
-    features = mkFeatures (features."cc"."1.0.3" or {});
-  };
-  features_.cc."1.0.3" = deps: f: updateFeatures f (rec {
-    cc = fold recursiveUpdate {} [
-      { "1.0.3"."rayon" =
-        (f.cc."1.0.3"."rayon" or false) ||
-        (f.cc."1.0.3".parallel or false) ||
-        (cc."1.0.3"."parallel" or false); }
-      { "1.0.3".default = (f.cc."1.0.3".default or true); }
-    ];
-  }) [];
-
-
-# end
-# cfg-if-0.1.2
-
-  crates.cfg_if."0.1.2" = deps: { features?(features_.cfg_if."0.1.2" deps {}) }: buildRustCrate {
-    crateName = "cfg-if";
-    version = "0.1.2";
-    description = "A macro to ergonomically define an item depending on a large number of #[cfg]\nparameters. Structured like an if-else chain, the first matching branch is the\nitem that gets emitted.\n";
-    authors = [ "Alex Crichton <alex@alexcrichton.com>" ];
-    sha256 = "0x06hvrrqy96m97593823vvxcgvjaxckghwyy2jcyc8qc7c6cyhi";
-  };
-  features_.cfg_if."0.1.2" = deps: f: updateFeatures f ({
-    cfg_if."0.1.2".default = (f.cfg_if."0.1.2".default or true);
-  }) [];
-
-
-# end
-# chrono-0.2.25
-
-  crates.chrono."0.2.25" = deps: { features?(features_.chrono."0.2.25" deps {}) }: buildRustCrate {
-    crateName = "chrono";
-    version = "0.2.25";
-    description = "Date and time library for Rust";
-    authors = [ "Kang Seonghoon <public+rust@mearie.org>" ];
-    sha256 = "0gsvqk8cnmm43qj3xyngqvfqh50cbdbqas7ik0wjgnvknirmmca7";
-    dependencies = mapFeatures features ([
-      (crates."num"."${deps."chrono"."0.2.25"."num"}" deps)
-      (crates."time"."${deps."chrono"."0.2.25"."time"}" deps)
-    ]);
-  };
-  features_.chrono."0.2.25" = deps: f: updateFeatures f ({
-    chrono."0.2.25".default = (f.chrono."0.2.25".default or true);
-    num."${deps.chrono."0.2.25".num}".default = (f.num."${deps.chrono."0.2.25".num}".default or false);
-    time."${deps.chrono."0.2.25".time}".default = true;
-  }) [
-    (features_.num."${deps."chrono"."0.2.25"."num"}" deps)
-    (features_.time."${deps."chrono"."0.2.25"."time"}" deps)
-  ];
-
-
-# end
-# clap-2.27.1
-
-  crates.clap."2.27.1" = deps: { features?(features_.clap."2.27.1" deps {}) }: buildRustCrate {
-    crateName = "clap";
-    version = "2.27.1";
-    description = "A simple to use, efficient, and full featured  Command Line Argument Parser\n";
-    authors = [ "Kevin K. <kbknapp@gmail.com>" ];
-    sha256 = "0zx8rskqfl3iqn3vlyxzyd99hpifa7bm871akhxpz9wvrm688zaj";
-    dependencies = mapFeatures features ([
-      (crates."bitflags"."${deps."clap"."2.27.1"."bitflags"}" deps)
-      (crates."textwrap"."${deps."clap"."2.27.1"."textwrap"}" deps)
-      (crates."unicode_width"."${deps."clap"."2.27.1"."unicode_width"}" deps)
-    ]
-      ++ (if features.clap."2.27.1".ansi_term or false then [ (crates.ansi_term."${deps."clap"."2.27.1".ansi_term}" deps) ] else [])
-      ++ (if features.clap."2.27.1".atty or false then [ (crates.atty."${deps."clap"."2.27.1".atty}" deps) ] else [])
-      ++ (if features.clap."2.27.1".strsim or false then [ (crates.strsim."${deps."clap"."2.27.1".strsim}" deps) ] else [])
-      ++ (if features.clap."2.27.1".vec_map or false then [ (crates.vec_map."${deps."clap"."2.27.1".vec_map}" deps) ] else []));
-    features = mkFeatures (features."clap"."2.27.1" or {});
-  };
-  features_.clap."2.27.1" = deps: f: updateFeatures f (rec {
-    ansi_term."${deps.clap."2.27.1".ansi_term}".default = true;
-    atty."${deps.clap."2.27.1".atty}".default = true;
-    bitflags."${deps.clap."2.27.1".bitflags}".default = true;
-    clap = fold recursiveUpdate {} [
-      { "2.27.1"."ansi_term" =
-        (f.clap."2.27.1"."ansi_term" or false) ||
-        (f.clap."2.27.1".color or false) ||
-        (clap."2.27.1"."color" or false); }
-      { "2.27.1"."atty" =
-        (f.clap."2.27.1"."atty" or false) ||
-        (f.clap."2.27.1".color or false) ||
-        (clap."2.27.1"."color" or false); }
-      { "2.27.1"."clippy" =
-        (f.clap."2.27.1"."clippy" or false) ||
-        (f.clap."2.27.1".lints or false) ||
-        (clap."2.27.1"."lints" or false); }
-      { "2.27.1"."color" =
-        (f.clap."2.27.1"."color" or false) ||
-        (f.clap."2.27.1".default or false) ||
-        (clap."2.27.1"."default" or false); }
-      { "2.27.1"."strsim" =
-        (f.clap."2.27.1"."strsim" or false) ||
-        (f.clap."2.27.1".suggestions or false) ||
-        (clap."2.27.1"."suggestions" or false); }
-      { "2.27.1"."suggestions" =
-        (f.clap."2.27.1"."suggestions" or false) ||
-        (f.clap."2.27.1".default or false) ||
-        (clap."2.27.1"."default" or false); }
-      { "2.27.1"."term_size" =
-        (f.clap."2.27.1"."term_size" or false) ||
-        (f.clap."2.27.1".wrap_help or false) ||
-        (clap."2.27.1"."wrap_help" or false); }
-      { "2.27.1"."vec_map" =
-        (f.clap."2.27.1"."vec_map" or false) ||
-        (f.clap."2.27.1".default or false) ||
-        (clap."2.27.1"."default" or false); }
-      { "2.27.1"."yaml" =
-        (f.clap."2.27.1"."yaml" or false) ||
-        (f.clap."2.27.1".doc or false) ||
-        (clap."2.27.1"."doc" or false); }
-      { "2.27.1"."yaml-rust" =
-        (f.clap."2.27.1"."yaml-rust" or false) ||
-        (f.clap."2.27.1".yaml or false) ||
-        (clap."2.27.1"."yaml" or false); }
-      { "2.27.1".default = (f.clap."2.27.1".default or true); }
-    ];
-    strsim."${deps.clap."2.27.1".strsim}".default = true;
-    textwrap = fold recursiveUpdate {} [
-      { "${deps.clap."2.27.1".textwrap}"."term_size" =
-        (f.textwrap."${deps.clap."2.27.1".textwrap}"."term_size" or false) ||
-        (clap."2.27.1"."wrap_help" or false) ||
-        (f."clap"."2.27.1"."wrap_help" or false); }
-      { "${deps.clap."2.27.1".textwrap}".default = true; }
-    ];
-    unicode_width."${deps.clap."2.27.1".unicode_width}".default = true;
-    vec_map."${deps.clap."2.27.1".vec_map}".default = true;
-  }) [
-    (features_.ansi_term."${deps."clap"."2.27.1"."ansi_term"}" deps)
-    (features_.atty."${deps."clap"."2.27.1"."atty"}" deps)
-    (features_.bitflags."${deps."clap"."2.27.1"."bitflags"}" deps)
-    (features_.strsim."${deps."clap"."2.27.1"."strsim"}" deps)
-    (features_.textwrap."${deps."clap"."2.27.1"."textwrap"}" deps)
-    (features_.unicode_width."${deps."clap"."2.27.1"."unicode_width"}" deps)
-    (features_.vec_map."${deps."clap"."2.27.1"."vec_map"}" deps)
-  ];
-
-
-# end
-# cloudabi-0.0.3
-
-  crates.cloudabi."0.0.3" = deps: { features?(features_.cloudabi."0.0.3" deps {}) }: buildRustCrate {
-    crateName = "cloudabi";
-    version = "0.0.3";
-    description = "Low level interface to CloudABI. Contains all syscalls and related types.";
-    authors = [ "Nuxi (https://nuxi.nl/) and contributors" ];
-    sha256 = "1z9lby5sr6vslfd14d6igk03s7awf91mxpsfmsp3prxbxlk0x7h5";
-    libPath = "cloudabi.rs";
-    dependencies = mapFeatures features ([
-    ]
-      ++ (if features.cloudabi."0.0.3".bitflags or false then [ (crates.bitflags."${deps."cloudabi"."0.0.3".bitflags}" deps) ] else []));
-    features = mkFeatures (features."cloudabi"."0.0.3" or {});
-  };
-  features_.cloudabi."0.0.3" = deps: f: updateFeatures f (rec {
-    bitflags."${deps.cloudabi."0.0.3".bitflags}".default = true;
-    cloudabi = fold recursiveUpdate {} [
-      { "0.0.3"."bitflags" =
-        (f.cloudabi."0.0.3"."bitflags" or false) ||
-        (f.cloudabi."0.0.3".default or false) ||
-        (cloudabi."0.0.3"."default" or false); }
-      { "0.0.3".default = (f.cloudabi."0.0.3".default or true); }
-    ];
-  }) [
-    (features_.bitflags."${deps."cloudabi"."0.0.3"."bitflags"}" deps)
-  ];
-
-
-# end
-# conv-0.3.3
-
-  crates.conv."0.3.3" = deps: { features?(features_.conv."0.3.3" deps {}) }: buildRustCrate {
-    crateName = "conv";
-    version = "0.3.3";
-    description = "This crate provides a number of conversion traits with more specific semantics than those provided by 'as' or 'From'/'Into'.";
-    authors = [ "Daniel Keep <daniel.keep@gmail.com>" ];
-    sha256 = "08rl72k1a48xah0ar5l9v1bw19pp8jdw2pdkd3vvj9ijsyyg9yik";
-    dependencies = mapFeatures features ([
-      (crates."custom_derive"."${deps."conv"."0.3.3"."custom_derive"}" deps)
-    ]);
-  };
-  features_.conv."0.3.3" = deps: f: updateFeatures f ({
-    conv."0.3.3".default = (f.conv."0.3.3".default or true);
-    custom_derive."${deps.conv."0.3.3".custom_derive}".default = true;
-  }) [
-    (features_.custom_derive."${deps."conv"."0.3.3"."custom_derive"}" deps)
-  ];
-
-
-# end
-# core-foundation-0.5.1
-
-  crates.core_foundation."0.5.1" = deps: { features?(features_.core_foundation."0.5.1" deps {}) }: buildRustCrate {
-    crateName = "core-foundation";
-    version = "0.5.1";
-    description = "Bindings to Core Foundation for OS X";
-    authors = [ "The Servo Project Developers" ];
-    sha256 = "03s11z23rb1kk325c34rmsbd7k0l5rkzk4q6id55n174z28zqln1";
-    dependencies = mapFeatures features ([
-      (crates."core_foundation_sys"."${deps."core_foundation"."0.5.1"."core_foundation_sys"}" deps)
-      (crates."libc"."${deps."core_foundation"."0.5.1"."libc"}" deps)
-    ]);
-    features = mkFeatures (features."core_foundation"."0.5.1" or {});
-  };
-  features_.core_foundation."0.5.1" = deps: f: updateFeatures f (rec {
-    core_foundation = fold recursiveUpdate {} [
-      { "0.5.1"."chrono" =
-        (f.core_foundation."0.5.1"."chrono" or false) ||
-        (f.core_foundation."0.5.1".with-chrono or false) ||
-        (core_foundation."0.5.1"."with-chrono" or false); }
-      { "0.5.1"."uuid" =
-        (f.core_foundation."0.5.1"."uuid" or false) ||
-        (f.core_foundation."0.5.1".with-uuid or false) ||
-        (core_foundation."0.5.1"."with-uuid" or false); }
-      { "0.5.1".default = (f.core_foundation."0.5.1".default or true); }
-    ];
-    core_foundation_sys = fold recursiveUpdate {} [
-      { "${deps.core_foundation."0.5.1".core_foundation_sys}"."mac_os_10_7_support" =
-        (f.core_foundation_sys."${deps.core_foundation."0.5.1".core_foundation_sys}"."mac_os_10_7_support" or false) ||
-        (core_foundation."0.5.1"."mac_os_10_7_support" or false) ||
-        (f."core_foundation"."0.5.1"."mac_os_10_7_support" or false); }
-      { "${deps.core_foundation."0.5.1".core_foundation_sys}"."mac_os_10_8_features" =
-        (f.core_foundation_sys."${deps.core_foundation."0.5.1".core_foundation_sys}"."mac_os_10_8_features" or false) ||
-        (core_foundation."0.5.1"."mac_os_10_8_features" or false) ||
-        (f."core_foundation"."0.5.1"."mac_os_10_8_features" or false); }
-      { "${deps.core_foundation."0.5.1".core_foundation_sys}".default = true; }
-    ];
-    libc."${deps.core_foundation."0.5.1".libc}".default = true;
-  }) [
-    (features_.core_foundation_sys."${deps."core_foundation"."0.5.1"."core_foundation_sys"}" deps)
-    (features_.libc."${deps."core_foundation"."0.5.1"."libc"}" deps)
-  ];
-
-
-# end
-# core-foundation-sys-0.5.1
-
-  crates.core_foundation_sys."0.5.1" = deps: { features?(features_.core_foundation_sys."0.5.1" deps {}) }: buildRustCrate {
-    crateName = "core-foundation-sys";
-    version = "0.5.1";
-    description = "Bindings to Core Foundation for OS X";
-    authors = [ "The Servo Project Developers" ];
-    sha256 = "0qbrasll5nw1bgr071i8s8jc975d0y4qfysf868bh9xp0f6vcypa";
-    build = "build.rs";
-    dependencies = mapFeatures features ([
-      (crates."libc"."${deps."core_foundation_sys"."0.5.1"."libc"}" deps)
-    ]);
-    features = mkFeatures (features."core_foundation_sys"."0.5.1" or {});
-  };
-  features_.core_foundation_sys."0.5.1" = deps: f: updateFeatures f ({
-    core_foundation_sys."0.5.1".default = (f.core_foundation_sys."0.5.1".default or true);
-    libc."${deps.core_foundation_sys."0.5.1".libc}".default = true;
-  }) [
-    (features_.libc."${deps."core_foundation_sys"."0.5.1"."libc"}" deps)
-  ];
-
-
-# end
-# crc32fast-1.1.1
-
-  crates.crc32fast."1.1.1" = deps: { features?(features_.crc32fast."1.1.1" deps {}) }: buildRustCrate {
-    crateName = "crc32fast";
-    version = "1.1.1";
-    description = "Fast, SIMD-accelerated CRC32 (IEEE) checksum computation";
-    authors = [ "Sam Rijs <srijs@airpost.net>" "Alex Crichton <alex@alexcrichton.com>" ];
-    sha256 = "1rwvhb98w41mk5phr84mryally58f68h0v933772gdxqvqbcayqy";
-  };
-  features_.crc32fast."1.1.1" = deps: f: updateFeatures f ({
-    crc32fast."1.1.1".default = (f.crc32fast."1.1.1".default or true);
-  }) [];
-
-
-# end
-# crossbeam-0.2.10
-
-  crates.crossbeam."0.2.10" = deps: { features?(features_.crossbeam."0.2.10" deps {}) }: buildRustCrate {
-    crateName = "crossbeam";
-    version = "0.2.10";
-    description = "Support for lock-free data structures, synchronizers, and parallel programming";
-    authors = [ "Aaron Turon <aturon@mozilla.com>" ];
-    sha256 = "1k1a4q5gy7zakiw39hdzrblnw3kk4nsqmkdp1dpzh8h558140rhq";
-    features = mkFeatures (features."crossbeam"."0.2.10" or {});
-  };
-  features_.crossbeam."0.2.10" = deps: f: updateFeatures f ({
-    crossbeam."0.2.10".default = (f.crossbeam."0.2.10".default or true);
-  }) [];
-
-
-# end
-# crossbeam-deque-0.6.2
-
-  crates.crossbeam_deque."0.6.2" = deps: { features?(features_.crossbeam_deque."0.6.2" deps {}) }: buildRustCrate {
-    crateName = "crossbeam-deque";
-    version = "0.6.2";
-    description = "Concurrent work-stealing deque";
-    authors = [ "The Crossbeam Project Developers" ];
-    sha256 = "0qjdpq03snj6xp5gydgy1bdd5zzwpdxa57vhky3mf4djxiq81ara";
-    dependencies = mapFeatures features ([
-      (crates."crossbeam_epoch"."${deps."crossbeam_deque"."0.6.2"."crossbeam_epoch"}" deps)
-      (crates."crossbeam_utils"."${deps."crossbeam_deque"."0.6.2"."crossbeam_utils"}" deps)
-    ]);
-  };
-  features_.crossbeam_deque."0.6.2" = deps: f: updateFeatures f ({
-    crossbeam_deque."0.6.2".default = (f.crossbeam_deque."0.6.2".default or true);
-    crossbeam_epoch."${deps.crossbeam_deque."0.6.2".crossbeam_epoch}".default = true;
-    crossbeam_utils."${deps.crossbeam_deque."0.6.2".crossbeam_utils}".default = true;
-  }) [
-    (features_.crossbeam_epoch."${deps."crossbeam_deque"."0.6.2"."crossbeam_epoch"}" deps)
-    (features_.crossbeam_utils."${deps."crossbeam_deque"."0.6.2"."crossbeam_utils"}" deps)
-  ];
-
-
-# end
-# crossbeam-epoch-0.6.1
-
-  crates.crossbeam_epoch."0.6.1" = deps: { features?(features_.crossbeam_epoch."0.6.1" deps {}) }: buildRustCrate {
-    crateName = "crossbeam-epoch";
-    version = "0.6.1";
-    description = "Epoch-based garbage collection";
-    authors = [ "The Crossbeam Project Developers" ];
-    sha256 = "0qlwzsf2xmdjbh6pv9bxra2qdq72cmywq4fq1q114zw2s06zr039";
-    dependencies = mapFeatures features ([
-      (crates."arrayvec"."${deps."crossbeam_epoch"."0.6.1"."arrayvec"}" deps)
-      (crates."cfg_if"."${deps."crossbeam_epoch"."0.6.1"."cfg_if"}" deps)
-      (crates."crossbeam_utils"."${deps."crossbeam_epoch"."0.6.1"."crossbeam_utils"}" deps)
-      (crates."memoffset"."${deps."crossbeam_epoch"."0.6.1"."memoffset"}" deps)
-      (crates."scopeguard"."${deps."crossbeam_epoch"."0.6.1"."scopeguard"}" deps)
-    ]
-      ++ (if features.crossbeam_epoch."0.6.1".lazy_static or false then [ (crates.lazy_static."${deps."crossbeam_epoch"."0.6.1".lazy_static}" deps) ] else []));
-    features = mkFeatures (features."crossbeam_epoch"."0.6.1" or {});
-  };
-  features_.crossbeam_epoch."0.6.1" = deps: f: updateFeatures f (rec {
-    arrayvec = fold recursiveUpdate {} [
-      { "${deps.crossbeam_epoch."0.6.1".arrayvec}"."use_union" =
-        (f.arrayvec."${deps.crossbeam_epoch."0.6.1".arrayvec}"."use_union" or false) ||
-        (crossbeam_epoch."0.6.1"."nightly" or false) ||
-        (f."crossbeam_epoch"."0.6.1"."nightly" or false); }
-      { "${deps.crossbeam_epoch."0.6.1".arrayvec}".default = (f.arrayvec."${deps.crossbeam_epoch."0.6.1".arrayvec}".default or false); }
-    ];
-    cfg_if."${deps.crossbeam_epoch."0.6.1".cfg_if}".default = true;
-    crossbeam_epoch = fold recursiveUpdate {} [
-      { "0.6.1"."lazy_static" =
-        (f.crossbeam_epoch."0.6.1"."lazy_static" or false) ||
-        (f.crossbeam_epoch."0.6.1".std or false) ||
-        (crossbeam_epoch."0.6.1"."std" or false); }
-      { "0.6.1"."std" =
-        (f.crossbeam_epoch."0.6.1"."std" or false) ||
-        (f.crossbeam_epoch."0.6.1".default or false) ||
-        (crossbeam_epoch."0.6.1"."default" or false); }
-      { "0.6.1".default = (f.crossbeam_epoch."0.6.1".default or true); }
-    ];
-    crossbeam_utils = fold recursiveUpdate {} [
-      { "${deps.crossbeam_epoch."0.6.1".crossbeam_utils}"."std" =
-        (f.crossbeam_utils."${deps.crossbeam_epoch."0.6.1".crossbeam_utils}"."std" or false) ||
-        (crossbeam_epoch."0.6.1"."std" or false) ||
-        (f."crossbeam_epoch"."0.6.1"."std" or false); }
-      { "${deps.crossbeam_epoch."0.6.1".crossbeam_utils}".default = (f.crossbeam_utils."${deps.crossbeam_epoch."0.6.1".crossbeam_utils}".default or false); }
-    ];
-    lazy_static."${deps.crossbeam_epoch."0.6.1".lazy_static}".default = true;
-    memoffset."${deps.crossbeam_epoch."0.6.1".memoffset}".default = true;
-    scopeguard."${deps.crossbeam_epoch."0.6.1".scopeguard}".default = (f.scopeguard."${deps.crossbeam_epoch."0.6.1".scopeguard}".default or false);
-  }) [
-    (features_.arrayvec."${deps."crossbeam_epoch"."0.6.1"."arrayvec"}" deps)
-    (features_.cfg_if."${deps."crossbeam_epoch"."0.6.1"."cfg_if"}" deps)
-    (features_.crossbeam_utils."${deps."crossbeam_epoch"."0.6.1"."crossbeam_utils"}" deps)
-    (features_.lazy_static."${deps."crossbeam_epoch"."0.6.1"."lazy_static"}" deps)
-    (features_.memoffset."${deps."crossbeam_epoch"."0.6.1"."memoffset"}" deps)
-    (features_.scopeguard."${deps."crossbeam_epoch"."0.6.1"."scopeguard"}" deps)
-  ];
-
-
-# end
-# crossbeam-utils-0.6.1
-
-  crates.crossbeam_utils."0.6.1" = deps: { features?(features_.crossbeam_utils."0.6.1" deps {}) }: buildRustCrate {
-    crateName = "crossbeam-utils";
-    version = "0.6.1";
-    description = "Utilities for concurrent programming";
-    authors = [ "The Crossbeam Project Developers" ];
-    sha256 = "031lk6ls49yvwkdxhjm4fvg81iww01h108jq1cnlh88yzbcnwn2c";
-    dependencies = mapFeatures features ([
-      (crates."cfg_if"."${deps."crossbeam_utils"."0.6.1"."cfg_if"}" deps)
-    ]);
-    features = mkFeatures (features."crossbeam_utils"."0.6.1" or {});
-  };
-  features_.crossbeam_utils."0.6.1" = deps: f: updateFeatures f (rec {
-    cfg_if."${deps.crossbeam_utils."0.6.1".cfg_if}".default = true;
-    crossbeam_utils = fold recursiveUpdate {} [
-      { "0.6.1"."std" =
-        (f.crossbeam_utils."0.6.1"."std" or false) ||
-        (f.crossbeam_utils."0.6.1".default or false) ||
-        (crossbeam_utils."0.6.1"."default" or false); }
-      { "0.6.1".default = (f.crossbeam_utils."0.6.1".default or true); }
-    ];
-  }) [
-    (features_.cfg_if."${deps."crossbeam_utils"."0.6.1"."cfg_if"}" deps)
-  ];
-
-
-# end
-# custom_derive-0.1.7
-
-  crates.custom_derive."0.1.7" = deps: { features?(features_.custom_derive."0.1.7" deps {}) }: buildRustCrate {
-    crateName = "custom_derive";
-    version = "0.1.7";
-    description = "(Note: superseded by `macro-attr`) This crate provides a macro that enables the use of custom derive attributes.";
-    authors = [ "Daniel Keep <daniel.keep@gmail.com>" ];
-    sha256 = "160q3pzri2fgrr6czfdkwy1sbddki2za96r7ivvyii52qp1523zs";
-    features = mkFeatures (features."custom_derive"."0.1.7" or {});
-  };
-  features_.custom_derive."0.1.7" = deps: f: updateFeatures f (rec {
-    custom_derive = fold recursiveUpdate {} [
-      { "0.1.7"."std" =
-        (f.custom_derive."0.1.7"."std" or false) ||
-        (f.custom_derive."0.1.7".default or false) ||
-        (custom_derive."0.1.7"."default" or false); }
-      { "0.1.7".default = (f.custom_derive."0.1.7".default or true); }
-    ];
-  }) [];
-
-
-# end
-# derive-error-0.0.3
-
-  crates.derive_error."0.0.3" = deps: { features?(features_.derive_error."0.0.3" deps {}) }: buildRustCrate {
-    crateName = "derive-error";
-    version = "0.0.3";
-    description = "Derive macro for Error using macros 1.1";
-    authors = [ "rushmorem <rushmore@webenchanter.com>" ];
-    sha256 = "0239vzxn5xr9nm3i4d6hmqy7dv8llcjblgh1xixfk5dcgcqan77y";
-    procMacro = true;
-    dependencies = mapFeatures features ([
-      (crates."case"."${deps."derive_error"."0.0.3"."case"}" deps)
-      (crates."quote"."${deps."derive_error"."0.0.3"."quote"}" deps)
-      (crates."syn"."${deps."derive_error"."0.0.3"."syn"}" deps)
-    ]);
-  };
-  features_.derive_error."0.0.3" = deps: f: updateFeatures f ({
-    case."${deps.derive_error."0.0.3".case}".default = true;
-    derive_error."0.0.3".default = (f.derive_error."0.0.3".default or true);
-    quote."${deps.derive_error."0.0.3".quote}".default = true;
-    syn."${deps.derive_error."0.0.3".syn}".default = true;
-  }) [
-    (features_.case."${deps."derive_error"."0.0.3"."case"}" deps)
-    (features_.quote."${deps."derive_error"."0.0.3"."quote"}" deps)
-    (features_.syn."${deps."derive_error"."0.0.3"."syn"}" deps)
-  ];
-
-
-# end
-# dtoa-0.4.2
-
-  crates.dtoa."0.4.2" = deps: { features?(features_.dtoa."0.4.2" deps {}) }: buildRustCrate {
-    crateName = "dtoa";
-    version = "0.4.2";
-    description = "Fast functions for printing floating-point primitives to an io::Write";
-    authors = [ "David Tolnay <dtolnay@gmail.com>" ];
-    sha256 = "1bxsh6fags7nr36vlz07ik2a1rzyipc8x1y30kjk832hf2pzadmw";
-  };
-  features_.dtoa."0.4.2" = deps: f: updateFeatures f ({
-    dtoa."0.4.2".default = (f.dtoa."0.4.2".default or true);
-  }) [];
-
-
-# end
-# either-1.4.0
-
-  crates.either."1.4.0" = deps: { features?(features_.either."1.4.0" deps {}) }: buildRustCrate {
-    crateName = "either";
-    version = "1.4.0";
-    description = "The enum [`Either`] with variants `Left` and `Right` is a general purpose sum type with two cases.\n";
-    authors = [ "bluss" ];
-    sha256 = "04kpfd84lvyrkb2z4sljlz2d3d5qczd0sb1yy37fgijq2yx3vb37";
-    dependencies = mapFeatures features ([
-]);
-    features = mkFeatures (features."either"."1.4.0" or {});
-  };
-  features_.either."1.4.0" = deps: f: updateFeatures f (rec {
-    either = fold recursiveUpdate {} [
-      { "1.4.0"."use_std" =
-        (f.either."1.4.0"."use_std" or false) ||
-        (f.either."1.4.0".default or false) ||
-        (either."1.4.0"."default" or false); }
-      { "1.4.0".default = (f.either."1.4.0".default or true); }
-    ];
-  }) [];
-
-
-# end
-# encoding_rs-0.8.13
-
-  crates.encoding_rs."0.8.13" = deps: { features?(features_.encoding_rs."0.8.13" deps {}) }: buildRustCrate {
-    crateName = "encoding_rs";
-    version = "0.8.13";
-    description = "A Gecko-oriented implementation of the Encoding Standard";
-    authors = [ "Henri Sivonen <hsivonen@hsivonen.fi>" ];
-    sha256 = "1a91x1cnw1iz3hc32mvdmwhbqcfx36kk04pnil17mcii1ni6xyy5";
-    dependencies = mapFeatures features ([
-      (crates."cfg_if"."${deps."encoding_rs"."0.8.13"."cfg_if"}" deps)
-    ]);
-    features = mkFeatures (features."encoding_rs"."0.8.13" or {});
-  };
-  features_.encoding_rs."0.8.13" = deps: f: updateFeatures f (rec {
-    cfg_if."${deps.encoding_rs."0.8.13".cfg_if}".default = true;
-    encoding_rs = fold recursiveUpdate {} [
-      { "0.8.13"."fast-big5-hanzi-encode" =
-        (f.encoding_rs."0.8.13"."fast-big5-hanzi-encode" or false) ||
-        (f.encoding_rs."0.8.13".fast-legacy-encode or false) ||
-        (encoding_rs."0.8.13"."fast-legacy-encode" or false); }
-      { "0.8.13"."fast-gb-hanzi-encode" =
-        (f.encoding_rs."0.8.13"."fast-gb-hanzi-encode" or false) ||
-        (f.encoding_rs."0.8.13".fast-legacy-encode or false) ||
-        (encoding_rs."0.8.13"."fast-legacy-encode" or false); }
-      { "0.8.13"."fast-hangul-encode" =
-        (f.encoding_rs."0.8.13"."fast-hangul-encode" or false) ||
-        (f.encoding_rs."0.8.13".fast-legacy-encode or false) ||
-        (encoding_rs."0.8.13"."fast-legacy-encode" or false); }
-      { "0.8.13"."fast-hanja-encode" =
-        (f.encoding_rs."0.8.13"."fast-hanja-encode" or false) ||
-        (f.encoding_rs."0.8.13".fast-legacy-encode or false) ||
-        (encoding_rs."0.8.13"."fast-legacy-encode" or false); }
-      { "0.8.13"."fast-kanji-encode" =
-        (f.encoding_rs."0.8.13"."fast-kanji-encode" or false) ||
-        (f.encoding_rs."0.8.13".fast-legacy-encode or false) ||
-        (encoding_rs."0.8.13"."fast-legacy-encode" or false); }
-      { "0.8.13"."simd" =
-        (f.encoding_rs."0.8.13"."simd" or false) ||
-        (f.encoding_rs."0.8.13".simd-accel or false) ||
-        (encoding_rs."0.8.13"."simd-accel" or false); }
-      { "0.8.13".default = (f.encoding_rs."0.8.13".default or true); }
-    ];
-  }) [
-    (features_.cfg_if."${deps."encoding_rs"."0.8.13"."cfg_if"}" deps)
-  ];
-
-
-# end
-# exitcode-1.1.2
-
-  crates.exitcode."1.1.2" = deps: { features?(features_.exitcode."1.1.2" deps {}) }: buildRustCrate {
-    crateName = "exitcode";
-    version = "1.1.2";
-    description = "Preferred system exit codes as defined by sysexits.h";
-    authors = [ "Ben Wilber <benwilber@gmail.com>" ];
-    sha256 = "1cw9p4vzbscvyrbzv7z68gv2cairrns2d4wcb4nkahkcjk25phip";
-  };
-  features_.exitcode."1.1.2" = deps: f: updateFeatures f ({
-    exitcode."1.1.2".default = (f.exitcode."1.1.2".default or true);
-  }) [];
-
-
-# end
-# filetime-0.1.14
-
-  crates.filetime."0.1.14" = deps: { features?(features_.filetime."0.1.14" deps {}) }: buildRustCrate {
-    crateName = "filetime";
-    version = "0.1.14";
-    description = "Platform-agnostic accessors of timestamps in File metadata\n";
-    authors = [ "Alex Crichton <alex@alexcrichton.com>" ];
-    sha256 = "0i6dvc3ba7vl1iccc91k7c9bv9j5md98mbvlmfy0kicikx0ffn08";
-    dependencies = mapFeatures features ([
-      (crates."cfg_if"."${deps."filetime"."0.1.14"."cfg_if"}" deps)
-    ])
-      ++ (if kernel == "redox" then mapFeatures features ([
-      (crates."redox_syscall"."${deps."filetime"."0.1.14"."redox_syscall"}" deps)
-    ]) else [])
-      ++ (if (kernel == "linux" || kernel == "darwin") then mapFeatures features ([
-      (crates."libc"."${deps."filetime"."0.1.14"."libc"}" deps)
-    ]) else []);
-  };
-  features_.filetime."0.1.14" = deps: f: updateFeatures f ({
-    cfg_if."${deps.filetime."0.1.14".cfg_if}".default = true;
-    filetime."0.1.14".default = (f.filetime."0.1.14".default or true);
-    libc."${deps.filetime."0.1.14".libc}".default = true;
-    redox_syscall."${deps.filetime."0.1.14".redox_syscall}".default = true;
-  }) [
-    (features_.cfg_if."${deps."filetime"."0.1.14"."cfg_if"}" deps)
-    (features_.redox_syscall."${deps."filetime"."0.1.14"."redox_syscall"}" deps)
-    (features_.libc."${deps."filetime"."0.1.14"."libc"}" deps)
-  ];
-
-
-# end
-# flate2-0.2.20
-
-  crates.flate2."0.2.20" = deps: { features?(features_.flate2."0.2.20" deps {}) }: buildRustCrate {
-    crateName = "flate2";
-    version = "0.2.20";
-    description = "Bindings to miniz.c for DEFLATE compression and decompression exposed as\nReader/Writer streams. Contains bindings for zlib, deflate, and gzip-based\nstreams.\n";
-    authors = [ "Alex Crichton <alex@alexcrichton.com>" ];
-    sha256 = "1am0d2vmqym1vcg7rvv516vpcrbhdn1jisy0q03r3nbzdzh54ppl";
-    dependencies = mapFeatures features ([
-      (crates."libc"."${deps."flate2"."0.2.20"."libc"}" deps)
-    ]
-      ++ (if features.flate2."0.2.20".miniz-sys or false then [ (crates.miniz_sys."${deps."flate2"."0.2.20".miniz_sys}" deps) ] else []));
-    features = mkFeatures (features."flate2"."0.2.20" or {});
-  };
-  features_.flate2."0.2.20" = deps: f: updateFeatures f (rec {
-    flate2 = fold recursiveUpdate {} [
-      { "0.2.20"."futures" =
-        (f.flate2."0.2.20"."futures" or false) ||
-        (f.flate2."0.2.20".tokio or false) ||
-        (flate2."0.2.20"."tokio" or false); }
-      { "0.2.20"."libz-sys" =
-        (f.flate2."0.2.20"."libz-sys" or false) ||
-        (f.flate2."0.2.20".zlib or false) ||
-        (flate2."0.2.20"."zlib" or false); }
-      { "0.2.20"."miniz-sys" =
-        (f.flate2."0.2.20"."miniz-sys" or false) ||
-        (f.flate2."0.2.20".default or false) ||
-        (flate2."0.2.20"."default" or false); }
-      { "0.2.20"."tokio-io" =
-        (f.flate2."0.2.20"."tokio-io" or false) ||
-        (f.flate2."0.2.20".tokio or false) ||
-        (flate2."0.2.20"."tokio" or false); }
-      { "0.2.20".default = (f.flate2."0.2.20".default or true); }
-    ];
-    libc."${deps.flate2."0.2.20".libc}".default = true;
-    miniz_sys."${deps.flate2."0.2.20".miniz_sys}".default = true;
-  }) [
-    (features_.libc."${deps."flate2"."0.2.20"."libc"}" deps)
-    (features_.miniz_sys."${deps."flate2"."0.2.20"."miniz_sys"}" deps)
-  ];
-
-
-# end
-# fnv-1.0.6
-
-  crates.fnv."1.0.6" = deps: { features?(features_.fnv."1.0.6" deps {}) }: buildRustCrate {
-    crateName = "fnv";
-    version = "1.0.6";
-    description = "Fowler–Noll–Vo hash function";
-    authors = [ "Alex Crichton <alex@alexcrichton.com>" ];
-    sha256 = "128mlh23y3gg6ag5h8iiqlcbl59smisdzraqy88ldrf75kbw27ip";
-    libPath = "lib.rs";
-  };
-  features_.fnv."1.0.6" = deps: f: updateFeatures f ({
-    fnv."1.0.6".default = (f.fnv."1.0.6".default or true);
-  }) [];
-
-
-# end
-# foreign-types-0.3.2
-
-  crates.foreign_types."0.3.2" = deps: { features?(features_.foreign_types."0.3.2" deps {}) }: buildRustCrate {
-    crateName = "foreign-types";
-    version = "0.3.2";
-    description = "A framework for Rust wrappers over C APIs";
-    authors = [ "Steven Fackler <sfackler@gmail.com>" ];
-    sha256 = "105n8sp2djb1s5lzrw04p7ss3dchr5qa3canmynx396nh3vwm2p8";
-    dependencies = mapFeatures features ([
-      (crates."foreign_types_shared"."${deps."foreign_types"."0.3.2"."foreign_types_shared"}" deps)
-    ]);
-  };
-  features_.foreign_types."0.3.2" = deps: f: updateFeatures f ({
-    foreign_types."0.3.2".default = (f.foreign_types."0.3.2".default or true);
-    foreign_types_shared."${deps.foreign_types."0.3.2".foreign_types_shared}".default = true;
-  }) [
-    (features_.foreign_types_shared."${deps."foreign_types"."0.3.2"."foreign_types_shared"}" deps)
-  ];
-
-
-# end
-# foreign-types-shared-0.1.1
-
-  crates.foreign_types_shared."0.1.1" = deps: { features?(features_.foreign_types_shared."0.1.1" deps {}) }: buildRustCrate {
-    crateName = "foreign-types-shared";
-    version = "0.1.1";
-    description = "An internal crate used by foreign-types";
-    authors = [ "Steven Fackler <sfackler@gmail.com>" ];
-    sha256 = "0b6cnvqbflws8dxywk4589vgbz80049lz4x1g9dfy4s1ppd3g4z5";
-  };
-  features_.foreign_types_shared."0.1.1" = deps: f: updateFeatures f ({
-    foreign_types_shared."0.1.1".default = (f.foreign_types_shared."0.1.1".default or true);
-  }) [];
-
-
-# end
-# fuchsia-zircon-0.2.1
-
-  crates.fuchsia_zircon."0.2.1" = deps: { features?(features_.fuchsia_zircon."0.2.1" deps {}) }: buildRustCrate {
-    crateName = "fuchsia-zircon";
-    version = "0.2.1";
-    description = "Rust bindings for the Zircon kernel";
-    authors = [ "Raph Levien <raph@google.com>" ];
-    sha256 = "0yd4rd7ql1vdr349p6vgq2dnwmpylky1kjp8g1zgvp250jxrhddb";
-    dependencies = mapFeatures features ([
-      (crates."fuchsia_zircon_sys"."${deps."fuchsia_zircon"."0.2.1"."fuchsia_zircon_sys"}" deps)
-    ]);
-  };
-  features_.fuchsia_zircon."0.2.1" = deps: f: updateFeatures f ({
-    fuchsia_zircon."0.2.1".default = (f.fuchsia_zircon."0.2.1".default or true);
-    fuchsia_zircon_sys."${deps.fuchsia_zircon."0.2.1".fuchsia_zircon_sys}".default = true;
-  }) [
-    (features_.fuchsia_zircon_sys."${deps."fuchsia_zircon"."0.2.1"."fuchsia_zircon_sys"}" deps)
-  ];
-
-
-# end
-# fuchsia-zircon-0.3.3
-
-  crates.fuchsia_zircon."0.3.3" = deps: { features?(features_.fuchsia_zircon."0.3.3" deps {}) }: buildRustCrate {
-    crateName = "fuchsia-zircon";
-    version = "0.3.3";
-    description = "Rust bindings for the Zircon kernel";
-    authors = [ "Raph Levien <raph@google.com>" ];
-    sha256 = "0jrf4shb1699r4la8z358vri8318w4mdi6qzfqy30p2ymjlca4gk";
-    dependencies = mapFeatures features ([
-      (crates."bitflags"."${deps."fuchsia_zircon"."0.3.3"."bitflags"}" deps)
-      (crates."fuchsia_zircon_sys"."${deps."fuchsia_zircon"."0.3.3"."fuchsia_zircon_sys"}" deps)
-    ]);
-  };
-  features_.fuchsia_zircon."0.3.3" = deps: f: updateFeatures f ({
-    bitflags."${deps.fuchsia_zircon."0.3.3".bitflags}".default = true;
-    fuchsia_zircon."0.3.3".default = (f.fuchsia_zircon."0.3.3".default or true);
-    fuchsia_zircon_sys."${deps.fuchsia_zircon."0.3.3".fuchsia_zircon_sys}".default = true;
-  }) [
-    (features_.bitflags."${deps."fuchsia_zircon"."0.3.3"."bitflags"}" deps)
-    (features_.fuchsia_zircon_sys."${deps."fuchsia_zircon"."0.3.3"."fuchsia_zircon_sys"}" deps)
-  ];
-
-
-# end
-# fuchsia-zircon-sys-0.2.0
-
-  crates.fuchsia_zircon_sys."0.2.0" = deps: { features?(features_.fuchsia_zircon_sys."0.2.0" deps {}) }: buildRustCrate {
-    crateName = "fuchsia-zircon-sys";
-    version = "0.2.0";
-    description = "Low-level Rust bindings for the Zircon kernel";
-    authors = [ "Raph Levien <raph@google.com>" ];
-    sha256 = "1yrqsrjwlhl3di6prxf5xmyd82gyjaysldbka5wwk83z11mpqh4w";
-    dependencies = mapFeatures features ([
-      (crates."bitflags"."${deps."fuchsia_zircon_sys"."0.2.0"."bitflags"}" deps)
-    ]);
-  };
-  features_.fuchsia_zircon_sys."0.2.0" = deps: f: updateFeatures f ({
-    bitflags."${deps.fuchsia_zircon_sys."0.2.0".bitflags}".default = true;
-    fuchsia_zircon_sys."0.2.0".default = (f.fuchsia_zircon_sys."0.2.0".default or true);
-  }) [
-    (features_.bitflags."${deps."fuchsia_zircon_sys"."0.2.0"."bitflags"}" deps)
-  ];
-
-
-# end
-# fuchsia-zircon-sys-0.3.3
-
-  crates.fuchsia_zircon_sys."0.3.3" = deps: { features?(features_.fuchsia_zircon_sys."0.3.3" deps {}) }: buildRustCrate {
-    crateName = "fuchsia-zircon-sys";
-    version = "0.3.3";
-    description = "Low-level Rust bindings for the Zircon kernel";
-    authors = [ "Raph Levien <raph@google.com>" ];
-    sha256 = "08jp1zxrm9jbrr6l26bjal4dbm8bxfy57ickdgibsqxr1n9j3hf5";
-  };
-  features_.fuchsia_zircon_sys."0.3.3" = deps: f: updateFeatures f ({
-    fuchsia_zircon_sys."0.3.3".default = (f.fuchsia_zircon_sys."0.3.3".default or true);
-  }) [];
-
-
-# end
-# futures-0.1.25
-
-  crates.futures."0.1.25" = deps: { features?(features_.futures."0.1.25" deps {}) }: buildRustCrate {
-    crateName = "futures";
-    version = "0.1.25";
-    description = "An implementation of futures and streams featuring zero allocations,\ncomposability, and iterator-like interfaces.\n";
-    authors = [ "Alex Crichton <alex@alexcrichton.com>" ];
-    sha256 = "1gdn9z3mi3jjzbxgvawqh90895130c3ydks55rshja0ncpn985q3";
-    features = mkFeatures (features."futures"."0.1.25" or {});
-  };
-  features_.futures."0.1.25" = deps: f: updateFeatures f (rec {
-    futures = fold recursiveUpdate {} [
-      { "0.1.25"."use_std" =
-        (f.futures."0.1.25"."use_std" or false) ||
-        (f.futures."0.1.25".default or false) ||
-        (futures."0.1.25"."default" or false); }
-      { "0.1.25"."with-deprecated" =
-        (f.futures."0.1.25"."with-deprecated" or false) ||
-        (f.futures."0.1.25".default or false) ||
-        (futures."0.1.25"."default" or false); }
-      { "0.1.25".default = (f.futures."0.1.25".default or true); }
-    ];
-  }) [];
-
-
-# end
-# futures-cpupool-0.1.7
-
-  crates.futures_cpupool."0.1.7" = deps: { features?(features_.futures_cpupool."0.1.7" deps {}) }: buildRustCrate {
-    crateName = "futures-cpupool";
-    version = "0.1.7";
-    description = "An implementation of thread pools which hand out futures to the results of the\ncomputation on the threads themselves.\n";
-    authors = [ "Alex Crichton <alex@alexcrichton.com>" ];
-    sha256 = "1m0z5d54q1zr687acb4fh5fb3x692vr5ais6135lvp7vxap6p0xb";
-    dependencies = mapFeatures features ([
-      (crates."futures"."${deps."futures_cpupool"."0.1.7"."futures"}" deps)
-      (crates."num_cpus"."${deps."futures_cpupool"."0.1.7"."num_cpus"}" deps)
-    ]);
-    features = mkFeatures (features."futures_cpupool"."0.1.7" or {});
-  };
-  features_.futures_cpupool."0.1.7" = deps: f: updateFeatures f (rec {
-    futures = fold recursiveUpdate {} [
-      { "${deps.futures_cpupool."0.1.7".futures}"."use_std" = true; }
-      { "${deps.futures_cpupool."0.1.7".futures}"."with-deprecated" =
-        (f.futures."${deps.futures_cpupool."0.1.7".futures}"."with-deprecated" or false) ||
-        (futures_cpupool."0.1.7"."with-deprecated" or false) ||
-        (f."futures_cpupool"."0.1.7"."with-deprecated" or false); }
-      { "${deps.futures_cpupool."0.1.7".futures}".default = (f.futures."${deps.futures_cpupool."0.1.7".futures}".default or false); }
-    ];
-    futures_cpupool = fold recursiveUpdate {} [
-      { "0.1.7"."with-deprecated" =
-        (f.futures_cpupool."0.1.7"."with-deprecated" or false) ||
-        (f.futures_cpupool."0.1.7".default or false) ||
-        (futures_cpupool."0.1.7"."default" or false); }
-      { "0.1.7".default = (f.futures_cpupool."0.1.7".default or true); }
-    ];
-    num_cpus."${deps.futures_cpupool."0.1.7".num_cpus}".default = true;
-  }) [
-    (features_.futures."${deps."futures_cpupool"."0.1.7"."futures"}" deps)
-    (features_.num_cpus."${deps."futures_cpupool"."0.1.7"."num_cpus"}" deps)
-  ];
-
-
-# end
-# h2-0.1.13
-
-  crates.h2."0.1.13" = deps: { features?(features_.h2."0.1.13" deps {}) }: buildRustCrate {
-    crateName = "h2";
-    version = "0.1.13";
-    description = "An HTTP/2.0 client and server";
-    authors = [ "Carl Lerche <me@carllerche.com>" ];
-    sha256 = "1nmbr5i1ssqbnfwmkgsfzghzr4m8676z38s2dmzs9gchha7n8wv7";
-    dependencies = mapFeatures features ([
-      (crates."byteorder"."${deps."h2"."0.1.13"."byteorder"}" deps)
-      (crates."bytes"."${deps."h2"."0.1.13"."bytes"}" deps)
-      (crates."fnv"."${deps."h2"."0.1.13"."fnv"}" deps)
-      (crates."futures"."${deps."h2"."0.1.13"."futures"}" deps)
-      (crates."http"."${deps."h2"."0.1.13"."http"}" deps)
-      (crates."indexmap"."${deps."h2"."0.1.13"."indexmap"}" deps)
-      (crates."log"."${deps."h2"."0.1.13"."log"}" deps)
-      (crates."slab"."${deps."h2"."0.1.13"."slab"}" deps)
-      (crates."string"."${deps."h2"."0.1.13"."string"}" deps)
-      (crates."tokio_io"."${deps."h2"."0.1.13"."tokio_io"}" deps)
-    ]);
-    features = mkFeatures (features."h2"."0.1.13" or {});
-  };
-  features_.h2."0.1.13" = deps: f: updateFeatures f ({
-    byteorder."${deps.h2."0.1.13".byteorder}".default = true;
-    bytes."${deps.h2."0.1.13".bytes}".default = true;
-    fnv."${deps.h2."0.1.13".fnv}".default = true;
-    futures."${deps.h2."0.1.13".futures}".default = true;
-    h2."0.1.13".default = (f.h2."0.1.13".default or true);
-    http."${deps.h2."0.1.13".http}".default = true;
-    indexmap."${deps.h2."0.1.13".indexmap}".default = true;
-    log."${deps.h2."0.1.13".log}".default = true;
-    slab."${deps.h2."0.1.13".slab}".default = true;
-    string."${deps.h2."0.1.13".string}".default = true;
-    tokio_io."${deps.h2."0.1.13".tokio_io}".default = true;
-  }) [
-    (features_.byteorder."${deps."h2"."0.1.13"."byteorder"}" deps)
-    (features_.bytes."${deps."h2"."0.1.13"."bytes"}" deps)
-    (features_.fnv."${deps."h2"."0.1.13"."fnv"}" deps)
-    (features_.futures."${deps."h2"."0.1.13"."futures"}" deps)
-    (features_.http."${deps."h2"."0.1.13"."http"}" deps)
-    (features_.indexmap."${deps."h2"."0.1.13"."indexmap"}" deps)
-    (features_.log."${deps."h2"."0.1.13"."log"}" deps)
-    (features_.slab."${deps."h2"."0.1.13"."slab"}" deps)
-    (features_.string."${deps."h2"."0.1.13"."string"}" deps)
-    (features_.tokio_io."${deps."h2"."0.1.13"."tokio_io"}" deps)
-  ];
-
-
-# end
-# http-0.1.14
-
-  crates.http."0.1.14" = deps: { features?(features_.http."0.1.14" deps {}) }: buildRustCrate {
-    crateName = "http";
-    version = "0.1.14";
-    description = "A set of types for representing HTTP requests and responses.\n";
-    authors = [ "Alex Crichton <alex@alexcrichton.com>" "Carl Lerche <me@carllerche.com>" "Sean McArthur <sean@seanmonstar.com>" ];
-    sha256 = "1828cz2fh25nmp9rca0yzr548phsvkmzsqhspjnscqg1l9yc1557";
-    dependencies = mapFeatures features ([
-      (crates."bytes"."${deps."http"."0.1.14"."bytes"}" deps)
-      (crates."fnv"."${deps."http"."0.1.14"."fnv"}" deps)
-      (crates."itoa"."${deps."http"."0.1.14"."itoa"}" deps)
-    ]);
-  };
-  features_.http."0.1.14" = deps: f: updateFeatures f ({
-    bytes."${deps.http."0.1.14".bytes}".default = true;
-    fnv."${deps.http."0.1.14".fnv}".default = true;
-    http."0.1.14".default = (f.http."0.1.14".default or true);
-    itoa."${deps.http."0.1.14".itoa}".default = true;
-  }) [
-    (features_.bytes."${deps."http"."0.1.14"."bytes"}" deps)
-    (features_.fnv."${deps."http"."0.1.14"."fnv"}" deps)
-    (features_.itoa."${deps."http"."0.1.14"."itoa"}" deps)
-  ];
-
-
-# end
-# httparse-1.2.3
-
-  crates.httparse."1.2.3" = deps: { features?(features_.httparse."1.2.3" deps {}) }: buildRustCrate {
-    crateName = "httparse";
-    version = "1.2.3";
-    description = "A tiny, safe, speedy, zero-copy HTTP/1.x parser.";
-    authors = [ "Sean McArthur <sean.monstar@gmail.com>" ];
-    sha256 = "13x17y9bip0bija06y4vwpgh8jdmdi2gsvjq02kyfy0fbp5cqa93";
-    features = mkFeatures (features."httparse"."1.2.3" or {});
-  };
-  features_.httparse."1.2.3" = deps: f: updateFeatures f (rec {
-    httparse = fold recursiveUpdate {} [
-      { "1.2.3"."std" =
-        (f.httparse."1.2.3"."std" or false) ||
-        (f.httparse."1.2.3".default or false) ||
-        (httparse."1.2.3"."default" or false); }
-      { "1.2.3".default = (f.httparse."1.2.3".default or true); }
-    ];
-  }) [];
-
-
-# end
-# hyper-0.12.16
-
-  crates.hyper."0.12.16" = deps: { features?(features_.hyper."0.12.16" deps {}) }: buildRustCrate {
-    crateName = "hyper";
-    version = "0.12.16";
-    description = "A fast and correct HTTP library.";
-    authors = [ "Sean McArthur <sean@seanmonstar.com>" ];
-    sha256 = "1h5h9swxh02jcg1m4cvwb5nmkb8z9g4b0p4wfbhfvsd7wf14qr0y";
-    dependencies = mapFeatures features ([
-      (crates."bytes"."${deps."hyper"."0.12.16"."bytes"}" deps)
-      (crates."futures"."${deps."hyper"."0.12.16"."futures"}" deps)
-      (crates."h2"."${deps."hyper"."0.12.16"."h2"}" deps)
-      (crates."http"."${deps."hyper"."0.12.16"."http"}" deps)
-      (crates."httparse"."${deps."hyper"."0.12.16"."httparse"}" deps)
-      (crates."iovec"."${deps."hyper"."0.12.16"."iovec"}" deps)
-      (crates."itoa"."${deps."hyper"."0.12.16"."itoa"}" deps)
-      (crates."log"."${deps."hyper"."0.12.16"."log"}" deps)
-      (crates."time"."${deps."hyper"."0.12.16"."time"}" deps)
-      (crates."tokio_io"."${deps."hyper"."0.12.16"."tokio_io"}" deps)
-      (crates."want"."${deps."hyper"."0.12.16"."want"}" deps)
-    ]
-      ++ (if features.hyper."0.12.16".futures-cpupool or false then [ (crates.futures_cpupool."${deps."hyper"."0.12.16".futures_cpupool}" deps) ] else [])
-      ++ (if features.hyper."0.12.16".net2 or false then [ (crates.net2."${deps."hyper"."0.12.16".net2}" deps) ] else [])
-      ++ (if features.hyper."0.12.16".tokio or false then [ (crates.tokio."${deps."hyper"."0.12.16".tokio}" deps) ] else [])
-      ++ (if features.hyper."0.12.16".tokio-executor or false then [ (crates.tokio_executor."${deps."hyper"."0.12.16".tokio_executor}" deps) ] else [])
-      ++ (if features.hyper."0.12.16".tokio-reactor or false then [ (crates.tokio_reactor."${deps."hyper"."0.12.16".tokio_reactor}" deps) ] else [])
-      ++ (if features.hyper."0.12.16".tokio-tcp or false then [ (crates.tokio_tcp."${deps."hyper"."0.12.16".tokio_tcp}" deps) ] else [])
-      ++ (if features.hyper."0.12.16".tokio-threadpool or false then [ (crates.tokio_threadpool."${deps."hyper"."0.12.16".tokio_threadpool}" deps) ] else [])
-      ++ (if features.hyper."0.12.16".tokio-timer or false then [ (crates.tokio_timer."${deps."hyper"."0.12.16".tokio_timer}" deps) ] else []));
-    features = mkFeatures (features."hyper"."0.12.16" or {});
-  };
-  features_.hyper."0.12.16" = deps: f: updateFeatures f (rec {
-    bytes."${deps.hyper."0.12.16".bytes}".default = true;
-    futures."${deps.hyper."0.12.16".futures}".default = true;
-    futures_cpupool."${deps.hyper."0.12.16".futures_cpupool}".default = true;
-    h2."${deps.hyper."0.12.16".h2}".default = true;
-    http."${deps.hyper."0.12.16".http}".default = true;
-    httparse."${deps.hyper."0.12.16".httparse}".default = true;
-    hyper = fold recursiveUpdate {} [
-      { "0.12.16"."__internal_flaky_tests" =
-        (f.hyper."0.12.16"."__internal_flaky_tests" or false) ||
-        (f.hyper."0.12.16".default or false) ||
-        (hyper."0.12.16"."default" or false); }
-      { "0.12.16"."futures-cpupool" =
-        (f.hyper."0.12.16"."futures-cpupool" or false) ||
-        (f.hyper."0.12.16".runtime or false) ||
-        (hyper."0.12.16"."runtime" or false); }
-      { "0.12.16"."net2" =
-        (f.hyper."0.12.16"."net2" or false) ||
-        (f.hyper."0.12.16".runtime or false) ||
-        (hyper."0.12.16"."runtime" or false); }
-      { "0.12.16"."runtime" =
-        (f.hyper."0.12.16"."runtime" or false) ||
-        (f.hyper."0.12.16".default or false) ||
-        (hyper."0.12.16"."default" or false); }
-      { "0.12.16"."tokio" =
-        (f.hyper."0.12.16"."tokio" or false) ||
-        (f.hyper."0.12.16".runtime or false) ||
-        (hyper."0.12.16"."runtime" or false); }
-      { "0.12.16"."tokio-executor" =
-        (f.hyper."0.12.16"."tokio-executor" or false) ||
-        (f.hyper."0.12.16".runtime or false) ||
-        (hyper."0.12.16"."runtime" or false); }
-      { "0.12.16"."tokio-reactor" =
-        (f.hyper."0.12.16"."tokio-reactor" or false) ||
-        (f.hyper."0.12.16".runtime or false) ||
-        (hyper."0.12.16"."runtime" or false); }
-      { "0.12.16"."tokio-tcp" =
-        (f.hyper."0.12.16"."tokio-tcp" or false) ||
-        (f.hyper."0.12.16".runtime or false) ||
-        (hyper."0.12.16"."runtime" or false); }
-      { "0.12.16"."tokio-threadpool" =
-        (f.hyper."0.12.16"."tokio-threadpool" or false) ||
-        (f.hyper."0.12.16".runtime or false) ||
-        (hyper."0.12.16"."runtime" or false); }
-      { "0.12.16"."tokio-timer" =
-        (f.hyper."0.12.16"."tokio-timer" or false) ||
-        (f.hyper."0.12.16".runtime or false) ||
-        (hyper."0.12.16"."runtime" or false); }
-      { "0.12.16".default = (f.hyper."0.12.16".default or true); }
-    ];
-    iovec."${deps.hyper."0.12.16".iovec}".default = true;
-    itoa."${deps.hyper."0.12.16".itoa}".default = true;
-    log."${deps.hyper."0.12.16".log}".default = true;
-    net2."${deps.hyper."0.12.16".net2}".default = true;
-    time."${deps.hyper."0.12.16".time}".default = true;
-    tokio."${deps.hyper."0.12.16".tokio}".default = true;
-    tokio_executor."${deps.hyper."0.12.16".tokio_executor}".default = true;
-    tokio_io."${deps.hyper."0.12.16".tokio_io}".default = true;
-    tokio_reactor."${deps.hyper."0.12.16".tokio_reactor}".default = true;
-    tokio_tcp."${deps.hyper."0.12.16".tokio_tcp}".default = true;
-    tokio_threadpool."${deps.hyper."0.12.16".tokio_threadpool}".default = true;
-    tokio_timer."${deps.hyper."0.12.16".tokio_timer}".default = true;
-    want."${deps.hyper."0.12.16".want}".default = true;
-  }) [
-    (features_.bytes."${deps."hyper"."0.12.16"."bytes"}" deps)
-    (features_.futures."${deps."hyper"."0.12.16"."futures"}" deps)
-    (features_.futures_cpupool."${deps."hyper"."0.12.16"."futures_cpupool"}" deps)
-    (features_.h2."${deps."hyper"."0.12.16"."h2"}" deps)
-    (features_.http."${deps."hyper"."0.12.16"."http"}" deps)
-    (features_.httparse."${deps."hyper"."0.12.16"."httparse"}" deps)
-    (features_.iovec."${deps."hyper"."0.12.16"."iovec"}" deps)
-    (features_.itoa."${deps."hyper"."0.12.16"."itoa"}" deps)
-    (features_.log."${deps."hyper"."0.12.16"."log"}" deps)
-    (features_.net2."${deps."hyper"."0.12.16"."net2"}" deps)
-    (features_.time."${deps."hyper"."0.12.16"."time"}" deps)
-    (features_.tokio."${deps."hyper"."0.12.16"."tokio"}" deps)
-    (features_.tokio_executor."${deps."hyper"."0.12.16"."tokio_executor"}" deps)
-    (features_.tokio_io."${deps."hyper"."0.12.16"."tokio_io"}" deps)
-    (features_.tokio_reactor."${deps."hyper"."0.12.16"."tokio_reactor"}" deps)
-    (features_.tokio_tcp."${deps."hyper"."0.12.16"."tokio_tcp"}" deps)
-    (features_.tokio_threadpool."${deps."hyper"."0.12.16"."tokio_threadpool"}" deps)
-    (features_.tokio_timer."${deps."hyper"."0.12.16"."tokio_timer"}" deps)
-    (features_.want."${deps."hyper"."0.12.16"."want"}" deps)
-  ];
-
-
-# end
-# hyper-tls-0.3.1
-
-  crates.hyper_tls."0.3.1" = deps: { features?(features_.hyper_tls."0.3.1" deps {}) }: buildRustCrate {
-    crateName = "hyper-tls";
-    version = "0.3.1";
-    description = "Default TLS implementation for use with hyper";
-    authors = [ "Sean McArthur <sean@seanmonstar.com>" ];
-    sha256 = "0sk46mmnccxgxwn62rl5m58c2ivwgxgd590cjwg60pjkhx9qn5r7";
-    dependencies = mapFeatures features ([
-      (crates."bytes"."${deps."hyper_tls"."0.3.1"."bytes"}" deps)
-      (crates."futures"."${deps."hyper_tls"."0.3.1"."futures"}" deps)
-      (crates."hyper"."${deps."hyper_tls"."0.3.1"."hyper"}" deps)
-      (crates."native_tls"."${deps."hyper_tls"."0.3.1"."native_tls"}" deps)
-      (crates."tokio_io"."${deps."hyper_tls"."0.3.1"."tokio_io"}" deps)
-    ]);
-    features = mkFeatures (features."hyper_tls"."0.3.1" or {});
-  };
-  features_.hyper_tls."0.3.1" = deps: f: updateFeatures f (rec {
-    bytes."${deps.hyper_tls."0.3.1".bytes}".default = true;
-    futures."${deps.hyper_tls."0.3.1".futures}".default = true;
-    hyper."${deps.hyper_tls."0.3.1".hyper}".default = true;
-    hyper_tls."0.3.1".default = (f.hyper_tls."0.3.1".default or true);
-    native_tls = fold recursiveUpdate {} [
-      { "${deps.hyper_tls."0.3.1".native_tls}"."vendored" =
-        (f.native_tls."${deps.hyper_tls."0.3.1".native_tls}"."vendored" or false) ||
-        (hyper_tls."0.3.1"."vendored" or false) ||
-        (f."hyper_tls"."0.3.1"."vendored" or false); }
-      { "${deps.hyper_tls."0.3.1".native_tls}".default = true; }
-    ];
-    tokio_io."${deps.hyper_tls."0.3.1".tokio_io}".default = true;
-  }) [
-    (features_.bytes."${deps."hyper_tls"."0.3.1"."bytes"}" deps)
-    (features_.futures."${deps."hyper_tls"."0.3.1"."futures"}" deps)
-    (features_.hyper."${deps."hyper_tls"."0.3.1"."hyper"}" deps)
-    (features_.native_tls."${deps."hyper_tls"."0.3.1"."native_tls"}" deps)
-    (features_.tokio_io."${deps."hyper_tls"."0.3.1"."tokio_io"}" deps)
-  ];
-
-
-# end
-# idna-0.1.4
-
-  crates.idna."0.1.4" = deps: { features?(features_.idna."0.1.4" deps {}) }: buildRustCrate {
-    crateName = "idna";
-    version = "0.1.4";
-    description = "IDNA (Internationalizing Domain Names in Applications) and Punycode.";
-    authors = [ "The rust-url developers" ];
-    sha256 = "15j44qgjx1skwg9i7f4cm36ni4n99b1ayx23yxx7axxcw8vjf336";
-    dependencies = mapFeatures features ([
-      (crates."matches"."${deps."idna"."0.1.4"."matches"}" deps)
-      (crates."unicode_bidi"."${deps."idna"."0.1.4"."unicode_bidi"}" deps)
-      (crates."unicode_normalization"."${deps."idna"."0.1.4"."unicode_normalization"}" deps)
-    ]);
-  };
-  features_.idna."0.1.4" = deps: f: updateFeatures f ({
-    idna."0.1.4".default = (f.idna."0.1.4".default or true);
-    matches."${deps.idna."0.1.4".matches}".default = true;
-    unicode_bidi."${deps.idna."0.1.4".unicode_bidi}".default = true;
-    unicode_normalization."${deps.idna."0.1.4".unicode_normalization}".default = true;
-  }) [
-    (features_.matches."${deps."idna"."0.1.4"."matches"}" deps)
-    (features_.unicode_bidi."${deps."idna"."0.1.4"."unicode_bidi"}" deps)
-    (features_.unicode_normalization."${deps."idna"."0.1.4"."unicode_normalization"}" deps)
-  ];
-
-
-# end
-# indexmap-1.0.2
-
-  crates.indexmap."1.0.2" = deps: { features?(features_.indexmap."1.0.2" deps {}) }: buildRustCrate {
-    crateName = "indexmap";
-    version = "1.0.2";
-    description = "A hash table with consistent order and fast iteration.\n\nThe indexmap is a hash table where the iteration order of the key-value\npairs is independent of the hash values of the keys. It has the usual\nhash table functionality, it preserves insertion order except after\nremovals, and it allows lookup of its elements by either hash table key\nor numerical index. A corresponding hash set type is also provided.\n\nThis crate was initially published under the name ordermap, but it was renamed to\nindexmap.\n";
-    authors = [ "bluss" "Josh Stone <cuviper@gmail.com>" ];
-    sha256 = "18a0cn5xy3a7wswxg5lwfg3j4sh5blk28ykw0ysgr486djd353gf";
-    dependencies = mapFeatures features ([
-]);
-    features = mkFeatures (features."indexmap"."1.0.2" or {});
-  };
-  features_.indexmap."1.0.2" = deps: f: updateFeatures f (rec {
-    indexmap = fold recursiveUpdate {} [
-      { "1.0.2"."serde" =
-        (f.indexmap."1.0.2"."serde" or false) ||
-        (f.indexmap."1.0.2".serde-1 or false) ||
-        (indexmap."1.0.2"."serde-1" or false); }
-      { "1.0.2".default = (f.indexmap."1.0.2".default or true); }
-    ];
-  }) [];
-
-
-# end
-# iovec-0.1.1
-
-  crates.iovec."0.1.1" = deps: { features?(features_.iovec."0.1.1" deps {}) }: buildRustCrate {
-    crateName = "iovec";
-    version = "0.1.1";
-    description = "Portable buffer type for scatter/gather I/O operations\n";
-    authors = [ "Carl Lerche <me@carllerche.com>" ];
-    sha256 = "14fns3g3arbql6lkczf2gbbzaqh22mfv7y1wq5rr2y8jhh5m8jmm";
-    dependencies = (if (kernel == "linux" || kernel == "darwin") then mapFeatures features ([
-      (crates."libc"."${deps."iovec"."0.1.1"."libc"}" deps)
-    ]) else [])
-      ++ (if kernel == "windows" then mapFeatures features ([
-      (crates."winapi"."${deps."iovec"."0.1.1"."winapi"}" deps)
-    ]) else []);
-  };
-  features_.iovec."0.1.1" = deps: f: updateFeatures f ({
-    iovec."0.1.1".default = (f.iovec."0.1.1".default or true);
-    libc."${deps.iovec."0.1.1".libc}".default = true;
-    winapi."${deps.iovec."0.1.1".winapi}".default = true;
-  }) [
-    (features_.libc."${deps."iovec"."0.1.1"."libc"}" deps)
-    (features_.winapi."${deps."iovec"."0.1.1"."winapi"}" deps)
-  ];
-
-
-# end
-# isatty-0.1.5
-
-  crates.isatty."0.1.5" = deps: { features?(features_.isatty."0.1.5" deps {}) }: buildRustCrate {
-    crateName = "isatty";
-    version = "0.1.5";
-    description = "libc::isatty that also works on Windows";
-    authors = [ "David Tolnay <dtolnay@gmail.com>" ];
-    sha256 = "0gp781mgqmvsp6a3iyhwk2sqis2ys8jfg3grq40m135zgb4d2cvj";
-    dependencies = (if (kernel == "linux" || kernel == "darwin") then mapFeatures features ([
-      (crates."libc"."${deps."isatty"."0.1.5"."libc"}" deps)
-    ]) else [])
-      ++ (if kernel == "windows" then mapFeatures features ([
-      (crates."kernel32_sys"."${deps."isatty"."0.1.5"."kernel32_sys"}" deps)
-      (crates."winapi"."${deps."isatty"."0.1.5"."winapi"}" deps)
-    ]) else []);
-  };
-  features_.isatty."0.1.5" = deps: f: updateFeatures f ({
-    isatty."0.1.5".default = (f.isatty."0.1.5".default or true);
-    kernel32_sys."${deps.isatty."0.1.5".kernel32_sys}".default = true;
-    libc."${deps.isatty."0.1.5".libc}".default = true;
-    winapi."${deps.isatty."0.1.5".winapi}".default = true;
-  }) [
-    (features_.libc."${deps."isatty"."0.1.5"."libc"}" deps)
-    (features_.kernel32_sys."${deps."isatty"."0.1.5"."kernel32_sys"}" deps)
-    (features_.winapi."${deps."isatty"."0.1.5"."winapi"}" deps)
-  ];
-
-
-# end
-# itertools-0.6.5
-
-  crates.itertools."0.6.5" = deps: { features?(features_.itertools."0.6.5" deps {}) }: buildRustCrate {
-    crateName = "itertools";
-    version = "0.6.5";
-    description = "Extra iterator adaptors, iterator methods, free functions, and macros.";
-    authors = [ "bluss" ];
-    sha256 = "0gbhgn7s8qkxxw10i514fzpqnc3aissn4kcgylm2cvnv9zmg8mw1";
-    dependencies = mapFeatures features ([
-      (crates."either"."${deps."itertools"."0.6.5"."either"}" deps)
-    ]);
-  };
-  features_.itertools."0.6.5" = deps: f: updateFeatures f ({
-    either."${deps.itertools."0.6.5".either}".default = (f.either."${deps.itertools."0.6.5".either}".default or false);
-    itertools."0.6.5".default = (f.itertools."0.6.5".default or true);
-  }) [
-    (features_.either."${deps."itertools"."0.6.5"."either"}" deps)
-  ];
-
-
-# end
-# itoa-0.3.4
-
-  crates.itoa."0.3.4" = deps: { features?(features_.itoa."0.3.4" deps {}) }: buildRustCrate {
-    crateName = "itoa";
-    version = "0.3.4";
-    description = "Fast functions for printing integer primitives to an io::Write";
-    authors = [ "David Tolnay <dtolnay@gmail.com>" ];
-    sha256 = "1nfkzz6vrgj0d9l3yzjkkkqzdgs68y294fjdbl7jq118qi8xc9d9";
-    features = mkFeatures (features."itoa"."0.3.4" or {});
-  };
-  features_.itoa."0.3.4" = deps: f: updateFeatures f ({
-    itoa."0.3.4".default = (f.itoa."0.3.4".default or true);
-  }) [];
-
-
-# end
-# itoa-0.4.3
-
-  crates.itoa."0.4.3" = deps: { features?(features_.itoa."0.4.3" deps {}) }: buildRustCrate {
-    crateName = "itoa";
-    version = "0.4.3";
-    description = "Fast functions for printing integer primitives to an io::Write";
-    authors = [ "David Tolnay <dtolnay@gmail.com>" ];
-    sha256 = "0zadimmdgvili3gdwxqg7ljv3r4wcdg1kkdfp9nl15vnm23vrhy1";
-    features = mkFeatures (features."itoa"."0.4.3" or {});
-  };
-  features_.itoa."0.4.3" = deps: f: updateFeatures f (rec {
-    itoa = fold recursiveUpdate {} [
-      { "0.4.3"."std" =
-        (f.itoa."0.4.3"."std" or false) ||
-        (f.itoa."0.4.3".default or false) ||
-        (itoa."0.4.3"."default" or false); }
-      { "0.4.3".default = (f.itoa."0.4.3".default or true); }
-    ];
-  }) [];
-
-
-# end
-# kernel32-sys-0.2.2
-
-  crates.kernel32_sys."0.2.2" = deps: { features?(features_.kernel32_sys."0.2.2" deps {}) }: buildRustCrate {
-    crateName = "kernel32-sys";
-    version = "0.2.2";
-    description = "Contains function definitions for the Windows API library kernel32. See winapi for types and constants.";
-    authors = [ "Peter Atashian <retep998@gmail.com>" ];
-    sha256 = "1lrw1hbinyvr6cp28g60z97w32w8vsk6pahk64pmrv2fmby8srfj";
-    libName = "kernel32";
-    build = "build.rs";
-    dependencies = mapFeatures features ([
-      (crates."winapi"."${deps."kernel32_sys"."0.2.2"."winapi"}" deps)
-    ]);
-
-    buildDependencies = mapFeatures features ([
-      (crates."winapi_build"."${deps."kernel32_sys"."0.2.2"."winapi_build"}" deps)
-    ]);
-  };
-  features_.kernel32_sys."0.2.2" = deps: f: updateFeatures f ({
-    kernel32_sys."0.2.2".default = (f.kernel32_sys."0.2.2".default or true);
-    winapi."${deps.kernel32_sys."0.2.2".winapi}".default = true;
-    winapi_build."${deps.kernel32_sys."0.2.2".winapi_build}".default = true;
-  }) [
-    (features_.winapi."${deps."kernel32_sys"."0.2.2"."winapi"}" deps)
-    (features_.winapi_build."${deps."kernel32_sys"."0.2.2"."winapi_build"}" deps)
-  ];
-
-
-# end
-# lazy_static-0.2.10
-
-  crates.lazy_static."0.2.10" = deps: { features?(features_.lazy_static."0.2.10" deps {}) }: buildRustCrate {
-    crateName = "lazy_static";
-    version = "0.2.10";
-    description = "A macro for declaring lazily evaluated statics in Rust.";
-    authors = [ "Marvin Löbel <loebel.marvin@gmail.com>" ];
-    sha256 = "0ylwjvppsm56fpv32l4br7zw0pwn81wbfb1abalyyr1d9c94vg8r";
-    dependencies = mapFeatures features ([
-]);
-    features = mkFeatures (features."lazy_static"."0.2.10" or {});
-  };
-  features_.lazy_static."0.2.10" = deps: f: updateFeatures f (rec {
-    lazy_static = fold recursiveUpdate {} [
-      { "0.2.10"."compiletest_rs" =
-        (f.lazy_static."0.2.10"."compiletest_rs" or false) ||
-        (f.lazy_static."0.2.10".compiletest or false) ||
-        (lazy_static."0.2.10"."compiletest" or false); }
-      { "0.2.10"."nightly" =
-        (f.lazy_static."0.2.10"."nightly" or false) ||
-        (f.lazy_static."0.2.10".spin_no_std or false) ||
-        (lazy_static."0.2.10"."spin_no_std" or false); }
-      { "0.2.10"."spin" =
-        (f.lazy_static."0.2.10"."spin" or false) ||
-        (f.lazy_static."0.2.10".spin_no_std or false) ||
-        (lazy_static."0.2.10"."spin_no_std" or false); }
-      { "0.2.10".default = (f.lazy_static."0.2.10".default or true); }
-    ];
-  }) [];
-
-
-# end
-# lazy_static-1.2.0
-
-  crates.lazy_static."1.2.0" = deps: { features?(features_.lazy_static."1.2.0" deps {}) }: buildRustCrate {
-    crateName = "lazy_static";
-    version = "1.2.0";
-    description = "A macro for declaring lazily evaluated statics in Rust.";
-    authors = [ "Marvin Löbel <loebel.marvin@gmail.com>" ];
-    sha256 = "07p3b30k2akyr6xw08ggd5qiz5nw3vd3agggj360fcc1njz7d0ss";
-    dependencies = mapFeatures features ([
-]);
-    features = mkFeatures (features."lazy_static"."1.2.0" or {});
-  };
-  features_.lazy_static."1.2.0" = deps: f: updateFeatures f (rec {
-    lazy_static = fold recursiveUpdate {} [
-      { "1.2.0"."spin" =
-        (f.lazy_static."1.2.0"."spin" or false) ||
-        (f.lazy_static."1.2.0".spin_no_std or false) ||
-        (lazy_static."1.2.0"."spin_no_std" or false); }
-      { "1.2.0".default = (f.lazy_static."1.2.0".default or true); }
-    ];
-  }) [];
-
-
-# end
-# lazycell-1.2.0
-
-  crates.lazycell."1.2.0" = deps: { features?(features_.lazycell."1.2.0" deps {}) }: buildRustCrate {
-    crateName = "lazycell";
-    version = "1.2.0";
-    description = "A library providing a lazily filled Cell struct";
-    authors = [ "Alex Crichton <alex@alexcrichton.com>" "Nikita Pekin <contact@nikitapek.in>" ];
-    sha256 = "1lzdb3q17yjihw9hksynxgyg8wbph1h791wff8rrf1c2aqjwhmax";
-    dependencies = mapFeatures features ([
-]);
-    features = mkFeatures (features."lazycell"."1.2.0" or {});
-  };
-  features_.lazycell."1.2.0" = deps: f: updateFeatures f (rec {
-    lazycell = fold recursiveUpdate {} [
-      { "1.2.0"."clippy" =
-        (f.lazycell."1.2.0"."clippy" or false) ||
-        (f.lazycell."1.2.0".nightly-testing or false) ||
-        (lazycell."1.2.0"."nightly-testing" or false); }
-      { "1.2.0"."nightly" =
-        (f.lazycell."1.2.0"."nightly" or false) ||
-        (f.lazycell."1.2.0".nightly-testing or false) ||
-        (lazycell."1.2.0"."nightly-testing" or false); }
-      { "1.2.0".default = (f.lazycell."1.2.0".default or true); }
-    ];
-  }) [];
-
-
-# end
-# libc-0.2.44
-
-  crates.libc."0.2.44" = deps: { features?(features_.libc."0.2.44" deps {}) }: buildRustCrate {
-    crateName = "libc";
-    version = "0.2.44";
-    description = "A library for types and bindings to native C functions often found in libc or\nother common platform libraries.\n";
-    authors = [ "The Rust Project Developers" ];
-    sha256 = "17a7p0lcf3qwl1pcxffdflgnx8zr2659mgzzg4zi5fnv1mlj3q6z";
-    build = "build.rs";
-    dependencies = mapFeatures features ([
-]);
-    features = mkFeatures (features."libc"."0.2.44" or {});
-  };
-  features_.libc."0.2.44" = deps: f: updateFeatures f (rec {
-    libc = fold recursiveUpdate {} [
-      { "0.2.44"."align" =
-        (f.libc."0.2.44"."align" or false) ||
-        (f.libc."0.2.44".rustc-dep-of-std or false) ||
-        (libc."0.2.44"."rustc-dep-of-std" or false); }
-      { "0.2.44"."rustc-std-workspace-core" =
-        (f.libc."0.2.44"."rustc-std-workspace-core" or false) ||
-        (f.libc."0.2.44".rustc-dep-of-std or false) ||
-        (libc."0.2.44"."rustc-dep-of-std" or false); }
-      { "0.2.44"."use_std" =
-        (f.libc."0.2.44"."use_std" or false) ||
-        (f.libc."0.2.44".default or false) ||
-        (libc."0.2.44"."default" or false); }
-      { "0.2.44".default = (f.libc."0.2.44".default or true); }
-    ];
-  }) [];
-
-
-# end
-# libflate-0.1.19
-
-  crates.libflate."0.1.19" = deps: { features?(features_.libflate."0.1.19" deps {}) }: buildRustCrate {
-    crateName = "libflate";
-    version = "0.1.19";
-    description = "A Rust implementation of DEFLATE algorithm and related formats (ZLIB, GZIP)";
-    authors = [ "Takeru Ohta <phjgt308@gmail.com>" ];
-    sha256 = "1klhvys9541xrwspyyv41qbr37xnwx4bdaspk6gbiprhrsqqkjp0";
-    dependencies = mapFeatures features ([
-      (crates."adler32"."${deps."libflate"."0.1.19"."adler32"}" deps)
-      (crates."byteorder"."${deps."libflate"."0.1.19"."byteorder"}" deps)
-      (crates."crc32fast"."${deps."libflate"."0.1.19"."crc32fast"}" deps)
-    ]);
-  };
-  features_.libflate."0.1.19" = deps: f: updateFeatures f ({
-    adler32."${deps.libflate."0.1.19".adler32}".default = true;
-    byteorder."${deps.libflate."0.1.19".byteorder}".default = true;
-    crc32fast."${deps.libflate."0.1.19".crc32fast}".default = true;
-    libflate."0.1.19".default = (f.libflate."0.1.19".default or true);
-  }) [
-    (features_.adler32."${deps."libflate"."0.1.19"."adler32"}" deps)
-    (features_.byteorder."${deps."libflate"."0.1.19"."byteorder"}" deps)
-    (features_.crc32fast."${deps."libflate"."0.1.19"."crc32fast"}" deps)
-  ];
-
-
-# end
-# lock_api-0.1.5
-
-  crates.lock_api."0.1.5" = deps: { features?(features_.lock_api."0.1.5" deps {}) }: buildRustCrate {
-    crateName = "lock_api";
-    version = "0.1.5";
-    description = "Wrappers to create fully-featured Mutex and RwLock types. Compatible with no_std.";
-    authors = [ "Amanieu d'Antras <amanieu@gmail.com>" ];
-    sha256 = "132sidr5hvjfkaqm3l95zpcpi8yk5ddd0g79zf1ad4v65sxirqqm";
-    dependencies = mapFeatures features ([
-      (crates."scopeguard"."${deps."lock_api"."0.1.5"."scopeguard"}" deps)
-    ]
-      ++ (if features.lock_api."0.1.5".owning_ref or false then [ (crates.owning_ref."${deps."lock_api"."0.1.5".owning_ref}" deps) ] else []));
-    features = mkFeatures (features."lock_api"."0.1.5" or {});
-  };
-  features_.lock_api."0.1.5" = deps: f: updateFeatures f ({
-    lock_api."0.1.5".default = (f.lock_api."0.1.5".default or true);
-    owning_ref."${deps.lock_api."0.1.5".owning_ref}".default = true;
-    scopeguard."${deps.lock_api."0.1.5".scopeguard}".default = (f.scopeguard."${deps.lock_api."0.1.5".scopeguard}".default or false);
-  }) [
-    (features_.owning_ref."${deps."lock_api"."0.1.5"."owning_ref"}" deps)
-    (features_.scopeguard."${deps."lock_api"."0.1.5"."scopeguard"}" deps)
-  ];
-
-
-# end
-# log-0.3.8
-
-  crates.log."0.3.8" = deps: { features?(features_.log."0.3.8" deps {}) }: buildRustCrate {
-    crateName = "log";
-    version = "0.3.8";
-    description = "A lightweight logging facade for Rust\n";
-    authors = [ "The Rust Project Developers" ];
-    sha256 = "1c43z4z85sxrsgir4s1hi84558ab5ic7jrn5qgmsiqcv90vvn006";
-    features = mkFeatures (features."log"."0.3.8" or {});
-  };
-  features_.log."0.3.8" = deps: f: updateFeatures f (rec {
-    log = fold recursiveUpdate {} [
-      { "0.3.8"."use_std" =
-        (f.log."0.3.8"."use_std" or false) ||
-        (f.log."0.3.8".default or false) ||
-        (log."0.3.8"."default" or false); }
-      { "0.3.8".default = (f.log."0.3.8".default or true); }
-    ];
-  }) [];
-
-
-# end
-# log-0.4.6
-
-  crates.log."0.4.6" = deps: { features?(features_.log."0.4.6" deps {}) }: buildRustCrate {
-    crateName = "log";
-    version = "0.4.6";
-    description = "A lightweight logging facade for Rust\n";
-    authors = [ "The Rust Project Developers" ];
-    sha256 = "1nd8dl9mvc9vd6fks5d4gsxaz990xi6rzlb8ymllshmwi153vngr";
-    dependencies = mapFeatures features ([
-      (crates."cfg_if"."${deps."log"."0.4.6"."cfg_if"}" deps)
-    ]);
-    features = mkFeatures (features."log"."0.4.6" or {});
-  };
-  features_.log."0.4.6" = deps: f: updateFeatures f ({
-    cfg_if."${deps.log."0.4.6".cfg_if}".default = true;
-    log."0.4.6".default = (f.log."0.4.6".default or true);
-  }) [
-    (features_.cfg_if."${deps."log"."0.4.6"."cfg_if"}" deps)
-  ];
-
-
-# end
-# maplit-0.1.6
-
-  crates.maplit."0.1.6" = deps: { features?(features_.maplit."0.1.6" deps {}) }: buildRustCrate {
-    crateName = "maplit";
-    version = "0.1.6";
-    description = "Container / collection literal macros for HashMap, HashSet, BTreeMap, BTreeSet.";
-    authors = [ "bluss" ];
-    sha256 = "1f8kf5v7xra8ssvh5c10qlacbk4l0z2817pkscflx5s5q6y7925h";
-  };
-  features_.maplit."0.1.6" = deps: f: updateFeatures f ({
-    maplit."0.1.6".default = (f.maplit."0.1.6".default or true);
-  }) [];
-
-
-# end
-# matches-0.1.6
-
-  crates.matches."0.1.6" = deps: { features?(features_.matches."0.1.6" deps {}) }: buildRustCrate {
-    crateName = "matches";
-    version = "0.1.6";
-    description = "A macro to evaluate, as a boolean, whether an expression matches a pattern.";
-    authors = [ "Simon Sapin <simon.sapin@exyr.org>" ];
-    sha256 = "1zlrqlbvzxdil8z8ial2ihvxjwvlvg3g8dr0lcdpsjclkclasjan";
-    libPath = "lib.rs";
-  };
-  features_.matches."0.1.6" = deps: f: updateFeatures f ({
-    matches."0.1.6".default = (f.matches."0.1.6".default or true);
-  }) [];
-
-
-# end
-# memchr-0.1.11
-
-  crates.memchr."0.1.11" = deps: { features?(features_.memchr."0.1.11" deps {}) }: buildRustCrate {
-    crateName = "memchr";
-    version = "0.1.11";
-    description = "Safe interface to memchr.";
-    authors = [ "Andrew Gallant <jamslam@gmail.com>" "bluss" ];
-    sha256 = "0x73jghamvxxq5fsw9wb0shk5m6qp3q6fsf0nibn0i6bbqkw91s8";
-    dependencies = mapFeatures features ([
-      (crates."libc"."${deps."memchr"."0.1.11"."libc"}" deps)
-    ]);
-  };
-  features_.memchr."0.1.11" = deps: f: updateFeatures f ({
-    libc."${deps.memchr."0.1.11".libc}".default = true;
-    memchr."0.1.11".default = (f.memchr."0.1.11".default or true);
-  }) [
-    (features_.libc."${deps."memchr"."0.1.11"."libc"}" deps)
-  ];
-
-
-# end
-# memoffset-0.2.1
-
-  crates.memoffset."0.2.1" = deps: { features?(features_.memoffset."0.2.1" deps {}) }: buildRustCrate {
-    crateName = "memoffset";
-    version = "0.2.1";
-    description = "offset_of functionality for Rust structs.";
-    authors = [ "Gilad Naaman <gilad.naaman@gmail.com>" ];
-    sha256 = "00vym01jk9slibq2nsiilgffp7n6k52a4q3n4dqp0xf5kzxvffcf";
-  };
-  features_.memoffset."0.2.1" = deps: f: updateFeatures f ({
-    memoffset."0.2.1".default = (f.memoffset."0.2.1".default or true);
-  }) [];
-
-
-# end
-# mime-0.3.12
-
-  crates.mime."0.3.12" = deps: { features?(features_.mime."0.3.12" deps {}) }: buildRustCrate {
-    crateName = "mime";
-    version = "0.3.12";
-    description = "Strongly Typed Mimes";
-    authors = [ "Sean McArthur <sean@seanmonstar.com>" ];
-    sha256 = "0lmcwkmxwbla9457w9ak13cfgqxfyn5wa1syjy1kll2ras5xifvh";
-    dependencies = mapFeatures features ([
-      (crates."unicase"."${deps."mime"."0.3.12"."unicase"}" deps)
-    ]);
-  };
-  features_.mime."0.3.12" = deps: f: updateFeatures f ({
-    mime."0.3.12".default = (f.mime."0.3.12".default or true);
-    unicase."${deps.mime."0.3.12".unicase}".default = true;
-  }) [
-    (features_.unicase."${deps."mime"."0.3.12"."unicase"}" deps)
-  ];
-
-
-# end
-# mime_guess-2.0.0-alpha.6
-
-  crates.mime_guess."2.0.0-alpha.6" = deps: { features?(features_.mime_guess."2.0.0-alpha.6" deps {}) }: buildRustCrate {
-    crateName = "mime_guess";
-    version = "2.0.0-alpha.6";
-    description = "A simple crate for detection of a file's MIME type by its extension.";
-    authors = [ "Austin Bonander <austin.bonander@gmail.com>" ];
-    sha256 = "1k2mdq43gi2qr63b7m5zs624rfi40ysk33cay49jlhq97jwnk9db";
-    dependencies = mapFeatures features ([
-      (crates."mime"."${deps."mime_guess"."2.0.0-alpha.6"."mime"}" deps)
-      (crates."phf"."${deps."mime_guess"."2.0.0-alpha.6"."phf"}" deps)
-      (crates."unicase"."${deps."mime_guess"."2.0.0-alpha.6"."unicase"}" deps)
-    ]);
-
-    buildDependencies = mapFeatures features ([
-      (crates."phf_codegen"."${deps."mime_guess"."2.0.0-alpha.6"."phf_codegen"}" deps)
-      (crates."unicase"."${deps."mime_guess"."2.0.0-alpha.6"."unicase"}" deps)
-    ]);
-    features = mkFeatures (features."mime_guess"."2.0.0-alpha.6" or {});
-  };
-  features_.mime_guess."2.0.0-alpha.6" = deps: f: updateFeatures f ({
-    mime."${deps.mime_guess."2.0.0-alpha.6".mime}".default = true;
-    mime_guess."2.0.0-alpha.6".default = (f.mime_guess."2.0.0-alpha.6".default or true);
-    phf = fold recursiveUpdate {} [
-      { "${deps.mime_guess."2.0.0-alpha.6".phf}"."unicase" = true; }
-      { "${deps.mime_guess."2.0.0-alpha.6".phf}".default = true; }
-    ];
-    phf_codegen."${deps.mime_guess."2.0.0-alpha.6".phf_codegen}".default = true;
-    unicase."${deps.mime_guess."2.0.0-alpha.6".unicase}".default = true;
-  }) [
-    (features_.mime."${deps."mime_guess"."2.0.0-alpha.6"."mime"}" deps)
-    (features_.phf."${deps."mime_guess"."2.0.0-alpha.6"."phf"}" deps)
-    (features_.unicase."${deps."mime_guess"."2.0.0-alpha.6"."unicase"}" deps)
-    (features_.phf_codegen."${deps."mime_guess"."2.0.0-alpha.6"."phf_codegen"}" deps)
-    (features_.unicase."${deps."mime_guess"."2.0.0-alpha.6"."unicase"}" deps)
-  ];
-
-
-# end
-# miniz-sys-0.1.10
-
-  crates.miniz_sys."0.1.10" = deps: { features?(features_.miniz_sys."0.1.10" deps {}) }: buildRustCrate {
-    crateName = "miniz-sys";
-    version = "0.1.10";
-    description = "Bindings to the miniz.c library.\n";
-    authors = [ "Alex Crichton <alex@alexcrichton.com>" ];
-    sha256 = "11vg6phafxil87nbxgrlhcx5hjr3145wsbwwkfmibvnmzxfdmvln";
-    libPath = "lib.rs";
-    libName = "miniz_sys";
-    build = "build.rs";
-    dependencies = mapFeatures features ([
-      (crates."libc"."${deps."miniz_sys"."0.1.10"."libc"}" deps)
-    ]);
-
-    buildDependencies = mapFeatures features ([
-      (crates."cc"."${deps."miniz_sys"."0.1.10"."cc"}" deps)
-    ]);
-  };
-  features_.miniz_sys."0.1.10" = deps: f: updateFeatures f ({
-    cc."${deps.miniz_sys."0.1.10".cc}".default = true;
-    libc."${deps.miniz_sys."0.1.10".libc}".default = true;
-    miniz_sys."0.1.10".default = (f.miniz_sys."0.1.10".default or true);
-  }) [
-    (features_.libc."${deps."miniz_sys"."0.1.10"."libc"}" deps)
-    (features_.cc."${deps."miniz_sys"."0.1.10"."cc"}" deps)
-  ];
-
-
-# end
-# mio-0.6.16
-
-  crates.mio."0.6.16" = deps: { features?(features_.mio."0.6.16" deps {}) }: buildRustCrate {
-    crateName = "mio";
-    version = "0.6.16";
-    description = "Lightweight non-blocking IO";
-    authors = [ "Carl Lerche <me@carllerche.com>" ];
-    sha256 = "14vyrlmf0w984pi7ad9qvmlfj6vrb0wn6i8ik9j87w5za2r3rban";
-    dependencies = mapFeatures features ([
-      (crates."iovec"."${deps."mio"."0.6.16"."iovec"}" deps)
-      (crates."lazycell"."${deps."mio"."0.6.16"."lazycell"}" deps)
-      (crates."log"."${deps."mio"."0.6.16"."log"}" deps)
-      (crates."net2"."${deps."mio"."0.6.16"."net2"}" deps)
-      (crates."slab"."${deps."mio"."0.6.16"."slab"}" deps)
-    ])
-      ++ (if kernel == "fuchsia" then mapFeatures features ([
-      (crates."fuchsia_zircon"."${deps."mio"."0.6.16"."fuchsia_zircon"}" deps)
-      (crates."fuchsia_zircon_sys"."${deps."mio"."0.6.16"."fuchsia_zircon_sys"}" deps)
-    ]) else [])
-      ++ (if (kernel == "linux" || kernel == "darwin") then mapFeatures features ([
-      (crates."libc"."${deps."mio"."0.6.16"."libc"}" deps)
-    ]) else [])
-      ++ (if kernel == "windows" then mapFeatures features ([
-      (crates."kernel32_sys"."${deps."mio"."0.6.16"."kernel32_sys"}" deps)
-      (crates."miow"."${deps."mio"."0.6.16"."miow"}" deps)
-      (crates."winapi"."${deps."mio"."0.6.16"."winapi"}" deps)
-    ]) else []);
-    features = mkFeatures (features."mio"."0.6.16" or {});
-  };
-  features_.mio."0.6.16" = deps: f: updateFeatures f (rec {
-    fuchsia_zircon."${deps.mio."0.6.16".fuchsia_zircon}".default = true;
-    fuchsia_zircon_sys."${deps.mio."0.6.16".fuchsia_zircon_sys}".default = true;
-    iovec."${deps.mio."0.6.16".iovec}".default = true;
-    kernel32_sys."${deps.mio."0.6.16".kernel32_sys}".default = true;
-    lazycell."${deps.mio."0.6.16".lazycell}".default = true;
-    libc."${deps.mio."0.6.16".libc}".default = true;
-    log."${deps.mio."0.6.16".log}".default = true;
-    mio = fold recursiveUpdate {} [
-      { "0.6.16"."with-deprecated" =
-        (f.mio."0.6.16"."with-deprecated" or false) ||
-        (f.mio."0.6.16".default or false) ||
-        (mio."0.6.16"."default" or false); }
-      { "0.6.16".default = (f.mio."0.6.16".default or true); }
-    ];
-    miow."${deps.mio."0.6.16".miow}".default = true;
-    net2."${deps.mio."0.6.16".net2}".default = true;
-    slab."${deps.mio."0.6.16".slab}".default = true;
-    winapi."${deps.mio."0.6.16".winapi}".default = true;
-  }) [
-    (features_.iovec."${deps."mio"."0.6.16"."iovec"}" deps)
-    (features_.lazycell."${deps."mio"."0.6.16"."lazycell"}" deps)
-    (features_.log."${deps."mio"."0.6.16"."log"}" deps)
-    (features_.net2."${deps."mio"."0.6.16"."net2"}" deps)
-    (features_.slab."${deps."mio"."0.6.16"."slab"}" deps)
-    (features_.fuchsia_zircon."${deps."mio"."0.6.16"."fuchsia_zircon"}" deps)
-    (features_.fuchsia_zircon_sys."${deps."mio"."0.6.16"."fuchsia_zircon_sys"}" deps)
-    (features_.libc."${deps."mio"."0.6.16"."libc"}" deps)
-    (features_.kernel32_sys."${deps."mio"."0.6.16"."kernel32_sys"}" deps)
-    (features_.miow."${deps."mio"."0.6.16"."miow"}" deps)
-    (features_.winapi."${deps."mio"."0.6.16"."winapi"}" deps)
-  ];
-
-
-# end
-# miow-0.2.1
-
-  crates.miow."0.2.1" = deps: { features?(features_.miow."0.2.1" deps {}) }: buildRustCrate {
-    crateName = "miow";
-    version = "0.2.1";
-    description = "A zero overhead I/O library for Windows, focusing on IOCP and Async I/O\nabstractions.\n";
-    authors = [ "Alex Crichton <alex@alexcrichton.com>" ];
-    sha256 = "14f8zkc6ix7mkyis1vsqnim8m29b6l55abkba3p2yz7j1ibcvrl0";
-    dependencies = mapFeatures features ([
-      (crates."kernel32_sys"."${deps."miow"."0.2.1"."kernel32_sys"}" deps)
-      (crates."net2"."${deps."miow"."0.2.1"."net2"}" deps)
-      (crates."winapi"."${deps."miow"."0.2.1"."winapi"}" deps)
-      (crates."ws2_32_sys"."${deps."miow"."0.2.1"."ws2_32_sys"}" deps)
-    ]);
-  };
-  features_.miow."0.2.1" = deps: f: updateFeatures f ({
-    kernel32_sys."${deps.miow."0.2.1".kernel32_sys}".default = true;
-    miow."0.2.1".default = (f.miow."0.2.1".default or true);
-    net2."${deps.miow."0.2.1".net2}".default = (f.net2."${deps.miow."0.2.1".net2}".default or false);
-    winapi."${deps.miow."0.2.1".winapi}".default = true;
-    ws2_32_sys."${deps.miow."0.2.1".ws2_32_sys}".default = true;
-  }) [
-    (features_.kernel32_sys."${deps."miow"."0.2.1"."kernel32_sys"}" deps)
-    (features_.net2."${deps."miow"."0.2.1"."net2"}" deps)
-    (features_.winapi."${deps."miow"."0.2.1"."winapi"}" deps)
-    (features_.ws2_32_sys."${deps."miow"."0.2.1"."ws2_32_sys"}" deps)
-  ];
-
-
-# end
-# native-tls-0.2.2
-
-  crates.native_tls."0.2.2" = deps: { features?(features_.native_tls."0.2.2" deps {}) }: buildRustCrate {
-    crateName = "native-tls";
-    version = "0.2.2";
-    description = "A wrapper over a platform's native TLS implementation";
-    authors = [ "Steven Fackler <sfackler@gmail.com>" ];
-    sha256 = "0vl2hmmnrcjfylzjfsbnav20ri2n1qjgxn7bklb4mk3fyxfqm1m9";
-    dependencies = (if kernel == "darwin" || kernel == "ios" then mapFeatures features ([
-      (crates."lazy_static"."${deps."native_tls"."0.2.2"."lazy_static"}" deps)
-      (crates."libc"."${deps."native_tls"."0.2.2"."libc"}" deps)
-      (crates."security_framework"."${deps."native_tls"."0.2.2"."security_framework"}" deps)
-      (crates."security_framework_sys"."${deps."native_tls"."0.2.2"."security_framework_sys"}" deps)
-      (crates."tempfile"."${deps."native_tls"."0.2.2"."tempfile"}" deps)
-    ]) else [])
-      ++ (if !(kernel == "windows" || kernel == "darwin" || kernel == "ios") then mapFeatures features ([
-      (crates."openssl"."${deps."native_tls"."0.2.2"."openssl"}" deps)
-      (crates."openssl_probe"."${deps."native_tls"."0.2.2"."openssl_probe"}" deps)
-      (crates."openssl_sys"."${deps."native_tls"."0.2.2"."openssl_sys"}" deps)
-    ]) else [])
-      ++ (if kernel == "android" then mapFeatures features ([
-      (crates."log"."${deps."native_tls"."0.2.2"."log"}" deps)
-    ]) else [])
-      ++ (if kernel == "windows" then mapFeatures features ([
-      (crates."schannel"."${deps."native_tls"."0.2.2"."schannel"}" deps)
-    ]) else []);
-    features = mkFeatures (features."native_tls"."0.2.2" or {});
-  };
-  features_.native_tls."0.2.2" = deps: f: updateFeatures f ({
-    lazy_static."${deps.native_tls."0.2.2".lazy_static}".default = true;
-    libc."${deps.native_tls."0.2.2".libc}".default = true;
-    log."${deps.native_tls."0.2.2".log}".default = true;
-    native_tls."0.2.2".default = (f.native_tls."0.2.2".default or true);
-    openssl."${deps.native_tls."0.2.2".openssl}".default = true;
-    openssl_probe."${deps.native_tls."0.2.2".openssl_probe}".default = true;
-    openssl_sys."${deps.native_tls."0.2.2".openssl_sys}".default = true;
-    schannel."${deps.native_tls."0.2.2".schannel}".default = true;
-    security_framework."${deps.native_tls."0.2.2".security_framework}".default = true;
-    security_framework_sys."${deps.native_tls."0.2.2".security_framework_sys}".default = true;
-    tempfile."${deps.native_tls."0.2.2".tempfile}".default = true;
-  }) [
-    (features_.lazy_static."${deps."native_tls"."0.2.2"."lazy_static"}" deps)
-    (features_.libc."${deps."native_tls"."0.2.2"."libc"}" deps)
-    (features_.security_framework."${deps."native_tls"."0.2.2"."security_framework"}" deps)
-    (features_.security_framework_sys."${deps."native_tls"."0.2.2"."security_framework_sys"}" deps)
-    (features_.tempfile."${deps."native_tls"."0.2.2"."tempfile"}" deps)
-    (features_.openssl."${deps."native_tls"."0.2.2"."openssl"}" deps)
-    (features_.openssl_probe."${deps."native_tls"."0.2.2"."openssl_probe"}" deps)
-    (features_.openssl_sys."${deps."native_tls"."0.2.2"."openssl_sys"}" deps)
-    (features_.log."${deps."native_tls"."0.2.2"."log"}" deps)
-    (features_.schannel."${deps."native_tls"."0.2.2"."schannel"}" deps)
-  ];
-
-
-# end
-# net2-0.2.33
-
-  crates.net2."0.2.33" = deps: { features?(features_.net2."0.2.33" deps {}) }: buildRustCrate {
-    crateName = "net2";
-    version = "0.2.33";
-    description = "Extensions to the standard library's networking types as proposed in RFC 1158.\n";
-    authors = [ "Alex Crichton <alex@alexcrichton.com>" ];
-    sha256 = "1qnmajafgybj5wyxz9iffa8x5wgbwd2znfklmhqj7vl6lw1m65mq";
-    dependencies = mapFeatures features ([
-      (crates."cfg_if"."${deps."net2"."0.2.33"."cfg_if"}" deps)
-    ])
-      ++ (if kernel == "redox" || (kernel == "linux" || kernel == "darwin") then mapFeatures features ([
-      (crates."libc"."${deps."net2"."0.2.33"."libc"}" deps)
-    ]) else [])
-      ++ (if kernel == "windows" then mapFeatures features ([
-      (crates."winapi"."${deps."net2"."0.2.33"."winapi"}" deps)
-    ]) else []);
-    features = mkFeatures (features."net2"."0.2.33" or {});
-  };
-  features_.net2."0.2.33" = deps: f: updateFeatures f (rec {
-    cfg_if."${deps.net2."0.2.33".cfg_if}".default = true;
-    libc."${deps.net2."0.2.33".libc}".default = true;
-    net2 = fold recursiveUpdate {} [
-      { "0.2.33"."duration" =
-        (f.net2."0.2.33"."duration" or false) ||
-        (f.net2."0.2.33".default or false) ||
-        (net2."0.2.33"."default" or false); }
-      { "0.2.33".default = (f.net2."0.2.33".default or true); }
-    ];
-    winapi = fold recursiveUpdate {} [
-      { "${deps.net2."0.2.33".winapi}"."handleapi" = true; }
-      { "${deps.net2."0.2.33".winapi}"."winsock2" = true; }
-      { "${deps.net2."0.2.33".winapi}"."ws2def" = true; }
-      { "${deps.net2."0.2.33".winapi}"."ws2ipdef" = true; }
-      { "${deps.net2."0.2.33".winapi}"."ws2tcpip" = true; }
-      { "${deps.net2."0.2.33".winapi}".default = true; }
-    ];
-  }) [
-    (features_.cfg_if."${deps."net2"."0.2.33"."cfg_if"}" deps)
-    (features_.libc."${deps."net2"."0.2.33"."libc"}" deps)
-    (features_.winapi."${deps."net2"."0.2.33"."winapi"}" deps)
-  ];
-
-
-# end
-# nodrop-0.1.13
-
-  crates.nodrop."0.1.13" = deps: { features?(features_.nodrop."0.1.13" deps {}) }: buildRustCrate {
-    crateName = "nodrop";
-    version = "0.1.13";
-    description = "A wrapper type to inhibit drop (destructor). Use std::mem::ManuallyDrop instead!";
-    authors = [ "bluss" ];
-    sha256 = "0gkfx6wihr9z0m8nbdhma5pyvbipznjpkzny2d4zkc05b0vnhinb";
-    dependencies = mapFeatures features ([
-]);
-    features = mkFeatures (features."nodrop"."0.1.13" or {});
-  };
-  features_.nodrop."0.1.13" = deps: f: updateFeatures f (rec {
-    nodrop = fold recursiveUpdate {} [
-      { "0.1.13"."nodrop-union" =
-        (f.nodrop."0.1.13"."nodrop-union" or false) ||
-        (f.nodrop."0.1.13".use_union or false) ||
-        (nodrop."0.1.13"."use_union" or false); }
-      { "0.1.13"."std" =
-        (f.nodrop."0.1.13"."std" or false) ||
-        (f.nodrop."0.1.13".default or false) ||
-        (nodrop."0.1.13"."default" or false); }
-      { "0.1.13".default = (f.nodrop."0.1.13".default or true); }
-    ];
-  }) [];
-
-
-# end
-# num-0.1.40
-
-  crates.num."0.1.40" = deps: { features?(features_.num."0.1.40" deps {}) }: buildRustCrate {
-    crateName = "num";
-    version = "0.1.40";
-    description = "A collection of numeric types and traits for Rust, including bigint,\ncomplex, rational, range iterators, generic integers, and more!\n";
-    authors = [ "The Rust Project Developers" ];
-    sha256 = "0b29c25n9mpf6a921khj7a6y3hz5va4vgwppcd2if975qq1shakg";
-    dependencies = mapFeatures features ([
-      (crates."num_integer"."${deps."num"."0.1.40"."num_integer"}" deps)
-      (crates."num_iter"."${deps."num"."0.1.40"."num_iter"}" deps)
-      (crates."num_traits"."${deps."num"."0.1.40"."num_traits"}" deps)
-    ]);
-    features = mkFeatures (features."num"."0.1.40" or {});
-  };
-  features_.num."0.1.40" = deps: f: updateFeatures f (rec {
-    num = fold recursiveUpdate {} [
-      { "0.1.40"."bigint" =
-        (f.num."0.1.40"."bigint" or false) ||
-        (f.num."0.1.40".default or false) ||
-        (num."0.1.40"."default" or false); }
-      { "0.1.40"."complex" =
-        (f.num."0.1.40"."complex" or false) ||
-        (f.num."0.1.40".default or false) ||
-        (num."0.1.40"."default" or false); }
-      { "0.1.40"."num-bigint" =
-        (f.num."0.1.40"."num-bigint" or false) ||
-        (f.num."0.1.40".bigint or false) ||
-        (num."0.1.40"."bigint" or false); }
-      { "0.1.40"."num-complex" =
-        (f.num."0.1.40"."num-complex" or false) ||
-        (f.num."0.1.40".complex or false) ||
-        (num."0.1.40"."complex" or false); }
-      { "0.1.40"."num-rational" =
-        (f.num."0.1.40"."num-rational" or false) ||
-        (f.num."0.1.40".rational or false) ||
-        (num."0.1.40"."rational" or false); }
-      { "0.1.40"."rational" =
-        (f.num."0.1.40"."rational" or false) ||
-        (f.num."0.1.40".default or false) ||
-        (num."0.1.40"."default" or false); }
-      { "0.1.40"."rustc-serialize" =
-        (f.num."0.1.40"."rustc-serialize" or false) ||
-        (f.num."0.1.40".default or false) ||
-        (num."0.1.40"."default" or false); }
-      { "0.1.40".default = (f.num."0.1.40".default or true); }
-    ];
-    num_integer."${deps.num."0.1.40".num_integer}".default = true;
-    num_iter."${deps.num."0.1.40".num_iter}".default = true;
-    num_traits."${deps.num."0.1.40".num_traits}".default = true;
-  }) [
-    (features_.num_integer."${deps."num"."0.1.40"."num_integer"}" deps)
-    (features_.num_iter."${deps."num"."0.1.40"."num_iter"}" deps)
-    (features_.num_traits."${deps."num"."0.1.40"."num_traits"}" deps)
-  ];
-
-
-# end
-# num-integer-0.1.35
-
-  crates.num_integer."0.1.35" = deps: { features?(features_.num_integer."0.1.35" deps {}) }: buildRustCrate {
-    crateName = "num-integer";
-    version = "0.1.35";
-    description = "Integer traits and functions";
-    authors = [ "The Rust Project Developers" ];
-    sha256 = "0xybj8isi9b6wc646d5rc043i8l8j6wy0vrl4pn995qms9fxbbcc";
-    dependencies = mapFeatures features ([
-      (crates."num_traits"."${deps."num_integer"."0.1.35"."num_traits"}" deps)
-    ]);
-  };
-  features_.num_integer."0.1.35" = deps: f: updateFeatures f ({
-    num_integer."0.1.35".default = (f.num_integer."0.1.35".default or true);
-    num_traits."${deps.num_integer."0.1.35".num_traits}".default = true;
-  }) [
-    (features_.num_traits."${deps."num_integer"."0.1.35"."num_traits"}" deps)
-  ];
-
-
-# end
-# num-iter-0.1.34
-
-  crates.num_iter."0.1.34" = deps: { features?(features_.num_iter."0.1.34" deps {}) }: buildRustCrate {
-    crateName = "num-iter";
-    version = "0.1.34";
-    description = "External iterators for generic mathematics";
-    authors = [ "The Rust Project Developers" ];
-    sha256 = "02cld7x9dzbqbs6sxxzq1i22z3awlcd6ljkgvhkfr9rsnaxphzl9";
-    dependencies = mapFeatures features ([
-      (crates."num_integer"."${deps."num_iter"."0.1.34"."num_integer"}" deps)
-      (crates."num_traits"."${deps."num_iter"."0.1.34"."num_traits"}" deps)
-    ]);
-  };
-  features_.num_iter."0.1.34" = deps: f: updateFeatures f ({
-    num_integer."${deps.num_iter."0.1.34".num_integer}".default = true;
-    num_iter."0.1.34".default = (f.num_iter."0.1.34".default or true);
-    num_traits."${deps.num_iter."0.1.34".num_traits}".default = true;
-  }) [
-    (features_.num_integer."${deps."num_iter"."0.1.34"."num_integer"}" deps)
-    (features_.num_traits."${deps."num_iter"."0.1.34"."num_traits"}" deps)
-  ];
-
-
-# end
-# num-traits-0.1.40
-
-  crates.num_traits."0.1.40" = deps: { features?(features_.num_traits."0.1.40" deps {}) }: buildRustCrate {
-    crateName = "num-traits";
-    version = "0.1.40";
-    description = "Numeric traits for generic mathematics";
-    authors = [ "The Rust Project Developers" ];
-    sha256 = "1fr8ghp4i97q3agki54i0hpmqxv3s65i2mqd1pinc7w7arc3fplw";
-  };
-  features_.num_traits."0.1.40" = deps: f: updateFeatures f ({
-    num_traits."0.1.40".default = (f.num_traits."0.1.40".default or true);
-  }) [];
-
-
-# end
-# num_cpus-1.8.0
-
-  crates.num_cpus."1.8.0" = deps: { features?(features_.num_cpus."1.8.0" deps {}) }: buildRustCrate {
-    crateName = "num_cpus";
-    version = "1.8.0";
-    description = "Get the number of CPUs on a machine.";
-    authors = [ "Sean McArthur <sean@seanmonstar.com>" ];
-    sha256 = "1y6qnd9r8ga6y8mvlabdrr73nc8cshjjlzbvnanzyj9b8zzkfwk2";
-    dependencies = mapFeatures features ([
-      (crates."libc"."${deps."num_cpus"."1.8.0"."libc"}" deps)
-    ]);
-  };
-  features_.num_cpus."1.8.0" = deps: f: updateFeatures f ({
-    libc."${deps.num_cpus."1.8.0".libc}".default = true;
-    num_cpus."1.8.0".default = (f.num_cpus."1.8.0".default or true);
-  }) [
-    (features_.libc."${deps."num_cpus"."1.8.0"."libc"}" deps)
-  ];
-
-
-# end
-# openssl-0.10.15
-
-  crates.openssl."0.10.15" = deps: { features?(features_.openssl."0.10.15" deps {}) }: buildRustCrate {
-    crateName = "openssl";
-    version = "0.10.15";
-    description = "OpenSSL bindings";
-    authors = [ "Steven Fackler <sfackler@gmail.com>" ];
-    sha256 = "0fj5g66ibkyb6vfdfjgaypfn45vpj2cdv7d7qpq653sv57glcqri";
-    dependencies = mapFeatures features ([
-      (crates."bitflags"."${deps."openssl"."0.10.15"."bitflags"}" deps)
-      (crates."cfg_if"."${deps."openssl"."0.10.15"."cfg_if"}" deps)
-      (crates."foreign_types"."${deps."openssl"."0.10.15"."foreign_types"}" deps)
-      (crates."lazy_static"."${deps."openssl"."0.10.15"."lazy_static"}" deps)
-      (crates."libc"."${deps."openssl"."0.10.15"."libc"}" deps)
-      (crates."openssl_sys"."${deps."openssl"."0.10.15"."openssl_sys"}" deps)
-    ]);
-    features = mkFeatures (features."openssl"."0.10.15" or {});
-  };
-  features_.openssl."0.10.15" = deps: f: updateFeatures f (rec {
-    bitflags."${deps.openssl."0.10.15".bitflags}".default = true;
-    cfg_if."${deps.openssl."0.10.15".cfg_if}".default = true;
-    foreign_types."${deps.openssl."0.10.15".foreign_types}".default = true;
-    lazy_static."${deps.openssl."0.10.15".lazy_static}".default = true;
-    libc."${deps.openssl."0.10.15".libc}".default = true;
-    openssl."0.10.15".default = (f.openssl."0.10.15".default or true);
-    openssl_sys = fold recursiveUpdate {} [
-      { "${deps.openssl."0.10.15".openssl_sys}"."vendored" =
-        (f.openssl_sys."${deps.openssl."0.10.15".openssl_sys}"."vendored" or false) ||
-        (openssl."0.10.15"."vendored" or false) ||
-        (f."openssl"."0.10.15"."vendored" or false); }
-      { "${deps.openssl."0.10.15".openssl_sys}".default = true; }
-    ];
-  }) [
-    (features_.bitflags."${deps."openssl"."0.10.15"."bitflags"}" deps)
-    (features_.cfg_if."${deps."openssl"."0.10.15"."cfg_if"}" deps)
-    (features_.foreign_types."${deps."openssl"."0.10.15"."foreign_types"}" deps)
-    (features_.lazy_static."${deps."openssl"."0.10.15"."lazy_static"}" deps)
-    (features_.libc."${deps."openssl"."0.10.15"."libc"}" deps)
-    (features_.openssl_sys."${deps."openssl"."0.10.15"."openssl_sys"}" deps)
-  ];
-
-
-# end
-# openssl-probe-0.1.2
-
-  crates.openssl_probe."0.1.2" = deps: { features?(features_.openssl_probe."0.1.2" deps {}) }: buildRustCrate {
-    crateName = "openssl-probe";
-    version = "0.1.2";
-    description = "Tool for helping to find SSL certificate locations on the system for OpenSSL\n";
-    authors = [ "Alex Crichton <alex@alexcrichton.com>" ];
-    sha256 = "1a89fznx26vvaxyrxdvgf6iwai5xvs6xjvpjin68fgvrslv6n15a";
-  };
-  features_.openssl_probe."0.1.2" = deps: f: updateFeatures f ({
-    openssl_probe."0.1.2".default = (f.openssl_probe."0.1.2".default or true);
-  }) [];
-
-
-# end
-# openssl-sys-0.9.39
-
-  crates.openssl_sys."0.9.39" = deps: { features?(features_.openssl_sys."0.9.39" deps {}) }: buildRustCrate {
-    crateName = "openssl-sys";
-    version = "0.9.39";
-    description = "FFI bindings to OpenSSL";
-    authors = [ "Alex Crichton <alex@alexcrichton.com>" "Steven Fackler <sfackler@gmail.com>" ];
-    sha256 = "1lraqg3xz4jxrc99na17kn6srfhsgnj1yjk29mgsh803w40s2056";
-    build = "build/main.rs";
-    dependencies = mapFeatures features ([
-      (crates."libc"."${deps."openssl_sys"."0.9.39"."libc"}" deps)
-    ])
-      ++ (if abi == "msvc" then mapFeatures features ([
-]) else []);
-
-    buildDependencies = mapFeatures features ([
-      (crates."cc"."${deps."openssl_sys"."0.9.39"."cc"}" deps)
-      (crates."pkg_config"."${deps."openssl_sys"."0.9.39"."pkg_config"}" deps)
-    ]);
-    features = mkFeatures (features."openssl_sys"."0.9.39" or {});
-  };
-  features_.openssl_sys."0.9.39" = deps: f: updateFeatures f (rec {
-    cc."${deps.openssl_sys."0.9.39".cc}".default = true;
-    libc."${deps.openssl_sys."0.9.39".libc}".default = true;
-    openssl_sys = fold recursiveUpdate {} [
-      { "0.9.39"."openssl-src" =
-        (f.openssl_sys."0.9.39"."openssl-src" or false) ||
-        (f.openssl_sys."0.9.39".vendored or false) ||
-        (openssl_sys."0.9.39"."vendored" or false); }
-      { "0.9.39".default = (f.openssl_sys."0.9.39".default or true); }
-    ];
-    pkg_config."${deps.openssl_sys."0.9.39".pkg_config}".default = true;
-  }) [
-    (features_.libc."${deps."openssl_sys"."0.9.39"."libc"}" deps)
-    (features_.cc."${deps."openssl_sys"."0.9.39"."cc"}" deps)
-    (features_.pkg_config."${deps."openssl_sys"."0.9.39"."pkg_config"}" deps)
-  ];
-
-
-# end
-# owning_ref-0.4.0
-
-  crates.owning_ref."0.4.0" = deps: { features?(features_.owning_ref."0.4.0" deps {}) }: buildRustCrate {
-    crateName = "owning_ref";
-    version = "0.4.0";
-    description = "A library for creating references that carry their owner with them.";
-    authors = [ "Marvin Löbel <loebel.marvin@gmail.com>" ];
-    sha256 = "1m95qpc3hamkw9wlbfzqkzk7h6skyj40zr6sa3ps151slcfnnchm";
-    dependencies = mapFeatures features ([
-      (crates."stable_deref_trait"."${deps."owning_ref"."0.4.0"."stable_deref_trait"}" deps)
-    ]);
-  };
-  features_.owning_ref."0.4.0" = deps: f: updateFeatures f ({
-    owning_ref."0.4.0".default = (f.owning_ref."0.4.0".default or true);
-    stable_deref_trait."${deps.owning_ref."0.4.0".stable_deref_trait}".default = true;
-  }) [
-    (features_.stable_deref_trait."${deps."owning_ref"."0.4.0"."stable_deref_trait"}" deps)
-  ];
-
-
-# end
-# parking_lot-0.6.4
-
-  crates.parking_lot."0.6.4" = deps: { features?(features_.parking_lot."0.6.4" deps {}) }: buildRustCrate {
-    crateName = "parking_lot";
-    version = "0.6.4";
-    description = "More compact and efficient implementations of the standard synchronization primitives.";
-    authors = [ "Amanieu d'Antras <amanieu@gmail.com>" ];
-    sha256 = "0qwfysx8zfkj72sfcrqvd6pp7lgjmklyixsi3y0g6xjspw876rax";
-    dependencies = mapFeatures features ([
-      (crates."lock_api"."${deps."parking_lot"."0.6.4"."lock_api"}" deps)
-      (crates."parking_lot_core"."${deps."parking_lot"."0.6.4"."parking_lot_core"}" deps)
-    ]);
-    features = mkFeatures (features."parking_lot"."0.6.4" or {});
-  };
-  features_.parking_lot."0.6.4" = deps: f: updateFeatures f (rec {
-    lock_api = fold recursiveUpdate {} [
-      { "${deps.parking_lot."0.6.4".lock_api}"."nightly" =
-        (f.lock_api."${deps.parking_lot."0.6.4".lock_api}"."nightly" or false) ||
-        (parking_lot."0.6.4"."nightly" or false) ||
-        (f."parking_lot"."0.6.4"."nightly" or false); }
-      { "${deps.parking_lot."0.6.4".lock_api}"."owning_ref" =
-        (f.lock_api."${deps.parking_lot."0.6.4".lock_api}"."owning_ref" or false) ||
-        (parking_lot."0.6.4"."owning_ref" or false) ||
-        (f."parking_lot"."0.6.4"."owning_ref" or false); }
-      { "${deps.parking_lot."0.6.4".lock_api}".default = true; }
-    ];
-    parking_lot = fold recursiveUpdate {} [
-      { "0.6.4"."owning_ref" =
-        (f.parking_lot."0.6.4"."owning_ref" or false) ||
-        (f.parking_lot."0.6.4".default or false) ||
-        (parking_lot."0.6.4"."default" or false); }
-      { "0.6.4".default = (f.parking_lot."0.6.4".default or true); }
-    ];
-    parking_lot_core = fold recursiveUpdate {} [
-      { "${deps.parking_lot."0.6.4".parking_lot_core}"."deadlock_detection" =
-        (f.parking_lot_core."${deps.parking_lot."0.6.4".parking_lot_core}"."deadlock_detection" or false) ||
-        (parking_lot."0.6.4"."deadlock_detection" or false) ||
-        (f."parking_lot"."0.6.4"."deadlock_detection" or false); }
-      { "${deps.parking_lot."0.6.4".parking_lot_core}"."nightly" =
-        (f.parking_lot_core."${deps.parking_lot."0.6.4".parking_lot_core}"."nightly" or false) ||
-        (parking_lot."0.6.4"."nightly" or false) ||
-        (f."parking_lot"."0.6.4"."nightly" or false); }
-      { "${deps.parking_lot."0.6.4".parking_lot_core}".default = true; }
-    ];
-  }) [
-    (features_.lock_api."${deps."parking_lot"."0.6.4"."lock_api"}" deps)
-    (features_.parking_lot_core."${deps."parking_lot"."0.6.4"."parking_lot_core"}" deps)
-  ];
-
-
-# end
-# parking_lot_core-0.3.1
-
-  crates.parking_lot_core."0.3.1" = deps: { features?(features_.parking_lot_core."0.3.1" deps {}) }: buildRustCrate {
-    crateName = "parking_lot_core";
-    version = "0.3.1";
-    description = "An advanced API for creating custom synchronization primitives.";
-    authors = [ "Amanieu d'Antras <amanieu@gmail.com>" ];
-    sha256 = "0h5p7dys8cx9y6ii4i57ampf7qdr8zmkpn543kd3h7nkhml8bw72";
-    dependencies = mapFeatures features ([
-      (crates."rand"."${deps."parking_lot_core"."0.3.1"."rand"}" deps)
-      (crates."smallvec"."${deps."parking_lot_core"."0.3.1"."smallvec"}" deps)
-    ])
-      ++ (if (kernel == "linux" || kernel == "darwin") then mapFeatures features ([
-      (crates."libc"."${deps."parking_lot_core"."0.3.1"."libc"}" deps)
-    ]) else [])
-      ++ (if kernel == "windows" then mapFeatures features ([
-      (crates."winapi"."${deps."parking_lot_core"."0.3.1"."winapi"}" deps)
-    ]) else []);
-
-    buildDependencies = mapFeatures features ([
-      (crates."rustc_version"."${deps."parking_lot_core"."0.3.1"."rustc_version"}" deps)
-    ]);
-    features = mkFeatures (features."parking_lot_core"."0.3.1" or {});
-  };
-  features_.parking_lot_core."0.3.1" = deps: f: updateFeatures f (rec {
-    libc."${deps.parking_lot_core."0.3.1".libc}".default = true;
-    parking_lot_core = fold recursiveUpdate {} [
-      { "0.3.1"."backtrace" =
-        (f.parking_lot_core."0.3.1"."backtrace" or false) ||
-        (f.parking_lot_core."0.3.1".deadlock_detection or false) ||
-        (parking_lot_core."0.3.1"."deadlock_detection" or false); }
-      { "0.3.1"."petgraph" =
-        (f.parking_lot_core."0.3.1"."petgraph" or false) ||
-        (f.parking_lot_core."0.3.1".deadlock_detection or false) ||
-        (parking_lot_core."0.3.1"."deadlock_detection" or false); }
-      { "0.3.1"."thread-id" =
-        (f.parking_lot_core."0.3.1"."thread-id" or false) ||
-        (f.parking_lot_core."0.3.1".deadlock_detection or false) ||
-        (parking_lot_core."0.3.1"."deadlock_detection" or false); }
-      { "0.3.1".default = (f.parking_lot_core."0.3.1".default or true); }
-    ];
-    rand."${deps.parking_lot_core."0.3.1".rand}".default = true;
-    rustc_version."${deps.parking_lot_core."0.3.1".rustc_version}".default = true;
-    smallvec."${deps.parking_lot_core."0.3.1".smallvec}".default = true;
-    winapi = fold recursiveUpdate {} [
-      { "${deps.parking_lot_core."0.3.1".winapi}"."errhandlingapi" = true; }
-      { "${deps.parking_lot_core."0.3.1".winapi}"."handleapi" = true; }
-      { "${deps.parking_lot_core."0.3.1".winapi}"."minwindef" = true; }
-      { "${deps.parking_lot_core."0.3.1".winapi}"."ntstatus" = true; }
-      { "${deps.parking_lot_core."0.3.1".winapi}"."winbase" = true; }
-      { "${deps.parking_lot_core."0.3.1".winapi}"."winerror" = true; }
-      { "${deps.parking_lot_core."0.3.1".winapi}"."winnt" = true; }
-      { "${deps.parking_lot_core."0.3.1".winapi}".default = true; }
-    ];
-  }) [
-    (features_.rand."${deps."parking_lot_core"."0.3.1"."rand"}" deps)
-    (features_.smallvec."${deps."parking_lot_core"."0.3.1"."smallvec"}" deps)
-    (features_.rustc_version."${deps."parking_lot_core"."0.3.1"."rustc_version"}" deps)
-    (features_.libc."${deps."parking_lot_core"."0.3.1"."libc"}" deps)
-    (features_.winapi."${deps."parking_lot_core"."0.3.1"."winapi"}" deps)
-  ];
-
-
-# end
-# percent-encoding-1.0.1
-
-  crates.percent_encoding."1.0.1" = deps: { features?(features_.percent_encoding."1.0.1" deps {}) }: buildRustCrate {
-    crateName = "percent-encoding";
-    version = "1.0.1";
-    description = "Percent encoding and decoding";
-    authors = [ "The rust-url developers" ];
-    sha256 = "04ahrp7aw4ip7fmadb0bknybmkfav0kk0gw4ps3ydq5w6hr0ib5i";
-    libPath = "lib.rs";
-  };
-  features_.percent_encoding."1.0.1" = deps: f: updateFeatures f ({
-    percent_encoding."1.0.1".default = (f.percent_encoding."1.0.1".default or true);
-  }) [];
-
-
-# end
-# phf-0.7.21
-
-  crates.phf."0.7.21" = deps: { features?(features_.phf."0.7.21" deps {}) }: buildRustCrate {
-    crateName = "phf";
-    version = "0.7.21";
-    description = "Runtime support for perfect hash function data structures";
-    authors = [ "Steven Fackler <sfackler@gmail.com>" ];
-    sha256 = "11m2rzm2s8s35m0s97gjxxb181xz352kjlhr387xj5c8q3qp5afg";
-    libPath = "src/lib.rs";
-    dependencies = mapFeatures features ([
-      (crates."phf_shared"."${deps."phf"."0.7.21"."phf_shared"}" deps)
-    ]);
-    features = mkFeatures (features."phf"."0.7.21" or {});
-  };
-  features_.phf."0.7.21" = deps: f: updateFeatures f (rec {
-    phf."0.7.21".default = (f.phf."0.7.21".default or true);
-    phf_shared = fold recursiveUpdate {} [
-      { "${deps.phf."0.7.21".phf_shared}"."core" =
-        (f.phf_shared."${deps.phf."0.7.21".phf_shared}"."core" or false) ||
-        (phf."0.7.21"."core" or false) ||
-        (f."phf"."0.7.21"."core" or false); }
-      { "${deps.phf."0.7.21".phf_shared}"."unicase" =
-        (f.phf_shared."${deps.phf."0.7.21".phf_shared}"."unicase" or false) ||
-        (phf."0.7.21"."unicase" or false) ||
-        (f."phf"."0.7.21"."unicase" or false); }
-      { "${deps.phf."0.7.21".phf_shared}".default = true; }
-    ];
-  }) [
-    (features_.phf_shared."${deps."phf"."0.7.21"."phf_shared"}" deps)
-  ];
-
-
-# end
-# phf_codegen-0.7.21
-
-  crates.phf_codegen."0.7.21" = deps: { features?(features_.phf_codegen."0.7.21" deps {}) }: buildRustCrate {
-    crateName = "phf_codegen";
-    version = "0.7.21";
-    description = "Codegen library for PHF types";
-    authors = [ "Steven Fackler <sfackler@gmail.com>" ];
-    sha256 = "0kgy8s2q4zr0iqcm21mgq4ppc45wy6z7b5wn98xyfsrcad6lwmmj";
-    dependencies = mapFeatures features ([
-      (crates."phf_generator"."${deps."phf_codegen"."0.7.21"."phf_generator"}" deps)
-      (crates."phf_shared"."${deps."phf_codegen"."0.7.21"."phf_shared"}" deps)
-    ]);
-  };
-  features_.phf_codegen."0.7.21" = deps: f: updateFeatures f ({
-    phf_codegen."0.7.21".default = (f.phf_codegen."0.7.21".default or true);
-    phf_generator."${deps.phf_codegen."0.7.21".phf_generator}".default = true;
-    phf_shared."${deps.phf_codegen."0.7.21".phf_shared}".default = true;
-  }) [
-    (features_.phf_generator."${deps."phf_codegen"."0.7.21"."phf_generator"}" deps)
-    (features_.phf_shared."${deps."phf_codegen"."0.7.21"."phf_shared"}" deps)
-  ];
-
-
-# end
-# phf_generator-0.7.21
-
-  crates.phf_generator."0.7.21" = deps: { features?(features_.phf_generator."0.7.21" deps {}) }: buildRustCrate {
-    crateName = "phf_generator";
-    version = "0.7.21";
-    description = "PHF generation logic";
-    authors = [ "Steven Fackler <sfackler@gmail.com>" ];
-    sha256 = "1jxjfzc6d6d4l9nv0r2bb66if5brk9lnncmg4dpjjifn6zhhqd9g";
-    dependencies = mapFeatures features ([
-      (crates."phf_shared"."${deps."phf_generator"."0.7.21"."phf_shared"}" deps)
-      (crates."rand"."${deps."phf_generator"."0.7.21"."rand"}" deps)
-    ]);
-  };
-  features_.phf_generator."0.7.21" = deps: f: updateFeatures f ({
-    phf_generator."0.7.21".default = (f.phf_generator."0.7.21".default or true);
-    phf_shared."${deps.phf_generator."0.7.21".phf_shared}".default = true;
-    rand."${deps.phf_generator."0.7.21".rand}".default = true;
-  }) [
-    (features_.phf_shared."${deps."phf_generator"."0.7.21"."phf_shared"}" deps)
-    (features_.rand."${deps."phf_generator"."0.7.21"."rand"}" deps)
-  ];
-
-
-# end
-# phf_shared-0.7.21
-
-  crates.phf_shared."0.7.21" = deps: { features?(features_.phf_shared."0.7.21" deps {}) }: buildRustCrate {
-    crateName = "phf_shared";
-    version = "0.7.21";
-    description = "Support code shared by PHF libraries";
-    authors = [ "Steven Fackler <sfackler@gmail.com>" ];
-    sha256 = "0lxpg3wgxfhzfalmf9ha9my1lsvfjy74ah9f6mfw88xlp545jlln";
-    libPath = "src/lib.rs";
-    dependencies = mapFeatures features ([
-      (crates."siphasher"."${deps."phf_shared"."0.7.21"."siphasher"}" deps)
-    ]
-      ++ (if features.phf_shared."0.7.21".unicase or false then [ (crates.unicase."${deps."phf_shared"."0.7.21".unicase}" deps) ] else []));
-    features = mkFeatures (features."phf_shared"."0.7.21" or {});
-  };
-  features_.phf_shared."0.7.21" = deps: f: updateFeatures f ({
-    phf_shared."0.7.21".default = (f.phf_shared."0.7.21".default or true);
-    siphasher."${deps.phf_shared."0.7.21".siphasher}".default = true;
-    unicase."${deps.phf_shared."0.7.21".unicase}".default = true;
-  }) [
-    (features_.siphasher."${deps."phf_shared"."0.7.21"."siphasher"}" deps)
-    (features_.unicase."${deps."phf_shared"."0.7.21"."unicase"}" deps)
-  ];
-
-
-# end
-# pkg-config-0.3.9
-
-  crates.pkg_config."0.3.9" = deps: { features?(features_.pkg_config."0.3.9" deps {}) }: buildRustCrate {
-    crateName = "pkg-config";
-    version = "0.3.9";
-    description = "A library to run the pkg-config system tool at build time in order to be used in\nCargo build scripts.\n";
-    authors = [ "Alex Crichton <alex@alexcrichton.com>" ];
-    sha256 = "06k8fxgrsrxj8mjpjcq1n7mn2p1shpxif4zg9y5h09c7vy20s146";
-  };
-  features_.pkg_config."0.3.9" = deps: f: updateFeatures f ({
-    pkg_config."0.3.9".default = (f.pkg_config."0.3.9".default or true);
-  }) [];
-
-
-# end
-# quote-0.3.15
-
-  crates.quote."0.3.15" = deps: { features?(features_.quote."0.3.15" deps {}) }: buildRustCrate {
-    crateName = "quote";
-    version = "0.3.15";
-    description = "Quasi-quoting macro quote!(...)";
-    authors = [ "David Tolnay <dtolnay@gmail.com>" ];
-    sha256 = "09il61jv4kd1360spaj46qwyl21fv1qz18fsv2jra8wdnlgl5jsg";
-  };
-  features_.quote."0.3.15" = deps: f: updateFeatures f ({
-    quote."0.3.15".default = (f.quote."0.3.15".default or true);
-  }) [];
-
-
-# end
-# rand-0.3.18
-
-  crates.rand."0.3.18" = deps: { features?(features_.rand."0.3.18" deps {}) }: buildRustCrate {
-    crateName = "rand";
-    version = "0.3.18";
-    description = "Random number generators and other randomness functionality.\n";
-    authors = [ "The Rust Project Developers" ];
-    sha256 = "15d7c3myn968dzjs0a2pgv58hzdavxnq6swgj032lw2v966ir4xv";
-    dependencies = mapFeatures features ([
-      (crates."libc"."${deps."rand"."0.3.18"."libc"}" deps)
-    ])
-      ++ (if kernel == "fuchsia" then mapFeatures features ([
-      (crates."fuchsia_zircon"."${deps."rand"."0.3.18"."fuchsia_zircon"}" deps)
-    ]) else []);
-    features = mkFeatures (features."rand"."0.3.18" or {});
-  };
-  features_.rand."0.3.18" = deps: f: updateFeatures f (rec {
-    fuchsia_zircon."${deps.rand."0.3.18".fuchsia_zircon}".default = true;
-    libc."${deps.rand."0.3.18".libc}".default = true;
-    rand = fold recursiveUpdate {} [
-      { "0.3.18"."i128_support" =
-        (f.rand."0.3.18"."i128_support" or false) ||
-        (f.rand."0.3.18".nightly or false) ||
-        (rand."0.3.18"."nightly" or false); }
-      { "0.3.18".default = (f.rand."0.3.18".default or true); }
-    ];
-  }) [
-    (features_.libc."${deps."rand"."0.3.18"."libc"}" deps)
-    (features_.fuchsia_zircon."${deps."rand"."0.3.18"."fuchsia_zircon"}" deps)
-  ];
-
-
-# end
-# rand-0.5.5
-
-  crates.rand."0.5.5" = deps: { features?(features_.rand."0.5.5" deps {}) }: buildRustCrate {
-    crateName = "rand";
-    version = "0.5.5";
-    description = "Random number generators and other randomness functionality.\n";
-    authors = [ "The Rust Project Developers" ];
-    sha256 = "0d7pnsh57qxhz1ghrzk113ddkn13kf2g758ffnbxq4nhwjfzhlc9";
-    dependencies = mapFeatures features ([
-      (crates."rand_core"."${deps."rand"."0.5.5"."rand_core"}" deps)
-    ])
-      ++ (if kernel == "cloudabi" then mapFeatures features ([
-    ]
-      ++ (if features.rand."0.5.5".cloudabi or false then [ (crates.cloudabi."${deps."rand"."0.5.5".cloudabi}" deps) ] else [])) else [])
-      ++ (if kernel == "fuchsia" then mapFeatures features ([
-    ]
-      ++ (if features.rand."0.5.5".fuchsia-zircon or false then [ (crates.fuchsia_zircon."${deps."rand"."0.5.5".fuchsia_zircon}" deps) ] else [])) else [])
-      ++ (if (kernel == "linux" || kernel == "darwin") then mapFeatures features ([
-    ]
-      ++ (if features.rand."0.5.5".libc or false then [ (crates.libc."${deps."rand"."0.5.5".libc}" deps) ] else [])) else [])
-      ++ (if kernel == "windows" then mapFeatures features ([
-    ]
-      ++ (if features.rand."0.5.5".winapi or false then [ (crates.winapi."${deps."rand"."0.5.5".winapi}" deps) ] else [])) else [])
-      ++ (if kernel == "wasm32-unknown-unknown" then mapFeatures features ([
-]) else []);
-    features = mkFeatures (features."rand"."0.5.5" or {});
-  };
-  features_.rand."0.5.5" = deps: f: updateFeatures f (rec {
-    cloudabi."${deps.rand."0.5.5".cloudabi}".default = true;
-    fuchsia_zircon."${deps.rand."0.5.5".fuchsia_zircon}".default = true;
-    libc."${deps.rand."0.5.5".libc}".default = true;
-    rand = fold recursiveUpdate {} [
-      { "0.5.5"."alloc" =
-        (f.rand."0.5.5"."alloc" or false) ||
-        (f.rand."0.5.5".std or false) ||
-        (rand."0.5.5"."std" or false); }
-      { "0.5.5"."cloudabi" =
-        (f.rand."0.5.5"."cloudabi" or false) ||
-        (f.rand."0.5.5".std or false) ||
-        (rand."0.5.5"."std" or false); }
-      { "0.5.5"."fuchsia-zircon" =
-        (f.rand."0.5.5"."fuchsia-zircon" or false) ||
-        (f.rand."0.5.5".std or false) ||
-        (rand."0.5.5"."std" or false); }
-      { "0.5.5"."i128_support" =
-        (f.rand."0.5.5"."i128_support" or false) ||
-        (f.rand."0.5.5".nightly or false) ||
-        (rand."0.5.5"."nightly" or false); }
-      { "0.5.5"."libc" =
-        (f.rand."0.5.5"."libc" or false) ||
-        (f.rand."0.5.5".std or false) ||
-        (rand."0.5.5"."std" or false); }
-      { "0.5.5"."serde" =
-        (f.rand."0.5.5"."serde" or false) ||
-        (f.rand."0.5.5".serde1 or false) ||
-        (rand."0.5.5"."serde1" or false); }
-      { "0.5.5"."serde_derive" =
-        (f.rand."0.5.5"."serde_derive" or false) ||
-        (f.rand."0.5.5".serde1 or false) ||
-        (rand."0.5.5"."serde1" or false); }
-      { "0.5.5"."std" =
-        (f.rand."0.5.5"."std" or false) ||
-        (f.rand."0.5.5".default or false) ||
-        (rand."0.5.5"."default" or false); }
-      { "0.5.5"."winapi" =
-        (f.rand."0.5.5"."winapi" or false) ||
-        (f.rand."0.5.5".std or false) ||
-        (rand."0.5.5"."std" or false); }
-      { "0.5.5".default = (f.rand."0.5.5".default or true); }
-    ];
-    rand_core = fold recursiveUpdate {} [
-      { "${deps.rand."0.5.5".rand_core}"."alloc" =
-        (f.rand_core."${deps.rand."0.5.5".rand_core}"."alloc" or false) ||
-        (rand."0.5.5"."alloc" or false) ||
-        (f."rand"."0.5.5"."alloc" or false); }
-      { "${deps.rand."0.5.5".rand_core}"."serde1" =
-        (f.rand_core."${deps.rand."0.5.5".rand_core}"."serde1" or false) ||
-        (rand."0.5.5"."serde1" or false) ||
-        (f."rand"."0.5.5"."serde1" or false); }
-      { "${deps.rand."0.5.5".rand_core}"."std" =
-        (f.rand_core."${deps.rand."0.5.5".rand_core}"."std" or false) ||
-        (rand."0.5.5"."std" or false) ||
-        (f."rand"."0.5.5"."std" or false); }
-      { "${deps.rand."0.5.5".rand_core}".default = (f.rand_core."${deps.rand."0.5.5".rand_core}".default or false); }
-    ];
-    winapi = fold recursiveUpdate {} [
-      { "${deps.rand."0.5.5".winapi}"."minwindef" = true; }
-      { "${deps.rand."0.5.5".winapi}"."ntsecapi" = true; }
-      { "${deps.rand."0.5.5".winapi}"."profileapi" = true; }
-      { "${deps.rand."0.5.5".winapi}"."winnt" = true; }
-      { "${deps.rand."0.5.5".winapi}".default = true; }
-    ];
-  }) [
-    (features_.rand_core."${deps."rand"."0.5.5"."rand_core"}" deps)
-    (features_.cloudabi."${deps."rand"."0.5.5"."cloudabi"}" deps)
-    (features_.fuchsia_zircon."${deps."rand"."0.5.5"."fuchsia_zircon"}" deps)
-    (features_.libc."${deps."rand"."0.5.5"."libc"}" deps)
-    (features_.winapi."${deps."rand"."0.5.5"."winapi"}" deps)
-  ];
-
-
-# end
-# rand-0.6.1
-
-  crates.rand."0.6.1" = deps: { features?(features_.rand."0.6.1" deps {}) }: buildRustCrate {
-    crateName = "rand";
-    version = "0.6.1";
-    description = "Random number generators and other randomness functionality.\n";
-    authors = [ "The Rand Project Developers" "The Rust Project Developers" ];
-    sha256 = "123s3w165iiifmf475lisqkd0kbr7nwnn3k4b1zg2cwap5v9m9bz";
-    build = "build.rs";
-    dependencies = mapFeatures features ([
-      (crates."rand_chacha"."${deps."rand"."0.6.1"."rand_chacha"}" deps)
-      (crates."rand_core"."${deps."rand"."0.6.1"."rand_core"}" deps)
-      (crates."rand_hc"."${deps."rand"."0.6.1"."rand_hc"}" deps)
-      (crates."rand_isaac"."${deps."rand"."0.6.1"."rand_isaac"}" deps)
-      (crates."rand_pcg"."${deps."rand"."0.6.1"."rand_pcg"}" deps)
-      (crates."rand_xorshift"."${deps."rand"."0.6.1"."rand_xorshift"}" deps)
-    ])
-      ++ (if kernel == "cloudabi" then mapFeatures features ([
-    ]
-      ++ (if features.rand."0.6.1".cloudabi or false then [ (crates.cloudabi."${deps."rand"."0.6.1".cloudabi}" deps) ] else [])) else [])
-      ++ (if kernel == "fuchsia" then mapFeatures features ([
-    ]
-      ++ (if features.rand."0.6.1".fuchsia-zircon or false then [ (crates.fuchsia_zircon."${deps."rand"."0.6.1".fuchsia_zircon}" deps) ] else [])) else [])
-      ++ (if (kernel == "linux" || kernel == "darwin") then mapFeatures features ([
-    ]
-      ++ (if features.rand."0.6.1".libc or false then [ (crates.libc."${deps."rand"."0.6.1".libc}" deps) ] else [])) else [])
-      ++ (if kernel == "windows" then mapFeatures features ([
-    ]
-      ++ (if features.rand."0.6.1".winapi or false then [ (crates.winapi."${deps."rand"."0.6.1".winapi}" deps) ] else [])) else [])
-      ++ (if kernel == "wasm32-unknown-unknown" then mapFeatures features ([
-]) else []);
-
-    buildDependencies = mapFeatures features ([
-      (crates."rustc_version"."${deps."rand"."0.6.1"."rustc_version"}" deps)
-    ]);
-    features = mkFeatures (features."rand"."0.6.1" or {});
-  };
-  features_.rand."0.6.1" = deps: f: updateFeatures f (rec {
-    cloudabi."${deps.rand."0.6.1".cloudabi}".default = true;
-    fuchsia_zircon."${deps.rand."0.6.1".fuchsia_zircon}".default = true;
-    libc."${deps.rand."0.6.1".libc}".default = (f.libc."${deps.rand."0.6.1".libc}".default or false);
-    rand = fold recursiveUpdate {} [
-      { "0.6.1"."alloc" =
-        (f.rand."0.6.1"."alloc" or false) ||
-        (f.rand."0.6.1".std or false) ||
-        (rand."0.6.1"."std" or false); }
-      { "0.6.1"."cloudabi" =
-        (f.rand."0.6.1"."cloudabi" or false) ||
-        (f.rand."0.6.1".std or false) ||
-        (rand."0.6.1"."std" or false); }
-      { "0.6.1"."fuchsia-zircon" =
-        (f.rand."0.6.1"."fuchsia-zircon" or false) ||
-        (f.rand."0.6.1".std or false) ||
-        (rand."0.6.1"."std" or false); }
-      { "0.6.1"."libc" =
-        (f.rand."0.6.1"."libc" or false) ||
-        (f.rand."0.6.1".std or false) ||
-        (rand."0.6.1"."std" or false); }
-      { "0.6.1"."packed_simd" =
-        (f.rand."0.6.1"."packed_simd" or false) ||
-        (f.rand."0.6.1".simd_support or false) ||
-        (rand."0.6.1"."simd_support" or false); }
-      { "0.6.1"."simd_support" =
-        (f.rand."0.6.1"."simd_support" or false) ||
-        (f.rand."0.6.1".nightly or false) ||
-        (rand."0.6.1"."nightly" or false); }
-      { "0.6.1"."std" =
-        (f.rand."0.6.1"."std" or false) ||
-        (f.rand."0.6.1".default or false) ||
-        (rand."0.6.1"."default" or false); }
-      { "0.6.1"."winapi" =
-        (f.rand."0.6.1"."winapi" or false) ||
-        (f.rand."0.6.1".std or false) ||
-        (rand."0.6.1"."std" or false); }
-      { "0.6.1".default = (f.rand."0.6.1".default or true); }
-    ];
-    rand_chacha."${deps.rand."0.6.1".rand_chacha}".default = true;
-    rand_core = fold recursiveUpdate {} [
-      { "${deps.rand."0.6.1".rand_core}"."alloc" =
-        (f.rand_core."${deps.rand."0.6.1".rand_core}"."alloc" or false) ||
-        (rand."0.6.1"."alloc" or false) ||
-        (f."rand"."0.6.1"."alloc" or false); }
-      { "${deps.rand."0.6.1".rand_core}"."serde1" =
-        (f.rand_core."${deps.rand."0.6.1".rand_core}"."serde1" or false) ||
-        (rand."0.6.1"."serde1" or false) ||
-        (f."rand"."0.6.1"."serde1" or false); }
-      { "${deps.rand."0.6.1".rand_core}"."std" =
-        (f.rand_core."${deps.rand."0.6.1".rand_core}"."std" or false) ||
-        (rand."0.6.1"."std" or false) ||
-        (f."rand"."0.6.1"."std" or false); }
-      { "${deps.rand."0.6.1".rand_core}".default = (f.rand_core."${deps.rand."0.6.1".rand_core}".default or false); }
-    ];
-    rand_hc."${deps.rand."0.6.1".rand_hc}".default = true;
-    rand_isaac = fold recursiveUpdate {} [
-      { "${deps.rand."0.6.1".rand_isaac}"."serde1" =
-        (f.rand_isaac."${deps.rand."0.6.1".rand_isaac}"."serde1" or false) ||
-        (rand."0.6.1"."serde1" or false) ||
-        (f."rand"."0.6.1"."serde1" or false); }
-      { "${deps.rand."0.6.1".rand_isaac}".default = true; }
-    ];
-    rand_pcg."${deps.rand."0.6.1".rand_pcg}".default = true;
-    rand_xorshift = fold recursiveUpdate {} [
-      { "${deps.rand."0.6.1".rand_xorshift}"."serde1" =
-        (f.rand_xorshift."${deps.rand."0.6.1".rand_xorshift}"."serde1" or false) ||
-        (rand."0.6.1"."serde1" or false) ||
-        (f."rand"."0.6.1"."serde1" or false); }
-      { "${deps.rand."0.6.1".rand_xorshift}".default = true; }
-    ];
-    rustc_version."${deps.rand."0.6.1".rustc_version}".default = true;
-    winapi = fold recursiveUpdate {} [
-      { "${deps.rand."0.6.1".winapi}"."minwindef" = true; }
-      { "${deps.rand."0.6.1".winapi}"."ntsecapi" = true; }
-      { "${deps.rand."0.6.1".winapi}"."profileapi" = true; }
-      { "${deps.rand."0.6.1".winapi}"."winnt" = true; }
-      { "${deps.rand."0.6.1".winapi}".default = true; }
-    ];
-  }) [
-    (features_.rand_chacha."${deps."rand"."0.6.1"."rand_chacha"}" deps)
-    (features_.rand_core."${deps."rand"."0.6.1"."rand_core"}" deps)
-    (features_.rand_hc."${deps."rand"."0.6.1"."rand_hc"}" deps)
-    (features_.rand_isaac."${deps."rand"."0.6.1"."rand_isaac"}" deps)
-    (features_.rand_pcg."${deps."rand"."0.6.1"."rand_pcg"}" deps)
-    (features_.rand_xorshift."${deps."rand"."0.6.1"."rand_xorshift"}" deps)
-    (features_.rustc_version."${deps."rand"."0.6.1"."rustc_version"}" deps)
-    (features_.cloudabi."${deps."rand"."0.6.1"."cloudabi"}" deps)
-    (features_.fuchsia_zircon."${deps."rand"."0.6.1"."fuchsia_zircon"}" deps)
-    (features_.libc."${deps."rand"."0.6.1"."libc"}" deps)
-    (features_.winapi."${deps."rand"."0.6.1"."winapi"}" deps)
-  ];
-
-
-# end
-# rand_chacha-0.1.0
-
-  crates.rand_chacha."0.1.0" = deps: { features?(features_.rand_chacha."0.1.0" deps {}) }: buildRustCrate {
-    crateName = "rand_chacha";
-    version = "0.1.0";
-    description = "ChaCha random number generator\n";
-    authors = [ "The Rand Project Developers" "The Rust Project Developers" ];
-    sha256 = "0q5pq34cqv1mnibgzd1cmx9q49vkr2lvalkkvizmlld217jmlqc6";
-    build = "build.rs";
-    dependencies = mapFeatures features ([
-      (crates."rand_core"."${deps."rand_chacha"."0.1.0"."rand_core"}" deps)
-    ]);
-
-    buildDependencies = mapFeatures features ([
-      (crates."rustc_version"."${deps."rand_chacha"."0.1.0"."rustc_version"}" deps)
-    ]);
-  };
-  features_.rand_chacha."0.1.0" = deps: f: updateFeatures f ({
-    rand_chacha."0.1.0".default = (f.rand_chacha."0.1.0".default or true);
-    rand_core."${deps.rand_chacha."0.1.0".rand_core}".default = (f.rand_core."${deps.rand_chacha."0.1.0".rand_core}".default or false);
-    rustc_version."${deps.rand_chacha."0.1.0".rustc_version}".default = true;
-  }) [
-    (features_.rand_core."${deps."rand_chacha"."0.1.0"."rand_core"}" deps)
-    (features_.rustc_version."${deps."rand_chacha"."0.1.0"."rustc_version"}" deps)
-  ];
-
-
-# end
-# rand_core-0.2.2
-
-  crates.rand_core."0.2.2" = deps: { features?(features_.rand_core."0.2.2" deps {}) }: buildRustCrate {
-    crateName = "rand_core";
-    version = "0.2.2";
-    description = "Core random number generator traits and tools for implementation.\n";
-    authors = [ "The Rust Project Developers" ];
-    sha256 = "1cxnaxmsirz2wxsajsjkd1wk6lqfqbcprqkha4bq3didznrl22sc";
-    dependencies = mapFeatures features ([
-      (crates."rand_core"."${deps."rand_core"."0.2.2"."rand_core"}" deps)
-    ]);
-    features = mkFeatures (features."rand_core"."0.2.2" or {});
-  };
-  features_.rand_core."0.2.2" = deps: f: updateFeatures f (rec {
-    rand_core = fold recursiveUpdate {} [
-      { "${deps.rand_core."0.2.2".rand_core}"."alloc" =
-        (f.rand_core."${deps.rand_core."0.2.2".rand_core}"."alloc" or false) ||
-        (rand_core."0.2.2"."alloc" or false) ||
-        (f."rand_core"."0.2.2"."alloc" or false); }
-      { "${deps.rand_core."0.2.2".rand_core}"."serde1" =
-        (f.rand_core."${deps.rand_core."0.2.2".rand_core}"."serde1" or false) ||
-        (rand_core."0.2.2"."serde1" or false) ||
-        (f."rand_core"."0.2.2"."serde1" or false); }
-      { "${deps.rand_core."0.2.2".rand_core}"."std" =
-        (f.rand_core."${deps.rand_core."0.2.2".rand_core}"."std" or false) ||
-        (rand_core."0.2.2"."std" or false) ||
-        (f."rand_core"."0.2.2"."std" or false); }
-      { "${deps.rand_core."0.2.2".rand_core}".default = (f.rand_core."${deps.rand_core."0.2.2".rand_core}".default or false); }
-      { "0.2.2".default = (f.rand_core."0.2.2".default or true); }
-    ];
-  }) [
-    (features_.rand_core."${deps."rand_core"."0.2.2"."rand_core"}" deps)
-  ];
-
-
-# end
-# rand_core-0.3.0
-
-  crates.rand_core."0.3.0" = deps: { features?(features_.rand_core."0.3.0" deps {}) }: buildRustCrate {
-    crateName = "rand_core";
-    version = "0.3.0";
-    description = "Core random number generator traits and tools for implementation.\n";
-    authors = [ "The Rust Project Developers" ];
-    sha256 = "1vafw316apjys9va3j987s02djhqp7y21v671v3ix0p5j9bjq339";
-    dependencies = mapFeatures features ([
-]);
-    features = mkFeatures (features."rand_core"."0.3.0" or {});
-  };
-  features_.rand_core."0.3.0" = deps: f: updateFeatures f (rec {
-    rand_core = fold recursiveUpdate {} [
-      { "0.3.0"."alloc" =
-        (f.rand_core."0.3.0"."alloc" or false) ||
-        (f.rand_core."0.3.0".std or false) ||
-        (rand_core."0.3.0"."std" or false); }
-      { "0.3.0"."serde" =
-        (f.rand_core."0.3.0"."serde" or false) ||
-        (f.rand_core."0.3.0".serde1 or false) ||
-        (rand_core."0.3.0"."serde1" or false); }
-      { "0.3.0"."serde_derive" =
-        (f.rand_core."0.3.0"."serde_derive" or false) ||
-        (f.rand_core."0.3.0".serde1 or false) ||
-        (rand_core."0.3.0"."serde1" or false); }
-      { "0.3.0"."std" =
-        (f.rand_core."0.3.0"."std" or false) ||
-        (f.rand_core."0.3.0".default or false) ||
-        (rand_core."0.3.0"."default" or false); }
-      { "0.3.0".default = (f.rand_core."0.3.0".default or true); }
-    ];
-  }) [];
-
-
-# end
-# rand_hc-0.1.0
-
-  crates.rand_hc."0.1.0" = deps: { features?(features_.rand_hc."0.1.0" deps {}) }: buildRustCrate {
-    crateName = "rand_hc";
-    version = "0.1.0";
-    description = "HC128 random number generator\n";
-    authors = [ "The Rand Project Developers" ];
-    sha256 = "05agb75j87yp7y1zk8yf7bpm66hc0673r3dlypn0kazynr6fdgkz";
-    dependencies = mapFeatures features ([
-      (crates."rand_core"."${deps."rand_hc"."0.1.0"."rand_core"}" deps)
-    ]);
-  };
-  features_.rand_hc."0.1.0" = deps: f: updateFeatures f ({
-    rand_core."${deps.rand_hc."0.1.0".rand_core}".default = (f.rand_core."${deps.rand_hc."0.1.0".rand_core}".default or false);
-    rand_hc."0.1.0".default = (f.rand_hc."0.1.0".default or true);
-  }) [
-    (features_.rand_core."${deps."rand_hc"."0.1.0"."rand_core"}" deps)
-  ];
-
-
-# end
-# rand_isaac-0.1.1
-
-  crates.rand_isaac."0.1.1" = deps: { features?(features_.rand_isaac."0.1.1" deps {}) }: buildRustCrate {
-    crateName = "rand_isaac";
-    version = "0.1.1";
-    description = "ISAAC random number generator\n";
-    authors = [ "The Rand Project Developers" "The Rust Project Developers" ];
-    sha256 = "10hhdh5b5sa03s6b63y9bafm956jwilx41s71jbrzl63ccx8lxdq";
-    dependencies = mapFeatures features ([
-      (crates."rand_core"."${deps."rand_isaac"."0.1.1"."rand_core"}" deps)
-    ]);
-    features = mkFeatures (features."rand_isaac"."0.1.1" or {});
-  };
-  features_.rand_isaac."0.1.1" = deps: f: updateFeatures f (rec {
-    rand_core = fold recursiveUpdate {} [
-      { "${deps.rand_isaac."0.1.1".rand_core}"."serde1" =
-        (f.rand_core."${deps.rand_isaac."0.1.1".rand_core}"."serde1" or false) ||
-        (rand_isaac."0.1.1"."serde1" or false) ||
-        (f."rand_isaac"."0.1.1"."serde1" or false); }
-      { "${deps.rand_isaac."0.1.1".rand_core}".default = (f.rand_core."${deps.rand_isaac."0.1.1".rand_core}".default or false); }
-    ];
-    rand_isaac = fold recursiveUpdate {} [
-      { "0.1.1"."serde" =
-        (f.rand_isaac."0.1.1"."serde" or false) ||
-        (f.rand_isaac."0.1.1".serde1 or false) ||
-        (rand_isaac."0.1.1"."serde1" or false); }
-      { "0.1.1"."serde_derive" =
-        (f.rand_isaac."0.1.1"."serde_derive" or false) ||
-        (f.rand_isaac."0.1.1".serde1 or false) ||
-        (rand_isaac."0.1.1"."serde1" or false); }
-      { "0.1.1".default = (f.rand_isaac."0.1.1".default or true); }
-    ];
-  }) [
-    (features_.rand_core."${deps."rand_isaac"."0.1.1"."rand_core"}" deps)
-  ];
-
-
-# end
-# rand_pcg-0.1.1
-
-  crates.rand_pcg."0.1.1" = deps: { features?(features_.rand_pcg."0.1.1" deps {}) }: buildRustCrate {
-    crateName = "rand_pcg";
-    version = "0.1.1";
-    description = "Selected PCG random number generators\n";
-    authors = [ "The Rand Project Developers" ];
-    sha256 = "0x6pzldj0c8c7gmr67ni5i7w2f7n7idvs3ckx0fc3wkhwl7wrbza";
-    build = "build.rs";
-    dependencies = mapFeatures features ([
-      (crates."rand_core"."${deps."rand_pcg"."0.1.1"."rand_core"}" deps)
-    ]);
-
-    buildDependencies = mapFeatures features ([
-      (crates."rustc_version"."${deps."rand_pcg"."0.1.1"."rustc_version"}" deps)
-    ]);
-    features = mkFeatures (features."rand_pcg"."0.1.1" or {});
-  };
-  features_.rand_pcg."0.1.1" = deps: f: updateFeatures f (rec {
-    rand_core."${deps.rand_pcg."0.1.1".rand_core}".default = (f.rand_core."${deps.rand_pcg."0.1.1".rand_core}".default or false);
-    rand_pcg = fold recursiveUpdate {} [
-      { "0.1.1"."serde" =
-        (f.rand_pcg."0.1.1"."serde" or false) ||
-        (f.rand_pcg."0.1.1".serde1 or false) ||
-        (rand_pcg."0.1.1"."serde1" or false); }
-      { "0.1.1"."serde_derive" =
-        (f.rand_pcg."0.1.1"."serde_derive" or false) ||
-        (f.rand_pcg."0.1.1".serde1 or false) ||
-        (rand_pcg."0.1.1"."serde1" or false); }
-      { "0.1.1".default = (f.rand_pcg."0.1.1".default or true); }
-    ];
-    rustc_version."${deps.rand_pcg."0.1.1".rustc_version}".default = true;
-  }) [
-    (features_.rand_core."${deps."rand_pcg"."0.1.1"."rand_core"}" deps)
-    (features_.rustc_version."${deps."rand_pcg"."0.1.1"."rustc_version"}" deps)
-  ];
-
-
-# end
-# rand_xorshift-0.1.0
-
-  crates.rand_xorshift."0.1.0" = deps: { features?(features_.rand_xorshift."0.1.0" deps {}) }: buildRustCrate {
-    crateName = "rand_xorshift";
-    version = "0.1.0";
-    description = "Xorshift random number generator\n";
-    authors = [ "The Rand Project Developers" "The Rust Project Developers" ];
-    sha256 = "063vxb678ki8gq4rx9w7yg5f9i29ig1zwykl67mfsxn0kxlkv2ih";
-    dependencies = mapFeatures features ([
-      (crates."rand_core"."${deps."rand_xorshift"."0.1.0"."rand_core"}" deps)
-    ]);
-    features = mkFeatures (features."rand_xorshift"."0.1.0" or {});
-  };
-  features_.rand_xorshift."0.1.0" = deps: f: updateFeatures f (rec {
-    rand_core."${deps.rand_xorshift."0.1.0".rand_core}".default = (f.rand_core."${deps.rand_xorshift."0.1.0".rand_core}".default or false);
-    rand_xorshift = fold recursiveUpdate {} [
-      { "0.1.0"."serde" =
-        (f.rand_xorshift."0.1.0"."serde" or false) ||
-        (f.rand_xorshift."0.1.0".serde1 or false) ||
-        (rand_xorshift."0.1.0"."serde1" or false); }
-      { "0.1.0"."serde_derive" =
-        (f.rand_xorshift."0.1.0"."serde_derive" or false) ||
-        (f.rand_xorshift."0.1.0".serde1 or false) ||
-        (rand_xorshift."0.1.0"."serde1" or false); }
-      { "0.1.0".default = (f.rand_xorshift."0.1.0".default or true); }
-    ];
-  }) [
-    (features_.rand_core."${deps."rand_xorshift"."0.1.0"."rand_core"}" deps)
-  ];
-
-
-# end
-# redox_syscall-0.1.31
-
-  crates.redox_syscall."0.1.31" = deps: { features?(features_.redox_syscall."0.1.31" deps {}) }: buildRustCrate {
-    crateName = "redox_syscall";
-    version = "0.1.31";
-    description = "A Rust library to access raw Redox system calls";
-    authors = [ "Jeremy Soller <jackpot51@gmail.com>" ];
-    sha256 = "0kipd9qslzin4fgj4jrxv6yz5l3l71gnbd7fq1jhk2j7f2sq33j4";
-    libName = "syscall";
-  };
-  features_.redox_syscall."0.1.31" = deps: f: updateFeatures f ({
-    redox_syscall."0.1.31".default = (f.redox_syscall."0.1.31".default or true);
-  }) [];
-
-
-# end
-# redox_termios-0.1.1
-
-  crates.redox_termios."0.1.1" = deps: { features?(features_.redox_termios."0.1.1" deps {}) }: buildRustCrate {
-    crateName = "redox_termios";
-    version = "0.1.1";
-    description = "A Rust library to access Redox termios functions";
-    authors = [ "Jeremy Soller <jackpot51@gmail.com>" ];
-    sha256 = "04s6yyzjca552hdaqlvqhp3vw0zqbc304md5czyd3axh56iry8wh";
-    libPath = "src/lib.rs";
-    dependencies = mapFeatures features ([
-      (crates."redox_syscall"."${deps."redox_termios"."0.1.1"."redox_syscall"}" deps)
-    ]);
-  };
-  features_.redox_termios."0.1.1" = deps: f: updateFeatures f ({
-    redox_syscall."${deps.redox_termios."0.1.1".redox_syscall}".default = true;
-    redox_termios."0.1.1".default = (f.redox_termios."0.1.1".default or true);
-  }) [
-    (features_.redox_syscall."${deps."redox_termios"."0.1.1"."redox_syscall"}" deps)
-  ];
-
-
-# end
-# regex-0.1.80
-
-  crates.regex."0.1.80" = deps: { features?(features_.regex."0.1.80" deps {}) }: buildRustCrate {
-    crateName = "regex";
-    version = "0.1.80";
-    description = "An implementation of regular expressions for Rust. This implementation uses\nfinite automata and guarantees linear time matching on all inputs.\n";
-    authors = [ "The Rust Project Developers" ];
-    sha256 = "0y4s8ghhx6sgzb35irwivm3w0l2hhqhmdcd2px9hirqnkagal9l6";
-    dependencies = mapFeatures features ([
-      (crates."aho_corasick"."${deps."regex"."0.1.80"."aho_corasick"}" deps)
-      (crates."memchr"."${deps."regex"."0.1.80"."memchr"}" deps)
-      (crates."regex_syntax"."${deps."regex"."0.1.80"."regex_syntax"}" deps)
-      (crates."thread_local"."${deps."regex"."0.1.80"."thread_local"}" deps)
-      (crates."utf8_ranges"."${deps."regex"."0.1.80"."utf8_ranges"}" deps)
-    ]);
-    features = mkFeatures (features."regex"."0.1.80" or {});
-  };
-  features_.regex."0.1.80" = deps: f: updateFeatures f (rec {
-    aho_corasick."${deps.regex."0.1.80".aho_corasick}".default = true;
-    memchr."${deps.regex."0.1.80".memchr}".default = true;
-    regex = fold recursiveUpdate {} [
-      { "0.1.80"."simd" =
-        (f.regex."0.1.80"."simd" or false) ||
-        (f.regex."0.1.80".simd-accel or false) ||
-        (regex."0.1.80"."simd-accel" or false); }
-      { "0.1.80".default = (f.regex."0.1.80".default or true); }
-    ];
-    regex_syntax."${deps.regex."0.1.80".regex_syntax}".default = true;
-    thread_local."${deps.regex."0.1.80".thread_local}".default = true;
-    utf8_ranges."${deps.regex."0.1.80".utf8_ranges}".default = true;
-  }) [
-    (features_.aho_corasick."${deps."regex"."0.1.80"."aho_corasick"}" deps)
-    (features_.memchr."${deps."regex"."0.1.80"."memchr"}" deps)
-    (features_.regex_syntax."${deps."regex"."0.1.80"."regex_syntax"}" deps)
-    (features_.thread_local."${deps."regex"."0.1.80"."thread_local"}" deps)
-    (features_.utf8_ranges."${deps."regex"."0.1.80"."utf8_ranges"}" deps)
-  ];
-
-
-# end
-# regex-syntax-0.3.9
-
-  crates.regex_syntax."0.3.9" = deps: { features?(features_.regex_syntax."0.3.9" deps {}) }: buildRustCrate {
-    crateName = "regex-syntax";
-    version = "0.3.9";
-    description = "A regular expression parser.";
-    authors = [ "The Rust Project Developers" ];
-    sha256 = "1mzhphkbwppwd1zam2jkgjk550cqgf6506i87bw2yzrvcsraiw7m";
-  };
-  features_.regex_syntax."0.3.9" = deps: f: updateFeatures f ({
-    regex_syntax."0.3.9".default = (f.regex_syntax."0.3.9".default or true);
-  }) [];
-
-
-# end
-# remove_dir_all-0.5.1
-
-  crates.remove_dir_all."0.5.1" = deps: { features?(features_.remove_dir_all."0.5.1" deps {}) }: buildRustCrate {
-    crateName = "remove_dir_all";
-    version = "0.5.1";
-    description = "A safe, reliable implementation of remove_dir_all for Windows";
-    authors = [ "Aaronepower <theaaronepower@gmail.com>" ];
-    sha256 = "1chx3yvfbj46xjz4bzsvps208l46hfbcy0sm98gpiya454n4rrl7";
-    dependencies = (if kernel == "windows" then mapFeatures features ([
-      (crates."winapi"."${deps."remove_dir_all"."0.5.1"."winapi"}" deps)
-    ]) else []);
-  };
-  features_.remove_dir_all."0.5.1" = deps: f: updateFeatures f ({
-    remove_dir_all."0.5.1".default = (f.remove_dir_all."0.5.1".default or true);
-    winapi = fold recursiveUpdate {} [
-      { "${deps.remove_dir_all."0.5.1".winapi}"."errhandlingapi" = true; }
-      { "${deps.remove_dir_all."0.5.1".winapi}"."fileapi" = true; }
-      { "${deps.remove_dir_all."0.5.1".winapi}"."std" = true; }
-      { "${deps.remove_dir_all."0.5.1".winapi}"."winbase" = true; }
-      { "${deps.remove_dir_all."0.5.1".winapi}"."winerror" = true; }
-      { "${deps.remove_dir_all."0.5.1".winapi}".default = true; }
-    ];
-  }) [
-    (features_.winapi."${deps."remove_dir_all"."0.5.1"."winapi"}" deps)
-  ];
-
-
-# end
-# reqwest-0.9.5
-
-  crates.reqwest."0.9.5" = deps: { features?(features_.reqwest."0.9.5" deps {}) }: buildRustCrate {
-    crateName = "reqwest";
-    version = "0.9.5";
-    description = "higher level HTTP client library";
-    authors = [ "Sean McArthur <sean@seanmonstar.com>" ];
-    sha256 = "1y0fq8ifhbgn6bfvjq831svirqszszj7f73ykbd28inwc0xiv2ix";
-    dependencies = mapFeatures features ([
-      (crates."base64"."${deps."reqwest"."0.9.5"."base64"}" deps)
-      (crates."bytes"."${deps."reqwest"."0.9.5"."bytes"}" deps)
-      (crates."encoding_rs"."${deps."reqwest"."0.9.5"."encoding_rs"}" deps)
-      (crates."futures"."${deps."reqwest"."0.9.5"."futures"}" deps)
-      (crates."http"."${deps."reqwest"."0.9.5"."http"}" deps)
-      (crates."hyper"."${deps."reqwest"."0.9.5"."hyper"}" deps)
-      (crates."libflate"."${deps."reqwest"."0.9.5"."libflate"}" deps)
-      (crates."log"."${deps."reqwest"."0.9.5"."log"}" deps)
-      (crates."mime"."${deps."reqwest"."0.9.5"."mime"}" deps)
-      (crates."mime_guess"."${deps."reqwest"."0.9.5"."mime_guess"}" deps)
-      (crates."serde"."${deps."reqwest"."0.9.5"."serde"}" deps)
-      (crates."serde_json"."${deps."reqwest"."0.9.5"."serde_json"}" deps)
-      (crates."serde_urlencoded"."${deps."reqwest"."0.9.5"."serde_urlencoded"}" deps)
-      (crates."tokio"."${deps."reqwest"."0.9.5"."tokio"}" deps)
-      (crates."tokio_io"."${deps."reqwest"."0.9.5"."tokio_io"}" deps)
-      (crates."url"."${deps."reqwest"."0.9.5"."url"}" deps)
-      (crates."uuid"."${deps."reqwest"."0.9.5"."uuid"}" deps)
-    ]
-      ++ (if features.reqwest."0.9.5".hyper-tls or false then [ (crates.hyper_tls."${deps."reqwest"."0.9.5".hyper_tls}" deps) ] else [])
-      ++ (if features.reqwest."0.9.5".native-tls or false then [ (crates.native_tls."${deps."reqwest"."0.9.5".native_tls}" deps) ] else []));
-    features = mkFeatures (features."reqwest"."0.9.5" or {});
-  };
-  features_.reqwest."0.9.5" = deps: f: updateFeatures f (rec {
-    base64."${deps.reqwest."0.9.5".base64}".default = true;
-    bytes."${deps.reqwest."0.9.5".bytes}".default = true;
-    encoding_rs."${deps.reqwest."0.9.5".encoding_rs}".default = true;
-    futures."${deps.reqwest."0.9.5".futures}".default = true;
-    http."${deps.reqwest."0.9.5".http}".default = true;
-    hyper."${deps.reqwest."0.9.5".hyper}".default = true;
-    hyper_tls."${deps.reqwest."0.9.5".hyper_tls}".default = true;
-    libflate."${deps.reqwest."0.9.5".libflate}".default = true;
-    log."${deps.reqwest."0.9.5".log}".default = true;
-    mime."${deps.reqwest."0.9.5".mime}".default = true;
-    mime_guess."${deps.reqwest."0.9.5".mime_guess}".default = true;
-    native_tls."${deps.reqwest."0.9.5".native_tls}".default = true;
-    reqwest = fold recursiveUpdate {} [
-      { "0.9.5"."default-tls" =
-        (f.reqwest."0.9.5"."default-tls" or false) ||
-        (f.reqwest."0.9.5".default or false) ||
-        (reqwest."0.9.5"."default" or false); }
-      { "0.9.5"."hyper-old-types" =
-        (f.reqwest."0.9.5"."hyper-old-types" or false) ||
-        (f.reqwest."0.9.5".hyper-011 or false) ||
-        (reqwest."0.9.5"."hyper-011" or false); }
-      { "0.9.5"."hyper-tls" =
-        (f.reqwest."0.9.5"."hyper-tls" or false) ||
-        (f.reqwest."0.9.5".default-tls or false) ||
-        (reqwest."0.9.5"."default-tls" or false); }
-      { "0.9.5"."native-tls" =
-        (f.reqwest."0.9.5"."native-tls" or false) ||
-        (f.reqwest."0.9.5".default-tls or false) ||
-        (reqwest."0.9.5"."default-tls" or false); }
-      { "0.9.5".default = (f.reqwest."0.9.5".default or true); }
-    ];
-    serde."${deps.reqwest."0.9.5".serde}".default = true;
-    serde_json."${deps.reqwest."0.9.5".serde_json}".default = true;
-    serde_urlencoded."${deps.reqwest."0.9.5".serde_urlencoded}".default = true;
-    tokio."${deps.reqwest."0.9.5".tokio}".default = true;
-    tokio_io."${deps.reqwest."0.9.5".tokio_io}".default = true;
-    url."${deps.reqwest."0.9.5".url}".default = true;
-    uuid = fold recursiveUpdate {} [
-      { "${deps.reqwest."0.9.5".uuid}"."v4" = true; }
-      { "${deps.reqwest."0.9.5".uuid}".default = true; }
-    ];
-  }) [
-    (features_.base64."${deps."reqwest"."0.9.5"."base64"}" deps)
-    (features_.bytes."${deps."reqwest"."0.9.5"."bytes"}" deps)
-    (features_.encoding_rs."${deps."reqwest"."0.9.5"."encoding_rs"}" deps)
-    (features_.futures."${deps."reqwest"."0.9.5"."futures"}" deps)
-    (features_.http."${deps."reqwest"."0.9.5"."http"}" deps)
-    (features_.hyper."${deps."reqwest"."0.9.5"."hyper"}" deps)
-    (features_.hyper_tls."${deps."reqwest"."0.9.5"."hyper_tls"}" deps)
-    (features_.libflate."${deps."reqwest"."0.9.5"."libflate"}" deps)
-    (features_.log."${deps."reqwest"."0.9.5"."log"}" deps)
-    (features_.mime."${deps."reqwest"."0.9.5"."mime"}" deps)
-    (features_.mime_guess."${deps."reqwest"."0.9.5"."mime_guess"}" deps)
-    (features_.native_tls."${deps."reqwest"."0.9.5"."native_tls"}" deps)
-    (features_.serde."${deps."reqwest"."0.9.5"."serde"}" deps)
-    (features_.serde_json."${deps."reqwest"."0.9.5"."serde_json"}" deps)
-    (features_.serde_urlencoded."${deps."reqwest"."0.9.5"."serde_urlencoded"}" deps)
-    (features_.tokio."${deps."reqwest"."0.9.5"."tokio"}" deps)
-    (features_.tokio_io."${deps."reqwest"."0.9.5"."tokio_io"}" deps)
-    (features_.url."${deps."reqwest"."0.9.5"."url"}" deps)
-    (features_.uuid."${deps."reqwest"."0.9.5"."uuid"}" deps)
-  ];
-
-
-# end
-# rustc_version-0.2.3
-
-  crates.rustc_version."0.2.3" = deps: { features?(features_.rustc_version."0.2.3" deps {}) }: buildRustCrate {
-    crateName = "rustc_version";
-    version = "0.2.3";
-    description = "A library for querying the version of a installed rustc compiler";
-    authors = [ "Marvin Löbel <loebel.marvin@gmail.com>" ];
-    sha256 = "0rgwzbgs3i9fqjm1p4ra3n7frafmpwl29c8lw85kv1rxn7n2zaa7";
-    dependencies = mapFeatures features ([
-      (crates."semver"."${deps."rustc_version"."0.2.3"."semver"}" deps)
-    ]);
-  };
-  features_.rustc_version."0.2.3" = deps: f: updateFeatures f ({
-    rustc_version."0.2.3".default = (f.rustc_version."0.2.3".default or true);
-    semver."${deps.rustc_version."0.2.3".semver}".default = true;
-  }) [
-    (features_.semver."${deps."rustc_version"."0.2.3"."semver"}" deps)
-  ];
-
-
-# end
-# safemem-0.3.0
-
-  crates.safemem."0.3.0" = deps: { features?(features_.safemem."0.3.0" deps {}) }: buildRustCrate {
-    crateName = "safemem";
-    version = "0.3.0";
-    description = "Safe wrappers for memory-accessing functions, like `std::ptr::copy()`.";
-    authors = [ "Austin Bonander <austin.bonander@gmail.com>" ];
-    sha256 = "0pr39b468d05f6m7m4alsngmj5p7an8df21apsxbi57k0lmwrr18";
-    features = mkFeatures (features."safemem"."0.3.0" or {});
-  };
-  features_.safemem."0.3.0" = deps: f: updateFeatures f (rec {
-    safemem = fold recursiveUpdate {} [
-      { "0.3.0"."std" =
-        (f.safemem."0.3.0"."std" or false) ||
-        (f.safemem."0.3.0".default or false) ||
-        (safemem."0.3.0"."default" or false); }
-      { "0.3.0".default = (f.safemem."0.3.0".default or true); }
-    ];
-  }) [];
-
-
-# end
-# schannel-0.1.14
-
-  crates.schannel."0.1.14" = deps: { features?(features_.schannel."0.1.14" deps {}) }: buildRustCrate {
-    crateName = "schannel";
-    version = "0.1.14";
-    description = "Schannel bindings for rust, allowing SSL/TLS (e.g. https) without openssl";
-    authors = [ "Steven Fackler <sfackler@gmail.com>" "Steffen Butzer <steffen.butzer@outlook.com>" ];
-    sha256 = "1g0a88jknns1kwn3x1k3ci5y5zvg58pwdg1xrxkrw3cwd2hynm9k";
-    dependencies = mapFeatures features ([
-      (crates."lazy_static"."${deps."schannel"."0.1.14"."lazy_static"}" deps)
-      (crates."winapi"."${deps."schannel"."0.1.14"."winapi"}" deps)
-    ]);
-  };
-  features_.schannel."0.1.14" = deps: f: updateFeatures f ({
-    lazy_static."${deps.schannel."0.1.14".lazy_static}".default = true;
-    schannel."0.1.14".default = (f.schannel."0.1.14".default or true);
-    winapi = fold recursiveUpdate {} [
-      { "${deps.schannel."0.1.14".winapi}"."lmcons" = true; }
-      { "${deps.schannel."0.1.14".winapi}"."minschannel" = true; }
-      { "${deps.schannel."0.1.14".winapi}"."schannel" = true; }
-      { "${deps.schannel."0.1.14".winapi}"."securitybaseapi" = true; }
-      { "${deps.schannel."0.1.14".winapi}"."sspi" = true; }
-      { "${deps.schannel."0.1.14".winapi}"."sysinfoapi" = true; }
-      { "${deps.schannel."0.1.14".winapi}"."timezoneapi" = true; }
-      { "${deps.schannel."0.1.14".winapi}"."winbase" = true; }
-      { "${deps.schannel."0.1.14".winapi}"."wincrypt" = true; }
-      { "${deps.schannel."0.1.14".winapi}"."winerror" = true; }
-      { "${deps.schannel."0.1.14".winapi}".default = true; }
-    ];
-  }) [
-    (features_.lazy_static."${deps."schannel"."0.1.14"."lazy_static"}" deps)
-    (features_.winapi."${deps."schannel"."0.1.14"."winapi"}" deps)
-  ];
-
-
-# end
-# scopeguard-0.3.3
-
-  crates.scopeguard."0.3.3" = deps: { features?(features_.scopeguard."0.3.3" deps {}) }: buildRustCrate {
-    crateName = "scopeguard";
-    version = "0.3.3";
-    description = "A RAII scope guard that will run a given closure when it goes out of scope,\neven if the code between panics (assuming unwinding panic).\n\nDefines the macros `defer!` and `defer_on_unwind!`; the latter only runs\nif the scope is extited through unwinding on panic.\n";
-    authors = [ "bluss" ];
-    sha256 = "0i1l013csrqzfz6c68pr5pi01hg5v5yahq8fsdmaxy6p8ygsjf3r";
-    features = mkFeatures (features."scopeguard"."0.3.3" or {});
-  };
-  features_.scopeguard."0.3.3" = deps: f: updateFeatures f (rec {
-    scopeguard = fold recursiveUpdate {} [
-      { "0.3.3"."use_std" =
-        (f.scopeguard."0.3.3"."use_std" or false) ||
-        (f.scopeguard."0.3.3".default or false) ||
-        (scopeguard."0.3.3"."default" or false); }
-      { "0.3.3".default = (f.scopeguard."0.3.3".default or true); }
-    ];
-  }) [];
-
-
-# end
-# security-framework-0.2.1
-
-  crates.security_framework."0.2.1" = deps: { features?(features_.security_framework."0.2.1" deps {}) }: buildRustCrate {
-    crateName = "security-framework";
-    version = "0.2.1";
-    description = "Security Framework bindings";
-    authors = [ "Steven Fackler <sfackler@gmail.com>" ];
-    sha256 = "0qia5g66zmjn57m9swhrkz3cll3bs4061qim6w72v08c2w0pkvsw";
-    dependencies = mapFeatures features ([
-      (crates."core_foundation"."${deps."security_framework"."0.2.1"."core_foundation"}" deps)
-      (crates."core_foundation_sys"."${deps."security_framework"."0.2.1"."core_foundation_sys"}" deps)
-      (crates."libc"."${deps."security_framework"."0.2.1"."libc"}" deps)
-      (crates."security_framework_sys"."${deps."security_framework"."0.2.1"."security_framework_sys"}" deps)
-    ]);
-    features = mkFeatures (features."security_framework"."0.2.1" or {});
-  };
-  features_.security_framework."0.2.1" = deps: f: updateFeatures f (rec {
-    core_foundation."${deps.security_framework."0.2.1".core_foundation}".default = true;
-    core_foundation_sys."${deps.security_framework."0.2.1".core_foundation_sys}".default = true;
-    libc."${deps.security_framework."0.2.1".libc}".default = true;
-    security_framework = fold recursiveUpdate {} [
-      { "0.2.1"."OSX_10_10" =
-        (f.security_framework."0.2.1"."OSX_10_10" or false) ||
-        (f.security_framework."0.2.1".OSX_10_11 or false) ||
-        (security_framework."0.2.1"."OSX_10_11" or false); }
-      { "0.2.1"."OSX_10_11" =
-        (f.security_framework."0.2.1"."OSX_10_11" or false) ||
-        (f.security_framework."0.2.1".OSX_10_12 or false) ||
-        (security_framework."0.2.1"."OSX_10_12" or false); }
-      { "0.2.1"."OSX_10_9" =
-        (f.security_framework."0.2.1"."OSX_10_9" or false) ||
-        (f.security_framework."0.2.1".OSX_10_10 or false) ||
-        (security_framework."0.2.1"."OSX_10_10" or false); }
-      { "0.2.1".default = (f.security_framework."0.2.1".default or true); }
-    ];
-    security_framework_sys = fold recursiveUpdate {} [
-      { "${deps.security_framework."0.2.1".security_framework_sys}"."OSX_10_10" =
-        (f.security_framework_sys."${deps.security_framework."0.2.1".security_framework_sys}"."OSX_10_10" or false) ||
-        (security_framework."0.2.1"."OSX_10_10" or false) ||
-        (f."security_framework"."0.2.1"."OSX_10_10" or false); }
-      { "${deps.security_framework."0.2.1".security_framework_sys}"."OSX_10_11" =
-        (f.security_framework_sys."${deps.security_framework."0.2.1".security_framework_sys}"."OSX_10_11" or false) ||
-        (security_framework."0.2.1"."OSX_10_11" or false) ||
-        (f."security_framework"."0.2.1"."OSX_10_11" or false) ||
-        (security_framework."0.2.1"."OSX_10_12" or false) ||
-        (f."security_framework"."0.2.1"."OSX_10_12" or false); }
-      { "${deps.security_framework."0.2.1".security_framework_sys}"."OSX_10_9" =
-        (f.security_framework_sys."${deps.security_framework."0.2.1".security_framework_sys}"."OSX_10_9" or false) ||
-        (security_framework."0.2.1"."OSX_10_9" or false) ||
-        (f."security_framework"."0.2.1"."OSX_10_9" or false); }
-      { "${deps.security_framework."0.2.1".security_framework_sys}".default = true; }
-    ];
-  }) [
-    (features_.core_foundation."${deps."security_framework"."0.2.1"."core_foundation"}" deps)
-    (features_.core_foundation_sys."${deps."security_framework"."0.2.1"."core_foundation_sys"}" deps)
-    (features_.libc."${deps."security_framework"."0.2.1"."libc"}" deps)
-    (features_.security_framework_sys."${deps."security_framework"."0.2.1"."security_framework_sys"}" deps)
-  ];
-
-
-# end
-# security-framework-sys-0.2.1
-
-  crates.security_framework_sys."0.2.1" = deps: { features?(features_.security_framework_sys."0.2.1" deps {}) }: buildRustCrate {
-    crateName = "security-framework-sys";
-    version = "0.2.1";
-    description = "Security Framework bindings";
-    authors = [ "Steven Fackler <sfackler@gmail.com>" ];
-    sha256 = "0ijxy7bdi4am092hrhm645hcv36xprdx1gjcjmnyw6n78x8sv2iz";
-    build = "build.rs";
-    dependencies = mapFeatures features ([
-      (crates."core_foundation_sys"."${deps."security_framework_sys"."0.2.1"."core_foundation_sys"}" deps)
-      (crates."libc"."${deps."security_framework_sys"."0.2.1"."libc"}" deps)
-    ]);
-    features = mkFeatures (features."security_framework_sys"."0.2.1" or {});
-  };
-  features_.security_framework_sys."0.2.1" = deps: f: updateFeatures f (rec {
-    core_foundation_sys."${deps.security_framework_sys."0.2.1".core_foundation_sys}".default = true;
-    libc."${deps.security_framework_sys."0.2.1".libc}".default = true;
-    security_framework_sys = fold recursiveUpdate {} [
-      { "0.2.1"."OSX_10_10" =
-        (f.security_framework_sys."0.2.1"."OSX_10_10" or false) ||
-        (f.security_framework_sys."0.2.1".OSX_10_11 or false) ||
-        (security_framework_sys."0.2.1"."OSX_10_11" or false); }
-      { "0.2.1"."OSX_10_11" =
-        (f.security_framework_sys."0.2.1"."OSX_10_11" or false) ||
-        (f.security_framework_sys."0.2.1".OSX_10_12 or false) ||
-        (security_framework_sys."0.2.1"."OSX_10_12" or false); }
-      { "0.2.1"."OSX_10_9" =
-        (f.security_framework_sys."0.2.1"."OSX_10_9" or false) ||
-        (f.security_framework_sys."0.2.1".OSX_10_10 or false) ||
-        (security_framework_sys."0.2.1"."OSX_10_10" or false); }
-      { "0.2.1".default = (f.security_framework_sys."0.2.1".default or true); }
-    ];
-  }) [
-    (features_.core_foundation_sys."${deps."security_framework_sys"."0.2.1"."core_foundation_sys"}" deps)
-    (features_.libc."${deps."security_framework_sys"."0.2.1"."libc"}" deps)
-  ];
-
-
-# end
-# semver-0.9.0
-
-  crates.semver."0.9.0" = deps: { features?(features_.semver."0.9.0" deps {}) }: buildRustCrate {
-    crateName = "semver";
-    version = "0.9.0";
-    description = "Semantic version parsing and comparison.\n";
-    authors = [ "Steve Klabnik <steve@steveklabnik.com>" "The Rust Project Developers" ];
-    sha256 = "0azak2lb2wc36s3x15az886kck7rpnksrw14lalm157rg9sc9z63";
-    dependencies = mapFeatures features ([
-      (crates."semver_parser"."${deps."semver"."0.9.0"."semver_parser"}" deps)
-    ]);
-    features = mkFeatures (features."semver"."0.9.0" or {});
-  };
-  features_.semver."0.9.0" = deps: f: updateFeatures f (rec {
-    semver = fold recursiveUpdate {} [
-      { "0.9.0"."serde" =
-        (f.semver."0.9.0"."serde" or false) ||
-        (f.semver."0.9.0".ci or false) ||
-        (semver."0.9.0"."ci" or false); }
-      { "0.9.0".default = (f.semver."0.9.0".default or true); }
-    ];
-    semver_parser."${deps.semver."0.9.0".semver_parser}".default = true;
-  }) [
-    (features_.semver_parser."${deps."semver"."0.9.0"."semver_parser"}" deps)
-  ];
-
-
-# end
-# semver-parser-0.7.0
-
-  crates.semver_parser."0.7.0" = deps: { features?(features_.semver_parser."0.7.0" deps {}) }: buildRustCrate {
-    crateName = "semver-parser";
-    version = "0.7.0";
-    description = "Parsing of the semver spec.\n";
-    authors = [ "Steve Klabnik <steve@steveklabnik.com>" ];
-    sha256 = "1da66c8413yakx0y15k8c055yna5lyb6fr0fw9318kdwkrk5k12h";
-  };
-  features_.semver_parser."0.7.0" = deps: f: updateFeatures f ({
-    semver_parser."0.7.0".default = (f.semver_parser."0.7.0".default or true);
-  }) [];
-
-
-# end
-# serde-1.0.21
-
-  crates.serde."1.0.21" = deps: { features?(features_.serde."1.0.21" deps {}) }: buildRustCrate {
-    crateName = "serde";
-    version = "1.0.21";
-    description = "A generic serialization/deserialization framework";
-    authors = [ "Erick Tryzelaar <erick.tryzelaar@gmail.com>" "David Tolnay <dtolnay@gmail.com>" ];
-    sha256 = "10almq7pvx8s4ryiqk8gf7fj5igl0yq6dcjknwc67rkmxd8q50w3";
-    dependencies = mapFeatures features ([
-]);
-    features = mkFeatures (features."serde"."1.0.21" or {});
-  };
-  features_.serde."1.0.21" = deps: f: updateFeatures f (rec {
-    serde = fold recursiveUpdate {} [
-      { "1.0.21"."serde_derive" =
-        (f.serde."1.0.21"."serde_derive" or false) ||
-        (f.serde."1.0.21".derive or false) ||
-        (serde."1.0.21"."derive" or false) ||
-        (f.serde."1.0.21".playground or false) ||
-        (serde."1.0.21"."playground" or false); }
-      { "1.0.21"."std" =
-        (f.serde."1.0.21"."std" or false) ||
-        (f.serde."1.0.21".default or false) ||
-        (serde."1.0.21"."default" or false); }
-      { "1.0.21"."unstable" =
-        (f.serde."1.0.21"."unstable" or false) ||
-        (f.serde."1.0.21".alloc or false) ||
-        (serde."1.0.21"."alloc" or false); }
-      { "1.0.21".default = (f.serde."1.0.21".default or true); }
-    ];
-  }) [];
-
-
-# end
-# serde_json-1.0.6
-
-  crates.serde_json."1.0.6" = deps: { features?(features_.serde_json."1.0.6" deps {}) }: buildRustCrate {
-    crateName = "serde_json";
-    version = "1.0.6";
-    description = "A JSON serialization file format";
-    authors = [ "Erick Tryzelaar <erick.tryzelaar@gmail.com>" "David Tolnay <dtolnay@gmail.com>" ];
-    sha256 = "1kacyc59splwbg8gr7qs32pp9smgy1khq0ggnv07yxhs7h355vjz";
-    dependencies = mapFeatures features ([
-      (crates."dtoa"."${deps."serde_json"."1.0.6"."dtoa"}" deps)
-      (crates."itoa"."${deps."serde_json"."1.0.6"."itoa"}" deps)
-      (crates."num_traits"."${deps."serde_json"."1.0.6"."num_traits"}" deps)
-      (crates."serde"."${deps."serde_json"."1.0.6"."serde"}" deps)
-    ]);
-    features = mkFeatures (features."serde_json"."1.0.6" or {});
-  };
-  features_.serde_json."1.0.6" = deps: f: updateFeatures f (rec {
-    dtoa."${deps.serde_json."1.0.6".dtoa}".default = true;
-    itoa."${deps.serde_json."1.0.6".itoa}".default = true;
-    num_traits."${deps.serde_json."1.0.6".num_traits}".default = true;
-    serde."${deps.serde_json."1.0.6".serde}".default = true;
-    serde_json = fold recursiveUpdate {} [
-      { "1.0.6"."linked-hash-map" =
-        (f.serde_json."1.0.6"."linked-hash-map" or false) ||
-        (f.serde_json."1.0.6".preserve_order or false) ||
-        (serde_json."1.0.6"."preserve_order" or false); }
-      { "1.0.6".default = (f.serde_json."1.0.6".default or true); }
-    ];
-  }) [
-    (features_.dtoa."${deps."serde_json"."1.0.6"."dtoa"}" deps)
-    (features_.itoa."${deps."serde_json"."1.0.6"."itoa"}" deps)
-    (features_.num_traits."${deps."serde_json"."1.0.6"."num_traits"}" deps)
-    (features_.serde."${deps."serde_json"."1.0.6"."serde"}" deps)
-  ];
-
-
-# end
-# serde_urlencoded-0.5.1
-
-  crates.serde_urlencoded."0.5.1" = deps: { features?(features_.serde_urlencoded."0.5.1" deps {}) }: buildRustCrate {
-    crateName = "serde_urlencoded";
-    version = "0.5.1";
-    description = "`x-www-form-urlencoded` meets Serde";
-    authors = [ "Anthony Ramine <n.oxyde@gmail.com>" ];
-    sha256 = "0zh2wlnapmcwqhxnnq1mdlmg8vily7j54wvj01s7cvapzg5jphdl";
-    dependencies = mapFeatures features ([
-      (crates."dtoa"."${deps."serde_urlencoded"."0.5.1"."dtoa"}" deps)
-      (crates."itoa"."${deps."serde_urlencoded"."0.5.1"."itoa"}" deps)
-      (crates."serde"."${deps."serde_urlencoded"."0.5.1"."serde"}" deps)
-      (crates."url"."${deps."serde_urlencoded"."0.5.1"."url"}" deps)
-    ]);
-  };
-  features_.serde_urlencoded."0.5.1" = deps: f: updateFeatures f ({
-    dtoa."${deps.serde_urlencoded."0.5.1".dtoa}".default = true;
-    itoa."${deps.serde_urlencoded."0.5.1".itoa}".default = true;
-    serde."${deps.serde_urlencoded."0.5.1".serde}".default = true;
-    serde_urlencoded."0.5.1".default = (f.serde_urlencoded."0.5.1".default or true);
-    url."${deps.serde_urlencoded."0.5.1".url}".default = true;
-  }) [
-    (features_.dtoa."${deps."serde_urlencoded"."0.5.1"."dtoa"}" deps)
-    (features_.itoa."${deps."serde_urlencoded"."0.5.1"."itoa"}" deps)
-    (features_.serde."${deps."serde_urlencoded"."0.5.1"."serde"}" deps)
-    (features_.url."${deps."serde_urlencoded"."0.5.1"."url"}" deps)
-  ];
-
-
-# end
-# siphasher-0.2.2
-
-  crates.siphasher."0.2.2" = deps: { features?(features_.siphasher."0.2.2" deps {}) }: buildRustCrate {
-    crateName = "siphasher";
-    version = "0.2.2";
-    description = "SipHash functions from rust-core < 1.13";
-    authors = [ "Frank Denis <github@pureftpd.org>" ];
-    sha256 = "0iyx7nlzfny9ly1634a6zcq0yvrinhxhypwas4p8ry3zqnn76qqr";
-    dependencies = mapFeatures features ([
-]);
-  };
-  features_.siphasher."0.2.2" = deps: f: updateFeatures f ({
-    siphasher."0.2.2".default = (f.siphasher."0.2.2".default or true);
-  }) [];
-
-
-# end
-# slab-0.4.0
-
-  crates.slab."0.4.0" = deps: { features?(features_.slab."0.4.0" deps {}) }: buildRustCrate {
-    crateName = "slab";
-    version = "0.4.0";
-    description = "Pre-allocated storage for a uniform data type";
-    authors = [ "Carl Lerche <me@carllerche.com>" ];
-    sha256 = "1qy2vkgwqgj5z4ygdkh040n9yh1vz80v5flxb1xrvw3i4wxs7yx0";
-  };
-  features_.slab."0.4.0" = deps: f: updateFeatures f ({
-    slab."0.4.0".default = (f.slab."0.4.0".default or true);
-  }) [];
-
-
-# end
-# slog-1.7.1
-
-  crates.slog."1.7.1" = deps: { features?(features_.slog."1.7.1" deps {}) }: buildRustCrate {
-    crateName = "slog";
-    version = "1.7.1";
-    description = "Structured, composable logging for Rust";
-    authors = [ "Dawid Ciężarkiewicz <dpc@dpc.pw>" ];
-    sha256 = "1qhnwv2gbxmnwasaa0vlhddq6cdhq6n3l8d6h3ql73367h7aav65";
-    features = mkFeatures (features."slog"."1.7.1" or {});
-  };
-  features_.slog."1.7.1" = deps: f: updateFeatures f (rec {
-    slog = fold recursiveUpdate {} [
-      { "1.7.1"."std" =
-        (f.slog."1.7.1"."std" or false) ||
-        (f.slog."1.7.1".default or false) ||
-        (slog."1.7.1"."default" or false); }
-      { "1.7.1".default = (f.slog."1.7.1".default or true); }
-    ];
-  }) [];
-
-
-# end
-# slog-envlogger-0.5.0
-
-  crates.slog_envlogger."0.5.0" = deps: { features?(features_.slog_envlogger."0.5.0" deps {}) }: buildRustCrate {
-    crateName = "slog-envlogger";
-    version = "0.5.0";
-    description = "Port of de facto standard logger implementation for Rust, to `slog-rs` framework.\n";
-    authors = [ "The Rust Project Developers" "Dawid Ciężarkiewicz <dpc@dpc.pw>" ];
-    sha256 = "0ry9k2ppj7z6prdz2kf924w7l9y2kbysrigca6shni1kz2j163qb";
-    libPath = "src/lib.rs";
-    dependencies = mapFeatures features ([
-      (crates."log"."${deps."slog_envlogger"."0.5.0"."log"}" deps)
-      (crates."regex"."${deps."slog_envlogger"."0.5.0"."regex"}" deps)
-      (crates."slog"."${deps."slog_envlogger"."0.5.0"."slog"}" deps)
-      (crates."slog_stdlog"."${deps."slog_envlogger"."0.5.0"."slog_stdlog"}" deps)
-      (crates."slog_term"."${deps."slog_envlogger"."0.5.0"."slog_term"}" deps)
-    ]);
-  };
-  features_.slog_envlogger."0.5.0" = deps: f: updateFeatures f ({
-    log."${deps.slog_envlogger."0.5.0".log}".default = true;
-    regex."${deps.slog_envlogger."0.5.0".regex}".default = true;
-    slog."${deps.slog_envlogger."0.5.0".slog}".default = true;
-    slog_envlogger."0.5.0".default = (f.slog_envlogger."0.5.0".default or true);
-    slog_stdlog."${deps.slog_envlogger."0.5.0".slog_stdlog}".default = true;
-    slog_term."${deps.slog_envlogger."0.5.0".slog_term}".default = true;
-  }) [
-    (features_.log."${deps."slog_envlogger"."0.5.0"."log"}" deps)
-    (features_.regex."${deps."slog_envlogger"."0.5.0"."regex"}" deps)
-    (features_.slog."${deps."slog_envlogger"."0.5.0"."slog"}" deps)
-    (features_.slog_stdlog."${deps."slog_envlogger"."0.5.0"."slog_stdlog"}" deps)
-    (features_.slog_term."${deps."slog_envlogger"."0.5.0"."slog_term"}" deps)
-  ];
-
-
-# end
-# slog-extra-0.1.2
-
-  crates.slog_extra."0.1.2" = deps: { features?(features_.slog_extra."0.1.2" deps {}) }: buildRustCrate {
-    crateName = "slog-extra";
-    version = "0.1.2";
-    description = "Standard slog-rs extensions";
-    authors = [ "Dawid Ciężarkiewicz <dpc@dpc.pw>" ];
-    sha256 = "0jrw0xcc81wwcl59xx9qglfcv5l3ad5kbpcyp6ygk94p9kxfrhyj";
-    libPath = "lib.rs";
-    dependencies = mapFeatures features ([
-      (crates."slog"."${deps."slog_extra"."0.1.2"."slog"}" deps)
-      (crates."thread_local"."${deps."slog_extra"."0.1.2"."thread_local"}" deps)
-    ]);
-  };
-  features_.slog_extra."0.1.2" = deps: f: updateFeatures f ({
-    slog."${deps.slog_extra."0.1.2".slog}".default = true;
-    slog_extra."0.1.2".default = (f.slog_extra."0.1.2".default or true);
-    thread_local."${deps.slog_extra."0.1.2".thread_local}".default = true;
-  }) [
-    (features_.slog."${deps."slog_extra"."0.1.2"."slog"}" deps)
-    (features_.thread_local."${deps."slog_extra"."0.1.2"."thread_local"}" deps)
-  ];
-
-
-# end
-# slog-stdlog-1.1.0
-
-  crates.slog_stdlog."1.1.0" = deps: { features?(features_.slog_stdlog."1.1.0" deps {}) }: buildRustCrate {
-    crateName = "slog-stdlog";
-    version = "1.1.0";
-    description = "Standard Rust log crate adapter to slog-rs";
-    authors = [ "Dawid Ciężarkiewicz <dpc@dpc.pw>" ];
-    sha256 = "0ig4mjixr4y3dn3s53rlnrpplwkqb8b0z2zkaiiiwyv7nhjxdg46";
-    libPath = "lib.rs";
-    dependencies = mapFeatures features ([
-      (crates."crossbeam"."${deps."slog_stdlog"."1.1.0"."crossbeam"}" deps)
-      (crates."lazy_static"."${deps."slog_stdlog"."1.1.0"."lazy_static"}" deps)
-      (crates."log"."${deps."slog_stdlog"."1.1.0"."log"}" deps)
-      (crates."slog"."${deps."slog_stdlog"."1.1.0"."slog"}" deps)
-      (crates."slog_term"."${deps."slog_stdlog"."1.1.0"."slog_term"}" deps)
-    ]);
-  };
-  features_.slog_stdlog."1.1.0" = deps: f: updateFeatures f ({
-    crossbeam."${deps.slog_stdlog."1.1.0".crossbeam}".default = true;
-    lazy_static."${deps.slog_stdlog."1.1.0".lazy_static}".default = true;
-    log."${deps.slog_stdlog."1.1.0".log}".default = true;
-    slog."${deps.slog_stdlog."1.1.0".slog}".default = true;
-    slog_stdlog."1.1.0".default = (f.slog_stdlog."1.1.0".default or true);
-    slog_term."${deps.slog_stdlog."1.1.0".slog_term}".default = true;
-  }) [
-    (features_.crossbeam."${deps."slog_stdlog"."1.1.0"."crossbeam"}" deps)
-    (features_.lazy_static."${deps."slog_stdlog"."1.1.0"."lazy_static"}" deps)
-    (features_.log."${deps."slog_stdlog"."1.1.0"."log"}" deps)
-    (features_.slog."${deps."slog_stdlog"."1.1.0"."slog"}" deps)
-    (features_.slog_term."${deps."slog_stdlog"."1.1.0"."slog_term"}" deps)
-  ];
-
-
-# end
-# slog-stream-1.2.1
-
-  crates.slog_stream."1.2.1" = deps: { features?(features_.slog_stream."1.2.1" deps {}) }: buildRustCrate {
-    crateName = "slog-stream";
-    version = "1.2.1";
-    description = "`io::Write` streamer for slog-rs";
-    authors = [ "Dawid Ciężarkiewicz <dpc@dpc.pw>" ];
-    sha256 = "03dwzbydaamfzjpr16gm065i696lk86gqcpspv5qaqyv938fm2yj";
-    libPath = "lib.rs";
-    dependencies = mapFeatures features ([
-      (crates."slog"."${deps."slog_stream"."1.2.1"."slog"}" deps)
-      (crates."slog_extra"."${deps."slog_stream"."1.2.1"."slog_extra"}" deps)
-      (crates."thread_local"."${deps."slog_stream"."1.2.1"."thread_local"}" deps)
-    ]);
-  };
-  features_.slog_stream."1.2.1" = deps: f: updateFeatures f ({
-    slog."${deps.slog_stream."1.2.1".slog}".default = true;
-    slog_extra."${deps.slog_stream."1.2.1".slog_extra}".default = true;
-    slog_stream."1.2.1".default = (f.slog_stream."1.2.1".default or true);
-    thread_local."${deps.slog_stream."1.2.1".thread_local}".default = true;
-  }) [
-    (features_.slog."${deps."slog_stream"."1.2.1"."slog"}" deps)
-    (features_.slog_extra."${deps."slog_stream"."1.2.1"."slog_extra"}" deps)
-    (features_.thread_local."${deps."slog_stream"."1.2.1"."thread_local"}" deps)
-  ];
-
-
-# end
-# slog-term-1.5.0
-
-  crates.slog_term."1.5.0" = deps: { features?(features_.slog_term."1.5.0" deps {}) }: buildRustCrate {
-    crateName = "slog-term";
-    version = "1.5.0";
-    description = "Unix terminal drain and formatter for slog-rs";
-    authors = [ "Dawid Ciężarkiewicz <dpc@dpc.pw>" ];
-    sha256 = "0zq2kyvm7jhqj6sc09w540wqfrrpa46yxf9sgzq7jqpkr66wsiar";
-    libPath = "lib.rs";
-    dependencies = mapFeatures features ([
-      (crates."chrono"."${deps."slog_term"."1.5.0"."chrono"}" deps)
-      (crates."isatty"."${deps."slog_term"."1.5.0"."isatty"}" deps)
-      (crates."slog"."${deps."slog_term"."1.5.0"."slog"}" deps)
-      (crates."slog_stream"."${deps."slog_term"."1.5.0"."slog_stream"}" deps)
-      (crates."thread_local"."${deps."slog_term"."1.5.0"."thread_local"}" deps)
-    ]);
-  };
-  features_.slog_term."1.5.0" = deps: f: updateFeatures f ({
-    chrono."${deps.slog_term."1.5.0".chrono}".default = true;
-    isatty."${deps.slog_term."1.5.0".isatty}".default = true;
-    slog."${deps.slog_term."1.5.0".slog}".default = true;
-    slog_stream."${deps.slog_term."1.5.0".slog_stream}".default = true;
-    slog_term."1.5.0".default = (f.slog_term."1.5.0".default or true);
-    thread_local."${deps.slog_term."1.5.0".thread_local}".default = true;
-  }) [
-    (features_.chrono."${deps."slog_term"."1.5.0"."chrono"}" deps)
-    (features_.isatty."${deps."slog_term"."1.5.0"."isatty"}" deps)
-    (features_.slog."${deps."slog_term"."1.5.0"."slog"}" deps)
-    (features_.slog_stream."${deps."slog_term"."1.5.0"."slog_stream"}" deps)
-    (features_.thread_local."${deps."slog_term"."1.5.0"."thread_local"}" deps)
-  ];
-
-
-# end
-# smallvec-0.6.7
-
-  crates.smallvec."0.6.7" = deps: { features?(features_.smallvec."0.6.7" deps {}) }: buildRustCrate {
-    crateName = "smallvec";
-    version = "0.6.7";
-    description = "'Small vector' optimization: store up to a small number of items on the stack";
-    authors = [ "Simon Sapin <simon.sapin@exyr.org>" ];
-    sha256 = "08ql2yi7ry08cqjl9n6vpb6x6zgqzwllzzk9pxj1143xwg503qcx";
-    libPath = "lib.rs";
-    dependencies = mapFeatures features ([
-      (crates."unreachable"."${deps."smallvec"."0.6.7"."unreachable"}" deps)
-    ]);
-    features = mkFeatures (features."smallvec"."0.6.7" or {});
-  };
-  features_.smallvec."0.6.7" = deps: f: updateFeatures f (rec {
-    smallvec = fold recursiveUpdate {} [
-      { "0.6.7"."std" =
-        (f.smallvec."0.6.7"."std" or false) ||
-        (f.smallvec."0.6.7".default or false) ||
-        (smallvec."0.6.7"."default" or false); }
-      { "0.6.7".default = (f.smallvec."0.6.7".default or true); }
-    ];
-    unreachable."${deps.smallvec."0.6.7".unreachable}".default = true;
-  }) [
-    (features_.unreachable."${deps."smallvec"."0.6.7"."unreachable"}" deps)
-  ];
-
-
-# end
-# stable_deref_trait-1.1.1
-
-  crates.stable_deref_trait."1.1.1" = deps: { features?(features_.stable_deref_trait."1.1.1" deps {}) }: buildRustCrate {
-    crateName = "stable_deref_trait";
-    version = "1.1.1";
-    description = "An unsafe marker trait for types like Box and Rc that dereference to a stable address even when moved, and hence can be used with libraries such as owning_ref and rental.\n";
-    authors = [ "Robert Grosse <n210241048576@gmail.com>" ];
-    sha256 = "1xy9slzslrzr31nlnw52sl1d820b09y61b7f13lqgsn8n7y0l4g8";
-    features = mkFeatures (features."stable_deref_trait"."1.1.1" or {});
-  };
-  features_.stable_deref_trait."1.1.1" = deps: f: updateFeatures f (rec {
-    stable_deref_trait = fold recursiveUpdate {} [
-      { "1.1.1"."std" =
-        (f.stable_deref_trait."1.1.1"."std" or false) ||
-        (f.stable_deref_trait."1.1.1".default or false) ||
-        (stable_deref_trait."1.1.1"."default" or false); }
-      { "1.1.1".default = (f.stable_deref_trait."1.1.1".default or true); }
-    ];
-  }) [];
-
-
-# end
-# string-0.1.2
-
-  crates.string."0.1.2" = deps: { features?(features_.string."0.1.2" deps {}) }: buildRustCrate {
-    crateName = "string";
-    version = "0.1.2";
-    description = "A UTF-8 encoded string with configurable byte storage.";
-    authors = [ "Carl Lerche <me@carllerche.com>" ];
-    sha256 = "1120qvf02aydqj0k3kpr8d7zybq0y5arnmgmfsdw75r8qwz75wc6";
-  };
-  features_.string."0.1.2" = deps: f: updateFeatures f ({
-    string."0.1.2".default = (f.string."0.1.2".default or true);
-  }) [];
-
-
-# end
-# strsim-0.6.0
-
-  crates.strsim."0.6.0" = deps: { features?(features_.strsim."0.6.0" deps {}) }: buildRustCrate {
-    crateName = "strsim";
-    version = "0.6.0";
-    description = "Implementations of string similarity metrics.\nIncludes Hamming, Levenshtein, Damerau-Levenshtein, Jaro, and Jaro-Winkler.\n";
-    authors = [ "Danny Guo <dannyguo91@gmail.com>" ];
-    sha256 = "1lz85l6y68hr62lv4baww29yy7g8pg20dlr0lbaswxmmcb0wl7gd";
-  };
-  features_.strsim."0.6.0" = deps: f: updateFeatures f ({
-    strsim."0.6.0".default = (f.strsim."0.6.0".default or true);
-  }) [];
-
-
-# end
-# syn-0.11.11
-
-  crates.syn."0.11.11" = deps: { features?(features_.syn."0.11.11" deps {}) }: buildRustCrate {
-    crateName = "syn";
-    version = "0.11.11";
-    description = "Nom parser for Rust source code";
-    authors = [ "David Tolnay <dtolnay@gmail.com>" ];
-    sha256 = "0yw8ng7x1dn5a6ykg0ib49y7r9nhzgpiq2989rqdp7rdz3n85502";
-    dependencies = mapFeatures features ([
-    ]
-      ++ (if features.syn."0.11.11".quote or false then [ (crates.quote."${deps."syn"."0.11.11".quote}" deps) ] else [])
-      ++ (if features.syn."0.11.11".synom or false then [ (crates.synom."${deps."syn"."0.11.11".synom}" deps) ] else [])
-      ++ (if features.syn."0.11.11".unicode-xid or false then [ (crates.unicode_xid."${deps."syn"."0.11.11".unicode_xid}" deps) ] else []));
-    features = mkFeatures (features."syn"."0.11.11" or {});
-  };
-  features_.syn."0.11.11" = deps: f: updateFeatures f (rec {
-    quote."${deps.syn."0.11.11".quote}".default = true;
-    syn = fold recursiveUpdate {} [
-      { "0.11.11"."parsing" =
-        (f.syn."0.11.11"."parsing" or false) ||
-        (f.syn."0.11.11".default or false) ||
-        (syn."0.11.11"."default" or false); }
-      { "0.11.11"."printing" =
-        (f.syn."0.11.11"."printing" or false) ||
-        (f.syn."0.11.11".default or false) ||
-        (syn."0.11.11"."default" or false); }
-      { "0.11.11"."quote" =
-        (f.syn."0.11.11"."quote" or false) ||
-        (f.syn."0.11.11".printing or false) ||
-        (syn."0.11.11"."printing" or false); }
-      { "0.11.11"."synom" =
-        (f.syn."0.11.11"."synom" or false) ||
-        (f.syn."0.11.11".parsing or false) ||
-        (syn."0.11.11"."parsing" or false); }
-      { "0.11.11"."unicode-xid" =
-        (f.syn."0.11.11"."unicode-xid" or false) ||
-        (f.syn."0.11.11".parsing or false) ||
-        (syn."0.11.11"."parsing" or false); }
-      { "0.11.11".default = (f.syn."0.11.11".default or true); }
-    ];
-    synom."${deps.syn."0.11.11".synom}".default = true;
-    unicode_xid."${deps.syn."0.11.11".unicode_xid}".default = true;
-  }) [
-    (features_.quote."${deps."syn"."0.11.11"."quote"}" deps)
-    (features_.synom."${deps."syn"."0.11.11"."synom"}" deps)
-    (features_.unicode_xid."${deps."syn"."0.11.11"."unicode_xid"}" deps)
-  ];
-
-
-# end
-# synom-0.11.3
-
-  crates.synom."0.11.3" = deps: { features?(features_.synom."0.11.3" deps {}) }: buildRustCrate {
-    crateName = "synom";
-    version = "0.11.3";
-    description = "Stripped-down Nom parser used by Syn";
-    authors = [ "David Tolnay <dtolnay@gmail.com>" ];
-    sha256 = "1l6d1s9qjfp6ng2s2z8219igvlv7gyk8gby97sdykqc1r93d8rhc";
-    dependencies = mapFeatures features ([
-      (crates."unicode_xid"."${deps."synom"."0.11.3"."unicode_xid"}" deps)
-    ]);
-  };
-  features_.synom."0.11.3" = deps: f: updateFeatures f ({
-    synom."0.11.3".default = (f.synom."0.11.3".default or true);
-    unicode_xid."${deps.synom."0.11.3".unicode_xid}".default = true;
-  }) [
-    (features_.unicode_xid."${deps."synom"."0.11.3"."unicode_xid"}" deps)
-  ];
-
-
-# end
-# tar-0.4.13
-
-  crates.tar."0.4.13" = deps: { features?(features_.tar."0.4.13" deps {}) }: buildRustCrate {
-    crateName = "tar";
-    version = "0.4.13";
-    description = "A Rust implementation of a TAR file reader and writer. This library does not\ncurrently handle compression, but it is abstract over all I/O readers and\nwriters. Additionally, great lengths are taken to ensure that the entire\ncontents are never required to be entirely resident in memory all at once.\n";
-    authors = [ "Alex Crichton <alex@alexcrichton.com>" ];
-    sha256 = "1m425d07h0i6h2vbpxnh067zmc16l9yr9bii17zxw4z2inkfyfc4";
-    dependencies = mapFeatures features ([
-      (crates."filetime"."${deps."tar"."0.4.13"."filetime"}" deps)
-      (crates."libc"."${deps."tar"."0.4.13"."libc"}" deps)
-    ])
-      ++ (if (kernel == "linux" || kernel == "darwin") then mapFeatures features ([
-    ]
-      ++ (if features.tar."0.4.13".xattr or false then [ (crates.xattr."${deps."tar"."0.4.13".xattr}" deps) ] else [])) else []);
-    features = mkFeatures (features."tar"."0.4.13" or {});
-  };
-  features_.tar."0.4.13" = deps: f: updateFeatures f (rec {
-    filetime."${deps.tar."0.4.13".filetime}".default = true;
-    libc."${deps.tar."0.4.13".libc}".default = true;
-    tar = fold recursiveUpdate {} [
-      { "0.4.13"."xattr" =
-        (f.tar."0.4.13"."xattr" or false) ||
-        (f.tar."0.4.13".default or false) ||
-        (tar."0.4.13"."default" or false); }
-      { "0.4.13".default = (f.tar."0.4.13".default or true); }
-    ];
-    xattr."${deps.tar."0.4.13".xattr}".default = true;
-  }) [
-    (features_.filetime."${deps."tar"."0.4.13"."filetime"}" deps)
-    (features_.libc."${deps."tar"."0.4.13"."libc"}" deps)
-    (features_.xattr."${deps."tar"."0.4.13"."xattr"}" deps)
-  ];
-
-
-# end
-# tempfile-3.0.5
-
-  crates.tempfile."3.0.5" = deps: { features?(features_.tempfile."3.0.5" deps {}) }: buildRustCrate {
-    crateName = "tempfile";
-    version = "3.0.5";
-    description = "A library for managing temporary files and directories.\n";
-    authors = [ "Steven Allen <steven@stebalien.com>" "The Rust Project Developers" "Ashley Mannix <ashleymannix@live.com.au>" "Jason White <jasonaw0@gmail.com>" ];
-    sha256 = "11xc89br78ypk4g27v51lm2baz57gp6v555i3sxhrj9qlas2iqfl";
-    dependencies = mapFeatures features ([
-      (crates."cfg_if"."${deps."tempfile"."3.0.5"."cfg_if"}" deps)
-      (crates."rand"."${deps."tempfile"."3.0.5"."rand"}" deps)
-      (crates."remove_dir_all"."${deps."tempfile"."3.0.5"."remove_dir_all"}" deps)
-    ])
-      ++ (if kernel == "redox" then mapFeatures features ([
-      (crates."redox_syscall"."${deps."tempfile"."3.0.5"."redox_syscall"}" deps)
-    ]) else [])
-      ++ (if (kernel == "linux" || kernel == "darwin") then mapFeatures features ([
-      (crates."libc"."${deps."tempfile"."3.0.5"."libc"}" deps)
-    ]) else [])
-      ++ (if kernel == "windows" then mapFeatures features ([
-      (crates."winapi"."${deps."tempfile"."3.0.5"."winapi"}" deps)
-    ]) else []);
-  };
-  features_.tempfile."3.0.5" = deps: f: updateFeatures f ({
-    cfg_if."${deps.tempfile."3.0.5".cfg_if}".default = true;
-    libc."${deps.tempfile."3.0.5".libc}".default = true;
-    rand."${deps.tempfile."3.0.5".rand}".default = true;
-    redox_syscall."${deps.tempfile."3.0.5".redox_syscall}".default = true;
-    remove_dir_all."${deps.tempfile."3.0.5".remove_dir_all}".default = true;
-    tempfile."3.0.5".default = (f.tempfile."3.0.5".default or true);
-    winapi = fold recursiveUpdate {} [
-      { "${deps.tempfile."3.0.5".winapi}"."fileapi" = true; }
-      { "${deps.tempfile."3.0.5".winapi}"."handleapi" = true; }
-      { "${deps.tempfile."3.0.5".winapi}"."winbase" = true; }
-      { "${deps.tempfile."3.0.5".winapi}".default = true; }
-    ];
-  }) [
-    (features_.cfg_if."${deps."tempfile"."3.0.5"."cfg_if"}" deps)
-    (features_.rand."${deps."tempfile"."3.0.5"."rand"}" deps)
-    (features_.remove_dir_all."${deps."tempfile"."3.0.5"."remove_dir_all"}" deps)
-    (features_.redox_syscall."${deps."tempfile"."3.0.5"."redox_syscall"}" deps)
-    (features_.libc."${deps."tempfile"."3.0.5"."libc"}" deps)
-    (features_.winapi."${deps."tempfile"."3.0.5"."winapi"}" deps)
-  ];
-
-
-# end
-# termion-1.5.1
-
-  crates.termion."1.5.1" = deps: { features?(features_.termion."1.5.1" deps {}) }: buildRustCrate {
-    crateName = "termion";
-    version = "1.5.1";
-    description = "A bindless library for manipulating terminals.";
-    authors = [ "ticki <Ticki@users.noreply.github.com>" "gycos <alexandre.bury@gmail.com>" "IGI-111 <igi-111@protonmail.com>" ];
-    sha256 = "02gq4vd8iws1f3gjrgrgpajsk2bk43nds5acbbb4s8dvrdvr8nf1";
-    dependencies = (if !(kernel == "redox") then mapFeatures features ([
-      (crates."libc"."${deps."termion"."1.5.1"."libc"}" deps)
-    ]) else [])
-      ++ (if kernel == "redox" then mapFeatures features ([
-      (crates."redox_syscall"."${deps."termion"."1.5.1"."redox_syscall"}" deps)
-      (crates."redox_termios"."${deps."termion"."1.5.1"."redox_termios"}" deps)
-    ]) else []);
-  };
-  features_.termion."1.5.1" = deps: f: updateFeatures f ({
-    libc."${deps.termion."1.5.1".libc}".default = true;
-    redox_syscall."${deps.termion."1.5.1".redox_syscall}".default = true;
-    redox_termios."${deps.termion."1.5.1".redox_termios}".default = true;
-    termion."1.5.1".default = (f.termion."1.5.1".default or true);
-  }) [
-    (features_.libc."${deps."termion"."1.5.1"."libc"}" deps)
-    (features_.redox_syscall."${deps."termion"."1.5.1"."redox_syscall"}" deps)
-    (features_.redox_termios."${deps."termion"."1.5.1"."redox_termios"}" deps)
-  ];
-
-
-# end
-# textwrap-0.9.0
-
-  crates.textwrap."0.9.0" = deps: { features?(features_.textwrap."0.9.0" deps {}) }: buildRustCrate {
-    crateName = "textwrap";
-    version = "0.9.0";
-    description = "Textwrap is a small library for word wrapping, indenting, and\ndedenting strings.\n\nYou can use it to format strings (such as help and error messages) for\ndisplay in commandline applications. It is designed to be efficient\nand handle Unicode characters correctly.\n";
-    authors = [ "Martin Geisler <martin@geisler.net>" ];
-    sha256 = "18jg79ndjlwndz01mlbh82kkr2arqm658yn5kwp65l5n1hz8w4yb";
-    dependencies = mapFeatures features ([
-      (crates."unicode_width"."${deps."textwrap"."0.9.0"."unicode_width"}" deps)
-    ]);
-  };
-  features_.textwrap."0.9.0" = deps: f: updateFeatures f ({
-    textwrap."0.9.0".default = (f.textwrap."0.9.0".default or true);
-    unicode_width."${deps.textwrap."0.9.0".unicode_width}".default = true;
-  }) [
-    (features_.unicode_width."${deps."textwrap"."0.9.0"."unicode_width"}" deps)
-  ];
-
-
-# end
-# thread-id-2.0.0
-
-  crates.thread_id."2.0.0" = deps: { features?(features_.thread_id."2.0.0" deps {}) }: buildRustCrate {
-    crateName = "thread-id";
-    version = "2.0.0";
-    description = "Get a unique thread ID";
-    authors = [ "Ruud van Asseldonk <dev@veniogames.com>" ];
-    sha256 = "06i3c8ckn97i5rp16civ2vpqbknlkx66dkrl070iw60nawi0kjc3";
-    dependencies = mapFeatures features ([
-      (crates."kernel32_sys"."${deps."thread_id"."2.0.0"."kernel32_sys"}" deps)
-      (crates."libc"."${deps."thread_id"."2.0.0"."libc"}" deps)
-    ]);
-  };
-  features_.thread_id."2.0.0" = deps: f: updateFeatures f ({
-    kernel32_sys."${deps.thread_id."2.0.0".kernel32_sys}".default = true;
-    libc."${deps.thread_id."2.0.0".libc}".default = true;
-    thread_id."2.0.0".default = (f.thread_id."2.0.0".default or true);
-  }) [
-    (features_.kernel32_sys."${deps."thread_id"."2.0.0"."kernel32_sys"}" deps)
-    (features_.libc."${deps."thread_id"."2.0.0"."libc"}" deps)
-  ];
-
-
-# end
-# thread_local-0.2.7
-
-  crates.thread_local."0.2.7" = deps: { features?(features_.thread_local."0.2.7" deps {}) }: buildRustCrate {
-    crateName = "thread_local";
-    version = "0.2.7";
-    description = "Per-object thread-local storage";
-    authors = [ "Amanieu d'Antras <amanieu@gmail.com>" ];
-    sha256 = "19p0zrs24rdwjvpi10jig5ms3sxj00pv8shkr9cpddri8cdghqp7";
-    dependencies = mapFeatures features ([
-      (crates."thread_id"."${deps."thread_local"."0.2.7"."thread_id"}" deps)
-    ]);
-  };
-  features_.thread_local."0.2.7" = deps: f: updateFeatures f ({
-    thread_id."${deps.thread_local."0.2.7".thread_id}".default = true;
-    thread_local."0.2.7".default = (f.thread_local."0.2.7".default or true);
-  }) [
-    (features_.thread_id."${deps."thread_local"."0.2.7"."thread_id"}" deps)
-  ];
-
-
-# end
-# thread_local-0.3.4
-
-  crates.thread_local."0.3.4" = deps: { features?(features_.thread_local."0.3.4" deps {}) }: buildRustCrate {
-    crateName = "thread_local";
-    version = "0.3.4";
-    description = "Per-object thread-local storage";
-    authors = [ "Amanieu d'Antras <amanieu@gmail.com>" ];
-    sha256 = "1y6cwyhhx2nkz4b3dziwhqdvgq830z8wjp32b40pjd8r0hxqv2jr";
-    dependencies = mapFeatures features ([
-      (crates."lazy_static"."${deps."thread_local"."0.3.4"."lazy_static"}" deps)
-      (crates."unreachable"."${deps."thread_local"."0.3.4"."unreachable"}" deps)
-    ]);
-  };
-  features_.thread_local."0.3.4" = deps: f: updateFeatures f ({
-    lazy_static."${deps.thread_local."0.3.4".lazy_static}".default = true;
-    thread_local."0.3.4".default = (f.thread_local."0.3.4".default or true);
-    unreachable."${deps.thread_local."0.3.4".unreachable}".default = true;
-  }) [
-    (features_.lazy_static."${deps."thread_local"."0.3.4"."lazy_static"}" deps)
-    (features_.unreachable."${deps."thread_local"."0.3.4"."unreachable"}" deps)
-  ];
-
-
-# end
-# time-0.1.38
-
-  crates.time."0.1.38" = deps: { features?(features_.time."0.1.38" deps {}) }: buildRustCrate {
-    crateName = "time";
-    version = "0.1.38";
-    description = "Utilities for working with time-related functions in Rust.\n";
-    authors = [ "The Rust Project Developers" ];
-    sha256 = "1ws283vvz7c6jfiwn53rmc6kybapr4pjaahfxxrz232b0qzw7gcp";
-    dependencies = mapFeatures features ([
-      (crates."libc"."${deps."time"."0.1.38"."libc"}" deps)
-    ])
-      ++ (if kernel == "redox" then mapFeatures features ([
-      (crates."redox_syscall"."${deps."time"."0.1.38"."redox_syscall"}" deps)
-    ]) else [])
-      ++ (if kernel == "windows" then mapFeatures features ([
-      (crates."kernel32_sys"."${deps."time"."0.1.38"."kernel32_sys"}" deps)
-      (crates."winapi"."${deps."time"."0.1.38"."winapi"}" deps)
-    ]) else []);
-  };
-  features_.time."0.1.38" = deps: f: updateFeatures f ({
-    kernel32_sys."${deps.time."0.1.38".kernel32_sys}".default = true;
-    libc."${deps.time."0.1.38".libc}".default = true;
-    redox_syscall."${deps.time."0.1.38".redox_syscall}".default = true;
-    time."0.1.38".default = (f.time."0.1.38".default or true);
-    winapi."${deps.time."0.1.38".winapi}".default = true;
-  }) [
-    (features_.libc."${deps."time"."0.1.38"."libc"}" deps)
-    (features_.redox_syscall."${deps."time"."0.1.38"."redox_syscall"}" deps)
-    (features_.kernel32_sys."${deps."time"."0.1.38"."kernel32_sys"}" deps)
-    (features_.winapi."${deps."time"."0.1.38"."winapi"}" deps)
-  ];
-
-
-# end
-# tokio-0.1.7
-
-  crates.tokio."0.1.7" = deps: { features?(features_.tokio."0.1.7" deps {}) }: buildRustCrate {
-    crateName = "tokio";
-    version = "0.1.7";
-    description = "An event-driven, non-blocking I/O platform for writing asynchronous I/O\nbacked applications.\n";
-    authors = [ "Carl Lerche <me@carllerche.com>" ];
-    sha256 = "0d5fj90wk05m5vbd924irg1pl1d4fn86jjw5napzanh6vbwsnr66";
-    dependencies = mapFeatures features ([
-      (crates."futures"."${deps."tokio"."0.1.7"."futures"}" deps)
-      (crates."mio"."${deps."tokio"."0.1.7"."mio"}" deps)
-      (crates."tokio_executor"."${deps."tokio"."0.1.7"."tokio_executor"}" deps)
-      (crates."tokio_fs"."${deps."tokio"."0.1.7"."tokio_fs"}" deps)
-      (crates."tokio_io"."${deps."tokio"."0.1.7"."tokio_io"}" deps)
-      (crates."tokio_reactor"."${deps."tokio"."0.1.7"."tokio_reactor"}" deps)
-      (crates."tokio_tcp"."${deps."tokio"."0.1.7"."tokio_tcp"}" deps)
-      (crates."tokio_threadpool"."${deps."tokio"."0.1.7"."tokio_threadpool"}" deps)
-      (crates."tokio_timer"."${deps."tokio"."0.1.7"."tokio_timer"}" deps)
-      (crates."tokio_udp"."${deps."tokio"."0.1.7"."tokio_udp"}" deps)
-    ]);
-  };
-  features_.tokio."0.1.7" = deps: f: updateFeatures f ({
-    futures."${deps.tokio."0.1.7".futures}".default = true;
-    mio."${deps.tokio."0.1.7".mio}".default = true;
-    tokio."0.1.7".default = (f.tokio."0.1.7".default or true);
-    tokio_executor."${deps.tokio."0.1.7".tokio_executor}".default = true;
-    tokio_fs."${deps.tokio."0.1.7".tokio_fs}".default = true;
-    tokio_io."${deps.tokio."0.1.7".tokio_io}".default = true;
-    tokio_reactor."${deps.tokio."0.1.7".tokio_reactor}".default = true;
-    tokio_tcp."${deps.tokio."0.1.7".tokio_tcp}".default = true;
-    tokio_threadpool."${deps.tokio."0.1.7".tokio_threadpool}".default = true;
-    tokio_timer."${deps.tokio."0.1.7".tokio_timer}".default = true;
-    tokio_udp."${deps.tokio."0.1.7".tokio_udp}".default = true;
-  }) [
-    (features_.futures."${deps."tokio"."0.1.7"."futures"}" deps)
-    (features_.mio."${deps."tokio"."0.1.7"."mio"}" deps)
-    (features_.tokio_executor."${deps."tokio"."0.1.7"."tokio_executor"}" deps)
-    (features_.tokio_fs."${deps."tokio"."0.1.7"."tokio_fs"}" deps)
-    (features_.tokio_io."${deps."tokio"."0.1.7"."tokio_io"}" deps)
-    (features_.tokio_reactor."${deps."tokio"."0.1.7"."tokio_reactor"}" deps)
-    (features_.tokio_tcp."${deps."tokio"."0.1.7"."tokio_tcp"}" deps)
-    (features_.tokio_threadpool."${deps."tokio"."0.1.7"."tokio_threadpool"}" deps)
-    (features_.tokio_timer."${deps."tokio"."0.1.7"."tokio_timer"}" deps)
-    (features_.tokio_udp."${deps."tokio"."0.1.7"."tokio_udp"}" deps)
-  ];
-
-
-# end
-# tokio-codec-0.1.1
-
-  crates.tokio_codec."0.1.1" = deps: { features?(features_.tokio_codec."0.1.1" deps {}) }: buildRustCrate {
-    crateName = "tokio-codec";
-    version = "0.1.1";
-    description = "Utilities for encoding and decoding frames.\n";
-    authors = [ "Carl Lerche <me@carllerche.com>" "Bryan Burgers <bryan@burgers.io>" ];
-    sha256 = "0jc9lik540zyj4chbygg1rjh37m3zax8pd4bwcrwjmi1v56qwi4h";
-    dependencies = mapFeatures features ([
-      (crates."bytes"."${deps."tokio_codec"."0.1.1"."bytes"}" deps)
-      (crates."futures"."${deps."tokio_codec"."0.1.1"."futures"}" deps)
-      (crates."tokio_io"."${deps."tokio_codec"."0.1.1"."tokio_io"}" deps)
-    ]);
-  };
-  features_.tokio_codec."0.1.1" = deps: f: updateFeatures f ({
-    bytes."${deps.tokio_codec."0.1.1".bytes}".default = true;
-    futures."${deps.tokio_codec."0.1.1".futures}".default = true;
-    tokio_codec."0.1.1".default = (f.tokio_codec."0.1.1".default or true);
-    tokio_io."${deps.tokio_codec."0.1.1".tokio_io}".default = true;
-  }) [
-    (features_.bytes."${deps."tokio_codec"."0.1.1"."bytes"}" deps)
-    (features_.futures."${deps."tokio_codec"."0.1.1"."futures"}" deps)
-    (features_.tokio_io."${deps."tokio_codec"."0.1.1"."tokio_io"}" deps)
-  ];
-
-
-# end
-# tokio-executor-0.1.5
-
-  crates.tokio_executor."0.1.5" = deps: { features?(features_.tokio_executor."0.1.5" deps {}) }: buildRustCrate {
-    crateName = "tokio-executor";
-    version = "0.1.5";
-    description = "Future execution primitives\n";
-    authors = [ "Carl Lerche <me@carllerche.com>" ];
-    sha256 = "15j2ybs8w38gncgbxkvp2qsp6wl62ibi3rns0vlwggx7svmx4bf3";
-    dependencies = mapFeatures features ([
-      (crates."futures"."${deps."tokio_executor"."0.1.5"."futures"}" deps)
-    ]);
-  };
-  features_.tokio_executor."0.1.5" = deps: f: updateFeatures f ({
-    futures."${deps.tokio_executor."0.1.5".futures}".default = true;
-    tokio_executor."0.1.5".default = (f.tokio_executor."0.1.5".default or true);
-  }) [
-    (features_.futures."${deps."tokio_executor"."0.1.5"."futures"}" deps)
-  ];
-
-
-# end
-# tokio-fs-0.1.4
-
-  crates.tokio_fs."0.1.4" = deps: { features?(features_.tokio_fs."0.1.4" deps {}) }: buildRustCrate {
-    crateName = "tokio-fs";
-    version = "0.1.4";
-    description = "Filesystem API for Tokio.\n";
-    authors = [ "Carl Lerche <me@carllerche.com>" ];
-    sha256 = "05bpc1p1apb4jfw18i84agwwar57zn07d7smqvslpzagd9b3sd31";
-    dependencies = mapFeatures features ([
-      (crates."futures"."${deps."tokio_fs"."0.1.4"."futures"}" deps)
-      (crates."tokio_io"."${deps."tokio_fs"."0.1.4"."tokio_io"}" deps)
-      (crates."tokio_threadpool"."${deps."tokio_fs"."0.1.4"."tokio_threadpool"}" deps)
-    ]);
-  };
-  features_.tokio_fs."0.1.4" = deps: f: updateFeatures f ({
-    futures."${deps.tokio_fs."0.1.4".futures}".default = true;
-    tokio_fs."0.1.4".default = (f.tokio_fs."0.1.4".default or true);
-    tokio_io."${deps.tokio_fs."0.1.4".tokio_io}".default = true;
-    tokio_threadpool."${deps.tokio_fs."0.1.4".tokio_threadpool}".default = true;
-  }) [
-    (features_.futures."${deps."tokio_fs"."0.1.4"."futures"}" deps)
-    (features_.tokio_io."${deps."tokio_fs"."0.1.4"."tokio_io"}" deps)
-    (features_.tokio_threadpool."${deps."tokio_fs"."0.1.4"."tokio_threadpool"}" deps)
-  ];
-
-
-# end
-# tokio-io-0.1.10
-
-  crates.tokio_io."0.1.10" = deps: { features?(features_.tokio_io."0.1.10" deps {}) }: buildRustCrate {
-    crateName = "tokio-io";
-    version = "0.1.10";
-    description = "Core I/O primitives for asynchronous I/O in Rust.\n";
-    authors = [ "Carl Lerche <me@carllerche.com>" ];
-    sha256 = "14d65rqa5rb2msgkz2xn40cavs4m7f4qyi7vnfv98v7f10l9wlay";
-    dependencies = mapFeatures features ([
-      (crates."bytes"."${deps."tokio_io"."0.1.10"."bytes"}" deps)
-      (crates."futures"."${deps."tokio_io"."0.1.10"."futures"}" deps)
-      (crates."log"."${deps."tokio_io"."0.1.10"."log"}" deps)
-    ]);
-  };
-  features_.tokio_io."0.1.10" = deps: f: updateFeatures f ({
-    bytes."${deps.tokio_io."0.1.10".bytes}".default = true;
-    futures."${deps.tokio_io."0.1.10".futures}".default = true;
-    log."${deps.tokio_io."0.1.10".log}".default = true;
-    tokio_io."0.1.10".default = (f.tokio_io."0.1.10".default or true);
-  }) [
-    (features_.bytes."${deps."tokio_io"."0.1.10"."bytes"}" deps)
-    (features_.futures."${deps."tokio_io"."0.1.10"."futures"}" deps)
-    (features_.log."${deps."tokio_io"."0.1.10"."log"}" deps)
-  ];
-
-
-# end
-# tokio-reactor-0.1.7
-
-  crates.tokio_reactor."0.1.7" = deps: { features?(features_.tokio_reactor."0.1.7" deps {}) }: buildRustCrate {
-    crateName = "tokio-reactor";
-    version = "0.1.7";
-    description = "Event loop that drives Tokio I/O resources.\n";
-    authors = [ "Carl Lerche <me@carllerche.com>" ];
-    sha256 = "1ssrc6gic43lachv7jk97jxzw609sgcsrkwi7chf96sn7nqrhj0z";
-    dependencies = mapFeatures features ([
-      (crates."crossbeam_utils"."${deps."tokio_reactor"."0.1.7"."crossbeam_utils"}" deps)
-      (crates."futures"."${deps."tokio_reactor"."0.1.7"."futures"}" deps)
-      (crates."lazy_static"."${deps."tokio_reactor"."0.1.7"."lazy_static"}" deps)
-      (crates."log"."${deps."tokio_reactor"."0.1.7"."log"}" deps)
-      (crates."mio"."${deps."tokio_reactor"."0.1.7"."mio"}" deps)
-      (crates."num_cpus"."${deps."tokio_reactor"."0.1.7"."num_cpus"}" deps)
-      (crates."parking_lot"."${deps."tokio_reactor"."0.1.7"."parking_lot"}" deps)
-      (crates."slab"."${deps."tokio_reactor"."0.1.7"."slab"}" deps)
-      (crates."tokio_executor"."${deps."tokio_reactor"."0.1.7"."tokio_executor"}" deps)
-      (crates."tokio_io"."${deps."tokio_reactor"."0.1.7"."tokio_io"}" deps)
-    ]);
-  };
-  features_.tokio_reactor."0.1.7" = deps: f: updateFeatures f ({
-    crossbeam_utils."${deps.tokio_reactor."0.1.7".crossbeam_utils}".default = true;
-    futures."${deps.tokio_reactor."0.1.7".futures}".default = true;
-    lazy_static."${deps.tokio_reactor."0.1.7".lazy_static}".default = true;
-    log."${deps.tokio_reactor."0.1.7".log}".default = true;
-    mio."${deps.tokio_reactor."0.1.7".mio}".default = true;
-    num_cpus."${deps.tokio_reactor."0.1.7".num_cpus}".default = true;
-    parking_lot."${deps.tokio_reactor."0.1.7".parking_lot}".default = true;
-    slab."${deps.tokio_reactor."0.1.7".slab}".default = true;
-    tokio_executor."${deps.tokio_reactor."0.1.7".tokio_executor}".default = true;
-    tokio_io."${deps.tokio_reactor."0.1.7".tokio_io}".default = true;
-    tokio_reactor."0.1.7".default = (f.tokio_reactor."0.1.7".default or true);
-  }) [
-    (features_.crossbeam_utils."${deps."tokio_reactor"."0.1.7"."crossbeam_utils"}" deps)
-    (features_.futures."${deps."tokio_reactor"."0.1.7"."futures"}" deps)
-    (features_.lazy_static."${deps."tokio_reactor"."0.1.7"."lazy_static"}" deps)
-    (features_.log."${deps."tokio_reactor"."0.1.7"."log"}" deps)
-    (features_.mio."${deps."tokio_reactor"."0.1.7"."mio"}" deps)
-    (features_.num_cpus."${deps."tokio_reactor"."0.1.7"."num_cpus"}" deps)
-    (features_.parking_lot."${deps."tokio_reactor"."0.1.7"."parking_lot"}" deps)
-    (features_.slab."${deps."tokio_reactor"."0.1.7"."slab"}" deps)
-    (features_.tokio_executor."${deps."tokio_reactor"."0.1.7"."tokio_executor"}" deps)
-    (features_.tokio_io."${deps."tokio_reactor"."0.1.7"."tokio_io"}" deps)
-  ];
-
-
-# end
-# tokio-tcp-0.1.2
-
-  crates.tokio_tcp."0.1.2" = deps: { features?(features_.tokio_tcp."0.1.2" deps {}) }: buildRustCrate {
-    crateName = "tokio-tcp";
-    version = "0.1.2";
-    description = "TCP bindings for tokio.\n";
-    authors = [ "Carl Lerche <me@carllerche.com>" ];
-    sha256 = "0yvfwybqnyca24aj9as8rgydamjq0wrd9xbxxkjcasvsdmsv6z1d";
-    dependencies = mapFeatures features ([
-      (crates."bytes"."${deps."tokio_tcp"."0.1.2"."bytes"}" deps)
-      (crates."futures"."${deps."tokio_tcp"."0.1.2"."futures"}" deps)
-      (crates."iovec"."${deps."tokio_tcp"."0.1.2"."iovec"}" deps)
-      (crates."mio"."${deps."tokio_tcp"."0.1.2"."mio"}" deps)
-      (crates."tokio_io"."${deps."tokio_tcp"."0.1.2"."tokio_io"}" deps)
-      (crates."tokio_reactor"."${deps."tokio_tcp"."0.1.2"."tokio_reactor"}" deps)
-    ]);
-  };
-  features_.tokio_tcp."0.1.2" = deps: f: updateFeatures f ({
-    bytes."${deps.tokio_tcp."0.1.2".bytes}".default = true;
-    futures."${deps.tokio_tcp."0.1.2".futures}".default = true;
-    iovec."${deps.tokio_tcp."0.1.2".iovec}".default = true;
-    mio."${deps.tokio_tcp."0.1.2".mio}".default = true;
-    tokio_io."${deps.tokio_tcp."0.1.2".tokio_io}".default = true;
-    tokio_reactor."${deps.tokio_tcp."0.1.2".tokio_reactor}".default = true;
-    tokio_tcp."0.1.2".default = (f.tokio_tcp."0.1.2".default or true);
-  }) [
-    (features_.bytes."${deps."tokio_tcp"."0.1.2"."bytes"}" deps)
-    (features_.futures."${deps."tokio_tcp"."0.1.2"."futures"}" deps)
-    (features_.iovec."${deps."tokio_tcp"."0.1.2"."iovec"}" deps)
-    (features_.mio."${deps."tokio_tcp"."0.1.2"."mio"}" deps)
-    (features_.tokio_io."${deps."tokio_tcp"."0.1.2"."tokio_io"}" deps)
-    (features_.tokio_reactor."${deps."tokio_tcp"."0.1.2"."tokio_reactor"}" deps)
-  ];
-
-
-# end
-# tokio-threadpool-0.1.9
-
-  crates.tokio_threadpool."0.1.9" = deps: { features?(features_.tokio_threadpool."0.1.9" deps {}) }: buildRustCrate {
-    crateName = "tokio-threadpool";
-    version = "0.1.9";
-    description = "A task scheduler backed by a work-stealing thread pool.\n";
-    authors = [ "Carl Lerche <me@carllerche.com>" ];
-    sha256 = "0ipr0j79mhjjsvc0ma95sj07m0aiyq6rkwgvlalqwhinivl5d39g";
-    dependencies = mapFeatures features ([
-      (crates."crossbeam_deque"."${deps."tokio_threadpool"."0.1.9"."crossbeam_deque"}" deps)
-      (crates."crossbeam_utils"."${deps."tokio_threadpool"."0.1.9"."crossbeam_utils"}" deps)
-      (crates."futures"."${deps."tokio_threadpool"."0.1.9"."futures"}" deps)
-      (crates."log"."${deps."tokio_threadpool"."0.1.9"."log"}" deps)
-      (crates."num_cpus"."${deps."tokio_threadpool"."0.1.9"."num_cpus"}" deps)
-      (crates."rand"."${deps."tokio_threadpool"."0.1.9"."rand"}" deps)
-      (crates."tokio_executor"."${deps."tokio_threadpool"."0.1.9"."tokio_executor"}" deps)
-    ]);
-  };
-  features_.tokio_threadpool."0.1.9" = deps: f: updateFeatures f ({
-    crossbeam_deque."${deps.tokio_threadpool."0.1.9".crossbeam_deque}".default = true;
-    crossbeam_utils."${deps.tokio_threadpool."0.1.9".crossbeam_utils}".default = true;
-    futures."${deps.tokio_threadpool."0.1.9".futures}".default = true;
-    log."${deps.tokio_threadpool."0.1.9".log}".default = true;
-    num_cpus."${deps.tokio_threadpool."0.1.9".num_cpus}".default = true;
-    rand."${deps.tokio_threadpool."0.1.9".rand}".default = true;
-    tokio_executor."${deps.tokio_threadpool."0.1.9".tokio_executor}".default = true;
-    tokio_threadpool."0.1.9".default = (f.tokio_threadpool."0.1.9".default or true);
-  }) [
-    (features_.crossbeam_deque."${deps."tokio_threadpool"."0.1.9"."crossbeam_deque"}" deps)
-    (features_.crossbeam_utils."${deps."tokio_threadpool"."0.1.9"."crossbeam_utils"}" deps)
-    (features_.futures."${deps."tokio_threadpool"."0.1.9"."futures"}" deps)
-    (features_.log."${deps."tokio_threadpool"."0.1.9"."log"}" deps)
-    (features_.num_cpus."${deps."tokio_threadpool"."0.1.9"."num_cpus"}" deps)
-    (features_.rand."${deps."tokio_threadpool"."0.1.9"."rand"}" deps)
-    (features_.tokio_executor."${deps."tokio_threadpool"."0.1.9"."tokio_executor"}" deps)
-  ];
-
-
-# end
-# tokio-timer-0.2.5
-
-  crates.tokio_timer."0.2.5" = deps: { features?(features_.tokio_timer."0.2.5" deps {}) }: buildRustCrate {
-    crateName = "tokio-timer";
-    version = "0.2.5";
-    description = "Timer facilities for Tokio\n";
-    authors = [ "Carl Lerche <me@carllerche.com>" ];
-    sha256 = "0jyhizvnpldkbqvqygrg0zd5zvfj9p0ywvjzf47iy632vq3qnwzm";
-    dependencies = mapFeatures features ([
-      (crates."futures"."${deps."tokio_timer"."0.2.5"."futures"}" deps)
-      (crates."tokio_executor"."${deps."tokio_timer"."0.2.5"."tokio_executor"}" deps)
-    ]);
-  };
-  features_.tokio_timer."0.2.5" = deps: f: updateFeatures f ({
-    futures."${deps.tokio_timer."0.2.5".futures}".default = true;
-    tokio_executor."${deps.tokio_timer."0.2.5".tokio_executor}".default = true;
-    tokio_timer."0.2.5".default = (f.tokio_timer."0.2.5".default or true);
-  }) [
-    (features_.futures."${deps."tokio_timer"."0.2.5"."futures"}" deps)
-    (features_.tokio_executor."${deps."tokio_timer"."0.2.5"."tokio_executor"}" deps)
-  ];
-
-
-# end
-# tokio-udp-0.1.3
-
-  crates.tokio_udp."0.1.3" = deps: { features?(features_.tokio_udp."0.1.3" deps {}) }: buildRustCrate {
-    crateName = "tokio-udp";
-    version = "0.1.3";
-    description = "UDP bindings for tokio.\n";
-    authors = [ "Carl Lerche <me@carllerche.com>" ];
-    sha256 = "1g1x499vqvzwy7xfccr32vwymlx25zpmkx8ppqgifzqwrjnncajf";
-    dependencies = mapFeatures features ([
-      (crates."bytes"."${deps."tokio_udp"."0.1.3"."bytes"}" deps)
-      (crates."futures"."${deps."tokio_udp"."0.1.3"."futures"}" deps)
-      (crates."log"."${deps."tokio_udp"."0.1.3"."log"}" deps)
-      (crates."mio"."${deps."tokio_udp"."0.1.3"."mio"}" deps)
-      (crates."tokio_codec"."${deps."tokio_udp"."0.1.3"."tokio_codec"}" deps)
-      (crates."tokio_io"."${deps."tokio_udp"."0.1.3"."tokio_io"}" deps)
-      (crates."tokio_reactor"."${deps."tokio_udp"."0.1.3"."tokio_reactor"}" deps)
-    ]);
-  };
-  features_.tokio_udp."0.1.3" = deps: f: updateFeatures f ({
-    bytes."${deps.tokio_udp."0.1.3".bytes}".default = true;
-    futures."${deps.tokio_udp."0.1.3".futures}".default = true;
-    log."${deps.tokio_udp."0.1.3".log}".default = true;
-    mio."${deps.tokio_udp."0.1.3".mio}".default = true;
-    tokio_codec."${deps.tokio_udp."0.1.3".tokio_codec}".default = true;
-    tokio_io."${deps.tokio_udp."0.1.3".tokio_io}".default = true;
-    tokio_reactor."${deps.tokio_udp."0.1.3".tokio_reactor}".default = true;
-    tokio_udp."0.1.3".default = (f.tokio_udp."0.1.3".default or true);
-  }) [
-    (features_.bytes."${deps."tokio_udp"."0.1.3"."bytes"}" deps)
-    (features_.futures."${deps."tokio_udp"."0.1.3"."futures"}" deps)
-    (features_.log."${deps."tokio_udp"."0.1.3"."log"}" deps)
-    (features_.mio."${deps."tokio_udp"."0.1.3"."mio"}" deps)
-    (features_.tokio_codec."${deps."tokio_udp"."0.1.3"."tokio_codec"}" deps)
-    (features_.tokio_io."${deps."tokio_udp"."0.1.3"."tokio_io"}" deps)
-    (features_.tokio_reactor."${deps."tokio_udp"."0.1.3"."tokio_reactor"}" deps)
-  ];
-
-
-# end
-# try-lock-0.2.2
-
-  crates.try_lock."0.2.2" = deps: { features?(features_.try_lock."0.2.2" deps {}) }: buildRustCrate {
-    crateName = "try-lock";
-    version = "0.2.2";
-    description = "A lightweight atomic lock.";
-    authors = [ "Sean McArthur <sean@seanmonstar.com>" ];
-    sha256 = "1k8xc0jpbrmzp0fwghdh6pwzjb9xx2p8yy0xxnnb8065smc5fsrv";
-  };
-  features_.try_lock."0.2.2" = deps: f: updateFeatures f ({
-    try_lock."0.2.2".default = (f.try_lock."0.2.2".default or true);
-  }) [];
-
-
-# end
-# unicase-1.4.2
-
-  crates.unicase."1.4.2" = deps: { features?(features_.unicase."1.4.2" deps {}) }: buildRustCrate {
-    crateName = "unicase";
-    version = "1.4.2";
-    description = "A case-insensitive wrapper around strings.";
-    authors = [ "Sean McArthur <sean.monstar@gmail.com>" ];
-    sha256 = "0rbnhw2mnhcwrij3vczp0sl8zdfmvf2dlh8hly81kj7132kfj0mf";
-    build = "build.rs";
-    dependencies = mapFeatures features ([
-]);
-
-    buildDependencies = mapFeatures features ([
-      (crates."version_check"."${deps."unicase"."1.4.2"."version_check"}" deps)
-    ]);
-    features = mkFeatures (features."unicase"."1.4.2" or {});
-  };
-  features_.unicase."1.4.2" = deps: f: updateFeatures f (rec {
-    unicase = fold recursiveUpdate {} [
-      { "1.4.2"."heapsize" =
-        (f.unicase."1.4.2"."heapsize" or false) ||
-        (f.unicase."1.4.2".heap_size or false) ||
-        (unicase."1.4.2"."heap_size" or false); }
-      { "1.4.2"."heapsize_plugin" =
-        (f.unicase."1.4.2"."heapsize_plugin" or false) ||
-        (f.unicase."1.4.2".heap_size or false) ||
-        (unicase."1.4.2"."heap_size" or false); }
-      { "1.4.2".default = (f.unicase."1.4.2".default or true); }
-    ];
-    version_check."${deps.unicase."1.4.2".version_check}".default = true;
-  }) [
-    (features_.version_check."${deps."unicase"."1.4.2"."version_check"}" deps)
-  ];
-
-
-# end
-# unicase-2.1.0
-
-  crates.unicase."2.1.0" = deps: { features?(features_.unicase."2.1.0" deps {}) }: buildRustCrate {
-    crateName = "unicase";
-    version = "2.1.0";
-    description = "A case-insensitive wrapper around strings.";
-    authors = [ "Sean McArthur <sean@seanmonstar.com>" ];
-    sha256 = "1zzn16hh8fdx5pnbbnl32q8m2mh4vpd1jm9pdcv969ik83dw4byp";
-    build = "build.rs";
-
-    buildDependencies = mapFeatures features ([
-      (crates."version_check"."${deps."unicase"."2.1.0"."version_check"}" deps)
-    ]);
-    features = mkFeatures (features."unicase"."2.1.0" or {});
-  };
-  features_.unicase."2.1.0" = deps: f: updateFeatures f ({
-    unicase."2.1.0".default = (f.unicase."2.1.0".default or true);
-    version_check."${deps.unicase."2.1.0".version_check}".default = true;
-  }) [
-    (features_.version_check."${deps."unicase"."2.1.0"."version_check"}" deps)
-  ];
-
-
-# end
-# unicode-bidi-0.3.4
-
-  crates.unicode_bidi."0.3.4" = deps: { features?(features_.unicode_bidi."0.3.4" deps {}) }: buildRustCrate {
-    crateName = "unicode-bidi";
-    version = "0.3.4";
-    description = "Implementation of the Unicode Bidirectional Algorithm";
-    authors = [ "The Servo Project Developers" ];
-    sha256 = "0lcd6jasrf8p9p0q20qyf10c6xhvw40m2c4rr105hbk6zy26nj1q";
-    libName = "unicode_bidi";
-    dependencies = mapFeatures features ([
-      (crates."matches"."${deps."unicode_bidi"."0.3.4"."matches"}" deps)
-    ]);
-    features = mkFeatures (features."unicode_bidi"."0.3.4" or {});
-  };
-  features_.unicode_bidi."0.3.4" = deps: f: updateFeatures f (rec {
-    matches."${deps.unicode_bidi."0.3.4".matches}".default = true;
-    unicode_bidi = fold recursiveUpdate {} [
-      { "0.3.4"."flame" =
-        (f.unicode_bidi."0.3.4"."flame" or false) ||
-        (f.unicode_bidi."0.3.4".flame_it or false) ||
-        (unicode_bidi."0.3.4"."flame_it" or false); }
-      { "0.3.4"."flamer" =
-        (f.unicode_bidi."0.3.4"."flamer" or false) ||
-        (f.unicode_bidi."0.3.4".flame_it or false) ||
-        (unicode_bidi."0.3.4"."flame_it" or false); }
-      { "0.3.4"."serde" =
-        (f.unicode_bidi."0.3.4"."serde" or false) ||
-        (f.unicode_bidi."0.3.4".with_serde or false) ||
-        (unicode_bidi."0.3.4"."with_serde" or false); }
-      { "0.3.4".default = (f.unicode_bidi."0.3.4".default or true); }
-    ];
-  }) [
-    (features_.matches."${deps."unicode_bidi"."0.3.4"."matches"}" deps)
-  ];
-
-
-# end
-# unicode-normalization-0.1.5
-
-  crates.unicode_normalization."0.1.5" = deps: { features?(features_.unicode_normalization."0.1.5" deps {}) }: buildRustCrate {
-    crateName = "unicode-normalization";
-    version = "0.1.5";
-    description = "This crate provides functions for normalization of\nUnicode strings, including Canonical and Compatible\nDecomposition and Recomposition, as described in\nUnicode Standard Annex #15.\n";
-    authors = [ "kwantam <kwantam@gmail.com>" ];
-    sha256 = "0hg29g86fca7b65mwk4sm5s838js6bqrl0gabadbazvbsgjam0j5";
-  };
-  features_.unicode_normalization."0.1.5" = deps: f: updateFeatures f ({
-    unicode_normalization."0.1.5".default = (f.unicode_normalization."0.1.5".default or true);
-  }) [];
-
-
-# end
-# unicode-width-0.1.4
-
-  crates.unicode_width."0.1.4" = deps: { features?(features_.unicode_width."0.1.4" deps {}) }: buildRustCrate {
-    crateName = "unicode-width";
-    version = "0.1.4";
-    description = "Determine displayed width of `char` and `str` types\naccording to Unicode Standard Annex #11 rules.\n";
-    authors = [ "kwantam <kwantam@gmail.com>" ];
-    sha256 = "1rp7a04icn9y5c0lm74nrd4py0rdl0af8bhdwq7g478n1xifpifl";
-    features = mkFeatures (features."unicode_width"."0.1.4" or {});
-  };
-  features_.unicode_width."0.1.4" = deps: f: updateFeatures f ({
-    unicode_width."0.1.4".default = (f.unicode_width."0.1.4".default or true);
-  }) [];
-
-
-# end
-# unicode-xid-0.0.4
-
-  crates.unicode_xid."0.0.4" = deps: { features?(features_.unicode_xid."0.0.4" deps {}) }: buildRustCrate {
-    crateName = "unicode-xid";
-    version = "0.0.4";
-    description = "Determine whether characters have the XID_Start\nor XID_Continue properties according to\nUnicode Standard Annex #31.\n";
-    authors = [ "erick.tryzelaar <erick.tryzelaar@gmail.com>" "kwantam <kwantam@gmail.com>" ];
-    sha256 = "1dc8wkkcd3s6534s5aw4lbjn8m67flkkbnajp5bl8408wdg8rh9v";
-    features = mkFeatures (features."unicode_xid"."0.0.4" or {});
-  };
-  features_.unicode_xid."0.0.4" = deps: f: updateFeatures f ({
-    unicode_xid."0.0.4".default = (f.unicode_xid."0.0.4".default or true);
-  }) [];
-
-
-# end
-# unreachable-1.0.0
-
-  crates.unreachable."1.0.0" = deps: { features?(features_.unreachable."1.0.0" deps {}) }: buildRustCrate {
-    crateName = "unreachable";
-    version = "1.0.0";
-    description = "An unreachable code optimization hint in stable rust.";
-    authors = [ "Jonathan Reem <jonathan.reem@gmail.com>" ];
-    sha256 = "1am8czbk5wwr25gbp2zr007744fxjshhdqjz9liz7wl4pnv3whcf";
-    dependencies = mapFeatures features ([
-      (crates."void"."${deps."unreachable"."1.0.0"."void"}" deps)
-    ]);
-  };
-  features_.unreachable."1.0.0" = deps: f: updateFeatures f ({
-    unreachable."1.0.0".default = (f.unreachable."1.0.0".default or true);
-    void."${deps.unreachable."1.0.0".void}".default = (f.void."${deps.unreachable."1.0.0".void}".default or false);
-  }) [
-    (features_.void."${deps."unreachable"."1.0.0"."void"}" deps)
-  ];
-
-
-# end
-# url-1.6.1
-
-  crates.url."1.6.1" = deps: { features?(features_.url."1.6.1" deps {}) }: buildRustCrate {
-    crateName = "url";
-    version = "1.6.1";
-    description = "URL library for Rust, based on the WHATWG URL Standard";
-    authors = [ "The rust-url developers" ];
-    sha256 = "1qsnhmxznzaxl068a3ksz69kwcz7ghvl4zflg9qj7lyw4bk9ma38";
-    dependencies = mapFeatures features ([
-      (crates."idna"."${deps."url"."1.6.1"."idna"}" deps)
-      (crates."matches"."${deps."url"."1.6.1"."matches"}" deps)
-      (crates."percent_encoding"."${deps."url"."1.6.1"."percent_encoding"}" deps)
-    ]);
-    features = mkFeatures (features."url"."1.6.1" or {});
-  };
-  features_.url."1.6.1" = deps: f: updateFeatures f (rec {
-    idna."${deps.url."1.6.1".idna}".default = true;
-    matches."${deps.url."1.6.1".matches}".default = true;
-    percent_encoding."${deps.url."1.6.1".percent_encoding}".default = true;
-    url = fold recursiveUpdate {} [
-      { "1.6.1"."encoding" =
-        (f.url."1.6.1"."encoding" or false) ||
-        (f.url."1.6.1".query_encoding or false) ||
-        (url."1.6.1"."query_encoding" or false); }
-      { "1.6.1"."heapsize" =
-        (f.url."1.6.1"."heapsize" or false) ||
-        (f.url."1.6.1".heap_size or false) ||
-        (url."1.6.1"."heap_size" or false); }
-      { "1.6.1".default = (f.url."1.6.1".default or true); }
-    ];
-  }) [
-    (features_.idna."${deps."url"."1.6.1"."idna"}" deps)
-    (features_.matches."${deps."url"."1.6.1"."matches"}" deps)
-    (features_.percent_encoding."${deps."url"."1.6.1"."percent_encoding"}" deps)
-  ];
-
-
-# end
-# utf8-ranges-0.1.3
-
-  crates.utf8_ranges."0.1.3" = deps: { features?(features_.utf8_ranges."0.1.3" deps {}) }: buildRustCrate {
-    crateName = "utf8-ranges";
-    version = "0.1.3";
-    description = "Convert ranges of Unicode codepoints to UTF-8 byte ranges.";
-    authors = [ "Andrew Gallant <jamslam@gmail.com>" ];
-    sha256 = "1cj548a91a93j8375p78qikaiam548xh84cb0ck8y119adbmsvbp";
-  };
-  features_.utf8_ranges."0.1.3" = deps: f: updateFeatures f ({
-    utf8_ranges."0.1.3".default = (f.utf8_ranges."0.1.3".default or true);
-  }) [];
-
-
-# end
-# uuid-0.7.1
-
-  crates.uuid."0.7.1" = deps: { features?(features_.uuid."0.7.1" deps {}) }: buildRustCrate {
-    crateName = "uuid";
-    version = "0.7.1";
-    description = "A library to generate and parse UUIDs.";
-    authors = [ "Ashley Mannix<ashleymannix@live.com.au>" "Christopher Armstrong" "Dylan DPC<dylan.dpc@gmail.com>" "Hunar Roop Kahlon<hunar.roop@gmail.com>" ];
-    sha256 = "1wh5izr7bssf1j8y3cawj4yfr5pz4cfxgsjlk2gs1vccc848qpbj";
-    dependencies = mapFeatures features ([
-    ]
-      ++ (if features.uuid."0.7.1".rand or false then [ (crates.rand."${deps."uuid"."0.7.1".rand}" deps) ] else []));
-    features = mkFeatures (features."uuid"."0.7.1" or {});
-  };
-  features_.uuid."0.7.1" = deps: f: updateFeatures f (rec {
-    rand."${deps.uuid."0.7.1".rand}".default = true;
-    uuid = fold recursiveUpdate {} [
-      { "0.7.1"."byteorder" =
-        (f.uuid."0.7.1"."byteorder" or false) ||
-        (f.uuid."0.7.1".u128 or false) ||
-        (uuid."0.7.1"."u128" or false); }
-      { "0.7.1"."md5" =
-        (f.uuid."0.7.1"."md5" or false) ||
-        (f.uuid."0.7.1".v3 or false) ||
-        (uuid."0.7.1"."v3" or false); }
-      { "0.7.1"."nightly" =
-        (f.uuid."0.7.1"."nightly" or false) ||
-        (f.uuid."0.7.1".const_fn or false) ||
-        (uuid."0.7.1"."const_fn" or false); }
-      { "0.7.1"."rand" =
-        (f.uuid."0.7.1"."rand" or false) ||
-        (f.uuid."0.7.1".v3 or false) ||
-        (uuid."0.7.1"."v3" or false) ||
-        (f.uuid."0.7.1".v4 or false) ||
-        (uuid."0.7.1"."v4" or false) ||
-        (f.uuid."0.7.1".v5 or false) ||
-        (uuid."0.7.1"."v5" or false); }
-      { "0.7.1"."sha1" =
-        (f.uuid."0.7.1"."sha1" or false) ||
-        (f.uuid."0.7.1".v5 or false) ||
-        (uuid."0.7.1"."v5" or false); }
-      { "0.7.1"."std" =
-        (f.uuid."0.7.1"."std" or false) ||
-        (f.uuid."0.7.1".default or false) ||
-        (uuid."0.7.1"."default" or false); }
-      { "0.7.1".default = (f.uuid."0.7.1".default or true); }
-    ];
-  }) [
-    (features_.rand."${deps."uuid"."0.7.1"."rand"}" deps)
-  ];
-
-
-# end
-# vcpkg-0.2.2
-
-  crates.vcpkg."0.2.2" = deps: { features?(features_.vcpkg."0.2.2" deps {}) }: buildRustCrate {
-    crateName = "vcpkg";
-    version = "0.2.2";
-    description = "A library to find native dependencies in a vcpkg tree at build\ntime in order to be used in Cargo build scripts.\n";
-    authors = [ "Jim McGrath <jimmc2@gmail.com>" ];
-    sha256 = "1fl5j0ksnwrnsrf1b1a9lqbjgnajdipq0030vsbhx81mb7d9478a";
-  };
-  features_.vcpkg."0.2.2" = deps: f: updateFeatures f ({
-    vcpkg."0.2.2".default = (f.vcpkg."0.2.2".default or true);
-  }) [];
-
-
-# end
-# vec_map-0.8.0
-
-  crates.vec_map."0.8.0" = deps: { features?(features_.vec_map."0.8.0" deps {}) }: buildRustCrate {
-    crateName = "vec_map";
-    version = "0.8.0";
-    description = "A simple map based on a vector for small integer keys";
-    authors = [ "Alex Crichton <alex@alexcrichton.com>" "Jorge Aparicio <japaricious@gmail.com>" "Alexis Beingessner <a.beingessner@gmail.com>" "Brian Anderson <>" "tbu- <>" "Manish Goregaokar <>" "Aaron Turon <aturon@mozilla.com>" "Adolfo Ochagavía <>" "Niko Matsakis <>" "Steven Fackler <>" "Chase Southwood <csouth3@illinois.edu>" "Eduard Burtescu <>" "Florian Wilkens <>" "Félix Raimundo <>" "Tibor Benke <>" "Markus Siemens <markus@m-siemens.de>" "Josh Branchaud <jbranchaud@gmail.com>" "Huon Wilson <dbau.pp@gmail.com>" "Corey Farwell <coref@rwell.org>" "Aaron Liblong <>" "Nick Cameron <nrc@ncameron.org>" "Patrick Walton <pcwalton@mimiga.net>" "Felix S Klock II <>" "Andrew Paseltiner <apaseltiner@gmail.com>" "Sean McArthur <sean.monstar@gmail.com>" "Vadim Petrochenkov <>" ];
-    sha256 = "07sgxp3cf1a4cxm9n3r27fcvqmld32bl2576mrcahnvm34j11xay";
-    dependencies = mapFeatures features ([
-]);
-    features = mkFeatures (features."vec_map"."0.8.0" or {});
-  };
-  features_.vec_map."0.8.0" = deps: f: updateFeatures f (rec {
-    vec_map = fold recursiveUpdate {} [
-      { "0.8.0"."serde" =
-        (f.vec_map."0.8.0"."serde" or false) ||
-        (f.vec_map."0.8.0".eders or false) ||
-        (vec_map."0.8.0"."eders" or false); }
-      { "0.8.0"."serde_derive" =
-        (f.vec_map."0.8.0"."serde_derive" or false) ||
-        (f.vec_map."0.8.0".eders or false) ||
-        (vec_map."0.8.0"."eders" or false); }
-      { "0.8.0".default = (f.vec_map."0.8.0".default or true); }
-    ];
-  }) [];
-
-
-# end
-# version_check-0.1.3
-
-  crates.version_check."0.1.3" = deps: { features?(features_.version_check."0.1.3" deps {}) }: buildRustCrate {
-    crateName = "version_check";
-    version = "0.1.3";
-    description = "Tiny crate to check the version of the installed/running rustc.";
-    authors = [ "Sergio Benitez <sb@sergio.bz>" ];
-    sha256 = "0z635wdclv9bvafj11fpgndn7y79ibpsnc364pm61i1m4wwg8msg";
-  };
-  features_.version_check."0.1.3" = deps: f: updateFeatures f ({
-    version_check."0.1.3".default = (f.version_check."0.1.3".default or true);
-  }) [];
-
-
-# end
-# void-1.0.2
-
-  crates.void."1.0.2" = deps: { features?(features_.void."1.0.2" deps {}) }: buildRustCrate {
-    crateName = "void";
-    version = "1.0.2";
-    description = "The uninhabited void type for use in statically impossible cases.";
-    authors = [ "Jonathan Reem <jonathan.reem@gmail.com>" ];
-    sha256 = "0h1dm0dx8dhf56a83k68mijyxigqhizpskwxfdrs1drwv2cdclv3";
-    features = mkFeatures (features."void"."1.0.2" or {});
-  };
-  features_.void."1.0.2" = deps: f: updateFeatures f (rec {
-    void = fold recursiveUpdate {} [
-      { "1.0.2"."std" =
-        (f.void."1.0.2"."std" or false) ||
-        (f.void."1.0.2".default or false) ||
-        (void."1.0.2"."default" or false); }
-      { "1.0.2".default = (f.void."1.0.2".default or true); }
-    ];
-  }) [];
-
-
-# end
-# want-0.0.6
-
-  crates.want."0.0.6" = deps: { features?(features_.want."0.0.6" deps {}) }: buildRustCrate {
-    crateName = "want";
-    version = "0.0.6";
-    description = "Detect when another Future wants a result.";
-    authors = [ "Sean McArthur <sean@seanmonstar.com>" ];
-    sha256 = "03cc2lndz531a4kgql1v9kppyb1yz2abcz5l52j1gg2nypmy3lh8";
-    dependencies = mapFeatures features ([
-      (crates."futures"."${deps."want"."0.0.6"."futures"}" deps)
-      (crates."log"."${deps."want"."0.0.6"."log"}" deps)
-      (crates."try_lock"."${deps."want"."0.0.6"."try_lock"}" deps)
-    ]);
-  };
-  features_.want."0.0.6" = deps: f: updateFeatures f ({
-    futures."${deps.want."0.0.6".futures}".default = true;
-    log."${deps.want."0.0.6".log}".default = true;
-    try_lock."${deps.want."0.0.6".try_lock}".default = true;
-    want."0.0.6".default = (f.want."0.0.6".default or true);
-  }) [
-    (features_.futures."${deps."want"."0.0.6"."futures"}" deps)
-    (features_.log."${deps."want"."0.0.6"."log"}" deps)
-    (features_.try_lock."${deps."want"."0.0.6"."try_lock"}" deps)
-  ];
-
-
-# end
-# winapi-0.2.8
-
-  crates.winapi."0.2.8" = deps: { features?(features_.winapi."0.2.8" deps {}) }: buildRustCrate {
-    crateName = "winapi";
-    version = "0.2.8";
-    description = "Types and constants for WinAPI bindings. See README for list of crates providing function bindings.";
-    authors = [ "Peter Atashian <retep998@gmail.com>" ];
-    sha256 = "0a45b58ywf12vb7gvj6h3j264nydynmzyqz8d8rqxsj6icqv82as";
-  };
-  features_.winapi."0.2.8" = deps: f: updateFeatures f ({
-    winapi."0.2.8".default = (f.winapi."0.2.8".default or true);
-  }) [];
-
-
-# end
-# winapi-0.3.6
-
-  crates.winapi."0.3.6" = deps: { features?(features_.winapi."0.3.6" deps {}) }: buildRustCrate {
-    crateName = "winapi";
-    version = "0.3.6";
-    description = "Raw FFI bindings for all of Windows API.";
-    authors = [ "Peter Atashian <retep998@gmail.com>" ];
-    sha256 = "1d9jfp4cjd82sr1q4dgdlrkvm33zhhav9d7ihr0nivqbncr059m4";
-    build = "build.rs";
-    dependencies = (if kernel == "i686-pc-windows-gnu" then mapFeatures features ([
-      (crates."winapi_i686_pc_windows_gnu"."${deps."winapi"."0.3.6"."winapi_i686_pc_windows_gnu"}" deps)
-    ]) else [])
-      ++ (if kernel == "x86_64-pc-windows-gnu" then mapFeatures features ([
-      (crates."winapi_x86_64_pc_windows_gnu"."${deps."winapi"."0.3.6"."winapi_x86_64_pc_windows_gnu"}" deps)
-    ]) else []);
-    features = mkFeatures (features."winapi"."0.3.6" or {});
-  };
-  features_.winapi."0.3.6" = deps: f: updateFeatures f ({
-    winapi."0.3.6".default = (f.winapi."0.3.6".default or true);
-    winapi_i686_pc_windows_gnu."${deps.winapi."0.3.6".winapi_i686_pc_windows_gnu}".default = true;
-    winapi_x86_64_pc_windows_gnu."${deps.winapi."0.3.6".winapi_x86_64_pc_windows_gnu}".default = true;
-  }) [
-    (features_.winapi_i686_pc_windows_gnu."${deps."winapi"."0.3.6"."winapi_i686_pc_windows_gnu"}" deps)
-    (features_.winapi_x86_64_pc_windows_gnu."${deps."winapi"."0.3.6"."winapi_x86_64_pc_windows_gnu"}" deps)
-  ];
-
-
-# end
-# winapi-build-0.1.1
-
-  crates.winapi_build."0.1.1" = deps: { features?(features_.winapi_build."0.1.1" deps {}) }: buildRustCrate {
-    crateName = "winapi-build";
-    version = "0.1.1";
-    description = "Common code for build.rs in WinAPI -sys crates.";
-    authors = [ "Peter Atashian <retep998@gmail.com>" ];
-    sha256 = "1lxlpi87rkhxcwp2ykf1ldw3p108hwm24nywf3jfrvmff4rjhqga";
-    libName = "build";
-  };
-  features_.winapi_build."0.1.1" = deps: f: updateFeatures f ({
-    winapi_build."0.1.1".default = (f.winapi_build."0.1.1".default or true);
-  }) [];
-
-
-# end
-# winapi-i686-pc-windows-gnu-0.4.0
-
-  crates.winapi_i686_pc_windows_gnu."0.4.0" = deps: { features?(features_.winapi_i686_pc_windows_gnu."0.4.0" deps {}) }: buildRustCrate {
-    crateName = "winapi-i686-pc-windows-gnu";
-    version = "0.4.0";
-    description = "Import libraries for the i686-pc-windows-gnu target. Please don't use this crate directly, depend on winapi instead.";
-    authors = [ "Peter Atashian <retep998@gmail.com>" ];
-    sha256 = "05ihkij18r4gamjpxj4gra24514can762imjzlmak5wlzidplzrp";
-    build = "build.rs";
-  };
-  features_.winapi_i686_pc_windows_gnu."0.4.0" = deps: f: updateFeatures f ({
-    winapi_i686_pc_windows_gnu."0.4.0".default = (f.winapi_i686_pc_windows_gnu."0.4.0".default or true);
-  }) [];
-
-
-# end
-# winapi-x86_64-pc-windows-gnu-0.4.0
-
-  crates.winapi_x86_64_pc_windows_gnu."0.4.0" = deps: { features?(features_.winapi_x86_64_pc_windows_gnu."0.4.0" deps {}) }: buildRustCrate {
-    crateName = "winapi-x86_64-pc-windows-gnu";
-    version = "0.4.0";
-    description = "Import libraries for the x86_64-pc-windows-gnu target. Please don't use this crate directly, depend on winapi instead.";
-    authors = [ "Peter Atashian <retep998@gmail.com>" ];
-    sha256 = "0n1ylmlsb8yg1v583i4xy0qmqg42275flvbc51hdqjjfjcl9vlbj";
-    build = "build.rs";
-  };
-  features_.winapi_x86_64_pc_windows_gnu."0.4.0" = deps: f: updateFeatures f ({
-    winapi_x86_64_pc_windows_gnu."0.4.0".default = (f.winapi_x86_64_pc_windows_gnu."0.4.0".default or true);
-  }) [];
-
-
-# end
-# ws2_32-sys-0.2.1
-
-  crates.ws2_32_sys."0.2.1" = deps: { features?(features_.ws2_32_sys."0.2.1" deps {}) }: buildRustCrate {
-    crateName = "ws2_32-sys";
-    version = "0.2.1";
-    description = "Contains function definitions for the Windows API library ws2_32. See winapi for types and constants.";
-    authors = [ "Peter Atashian <retep998@gmail.com>" ];
-    sha256 = "1zpy9d9wk11sj17fczfngcj28w4xxjs3b4n036yzpy38dxp4f7kc";
-    libName = "ws2_32";
-    build = "build.rs";
-    dependencies = mapFeatures features ([
-      (crates."winapi"."${deps."ws2_32_sys"."0.2.1"."winapi"}" deps)
-    ]);
-
-    buildDependencies = mapFeatures features ([
-      (crates."winapi_build"."${deps."ws2_32_sys"."0.2.1"."winapi_build"}" deps)
-    ]);
-  };
-  features_.ws2_32_sys."0.2.1" = deps: f: updateFeatures f ({
-    winapi."${deps.ws2_32_sys."0.2.1".winapi}".default = true;
-    winapi_build."${deps.ws2_32_sys."0.2.1".winapi_build}".default = true;
-    ws2_32_sys."0.2.1".default = (f.ws2_32_sys."0.2.1".default or true);
-  }) [
-    (features_.winapi."${deps."ws2_32_sys"."0.2.1"."winapi"}" deps)
-    (features_.winapi_build."${deps."ws2_32_sys"."0.2.1"."winapi_build"}" deps)
-  ];
-
-
-# end
-# xattr-0.1.11
-
-  crates.xattr."0.1.11" = deps: { features?(features_.xattr."0.1.11" deps {}) }: buildRustCrate {
-    crateName = "xattr";
-    version = "0.1.11";
-    description = "unix extended filesystem attributes";
-    authors = [ "Steven Allen <steven@stebalien.com>" ];
-    sha256 = "0v8wad18pdxv7242a7xs18i9hy00ih3vwajz7my05zbxx2ss01nx";
-    dependencies = mapFeatures features ([
-      (crates."libc"."${deps."xattr"."0.1.11"."libc"}" deps)
-    ]);
-    features = mkFeatures (features."xattr"."0.1.11" or {});
-  };
-  features_.xattr."0.1.11" = deps: f: updateFeatures f (rec {
-    libc."${deps.xattr."0.1.11".libc}".default = true;
-    xattr = fold recursiveUpdate {} [
-      { "0.1.11"."unsupported" =
-        (f.xattr."0.1.11"."unsupported" or false) ||
-        (f.xattr."0.1.11".default or false) ||
-        (xattr."0.1.11"."default" or false); }
-      { "0.1.11".default = (f.xattr."0.1.11".default or true); }
-    ];
-  }) [
-    (features_.libc."${deps."xattr"."0.1.11"."libc"}" deps)
-  ];
-
-
-# end
-}
diff --git a/pkgs/tools/package-management/cargo-download/default.nix b/pkgs/tools/package-management/cargo-download/default.nix
deleted file mode 100644
index 1cb53a4b6c8d8..0000000000000
--- a/pkgs/tools/package-management/cargo-download/default.nix
+++ /dev/null
@@ -1,14 +0,0 @@
-{ stdenv, lib, fetchgit, darwin, buildPlatform
-, buildRustCrate, buildRustCrateHelpers, defaultCrateOverrides }:
-
-((import ./Cargo.nix {
-  inherit lib buildPlatform buildRustCrate buildRustCrateHelpers fetchgit;
-  cratesIO = import ./crates-io.nix { inherit lib buildRustCrate buildRustCrateHelpers; };
-}).cargo_download {}).override {
-  crateOverrides = defaultCrateOverrides // {
-    cargo-download = attrs: {
-      buildInputs = lib.optional stdenv.isDarwin
-        darwin.apple_sdk.frameworks.Security;
-    };
-  };
-}
diff --git a/pkgs/tools/package-management/cargo-edit/default.nix b/pkgs/tools/package-management/cargo-edit/default.nix
deleted file mode 100644
index 53f7d581b346c..0000000000000
--- a/pkgs/tools/package-management/cargo-edit/default.nix
+++ /dev/null
@@ -1,41 +0,0 @@
-{ lib
-, rustPlatform
-, fetchFromGitHub
-, pkg-config
-, openssl
-, zlib
-, stdenv
-, libiconv
-, Security
-}:
-
-rustPlatform.buildRustPackage rec {
-  pname = "cargo-edit";
-  version = "0.9.0";
-
-  src = fetchFromGitHub {
-    owner = "killercup";
-    repo = pname;
-    rev = "v${version}";
-    hash = "sha256-4N45IBDlIVbZbZgdX2DBmjolFHwzPjHVyWGadhR1FFw=";
-  };
-
-  cargoSha256 = "sha256-o7NDw7P6Flut0ZFnDUdVCmuUzW2P+KXyfu0gApTEx60=";
-
-  nativeBuildInputs = [ pkg-config ];
-
-  buildInputs = [ openssl zlib ] ++ lib.optionals stdenv.isDarwin [
-    libiconv
-    Security
-  ];
-
-  doCheck = false; # integration tests depend on changing cargo config
-
-  meta = with lib; {
-    description = "A utility for managing cargo dependencies from the command line";
-    homepage = "https://github.com/killercup/cargo-edit";
-    changelog = "https://github.com/killercup/cargo-edit/blob/v${version}/CHANGELOG.md";
-    license = with licenses; [ asl20 /* or */ mit ];
-    maintainers = with maintainers; [ Br1ght0ne figsoda gerschtli jb55 killercup ];
-  };
-}
diff --git a/pkgs/tools/package-management/cargo-graph/default.nix b/pkgs/tools/package-management/cargo-graph/default.nix
deleted file mode 100644
index 37fd43a1bcf1d..0000000000000
--- a/pkgs/tools/package-management/cargo-graph/default.nix
+++ /dev/null
@@ -1,22 +0,0 @@
-{ lib, rustPlatform, fetchFromGitHub }:
-rustPlatform.buildRustPackage rec {
-  pname = "cargo-graph";
-  version = "0.2.0-d895af1";
-
-  src = fetchFromGitHub {
-    owner = "kbknapp";
-    repo = "cargo-graph";
-    # The last release (v0.2.0) is from 2015. Since then there have been some
-    # bug fixes committed that would be good to have.
-    rev = "d895af1b7840c7ae8eddaf4e990bfa594c22ba01";
-    sha256 = "0myg26cssmbakz53dl61lswsbaqnjqlbc30c2571pq8f7gvz2qv5";
-  };
-
-  cargoSha256 = "0wyvly7aq4njlxnmgpfgbh08fxgqh85kw7d938pm6qxmj27zn4p2";
-
-  meta = with lib; {
-    description = "A cargo subcommand for creating GraphViz DOT files and dependency graphs";
-    license = with licenses; [ mit ];
-    maintainers = with maintainers; [ basvandijk ];
-  };
-}
diff --git a/pkgs/tools/package-management/cargo-kcov/default.nix b/pkgs/tools/package-management/cargo-kcov/default.nix
deleted file mode 100644
index f94c4fa5c0f00..0000000000000
--- a/pkgs/tools/package-management/cargo-kcov/default.nix
+++ /dev/null
@@ -1,35 +0,0 @@
-{ lib
-, rustPlatform
-, fetchFromGitHub
-, makeWrapper
-, kcov
-}:
-
-rustPlatform.buildRustPackage rec {
-  pname = "cargo-kcov";
-  version = "0.5.2";
-
-  src = fetchFromGitHub {
-    owner = "kennytm";
-    repo = pname;
-    rev = "v${version}";
-    sha256 = "0hqplgj3i8js42v2kj44khk543a93sk3n6wlfpv3c84pdqlm29br";
-  };
-
-  cargoSha256 = "0m5gfyjzzwd8wkbb388vmd785dy334x0migq3ssi7dlah9zx62bj";
-  doCheck = false;
-
-  nativeBuildInputs = [ makeWrapper ];
-
-  postInstall = ''
-    wrapProgram $out/bin/cargo-kcov \
-        --prefix PATH : ${lib.makeBinPath [ kcov ]}
-  '';
-
-  meta = with lib; {
-    description = "Cargo subcommand to run kcov to get coverage report on Linux";
-    homepage = "https://github.com/kennytm/cargo-kcov";
-    license = with licenses; [ mit ];
-    maintainers = with maintainers; [ saschagrunert ];
-  };
-}
diff --git a/pkgs/tools/package-management/cargo-license/default.nix b/pkgs/tools/package-management/cargo-license/default.nix
deleted file mode 100644
index 6202e297b9a9e..0000000000000
--- a/pkgs/tools/package-management/cargo-license/default.nix
+++ /dev/null
@@ -1,20 +0,0 @@
-{ lib, rustPlatform, fetchCrate }:
-
-rustPlatform.buildRustPackage rec {
-  pname = "cargo-license";
-  version = "0.4.2";
-
-  src = fetchCrate {
-    inherit pname version;
-    sha256 = "sha256-rAHw5B/rK0N8myTzTyv/IUq3o+toWO5HOSaHQko2lPI=";
-  };
-
-  cargoSha256 = "sha256-DkINY3j0x0fUynMX8+pxNFwKI/YGqEv1M2a55FuKBGY=";
-
-  meta = with lib; {
-    description = "Cargo subcommand to see license of dependencies";
-    homepage = "https://github.com/onur/cargo-license";
-    license = with licenses; [ mit ];
-    maintainers = with maintainers; [ basvandijk ];
-  };
-}
diff --git a/pkgs/tools/package-management/cargo-outdated/default.nix b/pkgs/tools/package-management/cargo-outdated/default.nix
deleted file mode 100644
index 2013f15d1e1a6..0000000000000
--- a/pkgs/tools/package-management/cargo-outdated/default.nix
+++ /dev/null
@@ -1,38 +0,0 @@
-{ lib
-, rustPlatform
-, fetchCrate
-, pkg-config
-, openssl
-, stdenv
-, curl
-, Security
-, SystemConfiguration
-}:
-
-rustPlatform.buildRustPackage rec {
-  pname = "cargo-outdated";
-  version = "0.11.1";
-
-  src = fetchCrate {
-    inherit pname version;
-    sha256 = "sha256-vEgYmtRAashBRsGDExewqaGsVYF7EJ4ky+cE/PMFW38=";
-  };
-
-  cargoSha256 = "sha256-xstcKIXQDk4ngwWSzMueO47U2oFRHAqvvjRnDXFsPE8=";
-
-  nativeBuildInputs = [ pkg-config ];
-
-  buildInputs = [ openssl ] ++ lib.optionals stdenv.isDarwin [
-    curl
-    Security
-    SystemConfiguration
-  ];
-
-  meta = with lib; {
-    description = "A cargo subcommand for displaying when Rust dependencies are out of date";
-    homepage = "https://github.com/kbknapp/cargo-outdated";
-    changelog = "https://github.com/kbknapp/cargo-outdated/blob/${version}/CHANGELOG.md";
-    license = with licenses; [ asl20 /* or */ mit ];
-    maintainers = with maintainers; [ sondr3 ivan ];
-  };
-}
diff --git a/pkgs/tools/package-management/cargo-release/default.nix b/pkgs/tools/package-management/cargo-release/default.nix
deleted file mode 100644
index 965c94742ec5e..0000000000000
--- a/pkgs/tools/package-management/cargo-release/default.nix
+++ /dev/null
@@ -1,27 +0,0 @@
-{ lib, stdenv, rustPlatform, fetchFromGitHub, libiconv, Security, openssl, pkg-config }:
-
-rustPlatform.buildRustPackage rec {
-  pname = "cargo-release";
-  version = "0.21.0";
-
-  src = fetchFromGitHub {
-    owner = "crate-ci";
-    repo = "cargo-release";
-    rev = "v${version}";
-    sha256 = "sha256-QTHevbEifYsf/nCmkarbrHgijjlHragLieCpVZBfKGQ=";
-  };
-
-  cargoSha256 = "sha256-hEHEcB42mRn6pO5413wQbEWfJNBbiOSUuy9PGjP5EYw=";
-
-  nativeBuildInputs = [ pkg-config ];
-
-  buildInputs = [ openssl ]
-    ++ lib.optionals stdenv.isDarwin [ libiconv Security ];
-
-  meta = with lib; {
-    description = ''Cargo subcommand "release": everything about releasing a rust crate'';
-    homepage = "https://github.com/sunng87/cargo-release";
-    license = with licenses; [ asl20 /* or */ mit ];
-    maintainers = with maintainers; [ gerschtli ];
-  };
-}
diff --git a/pkgs/tools/package-management/cargo-update/default.nix b/pkgs/tools/package-management/cargo-update/default.nix
deleted file mode 100644
index 383eeac432d9a..0000000000000
--- a/pkgs/tools/package-management/cargo-update/default.nix
+++ /dev/null
@@ -1,49 +0,0 @@
-{ lib, stdenv
-, rustPlatform
-, fetchCrate
-, cmake
-, pkg-config
-, installShellFiles
-, ronn
-, curl
-, libgit2
-, libssh2
-, openssl
-, Security
-, zlib
-}:
-
-rustPlatform.buildRustPackage rec {
-  pname = "cargo-update";
-  version = "8.1.4";
-
-  src = fetchCrate {
-    inherit pname version;
-    sha256 = "sha256-Q8Cd//QDQ6kWgp+QEn9/h69jfaUNE1/+oqQne/2wvAg=";
-  };
-
-  cargoSha256 = "sha256-khJ6EZVJ96geD1VzvR8E2ZgHfxhX/NTPVoVIMhCh+c4=";
-
-  nativeBuildInputs = [ cmake installShellFiles pkg-config ronn ];
-
-  buildInputs = [ libgit2 libssh2 openssl zlib ]
-    ++ lib.optionals stdenv.isDarwin [ curl Security ];
-
-  postBuild = ''
-    # Man pages contain non-ASCII, so explicitly set encoding to UTF-8.
-    HOME=$TMPDIR \
-    RUBYOPT="-E utf-8:utf-8" \
-      ronn -r --organization="cargo-update developers" man/*.md
-  '';
-
-  postInstall = ''
-    installManPage man/*.1
-  '';
-
-  meta = with lib; {
-    description = "A cargo subcommand for checking and applying updates to installed executables";
-    homepage = "https://github.com/nabijaczleweli/cargo-update";
-    license = licenses.mit;
-    maintainers = with maintainers; [ gerschtli Br1ght0ne johntitor ];
-  };
-}
diff --git a/pkgs/tools/package-management/micromamba/default.nix b/pkgs/tools/package-management/micromamba/default.nix
index c1f8fc9c990bd..1f95e41e61031 100644
--- a/pkgs/tools/package-management/micromamba/default.nix
+++ b/pkgs/tools/package-management/micromamba/default.nix
@@ -63,7 +63,7 @@ stdenv.mkDerivation rec {
     description = "Reimplementation of the conda package manager";
     homepage = "https://github.com/mamba-org/mamba";
     license = licenses.bsd3;
-    platforms = platforms.linux;
+    platforms = platforms.all;
     maintainers = with maintainers; [ mausch ];
   };
 }
diff --git a/pkgs/tools/security/certstrap/default.nix b/pkgs/tools/security/certstrap/default.nix
index ff6522f1d35f3..9edd8b3884f8b 100644
--- a/pkgs/tools/security/certstrap/default.nix
+++ b/pkgs/tools/security/certstrap/default.nix
@@ -1,21 +1,33 @@
-{ lib, buildGoPackage, fetchFromGitHub }:
+{ lib
+, buildGoModule
+, fetchFromGitHub
+}:
 
-buildGoPackage rec {
+buildGoModule rec {
   pname = "certstrap";
   version = "1.2.0";
 
-  goPackagePath = "github.com/square/certstrap";
-
   src = fetchFromGitHub {
     owner = "square";
     repo = "certstrap";
     rev = "v${version}";
-    sha256 = "1ymchnn7c9g3pq7rw4lrwsd6z3wfjx90g7qgrw6r5hssl77mnscj";
+    sha256 = "sha256-kmlbz6Faw5INzw+fB1KXjo9vmuaZEp4PvuMldqyFrPo=";
   };
 
+  vendorSha256 = null;
+
+  subPackages = [ "." ];
+
+  ldflags = [ "-X main.release=${version}" ];
+
   meta = with lib; {
-    inherit (src.meta) homepage;
     description = "Tools to bootstrap CAs, certificate requests, and signed certificates";
+    longDescription = ''
+      A simple certificate manager written in Go, to bootstrap your own
+      certificate authority and public key infrastructure. Adapted from etcd-ca.
+    '';
+    homepage = "https://github.com/square/certstrap";
+    changelog = "https://github.com/square/certstrap/releases/tag/${src.rev}";
     license = licenses.asl20;
     maintainers = with maintainers; [ volth ];
   };
diff --git a/pkgs/tools/security/fail2ban/default.nix b/pkgs/tools/security/fail2ban/default.nix
index 62bc16f6a4147..ef09cc1ac71b0 100644
--- a/pkgs/tools/security/fail2ban/default.nix
+++ b/pkgs/tools/security/fail2ban/default.nix
@@ -27,6 +27,12 @@ python3.pkgs.buildPythonApplication rec {
       url = "https://github.com/fail2ban/fail2ban/commit/5ac303df8a171f748330d4c645ccbf1c2c7f3497.patch";
       sha256 = "sha256-aozQJHwPcJTe/D/PLQzBk1YH3OAP6Qm7wO7cai5CVYI=";
     })
+    # fix use of MutableMapping with Python >= 3.10
+    # https://github.com/fail2ban/fail2ban/issues/3142
+    (fetchpatch {
+      url = "https://github.com/fail2ban/fail2ban/commit/294ec73f629d0e29cece3a1eb5dd60b6fccea41f.patch";
+      sha256 = "sha256-Eimm4xjBDYNn5QdTyMqGgT5EXsZdd/txxcWJojXlsFE=";
+    })
   ];
 
   preConfigure = ''
diff --git a/pkgs/tools/security/himitsu-firefox/default.nix b/pkgs/tools/security/himitsu-firefox/default.nix
new file mode 100644
index 0000000000000..b462863011871
--- /dev/null
+++ b/pkgs/tools/security/himitsu-firefox/default.nix
@@ -0,0 +1,46 @@
+{ lib
+, stdenv
+, fetchFromSourcehut
+, hare
+, himitsu
+, zip
+}:
+
+stdenv.mkDerivation rec {
+  pname = "himitsu-firefox";
+  version = "0.3";
+
+  src = fetchFromSourcehut {
+    name = pname + "-src";
+    owner = "~sircmpwn";
+    repo = pname;
+    rev = "d6d0fdb30aefc93f6ff7d48e5737557051f1ffea";
+    hash = "sha256-5RbNdEGPnfDt1KDeU2LnuRsqqqMRyV/Dh2cgEWkz4vQ=";
+  };
+
+  nativeBuildInputs = [
+    hare
+    zip
+  ];
+
+  buildInputs = [
+    himitsu
+  ];
+
+  buildFlags = [ "LIBEXECDIR=$(out)/libexec" ];
+
+  # Only install the native component; per the docs:
+  # > To install the add-on for Firefox ESR, run make install-xpi. Be advised
+  # > that this will probably not work. The recommended installation procedure
+  # > for the native extension is to install it from addons.mozilla.org instead.
+  installTargets = [ "install-native" ];
+  installFlags = [ "PREFIX=" "DESTDIR=$(out)" ];
+
+  meta = with lib; {
+    homepage = "https://git.sr.ht/~sircmpwn/himitsu-firefox";
+    description = "Himitsu integration for Firefox";
+    license = licenses.gpl3Only;
+    maintainers = with maintainers; [ auchter ];
+    inherit (hare.meta) platforms badPlatforms;
+  };
+}
diff --git a/pkgs/tools/security/himitsu/default.nix b/pkgs/tools/security/himitsu/default.nix
new file mode 100644
index 0000000000000..e48de780d72dd
--- /dev/null
+++ b/pkgs/tools/security/himitsu/default.nix
@@ -0,0 +1,34 @@
+{ lib
+, stdenv
+, fetchFromSourcehut
+, hare
+, scdoc
+}:
+
+stdenv.mkDerivation rec {
+  pname = "himitsu";
+  version = "0.1";
+
+  src = fetchFromSourcehut {
+    name = pname + "-src";
+    owner = "~sircmpwn";
+    repo = pname;
+    rev = "003c14747fcddceb5359c9503f20c44b15fea5fa";
+    hash = "sha256-tzBTDJKMuFh9anURy1aKQTmt77tI7wZDZQiOUowuomk=";
+  };
+
+  nativeBuildInputs = [
+    hare
+    scdoc
+  ];
+
+  installFlags = [ "PREFIX=" "DESTDIR=$(out)" ];
+
+  meta = with lib; {
+    homepage = "https://himitsustore.org/";
+    description = "A secret storage manager";
+    license = licenses.gpl3Only;
+    maintainers = with maintainers; [ auchter ];
+    inherit (hare.meta) platforms badPlatforms;
+  };
+}
diff --git a/pkgs/tools/security/metasploit/Gemfile b/pkgs/tools/security/metasploit/Gemfile
index d2ae05738047e..8350e202156e4 100644
--- a/pkgs/tools/security/metasploit/Gemfile
+++ b/pkgs/tools/security/metasploit/Gemfile
@@ -1,4 +1,4 @@
 # frozen_string_literal: true
 source "https://rubygems.org"
 
-gem "metasploit-framework", git: "https://github.com/rapid7/metasploit-framework", ref: "refs/tags/6.2.3"
+gem "metasploit-framework", git: "https://github.com/rapid7/metasploit-framework", ref: "refs/tags/6.2.4"
diff --git a/pkgs/tools/security/metasploit/Gemfile.lock b/pkgs/tools/security/metasploit/Gemfile.lock
index 5fa3d58634395..6dd9a21eaa9da 100644
--- a/pkgs/tools/security/metasploit/Gemfile.lock
+++ b/pkgs/tools/security/metasploit/Gemfile.lock
@@ -1,9 +1,9 @@
 GIT
   remote: https://github.com/rapid7/metasploit-framework
-  revision: ef3f1dfb9c196e19174e59f5d75707fffb847073
-  ref: refs/tags/6.2.3
+  revision: ed772a23efa7e2a7d7ae6417939e900c66950fd9
+  ref: refs/tags/6.2.4
   specs:
-    metasploit-framework (6.2.3)
+    metasploit-framework (6.2.4)
       actionpack (~> 6.0)
       activerecord (~> 6.0)
       activesupport (~> 6.0)
@@ -32,7 +32,7 @@ GIT
       metasploit-concern
       metasploit-credential
       metasploit-model
-      metasploit-payloads (= 2.0.93)
+      metasploit-payloads (= 2.0.94)
       metasploit_data_models
       metasploit_payloads-mettle (= 1.0.18)
       mqtt
@@ -130,13 +130,13 @@ GEM
     arel-helpers (2.14.0)
       activerecord (>= 3.1.0, < 8)
     aws-eventstream (1.2.0)
-    aws-partitions (1.600.0)
-    aws-sdk-core (3.131.1)
+    aws-partitions (1.601.0)
+    aws-sdk-core (3.131.2)
       aws-eventstream (~> 1, >= 1.0.2)
       aws-partitions (~> 1, >= 1.525.0)
       aws-sigv4 (~> 1.1)
       jmespath (~> 1, >= 1.6.1)
-    aws-sdk-ec2 (1.318.0)
+    aws-sdk-ec2 (1.319.0)
       aws-sdk-core (~> 3, >= 3.127.0)
       aws-sigv4 (~> 1.1)
     aws-sdk-iam (1.69.0)
@@ -238,7 +238,7 @@ GEM
       activemodel (~> 6.0)
       activesupport (~> 6.0)
       railties (~> 6.0)
-    metasploit-payloads (2.0.93)
+    metasploit-payloads (2.0.94)
     metasploit_data_models (5.0.5)
       activerecord (~> 6.0)
       activesupport (~> 6.0)
@@ -252,7 +252,7 @@ GEM
     metasploit_payloads-mettle (1.0.18)
     method_source (1.0.0)
     mini_portile2 (2.8.0)
-    minitest (5.16.0)
+    minitest (5.16.1)
     mqtt (0.5.0)
     msgpack (1.5.2)
     multi_json (1.15.0)
@@ -290,7 +290,7 @@ GEM
       hashery (~> 2.0)
       ruby-rc4
       ttfunk
-    pg (1.3.5)
+    pg (1.4.1)
     public_suffix (4.0.7)
     puma (5.6.4)
       nio4r (~> 2.0)
@@ -298,8 +298,8 @@ GEM
     rack (2.2.3.1)
     rack-protection (2.2.0)
       rack
-    rack-test (1.1.0)
-      rack (>= 1.0, < 3)
+    rack-test (2.0.0)
+      rack (>= 1.3)
     rails-dom-testing (2.0.3)
       activesupport (>= 4.2.0)
       nokogiri (>= 1.6)
@@ -371,7 +371,7 @@ GEM
     ruby-macho (3.0.0)
     ruby-rc4 (0.1.5)
     ruby2_keywords (0.0.5)
-    ruby_smb (3.1.3)
+    ruby_smb (3.1.4)
       bindata
       openssl-ccm
       openssl-cmac
diff --git a/pkgs/tools/security/metasploit/default.nix b/pkgs/tools/security/metasploit/default.nix
index 126d21bc7d0b5..ae3c75c630fe8 100644
--- a/pkgs/tools/security/metasploit/default.nix
+++ b/pkgs/tools/security/metasploit/default.nix
@@ -15,13 +15,13 @@ let
   };
 in stdenv.mkDerivation rec {
   pname = "metasploit-framework";
-  version = "6.2.3";
+  version = "6.2.4";
 
   src = fetchFromGitHub {
     owner = "rapid7";
     repo = "metasploit-framework";
     rev = version;
-    sha256 = "sha256-5G2xjzdZro01Es3oqnUFO9TrvBCku5QE7DjPgU0xlc8=";
+    sha256 = "sha256-9JzavB6VMEM7UFa30WlHdZ/hajOly+JX75I+3DECOqM=";
   };
 
   nativeBuildInputs = [ makeWrapper ];
diff --git a/pkgs/tools/security/metasploit/gemset.nix b/pkgs/tools/security/metasploit/gemset.nix
index baa4aea667211..98a026aaa9f20 100644
--- a/pkgs/tools/security/metasploit/gemset.nix
+++ b/pkgs/tools/security/metasploit/gemset.nix
@@ -104,30 +104,30 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0cx73zazv4jsh51b08jgf7pzn62wmfqlwwg2z8w4rcqbvn326n93";
+      sha256 = "0ydlikjhhsiqk7v8k7q1f036fd7yrmimasw40rnwcj3f1747lygd";
       type = "gem";
     };
-    version = "1.600.0";
+    version = "1.601.0";
   };
   aws-sdk-core = {
     groups = ["default"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0yiz3aaik62rxhxipwznb2bv8ywha13vdxg9nk6anq9bd0nn0728";
+      sha256 = "164abp3cvmvfa2qsgzbxvkafbhwbgn3qwknp0amwmxw5nwvz8p3s";
       type = "gem";
     };
-    version = "3.131.1";
+    version = "3.131.2";
   };
   aws-sdk-ec2 = {
     groups = ["default"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0airi3qgnjdxl3n459nxq6bjwq0i3jyvwa0pv8nivw6lnskl1jps";
+      sha256 = "0b42j6hdw62qz02j1llqp4c4y0dx39x3wfk1nprxwl27sdvy1mgk";
       type = "gem";
     };
-    version = "1.318.0";
+    version = "1.319.0";
   };
   aws-sdk-iam = {
     groups = ["default"];
@@ -614,12 +614,12 @@
     platforms = [];
     source = {
       fetchSubmodules = false;
-      rev = "ef3f1dfb9c196e19174e59f5d75707fffb847073";
-      sha256 = "1kwm656q3krqxh299fx422yfpm1v0mssms6d28sqvbjr6y7v2vg4";
+      rev = "ed772a23efa7e2a7d7ae6417939e900c66950fd9";
+      sha256 = "18rs08qxqgljxxby5jx56dmf37vm8xlx3dsna0xl6c4m3sydm77l";
       type = "git";
       url = "https://github.com/rapid7/metasploit-framework";
     };
-    version = "6.2.3";
+    version = "6.2.4";
   };
   metasploit-model = {
     groups = ["default"];
@@ -636,10 +636,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0y06rkm2zh13qz1b40srx7dd1f5yl669k01ji4ha41pqn7wcv32v";
+      sha256 = "1azr70qfq14wpki61hnljqnxnxlx9ifa4p92wh29cnak8v697v69";
       type = "gem";
     };
-    version = "2.0.93";
+    version = "2.0.94";
   };
   metasploit_data_models = {
     groups = ["default"];
@@ -686,10 +686,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "05ik7y422ylnv391w7lh812w43p1dirlvkzyq09v27ag683fvsbh";
+      sha256 = "08z6rgs1jgbc032843mwg3fayvzn4hihz8bl2gp87pf7z02kw5f3";
       type = "gem";
     };
-    version = "5.16.0";
+    version = "5.16.1";
   };
   mqtt = {
     groups = ["default"];
@@ -917,10 +917,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "10ryzmc3r5ja6g90a9ycsxcxsy5872xa1vf01jam0bm74zq3zmi6";
+      sha256 = "11q4zw8n0lmff5k514ip30yizr38jb2x5nh3m7fy3k13sbxbysrq";
       type = "gem";
     };
-    version = "1.3.5";
+    version = "1.4.1";
   };
   public_suffix = {
     groups = ["default"];
@@ -977,10 +977,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0rh8h376mx71ci5yklnpqqn118z3bl67nnv5k801qaqn1zs62h8m";
+      sha256 = "01igqmm7xqw6vg6x28phivl044n2crq0bcfjrxr4979kzxydgh8h";
       type = "gem";
     };
-    version = "1.1.0";
+    version = "2.0.0";
   };
   rails-dom-testing = {
     groups = ["default"];
@@ -1297,10 +1297,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0vqj4lb41vkpv0dl65caw7w9h804vzbdw5q6wvkzqv1q0k8nbqbd";
+      sha256 = "0cvavqvgwq2gcrg0gh8fdzyn9zzpkyh9g07jz6cn7zzxzgwxfn9v";
       type = "gem";
     };
-    version = "3.1.3";
+    version = "3.1.4";
   };
   rubyntlm = {
     groups = ["default"];
diff --git a/pkgs/tools/security/regpg/default.nix b/pkgs/tools/security/regpg/default.nix
new file mode 100644
index 0000000000000..aaefbef227b88
--- /dev/null
+++ b/pkgs/tools/security/regpg/default.nix
@@ -0,0 +1,52 @@
+{ lib
+, stdenv
+, fetchFromGitHub
+, makeWrapper
+, gnupg
+, perl
+}:
+
+let
+  perlEnv = perl.withPackages (p: with p; [ TextMarkdown ]);
+in
+stdenv.mkDerivation rec {
+  pname = "regpg";
+  version = "1.11";
+
+  src = fetchFromGitHub {
+    owner = "fanf2";
+    repo = "regpg";
+    rev = "regpg-${version}";
+    sha256 = "2ea99950804078190e1cc2a76d4740e3fdd5395a9043db3f3fe86bf2477d3a7d";
+  };
+
+  nativeBuildInputs = [ makeWrapper perlEnv ];
+
+  postPatch = ''
+    patchShebangs ./util/insert-here.pl ./util/markdown.pl
+    substituteInPlace ./Makefile \
+      --replace 'util/insert-here.pl' 'perl util/insert-here.pl'
+    substituteInPlace ./Makefile \
+      --replace 'util/markdown.pl' 'perl util/markdown.pl'
+    substituteInPlace util/insert-here.pl \
+      --replace 'qx(git describe)' '"regpg-${version}"'
+  '';
+
+  dontConfigure = true;
+
+  makeFlags = [ "prefix=$(out)" ];
+
+  postFixup = ''
+    patchShebangs $out/bin/regpg
+    wrapProgram $out/bin/regpg --prefix PATH ":" \
+      "${lib.makeBinPath [ gnupg ]}"
+  '';
+
+  meta = with lib; {
+    description = "GPG wrapper utility for storing secrets in VCS";
+    homepage = "https://dotat.at/prog/regpg";
+    license = licenses.gpl3;
+    platforms = platforms.all;
+    maintainers = with maintainers; [ _0xC45 ];
+  };
+}
diff --git a/pkgs/tools/security/rekor/default.nix b/pkgs/tools/security/rekor/default.nix
index 2ecff27825a3a..99928b96caa49 100644
--- a/pkgs/tools/security/rekor/default.nix
+++ b/pkgs/tools/security/rekor/default.nix
@@ -4,13 +4,13 @@ let
   generic = { pname, packageToBuild, description }:
     buildGoModule rec {
       inherit pname;
-      version = "0.8.1";
+      version = "0.8.2";
 
       src = fetchFromGitHub {
         owner = "sigstore";
         repo = "rekor";
         rev = "v${version}";
-        sha256 = "sha256-QBS9vGKYe7aox0RhgiJ3wp7UmnxAmtox45xKOC0vhj0=";
+        sha256 = "sha256-EaOLqStoZJMTSS6g56UhFQRhuwYBjh/XLRX6JjD17+g=";
         # populate values that require us to use git. By doing this in postFetch we
         # can delete .git afterwards and maintain better reproducibility of the src.
         leaveDotGit = true;
@@ -23,7 +23,7 @@ let
         '';
       };
 
-      vendorSha256 = "sha256-OZyRIi6y47c9eS8GLClgV4JGbSsvjd6KvED3N8LIe6I=";
+      vendorSha256 = "sha256-bvn5TKfTcB/0p47r5kW1P4OlnbWYQpESo9t8IC9f+fM=";
 
       nativeBuildInputs = [ installShellFiles ];
 
diff --git a/pkgs/tools/security/schleuder/Gemfile b/pkgs/tools/security/schleuder/Gemfile
new file mode 100644
index 0000000000000..687c293bac913
--- /dev/null
+++ b/pkgs/tools/security/schleuder/Gemfile
@@ -0,0 +1,3 @@
+source 'https://rubygems.org' do
+  gem 'schleuder'
+end
diff --git a/pkgs/tools/security/schleuder/Gemfile.lock b/pkgs/tools/security/schleuder/Gemfile.lock
new file mode 100644
index 0000000000000..a5b7312901c27
--- /dev/null
+++ b/pkgs/tools/security/schleuder/Gemfile.lock
@@ -0,0 +1,85 @@
+GEM
+  specs:
+
+GEM
+  remote: https://rubygems.org/
+  specs:
+    activemodel (6.1.4.4)
+      activesupport (= 6.1.4.4)
+    activerecord (6.1.4.4)
+      activemodel (= 6.1.4.4)
+      activesupport (= 6.1.4.4)
+    activesupport (6.1.4.4)
+      concurrent-ruby (~> 1.0, >= 1.0.2)
+      i18n (>= 1.6, < 2)
+      minitest (>= 5.1)
+      tzinfo (~> 2.0)
+      zeitwerk (~> 2.3)
+    bcrypt (3.1.16)
+    charlock_holmes (0.7.7)
+    concurrent-ruby (1.1.9)
+    daemons (1.4.1)
+    eventmachine (1.2.7)
+    gpgme (2.0.20)
+      mini_portile2 (~> 2.3)
+    i18n (1.8.11)
+      concurrent-ruby (~> 1.0)
+    mail (2.7.1)
+      mini_mime (>= 0.1.1)
+    mail-gpg (0.4.4)
+      gpgme (~> 2.0, >= 2.0.2)
+      mail (~> 2.5, >= 2.5.3)
+    mini_mime (1.1.2)
+    mini_portile2 (2.7.1)
+    minitest (5.15.0)
+    multi_json (1.15.0)
+    mustermann (1.1.1)
+      ruby2_keywords (~> 0.0.1)
+    rack (2.2.3)
+    rack-protection (2.1.0)
+      rack
+    rake (13.0.6)
+    ruby2_keywords (0.0.5)
+    schleuder (4.0.2)
+      activerecord (~> 6.1.3)
+      bcrypt (~> 3.1.2)
+      charlock_holmes (~> 0.7.6)
+      gpgme (~> 2.0, >= 2.0.19)
+      mail (~> 2.7.1)
+      mail-gpg (~> 0.3)
+      rake (>= 10.5.0)
+      sinatra (~> 2)
+      sinatra-contrib (~> 2)
+      sqlite3 (~> 1.4.2)
+      thin (~> 1)
+      thor (~> 0)
+    sinatra (2.1.0)
+      mustermann (~> 1.0)
+      rack (~> 2.2)
+      rack-protection (= 2.1.0)
+      tilt (~> 2.0)
+    sinatra-contrib (2.1.0)
+      multi_json
+      mustermann (~> 1.0)
+      rack-protection (= 2.1.0)
+      sinatra (= 2.1.0)
+      tilt (~> 2.0)
+    sqlite3 (1.4.2)
+    thin (1.8.1)
+      daemons (~> 1.0, >= 1.0.9)
+      eventmachine (~> 1.0, >= 1.0.4)
+      rack (>= 1, < 3)
+    thor (0.20.3)
+    tilt (2.0.10)
+    tzinfo (2.0.4)
+      concurrent-ruby (~> 1.0)
+    zeitwerk (2.5.3)
+
+PLATFORMS
+  x86_64-linux
+
+DEPENDENCIES
+  schleuder!
+
+BUNDLED WITH
+   2.2.24
diff --git a/pkgs/tools/security/schleuder/cli/Gemfile b/pkgs/tools/security/schleuder/cli/Gemfile
new file mode 100644
index 0000000000000..428e856aecc65
--- /dev/null
+++ b/pkgs/tools/security/schleuder/cli/Gemfile
@@ -0,0 +1,4 @@
+source "https://rubygems.org"
+
+gem "schleuder-cli", git: "https://0xacab.org/schleuder/schleuder-cli", tag: "schleuder-cli-0.1.0"
+
diff --git a/pkgs/tools/security/schleuder/cli/Gemfile.lock b/pkgs/tools/security/schleuder/cli/Gemfile.lock
new file mode 100644
index 0000000000000..bd47b9df7f9a0
--- /dev/null
+++ b/pkgs/tools/security/schleuder/cli/Gemfile.lock
@@ -0,0 +1,21 @@
+GIT
+  remote: https://0xacab.org/schleuder/schleuder-cli
+  revision: 1de2548695d9a74f47b7868954561b48cbc966f9
+  tag: schleuder-cli-0.1.0
+  specs:
+    schleuder-cli (0.1.0)
+      thor (~> 0)
+
+GEM
+  remote: https://rubygems.org/
+  specs:
+    thor (0.20.3)
+
+PLATFORMS
+  x86_64-linux
+
+DEPENDENCIES
+  schleuder-cli!
+
+BUNDLED WITH
+   2.3.6
diff --git a/pkgs/tools/security/schleuder/cli/default.nix b/pkgs/tools/security/schleuder/cli/default.nix
new file mode 100644
index 0000000000000..e34afa699f042
--- /dev/null
+++ b/pkgs/tools/security/schleuder/cli/default.nix
@@ -0,0 +1,34 @@
+{ lib
+, bundlerApp
+, ruby
+, bundlerUpdateScript
+}:
+
+bundlerApp {
+  inherit ruby;
+
+  pname = "schleuder-cli";
+
+  gemdir = ./.;
+
+  installManpages = false;
+
+  exes = [
+    "schleuder-cli"
+  ];
+
+  passthru.updateScript = bundlerUpdateScript "schleuder-cli";
+
+  meta = with lib; {
+    description = "A command line tool to create and manage schleuder-lists";
+    longDescription = ''
+      Schleuder-cli enables creating, configuring, and deleting lists,
+      subscriptions, keys, etc. It uses the Schleuder API, provided by
+      schleuder-api-daemon (part of Schleuder).
+    '';
+    homepage = "https://schleuder.org";
+    changelog = "https://0xacab.org/schleuder/schleuder-cli/-/blob/main/CHANGELOG.md";
+    license = licenses.gpl3Plus;
+    maintainers = with maintainers; [ hexa ];
+  };
+}
diff --git a/pkgs/tools/security/schleuder/cli/gemset.nix b/pkgs/tools/security/schleuder/cli/gemset.nix
new file mode 100644
index 0000000000000..45ff62f891370
--- /dev/null
+++ b/pkgs/tools/security/schleuder/cli/gemset.nix
@@ -0,0 +1,25 @@
+{
+  schleuder-cli = {
+    dependencies = ["thor"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      fetchSubmodules = false;
+      rev = "1de2548695d9a74f47b7868954561b48cbc966f9";
+      sha256 = "0k4i33w9a0bscw4wbs301vxca367g7pa89y6cr24i0014pbmhs9z";
+      type = "git";
+      url = "https://0xacab.org/schleuder/schleuder-cli";
+    };
+    version = "0.1.0";
+  };
+  thor = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1yhrnp9x8qcy5vc7g438amd5j9sw83ih7c30dr6g6slgw9zj3g29";
+      type = "gem";
+    };
+    version = "0.20.3";
+  };
+}
diff --git a/pkgs/tools/security/schleuder/default.nix b/pkgs/tools/security/schleuder/default.nix
new file mode 100644
index 0000000000000..84597f6f51bf7
--- /dev/null
+++ b/pkgs/tools/security/schleuder/default.nix
@@ -0,0 +1,38 @@
+{ lib
+, bundlerApp
+, ruby
+, bundlerUpdateScript
+, defaultGemConfig
+, nixosTests
+}:
+
+bundlerApp {
+  inherit ruby;
+
+  pname = "schleuder";
+
+  gemdir = ./.;
+
+  exes = [
+    "schleuder"
+    "schleuder-api-daemon"
+  ];
+
+  passthru.updateScript = bundlerUpdateScript "schleuder";
+  passthru.tests = {
+    inherit (nixosTests) schleuder;
+  };
+
+  meta = with lib; {
+    description = "Schleuder is an encrypting mailing list manager with remailing-capabilities";
+    longDescription = ''
+      Schleuder is a group's email-gateway: subscribers can exchange
+      encrypted emails among themselves, receive emails from
+      non-subscribers and send emails to non-subscribers via the list.
+    '';
+    homepage = "https://schleuder.org";
+    changelog = "https://0xacab.org/schleuder/schleuder/blob/main/CHANGELOG.md";
+    license = licenses.gpl3Plus;
+    maintainers = with maintainers; [ hexa lheckemann ];
+  };
+}
diff --git a/pkgs/tools/security/schleuder/gemset.nix b/pkgs/tools/security/schleuder/gemset.nix
new file mode 100644
index 0000000000000..9bd9cadbb883b
--- /dev/null
+++ b/pkgs/tools/security/schleuder/gemset.nix
@@ -0,0 +1,316 @@
+{
+  activemodel = {
+    dependencies = ["activesupport"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0g3qdz8dw6zkgz45jd13lwfdnm7rhgczv1pssw63g9k6qj3bkxjm";
+      type = "gem";
+    };
+    version = "6.1.4.4";
+  };
+  activerecord = {
+    dependencies = ["activemodel" "activesupport"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "090d4wl1pq06m9mibpck0m5nm8h45fwhs3fjx27297kjmnv4gzik";
+      type = "gem";
+    };
+    version = "6.1.4.4";
+  };
+  activesupport = {
+    dependencies = ["concurrent-ruby" "i18n" "minitest" "tzinfo" "zeitwerk"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0rvnz9lsf9mrkpji748sf51f54m027snkw6rm8flyvf7fq18rm98";
+      type = "gem";
+    };
+    version = "6.1.4.4";
+  };
+  bcrypt = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "02r1c3isfchs5fxivbq99gc3aq4vfyn8snhcy707dal1p8qz12qb";
+      type = "gem";
+    };
+    version = "3.1.16";
+  };
+  charlock_holmes = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0hybw8jw9ryvz5zrki3gc9r88jqy373m6v46ynxsdzv1ysiyr40p";
+      type = "gem";
+    };
+    version = "0.7.7";
+  };
+  concurrent-ruby = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0nwad3211p7yv9sda31jmbyw6sdafzmdi2i2niaz6f0wk5nq9h0f";
+      type = "gem";
+    };
+    version = "1.1.9";
+  };
+  daemons = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "07cszb0zl8mqmwhc8a2yfg36vi6lbgrp4pa5bvmryrpcz9v6viwg";
+      type = "gem";
+    };
+    version = "1.4.1";
+  };
+  eventmachine = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0wh9aqb0skz80fhfn66lbpr4f86ya2z5rx6gm5xlfhd05bj1ch4r";
+      type = "gem";
+    };
+    version = "1.2.7";
+  };
+  gpgme = {
+    dependencies = ["mini_portile2"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0xbgh9d8nbvsvyzqnd0mzhz0nr9hx4qn025kmz6d837lry4lc6gw";
+      type = "gem";
+    };
+    version = "2.0.20";
+  };
+  i18n = {
+    dependencies = ["concurrent-ruby"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0vdd1kii40qhbr9n8qx71k2gskq6rkl8ygy8hw5hfj8bb5a364xf";
+      type = "gem";
+    };
+    version = "1.8.11";
+  };
+  mail = {
+    dependencies = ["mini_mime"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "00wwz6ys0502dpk8xprwcqfwyf3hmnx6lgxaiq6vj43mkx43sapc";
+      type = "gem";
+    };
+    version = "2.7.1";
+  };
+  mail-gpg = {
+    dependencies = ["gpgme" "mail"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1rz936m8nacy7agksvpvkf6b37d1h5qvh5xkrjqvv5wbdqs3cyfj";
+      type = "gem";
+    };
+    version = "0.4.4";
+  };
+  mini_mime = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0lbim375gw2dk6383qirz13hgdmxlan0vc5da2l072j3qw6fqjm5";
+      type = "gem";
+    };
+    version = "1.1.2";
+  };
+  mini_portile2 = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0d3ga166pahsxavzwj19yjj4lr13rw1vsb36s2qs8blcxigrdp6z";
+      type = "gem";
+    };
+    version = "2.7.1";
+  };
+  minitest = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "06xf558gid4w8lwx13jwfdafsch9maz8m0g85wnfymqj63x5nbbd";
+      type = "gem";
+    };
+    version = "5.15.0";
+  };
+  multi_json = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0pb1g1y3dsiahavspyzkdy39j4q377009f6ix0bh1ag4nqw43l0z";
+      type = "gem";
+    };
+    version = "1.15.0";
+  };
+  mustermann = {
+    dependencies = ["ruby2_keywords"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0ccm54qgshr1lq3pr1dfh7gphkilc19dp63rw6fcx7460pjwy88a";
+      type = "gem";
+    };
+    version = "1.1.1";
+  };
+  rack = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0i5vs0dph9i5jn8dfc6aqd6njcafmb20rwqngrf759c9cvmyff16";
+      type = "gem";
+    };
+    version = "2.2.3";
+  };
+  rack-protection = {
+    dependencies = ["rack"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "159a4j4kragqh0z0z8vrpilpmaisnlz3n7kgiyf16bxkwlb3qlhz";
+      type = "gem";
+    };
+    version = "2.1.0";
+  };
+  rake = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "15whn7p9nrkxangbs9hh75q585yfn66lv0v2mhj6q6dl6x8bzr2w";
+      type = "gem";
+    };
+    version = "13.0.6";
+  };
+  ruby2_keywords = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1vz322p8n39hz3b4a9gkmz9y7a5jaz41zrm2ywf31dvkqm03glgz";
+      type = "gem";
+    };
+    version = "0.0.5";
+  };
+  schleuder = {
+    dependencies = ["activerecord" "bcrypt" "charlock_holmes" "gpgme" "mail" "mail-gpg" "rake" "sinatra" "sinatra-contrib" "sqlite3" "thin" "thor"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "15j1rfkfvni82msamikynsg48s50hbsx1pxm3y967caq9s80ll6c";
+      type = "gem";
+    };
+    version = "4.0.2";
+  };
+  sinatra = {
+    dependencies = ["mustermann" "rack" "rack-protection" "tilt"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0dd53rzpkxgs697pycbhhgc9vcnxra4ly4xar8ni6aiydx2f88zk";
+      type = "gem";
+    };
+    version = "2.1.0";
+  };
+  sinatra-contrib = {
+    dependencies = ["multi_json" "mustermann" "rack-protection" "sinatra" "tilt"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1rl1iiafz51yzjd0vchl2lni7lmwppjql6cn1fnfxbma707qlcja";
+      type = "gem";
+    };
+    version = "2.1.0";
+  };
+  sqlite3 = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0lja01cp9xd5m6vmx99zwn4r7s97r1w5cb76gqd8xhbm1wxyzf78";
+      type = "gem";
+    };
+    version = "1.4.2";
+  };
+  thin = {
+    dependencies = ["daemons" "eventmachine" "rack"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "123bh7qlv6shk8bg8cjc84ix8bhlfcilwnn3iy6zq3l57yaplm9l";
+      type = "gem";
+    };
+    version = "1.8.1";
+  };
+  thor = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1yhrnp9x8qcy5vc7g438amd5j9sw83ih7c30dr6g6slgw9zj3g29";
+      type = "gem";
+    };
+    version = "0.20.3";
+  };
+  tilt = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0rn8z8hda4h41a64l0zhkiwz2vxw9b1nb70gl37h1dg2k874yrlv";
+      type = "gem";
+    };
+    version = "2.0.10";
+  };
+  tzinfo = {
+    dependencies = ["concurrent-ruby"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "10qp5x7f9hvlc0psv9gsfbxg4a7s0485wsbq1kljkxq94in91l4z";
+      type = "gem";
+    };
+    version = "2.0.4";
+  };
+  zeitwerk = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0lmg9x683gr9mkrbq9df2m0zb0650mdfxqna0bs10js44inv7znx";
+      type = "gem";
+    };
+    version = "2.5.3";
+  };
+}
diff --git a/pkgs/tools/security/sslscan/default.nix b/pkgs/tools/security/sslscan/default.nix
index ae94b6e254702..6c112d6488daa 100644
--- a/pkgs/tools/security/sslscan/default.nix
+++ b/pkgs/tools/security/sslscan/default.nix
@@ -6,13 +6,13 @@
 
 stdenv.mkDerivation rec {
   pname = "sslscan";
-  version = "2.0.13";
+  version = "2.0.14";
 
   src = fetchFromGitHub {
     owner = "rbsec";
     repo = "sslscan";
     rev = version;
-    sha256 = "sha256-boXp26f8jiw73lMLwUMuAuDBRIw8JzokYadbKx/VeSg=";
+    sha256 = "sha256-CqfxiTRIgrr4J6qThDFqohkxJj5Byf0vQzG+voAEzag=";
   };
 
   buildInputs = [ openssl ];
diff --git a/pkgs/tools/system/btop/default.nix b/pkgs/tools/system/btop/default.nix
index 86547d04e467d..7b18f0ec604fe 100644
--- a/pkgs/tools/system/btop/default.nix
+++ b/pkgs/tools/system/btop/default.nix
@@ -8,8 +8,8 @@
 
 stdenv.mkDerivation rec {
   pname = "btop";
-  version = "1.2.6";
-  hash = "sha256-q1Dpdw7bVSG10xtoUpelRgMrWe71vCWajjsAHjAZzQ4=";
+  version = "1.2.7";
+  hash = "sha256-zQpt/CEWW3oPqPo6SPuawyfLa50y6M4hL07uRO7YjLo=";
 
   src = fetchFromGitHub {
     owner = "aristocratos";
diff --git a/pkgs/tools/system/openipmi/default.nix b/pkgs/tools/system/openipmi/default.nix
index 8a8ac04f3accc..228c305de0c6f 100644
--- a/pkgs/tools/system/openipmi/default.nix
+++ b/pkgs/tools/system/openipmi/default.nix
@@ -18,6 +18,6 @@ stdenv.mkDerivation rec {
     description = "A user-level library that provides a higher-level abstraction of IPMI and generic services";
     license = with licenses; [ gpl2Only lgpl2Only ];
     platforms = platforms.linux;
-    maintainers = with maintainers; [ arezvov SuperSandro2000 ];
+    maintainers = with maintainers; [ arezvov ] ++ teams.c3d2.members;
   };
 }
diff --git a/pkgs/tools/system/smartmontools/default.nix b/pkgs/tools/system/smartmontools/default.nix
index e72d7ff5e1c20..18dc89a868045 100644
--- a/pkgs/tools/system/smartmontools/default.nix
+++ b/pkgs/tools/system/smartmontools/default.nix
@@ -10,22 +10,22 @@
 }:
 
 let
-  dbrev = "5171";
-  drivedbBranch = "RELEASE_7_2_DRIVEDB";
+  dbrev = "5388";
+  drivedbBranch = "RELEASE_7_3_DRIVEDB";
   driverdb = fetchurl {
     url = "https://sourceforge.net/p/smartmontools/code/${dbrev}/tree/branches/${drivedbBranch}/smartmontools/drivedb.h?format=raw";
-    sha256 = "0vncr98xagbcfsxgfgxsip2qrl9q3y8va19qhv6yknlwbdfap4mn";
+    sha256 = "sha256-0dtLev4JjeHsS259+qOgg19rz4yjkeX4D3ooUgS4RTI=";
     name = "smartmontools-drivedb.h";
   };
 
 in
 stdenv.mkDerivation rec {
   pname = "smartmontools";
-  version = "7.2";
+  version = "7.3";
 
   src = fetchurl {
     url = "mirror://sourceforge/smartmontools/${pname}-${version}.tar.gz";
-    sha256 = "1mlc25sd5rgj5xmzcllci47inmfdw7cp185fday6hc9rwqkqmnaw";
+    sha256 = "sha256-pUT4gI0MWM+w50JMoYQcuFipdJIrA11QXU5MJIvjois=";
   };
 
   patches = [
diff --git a/pkgs/tools/text/dos2unix/default.nix b/pkgs/tools/text/dos2unix/default.nix
index f694b91762c55..6a0c5fc57ee93 100644
--- a/pkgs/tools/text/dos2unix/default.nix
+++ b/pkgs/tools/text/dos2unix/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "dos2unix";
-  version = "7.4.2";
+  version = "7.4.3";
 
   src = fetchurl {
     url = "https://waterlan.home.xs4all.nl/dos2unix/${pname}-${version}.tar.gz";
-    sha256 = "00dfsf4rfyjb5j12gan8xjiirm0asshdz6dmd3l34a7ays6wadb0";
+    sha256 = "sha256-to20GVba+TOChCOqMFEOAMEtKe9ZFucV6NTmlP5mynI=";
   };
 
   nativeBuildInputs = [ perl gettext ];
diff --git a/pkgs/tools/text/mdbook/default.nix b/pkgs/tools/text/mdbook/default.nix
index 075dd1b2b5879..57f373a9ce1a5 100644
--- a/pkgs/tools/text/mdbook/default.nix
+++ b/pkgs/tools/text/mdbook/default.nix
@@ -2,16 +2,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "mdbook";
-  version = "0.4.17";
+  version = "0.4.18";
 
   src = fetchFromGitHub {
     owner = "rust-lang";
     repo = "mdBook";
     rev = "v${version}";
-    sha256 = "sha256-08ccRiOBXYqueKfyi/Ry39O2xOXUKishgqhn6RdbvUE=";
+    sha256 = "sha256-lsryNrgjOGdugOhtkNbnYEreF0X1ywLVaFmKUXDf884=";
   };
 
-  cargoSha256 = "sha256-vXUjKpCGlHlBvXLtmGkFtHRxxZakiEzuNzReFGEl6dw=";
+  cargoSha256 = "sha256-l95nbp9PEgO97D1M/R9IB3Xfog6+DkZwyVY2DEl5mG4=";
 
   buildInputs = lib.optionals stdenv.isDarwin [ CoreServices ];
 
diff --git a/pkgs/tools/text/nkf/default.nix b/pkgs/tools/text/nkf/default.nix
index a2b5f66a6e915..9a70ea9461af5 100644
--- a/pkgs/tools/text/nkf/default.nix
+++ b/pkgs/tools/text/nkf/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl }:
+{ lib, stdenv, fetchurl, fetchpatch }:
 
 stdenv.mkDerivation rec {
   pname = "nkf";
@@ -9,6 +9,15 @@ stdenv.mkDerivation rec {
     sha256 = "0i5dbcb9aipwr8ym4mhvgf1in3frl6y8h8x96cprz9s7b11xz9yi";
   };
 
+  patches = [
+    # Pull upstream fix for parllel build failures
+    (fetchpatch {
+      name = "parallel-install.patch";
+      url = "http://git.osdn.net/view?p=nkf/nkf.git;a=patch;h=9ccff5975bec7963e591e042e1ab1139252a4dc9";
+      sha256 = "00f0x414gfch650b20w0yj5x2bd67hchmadl7v54lk3vdgkc6jwj";
+    })
+  ];
+
   makeFlags = [ "prefix=$(out)" ];
 
   meta = {
diff --git a/pkgs/tools/text/poedit/default.nix b/pkgs/tools/text/poedit/default.nix
index fcb2a7019acad..c64828579c948 100644
--- a/pkgs/tools/text/poedit/default.nix
+++ b/pkgs/tools/text/poedit/default.nix
@@ -1,22 +1,22 @@
-{ lib, stdenv, fetchFromGitHub, autoconf, automake, libtool, gettext, pkg-config, wxGTK31-gtk3,
+{ lib, stdenv, fetchFromGitHub, autoconf, automake, libtool, gettext, pkg-config, wxGTK30-gtk3,
   boost, icu, lucenepp, asciidoc, libxslt, xmlto, gtk3, gtkspell3, pugixml,
   nlohmann_json, hicolor-icon-theme, wrapGAppsHook }:
 
 stdenv.mkDerivation rec {
   pname = "poedit";
-  version = "3.0.1";
+  version = "3.1";
 
   src = fetchFromGitHub {
     owner = "vslavik";
     repo = "poedit";
     rev = "v${version}-oss";
-    sha256 = "sha256-PBAOCAO3OrBE7lOho7nJNEpqwds7XiblN/f+GonrXHA=";
+    sha256 = "sha256-Wxj1xPbtupEnzuvf7JdUgdTxX2oAZDEYk6W4CjrmRRE=";
   };
 
   nativeBuildInputs = [ autoconf automake asciidoc wrapGAppsHook
     libxslt xmlto boost libtool pkg-config ];
 
-  buildInputs = [ lucenepp nlohmann_json wxGTK31-gtk3 icu pugixml gtk3 gtkspell3 hicolor-icon-theme ];
+  buildInputs = [ lucenepp nlohmann_json wxGTK30-gtk3 icu pugixml gtk3 gtkspell3 hicolor-icon-theme ];
 
   propagatedBuildInputs = [ gettext ];
 
diff --git a/pkgs/tools/video/rtmpdump/default.nix b/pkgs/tools/video/rtmpdump/default.nix
index 5f301ae88915a..6e05f81fcd8ce 100644
--- a/pkgs/tools/video/rtmpdump/default.nix
+++ b/pkgs/tools/video/rtmpdump/default.nix
@@ -15,13 +15,13 @@ assert (gnutlsSupport || opensslSupport);
 with lib;
 stdenv.mkDerivation {
   pname = "rtmpdump";
-  version = "unstable-2019-03-30";
+  version = "unstable-2021-02-19";
 
   src = fetchgit {
     url = "git://git.ffmpeg.org/rtmpdump";
     # Currently the latest commit is used (a release has not been made since 2011, i.e. '2.4')
-    rev = "c5f04a58fc2aeea6296ca7c44ee4734c18401aa3";
-    sha256 = "07ias612jgmxpam9h418kvlag32da914jsnjsfyafklpnh8gdzjb";
+    rev = "f1b83c10d8beb43fcc70a6e88cf4325499f25857";
+    sha256 = "0vchr0f0d5fi0zaa16jywva5db3x9dyws7clqaq32gwh5drbkvs0";
   };
 
   patches = [
diff --git a/pkgs/tools/x11/xmcp/default.nix b/pkgs/tools/x11/xmcp/default.nix
new file mode 100644
index 0000000000000..178861d637246
--- /dev/null
+++ b/pkgs/tools/x11/xmcp/default.nix
@@ -0,0 +1,33 @@
+{ lib
+, stdenv
+, fetchFromGitHub
+, libX11
+}:
+
+stdenv.mkDerivation rec {
+  pname = "xmcp";
+  version = "unstable-2020-10-10";
+
+  src = fetchFromGitHub {
+    owner = "blblapco";
+    repo = "xmcp";
+    rev = "ee56225f1665f9edc04fe5c165809f2fe160a420";
+    sha256 = "sha256-B3YkYrVEg6UJ2ApaVook4N2XvrCboxDMUG5CN9I79Sg=";
+  };
+
+  buildInputs = [ libX11 ];
+
+  installPhase = ''
+    runHook preInstall
+    install -Dm0755 xmcp $out/bin/xmcp
+    runHook postInstall
+  '';
+
+  meta = with lib; {
+    description = "Tiny color picker for X11";
+    homepage = "https://github.com/blblapco/xmcp";
+    license = licenses.gpl3Plus;
+    maintainers = with maintainers; [ azahi ];
+    platforms = platforms.linux;
+  };
+}