haskell/ghcjs: sort ghcjs packages alphabetically
This commit is contained in:
parent
a7043808dd
commit
06e0bac814
@ -1,3 +1,7 @@
|
||||
# GHCJS package fixes
|
||||
#
|
||||
# Please insert new packages *alphabetically*
|
||||
# in the OTHER PACKAGES section.
|
||||
{ pkgs }:
|
||||
|
||||
let
|
||||
@ -9,6 +13,8 @@ with import ./lib.nix { inherit pkgs; };
|
||||
|
||||
self: super:
|
||||
|
||||
## GENERAL SETUP BASE PACKAGES
|
||||
|
||||
let # The stage 1 packages
|
||||
stage1 = pkgs.lib.genAttrs super.ghc.stage1Packages (pkg: null);
|
||||
# The stage 2 packages. Regenerate with ../compilers/ghcjs/gen-stage2.rb
|
||||
@ -47,24 +53,26 @@ self: super:
|
||||
terminfo = self.terminfo_0_4_0_1;
|
||||
xhtml = self.xhtml_3000_2_1;
|
||||
|
||||
pqueue = overrideCabal super.pqueue (drv: {
|
||||
postPatch = ''
|
||||
sed -i -e '12s|null|Data.PQueue.Internals.null|' Data/PQueue/Internals.hs
|
||||
sed -i -e '64s|null|Data.PQueue.Internals.null|' Data/PQueue/Internals.hs
|
||||
sed -i -e '32s|null|Data.PQueue.Internals.null|' Data/PQueue/Min.hs
|
||||
sed -i -e '32s|null|Data.PQueue.Max.null|' Data/PQueue/Max.hs
|
||||
sed -i -e '42s|null|Data.PQueue.Prio.Internals.null|' Data/PQueue/Prio/Min.hs
|
||||
sed -i -e '42s|null|Data.PQueue.Prio.Max.null|' Data/PQueue/Prio/Max.hs
|
||||
|
||||
## OTHER PACKAGES
|
||||
|
||||
cereal = addBuildDepend super.cereal [ self.fail ];
|
||||
|
||||
entropy = overrideCabal super.entropy (old: {
|
||||
postPatch = old.postPatch or "" + ''
|
||||
# cabal doesn’t find ghc in this script, since it’s in the bootPkgs
|
||||
sed -e '/Simple.Program/a import Distribution.Simple.Program.Types' \
|
||||
-e 's|mConf.*=.*$|mConf = Just $ simpleConfiguredProgram "ghc" (FoundOnSystem "${self.ghc.bootPkgs.ghc}/bin/ghc")|g' -i Setup.hs
|
||||
'';
|
||||
});
|
||||
|
||||
transformers-compat = overrideCabal super.transformers-compat (drv: {
|
||||
configureFlags = [];
|
||||
});
|
||||
|
||||
profunctors = overrideCabal super.profunctors (drv: {
|
||||
preConfigure = ''
|
||||
sed -i 's/^{-# ANN .* #-}//' src/Data/Profunctor/Unsafe.hs
|
||||
# https://github.com/kazu-yamamoto/logger/issues/97
|
||||
fast-logger = overrideCabal super.fast-logger (old: {
|
||||
postPatch = old.postPatch or "" + ''
|
||||
# remove the Safe extensions, since ghcjs-boot directory
|
||||
# doesn’t provide Trustworthy
|
||||
sed -ie '/LANGUAGE Safe/d' System/Log/FastLogger/*.hs
|
||||
cat System/Log/FastLogger/Date.hs
|
||||
'';
|
||||
});
|
||||
|
||||
@ -98,6 +106,28 @@ self: super:
|
||||
patches = [ ./patches/ghc-paths-nix-ghcjs.patch ];
|
||||
});
|
||||
|
||||
http2 = addBuildDepends super.http2 [ self.aeson self.aeson-pretty self.hex self.unordered-containers self.vector self.word8 ];
|
||||
# ghcjsBoot uses async 2.0.1.6, protolude wants 2.1.*
|
||||
|
||||
pqueue = overrideCabal super.pqueue (drv: {
|
||||
postPatch = ''
|
||||
sed -i -e '12s|null|Data.PQueue.Internals.null|' Data/PQueue/Internals.hs
|
||||
sed -i -e '64s|null|Data.PQueue.Internals.null|' Data/PQueue/Internals.hs
|
||||
sed -i -e '32s|null|Data.PQueue.Internals.null|' Data/PQueue/Min.hs
|
||||
sed -i -e '32s|null|Data.PQueue.Max.null|' Data/PQueue/Max.hs
|
||||
sed -i -e '42s|null|Data.PQueue.Prio.Internals.null|' Data/PQueue/Prio/Min.hs
|
||||
sed -i -e '42s|null|Data.PQueue.Prio.Max.null|' Data/PQueue/Prio/Max.hs
|
||||
'';
|
||||
});
|
||||
|
||||
profunctors = overrideCabal super.profunctors (drv: {
|
||||
preConfigure = ''
|
||||
sed -i 's/^{-# ANN .* #-}//' src/Data/Profunctor/Unsafe.hs
|
||||
'';
|
||||
});
|
||||
|
||||
protolude = doJailbreak super.protolude;
|
||||
|
||||
# reflex 0.3, made compatible with the newest GHCJS.
|
||||
reflex = overrideCabal super.reflex (drv: {
|
||||
src = pkgs.fetchFromGitHub {
|
||||
@ -122,32 +152,14 @@ self: super:
|
||||
] drv.libraryHaskellDepends;
|
||||
});
|
||||
|
||||
http2 = addBuildDepends super.http2 [ self.aeson self.aeson-pretty self.hex self.unordered-containers self.vector self.word8 ];
|
||||
# ghcjsBoot uses async 2.0.1.6, protolude wants 2.1.*
|
||||
protolude = doJailbreak super.protolude;
|
||||
semigroups = addBuildDepends super.semigroups [ self.hashable self.unordered-containers self.text self.tagged ];
|
||||
# triggers an internal pattern match failure in haddock
|
||||
# https://github.com/haskell/haddock/issues/553
|
||||
wai = dontHaddock super.wai;
|
||||
cereal = addBuildDepend super.cereal [ self.fail ];
|
||||
|
||||
entropy = overrideCabal super.entropy (old: {
|
||||
postPatch = old.postPatch or "" + ''
|
||||
# cabal doesn’t find ghc in this script, since it’s in the bootPkgs
|
||||
sed -e '/Simple.Program/a import Distribution.Simple.Program.Types' \
|
||||
-e 's|mConf.*=.*$|mConf = Just $ simpleConfiguredProgram "ghc" (FoundOnSystem "${self.ghc.bootPkgs.ghc}/bin/ghc")|g' -i Setup.hs
|
||||
'';
|
||||
transformers-compat = overrideCabal super.transformers-compat (drv: {
|
||||
configureFlags = [];
|
||||
});
|
||||
|
||||
|
||||
# https://github.com/kazu-yamamoto/logger/issues/97
|
||||
fast-logger = overrideCabal super.fast-logger (old: {
|
||||
postPatch = old.postPatch or "" + ''
|
||||
# remove the Safe extensions, since ghcjs-boot directory
|
||||
# doesn’t provide Trustworthy
|
||||
sed -ie '/LANGUAGE Safe/d' System/Log/FastLogger/*.hs
|
||||
cat System/Log/FastLogger/Date.hs
|
||||
'';
|
||||
});
|
||||
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user