diff options
Diffstat (limited to 'pkgs/development/compilers/elm/default.nix')
-rw-r--r-- | pkgs/development/compilers/elm/default.nix | 17 |
1 files changed, 10 insertions, 7 deletions
diff --git a/pkgs/development/compilers/elm/default.nix b/pkgs/development/compilers/elm/default.nix index 444334306956..c28a231760e4 100644 --- a/pkgs/development/compilers/elm/default.nix +++ b/pkgs/development/compilers/elm/default.nix @@ -7,7 +7,7 @@ let fetchElmDeps = pkgs.callPackage ./fetchElmDeps.nix { }; - # Haskell packages that require ghc 9.2 + # Haskell packages that require ghc 9.6 hs96Pkgs = self: pkgs.haskell.packages.ghc96.override { overrides = self: super: with pkgs.haskell.lib.compose; with lib; let elmPkgs = rec { @@ -34,14 +34,15 @@ let inherit fetchElmDeps; elmVersion = elmPkgs.elm.version; }; - in { + in elmPkgs // { inherit elmPkgs; }; }; + # Haskell packages that require ghc 8.10 hs810Pkgs = self: pkgs.haskell.packages.ghc810.override { overrides = self: super: with pkgs.haskell.lib.compose; with lib; - let elmPkgs = { + let elmPkgs = rec { elmi-to-json = justStaticExecutables (overrideCabal (drv: { prePatch = '' substituteInPlace package.yaml --replace "- -Werror" "" @@ -59,15 +60,17 @@ let 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; - jailbreak = true; description = "Instrument Elm code as a preprocessing step for elm-coverage"; homepage = "https://github.com/zwilias/elm-instrument"; license = licenses.bsd3; maintainers = [ maintainers.turbomack ]; }) (self.callPackage ./packages/elm-instrument.nix {})); + + elmVersion = elmPkgs.elm.version; }; in elmPkgs // { inherit elmPkgs; @@ -89,7 +92,7 @@ let # Haskell packages that require ghc 9.2 hs92Pkgs = self: pkgs.haskell.packages.ghc92.override { overrides = self: super: with pkgs.haskell.lib.compose; with lib; - let elmPkgs = { + 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` @@ -138,7 +141,7 @@ in lib.makeScope pkgs.newScope (self: with self; { `patchNpmElm` function also defined in `packages/lib.nix`. */ elmLib = let - hsElmPkgs = hs96Pkgs self; + hsElmPkgs = hs810Pkgs self; in import ./packages/lib.nix { inherit lib; inherit (pkgs) writeScriptBin stdenv; @@ -150,7 +153,7 @@ in lib.makeScope pkgs.newScope (self: with self; { elm-test-rs = callPackage ./packages/elm-test-rs.nix { }; elm-test = callPackage ./packages/elm-test.nix { }; -} // (hs96Pkgs self).elmPkgs // (hs810Pkgs self).elmPkgs // (hs92Pkgs self).elmPkgs // (with elmLib; with (hs810Pkgs self).elmPkgs; { +} // (hs96Pkgs self).elmPkgs // (hs92Pkgs self).elmPkgs // (hs810Pkgs self).elmPkgs // (with elmLib; with (hs96Pkgs self).elmPkgs; { elm-verify-examples = let patched = patchBinwrap [elmi-to-json] nodePkgs.elm-verify-examples // { meta = with lib; nodePkgs.elm-verify-examples.meta // { |