1
+ { system
2
+ , compiler
3
+ , flags
4
+ , pkgs
5
+ , hsPkgs
6
+ , pkgconfPkgs
7
+ , errorHandler
8
+ , config
9
+ , ... } :
10
+ {
11
+ flags = { } ;
12
+ package = {
13
+ specVersion = "1.10" ;
14
+ identifier = { name = "hackernews" ; version = "1.4.0.0" ; } ;
15
+ license = "MIT" ;
16
+ copyright = "" ;
17
+
18
+ author = "David Johnson" ;
19
+ homepage = "" ;
20
+ url = "" ;
21
+ synopsis = "API for Hacker News" ;
22
+ description = "API for news.ycombinator.com" ;
23
+ buildType = "Simple" ;
24
+ } ;
25
+ components = {
26
+ "library" = {
27
+ depends = [
28
+ ( hsPkgs . "servant" or ( errorHandler . buildDepError "servant" ) )
29
+ ( hsPkgs . "QuickCheck" or ( errorHandler . buildDepError "QuickCheck" ) )
30
+ ( hsPkgs . "quickcheck-instances" or ( errorHandler . buildDepError "quickcheck-instances" ) )
31
+ ] ++ ( if compiler . isGhcjs && true
32
+ then [
33
+ ( hsPkgs . "aeson" or ( errorHandler . buildDepError "aeson" ) )
34
+ ( hsPkgs . "attoparsec" or ( errorHandler . buildDepError "attoparsec" ) )
35
+ ( hsPkgs . "base" or ( errorHandler . buildDepError "base" ) )
36
+ ( hsPkgs . "ghcjs-base" or ( errorHandler . buildDepError "ghcjs-base" ) )
37
+ ( hsPkgs . "string-conversions" or ( errorHandler . buildDepError "string-conversions" ) )
38
+ ( hsPkgs . "text" or ( errorHandler . buildDepError "text" ) )
39
+ ]
40
+ else [
41
+ ( hsPkgs . "aeson" or ( errorHandler . buildDepError "aeson" ) )
42
+ ( hsPkgs . "base" or ( errorHandler . buildDepError "base" ) )
43
+ ( hsPkgs . "servant-client" or ( errorHandler . buildDepError "servant-client" ) )
44
+ ( hsPkgs . "http-client" or ( errorHandler . buildDepError "http-client" ) )
45
+ ( hsPkgs . "string-conversions" or ( errorHandler . buildDepError "string-conversions" ) )
46
+ ( hsPkgs . "http-types" or ( errorHandler . buildDepError "http-types" ) )
47
+ ( hsPkgs . "text" or ( errorHandler . buildDepError "text" ) )
48
+ ] ) ;
49
+ buildable = true ;
50
+ } ;
51
+ exes = {
52
+ "hackernews-example" = {
53
+ depends = if compiler . isGhcjs && true
54
+ then [
55
+ ( hsPkgs . "base" or ( errorHandler . buildDepError "base" ) )
56
+ ( hsPkgs . "hackernews" or ( errorHandler . buildDepError "hackernews" ) )
57
+ ( hsPkgs . "ghcjs-base" or ( errorHandler . buildDepError "ghcjs-base" ) )
58
+ ]
59
+ else [
60
+ ( hsPkgs . "base" or ( errorHandler . buildDepError "base" ) )
61
+ ( hsPkgs . "hackernews" or ( errorHandler . buildDepError "hackernews" ) )
62
+ ( hsPkgs . "http-client-tls" or ( errorHandler . buildDepError "http-client-tls" ) )
63
+ ( hsPkgs . "http-client" or ( errorHandler . buildDepError "http-client" ) )
64
+ ] ;
65
+ buildable = true ;
66
+ } ;
67
+ "ghcjs-tests" = {
68
+ depends = pkgs . lib . optionals ( compiler . isGhcjs && true ) [
69
+ ( hsPkgs . "base" or ( errorHandler . buildDepError "base" ) )
70
+ ( hsPkgs . "hackernews" or ( errorHandler . buildDepError "hackernews" ) )
71
+ ( hsPkgs . "ghcjs-base" or ( errorHandler . buildDepError "ghcjs-base" ) )
72
+ ( hsPkgs . "hspec" or ( errorHandler . buildDepError "hspec" ) )
73
+ ( hsPkgs . "hspec-core" or ( errorHandler . buildDepError "hspec-core" ) )
74
+ ( hsPkgs . "quickcheck-instances" or ( errorHandler . buildDepError "quickcheck-instances" ) )
75
+ ( hsPkgs . "aeson" or ( errorHandler . buildDepError "aeson" ) )
76
+ ( hsPkgs . "QuickCheck" or ( errorHandler . buildDepError "QuickCheck" ) )
77
+ ] ;
78
+ buildable = if compiler . isGhcjs && true then true else false ;
79
+ } ;
80
+ } ;
81
+ tests = {
82
+ "ghc-tests" = {
83
+ depends = [
84
+ ( hsPkgs . "aeson" or ( errorHandler . buildDepError "aeson" ) )
85
+ ( hsPkgs . "base" or ( errorHandler . buildDepError "base" ) )
86
+ ( hsPkgs . "hackernews" or ( errorHandler . buildDepError "hackernews" ) )
87
+ ( hsPkgs . "hspec" or ( errorHandler . buildDepError "hspec" ) )
88
+ ( hsPkgs . "http-client-tls" or ( errorHandler . buildDepError "http-client-tls" ) )
89
+ ( hsPkgs . "http-client" or ( errorHandler . buildDepError "http-client" ) )
90
+ ( hsPkgs . "QuickCheck" or ( errorHandler . buildDepError "QuickCheck" ) )
91
+ ( hsPkgs . "quickcheck-instances" or ( errorHandler . buildDepError "quickcheck-instances" ) )
92
+ ] ;
93
+ buildable = if compiler . isGhcjs && true then false else true ;
94
+ } ;
95
+ } ;
96
+ } ;
97
+ }
0 commit comments