blob: 5ef5eff3bef17048b7a414cb8d88a6c598d84aa2 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
|
{ pkgs, lib }:
self: pkgs.haskell.packages.ghc92.override {
overrides = self: super: with pkgs.haskell.lib.compose; with lib;
let
elmPkgs = rec {
/*
The elm-format expression is updated via a script in the https://github.com/avh4/elm-format repo:
`package/nix/build.sh`
*/
elm-format = justStaticExecutables (overrideCabal
(drv: {
jailbreak = true;
doHaddock = false;
postPatch = ''
mkdir -p ./generated
cat <<EOHS > ./generated/Build_elm_format.hs
module Build_elm_format where
gitDescribe :: String
gitDescribe = "${drv.version}"
EOHS
'';
description = "Formats Elm source code according to a standard set of rules based on the official Elm Style Guide";
homepage = "https://github.com/avh4/elm-format";
license = licenses.bsd3;
maintainers = with maintainers; [ avh4 turbomack ];
})
(self.callPackage ./elm-format/elm-format.nix { }));
};
fixHaddock = overrideCabal (_: {
configureFlags = [ "--ghc-option=-Wno-error=unused-packages" ];
doHaddock = false;
});
in
elmPkgs // {
inherit elmPkgs;
# Needed for elm-format
avh4-lib = fixHaddock (doJailbreak (self.callPackage ./elm-format/avh4-lib.nix { }));
elm-format-lib = fixHaddock (doJailbreak (self.callPackage ./elm-format/elm-format-lib.nix { }));
elm-format-test-lib = fixHaddock (self.callPackage ./elm-format/elm-format-test-lib.nix { });
elm-format-markdown = fixHaddock (self.callPackage ./elm-format/elm-format-markdown.nix { });
# elm-format requires text >= 2.0
text = self.text_2_0_2;
# unorderd-container's tests indirectly depend on text < 2.0
unordered-containers = overrideCabal (drv: { doCheck = false; }) super.unordered-containers;
# relude-1.1.0.0's tests depend on hedgehog < 1.2, which indirectly depends on text < 2.0
relude = overrideCabal (drv: { doCheck = false; }) super.relude;
};
}
|