haskell: remove all but the latest LTS package sets (version 6.7)

This is the first step towards dropping Stackage support. We keep LTS 6.x
around because I don't want to downgrade our default compiler to GHC 7.x,
but once LTS 7.x comes out we'll switch our main package set to that and
drop Nightly.

More details are at:

  http://permalink.gmane.org/gmane.linux.distributions.nixos/20505

Closes https://github.com/NixOS/nixpkgs/issues/14897.

Also relevant:

 - https://github.com/NixOS/nixpkgs/issues/16130
 - https://github.com/commercialhaskell/stack/issues/2259
This commit is contained in:
Peter Simons 2016-07-19 14:47:04 +02:00
parent 77a9ab33a6
commit 641fc0e683
105 changed files with 137 additions and 996739 deletions

View File

@ -39,7 +39,7 @@ rec {
svnSupport = true;
}));
git-annex = pkgs.haskell.packages.lts.git-annex-with-assistant;
git-annex = pkgs.haskell.packages.lts.git-annex;
gitAnnex = git-annex;
git-annex-remote-b2 = callPackage ./git-annex-remote-b2 { };

View File

@ -5,9 +5,7 @@ with import ./lib.nix { inherit pkgs; };
self: super: {
# Some packages need a non-core version of Cabal.
Cabal_1_22_4_0 = super.Cabal_1_22_4_0.overrideScope (self: super: { binary = self.binary_0_7_6_1; });
cabal-install = super.cabal-install.overrideScope (self: super: { Cabal = self.Cabal_1_24_0_0; });
cabal-install_1_18_1_0 = (dontCheck super.cabal-install_1_18_1_0).overrideScope (self: super: { Cabal = self.Cabal_1_18_1_7; });
# Link statically to avoid runtime dependency on GHC.
jailbreak-cabal = (disableSharedExecutables super.jailbreak-cabal).override { Cabal = dontJailbreak self.Cabal_1_20_0_4; };
@ -19,25 +17,10 @@ self: super: {
clock = dontCheck super.clock;
Dust-crypto = dontCheck super.Dust-crypto;
hasql-postgres = dontCheck super.hasql-postgres;
hspec_2_1_2 = super.hspec_2_1_2.override { stringbuilder = dontCheck super.stringbuilder; };
hspec_2_1_3 = super.hspec_2_1_3.override { stringbuilder = dontCheck super.stringbuilder; };
hspec_2_1_4 = super.hspec_2_1_4.override { stringbuilder = dontCheck super.stringbuilder; };
hspec_2_1_5 = super.hspec_2_1_5.override { stringbuilder = dontCheck super.stringbuilder; };
hspec_2_1_6 = super.hspec_2_1_6.override { stringbuilder = dontCheck super.stringbuilder; };
hspec_2_1_7 = super.hspec_2_1_7.override { stringbuilder = dontCheck super.stringbuilder; };
hspec_2_1_10 = super.hspec_2_1_10.override { stringbuilder = dontCheck super.stringbuilder; };
hspec_2_2_1 = super.hspec_2_2_1.override { stringbuilder = dontCheck super.stringbuilder; };
hspec_2_2_2 = super.hspec_2_2_2.override { stringbuilder = dontCheck super.stringbuilder; };
hspec-expectations_0_6_1_1 = dontCheck super.hspec-expectations_0_6_1_1;
hspec-expectations_0_6_1 = dontCheck super.hspec-expectations_0_6_1;
hspec-expectations_0_7_1 = dontCheck super.hspec-expectations_0_7_1;
hspec-expectations = dontCheck super.hspec-expectations;
hspec = super.hspec.override { stringbuilder = dontCheck super.stringbuilder; };
HTTP = dontCheck super.HTTP;
nanospec_0_2_0 = dontCheck super.nanospec_0_2_0;
nanospec = dontCheck super.nanospec;
options_1_2_1 = dontCheck super.options_1_2_1;
options_1_2 = dontCheck super.options_1_2;
options = dontCheck super.options;
statistics = dontCheck super.statistics;
c2hs = if pkgs.stdenv.isDarwin then dontCheck super.c2hs else super.c2hs;
@ -48,31 +31,8 @@ self: super: {
# Link the proper version.
zeromq4-haskell = super.zeromq4-haskell.override { zeromq = pkgs.zeromq4; };
# This package needs a little help compiling properly on Darwin. Furthermore,
# Stackage compiles git-annex without the Assistant, supposedly because not
# all required dependencies are part of Stackage. To comply with Stackage, we
# make 'git-annex-without-assistant' our default version, but offer another
# build which has the assistant to be used in the top-level.
git-annex_5_20150727 = (disableCabalFlag super.git-annex_5_20150727 "assistant").override {
dbus = if pkgs.stdenv.isLinux then self.dbus else null;
lsof = if pkgs.stdenv.isLinux then pkgs.lsof else null;
fdo-notify = if pkgs.stdenv.isLinux then self.fdo-notify else null;
hinotify = if pkgs.stdenv.isLinux then self.hinotify else self.fsnotify;
};
git-annex = (disableCabalFlag super.git-annex "assistant").override {
dbus = if pkgs.stdenv.isLinux then self.dbus else null;
lsof = if pkgs.stdenv.isLinux then pkgs.lsof else null;
fdo-notify = if pkgs.stdenv.isLinux then self.fdo-notify else null;
hinotify = if pkgs.stdenv.isLinux then self.hinotify else self.fsnotify;
};
# Joey Hess is nuts. The release tarball uploaded to Hackage deliberately
# lacks files to break in the installation procedure, because ... you know
# ... because! He feels people shouldn't use the tarballs he publishes and
# instead use the git repository instead. Which makes me seriously wonder why
# the f*ck I'm spending my spare time packaging this crap when I could just
# as well install Syncthing in the time I routinely waste adding kludges to
# work around this guy's crazy ideas of how to express his individuality.
git-annex-with-assistant = (overrideCabal super.git-annex (drv: {
# This package needs a little help compiling properly on Darwin.
git-annex = (overrideCabal super.git-annex (drv: {
src = pkgs.fetchFromGitHub {
owner = "joeyh";
repo = "git-annex";
@ -170,13 +130,6 @@ self: super: {
HDBC-odbc = dontHaddock super.HDBC-odbc;
hoodle-core = dontHaddock super.hoodle-core;
hsc3-db = dontHaddock super.hsc3-db;
hspec-discover_2_1_10 = dontHaddock super.hspec-discover_2_1_10;
hspec-discover_2_1_2 = dontHaddock super.hspec-discover_2_1_2;
hspec-discover_2_1_3 = dontHaddock super.hspec-discover_2_1_3;
hspec-discover_2_1_4 = dontHaddock super.hspec-discover_2_1_4;
hspec-discover_2_1_5 = dontHaddock super.hspec-discover_2_1_5;
hspec-discover_2_1_6 = dontHaddock super.hspec-discover_2_1_6;
hspec-discover_2_1_7 = dontHaddock super.hspec-discover_2_1_7;
hspec-discover = dontHaddock super.hspec-discover;
http-client-conduit = dontHaddock super.http-client-conduit;
http-client-multipart = dontHaddock super.http-client-multipart;
@ -244,10 +197,6 @@ self: super: {
# tests don't compile for some odd reason
jwt = dontCheck super.jwt;
# https://github.com/NixOS/cabal2nix/issues/136
gio_0_13_0_3 = addPkgconfigDepend super.gio_0_13_0_3 pkgs.glib;
gio_0_13_0_4 = addPkgconfigDepend super.gio_0_13_0_4 pkgs.glib;
gio_0_13_1_0 = addPkgconfigDepend super.gio_0_13_1_0 pkgs.glib;
# https://github.com/NixOS/cabal2nix/issues/136 and https://github.com/NixOS/cabal2nix/issues/216
gio = addPkgconfigDepend (addBuildTool super.gio self.gtk2hs-buildtools) pkgs.glib;
glib = addPkgconfigDepend (addBuildTool super.glib self.gtk2hs-buildtools) pkgs.glib;
@ -300,7 +249,6 @@ self: super: {
pocket-dns = dontCheck super.pocket-dns;
postgresql-simple = dontCheck super.postgresql-simple;
postgrest = dontCheck super.postgrest;
setenv_0_1_1_1 = dontCheck super.setenv_0_1_1_1;
snowball = dontCheck super.snowball;
sophia = dontCheck super.sophia;
test-sandbox = dontCheck super.test-sandbox;
@ -419,9 +367,6 @@ self: super: {
hsexif = dontCheck super.hsexif;
hspec-server = dontCheck super.hspec-server;
HTF = dontCheck super.HTF;
HTF_0_12_2_3 = dontCheck super.HTF_0_12_2_3;
HTF_0_12_2_4 = dontCheck super.HTF_0_12_2_4;
HTF_0_13_0_0 = dontCheck super.HTF_0_13_0_0;
htsn = dontCheck super.htsn;
htsn-import = dontCheck super.htsn-import;
http-client-openssl = dontCheck super.http-client-openssl;
@ -466,9 +411,6 @@ self: super: {
separated = dontCheck super.separated;
shadowsocks = dontCheck super.shadowsocks;
shake-language-c = dontCheck super.shake-language-c;
shake-language-c_0_6_3 = dontCheck super.shake-language-c_0_6_3;
shake-language-c_0_6_4 = dontCheck super.shake-language-c_0_6_4;
shake-language-c_0_8_0 = dontCheck super.shake-language-c_0_8_0;
static-resources = dontCheck super.static-resources;
strive = dontCheck super.strive; # fails its own hlint test with tons of warnings
svndump = dontCheck super.svndump;
@ -891,30 +833,13 @@ self: super: {
# https://github.com/guillaume-nargeot/hpc-coveralls/issues/52
hpc-coveralls = disableSharedExecutables super.hpc-coveralls;
hpc-coveralls_0_9_0 = disableSharedExecutables super.hpc-coveralls_0_9_0;
# Test suite won't compile.
semigroupoids_5_0_0_3 = dontCheck super.semigroupoids_5_0_0_3;
# This is fixed in newer versions.
zip-archive_0_2_3_5 = addBuildTool super.zip-archive_0_2_3_5 pkgs.zip;
# https://github.com/fpco/stackage/issues/838
cryptonite = dontCheck super.cryptonite;
cryptonite_0_6 = dontCheck super.cryptonite_0_6 ;
# https://github.com/fpco/stackage/issues/843
hmatrix-gsl-stats_0_4_1 = overrideCabal super.hmatrix-gsl-stats_0_4_1 (drv: {
postUnpack = "rm */Setup.lhs";
});
# We cannot build this package w/o the C library from <http://www.phash.org/>.
phash = markBroken super.phash;
# https://github.com/yesodweb/serversession/issues/2
# https://github.com/haskell/cabal/issues/2661
serversession-backend-acid-state_1_0_1 = dontCheck super.serversession-backend-acid-state_1_0_1;
# https://github.com/sol/hpack/issues/53
hpack = dontCheck super.hpack;
@ -935,35 +860,15 @@ self: super: {
librarySystemDepends = (drv.librarySystemDepends or []) ++ [ pkgs.ncurses ];
});
# https://github.com/mainland/language-c-quote/issues/57
language-c-quote = super.language-c-quote.override { alex = self.alex_3_1_4; };
# https://github.com/agda/agda/issues/1840
Agda_2_4_2_3 = super.Agda_2_4_2_3.override {
unordered-containers = self.unordered-containers_0_2_5_1;
cpphs = self.cpphs_1_19_3;
};
Agda_2_4_2_4 = super.Agda_2_4_2_4.override {
unordered-containers = self.unordered-containers_0_2_5_1;
cpphs = self.cpphs_1_19_3;
};
Agda = super.Agda.override {
unordered-containers = self.unordered-containers_0_2_5_1;
cpphs = self.cpphs_1_19_3;
};
# We get lots of strange compiler errors during the test suite run.
jsaddle = dontCheck super.jsaddle;
# https://github.com/gwern/mueval/issues/14
mueval = super.mueval.override { hint = self.hint_0_4_3; };
# Looks like Avahi provides the missing library
dnssd = super.dnssd.override { dns_sd = pkgs.avahi.override { withLibdnssdCompat = true; }; };
# Haste stuff
haste-Cabal = self.callPackage ../tools/haskell/haste/haste-Cabal.nix {};
haste-cabal-install = self.callPackage ../tools/haskell/haste/haste-cabal-install.nix { Cabal = self.haste-Cabal; HTTP = self.HTTP_4000_2_23; };
haste-cabal-install = self.callPackage ../tools/haskell/haste/haste-cabal-install.nix { Cabal = self.haste-Cabal; };
haste-compiler = self.callPackage ../tools/haskell/haste/haste-compiler.nix { inherit overrideCabal; super-haste-compiler = super.haste-compiler; };
# Ensure the necessary frameworks are propagatedBuildInputs on darwin
@ -1004,18 +909,6 @@ self: super: {
[ pkgs.darwin.apple_sdk.frameworks.OpenCL ];
});
# Tests must be disabled on darwin for all versions of c2hs
# (e.g. Stackage LTS releases).
c2hs_0_20_1 = if pkgs.stdenv.isDarwin
then dontCheck super.c2hs_0_20_1
else super.c2hs_0_20_1;
c2hs_0_25_2 = if pkgs.stdenv.isDarwin
then dontCheck super.c2hs_0_25_2
else super.c2hs_0_25_2;
c2hs_0_27_1 = if pkgs.stdenv.isDarwin
then dontCheck super.c2hs_0_27_1
else super.c2hs_0_27_1;
# tinc is a new build driver a la Stack that's not yet available from Hackage.
tinc = self.callPackage ../tools/haskell/tinc {};

View File

@ -56,8 +56,7 @@ self: super: {
Cabal_1_18_1_7 = dontJailbreak super.Cabal_1_18_1_7;
# We have no working cabal-install at the moment.
cabal-install_1_18_1_0 = markBroken super.cabal-install_1_18_1_0;
cabal-install = self.cabal-install_1_18_1_0;
cabal-install = markBroken super.cabal-install;
# https://github.com/tibbe/hashable/issues/85
hashable = dontCheck super.hashable;

View File

@ -48,7 +48,6 @@ self: super: {
# Newer versions don't compile.
Cabal_1_18_1_7 = dontJailbreak super.Cabal_1_18_1_7;
cabal-install = self.cabal-install_1_18_1_0;
# https://github.com/peti/jailbreak-cabal/issues/9
jailbreak-cabal = super.jailbreak-cabal.override {

View File

@ -46,7 +46,6 @@ self: super: {
# Newer versions don't compile.
Cabal_1_18_1_7 = dontJailbreak super.Cabal_1_18_1_7;
cabal-install = self.cabal-install_1_18_1_0;
# https://github.com/tibbe/hashable/issues/85
hashable = dontCheck super.hashable;

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

Some files were not shown because too many files have changed in this diff Show More