1/* Build instructions for the continuous integration system Hydra. */
3{ cabal2nixSrc ? { outPath = ./.; revCount = 0; gitTag = "dirty"; }
5, supportedPlatforms ? if releaseBuild then ["i686-linux" "x86_64-linux" /*"x86_64-darwin"*/] else ["x86_64-linux"]
6, supportedCompilers ? if releaseBuild then ["ghc784"] else ["ghc704" "ghc722" "ghc742" "ghc763" "ghc784" /*"ghcHEAD"*/]
10 genAttrs = (import <nixpkgs> { }).lib.genAttrs;
13 cabal2nix = genAttrs supportedCompilers (ghcVer: genAttrs supportedPlatforms (system:
15 pkgs = import <nixpkgs> { inherit system; };
16 haskellPackages = pkgs.lib.getAttrFromPath ["haskellPackages_${ghcVer}"] pkgs;
17 nativeCabal = pkgs.stdenv.lib.versionOlder "7.8" haskellPackages.ghc.version;
18 Cabal = if nativeCabal then null else haskellPackages.Cabal_1_18_1_3;
19 hackageDb = haskellPackages.hackageDb.override { Cabal = Cabal; };
21 haskellPackages.cabal.mkDerivation (self: {
24 version = cabal2nixSrc.gitTag;
27 buildDepends = with haskellPackages; [ Cabal filepath hackageDb mtl regexPosix transformers ];
28 testDepends = with haskellPackages; [ doctest ];
29 doCheck = nativeCabal;
31 homepage = "http://github.com/NixOS/cabal2nix";
32 description = "Convert Cabal files into Nix build instructions";
33 license = self.stdenv.lib.licenses.bsd3;
34 maintainers = [ self.stdenv.lib.maintainers.simons ];
keysesc to close
- j k
- move down, up
- enter
- open
- esc
- back, or up a level
- 1 2 3 4
- readme, files, commits, refs
- /
- filter
- y
- copy the clone command
- c
- compare the chosen commit with another (or shift-click both)
- ?
- show or hide this list