diff --git a/pkgs/development/haskell-modules/configuration-common.nix b/pkgs/development/haskell-modules/configuration-common.nix index ab96dde17d50..a9443528f90b 100644 --- a/pkgs/development/haskell-modules/configuration-common.nix +++ b/pkgs/development/haskell-modules/configuration-common.nix @@ -291,7 +291,6 @@ self: super: { htsn = dontCheck super.htsn; htsn-import = dontCheck super.htsn-import; http-link-header = dontCheck super.http-link-header; # non deterministic failure https://hydra.nixos.org/build/75041105 - ihaskell = dontCheck super.ihaskell; influxdb = dontCheck super.influxdb; integer-roots = dontCheck super.integer-roots; # requires an old version of smallcheck, will be fixed in > 1.0 itanium-abi = dontCheck super.itanium-abi; diff --git a/pkgs/development/haskell-modules/configuration-hackage2nix.yaml b/pkgs/development/haskell-modules/configuration-hackage2nix.yaml index 80e1f355bffe..21129a32a0ef 100644 --- a/pkgs/development/haskell-modules/configuration-hackage2nix.yaml +++ b/pkgs/development/haskell-modules/configuration-hackage2nix.yaml @@ -7153,22 +7153,9 @@ broken-packages: - ige-mac-integration - ignore - igraph - - ihaskell - - ihaskell-aeson - ihaskell-basic - - ihaskell-blaze - - ihaskell-charts - - ihaskell-diagrams - ihaskell-display - - ihaskell-gnuplot - - ihaskell-graphviz - - ihaskell-hatex - - ihaskell-hvega - - ihaskell-inline-r - - ihaskell-juicypixels - - ihaskell-magic - ihaskell-parsec - - ihaskell-plot - ihaskell-rlangqq - ihaskell-widgets - ihttp diff --git a/pkgs/development/haskell-modules/configuration-nix.nix b/pkgs/development/haskell-modules/configuration-nix.nix index ba00d2000737..5063e81c1f45 100644 --- a/pkgs/development/haskell-modules/configuration-nix.nix +++ b/pkgs/development/haskell-modules/configuration-nix.nix @@ -826,4 +826,19 @@ self: super: builtins.intersectAttrs super { # Tests access internet prune-juice = dontCheck super.prune-juice; + + # based on https://github.com/gibiansky/IHaskell/blob/aafeabef786154d81ab7d9d1882bbcd06fc8c6c4/release.nix + ihaskell = overrideCabal super.ihaskell (drv: { + configureFlags = (drv.configureFlags or []) ++ [ + # ihaskell's cabal file forces building a shared executable, + # but without passing --enable-executable-dynamic, the RPATH + # contains /build/ and leads to a build failure with nix + "--enable-executable-dynamic" + ]; + preCheck = '' + export HOME=$TMPDIR/home + export PATH=$PWD/dist/build/ihaskell:$PATH + export GHC_PACKAGE_PATH=$PWD/dist/package.conf.inplace/:$GHC_PACKAGE_PATH + ''; + }); } diff --git a/pkgs/development/haskell-modules/hackage-packages.nix b/pkgs/development/haskell-modules/hackage-packages.nix index af3f0122810b..423e1697f116 100644 --- a/pkgs/development/haskell-modules/hackage-packages.nix +++ b/pkgs/development/haskell-modules/hackage-packages.nix @@ -146759,8 +146759,6 @@ self: { ]; description = "A Haskell backend kernel for the IPython project"; license = lib.licenses.mit; - hydraPlatforms = lib.platforms.none; - broken = true; }) {}; "ihaskell-aeson" = callPackage @@ -146776,8 +146774,6 @@ self: { ]; description = "IHaskell display instances for Aeson"; license = lib.licenses.mit; - hydraPlatforms = lib.platforms.none; - broken = true; }) {}; "ihaskell-basic" = callPackage @@ -146802,8 +146798,6 @@ self: { libraryHaskellDepends = [ base blaze-html blaze-markup ihaskell ]; description = "IHaskell display instances for blaze-html types"; license = lib.licenses.mit; - hydraPlatforms = lib.platforms.none; - broken = true; }) {}; "ihaskell-charts" = callPackage @@ -146820,8 +146814,6 @@ self: { ]; description = "IHaskell display instances for charts types"; license = lib.licenses.mit; - hydraPlatforms = lib.platforms.none; - broken = true; }) {}; "ihaskell-diagrams" = callPackage @@ -146838,8 +146830,6 @@ self: { ]; description = "IHaskell display instances for diagram types"; license = lib.licenses.mit; - hydraPlatforms = lib.platforms.none; - broken = true; }) {}; "ihaskell-display" = callPackage @@ -146864,8 +146854,6 @@ self: { libraryHaskellDepends = [ base bytestring gnuplot ihaskell ]; description = "IHaskell display instance for Gnuplot (from gnuplot package)"; license = lib.licenses.mit; - hydraPlatforms = lib.platforms.none; - broken = true; }) {}; "ihaskell-graphviz" = callPackage @@ -146877,8 +146865,6 @@ self: { libraryHaskellDepends = [ base bytestring ihaskell process ]; description = "IHaskell display instance for GraphViz (external binary)"; license = lib.licenses.mit; - hydraPlatforms = lib.platforms.none; - broken = true; }) {}; "ihaskell-hatex" = callPackage @@ -146890,8 +146876,6 @@ self: { libraryHaskellDepends = [ base HaTeX ihaskell text ]; description = "IHaskell display instances for hatex"; license = lib.licenses.mit; - hydraPlatforms = lib.platforms.none; - broken = true; }) {}; "ihaskell-hvega" = callPackage @@ -146903,8 +146887,6 @@ self: { libraryHaskellDepends = [ aeson base hvega ihaskell text ]; description = "IHaskell display instance for hvega types"; license = lib.licenses.bsd3; - hydraPlatforms = lib.platforms.none; - broken = true; }) {}; "ihaskell-inline-r" = callPackage @@ -146922,8 +146904,6 @@ self: { ]; description = "Embed R quasiquotes and plots in IHaskell notebooks"; license = lib.licenses.bsd3; - hydraPlatforms = lib.platforms.none; - broken = true; }) {}; "ihaskell-juicypixels" = callPackage @@ -146938,8 +146918,6 @@ self: { ]; description = "IHaskell - IHaskellDisplay instances of the image types of the JuicyPixels package"; license = lib.licenses.mit; - hydraPlatforms = lib.platforms.none; - broken = true; }) {}; "ihaskell-magic" = callPackage @@ -146956,8 +146934,6 @@ self: { ]; description = "IHaskell display instances for bytestrings"; license = lib.licenses.mit; - hydraPlatforms = lib.platforms.none; - broken = true; }) {}; "ihaskell-parsec" = callPackage @@ -146986,8 +146962,6 @@ self: { libraryHaskellDepends = [ base bytestring hmatrix ihaskell plot ]; description = "IHaskell display instance for Plot (from plot package)"; license = lib.licenses.mit; - hydraPlatforms = lib.platforms.none; - broken = true; }) {}; "ihaskell-rlangqq" = callPackage