diff --git a/pkgs/development/haskell-modules/configuration-ghc-9.6.x.nix b/pkgs/development/haskell-modules/configuration-ghc-9.6.x.nix index e110d76e91a8..df5f80f44fbf 100644 --- a/pkgs/development/haskell-modules/configuration-ghc-9.6.x.nix +++ b/pkgs/development/haskell-modules/configuration-ghc-9.6.x.nix @@ -216,6 +216,10 @@ in hls_overlay = lself: lsuper: { Cabal-syntax = lself.Cabal-syntax_3_10_3_0; Cabal = lself.Cabal_3_10_3_0; + # Test suite can't find executable due to https://github.com/haskell/cabal/issues/11598 + cabal-add = dontCheck lsuper.cabal-add_0_2; + # Cabal-syntax >=3.14.2.0, tar <0.7 + cabal-install-parsers = doJailbreak lsuper.cabal-install-parsers; extensions = dontCheck (doJailbreak lself.extensions_0_1_0_1); }; in diff --git a/pkgs/development/haskell-modules/configuration-ghc-9.8.x.nix b/pkgs/development/haskell-modules/configuration-ghc-9.8.x.nix index 7f42c775434e..91d3fd21297f 100644 --- a/pkgs/development/haskell-modules/configuration-ghc-9.8.x.nix +++ b/pkgs/development/haskell-modules/configuration-ghc-9.8.x.nix @@ -120,6 +120,10 @@ in hls_overlay = lself: lsuper: { Cabal-syntax = lself.Cabal-syntax_3_10_3_0; Cabal = lself.Cabal_3_10_3_0; + # Test suite can't find executable due to https://github.com/haskell/cabal/issues/11598 + cabal-add = dontCheck lsuper.cabal-add_0_2; + # Cabal-syntax >=3.14.2.0, tar <0.7 + cabal-install-parsers = doJailbreak lsuper.cabal-install-parsers; extensions = dontCheck (doJailbreak lself.extensions_0_1_0_1); }; in diff --git a/pkgs/development/haskell-modules/configuration-hackage2nix/main.yaml b/pkgs/development/haskell-modules/configuration-hackage2nix/main.yaml index 2cc083deb5e3..aee50142b03d 100644 --- a/pkgs/development/haskell-modules/configuration-hackage2nix/main.yaml +++ b/pkgs/development/haskell-modules/configuration-hackage2nix/main.yaml @@ -72,6 +72,7 @@ extra-packages: - Cabal == 3.12.* - Cabal == 3.14.* - Cabal == 3.16.* # version required for cabal-install and other packages + - cabal-add < 0.2.1 # 2026-09-05: required for HLS with GHC <= 9.8 - cabal-install == 3.14.* # 2026-07-26: required to match Cabal used when building HLS - cabal-install-solver == 3.14.* # 2026-07-26: required to build cabal-install 3.14 - Cabal-syntax == 3.6.* # required for the GHC 9.0.2 package set diff --git a/pkgs/development/haskell-modules/hackage-packages.nix b/pkgs/development/haskell-modules/hackage-packages.nix index da3bd0a30445..a7f4e6855ed0 100644 --- a/pkgs/development/haskell-modules/hackage-packages.nix +++ b/pkgs/development/haskell-modules/hackage-packages.nix @@ -126754,6 +126754,69 @@ self: { } ) { youProbablyWantCapitalCabal = null; }; + cabal-add_0_2 = callPackage ( + { + mkDerivation, + base, + bytestring, + Cabal, + cabal-install-parsers, + Cabal-syntax, + containers, + Diff, + directory, + filepath, + mtl, + optparse-applicative, + process, + string-qq, + tasty, + temporary, + }: + mkDerivation { + pname = "cabal-add"; + version = "0.2"; + sha256 = "0fd098gkfmxrhq0k4j1ll5g4xwwzgmhdx0mj9hnp5xanj7z1laxg"; + revision = "1"; + editedCabalFile = "03z75dp7mf471mm40mfb157ng2fgp66nkyhaa6fsb3j2qfwg5wz4"; + isLibrary = true; + isExecutable = true; + libraryHaskellDepends = [ + base + bytestring + Cabal + Cabal-syntax + containers + mtl + ]; + executableHaskellDepends = [ + base + bytestring + cabal-install-parsers + Cabal-syntax + directory + filepath + optparse-applicative + process + ]; + testHaskellDepends = [ + base + bytestring + Cabal + Diff + directory + process + string-qq + tasty + temporary + ]; + description = "Extend Cabal build-depends from the command line"; + license = lib.meta.getLicenseFromSpdxId "BSD-3-Clause"; + hydraPlatforms = lib.platforms.none; + mainProgram = "cabal-add"; + } + ) { }; + cabal-add = callPackage ( { mkDerivation,