diff --git a/pkgs/development/tools/haskell/cabal-bounds/default.nix b/pkgs/development/tools/haskell/cabal-bounds/default.nix new file mode 100644 index 000000000000..4cd6adf5ab94 --- /dev/null +++ b/pkgs/development/tools/haskell/cabal-bounds/default.nix @@ -0,0 +1,23 @@ +{ cabal, Cabal, cmdargs, either, filepath, lens, strict, tasty +, tastyGolden, transformers, unorderedContainers +}: + +cabal.mkDerivation (self: { + pname = "cabal-bounds"; + version = "0.4.1"; + sha256 = "09l9ii26li178sw0rm49w4dhfkf46g4sjjdy4frmc74isvnzkpwj"; + isLibrary = true; + isExecutable = true; + buildDepends = [ + Cabal cmdargs either lens strict transformers unorderedContainers + ]; + testDepends = [ filepath tasty tastyGolden ]; + doCheck = false; + jailbreak = true; + + meta = { + description = "A command line program for managing the bounds/versions of the dependencies in a cabal file"; + license = self.stdenv.lib.licenses.bsd3; + platforms = self.ghc.meta.platforms; + }; +}) diff --git a/pkgs/top-level/haskell-packages.nix b/pkgs/top-level/haskell-packages.nix index 96ee08c539e3..7e3151c95587 100644 --- a/pkgs/top-level/haskell-packages.nix +++ b/pkgs/top-level/haskell-packages.nix @@ -3064,6 +3064,12 @@ let result = let callPackage = x : y : modifyPrio (newScope result.finalReturn x cabalDelete = callPackage ../development/tools/haskell/cabal-delete {}; + cabalBounds = callPackage ../development/tools/haskell/cabal-bounds { + Cabal = if pkgs.stdenv.lib.versionAtLeast "7.8" ghc.version + then null + else self.Cabal_1_18_1_3; + }; + cabalDev = callPackage ../development/tools/haskell/cabal-dev {}; cabalMeta = callPackage ../development/tools/haskell/cabal-meta {};