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 e23764e349f5..3b73361d2399 100644 --- a/pkgs/development/haskell-modules/configuration-ghc-9.2.x.nix +++ b/pkgs/development/haskell-modules/configuration-ghc-9.2.x.nix @@ -101,6 +101,19 @@ self: super: { genvalidity-property = self.genvalidity-property_1_0_0_0; genvalidity-hspec = self.genvalidity-hspec_1_0_0_0; ghc-byteorder = doJailbreak super.ghc-byteorder; + ghc-exactprint = overrideCabal (drv: { + # HACK: ghc-exactprint 1.3.0 is not buildable for GHC < 9.2, + # but hackage2nix evaluates the cabal file with GHC 8.10.*, + # causing the build-depends to be skipped. Since the dependency + # list hasn't changed much since 0.6.4, we can just reuse the + # normal expression. + inherit (self.ghc-exactprint_1_3_0) src version; + revision = null; editedCabalFile = null; + libraryHaskellDepends = [ + self.fail + self.ordered-containers + ] ++ drv.libraryHaskellDepends or []; + }) super.ghc-exactprint; ghc-lib = self.ghc-lib_9_2_1_20211101; ghc-lib-parser = self.ghc-lib-parser_9_2_1_20211101; ghc-lib-parser-ex = self.ghc-lib-parser-ex_9_2_0_1; @@ -124,6 +137,7 @@ self: super: { quickcheck-instances = super.quickcheck-instances_0_3_27; regex-posix = doJailbreak super.regex-posix; resolv = doJailbreak super.resolv; + retrie = doDistribute self.retrie_1_2_0_0; semialign = super.semialign_1_2_0_1; singleton-bool = doJailbreak super.singleton-bool; scientific = doJailbreak super.scientific; diff --git a/pkgs/development/haskell-modules/configuration-hackage2nix/main.yaml b/pkgs/development/haskell-modules/configuration-hackage2nix/main.yaml index 8bc39a2564be..e7ff902ecb9d 100644 --- a/pkgs/development/haskell-modules/configuration-hackage2nix/main.yaml +++ b/pkgs/development/haskell-modules/configuration-hackage2nix/main.yaml @@ -126,6 +126,8 @@ default-package-overrides: - rel8 < 1.2.1.0 # 0.14.0.0 drops support for every GHC < 9.0.1 - brittany < 0.14 + # 1.2.0.0: “Dropped support for GHC <9.2 (might readd it later)” + - retrie < 1.2.0.0 extra-packages: - base16-bytestring < 1 # required for cabal-install etc. diff --git a/pkgs/development/haskell-modules/configuration-nix.nix b/pkgs/development/haskell-modules/configuration-nix.nix index 19ceea978743..239382fe83ad 100644 --- a/pkgs/development/haskell-modules/configuration-nix.nix +++ b/pkgs/development/haskell-modules/configuration-nix.nix @@ -718,9 +718,13 @@ self: super: builtins.intersectAttrs super { postgresql-pure = dontCheck super.postgresql-pure; retrie = overrideCabal (drv: { - testToolDepends = [ pkgs.git pkgs.mercurial ]; + testToolDepends = [ pkgs.git pkgs.mercurial ] ++ drv.testToolDepends or []; }) super.retrie; + retrie_1_2_0_0 = overrideCabal (drv: { + testToolDepends = [ pkgs.git pkgs.mercurial ] ++ drv.testToolDepends or []; + }) super.retrie_1_2_0_0; + nix-output-monitor = overrideCabal { # Can't ran the golden-tests with nix, because they call nix testTarget = "unit-tests"; diff --git a/pkgs/development/haskell-modules/hackage-packages.nix b/pkgs/development/haskell-modules/hackage-packages.nix index 6aa73457c2ed..607f9af93e32 100644 --- a/pkgs/development/haskell-modules/hackage-packages.nix +++ b/pkgs/development/haskell-modules/hackage-packages.nix @@ -233223,6 +233223,35 @@ self: { }) {}; "retrie" = callPackage + ({ mkDerivation, ansi-terminal, async, base, bytestring, containers + , data-default, deepseq, directory, filepath, ghc, ghc-exactprint + , ghc-paths, haskell-src-exts, HUnit, list-t, mtl + , optparse-applicative, process, random-shuffle, syb, tasty + , tasty-hunit, temporary, text, transformers, unordered-containers + }: + mkDerivation { + pname = "retrie"; + version = "1.1.0.0"; + sha256 = "148d1pl52mac4mz4pl9qmmynjjbzygg4x6vlsyblb268drcjn3f8"; + isLibrary = true; + isExecutable = true; + libraryHaskellDepends = [ + ansi-terminal async base bytestring containers data-default + directory filepath ghc ghc-exactprint list-t mtl + optparse-applicative process random-shuffle syb text transformers + unordered-containers + ]; + executableHaskellDepends = [ base haskell-src-exts ]; + testHaskellDepends = [ + base containers data-default deepseq directory filepath ghc + ghc-paths haskell-src-exts HUnit mtl optparse-applicative process + syb tasty tasty-hunit temporary text unordered-containers + ]; + description = "A powerful, easy-to-use codemodding tool for Haskell"; + license = lib.licenses.mit; + }) {}; + + "retrie_1_2_0_0" = callPackage ({ mkDerivation, ansi-terminal, async, base, bytestring, containers , data-default, deepseq, directory, exceptions, filepath, ghc , ghc-exactprint, ghc-paths, haskell-src-exts, HUnit, list-t, mtl @@ -233250,6 +233279,7 @@ self: { ]; description = "A powerful, easy-to-use codemodding tool for Haskell"; license = lib.licenses.mit; + hydraPlatforms = lib.platforms.none; }) {}; "retroclash-lib" = callPackage