diff --git a/pkgs/development/haskell-modules/configuration-ghc-8.10.x.nix b/pkgs/development/haskell-modules/configuration-ghc-8.10.x.nix index b75dd12ecb46..0846a6976b62 100644 --- a/pkgs/development/haskell-modules/configuration-ghc-8.10.x.nix +++ b/pkgs/development/haskell-modules/configuration-ghc-8.10.x.nix @@ -174,8 +174,8 @@ self: super: { # Needs OneTuple for ghc < 9.2 binary-orphans = addBuildDepends [ self.OneTuple ] super.binary-orphans; - # Requires GHC < 9.4 - ghc-source-gen = doDistribute (unmarkBroken super.ghc-source-gen); + # 0.4.6.0 only supports >= 9.0 + ghc-source-gen = doDistribute self.ghc-source-gen_0_4_5_0; # No instance for (Show B.Builder) arising from a use of ‘print’ http-types = dontCheck super.http-types; diff --git a/pkgs/development/haskell-modules/configuration-ghc-9.0.x.nix b/pkgs/development/haskell-modules/configuration-ghc-9.0.x.nix index dc589aaac410..eb11eaf2a992 100644 --- a/pkgs/development/haskell-modules/configuration-ghc-9.0.x.nix +++ b/pkgs/development/haskell-modules/configuration-ghc-9.0.x.nix @@ -151,9 +151,6 @@ self: super: { # Needs OneTuple for ghc < 9.2 binary-orphans = addBuildDepends [ self.OneTuple ] super.binary-orphans; - # Requires GHC < 9.4 - ghc-source-gen = doDistribute (unmarkBroken super.ghc-source-gen); - hspec-megaparsec = super.hspec-megaparsec_2_2_0; # No instance for (Show B.Builder) arising from a use of ‘print’ diff --git a/pkgs/development/haskell-modules/configuration-ghc-9.2.x.nix b/pkgs/development/haskell-modules/configuration-ghc-9.2.x.nix index f1819def7bac..e3e9109418c5 100644 --- a/pkgs/development/haskell-modules/configuration-ghc-9.2.x.nix +++ b/pkgs/development/haskell-modules/configuration-ghc-9.2.x.nix @@ -129,9 +129,6 @@ self: super: { # A given major version of ghc-exactprint only supports one version of GHC. ghc-exactprint = super.ghc-exactprint_1_5_0; - # Requires GHC < 9.4 - ghc-source-gen = doDistribute (unmarkBroken super.ghc-source-gen); - # Packages which need compat library for GHC < 9.6 inherit (lib.mapAttrs (_: addBuildDepends [ self.foldable1-classes-compat ]) super) indexed-traversable diff --git a/pkgs/development/haskell-modules/configuration-hackage2nix/main.yaml b/pkgs/development/haskell-modules/configuration-hackage2nix/main.yaml index f028b77fac56..bf1b3d0eaf40 100644 --- a/pkgs/development/haskell-modules/configuration-hackage2nix/main.yaml +++ b/pkgs/development/haskell-modules/configuration-hackage2nix/main.yaml @@ -115,6 +115,7 @@ extra-packages: - extensions == 0.1.0.2 # 2024-10-20: for GHC 9.10/Cabal 3.12 - network-run == 0.4.0 # 2024-10-20: for GHC 9.10/network == 3.1.* - typst-symbols >=0.1.6 && <0.1.7 # 2024-11-20: for pandoc 3.5 and quarto + - ghc-source-gen < 0.4.6.0 # 2024-12-31: support GHC < 9.0 package-maintainers: abbradar: diff --git a/pkgs/development/haskell-modules/hackage-packages.nix b/pkgs/development/haskell-modules/hackage-packages.nix index 820c650506d0..17b324a44376 100644 --- a/pkgs/development/haskell-modules/hackage-packages.nix +++ b/pkgs/development/haskell-modules/hackage-packages.nix @@ -123511,6 +123511,23 @@ self: { broken = true; }) {}; + "ghc-source-gen_0_4_5_0" = callPackage + ({ mkDerivation, base, ghc, ghc-paths, QuickCheck, tasty + , tasty-hunit, tasty-quickcheck + }: + mkDerivation { + pname = "ghc-source-gen"; + version = "0.4.5.0"; + sha256 = "18v6i0a6j72brwr7zq0j0igmkzigx3w4a6rdhq8cn768vflpflvv"; + libraryHaskellDepends = [ base ghc ]; + testHaskellDepends = [ + base ghc ghc-paths QuickCheck tasty tasty-hunit tasty-quickcheck + ]; + description = "Constructs Haskell syntax trees for the GHC API"; + license = lib.licenses.bsd3; + hydraPlatforms = lib.platforms.none; + }) {}; + "ghc-source-gen" = callPackage ({ mkDerivation, base, ghc, ghc-paths, QuickCheck, tasty , tasty-hunit, tasty-quickcheck diff --git a/pkgs/top-level/release-haskell.nix b/pkgs/top-level/release-haskell.nix index 15546b3288bc..ebb0a79060b2 100644 --- a/pkgs/top-level/release-haskell.nix +++ b/pkgs/top-level/release-haskell.nix @@ -594,12 +594,9 @@ let ghc-lib = released; ghc-lib-parser = released; ghc-lib-parser-ex = released; - ghc-source-gen = [ - # Feel free to remove these as they break, - compilerNames.ghc8107 - compilerNames.ghc902 - compilerNames.ghc928 - ]; + ghc-source-gen = lib.subtractLists [ + compilerNames.ghc9121 + ] released; ghc-tags = lib.subtractLists [ compilerNames.ghc9121 ] released;