forked from datahub-project/datahub
-
Notifications
You must be signed in to change notification settings - Fork 0
/
dataset-jdbc-generator.hs.nix
54 lines (49 loc) · 1.56 KB
/
dataset-jdbc-generator.hs.nix
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
with import <nixpkgs> {} ;
let
inline_java_git = fetchFromGitHub {
owner = "tweag" ;
repo = "inline-java" ;
rev = "a897d32df99e4ed19314d2a7e245785152e9099d" ;
sha256 = "00pk19j9g0mm9sknj3aklz01zv1dy234s3vnzg6daq1dmwd4hb68" ;
} ;
haskellPackages = pkgs.haskellPackages.override {
overrides = self: super: with pkgs.haskell.lib; {
jni = overrideCabal (self.callCabal2nix "jni" (inline_java_git + /jni) {}) (drv: {
preConfigure = ''
local libdir=( "${pkgs.jdk}/lib/openjdk/jre/lib/"*"/server" )
configureFlags+=" --extra-lib-dir=''${libdir[0]}"
'' ;
}) ;
jvm = overrideCabal (self.callCabal2nix "jvm" (inline_java_git + /jvm) {}) (drv: {
doCheck = false ;
}) ;
inline-java = overrideCabal (self.callCabal2nix "inline-java" inline_java_git {}) (drv: {
doCheck = false ;
}) ;
jvm-batching = overrideCabal (self.callCabal2nix "jvm-batching" (inline_java_git + /jvm-batching) {}) (drv: {
doCheck = false ;
}) ;
jvm-streaming = overrideCabal (self.callCabal2nix "jvm-streaming" (inline_java_git + /jvm-streaming) {}) (drv: {
doCheck = false ;
}) ;
} ;
};
in
mkShell {
buildInputs = [
pkgs.jdk
pkgs.postgresql_jdbc
pkgs.mysql_jdbc
pkgs.mssql_jdbc
pkgs.oracle-instantclient
(haskellPackages.ghcWithPackages ( p:
[ p.bytestring p.string-conversions
p.interpolatedstring-perl6
p.aeson p.aeson-qq
p.exceptions
p.inline-java
p.conduit
]
))
];
}