338 lines
13 KiB
Nix
338 lines
13 KiB
Nix
{ pkgs }:
|
|
|
|
with import ./lib.nix { inherit pkgs; };
|
|
|
|
self: super: {
|
|
|
|
# Suitable LLVM version.
|
|
llvmPackages = pkgs.llvmPackages_35;
|
|
|
|
# Disable GHC 7.10.x core libraries.
|
|
array = null;
|
|
base = null;
|
|
binary = null;
|
|
bin-package-db = null;
|
|
bytestring = null;
|
|
Cabal = null;
|
|
containers = null;
|
|
deepseq = null;
|
|
directory = null;
|
|
filepath = null;
|
|
ghc-prim = null;
|
|
haskeline = null;
|
|
hoopl = null;
|
|
hpc = null;
|
|
integer-gmp = null;
|
|
pretty = null;
|
|
process = null;
|
|
rts = null;
|
|
template-haskell = null;
|
|
terminfo = null;
|
|
time = null;
|
|
transformers = null;
|
|
unix = null;
|
|
xhtml = null;
|
|
|
|
# should be fixed in versions > 0.6
|
|
pandoc-citeproc = overrideCabal super.pandoc-citeproc (drv: {
|
|
patches = [
|
|
(pkgs.fetchpatch {
|
|
url = "https://github.com/jgm/pandoc-citeproc/commit/4e4f9c2.patch";
|
|
sha256 = "18b08k56g5q4zz6jxczkrddblyn52vmd0811n1icfdpzqhgykn4p";
|
|
})
|
|
(pkgs.fetchpatch {
|
|
url = "https://github.com/jgm/pandoc-citeproc/commit/34cc147.patch";
|
|
sha256 = "09vrdvg5w14qckn154zlxvk6i2ikmmhpsl9mxycxkql3rl4dqam3";
|
|
})
|
|
(pkgs.fetchpatch {
|
|
url = "https://github.com/jgm/pandoc-citeproc/commit/8242c70.patch";
|
|
sha256 = "1lqpwxzz2www81w4mym75z36bsavqfj67hyvzn20ffvxq42yw7ry";
|
|
})
|
|
(pkgs.fetchpatch {
|
|
url = "https://github.com/jgm/pandoc-citeproc/commit/e59f88d.patch";
|
|
sha256 = "05699hj3qa2vrfdnikj7rzmc2ajrkd7p8yd4cjlhmqq9asq90xzb";
|
|
})
|
|
(pkgs.fetchpatch {
|
|
url = "https://github.com/jgm/pandoc-citeproc/commit/ae6ca86.patch";
|
|
sha256 = "19cag39k5s7iqagpvss9c2ny5g0lwnrawaqcc0labihc1a181k8l";
|
|
})
|
|
(pkgs.fetchpatch {
|
|
url = "https://github.com/jgm/pandoc-citeproc/commit/f5a9fc7.patch";
|
|
sha256 = "08lsinh3mkjpz3cqj5i1vcnzkyl07jp38qcjcwcw7m2b7gsjbpvm";
|
|
})
|
|
(pkgs.fetchpatch {
|
|
url = "https://github.com/jgm/pandoc-citeproc/commit/780a554.patch";
|
|
sha256 = "1kfn0mcp3vp32c9w8gyz0p0jv0xn90as9mxm8a2lmjng52jlzvy4";
|
|
})
|
|
];
|
|
});
|
|
|
|
# ekmett/linear#74
|
|
linear = overrideCabal super.linear (drv: {
|
|
prePatch = "sed -i 's/-Werror//g' linear.cabal";
|
|
});
|
|
|
|
# Cabal_1_22_1_1 requires filepath >=1 && <1.4
|
|
cabal-install = dontCheck (super.cabal-install.override { Cabal = null; });
|
|
|
|
HStringTemplate = self.HStringTemplate_0_8_3;
|
|
|
|
# We have Cabal 1.22.x.
|
|
jailbreak-cabal = super.jailbreak-cabal.override { Cabal = null; };
|
|
|
|
# GHC 7.10.x's Haddock binary cannot generate hoogle files.
|
|
# https://ghc.haskell.org/trac/ghc/ticket/9921
|
|
mkDerivation = drv: super.mkDerivation (drv // { doHoogle = false; });
|
|
|
|
# haddock: No input file(s).
|
|
nats = dontHaddock super.nats;
|
|
bytestring-builder = dontHaddock super.bytestring-builder;
|
|
|
|
# We have time 1.5
|
|
aeson = disableCabalFlag super.aeson "old-locale";
|
|
|
|
# requires filepath >=1.1 && <1.4
|
|
Glob = doJailbreak super.Glob;
|
|
|
|
# Setup: At least the following dependencies are missing: base <4.8
|
|
hspec-expectations = overrideCabal super.hspec-expectations (drv: {
|
|
patchPhase = "sed -i -e 's|base < 4.8|base|' hspec-expectations.cabal";
|
|
});
|
|
utf8-string = overrideCabal super.utf8-string (drv: {
|
|
patchPhase = "sed -i -e 's|base >= 3 && < 4.8|base|' utf8-string.cabal";
|
|
});
|
|
esqueleto = doJailbreak super.esqueleto;
|
|
pointfree = doJailbreak super.pointfree;
|
|
|
|
# acid-state/safecopy#25 acid-state/safecopy#26
|
|
safecopy = dontCheck (super.safecopy);
|
|
|
|
# bos/attoparsec#92
|
|
attoparsec = dontCheck super.attoparsec;
|
|
|
|
# Test suite fails with some (seemingly harmless) error.
|
|
# https://code.google.com/p/scrapyourboilerplate/issues/detail?id=24
|
|
syb = dontCheck super.syb;
|
|
|
|
# Test suite has stricter version bounds
|
|
retry = dontCheck super.retry;
|
|
|
|
# Test suite fails with time >= 1.5
|
|
http-date = dontCheck super.http-date;
|
|
|
|
# Version 1.19.5 fails its test suite.
|
|
happy = dontCheck super.happy;
|
|
|
|
# Test suite fails in "/tokens_bytestring_unicode.g.bin".
|
|
alex = dontCheck super.alex;
|
|
|
|
# TODO: update generation code in cabal2nix
|
|
haddock-library = self.haddock-library_1_2_0;
|
|
|
|
# Upstream was notified about the over-specified constraint on 'base'
|
|
# but refused to do anything about it because he "doesn't want to
|
|
# support a moving target". Go figure.
|
|
barecheck = doJailbreak super.barecheck;
|
|
|
|
syb-with-class = appendPatch super.syb-with-class (pkgs.fetchpatch {
|
|
url = "https://github.com/seereason/syb-with-class/compare/adc86a9...719e567.patch";
|
|
sha256 = "1lwwvxyhxcmppdapbgpfhwi7xc2z78qir03xjrpzab79p2qyq7br";
|
|
});
|
|
|
|
# https://github.com/kazu-yamamoto/unix-time/issues/30
|
|
unix-time = dontCheck super.unix-time;
|
|
|
|
# Until the changes have been pushed to Hackage
|
|
ghc-events = appendPatch super.ghc-events (pkgs.fetchpatch {
|
|
url = "https://patch-diff.githubusercontent.com/raw/haskell/ghc-events/pull/8.patch";
|
|
sha256 = "1k881jrvzfvs761jgfhf5nsbmbc33c9333l4s0f5088p46ff2n1l";
|
|
});
|
|
dependent-sum-template = appendPatch super.dependent-sum-template (pkgs.fetchpatch {
|
|
url = "https://patch-diff.githubusercontent.com/raw/mokus0/dependent-sum-template/pull/4.patch";
|
|
sha256 = "1yb1ny4ckl4d3sf4xnvpbsa9rw2dficzgipijs5s3729dnsc3rb0";
|
|
});
|
|
mueval = appendPatch super.mueval (pkgs.fetchpatch {
|
|
url = "https://patch-diff.githubusercontent.com/raw/gwern/mueval/pull/10.patch";
|
|
sha256 = "1gs8p89d1qsrd1qycbhf6kv4qw0sbb8m6dy106dqkmdzcjzcyq74";
|
|
});
|
|
|
|
# Already applied in darcs repository.
|
|
gnuplot = appendPatch super.gnuplot ./gnuplot-fix-new-time.patch;
|
|
|
|
ghcjs-prim = self.callPackage ({ mkDerivation, fetchgit, primitive }: mkDerivation {
|
|
pname = "ghcjs-prim";
|
|
version = "0.1.0.0";
|
|
src = fetchgit {
|
|
url = git://github.com/ghcjs/ghcjs-prim.git;
|
|
rev = "ca08e46257dc276e01d08fb47a693024bae001fa"; # ghc-7.10 branch
|
|
sha256 = "0w7sqzp5p70yhmdhqasgkqbf3b61wb24djlavwil2j8ry9y472w3";
|
|
};
|
|
buildDepends = [ primitive ];
|
|
license = pkgs.stdenv.lib.licenses.bsd3;
|
|
}) {};
|
|
|
|
# diagrams/monoid-extras#19
|
|
monoid-extras = overrideCabal super.monoid-extras (drv: {
|
|
prePatch = "sed -i 's|4\.8|4.9|' monoid-extras.cabal";
|
|
});
|
|
|
|
# diagrams/statestack#5
|
|
statestack = overrideCabal super.statestack (drv: {
|
|
prePatch = "sed -i 's|4\.8|4.9|' statestack.cabal";
|
|
});
|
|
|
|
# diagrams/diagrams-core#83
|
|
diagrams-core = overrideCabal super.diagrams-core (drv: {
|
|
prePatch = "sed -i 's|4\.8|4.9|' diagrams-core.cabal";
|
|
});
|
|
|
|
# diagrams/diagrams-core#83
|
|
diagrams-lib = overrideCabal super.diagrams-lib (drv: {
|
|
prePatch = "sed -i 's|4\.8|4.9|' diagrams-lib.cabal";
|
|
patches = [ ./diagrams-lib-flexible-contexts.patch ];
|
|
});
|
|
|
|
# https://github.com/mokus0/misfortune/pull/1
|
|
misfortune = appendPatch super.misfortune (pkgs.fetchpatch {
|
|
url = "https://patch-diff.githubusercontent.com/raw/mokus0/misfortune/pull/1.patch";
|
|
sha256 = "15frwdallm3i6k7mil26bbjd4wl6k9h20ixf3cmyris3q3jhlcfh";
|
|
});
|
|
|
|
timezone-series = doJailbreak super.timezone-series;
|
|
timezone-olson = doJailbreak super.timezone-olson;
|
|
libmpd = dontCheck super.libmpd;
|
|
xmonad-extras = overrideCabal super.xmonad-extras (drv: {
|
|
postPatch = ''
|
|
sed -i -e "s,<\*,<¤,g" XMonad/Actions/Volume.hs
|
|
'';
|
|
});
|
|
|
|
# Workaround for a workaround, see comment for "ghcjs" flag.
|
|
jsaddle = let jsaddle' = disableCabalFlag super.jsaddle "ghcjs";
|
|
in addBuildDepends jsaddle' [ self.glib self.gtk3 self.webkitgtk3
|
|
self.webkitgtk3-javascriptcore ];
|
|
|
|
# Fix evaluation in GHC >=7.8: https://github.com/lambdabot/lambdabot/issues/116
|
|
lambdabot = appendPatch super.lambdabot ./lambdabot-fix-ghc78.patch;
|
|
|
|
# https://github.com/haskell-infra/hackage-trustees/issues/24
|
|
brainfuck = appendPatch super.brainfuck ./brainfuck-fix-ghc710.patch;
|
|
unlambda = appendPatch super.unlambda ./unlambda-fix-ghc710.patch;
|
|
|
|
# Sent e-mail to the maintainer.
|
|
IOSpec = appendPatch super.IOSpec ./IOSpec-fix-ghc710.patch;
|
|
|
|
# Updated Cabal file from Hackage tightened version bounds for some reason.
|
|
edit-distance = let pkg = appendPatch super.edit-distance ./edit-distance-fix-boundaries.patch;
|
|
in appendPatch pkg (pkgs.fetchpatch {
|
|
url = "https://patch-diff.githubusercontent.com/raw/batterseapower/edit-distance/pull/3.patch";
|
|
sha256 = "013x9za47vr9jx0liwgi8cdh2h2882a87h5nqvr41xqipzxfiyw1";
|
|
});
|
|
|
|
# https://github.com/BNFC/bnfc/issues/137
|
|
BNFC = markBrokenVersion "2.7.1" super.BNFC;
|
|
cubical = dontDistribute super.cubical;
|
|
|
|
# contacted maintainer by e-mail
|
|
HList = markBrokenVersion "0.3.4.1" super.HList;
|
|
AspectAG = dontDistribute super.AspectAG;
|
|
Rlang-QQ = dontDistribute super.Rlang-QQ;
|
|
SyntaxMacros = dontDistribute super.SyntaxMacros;
|
|
expand = dontDistribute super.expand;
|
|
functional-arrow = dontDistribute super.functional-arrow;
|
|
guess-combinator = dontDistribute super.guess-combinator;
|
|
ihaskell-rlangqq = dontDistribute super.ihaskell-rlangqq;
|
|
ipopt-hs = dontDistribute super.ipopt-hs;
|
|
murder = dontDistribute super.murder;
|
|
netcore = dontDistribute super.netcore;
|
|
nettle-frp = dontDistribute super.nettle-frp;
|
|
nettle-netkit = dontDistribute super.nettle-netkit;
|
|
nettle-openflow = dontDistribute super.nettle-openflow;
|
|
oberon0 = dontDistribute super.oberon0;
|
|
respond = dontDistribute super.respond;
|
|
semi-iso = dontDistribute super.semi-iso;
|
|
syntax = dontDistribute super.syntax;
|
|
syntax-attoparsec = dontDistribute super.syntax-attoparsec;
|
|
syntax-example = dontDistribute super.syntax-example;
|
|
syntax-example-json = dontDistribute super.syntax-example-json;
|
|
syntax-pretty = dontDistribute super.syntax-pretty;
|
|
syntax-printer = dontDistribute super.syntax-printer;
|
|
tuple-hlist = dontDistribute super.tuple-hlist;
|
|
tuple-morph = dontDistribute super.tuple-morph;
|
|
|
|
# contacted maintainer by e-mail
|
|
cmdlib = markBroken super.cmdlib;
|
|
darcs-fastconvert = dontDistribute super.darcs-fastconvert;
|
|
ivory-backend-c = dontDistribute super.ivory-backend-c;
|
|
ivory-bitdata = dontDistribute super.ivory-bitdata;
|
|
ivory-examples = dontDistribute super.ivory-examples;
|
|
ivory-hw = dontDistribute super.ivory-hw;
|
|
laborantin-hs = dontDistribute super.laborantin-hs;
|
|
|
|
# https://github.com/cartazio/arithmoi/issues/1
|
|
arithmoi = markBroken super.arithmoi;
|
|
NTRU = dontDistribute super.NTRU;
|
|
arith-encode = dontDistribute super.arith-encode;
|
|
barchart = dontDistribute super.barchart;
|
|
constructible = dontDistribute super.constructible;
|
|
cyclotomic = dontDistribute super.cyclotomic;
|
|
diagrams = dontDistribute super.diagrams;
|
|
diagrams-contrib = dontDistribute super.diagrams-contrib;
|
|
enumeration = dontDistribute super.enumeration;
|
|
ghci-diagrams = dontDistribute super.ghci-diagrams;
|
|
ihaskell-diagrams = dontDistribute super.ihaskell-diagrams;
|
|
nimber = dontDistribute super.nimber;
|
|
quadratic-irrational = dontDistribute super.quadratic-irrational;
|
|
|
|
# https://github.com/kazu-yamamoto/ghc-mod/issues/467
|
|
ghc-mod = markBroken super.ghc-mod;
|
|
HaRe = dontDistribute super.HaRe;
|
|
ghc-imported-from = dontDistribute super.ghc-imported-from;
|
|
git-vogue = dontDistribute super.git-vogue;
|
|
haskell-token-utils = dontDistribute super.haskell-token-utils;
|
|
hbb = dontDistribute super.hbb;
|
|
hsdev = dontDistribute super.hsdev;
|
|
|
|
# http://hub.darcs.net/ivanm/graphviz/issue/5
|
|
graphviz = markBroken super.graphviz;
|
|
Graphalyze = dontDistribute super.Graphalyze;
|
|
HLearn-approximation = dontDistribute super.HLearn-approximation;
|
|
HLearn-classification = dontDistribute super.HLearn-classification;
|
|
HLearn-distributions = dontDistribute super.HLearn-distributions;
|
|
SourceGraph = dontDistribute super.SourceGraph;
|
|
Zora = dontDistribute super.Zora;
|
|
ampersand = dontDistribute super.ampersand;
|
|
caffegraph = dontDistribute super.caffegraph;
|
|
dot2graphml = dontDistribute super.dot2graphml;
|
|
dvda = dontDistribute super.dvda;
|
|
erd = dontDistribute super.erd;
|
|
filediff = dontDistribute super.filediff;
|
|
fsmActions = dontDistribute super.fsmActions;
|
|
gbu = dontDistribute super.gbu;
|
|
geni-gui = dontDistribute super.geni-gui;
|
|
ghc-vis = dontDistribute super.ghc-vis;
|
|
grammar-combinators = dontDistribute super.grammar-combinators;
|
|
llvm-analysis = dontDistribute super.llvm-analysis;
|
|
llvm-base-types = dontDistribute super.llvm-base-types;
|
|
llvm-data-interop = dontDistribute super.llvm-data-interop;
|
|
llvm-tools = dontDistribute super.llvm-tools;
|
|
marxup = dontDistribute super.marxup;
|
|
mathgenealogy = dontDistribute super.mathgenealogy;
|
|
optimusprime = dontDistribute super.optimusprime;
|
|
phybin = dontDistribute super.phybin;
|
|
prolog-graph = dontDistribute super.prolog-graph;
|
|
prolog-graph-lib = dontDistribute super.prolog-graph-lib;
|
|
teams = dontDistribute super.teams;
|
|
vacuum-graphviz = dontDistribute super.vacuum-graphviz;
|
|
vampire = dontDistribute super.vampire;
|
|
visual-graphrewrite = dontDistribute super.visual-graphrewrite;
|
|
xdot = dontDistribute super.xdot;
|
|
|
|
# https://github.com/lymar/hastache/issues/47
|
|
hastache = dontCheck super.hastache;
|
|
|
|
# The compat library is empty in the presence of mtl 2.2.x.
|
|
mtl-compat = dontHaddock super.mtl-compat;
|
|
|
|
}
|