about summary refs log tree commit diff
diff options
context:
space:
mode:
authorPeter Simons <simons@cryp.to>2018-07-22 20:25:20 +0200
committerGitHub <noreply@github.com>2018-07-22 20:25:20 +0200
commit810c3e31b36715138a59683d8e3d0d031eb8ac63 (patch)
tree902e77e39f6f7d780a87ec01e70b25c069a0728c
parent828bb68c207ddba52a1a1a932589f2b73080c69f (diff)
parent0ac253da1c4f72ceaf08a0734e2d4f0605bd81c6 (diff)
downloadnixlib-810c3e31b36715138a59683d8e3d0d031eb8ac63.tar
nixlib-810c3e31b36715138a59683d8e3d0d031eb8ac63.tar.gz
nixlib-810c3e31b36715138a59683d8e3d0d031eb8ac63.tar.bz2
nixlib-810c3e31b36715138a59683d8e3d0d031eb8ac63.tar.lz
nixlib-810c3e31b36715138a59683d8e3d0d031eb8ac63.tar.xz
nixlib-810c3e31b36715138a59683d8e3d0d031eb8ac63.tar.zst
nixlib-810c3e31b36715138a59683d8e3d0d031eb8ac63.zip
Merge pull request #43970 from LumiGuide/tensorflow-haskell-improvements
haskell: fix build of all tensorflow packages
-rw-r--r--pkgs/development/haskell-modules/configuration-common.nix3
-rw-r--r--pkgs/development/haskell-modules/configuration-ghc-8.2.x.nix81
-rw-r--r--pkgs/development/haskell-modules/configuration-hackage2nix.yaml1
-rw-r--r--pkgs/development/haskell-modules/configuration-tensorflow-ghc-8.2.x.nix292
-rw-r--r--pkgs/development/haskell-modules/hackage-packages.nix210
5 files changed, 455 insertions, 132 deletions
diff --git a/pkgs/development/haskell-modules/configuration-common.nix b/pkgs/development/haskell-modules/configuration-common.nix
index 49418fb62a6d..a9f1ac7cb882 100644
--- a/pkgs/development/haskell-modules/configuration-common.nix
+++ b/pkgs/development/haskell-modules/configuration-common.nix
@@ -416,6 +416,9 @@ self: super: {
   # https://github.com/bos/snappy/issues/1
   snappy = dontCheck super.snappy;
 
+  # https://github.com/kim/snappy-framing/issues/3
+  snappy-framing = dontHaddock super.snappy-framing;
+
   # https://ghc.haskell.org/trac/ghc/ticket/9625
   vty = dontCheck super.vty;
 
diff --git a/pkgs/development/haskell-modules/configuration-ghc-8.2.x.nix b/pkgs/development/haskell-modules/configuration-ghc-8.2.x.nix
index 825b4f349f0e..2f8cf9076e67 100644
--- a/pkgs/development/haskell-modules/configuration-ghc-8.2.x.nix
+++ b/pkgs/development/haskell-modules/configuration-ghc-8.2.x.nix
@@ -96,83 +96,4 @@ self: super: {
     haddock-library = dontHaddock (dontCheck self.haddock-library_1_5_0_1);
   }));
 
