1{ pkgs, haskellLib }:
2
3with haskellLib;
4
5self: super:
6let
7 # This contains updates to the dependencies, without which it would
8 # be even more work to get it to build.
9 # As of 2020-04, there's no new release in sight, which is why we're
10 # pulling from Github.
11 tensorflow-haskell = pkgs.fetchFromGitHub {
12 owner = "tensorflow";
13 repo = "haskell";
14 rev = "555d90c43202d5a3021893013bfc8e2ffff58c97";
15 sha256 = "uOuIeD4o+pcjvluTqyVU3GJUQ4e1+p3FhINJ9b6oK+k=";
16 fetchSubmodules = true;
17 };
18
19 setTensorflowSourceRoot =
20 dir: drv:
21 (overrideCabal (drv: { src = tensorflow-haskell; }) drv).overrideAttrs (_oldAttrs: {
22 sourceRoot = "${tensorflow-haskell.name}/${dir}";
23 });
24in
25{
26 tensorflow-proto = setTensorflowSourceRoot "tensorflow-proto" super.tensorflow-proto;
27
28 tensorflow = overrideCabal (drv: {
29 libraryHaskellDepends = drv.libraryHaskellDepends ++ [ self.vector-split ];
30 }) (setTensorflowSourceRoot "tensorflow" super.tensorflow);
31
32 tensorflow-core-ops = setTensorflowSourceRoot "tensorflow-core-ops" super.tensorflow-core-ops;
33
34 tensorflow-logging = setTensorflowSourceRoot "tensorflow-logging" super.tensorflow-logging;
35
36 tensorflow-opgen = setTensorflowSourceRoot "tensorflow-opgen" super.tensorflow-opgen;
37
38 tensorflow-ops = setTensorflowSourceRoot "tensorflow-ops" super.tensorflow-ops;
39}