diff --git a/pkgs/applications/version-management/darcs/darcs-2.nix b/pkgs/applications/version-management/darcs/darcs-2.nix index 3de6bbfeea74..216f2c835808 100644 --- a/pkgs/applications/version-management/darcs/darcs-2.nix +++ b/pkgs/applications/version-management/darcs/darcs-2.nix @@ -1,10 +1,12 @@ -{cabal /* , ghc, zlib, ncurses, curl, perl */}: +{cabal, html, mtl, parsec, regexCompat, zlib, curl} : /* , ghc, zlib, ncurses, curl, perl */ cabal.mkDerivation (self : { pname = "darcs"; + name = self.fname; version = "2.2.1"; sha256 = "0iy4d4qls6yhwmgv87pz4kmr5jh4bwigz1wfwzns71b68csynnsp"; + extraBuildInputs = [html mtl parsec regexCompat zlib curl]; #buildInputs = [ghc zlib ncurses curl perl]; #NIX_LDFLAGS = "-lz"; diff --git a/pkgs/development/compilers/ghc/setup-hook.sh b/pkgs/development/compilers/ghc/setup-hook.sh index 5027d6536f1f..11ad50a0c796 100644 --- a/pkgs/development/compilers/ghc/setup-hook.sh +++ b/pkgs/development/compilers/ghc/setup-hook.sh @@ -10,7 +10,7 @@ addLibToPackageConf () { local fn shopt -s nullglob for fn in $1/lib/ghc-pkgs/ghc-@ghcVersion@/*.conf; do - @ghc@/bin/ghc-pkg register $fn + @ghc@/bin/ghc-pkg register --force $fn done } diff --git a/pkgs/development/libraries/haskell/html/default.nix b/pkgs/development/libraries/haskell/html/default.nix new file mode 100644 index 000000000000..52c29e74e0b4 --- /dev/null +++ b/pkgs/development/libraries/haskell/html/default.nix @@ -0,0 +1,11 @@ +{cabal}: + +cabal.mkDerivation (self : { + pname = "html"; + version = "1.0.1.2"; + sha256 = "0c35495ea33d65e69c69bc7441ec8e1af69fbb43433c2aa3406c0a13a3ab3061"; + meta = { + description = "HTML combinator library"; + }; +}) + diff --git a/pkgs/development/libraries/haskell/mtl/default.nix b/pkgs/development/libraries/haskell/mtl/default.nix new file mode 100644 index 000000000000..c195d5cd7c3e --- /dev/null +++ b/pkgs/development/libraries/haskell/mtl/default.nix @@ -0,0 +1,11 @@ +{cabal}: + +cabal.mkDerivation (self : { + pname = "mtl"; + version = "1.1.0.2"; + sha256 = "a225aaf2b1e337f40c31e5c42f95eec9a4608322b0e4c135d2b31b8421a58d36"; + meta = { + description = "Monad transformer library"; + }; +}) + diff --git a/pkgs/development/libraries/haskell/parsec/default.nix b/pkgs/development/libraries/haskell/parsec/default.nix new file mode 100644 index 000000000000..6b1d9ef2e3ba --- /dev/null +++ b/pkgs/development/libraries/haskell/parsec/default.nix @@ -0,0 +1,11 @@ +{cabal}: + +cabal.mkDerivation (self : { + pname = "parsec"; + version = "2.1.0.1"; + sha256 = "2d85e5b5c8b2b1f341037ce67e1db7fa47b31c083136796cfef9e5b945c656df"; + meta = { + description = "Monadic parser combinators"; + }; +}) + diff --git a/pkgs/development/libraries/haskell/regex-base/default.nix b/pkgs/development/libraries/haskell/regex-base/default.nix new file mode 100644 index 000000000000..b82729057e7d --- /dev/null +++ b/pkgs/development/libraries/haskell/regex-base/default.nix @@ -0,0 +1,12 @@ +{cabal, mtl}: + +cabal.mkDerivation (self : { + pname = "regex-base"; + version = "0.93.1"; + sha256 = "24a0e76ab308517a53d2525e18744d9058835626ed4005599ecd8dd4e07f3bef"; + propagatedBuildInputs = [mtl]; + meta = { + description = "Replaces/Ehances Text.Regex"; + }; +}) + diff --git a/pkgs/development/libraries/haskell/regex-compat/default.nix b/pkgs/development/libraries/haskell/regex-compat/default.nix new file mode 100644 index 000000000000..43c715d91854 --- /dev/null +++ b/pkgs/development/libraries/haskell/regex-compat/default.nix @@ -0,0 +1,12 @@ +{cabal, regexBase, regexPosix}: + +cabal.mkDerivation (self : { + pname = "regex-compat"; + version = "0.92"; + sha256 = "430d251bd704071fca1e38c9b250543f00d4e370382ed552ac3d7407d4f27936"; + propagatedBuildInputs = [regexBase regexPosix]; + meta = { + description = "Replaces/Ehances Text.Regex"; + }; +}) + diff --git a/pkgs/development/libraries/haskell/regex-posix/default.nix b/pkgs/development/libraries/haskell/regex-posix/default.nix new file mode 100644 index 000000000000..3ee1f48d25aa --- /dev/null +++ b/pkgs/development/libraries/haskell/regex-posix/default.nix @@ -0,0 +1,12 @@ +{cabal, regexBase}: + +cabal.mkDerivation (self : { + pname = "regex-posix"; + version = "0.94.1"; + sha256 = "63e76de0610d35f1b576ae65a25a38e04e758ed64b9b3512de95bdffd649485c"; + extraBuildInputs = [regexBase]; + meta = { + description = "Replaces/Ehances Text.Regex"; + }; +}) + diff --git a/pkgs/top-level/haskell-packages.nix b/pkgs/top-level/haskell-packages.nix index 5619be1a6b78..dded9bf3bec7 100644 --- a/pkgs/top-level/haskell-packages.nix +++ b/pkgs/top-level/haskell-packages.nix @@ -79,15 +79,39 @@ rec { inherit (pkgs) sqlite; }; + html = import ../development/libraries/haskell/html { + inherit cabal; + }; + monadlab = import ../development/libraries/haskell/monadlab { inherit cabal; }; + mtl = import ../development/libraries/haskell/mtl { + inherit cabal; + }; + + parsec = import ../development/libraries/haskell/parsec { + inherit cabal; + }; + pcreLight = import ../development/libraries/haskell/pcre-light { inherit cabal; inherit (pkgs) pcre; }; + regexBase = import ../development/libraries/haskell/regex-base { + inherit cabal mtl; + }; + + regexCompat = import ../development/libraries/haskell/regex-compat { + inherit cabal regexBase regexPosix; + }; + + regexPosix = import ../development/libraries/haskell/regex-posix { + inherit cabal regexBase; + }; + uuagc = import ../development/tools/haskell/uuagc { inherit cabal uulib; }; @@ -101,16 +125,20 @@ rec { inherit (pkgs) stdenv fetchurl unzip wxGTK; }; - X11 = import ../development/libraries/haskell/X11 { + unix = import ../development/libraries/haskell/unix { inherit cabal; - inherit (pkgs.xlibs) libX11 libXinerama libXext; - xineramaSupport = true; }; vty = import ../development/libraries/haskell/vty { inherit cabal; }; + X11 = import ../development/libraries/haskell/X11 { + inherit cabal; + inherit (pkgs.xlibs) libX11 libXinerama libXext; + xineramaSupport = true; + }; + zlib = import ../development/libraries/haskell/zlib { inherit cabal zlib; }; @@ -150,7 +178,8 @@ rec { # Applications. darcs = import ../applications/version-management/darcs/darcs-2.nix { - inherit cabal; + inherit cabal html mtl parsec regexCompat; + inherit (pkgs) zlib curl; }; xmobar = import ../applications/misc/xmobar {