|
| 1 | +{ system, compiler, flags, pkgs, hsPkgs, pkgconfPkgs, ... }: |
| 2 | + { |
| 3 | + flags = { optimize = false; profiling = false; tracing = false; }; |
| 4 | + package = { |
| 5 | + specVersion = "1.10"; |
| 6 | + identifier = { name = "hnix"; version = "0.5.2"; }; |
| 7 | + license = "BSD-3-Clause"; |
| 8 | + copyright = ""; |
| 9 | + |
| 10 | + author = "John Wiegley"; |
| 11 | + homepage = "https://github.com/haskell-nix/hnix#readme"; |
| 12 | + url = ""; |
| 13 | + synopsis = "Haskell implementation of the Nix language"; |
| 14 | + description = "Haskell implementation of the Nix language."; |
| 15 | + buildType = "Simple"; |
| 16 | + }; |
| 17 | + components = { |
| 18 | + "library" = { |
| 19 | + depends = (((([ |
| 20 | + (hsPkgs.aeson) |
| 21 | + (hsPkgs.array) |
| 22 | + (hsPkgs.base) |
| 23 | + (hsPkgs.binary) |
| 24 | + (hsPkgs.bytestring) |
| 25 | + (hsPkgs.containers) |
| 26 | + (hsPkgs.data-fix) |
| 27 | + (hsPkgs.deepseq) |
| 28 | + (hsPkgs.dependent-sum) |
| 29 | + (hsPkgs.deriving-compat) |
| 30 | + (hsPkgs.directory) |
| 31 | + (hsPkgs.exceptions) |
| 32 | + (hsPkgs.filepath) |
| 33 | + (hsPkgs.free) |
| 34 | + (hsPkgs.hashing) |
| 35 | + (hsPkgs.http-client) |
| 36 | + (hsPkgs.http-client-tls) |
| 37 | + (hsPkgs.http-types) |
| 38 | + (hsPkgs.interpolate) |
| 39 | + (hsPkgs.lens-family-th) |
| 40 | + (hsPkgs.logict) |
| 41 | + (hsPkgs.megaparsec) |
| 42 | + (hsPkgs.monadlist) |
| 43 | + (hsPkgs.mtl) |
| 44 | + (hsPkgs.optparse-applicative) |
| 45 | + (hsPkgs.parser-combinators) |
| 46 | + (hsPkgs.prettyprinter) |
| 47 | + (hsPkgs.process) |
| 48 | + (hsPkgs.ref-tf) |
| 49 | + (hsPkgs.regex-tdfa) |
| 50 | + (hsPkgs.regex-tdfa-text) |
| 51 | + (hsPkgs.scientific) |
| 52 | + (hsPkgs.semigroups) |
| 53 | + (hsPkgs.split) |
| 54 | + (hsPkgs.syb) |
| 55 | + (hsPkgs.template-haskell) |
| 56 | + (hsPkgs.text) |
| 57 | + (hsPkgs.these) |
| 58 | + (hsPkgs.time) |
| 59 | + (hsPkgs.transformers) |
| 60 | + (hsPkgs.unix) |
| 61 | + (hsPkgs.unordered-containers) |
| 62 | + (hsPkgs.vector) |
| 63 | + (hsPkgs.xml) |
| 64 | + ] ++ (pkgs.lib).optional (system.isLinux && (compiler.isGhc && (compiler.version).ge "8.2") && (compiler.isGhc && (compiler.version).lt "8.3")) (hsPkgs.compact)) ++ (pkgs.lib).optionals (!(compiler.isGhcjs && true)) [ |
| 65 | + (hsPkgs.base16-bytestring) |
| 66 | + (hsPkgs.cryptohash-md5) |
| 67 | + (hsPkgs.cryptohash-sha1) |
| 68 | + (hsPkgs.cryptohash-sha256) |
| 69 | + (hsPkgs.cryptohash-sha512) |
| 70 | + (hsPkgs.serialise) |
| 71 | + ]) ++ [ |
| 72 | + (hsPkgs.lens-family) |
| 73 | + (hsPkgs.lens-family-core) |
| 74 | + ]) ++ (pkgs.lib).optional (compiler.isGhc && (compiler.version).lt "8.4.0" && !flags.profiling) (hsPkgs.ghc-datasize)) ++ (if compiler.isGhcjs && true |
| 75 | + then [ (hsPkgs.hashable) ] |
| 76 | + else [ (hsPkgs.hashable) (hsPkgs.haskeline) (hsPkgs.pretty-show) ]); |
| 77 | + }; |
| 78 | + exes = { |
| 79 | + "hnix" = { |
| 80 | + depends = ([ |
| 81 | + (hsPkgs.aeson) |
| 82 | + (hsPkgs.base) |
| 83 | + (hsPkgs.bytestring) |
| 84 | + (hsPkgs.containers) |
| 85 | + (hsPkgs.data-fix) |
| 86 | + (hsPkgs.deepseq) |
| 87 | + (hsPkgs.exceptions) |
| 88 | + (hsPkgs.filepath) |
| 89 | + (hsPkgs.hashing) |
| 90 | + (hsPkgs.haskeline) |
| 91 | + (hsPkgs.hnix) |
| 92 | + (hsPkgs.mtl) |
| 93 | + (hsPkgs.optparse-applicative) |
| 94 | + (hsPkgs.pretty-show) |
| 95 | + (hsPkgs.prettyprinter) |
| 96 | + (hsPkgs.repline) |
| 97 | + (hsPkgs.template-haskell) |
| 98 | + (hsPkgs.text) |
| 99 | + (hsPkgs.time) |
| 100 | + (hsPkgs.transformers) |
| 101 | + (hsPkgs.unordered-containers) |
| 102 | + ] ++ (pkgs.lib).optional (system.isLinux && (compiler.isGhc && (compiler.version).ge "8.2") && (compiler.isGhc && (compiler.version).lt "8.3")) (hsPkgs.compact)) ++ (pkgs.lib).optionals (!(compiler.isGhcjs && true)) [ |
| 103 | + (hsPkgs.base16-bytestring) |
| 104 | + (hsPkgs.cryptohash-md5) |
| 105 | + (hsPkgs.cryptohash-sha1) |
| 106 | + (hsPkgs.cryptohash-sha256) |
| 107 | + (hsPkgs.cryptohash-sha512) |
| 108 | + (hsPkgs.serialise) |
| 109 | + ]; |
| 110 | + }; |
| 111 | + }; |
| 112 | + tests = { |
| 113 | + "hnix-tests" = { |
| 114 | + depends = ([ |
| 115 | + (hsPkgs.Diff) |
| 116 | + (hsPkgs.Glob) |
| 117 | + (hsPkgs.base) |
| 118 | + (hsPkgs.bytestring) |
| 119 | + (hsPkgs.containers) |
| 120 | + (hsPkgs.data-fix) |
| 121 | + (hsPkgs.deepseq) |
| 122 | + (hsPkgs.dependent-sum) |
| 123 | + (hsPkgs.directory) |
| 124 | + (hsPkgs.exceptions) |
| 125 | + (hsPkgs.filepath) |
| 126 | + (hsPkgs.generic-random) |
| 127 | + (hsPkgs.hashing) |
| 128 | + (hsPkgs.hedgehog) |
| 129 | + (hsPkgs.hnix) |
| 130 | + (hsPkgs.interpolate) |
| 131 | + (hsPkgs.megaparsec) |
| 132 | + (hsPkgs.mtl) |
| 133 | + (hsPkgs.optparse-applicative) |
| 134 | + (hsPkgs.pretty-show) |
| 135 | + (hsPkgs.prettyprinter) |
| 136 | + (hsPkgs.process) |
| 137 | + (hsPkgs.split) |
| 138 | + (hsPkgs.tasty) |
| 139 | + (hsPkgs.tasty-hedgehog) |
| 140 | + (hsPkgs.tasty-hunit) |
| 141 | + (hsPkgs.tasty-quickcheck) |
| 142 | + (hsPkgs.tasty-th) |
| 143 | + (hsPkgs.template-haskell) |
| 144 | + (hsPkgs.text) |
| 145 | + (hsPkgs.time) |
| 146 | + (hsPkgs.transformers) |
| 147 | + (hsPkgs.unix) |
| 148 | + (hsPkgs.unordered-containers) |
| 149 | + ] ++ (pkgs.lib).optional (system.isLinux && (compiler.isGhc && (compiler.version).ge "8.2") && (compiler.isGhc && (compiler.version).lt "8.3")) (hsPkgs.compact)) ++ (pkgs.lib).optionals (!(compiler.isGhcjs && true)) [ |
| 150 | + (hsPkgs.base16-bytestring) |
| 151 | + (hsPkgs.cryptohash-md5) |
| 152 | + (hsPkgs.cryptohash-sha1) |
| 153 | + (hsPkgs.cryptohash-sha256) |
| 154 | + (hsPkgs.cryptohash-sha512) |
| 155 | + (hsPkgs.serialise) |
| 156 | + ]; |
| 157 | + build-tools = [ ((hsPkgs.buildPackages).hspec-discover) ]; |
| 158 | + }; |
| 159 | + }; |
| 160 | + benchmarks = { |
| 161 | + "hnix-benchmarks" = { |
| 162 | + depends = ([ |
| 163 | + (hsPkgs.base) |
| 164 | + (hsPkgs.bytestring) |
| 165 | + (hsPkgs.containers) |
| 166 | + (hsPkgs.criterion) |
| 167 | + (hsPkgs.data-fix) |
| 168 | + (hsPkgs.deepseq) |
| 169 | + (hsPkgs.exceptions) |
| 170 | + (hsPkgs.filepath) |
| 171 | + (hsPkgs.hashing) |
| 172 | + (hsPkgs.hnix) |
| 173 | + (hsPkgs.mtl) |
| 174 | + (hsPkgs.optparse-applicative) |
| 175 | + (hsPkgs.template-haskell) |
| 176 | + (hsPkgs.text) |
| 177 | + (hsPkgs.time) |
| 178 | + (hsPkgs.transformers) |
| 179 | + (hsPkgs.unordered-containers) |
| 180 | + ] ++ (pkgs.lib).optional (system.isLinux && (compiler.isGhc && (compiler.version).ge "8.2") && (compiler.isGhc && (compiler.version).lt "8.3")) (hsPkgs.compact)) ++ (pkgs.lib).optionals (!(compiler.isGhcjs && true)) [ |
| 181 | + (hsPkgs.base16-bytestring) |
| 182 | + (hsPkgs.cryptohash-md5) |
| 183 | + (hsPkgs.cryptohash-sha1) |
| 184 | + (hsPkgs.cryptohash-sha256) |
| 185 | + (hsPkgs.cryptohash-sha512) |
| 186 | + (hsPkgs.serialise) |
| 187 | + ]; |
| 188 | + }; |
| 189 | + }; |
| 190 | + }; |
| 191 | + } // { |
| 192 | + src = pkgs.fetchgit { |
| 193 | + url = "https://github.com/haskell-nix/hnix.git"; |
| 194 | + rev = "617d0867ab96c8f97b02c4524bd948d9f114005e"; |
| 195 | + sha256 = "037kxj9wirynmavlp7d0k19a5xrhj117hlh3yia12xj6v828b99z"; |
| 196 | + }; |
| 197 | + } |
0 commit comments