3
0
Fork 0
forked from mirrors/nixpkgs

Add a build for cabal-install-3.0.0.0 beta release.

This commit is contained in:
Peter Simons 2019-08-23 16:49:38 +02:00
parent 826b492dc3
commit ddfb9a1f2c
2 changed files with 43 additions and 24 deletions

View file

@ -41,30 +41,9 @@ self: super: {
unix = null;
xhtml = null;
# Use the current git version of cabal-install.
cabal-install = overrideCabal (super.cabal-install.overrideScope (self: super: { Cabal = self.Cabal-git; })) (drv: {
src = pkgs.fetchFromGitHub {
owner = "haskell";
repo = "cabal";
rev = "e98f6c26fa301b49921c2df67934bf9b0a4f3386";
sha256 = "15nrkvckq2rw31z7grgbsg5f0gxfc09afsrqdfi4n471k630xd2i";
};
version = "20190510-git";
editedCabalFile = null;
postUnpack = "sourceRoot+=/cabal-install";
jailbreak = true;
});
Cabal-git = overrideCabal super.Cabal_2_4_1_0 (drv: {
src = pkgs.fetchFromGitHub {
owner = "haskell";
repo = "cabal";
rev = "e98f6c26fa301b49921c2df67934bf9b0a4f3386";
sha256 = "15nrkvckq2rw31z7grgbsg5f0gxfc09afsrqdfi4n471k630xd2i";
};
version = "20190510-git";
editedCabalFile = null;
postUnpack = "sourceRoot+=/Cabal";
});
# Use the cabal-install 3.0.0.0 beta release.
cabal-install = self.cabal-install-3;
Cabal_3_0_0_0 = null; # Our compiler has this already.
# Ignore overly restrictive upper version bounds.
async = doJailbreak super.async;

View file

@ -12,4 +12,44 @@ self: super: {
# https://github.com/channable/vaultenv/issues/1
vaultenv = self.callPackage ../tools/haskell/vaultenv { };
cabal-install-3 = (self.callPackage
({ mkDerivation, array, async, base, base16-bytestring, binary
, bytestring, Cabal, containers, cryptohash-sha256, deepseq
, directory, echo, edit-distance, filepath, hackage-security
, hashable, HTTP, mtl, network, network-uri, parsec, pretty
, process, random, resolv, stdenv, stm, tar, text, time, unix, zlib
, fetchFromGitHub
}:
mkDerivation {
pname = "cabal-install";
version = "3.0.0.0";
src = fetchFromGitHub {
owner = "haskell";
repo = "cabal";
rev = "b0e52fa173573705e861b129d9675e59de891e46";
sha256 = "1fbph6crsn9ji8ps1k8dsxvgqn38rp4ffvv6nia1y7rbrdv90ass";
};
postUnpack = "sourceRoot+=/cabal-install";
isLibrary = false;
isExecutable = true;
setupHaskellDepends = [ base Cabal filepath process ];
executableHaskellDepends = [
array async base base16-bytestring binary bytestring Cabal
containers cryptohash-sha256 deepseq directory echo edit-distance
filepath hackage-security hashable HTTP mtl network network-uri
parsec pretty process random resolv stm tar text time unix zlib
];
doCheck = false;
postInstall = ''
mkdir $out/etc
mv bash-completion $out/etc/bash_completion.d
'';
homepage = "http://www.haskell.org/cabal/";
description = "The command-line interface for Cabal and Hackage";
license = stdenv.lib.licenses.bsd3;
}) {}).overrideScope (self: super: {
Cabal = self.Cabal_3_0_0_0;
});
}