-} // # All the following is needed to build tensorflow.
-(
-let
-  tensorflow-haskell = pkgs.fetchFromGitHub {
-    owner = "tensorflow";
-    repo = "haskell";
-    rev = "e40d2c44f0a861701cc90ec73c2bcee669ab5ba7";
-    sha256 = "05pda34jfrlqmb8y9l8g87n4iq87v1z820vnd3cy41v5c5nrdpa8";
-    fetchSubmodules = true;
-  };
-in
-{
-  proto-lens-descriptors = super.proto-lens-descriptors.override {
-    proto-lens = self.proto-lens_0_2_2_0;
-    lens-labels = self.lens-labels_0_1_0_2;
-  };
-  proto-lens-protoc_0_2_2_3 = super.proto-lens-protoc_0_2_2_3.override {
-    haskell-src-exts = self.haskell-src-exts_1_19_1;
-  };
-  proto-lens-protobuf-types_0_2_2_0 = super.proto-lens-protobuf-types_0_2_2_0.override {
-    proto-lens = self.proto-lens_0_2_2_0;
-    proto-lens-protoc = self.proto-lens-protoc_0_2_2_3;
-  };
-  tensorflow-proto = (super.callPackage (
-    { mkDerivation, base, Cabal, proto-lens, proto-lens-protobuf-types
-    , proto-lens-protoc, stdenv
-    }:
-    mkDerivation {
-      pname = "tensorflow-proto";
-      version = "0.1.0.0";
-      src = tensorflow-haskell;
-      setupHaskellDepends = [ base Cabal proto-lens-protoc ];
-      libraryHaskellDepends = [
-        base proto-lens proto-lens-protobuf-types proto-lens-protoc
-      ];
-      libraryToolDepends = [ pkgs.protobuf ];
-      homepage = "https://github.com/tensorflow/haskell#readme";
-      description = "TensorFlow protocol buffers";
-      license = stdenv.lib.licenses.asl20;
-    }
-  ) {
-    proto-lens = self.proto-lens_0_2_2_0;
-    proto-lens-protoc = self.proto-lens-protoc_0_2_2_3;
-    proto-lens-protobuf-types = self.proto-lens-protobuf-types_0_2_2_0;
-  }).overrideAttrs (_oldAttrs: {
-    sourceRoot = "source/tensorflow-proto";
-  });
-  tensorflow = (super.callPackage (
-    { mkDerivation, async, attoparsec, base, bytestring, c2hs
-    , containers, data-default, exceptions, fgl, HUnit, lens-family
-    , mainland-pretty, mtl, proto-lens, semigroups, split, stdenv
-    , temporary, libtensorflow, tensorflow-proto, test-framework
-    , test-framework-hunit, test-framework-quickcheck2, text
-    , transformers, vector
-    }:
-    mkDerivation {
-      pname = "tensorflow";
-      version = "0.1.0.2";
-      src = tensorflow-haskell;
-      libraryHaskellDepends = [
-        async attoparsec base bytestring containers data-default exceptions
-        fgl lens-family mainland-pretty mtl proto-lens semigroups split
-        temporary tensorflow-proto text transformers vector
-      ];
-      librarySystemDepends = [ libtensorflow ];
-      libraryToolDepends = [ c2hs ];
-      testHaskellDepends = [
-        attoparsec base bytestring HUnit lens-family proto-lens
-        tensorflow-proto test-framework test-framework-hunit
-        test-framework-quickcheck2
-      ];
-      homepage = "https://github.com/tensorflow/haskell#readme";
-      description = "TensorFlow bindings";
-      license = stdenv.lib.licenses.asl20;
-    }
-  ) {}).overrideAttrs (_oldAttrs: {
-    sourceRoot = "source/tensorflow";
-  });
-}
-)
+} // import ./configuration-tensorflow-ghc-8.2.x.nix {inherit pkgs haskellLib;} self super
diff --git a/pkgs/development/haskell-modules/configuration-hackage2nix.yaml b/pkgs/development/haskell-modules/configuration-hackage2nix.yaml
index 06508c2b7b8f..65886a3960b0 100644
--- a/pkgs/development/haskell-modules/configuration-hackage2nix.yaml
+++ b/pkgs/development/haskell-modules/configuration-hackage2nix.yaml
@@ -2393,6 +2393,7 @@ extra-packages:
   - inline-c < 0.6                      # required on GHC 8.0.x
   - inline-c-cpp < 0.2                  # required on GHC 8.0.x
   - lens-labels == 0.1.*                # required for proto-lens-descriptors
+  - mainland-pretty == 0.6.2.*          # required for tensorflow-opgen-0.1.0.0
   - mtl < 2.2                           # newer versions require transformers > 0.4.x, which we cannot provide in GHC 7.8.x
   - mtl-prelude < 2                     # required for to build postgrest on mtl 2.1.x platforms
   - network == 2.6.3.1                  # newer versions don't compile with GHC 7.4.x and below
