elmPackages.elm-instrument: build using GHC 9.4 (#413234)

This commit is contained in:
Marek Fajkus
2025-06-11 16:05:37 +02:00
committed by GitHub
4 changed files with 43 additions and 42 deletions

View File

@@ -29,55 +29,13 @@ pkgs.haskell.packages.ghc810.override {
maintainers = [ lib.maintainers.turbomack ];
}) (self.callPackage ./elmi-to-json { })
);
elm-instrument = justStaticExecutables (
overrideCabal (drv: {
version = "unstable-2020-03-16";
src = pkgs.fetchgit {
url = "https://github.com/zwilias/elm-instrument";
sha256 = "167d7l2547zxdj7i60r6vazznd9ichwc0bqckh3vrh46glkz06jv";
rev = "63e15bb5ec5f812e248e61b6944189fa4a0aee4e";
fetchSubmodules = true;
};
patches = [
# Update code after breaking change in optparse-applicative
# https://github.com/zwilias/elm-instrument/pull/5
(pkgs.fetchpatch {
name = "update-optparse-applicative.patch";
url = "https://github.com/mdevlamynck/elm-instrument/commit/c548709d4818aeef315528e842eaf4c5b34b59b4.patch";
sha256 = "0ln7ik09n3r3hk7jmwwm46kz660mvxfa71120rkbbaib2falfhsc";
})
];
prePatch = ''
sed "s/desc <-.*/let desc = \"${drv.version}\"/g" Setup.hs --in-place
'';
jailbreak = true;
# Tests are failing because of missing instances for Eq and Show type classes
doCheck = false;
description = "Instrument Elm code as a preprocessing step for elm-coverage";
homepage = "https://github.com/zwilias/elm-instrument";
license = lib.licenses.bsd3;
maintainers = [ lib.maintainers.turbomack ];
}) (self.callPackage ./elm-instrument { })
);
};
in
elmPkgs
// {
inherit elmPkgs;
# We need attoparsec < 0.14 to build elm for now
attoparsec = self.attoparsec_0_13_2_5;
# aeson 2.0.3.0 does not build with attoparsec_0_13_2_5
aeson = doJailbreak self.aeson_1_5_6_0;
# elm-instrument needs this
indents = self.callPackage ./indents { };
# elm-instrument's tests depend on an old version of elm-format, but we set doCheck to false for other reasons above
elm-format = null;
};
}

View File

@@ -33,6 +33,46 @@ pkgs.haskell.packages.ghc94.override {
];
}) (self.callPackage ./elm-format/elm-format.nix { })
);
elm-instrument = justStaticExecutables (
overrideCabal
(drv: {
version = "unstable-2020-03-16";
src = pkgs.fetchgit {
url = "https://github.com/zwilias/elm-instrument";
sha256 = "167d7l2547zxdj7i60r6vazznd9ichwc0bqckh3vrh46glkz06jv";
rev = "63e15bb5ec5f812e248e61b6944189fa4a0aee4e";
fetchSubmodules = true;
};
patches = [
# Update code after breaking change in optparse-applicative
# https://github.com/zwilias/elm-instrument/pull/5
(pkgs.fetchpatch {
name = "update-optparse-applicative.patch";
url = "https://github.com/mdevlamynck/elm-instrument/commit/c548709d4818aeef315528e842eaf4c5b34b59b4.patch";
sha256 = "0ln7ik09n3r3hk7jmwwm46kz660mvxfa71120rkbbaib2falfhsc";
})
];
prePatch = ''
sed "s/desc <-.*/let desc = \"${drv.version}\"/g" Setup.hs --in-place
'';
jailbreak = true;
# Tests are failing because of missing instances for Eq and Show type classes
doCheck = false;
description = "Instrument Elm code as a preprocessing step for elm-coverage";
homepage = "https://github.com/zwilias/elm-instrument";
license = lib.licenses.bsd3;
maintainers = [ lib.maintainers.turbomack ];
})
(
self.callPackage ./elm-instrument {
# elm-instrument's tests depend on an old version of elm-format, but we set doCheck to false for other reasons above
elm-format = null;
}
)
);
};
fixHaddock = overrideCabal (_: {
@@ -49,5 +89,8 @@ pkgs.haskell.packages.ghc94.override {
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-instrument needs this
indents = self.callPackage ./indents { };
};
}