diff --git a/pkgs/development/libraries/haskell/ansi-terminal/default.nix b/pkgs/development/libraries/haskell/ansi-terminal/default.nix new file mode 100644 index 00000000000..1da8fd85591 --- /dev/null +++ b/pkgs/development/libraries/haskell/ansi-terminal/default.nix @@ -0,0 +1,11 @@ +{cabal}: + +cabal.mkDerivation (self : { + pname = "ansi-terminal"; + version = "0.5.0"; + sha256 = "ee921584bb0d6c37f48b7069709297506651fe8e2c5a22810c38072b54c2fee9"; + meta = { + description = "Simple ANSI terminal support, with Windows compatibility"; + }; +}) + diff --git a/pkgs/development/libraries/haskell/colorize-haskell/default.nix b/pkgs/development/libraries/haskell/colorize-haskell/default.nix new file mode 100644 index 00000000000..1b7016970fa --- /dev/null +++ b/pkgs/development/libraries/haskell/colorize-haskell/default.nix @@ -0,0 +1,12 @@ +{cabal, ansiTerminal, haskellLexer}: + +cabal.mkDerivation (self : { + pname = "colorize-haskell"; + version = "1.0.0"; + sha256 = "14c180ea3e8beb12dd289c51453bd2e3583f306799db4630c8f86cf09bbb3763"; + propagatedBuildInputs = [ansiTerminal haskellLexer]; + meta = { + description = "Highlight Haskell source"; + }; +}) + diff --git a/pkgs/development/libraries/haskell/ghc-core/default.nix b/pkgs/development/libraries/haskell/ghc-core/default.nix index 4a36928173f..0c1024e562b 100644 --- a/pkgs/development/libraries/haskell/ghc-core/default.nix +++ b/pkgs/development/libraries/haskell/ghc-core/default.nix @@ -1,10 +1,10 @@ -{cabal, pcreLight, hscolour}: +{cabal, pcreLight, colorizeHaskell}: cabal.mkDerivation (self : { pname = "ghc-core"; - version = "0.4.3"; - sha256 = "cdd6082ebc692087db781cb10194bbbf34a768b31eea0dcb78c73921c7047444"; - propagatedBuildInputs = [pcreLight hscolour]; + version = "0.5"; + sha256 = "9880ea553a24a1ad6585c4d69505a3b1ac90aaf0f48ca8c126f41e8f170651ef"; + propagatedBuildInputs = [pcreLight colorizeHaskell]; configureFlags = ''--constraint=base<4''; meta = { description = "Display GHC's core and assembly output in a pager"; diff --git a/pkgs/development/libraries/haskell/haskell-lexer/default.nix b/pkgs/development/libraries/haskell/haskell-lexer/default.nix new file mode 100644 index 00000000000..1df6b90db0d --- /dev/null +++ b/pkgs/development/libraries/haskell/haskell-lexer/default.nix @@ -0,0 +1,11 @@ +{cabal}: + +cabal.mkDerivation (self : { + pname = "haskell-lexer"; + version = "1.0"; + sha256 = "86d0c4071295c8613eb965768cb61a0c8422fc0c429a49c7a93e93a72b185b86"; + meta = { + description = "A fully compliant Haskell 98 lexer"; + }; +}) + diff --git a/pkgs/top-level/haskell-packages.nix b/pkgs/top-level/haskell-packages.nix index 5dfcda6e370..4c9439d1a68 100644 --- a/pkgs/top-level/haskell-packages.nix +++ b/pkgs/top-level/haskell-packages.nix @@ -30,6 +30,10 @@ rec { QuickCheck = QuickCheck2101; }; + ansiTerminal = import ../development/libraries/haskell/ansi-terminal { + inherit cabal; + }; + benchpress = import ../development/libraries/haskell/benchpress { inherit cabal; }; @@ -50,6 +54,10 @@ rec { inherit cabal mtl network parsec xhtml; }; + colorizeHaskell = import ../development/libraries/haskell/colorize-haskell { + inherit cabal ansiTerminal haskellLexer; + }; + convertible = import ../development/libraries/haskell/convertible { inherit cabal mtl; time = time113; @@ -114,7 +122,7 @@ rec { }; ghcCore = import ../development/libraries/haskell/ghc-core { - inherit cabal pcreLight hscolour; + inherit cabal pcreLight colorizeHaskell; }; ghcPaths = import ../development/libraries/haskell/ghc-paths { @@ -167,6 +175,10 @@ rec { inherit cabal extensibleExceptions mtl utf8String; }; + haskellLexer = import ../development/libraries/haskell/haskell-lexer { + inherit cabal; + }; + haskellSrc = import ../development/libraries/haskell/haskell-src { inherit cabal happy; };