into haskell-packages.nix, which depends on an instance of GHC. This allows a consistent set of packages to be built with the same GHC. For instance, $ nix-build -A haskellPackages_ghc683.xmonad builds xmonad and all its dependencies with GHC 6.8.3, while $ nix-build -A haskellPackages_ghc6102.xmonad does the same with GHC 6.10.2. This is the same technique used with kernelPackages. It also means that we don't need things like "cabal682" and "cabal683" anymore. * The setup hook is now in a separate wrapper package so that we don't have to recompile all of GHC every time we want to make a small change. * cinelerra: this package appears to have an accidental dependency on the "X11" Haskell package. svn path=/nixpkgs/trunk/; revision=15125wip/yesman
parent
034248f57a
commit
cee387e845
@ -0,0 +1,14 @@ |
||||
{stdenv, ghc}: |
||||
|
||||
stdenv.mkDerivation { |
||||
name = "${ghc.name}-wrapper"; |
||||
|
||||
propagatedBuildInputs = [ghc]; |
||||
|
||||
unpackPhase = "true"; |
||||
installPhase = "true"; |
||||
|
||||
setupHook = ./setup-hook.sh; |
||||
|
||||
inherit ghc; |
||||
} |
@ -1,10 +0,0 @@ |
||||
{stdenv, fetchurl, perl, ghc}: |
||||
|
||||
stdenv.mkDerivation { |
||||
name = "happy-1.14"; |
||||
src = fetchurl { |
||||
url = http://www.haskell.org/happy/dist/1.14/happy-1.14-src.tar.gz; |
||||
md5 = "501b5b63533b2e2838de18085e8c4492"; |
||||
}; |
||||
buildInputs = [ghc perl]; |
||||
} |
@ -0,0 +1,160 @@ |
||||
{pkgs, ghc}: |
||||
|
||||
let ghcOrig = ghc; in |
||||
|
||||
rec { |
||||
|
||||
ghc = import ../development/compilers/ghc/wrapper.nix { |
||||
inherit (pkgs) stdenv; |
||||
ghc = ghcOrig; |
||||
}; |
||||
|
||||
cabal = import ../development/libraries/haskell/cabal/cabal.nix { |
||||
inherit (pkgs) stdenv fetchurl; |
||||
inherit ghc; |
||||
}; |
||||
|
||||
|
||||
# Haskell libraries. |
||||
|
||||
benchpress = import ../development/libraries/haskell/benchpress { |
||||
inherit cabal; |
||||
}; |
||||
|
||||
maybench = import ../development/libraries/haskell/maybench { |
||||
inherit cabal benchpress; |
||||
}; |
||||
|
||||
binary = import ../development/libraries/haskell/binary { |
||||
inherit cabal; |
||||
}; |
||||
|
||||
Crypto = import ../development/libraries/haskell/Crypto { |
||||
inherit cabal; |
||||
}; |
||||
|
||||
editline = import ../development/libraries/haskell/editline { |
||||
inherit (pkgs) libedit; |
||||
inherit cabal; |
||||
}; |
||||
|
||||
gtk2hs = import ../development/libraries/haskell/gtk2hs { |
||||
inherit (pkgs) pkgconfig stdenv fetchurl cairo ghc; |
||||
inherit (pkgs.gnome) gtk glib GConf libglade libgtkhtml gtkhtml; |
||||
}; |
||||
|
||||
HTTP = import ../development/libraries/haskell/HTTP { |
||||
inherit cabal; |
||||
}; |
||||
|
||||
haxr = import ../development/libraries/haskell/haxr { |
||||
inherit cabal HaXml HTTP; |
||||
}; |
||||
|
||||
haxr_th = import ../development/libraries/haskell/haxr-th { |
||||
inherit cabal haxr HaXml HTTP; |
||||
}; |
||||
|
||||
HaXml = import ../development/libraries/haskell/HaXml { |
||||
inherit cabal; |
||||
}; |
||||
|
||||
HDBC = import ../development/libraries/haskell/HDBC/HDBC-1.1.4.nix { |
||||
inherit cabal; |
||||
}; |
||||
|
||||
HDBCPostgresql = import ../development/libraries/haskell/HDBC/HDBC-postgresql-1.1.4.0.nix { |
||||
inherit cabal HDBC; |
||||
inherit (pkgs) postgresql; |
||||
}; |
||||
|
||||
HDBCSqlite = import ../development/libraries/haskell/HDBC/HDBC-sqlite3-1.1.4.0.nix { |
||||
inherit cabal HDBC; |
||||
inherit (pkgs) sqlite; |
||||
}; |
||||
|
||||
monadlab = import ../development/libraries/haskell/monadlab { |
||||
inherit cabal; |
||||
}; |
||||
|
||||
pcreLight = import ../development/libraries/haskell/pcre-light { |
||||
inherit cabal; |
||||
inherit (pkgs) pcre; |
||||
}; |
||||
|
||||
uuagc = import ../development/tools/haskell/uuagc { |
||||
inherit cabal uulib; |
||||
}; |
||||
|
||||
uulib = import ../development/libraries/haskell/uulib { |
||||
inherit cabal; |
||||
}; |
||||
|
||||
wxHaskell = import ../development/libraries/haskell/wxHaskell { |
||||
inherit ghc; |
||||
inherit (pkgs) stdenv fetchurl unzip wxGTK; |
||||
}; |
||||
|
||||
X11 = import ../development/libraries/haskell/X11 { |
||||
inherit cabal; |
||||
inherit (pkgs.xlibs) libX11 libXinerama libXext; |
||||
xineramaSupport = true; |
||||
}; |
||||
|
||||
vty = import ../development/libraries/haskell/vty { |
||||
inherit cabal; |
||||
}; |
||||
|
||||
zlib = import ../development/libraries/haskell/zlib { |
||||
inherit cabal zlib; |
||||
}; |
||||
|
||||
|
||||
# Compilers. |
||||
|
||||
ehc = import ../development/compilers/ehc { |
||||
inherit ghc; |
||||
inherit (pkgs) fetchsvn stdenv coreutils m4 libtool uulib uuagc llvm; |
||||
}; |
||||
|
||||
|
||||
# Development tools. |
||||
|
||||
alex = import ../development/tools/parsing/alex { |
||||
inherit cabal; |
||||
inherit (pkgs) perl; |
||||
}; |
||||
|
||||
# old version of haddock, still more stable than 2.0 |
||||
haddock09 = import ../development/tools/documentation/haddock/haddock-0.9.nix { |
||||
inherit cabal; |
||||
}; |
||||
|
||||
# does not compile with ghc-6.8.3 |
||||
haddock210 = pkgs.stdenv.lib.lowPrio (import ../development/tools/documentation/haddock/haddock-2.1.0.nix { |
||||
inherit cabal; |
||||
}); |
||||
|
||||
happy = import ../development/tools/parsing/happy/happy-1.17.nix { |
||||
inherit cabal; |
||||
inherit (pkgs) perl; |
||||
}; |
||||
|
||||
|
||||
# Applications. |
||||
|
||||
xmobar = import ../applications/misc/xmobar { |
||||
inherit cabal; |
||||
inherit (pkgs) X11; |
||||
}; |
||||
|
||||
xmonad = import ../applications/window-managers/xmonad { |
||||
inherit cabal X11; |
||||
inherit (pkgs.xlibs) xmessage; |
||||
}; |
||||
|
||||
xmonadContrib = import ../applications/window-managers/xmonad/xmonad-contrib.nix { |
||||
inherit cabal xmonad X11; |
||||
}; |
||||
|
||||
} |
Loading…
Reference in new issue