diff --git a/pkgs/development/haskell-modules/configuration-tensorflow-ghc-8.2.x.nix b/pkgs/development/haskell-modules/configuration-tensorflow-ghc-8.2.x.nix
new file mode 100644
index 000000000000..7fcb0e43eb67
--- /dev/null
+++ b/pkgs/development/haskell-modules/configuration-tensorflow-ghc-8.2.x.nix
@@ -0,0 +1,292 @@
+{ pkgs, haskellLib }:
+
+with haskellLib;
+
+self: super:
+let
+  tensorflow-haskell = pkgs.fetchFromGitHub {
+    owner = "tensorflow";
+    repo = "haskell";
+    rev = "e40d2c44f0a861701cc90ec73c2bcee669ab5ba7";
+    sha256 = "05pda34jfrlqmb8y9l8g87n4iq87v1z820vnd3cy41v5c5nrdpa8";
+    fetchSubmodules = true;
+  };
+
+  setSourceRoot = dir: drv: drv.overrideAttrs (_oldAttrs: {sourceRoot = "source/${dir}";});
+
+  proto-lens = self.proto-lens_0_2_2_0;
+  proto-lens-protoc = self.proto-lens-protoc_0_2_2_3;
+  proto-lens-protobuf-types = self.proto-lens-protobuf-types_0_2_2_0;
+  mainland-pretty = self.mainland-pretty_0_6_2;
+  lens-labels = self.lens-labels_0_1_0_2;
+  haskell-src-exts = self.haskell-src-exts_1_19_1;
+in
+{
+  proto-lens-descriptors = super.proto-lens-descriptors.override {
+    inherit proto-lens lens-labels;
+  };
+  proto-lens-protoc_0_2_2_3 = super.proto-lens-protoc_0_2_2_3.override {
+    inherit proto-lens haskell-src-exts;
+  };
+  proto-lens-protobuf-types_0_2_2_0 = super.proto-lens-protobuf-types_0_2_2_0.override {
+    inherit proto-lens proto-lens-protoc;
+  };
+  tensorflow-proto = setSourceRoot "tensorflow-proto" (super.callPackage (
+    { mkDerivation, base, Cabal, proto-lens, proto-lens-protobuf-types
+    , proto-lens-protoc, stdenv
+    }:
+    mkDerivation {
+      pname = "tensorflow-proto";
+      version = "0.1.0.0";
+      src = tensorflow-haskell;
+      setupHaskellDepends = [ base Cabal proto-lens-protoc ];
+      libraryHaskellDepends = [
+        base proto-lens proto-lens-protobuf-types proto-lens-protoc
+      ];
+      libraryToolDepends = [ pkgs.protobuf ];
+      homepage = "https://github.com/tensorflow/haskell#readme";
+      description = "TensorFlow protocol buffers";
+      license = stdenv.lib.licenses.asl20;
+    }
+  ) {
+    inherit proto-lens proto-lens-protoc proto-lens-protobuf-types;
+  });
+  tensorflow = setSourceRoot "tensorflow" (super.callPackage (
+    { mkDerivation, async, attoparsec, base, bytestring, c2hs
+    , containers, data-default, exceptions, fgl, HUnit, lens-family
+    , mainland-pretty, mtl, proto-lens, semigroups, split, stdenv
+    , temporary, libtensorflow, tensorflow-proto, test-framework
+    , test-framework-hunit, test-framework-quickcheck2, text
+    , transformers, vector
+    }:
+    mkDerivation {
+      pname = "tensorflow";
+      version = "0.1.0.2";
+      src = tensorflow-haskell;
+      libraryHaskellDepends = [
+        async attoparsec base bytestring containers data-default exceptions
+        fgl lens-family mainland-pretty mtl proto-lens semigroups split
+        temporary tensorflow-proto text transformers vector
+      ];
+      librarySystemDepends = [ libtensorflow ];
+      libraryToolDepends = [ c2hs ];
+      testHaskellDepends = [
+        attoparsec base bytestring HUnit lens-family proto-lens
+        tensorflow-proto test-framework test-framework-hunit
+        test-framework-quickcheck2
+      ];
+      homepage = "https://github.com/tensorflow/haskell#readme";
+      description = "TensorFlow bindings";
+      license = stdenv.lib.licenses.asl20;
+    }
+  ) {
+    inherit mainland-pretty proto-lens;
+  });
+  tensorflow-core-ops = setSourceRoot "tensorflow-core-ops" (super.callPackage (
+    { mkDerivation, base, bytestring, Cabal, directory, filepath
+    , lens-family, mainland-pretty, proto-lens, stdenv, tensorflow
+    , tensorflow-opgen, text
+    }:
+    mkDerivation {
+      pname = "tensorflow-core-ops";
+      version = "0.1.0.0";
+      src = tensorflow-haskell;
+      setupHaskellDepends = [
+        base bytestring Cabal directory filepath mainland-pretty proto-lens
+        tensorflow tensorflow-opgen text
+      ];
+      libraryHaskellDepends = [
+        base bytestring lens-family proto-lens tensorflow text
+      ];
+      homepage = "https://github.com/tensorflow/haskell#readme";
+      description = "Haskell wrappers for Core Tensorflow Ops";
+      license = stdenv.lib.licenses.asl20;
+    }
+  ) {
+    inherit mainland-pretty proto-lens;
+  });
+  tensorflow-logging = setSourceRoot "tensorflow-logging" (super.callPackage (
+    { mkDerivation, base, bytestring, conduit, data-default, directory
+    , exceptions, filepath, hostname, HUnit, lens-family, proto-lens
+    , resourcet, stdenv, stm, stm-chans, stm-conduit, temporary
+    , tensorflow, tensorflow-core-ops, tensorflow-ops, tensorflow-proto
+    , tensorflow-records-conduit, test-framework, test-framework-hunit
+    , text, time, transformers
+    }:
+    mkDerivation {
+      pname = "tensorflow-logging";
+      version = "0.1.0.0";
+      src = tensorflow-haskell;
+      libraryHaskellDepends = [
+        base bytestring conduit data-default directory exceptions filepath
+        hostname lens-family proto-lens resourcet stm stm-chans stm-conduit
+        tensorflow tensorflow-core-ops tensorflow-ops tensorflow-proto
+        tensorflow-records-conduit text time transformers
+      ];
+      testHaskellDepends = [
+        base bytestring conduit data-default directory filepath HUnit
+        lens-family proto-lens resourcet temporary tensorflow
+        tensorflow-proto tensorflow-records-conduit test-framework
+        test-framework-hunit text
+      ];
+      homepage = "https://github.com/tensorflow/haskell#readme";
+      description = "TensorBoard related functionality";
+      license = stdenv.lib.licenses.asl20;
+    }
+  ) {
+    inherit proto-lens;
+  });
+  tensorflow-mnist = setSourceRoot "tensorflow-mnist" (super.callPackage (
+    { mkDerivation, base, binary, bytestring, containers, filepath
+    , HUnit, lens-family, proto-lens, split, stdenv, tensorflow
+    , tensorflow-core-ops, tensorflow-mnist-input-data, tensorflow-ops
+    , tensorflow-proto, test-framework, test-framework-hunit, text
+    , transformers, vector, zlib
+    }:
+    mkDerivation {
+      pname = "tensorflow-mnist";
+      version = "0.1.0.0";
+      src = tensorflow-haskell;
+      isLibrary = true;
+      isExecutable = true;
+      enableSeparateDataOutput = true;
+      libraryHaskellDepends = [
+        base binary bytestring containers filepath lens-family proto-lens
+        split tensorflow tensorflow-core-ops tensorflow-proto text vector
+        zlib
+      ];
+      executableHaskellDepends = [
+        base bytestring filepath lens-family proto-lens tensorflow
+        tensorflow-mnist-input-data tensorflow-ops tensorflow-proto text
+        transformers vector
+      ];
+      testHaskellDepends = [
+        base bytestring HUnit lens-family proto-lens tensorflow
+        tensorflow-mnist-input-data tensorflow-ops tensorflow-proto
+        test-framework test-framework-hunit text transformers vector
+      ];
+      homepage = "https://github.com/tensorflow/haskell#readme";
+      description = "TensorFlow demo application for learning MNIST model";
+      license = stdenv.lib.licenses.asl20;
+    }
+  ) {
+    inherit proto-lens;
+  });
+  tensorflow-mnist-input-data = setSourceRoot "tensorflow-mnist-input-data" (super.callPackage (
+    { mkDerivation, base, bytestring, Cabal, cryptonite, directory
+    , filepath, HTTP, network-uri, stdenv
+    }:
+    mkDerivation {
+      pname = "tensorflow-mnist-input-data";
+      version = "0.1.0.0";
+      src = tensorflow-haskell;
+      enableSeparateDataOutput = true;
+      setupHaskellDepends = [
+        base bytestring Cabal cryptonite directory filepath HTTP
+        network-uri
+      ];
+      libraryHaskellDepends = [ base ];
+      homepage = "https://github.com/tensorflow/haskell#readme";
+      description = "Downloader of input data for training MNIST";
+      license = stdenv.lib.licenses.asl20;
+    }
+  ) {});
+  tensorflow-opgen = setSourceRoot "tensorflow-opgen" (super.callPackage (
+    { mkDerivation, base, bytestring, containers, filepath, lens-family
+    , mainland-pretty, optparse-applicative, proto-lens, semigroups
+    , stdenv, tensorflow-proto, text
+    }:
+    mkDerivation {
+      pname = "tensorflow-opgen";
+      version = "0.1.0.0";
+      src = tensorflow-haskell;
+      libraryHaskellDepends = [
+        base bytestring containers filepath lens-family mainland-pretty
+        optparse-applicative proto-lens semigroups tensorflow-proto text
+      ];
+      homepage = "https://github.com/tensorflow/haskell#readme";
+      description = "Code generation for TensorFlow operations";
+      license = stdenv.lib.licenses.asl20;
+    }
+  ) {
+    inherit mainland-pretty proto-lens;
+  });
+  tensorflow-ops = setSourceRoot "tensorflow-ops" (super.callPackage (
+    { mkDerivation, base, bytestring, containers, criterion
+    , data-default, deepseq, fgl, HUnit, lens-family, mtl, proto-lens
+    , QuickCheck, random, stdenv, temporary, tensorflow
+    , tensorflow-core-ops, tensorflow-proto, tensorflow-test
+    , test-framework, test-framework-hunit, test-framework-quickcheck2
+    , text, transformers, vector
+    }:
+    mkDerivation {
+      pname = "tensorflow-ops";
+      version = "0.1.0.0";
+      src = tensorflow-haskell;
+      libraryHaskellDepends = [
+        base bytestring containers data-default fgl lens-family mtl
+        proto-lens tensorflow tensorflow-core-ops tensorflow-proto text
+      ];
+      testHaskellDepends = [
+        base bytestring data-default HUnit lens-family proto-lens
+        QuickCheck random temporary tensorflow tensorflow-core-ops
+        tensorflow-proto tensorflow-test test-framework
+        test-framework-hunit test-framework-quickcheck2 transformers vector
+      ];
+      benchmarkHaskellDepends = [
+        base criterion deepseq tensorflow transformers vector
+      ];
+      homepage = "https://github.com/tensorflow/haskell#readme";
+      description = "Friendly layer around TensorFlow bindings";
+      license = stdenv.lib.licenses.asl20;
+    }
+  ) {
+    inherit proto-lens;
+  });
+  tensorflow-records = setSourceRoot "tensorflow-records" (super.callPackage (
+    { mkDerivation, base, bytestring, cereal, snappy-framing, stdenv
+    , test-framework, test-framework-quickcheck2
+    }:
+    mkDerivation {
+      pname = "tensorflow-records";
+      version = "0.1.0.0";
+      src = tensorflow-haskell;
+      libraryHaskellDepends = [ base bytestring cereal snappy-framing ];
+      testHaskellDepends = [
+        base bytestring cereal test-framework test-framework-quickcheck2
+      ];
+      homepage = "https://github.com/tensorflow/haskell#readme";
+      description = "Encoder and decoder for the TensorFlow \"TFRecords\" format";
+      license = stdenv.lib.licenses.asl20;
+    }
+  ) {});
+  tensorflow-records-conduit = setSourceRoot "tensorflow-records-conduit" (super.callPackage (
+    { mkDerivation, base, bytestring, cereal-conduit, conduit
+    , conduit-extra, exceptions, resourcet, stdenv, tensorflow-records
+    }:
+    mkDerivation {
+      pname = "tensorflow-records-conduit";
+      version = "0.1.0.0";
+      src = tensorflow-haskell;
+      libraryHaskellDepends = [
+        base bytestring cereal-conduit conduit conduit-extra exceptions
+        resourcet tensorflow-records
+      ];
+      homepage = "https://github.com/tensorflow/haskell#readme";
+      description = "Conduit wrappers for TensorFlow.Records.";
+      license = stdenv.lib.licenses.asl20;
+    }
+  ) {});
+  tensorflow-test = setSourceRoot "tensorflow-test" (super.callPackage (
+    { mkDerivation, base, HUnit, stdenv, vector }:
+    mkDerivation {
+      pname = "tensorflow-test";
+      version = "0.1.0.0";
+      src = tensorflow-haskell;
+      libraryHaskellDepends = [ base HUnit vector ];
+      homepage = "https://github.com/tensorflow/haskell#readme";
+      description = "Some common functions for test suites";
+      license = stdenv.lib.licenses.asl20;
+    }
+  ) {});
+}
diff --git a/pkgs/development/haskell-modules/hackage-packages.nix b/pkgs/development/haskell-modules/hackage-packages.nix
index ff62e2eba3b2..bc502834ee67 100644
--- a/pkgs/development/haskell-modules/hackage-packages.nix
+++ b/pkgs/development/haskell-modules/hackage-packages.nix
@@ -11510,6 +11510,8 @@ self: {
        pname = "ListLike";
        version = "4.6";
        sha256 = "16jsj979mzjrgmpa20pls9ganym3wsps49paks1sb1gmlmwyrkf1";
+       revision = "1";
+       editedCabalFile = "1mbfywf17nnwy2mc15zrsv0j30y1dpblim49nmndpbygq8j26y8j";
        libraryHaskellDepends = [
          array base bytestring containers deepseq dlist fmlist text
          utf8-string vector
@@ -29701,8 +29703,8 @@ self: {
      }:
      mkDerivation {
        pname = "ats-pkg";
-       version = "3.0.0.4";
-       sha256 = "0ynh8f0fn7fhpvslb5y5hl6kwcdycm15b3qfcr4x98yz71hk373s";
+       version = "3.0.0.11";
+       sha256 = "1myqx5hw3khvqwda3iw6fl6ahh8cl5j33g2z1689vvqvivglr2la";
        isLibrary = true;
        isExecutable = true;
        enableSeparateDataOutput = true;
@@ -60066,8 +60068,8 @@ self: {
      }:
      mkDerivation {
        pname = "dfinity-radix-tree";
-       version = "0.1.1";
-       sha256 = "1s9yqmx1nlj62xn2khr0y6gwdjrbknz6yk2inir76gbklsc9fw4s";
+       version = "0.2.0";
+       sha256 = "1sdb6zrxkl0r66ip56c9j3as2l0gmbxk0fsxmgxlpak8rglpnv8k";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -60177,6 +60179,43 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "dhall_1_16_1" = callPackage
+    ({ mkDerivation, ansi-terminal, base, bytestring, case-insensitive
+     , containers, contravariant, criterion, cryptonite, deepseq, Diff
+     , directory, doctest, exceptions, filepath, haskeline, http-client
+     , http-client-tls, insert-ordered-containers, lens-family-core
+     , megaparsec, memory, mockery, mtl, optparse-applicative, parsers
+     , prettyprinter, prettyprinter-ansi-terminal, repline, scientific
+     , tasty, tasty-hunit, template-haskell, text, transformers
+     , unordered-containers, vector
+     }:
+     mkDerivation {
+       pname = "dhall";
+       version = "1.16.1";
+       sha256 = "1mf0x42f1gq8y6518hm1p8j8ca9dgh3nwbw2lfilddk1difrm9h2";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         ansi-terminal base bytestring case-insensitive containers
+         contravariant cryptonite Diff directory exceptions filepath
+         haskeline http-client http-client-tls insert-ordered-containers
+         lens-family-core megaparsec memory mtl optparse-applicative parsers
+         prettyprinter prettyprinter-ansi-terminal repline scientific
+         template-haskell text transformers unordered-containers vector
+       ];
+       executableHaskellDepends = [ base ];
+       testHaskellDepends = [
+         base deepseq directory doctest filepath insert-ordered-containers
+         mockery prettyprinter tasty tasty-hunit text vector
+       ];
+       benchmarkHaskellDepends = [
+         base containers criterion directory text
+       ];
+       description = "A configuration language guaranteed to terminate";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "dhall-bash" = callPackage
     ({ mkDerivation, base, bytestring, containers, dhall
      , insert-ordered-containers, neat-interpolation, optparse-generic
@@ -60186,6 +60225,8 @@ self: {
        pname = "dhall-bash";
        version = "1.0.14";
        sha256 = "1zxqlmnhq8lrwxiqz7hlqln7wf14mlz78s018yqy3hpzmy3aa84d";
+       revision = "1";
+       editedCabalFile = "1ih8w5q0gnys02hv7hnjxxapfqw4gqmd9xfxn7a05cg2gb30mapr";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -60226,6 +60267,8 @@ self: {
        pname = "dhall-json";
        version = "1.2.1";
        sha256 = "0zf88py0hfrzsa3jq5i8nz0wv8m1b753bdakvykmkj6r0dgd574r";
+       revision = "1";
+       editedCabalFile = "06dr99jwvkabav7krb2dj0c037rdrv5mmm9p8ycvx4b7a1zd86h3";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -60268,6 +60311,8 @@ self: {
        pname = "dhall-nix";
        version = "1.1.5";
        sha256 = "1j0b7w8ydhz5fq7jmajz35j8bw2xmr1v0pbl4yfkc2gv8djmiw6y";
+       revision = "1";
+       editedCabalFile = "1k9mb8fm5vxm7asqawvv103y63i81n84py42w7hh72rk3wp3xcnk";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -60288,6 +60333,8 @@ self: {
        pname = "dhall-text";
        version = "1.0.11";
        sha256 = "0zbsr5mchcm3713y6dbdj1vlak5rb6f13p6a8ah7f3kcihdpx0b1";
+       revision = "1";
+       editedCabalFile = "0lrp1aknia3y4cz87vh14ns3f273lbca09ssz138wlf3266ka613";
        isLibrary = false;
        isExecutable = true;
        executableHaskellDepends = [
@@ -70895,8 +70942,8 @@ self: {
      }:
      mkDerivation {
        pname = "extralife";
-       version = "0.1.0.2";
-       sha256 = "1ag8rpj8cyq64w9ig4dm4ssws39y5xyr1c1w0qjrv47vr0vvcpi8";
+       version = "0.1.1.0";
+       sha256 = "0kw5lqfldncl1ci6x6izgs16hl0brrlaxin2yis279a5q4kh8xpz";
        libraryHaskellDepends = [
          aeson base bytestring http-client http-client-tls text time
        ];
@@ -100907,6 +100954,8 @@ self: {
        pname = "hgettext";
        version = "0.1.31.0";
        sha256 = "0s7kgpjlkkw32rbksic099m9g07czi0vrhcn7mbiyi0lyhcbc7ym";
+       revision = "1";
+       editedCabalFile = "1bd60chlmz1mxl5y0v8hqdlfhdxw68vm45x2phjkz2ibq79a9jjg";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -125156,8 +125205,8 @@ self: {
      }:
      mkDerivation {
        pname = "language-ats";
-       version = "1.2.0.15";
-       sha256 = "0ldjbsnspn55xbkwcjbyswiqlpf885si5xl2z0n5kvvwmlrgmfkx";
+       version = "1.2.0.16";
+       sha256 = "1hjp174pfsjj55ksb2x3xlir9v2z5xlnis9cx0d2rz5ff8cwys23";
        enableSeparateDataOutput = true;
        libraryHaskellDepends = [
          ansi-wl-pprint array base composition-prelude containers deepseq
@@ -126376,8 +126425,8 @@ self: {
      }:
      mkDerivation {
        pname = "latex-formulae-hakyll";
-       version = "0.2.0.3";
-       sha256 = "0mdfisdcsbr4q74h6zkrs6pacc2pxhq0dwh31jahpix5p8a07psn";
+       version = "0.2.0.4";
+       sha256 = "0q16p3ccql38ri3rnbsx54vj6jn154j3m6vic64zi4nk54g0sc5f";
        libraryHaskellDepends = [
          base hakyll latex-formulae-image latex-formulae-pandoc lrucache
          pandoc-types
@@ -126393,8 +126442,8 @@ self: {
      }:
      mkDerivation {
        pname = "latex-formulae-image";
-       version = "0.1.1.3";
-       sha256 = "0qf4906n0vs231hiyq6lxck5h5k0gkp9fsn3b0apx94akhr6v0zh";
+       version = "0.1.1.4";
+       sha256 = "0s3r0qd235lgmw4g5j52r2d97zsr3nd0ikzffgpwigvcbzshddv0";
        libraryHaskellDepends = [
          base directory errors filepath JuicyPixels process temporary
          transformers
@@ -126410,8 +126459,8 @@ self: {
      }:
      mkDerivation {
        pname = "latex-formulae-pandoc";
-       version = "0.2.0.5";
-       sha256 = "023l02qlzhxkxkccbqlkhfipgis0657vpn8h6c6hdbc0cnl7cpg6";
+       version = "0.2.0.6";
+       sha256 = "120ckmvd9ykgdxmfidfw9rfifikmg85zh91wvynfwdz27290pz1f";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -131712,16 +131761,16 @@ self: {
 
   "logic-TPTP" = callPackage
     ({ mkDerivation, alex, ansi-wl-pprint, array, base, containers
-     , happy, mtl, pointed, QuickCheck, syb, transformers
+     , happy, mtl, pointed, QuickCheck, semigroups, syb, transformers
      , transformers-compat
      }:
      mkDerivation {
        pname = "logic-TPTP";
-       version = "0.4.5.0";
-       sha256 = "1xlh33axjl1y70rdjx7vv6710a3i8dll6g725m4b5l9l1c5vflkr";
+       version = "0.4.6.0";
+       sha256 = "06c0c5cr330icp9q11l5mvdf3sd67y31bpc38rvvghqvm1v4zn22";
        libraryHaskellDepends = [
-         ansi-wl-pprint array base containers mtl pointed QuickCheck syb
-         transformers transformers-compat
+         ansi-wl-pprint array base containers mtl pointed QuickCheck
+         semigroups syb transformers transformers-compat
        ];
        libraryToolDepends = [ alex happy ];
        description = "Import, export etc. for TPTP, a syntax for first-order logic";
@@ -133747,6 +133796,20 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "mainland-pretty_0_6_2" = callPackage
+    ({ mkDerivation, base, containers, srcloc, text, transformers }:
+     mkDerivation {
+       pname = "mainland-pretty";
+       version = "0.6.2";
+       sha256 = "0w3w1176a2lhcin45vf6f886srggqydj4rgjhrghh715cgh5cxxk";
+       libraryHaskellDepends = [
+         base containers srcloc text transformers
+       ];
+       description = "Pretty printing designed for printing source code";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "mainland-pretty" = callPackage
     ({ mkDerivation, base, containers, srcloc, text, transformers }:
      mkDerivation {
@@ -146563,8 +146626,8 @@ self: {
      }:
      mkDerivation {
        pname = "nix-diff";
-       version = "1.0.3";
-       sha256 = "1580gqc5jy2zrd62drwzl1i7lcq0r0l653yi9s0c08a7xk5vsz7h";
+       version = "1.0.4";
+       sha256 = "1ggsqm8bcfvx3l2nji90gwllkq2v832wihf8msfi9br4mqwx234j";
        isLibrary = false;
        isExecutable = true;
        executableHaskellDepends = [
@@ -153699,6 +153762,26 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "path-io_1_4_0" = callPackage
+    ({ mkDerivation, base, containers, directory, dlist, exceptions
+     , filepath, hspec, path, temporary, time, transformers, unix-compat
+     }:
+     mkDerivation {
+       pname = "path-io";
+       version = "1.4.0";
+       sha256 = "0pffdxzn59qm3ifk746sp2g3h2gip2ijs39gwi0k0xn1rkid6ph5";
+       libraryHaskellDepends = [
+         base containers directory dlist exceptions filepath path temporary
+         time transformers unix-compat
+       ];
+       testHaskellDepends = [
+         base directory exceptions hspec path transformers unix-compat
+       ];
+       description = "Interface to ‘directory’ package for users of ‘path’";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "path-pieces" = callPackage
     ({ mkDerivation, base, hspec, HUnit, QuickCheck, text, time }:
      mkDerivation {
@@ -180495,33 +180578,34 @@ self: {
     ({ mkDerivation, aeson, attoparsec, base, base64-bytestring
      , bytestring, case-insensitive, containers, digestive-functors
      , directory, either, errors, exceptions, filepath, heist, hspec
-     , hspec-core, hspec-snap, http-api-data, http-types, HUnit
-     , io-streams, lens, map-syntax, mmorph, mtl, network, network-uri
-     , parsec, process, QuickCheck, servant, snap, snap-core, snap-cors
-     , snap-server, string-conversions, temporary, text, time
-     , transformers, word8
+     , hspec-core, hspec-snap, http-api-data, http-client, http-media
+     , http-types, HUnit, io-streams, lens, map-syntax, mmorph, mtl
+     , network, network-uri, parsec, process, QuickCheck, servant
+     , servant-client, snap, snap-core, snap-cors, snap-server
+     , string-conversions, temporary, text, time, transformers, word8
      }:
      mkDerivation {
        pname = "servant-snap";
-       version = "0.8.1";
-       sha256 = "0l85gs987g6z3r6pqrf79279l1jmxq3pl8xjz62ps0p3ww1rp296";
+       version = "0.8.2";
+       sha256 = "0iyiifr9przbayqjs7ydwbzwad5m79379ypmmfiyvcw9m14syhyk";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
          aeson attoparsec base base64-bytestring bytestring case-insensitive
-         containers either filepath http-api-data http-types io-streams
-         mmorph mtl network-uri servant snap snap-core snap-server
-         string-conversions text transformers word8
+         containers either filepath http-api-data http-media http-types
+         io-streams mmorph mtl network-uri servant snap snap-core
+         snap-server string-conversions text transformers word8
        ];
        executableHaskellDepends = [
-         aeson base bytestring either errors heist lens map-syntax servant
-         snap snap-core snap-cors snap-server text transformers
+         aeson base bytestring either errors heist http-client lens
+         map-syntax servant servant-client snap snap-core snap-cors
+         snap-server text transformers
        ];
        testHaskellDepends = [
          aeson base base64-bytestring bytestring case-insensitive containers
          digestive-functors directory either exceptions hspec hspec-core
-         hspec-snap http-types HUnit lens mtl network parsec process
-         QuickCheck servant snap snap-core snap-cors snap-server
+         hspec-snap http-types HUnit io-streams lens mtl network parsec
+         process QuickCheck servant snap snap-core snap-cors snap-server
          string-conversions temporary text time transformers
        ];
        description = "A family of combinators for defining webservices APIs and serving them";
@@ -180971,7 +181055,7 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
-  "serverless-haskell_0_7_1" = callPackage
+  "serverless-haskell_0_7_2" = callPackage
     ({ mkDerivation, aeson, aeson-casing, aeson-extra, amazonka-core
      , amazonka-kinesis, amazonka-s3, base, bytestring, case-insensitive
      , hspec, hspec-discover, http-types, iproute, lens, raw-strings-qq
@@ -180979,8 +181063,8 @@ self: {
      }:
      mkDerivation {
        pname = "serverless-haskell";
-       version = "0.7.1";
-       sha256 = "1vjiv56w591vparjw3372fz2vsa5hcm5j3p90j00x882gm23wf22";
+       version = "0.7.2";
+       sha256 = "12nkqx8wsbc1l8hka8i0jr84gdf8k1wvsx5m6nabrnp60zxnqjxc";
        libraryHaskellDepends = [
          aeson aeson-casing aeson-extra amazonka-core amazonka-kinesis
          amazonka-s3 base bytestring case-insensitive http-types iproute
@@ -185734,6 +185818,26 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "smuggler" = callPackage
+    ({ mkDerivation, base, bytestring, containers, directory, filepath
+     , ghc, ghc-exactprint, hash-store, unordered-containers
+     }:
+     mkDerivation {
+       pname = "smuggler";
+       version = "0.0.0";
+       sha256 = "06myh42zc4rgis6bhng60i4skvm9kmvd63lasycp7198mjf61jsn";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         base bytestring containers filepath ghc ghc-exactprint hash-store
+         unordered-containers
+       ];
+       executableHaskellDepends = [ base ];
+       testHaskellDepends = [ base directory filepath ];
+       description = "Smuggling";
+       license = stdenv.lib.licenses.mpl20;
+     }) {};
+
   "snake" = callPackage
     ({ mkDerivation, base, random, split, terminal-size }:
      mkDerivation {
@@ -193806,16 +193910,18 @@ self: {
      }) {};
 
   "substring-parser" = callPackage
-    ({ mkDerivation, attoparsec, base, dlist, hspec, NoTrace
+    ({ mkDerivation, attoparsec, base, dlist, hspec, NoTrace, parsers
      , QuickCheck, text
      }:
      mkDerivation {
        pname = "substring-parser";
-       version = "0.4.0.0";
-       sha256 = "0xi3yjgp87515g99qxnhjkcr2ddqc0b6rz0whg2zsi00z1sb6wc3";
-       libraryHaskellDepends = [ attoparsec base dlist NoTrace text ];
+       version = "0.4.1.0";
+       sha256 = "1d49py3dn7jh9y0pqm9in6qhhk5xi8dr8m143h5raqji4q53mfva";
+       libraryHaskellDepends = [
+         attoparsec base dlist NoTrace parsers text
+       ];
        testHaskellDepends = [
-         attoparsec base hspec NoTrace QuickCheck text
+         attoparsec base hspec NoTrace parsers QuickCheck text
        ];
        description = "Match / replace substrings with a parser combinators";
        license = stdenv.lib.licenses.asl20;
@@ -198624,10 +198730,10 @@ self: {
   "tensorflow" = callPackage
     ({ mkDerivation, async, attoparsec, base, bytestring, c2hs
      , containers, data-default, exceptions, fgl, HUnit, lens-family
-     , mainland-pretty, mtl, proto-lens, proto-lens-protoc, semigroups
-     , split, temporary, tensorflow, tensorflow-proto, test-framework
-     , test-framework-hunit, test-framework-quickcheck2, text
-     , transformers, vector
+     , libtensorflow, mainland-pretty, mtl, proto-lens
+     , proto-lens-protoc, semigroups, split, temporary, tensorflow-proto
+     , test-framework, test-framework-hunit, test-framework-quickcheck2
+     , text, transformers, vector
      }:
      mkDerivation {
        pname = "tensorflow";
@@ -198639,7 +198745,7 @@ self: {
          semigroups split temporary tensorflow-proto text transformers
          vector
        ];
-       librarySystemDepends = [ tensorflow ];
+       librarySystemDepends = [ libtensorflow ];
        libraryToolDepends = [ c2hs ];
        testHaskellDepends = [
          attoparsec base bytestring HUnit lens-family proto-lens
@@ -198649,7 +198755,7 @@ self: {
        description = "TensorFlow bindings";
        license = stdenv.lib.licenses.asl20;
        hydraPlatforms = stdenv.lib.platforms.none;
-     }) {tensorflow = null;};
+     }) {inherit (pkgs) libtensorflow;};
 
   "tensorflow-core-ops" = callPackage
     ({ mkDerivation, base, bytestring, Cabal, directory, filepath
@@ -207831,7 +207937,7 @@ self: {
      }) {};
 
   "udev" = callPackage
-    ({ mkDerivation, base, bytestring, udev, posix-paths, unix }:
+    ({ mkDerivation, base, bytestring, libudev, posix-paths, unix }:
      mkDerivation {
        pname = "udev";
        version = "0.1.0.0";
@@ -207839,12 +207945,12 @@ self: {
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ base bytestring posix-paths unix ];
-       libraryPkgconfigDepends = [ udev ];
+       libraryPkgconfigDepends = [ libudev ];
        description = "libudev bindings";
        license = stdenv.lib.licenses.bsd3;
        platforms = [ "i686-linux" "x86_64-linux" ];
        hydraPlatforms = stdenv.lib.platforms.none;
-     }) {inherit (pkgs) udev;};
+     }) {inherit (pkgs) libudev;};
 
   "udp-conduit" = callPackage
     ({ mkDerivation, base, chunked-data, conduit-combinators