You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
nixpkgs/pkgs/top-level/all-packages.nix

7982 lines
231 KiB

/* This file composes the Nix Packages collection. That is, it
imports the functions that build the various packages, and calls
them with appropriate arguments. The result is a set of all the
packages in the Nix Packages collection for some particular
platform.
You want to get to know where to add a new package ?
Have a look at nixpkgs/maintainers/docs/classification.txt */
{ # The system (e.g., `i686-linux') for which to build the packages.
system ? builtins.currentSystem
# Usually, the system type uniquely determines the stdenv and thus
# how to build the packages. But on some platforms we have
# different stdenvs, leading to different ways to build the
# packages. For instance, on Windows we support both Cygwin and
# Mingw builds. In both cases, `system' is `i686-cygwin'. The
# attribute `stdenvType' is used to select the specific kind of
# stdenv to use, e.g., `i686-mingw'.
, stdenvType ? system
, # The standard environment to use. Only used for bootstrapping. If
# null, the default standard environment is used.
bootStdenv ? null
# More flags for the bootstrapping of stdenv.
, noSysDirs ? true
, gccWithCC ? true
, gccWithProfiling ? true
}:
let
lib = import ../lib; # see also libTests below
# The contents of the configuration file found at $NIXPKGS_CONFIG or
# $HOME/.nixpkgs/config.nix.
config =
let {
toPath = builtins.toPath;
getEnv = x: if builtins ? getEnv then builtins.getEnv x else "";
pathExists = name:
builtins ? pathExists && builtins.pathExists (toPath name);
configFile = getEnv "NIXPKGS_CONFIG";
homeDir = getEnv "HOME";
configFile2 = homeDir + "/.nixpkgs/config.nix";
configExpr =
if configFile != "" && pathExists configFile
then import (toPath configFile)
else if homeDir != "" && pathExists configFile2
then import (toPath configFile2)
else {};
# allow both:
# { /* the config */ } and
# { pkgsOrig, pkgs, ... } : { /* the config */ }
body = if builtins.isFunction configExpr
then configExpr { inherit pkgs pkgsOrig; }
else configExpr;
};
# Return an attribute from the Nixpkgs configuration file, or
# a default value if the attribute doesn't exist.
getConfig = attrPath: default: lib.attrByPath attrPath default config;
# Allow packages to be overriden globally via the `packageOverrides'
# configuration option, which must be a function that takes `pkgs'
# as an argument and returns a set of new or overriden packages.
# `__overrides' is a magic attribute that causes the attributes in
# its value to be added to the surrounding `rec'. The
# `packageOverrides' function is called with the *original*
# (un-overriden) set of packages, allowing packageOverrides
# attributes to refer to the original attributes (e.g. "foo =
# ... pkgs.foo ...").
__overrides = (getConfig ["packageOverrides"] (pkgs: {})) pkgsOrig;
pkgsOrig = pkgsFun {}; # the un-overriden packages, passed to packageOverrides
pkgsOverriden = pkgsFun __overrides; # the overriden, final packages
pkgs = pkgsOverriden;
# The package compositions. Yes, this isn't properly indented.
pkgsFun = __overrides: rec {
inherit __overrides;
# For convenience, allow callers to get the path to Nixpkgs.
path = ../..;
### Symbolic names.
x11 = xlibsWrapper;
# `xlibs' is the set of X library components. This used to be the
# old modular X libraries project (called `xlibs') but now it's just
# the set of packages in the modular X.org tree (which also includes
# non-library components like the server, drivers, fonts, etc.).
xlibs = xorg // {xlibs = xlibsWrapper;};
### Helper functions.
inherit lib config getConfig;
inherit (lib) lowPrio appendToName;
# Applying this to an attribute set will cause nix-env to look
# inside the set for derivations.
recurseIntoAttrs = attrs: attrs // {recurseForDerivations = true;};
useFromStdenv = it : alternative : if (builtins.hasAttr it stdenv) then
(builtins.getAttr it stdenv) else alternative;
# Return the first available value in the order: pkg.val, val, or default.
getPkgConfig = pkg : val : default : (getConfig [ pkg val ] (getConfig [ val ] default));
# Return user-choosen version of given package. If you define package as
#
# pkgname_alts =
# {
# v_0_1 = ();
# v_0_2 = ();
# default = v_0_1;
# recurseForDerivations = true;
# };
# pkgname = getVersion "name" pkgname_alts;
#
# user will be able to write in his configuration.nix something like
# name = { version = "0.2"; }; and pkgname will be equal
# to getAttr pkgname_alts "0.2". Using alts.default by default.
getVersion = name: alts: builtins.getAttr
(getConfig [ name "version" ] "default") alts;
# The same, another syntax.
# Warning: syntax for configuration.nix changed too
useVersion = name: f: f {
version = getConfig [ "environment" "versions" name ];
};
# Check absence of non-used options
checker = x: flag: opts: config:
(if flag then let result=(
(import ../build-support/checker)
opts config); in
(if (result=="") then x else
abort ("Unknown option specified: " + result))
else x);
builderDefs = composedArgsAndFun (import ../build-support/builder-defs/builder-defs.nix) {
inherit stringsWithDeps lib stdenv writeScript fetchurl;
};
composedArgsAndFun = lib.composedArgsAndFun;
builderDefsPackage = builderDefs.builderDefsPackage builderDefs;
stringsWithDeps = lib.stringsWithDeps;
# Call a specific version of a Nix expression, that is,
# `selectVersion ./foo {version = "0.1.2"; args...}' evaluates to
# `import ./foo/0.1.2.nix args'.
selectVersion = dir: defVersion: args:
let
pVersion =
if (args ? version && args.version != "") then
args.version
else
getConfig [ (baseNameOf (toString dir)) "version" ] defVersion;
in
import (dir + "/${pVersion}.nix") (args // { version = pVersion; });
# usage: (you can use override multiple times)
# let d = makeOverridable stdenv.mkDerivation { name = ..; buildInputs; }
# noBuildInputs = d.override { buildInputs = []; }
# additionalBuildInputs = d.override ( args : args // { buildInputs = args.buildInputs ++ [ additional ]; } )
makeOverridable = f: origArgs: f origArgs //
{ override = newArgs:
makeOverridable f (origArgs // (if builtins.isFunction newArgs then newArgs origArgs else newArgs));
};
### STANDARD ENVIRONMENT
allStdenvs = import ../stdenv {
inherit system stdenvType;
allPackages = import ./all-packages.nix;
};
defaultStdenv = allStdenvs.stdenv;
stdenv =
if bootStdenv != null then bootStdenv else
let changer = getConfig ["replaceStdenv"] null;
in if changer != null then
changer {
stdenv = defaultStdenv;
overrideSetup = overrideSetup;
}
else defaultStdenv;
# A stdenv capable of building 32-bit binaries. On x86_64-linux,
# it uses GCC compiled with multilib support; on i686-linux, it's
# just the plain stdenv.
stdenv_32bit =
if system == "x86_64-linux" then
overrideGCC stdenv gcc43_multi
else
stdenv;
inherit (import ../stdenv/adapters.nix {inherit (pkgs) dietlibc fetchurl runCommand;})
overrideGCC overrideInStdenv overrideSetup
useDietLibC useKlibc makeStaticBinaries;
stdenvNew = overrideSetup stdenv ../stdenv/generic/setup-new.sh;
### BUILD SUPPORT
buildEnv = import ../build-support/buildenv {
inherit stdenv perl;
};
debPackage = {
debBuild = lib.sumTwoArgs(import ../build-support/deb-package) {
inherit builderDefs;
};
inherit fetchurl stdenv;
};
fetchbzr = import ../build-support/fetchbzr {
inherit stdenv bazaar;
};
fetchcvs = import ../build-support/fetchcvs {
inherit stdenv cvs;
};
fetchdarcs = import ../build-support/fetchdarcs {
inherit stdenv darcs nix;
};
fetchsvn = import ../build-support/fetchsvn {
inherit stdenv subversion openssh;
sshSupport = true;
};
fetchsvnssh = import ../build-support/fetchsvnssh {
inherit stdenv subversion openssh expect;
sshSupport = true;
};
# TODO do some testing
fetchhg = import ../build-support/fetchhg {
inherit stdenv mercurial nix;
};
# `fetchurl' downloads a file from the network. The `useFromStdenv'
# is there to allow stdenv to determine fetchurl. Used during the
# stdenv-linux bootstrap phases to prevent lots of different curls
# from being built.
fetchurl = useFromStdenv "fetchurl"
(import ../build-support/fetchurl {
inherit curl;
stdenv = stdenvNew;
});
# fetchurlBoot is used for curl and its dependencies in order to
# prevent a cyclic dependency (curl depends on curl.tar.bz2,
# curl.tar.bz2 depends on fetchurl, fetchurl depends on curl). It
# uses the curl from the previous bootstrap phase (e.g. a statically
# linked curl in the case of stdenv-linux).
fetchurlBoot = stdenv.fetchurlBoot;
resolveMirrorURLs = {url}: fetchurl {
showURLs = true;
inherit url;
};
makeDesktopItem = import ../build-support/make-desktopitem {
inherit stdenv;
};
makeInitrd = {contents}: import ../build-support/kernel/make-initrd.nix {
inherit stdenv perl cpio contents;
};
makeSetupHook = script: runCommand "hook" {} ''
ensureDir $out/nix-support
cp ${script} $out/nix-support/setup-hook
'';
makeWrapper = makeSetupHook ../build-support/make-wrapper/make-wrapper.sh;
makeModulesClosure = {kernel, rootModules, allowMissing ? false}:
import ../build-support/kernel/modules-closure.nix {
inherit stdenv module_init_tools kernel rootModules allowMissing;
};
pathsFromGraph = ../build-support/kernel/paths-from-graph.pl;
# Run the shell command `buildCommand' to produce a store object
# named `name'. The attributes in `env' are added to the
# environment prior to running the command.
runCommand = name: env: buildCommand: stdenv.mkDerivation ({
inherit name buildCommand;
} // env);
symlinkJoin = name: paths: runCommand name {inherit paths;} "mkdir -p $out; for i in $paths; do ${xorg.lndir}/bin/lndir $i $out; done";
# Create a single file.
writeTextFile =
{ name # the name of the derivation
, text
, executable ? false # run chmod +x ?
, destination ? "" # relative path appended to $out eg "/bin/foo"
}:
runCommand name {inherit text executable; } ''
n=$out${destination}
mkdir -p "$(dirname "$n")"
echo -n "$text" > "$n"
(test -n "$executable" && chmod +x "$n") || true
'';
# Shorthands for `writeTextFile'.
writeText = name: text: writeTextFile {inherit name text;};
writeScript = name: text: writeTextFile {inherit name text; executable = true;};
writeScriptBin = name: text: writeTextFile {inherit name text; executable = true; destination = "/bin/${name}";};
# entries is a list of attribute sets like { name = "name" ; path = "/nix/store/..."; }
linkFarm = name: entries: runCommand name {} ("mkdir -p $out; cd $out; \n" +
(lib.concatMapStrings (x: "ln -s '${x.path}' '${x.name}';\n") entries));
srcOnly = args: (import ../build-support/src-only) ({inherit stdenv; } // args);
substituteAll = import ../build-support/substitute/substitute-all.nix {
inherit stdenv;
};
nukeReferences = import ../build-support/nuke-references/default.nix {
inherit stdenv;
};
vmTools = import ../build-support/vm/default.nix {
inherit pkgs;
};
releaseTools = import ../build-support/release/default.nix {
inherit pkgs;
};
composableDerivation = (import ../lib/composable-derivation.nix) {
inherit pkgs lib;
};
# Write the references (i.e. the runtime dependencies in the Nix store) of `path' to a file.
writeReferencesToFile = path: runCommand "runtime-deps"
{
exportReferencesGraph = ["graph" path];
}
''
touch $out
while read path; do
echo $path >> $out
read dummy
read nrRefs
for ((i = 0; i < nrRefs; i++)); do read ref; done
done < graph
'';
### TOOLS
aefs = import ../tools/security/aefs {
inherit fetchurl stdenv fuse;
};
aircrackng = import ../tools/networking/aircrack-ng {
inherit fetchurl stdenv libpcap openssl zlib wirelesstools;
};
amule = import ../tools/networking/p2p/amule {
inherit fetchurl stdenv zlib perl cryptopp gettext libupnp makeWrapper;
wxGTK = wxGTK28;
};
aria = builderDefsPackage (import ../tools/networking/aria) {
};
at = import ../tools/system/at {
inherit fetchurl stdenv bison flex pam ssmtp;
};
autojump = import ../tools/misc/autojump {
inherit fetchurl stdenv python;
};
avahi =
let qt4Support = getConfig [ "avahi" "qt4Support" ] false;
in
import ../development/libraries/avahi {
inherit stdenv fetchurl pkgconfig libdaemon dbus perl perlXMLParser
expat gettext intltool lib;
inherit (gtkLibs) glib gtk;
inherit qt4Support;
qt4 = if qt4Support then qt4 else null;
};
axel = import ../tools/networking/axel {
inherit fetchurl stdenv;
};
azureus = import ../tools/networking/p2p/azureus {
inherit fetchurl stdenv jdk swt;
};
bc = import ../tools/misc/bc {
inherit fetchurl stdenv flex readline;
};
bfr = import ../tools/misc/bfr {
inherit fetchurl stdenv perl;
};
mcrl = import ../tools/misc/mcrl {
inherit fetchurl stdenv coreutils;
};
mcrl2 = import ../tools/misc/mcrl2 {
inherit fetchurl stdenv mesa ;
inherit (xorg) libX11;
wxGTK = wxGTK28 ;
};
syslogng = import ../tools/misc/syslog-ng {
inherit fetchurl stdenv eventlog pkgconfig;
inherit (gtkLibs) glib;
};
asciidoc = import ../tools/typesetting/asciidoc {
inherit fetchurl stdenv bash python;
};
bibtextools = import ../tools/typesetting/bibtex-tools {
inherit fetchurl stdenv aterm tetex hevea;
inherit (strategoPackages016) strategoxt sdf;
};
bittorrent = import ../tools/networking/p2p/bittorrent {
inherit fetchurl stdenv makeWrapper python pycrypto twisted;
wxPython = wxPython26;
gui = true;
};
bittornado = import ../tools/networking/p2p/bit-tornado {
inherit fetchurl stdenv python wxPython26;
};
bmrsa = builderDefsPackage (selectVersion ../tools/security/bmrsa "11") {
inherit unzip;
};
bogofilter = import ../tools/misc/bogofilter {
inherit fetchurl stdenv flex;
bdb = db4;
};
bsdiff = import ../tools/compression/bsdiff {
inherit fetchurl stdenv;
};
bzip2 = useFromStdenv "bzip2"
(import ../tools/compression/bzip2 {
inherit fetchurl stdenv;
});
cabextract = import ../tools/archivers/cabextract {
inherit fetchurl stdenv;
};
ccrypt = import ../tools/security/ccrypt {
inherit fetchurl stdenv;
};
cdecl = import ../development/tools/cdecl {
inherit fetchurl stdenv yacc flex readline ncurses;
};
cdrdao = import ../tools/cd-dvd/cdrdao {
inherit fetchurl stdenv;
};
cdrkit = import ../tools/cd-dvd/cdrkit {
inherit fetchurl stdenv cmake libcap zlib bzip2;
};
cedet = import ../applications/editors/emacs-modes/cedet {
inherit fetchurl stdenv emacs;
};
checkinstall = import ../tools/package-management/checkinstall {
inherit fetchurl stdenv gettext;
};
cheetahTemplate = builderDefsPackage (selectVersion ../tools/text/cheetah-template "2.0.1") {
inherit makeWrapper python;
};
chkrootkit = import ../tools/security/chkrootkit {
inherit fetchurl stdenv;
};
cksfv = import ../tools/networking/cksfv {
inherit fetchurl stdenv;
};
convertlit = import ../tools/text/convertlit {
inherit fetchurl stdenv unzip libtommath;
};
unifdef = import ../development/tools/misc/unifdef {
inherit fetchurl stdenv;
};
coreutils = useFromStdenv "coreutils"
(makeOverridable (if stdenv ? isDietLibC
then import ../tools/misc/coreutils-5
else import ../tools/misc/coreutils)
{
inherit fetchurl stdenv acl;
aclSupport = stdenv.isLinux;
});
cpio = import ../tools/archivers/cpio {
inherit fetchurl stdenv;
};
cromfs = import ../tools/archivers/cromfs {
inherit fetchurl stdenv pkgconfig fuse perl;
};
cron = import ../tools/system/cron { # see also fcron
inherit fetchurl stdenv;
};
curl = import ../tools/networking/curl {
fetchurl = fetchurlBoot;
inherit stdenv zlib openssl;
zlibSupport = ! ((stdenv ? isDietLibC) || (stdenv ? isStatic));
sslSupport = ! ((stdenv ? isDietLibC) || (stdenv ? isStatic));
};
curlftpfs = import ../tools/networking/curlftpfs {
inherit fetchurl stdenv fuse curl pkgconfig zlib;
inherit (gtkLibs) glib;
};
dar = import ../tools/archivers/dar {
inherit fetchurl stdenv zlib bzip2 openssl;
};
dcraw = import ../tools/graphics/dcraw {
inherit fetchurl stdenv gettext libjpeg lcms;
};
ddrescue = builderDefsPackage (selectVersion ../tools/system/ddrescue "1.8") {};
desktop_file_utils = import ../tools/misc/desktop-file-utils {
inherit stdenv fetchurl pkgconfig;
inherit (gtkLibs) glib;
};
dev86 = import ../development/compilers/dev86 {
inherit fetchurl stdenv;
};
dnsmasq = import ../tools/networking/dnsmasq {
# TODO i18n can be installed as well, implement it?
inherit fetchurl stdenv;
};
dhcp = import ../tools/networking/dhcp {
inherit fetchurl stdenv groff nettools coreutils iputils gnused
bash makeWrapper;
};
diffstat = import ../tools/text/diffstat {
inherit fetchurl stdenv;
};
diffutils = useFromStdenv "diffutils"
(import ../tools/text/diffutils {
inherit fetchurl stdenv coreutils;
});
docbook2x = import ../tools/typesetting/docbook2x {
inherit fetchurl stdenv texinfo perl
gnused groff libxml2 libxslt makeWrapper;
inherit (perlPackages) XMLSAX XMLParser XMLNamespaceSupport;
};
dosfstools = composedArgsAndFun (import ../tools/misc/dosfstools) {
inherit builderDefs;
};
dvdplusrwtools = import ../tools/cd-dvd/dvd+rw-tools {
inherit fetchurl stdenv cdrkit m4;
};
eieio = import ../applications/editors/emacs-modes/eieio {
inherit fetchurl stdenv emacs;
};
emacsSessionManagement = import ../applications/editors/emacs-modes/session-management-for-emacs {
inherit fetchurl stdenv emacs;
};
enblendenfuse = import ../tools/graphics/enblend-enfuse {
inherit fetchurl stdenv libtiff libpng lcms libxmi boost;
};
enscript = import ../tools/text/enscript {
inherit fetchurl stdenv;
};
eprover = composedArgsAndFun (import ../tools/misc/eProver) {
inherit fetchurl stdenv which;
texLive = texLiveAggregationFun {
paths = [
texLive texLiveExtra
];
};
};
exif = import ../tools/graphics/exif {
inherit fetchurl stdenv pkgconfig libexif popt;
};
expect = import ../tools/misc/expect {
inherit fetchurl stdenv tcl tk autoconf;
inherit (xorg) xproto libX11;
};
fcron = import ../tools/system/fcron { # see also cron
inherit fetchurl stdenv perl;
};
figlet = import ../tools/misc/figlet {
inherit fetchurl stdenv;
};
file = import ../tools/misc/file {
inherit fetchurl stdenv;
};
filelight = import ../tools/system/filelight {
inherit fetchurl stdenv kdelibs x11 zlib perl libpng;
qt = qt3;
};
findutils = useFromStdenv "findutils"
(if system == "i686-darwin" then findutils4227 else
import ../tools/misc/findutils {
inherit fetchurl stdenv coreutils;
}
);
findutils4227 = import ../tools/misc/findutils/4.2.27.nix {
inherit fetchurl stdenv coreutils;
};
findutilsWrapper = lowPrio (appendToName "wrapper" (import ../tools/misc/findutils-wrapper {
inherit stdenv findutils;
}));
finger_bsd = import ../tools/networking/bsd-finger {
inherit fetchurl stdenv;
};
fontforge = import ../tools/misc/fontforge {
inherit fetchurl stdenv gettext freetype zlib
libungif libpng libjpeg libtiff libxml2 lib;
};
fontforgeX = import ../tools/misc/fontforge {
inherit fetchurl stdenv gettext freetype zlib
libungif libpng libjpeg libtiff libxml2 lib;
inherit (xlibs) libX11 xproto libXt;
};
gawk = useFromStdenv "gawk"
(import ../tools/text/gawk {
inherit fetchurl stdenv;
});
gdmap = composedArgsAndFun (selectVersion ../tools/system/gdmap "0.8.1") {
inherit stdenv fetchurl builderDefs pkgconfig libxml2 intltool
gettext;
inherit (gtkLibs) gtk;
};
getopt = import ../tools/misc/getopt {
inherit fetchurl stdenv;
};
gftp = import ../tools/networking/gftp {
inherit lib fetchurl stdenv;
inherit readline ncurses gettext openssl pkgconfig;
inherit (gtkLibs) glib gtk;
};
gifsicle = import ../tools/graphics/gifscile {
inherit fetchurl stdenv;
inherit (xlibs) xproto libXt libX11;
};
glxinfo = import ../tools/graphics/glxinfo {
inherit fetchurl stdenv x11 mesa;
};
gnokii = builderDefsPackage (import ../tools/misc/gnokii) {
inherit intltool perl gettext;
};
gnugrep = useFromStdenv "gnugrep"
(import ../tools/text/gnugrep {
inherit fetchurl stdenv pcre;
});
gnupatch = useFromStdenv "patch" (import ../tools/text/gnupatch {
inherit fetchurl stdenv;
});
gnupg = import ../tools/security/gnupg {
inherit fetchurl stdenv readline;
ideaSupport = getPkgConfig "gnupg" "idea" false; # enable for IDEA crypto support
};
gnupg2 = import ../tools/security/gnupg2 {
inherit fetchurl stdenv readline libgpgerror libgcrypt libassuan pth libksba zlib;
openldap = if getPkgConfig "gnupg" "ldap" true then openldap else null;
bzip2 = if getPkgConfig "gnupg" "bzip2" true then bzip2 else null;
libusb = if getPkgConfig "gnupg" "usb" true then libusb else null;
curl = if getPkgConfig "gnupg" "curl" true then curl else null;
};
gnuplot = import ../tools/graphics/gnuplot {
inherit fetchurl stdenv zlib gd texinfo;
};
gnuplotX = import ../tools/graphics/gnuplot {
inherit fetchurl stdenv zlib gd texinfo;
inherit (xlibs) libX11 libXt libXaw libXpm;
x11Support = true;
};
gnused = useFromStdenv "gnused"
(import ../tools/text/gnused {
inherit fetchurl stdenv;
});
gnused_4_2 = import ../tools/text/gnused/4.2.nix {
inherit fetchurl stdenv;
};
gnutar = useFromStdenv "gnutar"
(import ../tools/archivers/gnutar {
inherit fetchurl stdenv;
});
graphviz = import ../tools/graphics/graphviz {
inherit fetchurl stdenv pkgconfig libpng libjpeg expat x11 yacc
libtool fontconfig gd;
inherit (xlibs) libXaw;
inherit (gtkLibs) pango;
};
groff = import ../tools/text/groff {
inherit fetchurl stdenv perl;
ghostscript = null;
};
grub = import ../tools/misc/grub {
inherit fetchurl autoconf automake;
stdenv = stdenv_32bit;
};
gssdp = import ../development/libraries/gssdp {
inherit fetchurl stdenv pkgconfig libxml2;
inherit (gtkLibs) glib;
inherit (gnome) libsoup;
};
gtkgnutella = import ../tools/networking/p2p/gtk-gnutella {
inherit fetchurl stdenv pkgconfig libxml2;
inherit (gtkLibs) glib gtk;
};
gupnp = import ../development/libraries/gupnp {
inherit fetchurl stdenv pkgconfig libxml2 gssdp e2fsprogs;
inherit (gtkLibs) glib;
inherit (gnome) libsoup;
};
gupnptools = import ../tools/networking/gupnp-tools {
inherit fetchurl stdenv gssdp gupnp pkgconfig libxml2 e2fsprogs;
inherit (gtkLibs) gtk glib;
inherit (gnome) libsoup libglade gnomeicontheme;
};
gzip = useFromStdenv "gzip"
(import ../tools/compression/gzip {
inherit fetchurl stdenv;
});
halibut = import ../tools/typesetting/halibut {
inherit fetchurl stdenv perl;
};
hddtemp = import ../tools/misc/hddtemp {
inherit fetchurl stdenv;
};
hevea = import ../tools/typesetting/hevea {
inherit fetchurl stdenv ocaml;
};
highlight = builderDefsPackage (selectVersion ../tools/text/highlight "2.6.10") {
inherit getopt;
};
host = import ../tools/networking/host {
inherit fetchurl stdenv;
};
/*
hyppocampusFun = lib.sumArgs ( selectVersion ../tools/misc/hyppocampus "0.3rc1") {
inherit builderDefs stdenv fetchurl libdbi libdbiDrivers fuse
pkgconfig perl gettext dbus dbus_glib pcre libscd bison;
inherit (gtkLibs) glib;
flex = flex2533;
};
*/
iasl = import ../development/compilers/iasl {
inherit fetchurl stdenv bison flex;
};
imapsync = import ../tools/networking/imapsync {
inherit fetchurl stdenv perl openssl;
inherit (perlPackages) MailIMAPClient;
};
inetutils = import ../tools/networking/inetutils {
inherit fetchurl stdenv;
};
iodine = import ../tools/networking/iodine {
inherit stdenv fetchurl zlib nettools;
};
iperf = import ../tools/networking/iperf {
inherit fetchurl stdenv;
};
jdiskreport = import ../tools/misc/jdiskreport {
inherit fetchurl stdenv unzip jdk;
};
jing = import ../tools/text/xml/jing {
inherit fetchurl stdenv unzip;
};
jing_tools = import ../tools/text/xml/jing/jing-script.nix {
inherit fetchurl stdenv unzip jre;
};
jnettop = import ../tools/networking/jnettop {
inherit fetchurl stdenv autoconf libpcap ncurses pkgconfig;
inherit (gnome) glib;
};
jwhois = import ../tools/networking/jwhois {
inherit fetchurl stdenv;
};
keychain = import ../tools/misc/keychain {
inherit fetchurl stdenv;
};
kismet = import ../applications/networking/sniffers/kismet {
inherit fetchurl stdenv libpcap ncurses expat;
};
ktorrent = import ../tools/networking/p2p/ktorrent {
inherit fetchurl stdenv pkgconfig kdelibs
xlibs zlib libpng libjpeg perl gmp;
};
less = import ../tools/misc/less {
inherit fetchurl stdenv ncurses;
};
lftp = import ../tools/networking/lftp {
inherit fetchurl stdenv readline;
};
libtorrent = import ../tools/networking/p2p/libtorrent {
inherit fetchurl stdenv pkgconfig openssl libsigcxx;
};
lout = import ../tools/typesetting/lout {
inherit fetchurl stdenv ghostscript;
};
lrzip = import ../tools/compression/lrzip {
inherit fetchurl stdenv zlib lzo bzip2 nasm;
};
lsh = import ../tools/networking/lsh {
inherit stdenv fetchurl gperf guile gmp zlib liboop gnum4 pam;
};
lzma = import ../tools/compression/lzma {
inherit fetchurl stdenv;
};
lzop = import ../tools/compression/lzop {
inherit fetchurl stdenv lzo;
};
man = import ../tools/misc/man {
inherit fetchurl stdenv groff less;
};
man_db = import ../tools/misc/man-db {
inherit fetchurl stdenv db4 groff;
};
memtest86 = import ../tools/misc/memtest86 {
inherit fetchurl stdenv;
};
mc = import ../tools/misc/mc {
inherit fetchurl stdenv pkgconfig ncurses shebangfix perl zip;
inherit (gtkLibs) glib;
inherit (xlibs) libX11;
};
mcabber = import ../applications/networking/instant-messengers/mcabber {
inherit fetchurl stdenv openssl ncurses pkgconfig;
inherit (gtkLibs) glib;
};
mcron = import ../tools/system/mcron {
inherit fetchurl stdenv guile which ed;
};
mdbtools = builderDefsPackage (selectVersion ../tools/misc/mdbtools "0.6-pre1") {
inherit readline pkgconfig bison;
inherit (gtkLibs) glib;
flex = flex2535;
};
mjpegtools = import ../tools/video/mjpegtools {
inherit fetchurl stdenv libjpeg;
inherit (xlibs) libX11;
};
mktemp = import ../tools/security/mktemp {
inherit fetchurl stdenv;
};
mldonkey = import ../applications/networking/p2p/mldonkey {
inherit fetchurl stdenv ocaml zlib ncurses;
};
mpage = import ../tools/text/mpage {
inherit fetchurl stdenv;
};
msf = builderDefsPackage (selectVersion ../tools/security/metasploit "3.1") {
inherit ruby makeWrapper;
};
mssys = import ../tools/misc/mssys {
inherit fetchurl stdenv gettext;
};
multitran = recurseIntoAttrs (let
inherit fetchurl stdenv help2man;
in rec {
multitrandata = import ../tools/text/multitran/data {
inherit fetchurl stdenv;
};
libbtree = import ../tools/text/multitran/libbtree {
inherit fetchurl stdenv;
};
libmtsupport = import ../tools/text/multitran/libmtsupport {
inherit fetchurl stdenv;
};
libfacet = import ../tools/text/multitran/libfacet {
inherit fetchurl stdenv libmtsupport;
};
libmtquery = import ../tools/text/multitran/libmtquery {
inherit fetchurl stdenv libmtsupport libfacet libbtree multitrandata;
};
mtutils = import ../tools/text/multitran/mtutils {
inherit fetchurl stdenv libmtsupport libfacet libbtree libmtquery help2man;
};
});
mysql2pgsql = import ../tools/misc/mysql2pgsql {
inherit fetchurl stdenv perl shebangfix;
};
namazu = import ../tools/text/namazu {
inherit fetchurl stdenv perl;
};
nc6 = composedArgsAndFun (selectVersion ../tools/networking/nc6 "1.0") {
inherit builderDefs;
};
ncat = import ../tools/networking/ncat {
inherit fetchurl stdenv openssl;
};
netcat = import ../tools/networking/netcat {
inherit fetchurl stdenv;
};
netpbm = import ../tools/graphics/netpbm {
inherit stdenv fetchsvn libjpeg libpng zlib flex perl libxml2;
};
netselect = import ../tools/networking/netselect {
inherit fetchurl stdenv;
};
nmap = import ../tools/security/nmap {
inherit fetchurl stdenv libpcap pkgconfig openssl
python pygtk makeWrapper pygobject pycairo
pysqlite;
inherit (xlibs) libX11;
inherit (gtkLibs) gtk;
};
ntp = import ../tools/networking/ntp {
inherit fetchurl stdenv libcap;
};
nssmdns = import ../tools/networking/nss-mdns {
inherit fetchurl stdenv avahi;
};
nylon = import ../tools/networking/nylon {
inherit fetchurl stdenv libevent;
};
openssh = import ../tools/networking/openssh {
inherit fetchurl stdenv zlib openssl pam perl;
pamSupport = getPkgConfig "openssh" "pam" true;
};
openvpn = import ../tools/networking/openvpn {
inherit fetchurl stdenv iproute lzo openssl nettools;
};
p7zip = import ../tools/archivers/p7zip {
inherit fetchurl stdenv;
};
panomatic = import ../tools/graphics/panomatic {
inherit fetchurl stdenv boost zlib;
};
par2cmdline = import ../tools/networking/par2cmdline {
inherit fetchurl stdenv;
};
patchutils = import ../tools/text/patchutils {
inherit fetchurl stdenv;
};
parted = import ../tools/misc/parted {
inherit fetchurl stdenv e2fsprogs readline;
};
patch = gnupatch;
pciutils = import ../tools/system/pciutils {
inherit fetchurl stdenv zlib;
};
pdf2djvu = import ../tools/typesetting/pdf2djvu {
inherit fetchurl stdenv pkgconfig djvulibre poppler fontconfig libjpeg;
};
pdfjam = import ../tools/typesetting/pdfjam {
inherit fetchurl stdenv;
};
pdsh = import ../tools/networking/pdsh {
inherit fetchurl stdenv perl;
readline = if getPkgConfig "pdsh" "readline" true then readline else null;
rsh = getPkgConfig "pdsh" "rsh" true;
ssh = if getPkgConfig "pdsh" "ssh" true then openssh else null;
pam = if getPkgConfig "pdsh" "pam" true then pam else null;
};
pfstools = import ../tools/graphics/pfstools {
inherit fetchurl stdenv imagemagick libjpeg libtiff mesa freeglut bzip2 libpng expat;
openexr = openexr_1_6_1;
qt = qt3;
inherit (xlibs) libX11;
};
pinentry = import ../tools/misc/pinentry {
inherit fetchurl stdenv pkgconfig ncurses;
inherit (gnome) glib gtk;
};
plan9port = import ../tools/system/plan9port {
inherit fetchurl stdenv;
inherit (xlibs) libX11 xproto libXt xextproto;
};
ploticus = import ../tools/graphics/ploticus {
inherit fetchurl stdenv zlib libpng;
inherit (xlibs) libX11;
};
povray = import ../tools/graphics/povray {
inherit fetchurl stdenv;
};
/* WARNING: this version is unsuitable for using with a setuid wrapper */
ppp = builderDefsPackage (import ../tools/networking/ppp) {
};
proxychains = import ../tools/networking/proxychains {
inherit fetchurl stdenv;
};
proxytunnel = import ../tools/misc/proxytunnel {
inherit fetchurl stdenv openssl;
};
psmisc = import ../tools/misc/psmisc {
inherit stdenv fetchurl ncurses;
};
pv = import ../tools/misc/pv {
inherit fetchurl stdenv;
};
pwgen = import ../tools/security/pwgen {
inherit stdenv fetchurl;
};
pydb = import ../tools/pydb {
inherit fetchurl stdenv python emacs;
};
pystringtemplate = import ../development/python-modules/stringtemplate {
inherit stdenv fetchurl python antlr;
};
pythonDBus = builderDefsPackage (import ../development/python-modules/dbus) {
inherit python pkgconfig dbus_glib;
dbus = dbus.libs;
};
pythonIRClib = builderDefsPackage (import ../development/python-modules/irclib) {
inherit python;
};
pythonSexy = builderDefsPackage (import ../development/python-modules/libsexy) {
inherit python libsexy pkgconfig libxml2 pygtk;
inherit (gtkLibs) pango gtk glib;
};
openmpi = import ../development/libraries/openmpi {
inherit fetchurl stdenv;
};
qhull = import ../development/libraries/qhull {
inherit stdenv fetchurl;
};
qtparted = import ../tools/misc/qtparted {
inherit fetchurl stdenv e2fsprogs ncurses readline parted zlib qt3;
inherit (xlibs) libX11 libXext;
};
relfs = composedArgsAndFun (selectVersion ../tools/misc/relfs "cvs.2008.03.05") {
inherit fetchcvs stdenv ocaml postgresql fuse pcre
builderDefs e2fsprogs pkgconfig;
inherit (gnome) gnomevfs GConf;
};
remind = import ../tools/misc/remind {
inherit fetchurl stdenv;
};
replace = import ../tools/text/replace {
inherit fetchurl stdenv;
};
/*
rdiff_backup = import ../tools/backup/rdiff-backup {
inherit fetchurl stdenv librsync gnused;
python=python;
};
*/
rsnapshot = import ../tools/backup/rsnapshot {
inherit fetchurl stdenv perl openssh rsync;
# For the `logger' command, we can use either `utillinux' or
# GNU Inetutils. The latter is more portable.
logger = inetutils;
};
rlwrap = composedArgsAndFun (selectVersion ../tools/misc/rlwrap "0.28") {
inherit builderDefs readline;
};
rpPPPoE = builderDefsPackage (import ../tools/networking/rp-pppoe) {
inherit ppp;
};
rpm = import ../tools/package-management/rpm {
inherit fetchurl stdenv cpio zlib bzip2 file sqlite beecrypt neon elfutils;
};
rrdtool = import ../tools/misc/rrdtool {
inherit stdenv fetchurl gettext perl pkgconfig libxml2 cairo;
inherit (gtkLibs) pango;
};
rtorrent = import ../tools/networking/p2p/rtorrent {
inherit fetchurl stdenv libtorrent ncurses pkgconfig libsigcxx curl zlib openssl;
};
rubber = import ../tools/typesetting/rubber {
inherit fetchurl stdenv python texinfo;
};
rxp = import ../tools/text/xml/rxp {
inherit fetchurl stdenv;
};
rzip = import ../tools/compression/rzip {
inherit fetchurl stdenv bzip2;
};
sablotron = import ../tools/text/xml/sablotron {
inherit fetchurl stdenv expat;
};
screen = import ../tools/misc/screen {
inherit fetchurl stdenv ncurses;
};
seccure = import ../tools/security/seccure/0.4.nix {
inherit fetchurl stdenv libgcrypt;
};
semantic = import ../applications/editors/emacs-modes/semantic {
inherit fetchurl stdenv emacs eieio;
};
setserial = builderDefsPackage (import ../tools/system/setserial) {
inherit groff;
};
sharutils = selectVersion ../tools/archivers/sharutils "4.6.3" {
inherit fetchurl stdenv;
};
shebangfix = import ../tools/misc/shebangfix {
inherit stdenv perl;
};
slsnif = import ../tools/misc/slsnif {
inherit fetchurl stdenv;
};
smartmontools = import ../tools/system/smartmontools {
inherit fetchurl stdenv;
};
smbfsFuse = composedArgsAndFun (selectVersion ../tools/networking/smbfs-fuse "0.8.7") {
inherit builderDefs samba fuse;
};
socat = builderDefsPackage (selectVersion ../tools/networking/socat "1.6.0.1") {
inherit openssl;
};
sudo = import ../tools/security/sudo {
inherit fetchurl stdenv coreutils pam;
};
superkaramba = import ../desktops/superkaramba {
inherit stdenv fetchurl kdebase kdelibs zlib libjpeg
perl qt3 python libpng freetype expat;
inherit (xlibs) libX11 libXext libXt libXaw libXpm;
};
sshfsFuse = import ../tools/networking/sshfs-fuse {
inherit fetchurl stdenv pkgconfig fuse;
inherit (gtkLibs) glib;
};
ssmtp = import ../tools/networking/ssmtp {
inherit fetchurl stdenv openssl;
tlsSupport = true;
};
ssss = composedArgsAndFun (selectVersion ../tools/security/ssss "0.5") {
inherit builderDefs gmp;
};
stunnel = import ../tools/networking/stunnel {
inherit fetchurl stdenv openssl;
};
su = import ../tools/misc/su {
inherit fetchurl stdenv pam;
};
system_config_printer = import ../tools/misc/system-config-printer {
inherit stdenv fetchurl perl perlXMLParser desktop_file_utils;
};
tcpdump = import ../tools/networking/tcpdump {
inherit fetchurl stdenv libpcap;
};
tcng = import ../tools/networking/tcng {
inherit fetchurl stdenv iproute bison flex db4 perl;
kernel = kernel_2_6_28;
};
telnet = import ../tools/networking/telnet {
inherit fetchurl stdenv ncurses;
};
ttf2pt1 = import ../tools/misc/ttf2pt1 {
inherit fetchurl stdenv perl freetype;
};
ucl = import ../development/libraries/ucl {
inherit fetchurl stdenv;
};
upx = import ../tools/compression/upx {
inherit fetchurl stdenv ucl zlib;
};
viking = import ../applications/misc/viking {
inherit fetchurl stdenv pkgconfig intltool gettext expat curl
gpsd bc file;
inherit (gtkLibs) gtk;
};
vpnc = import ../tools/networking/vpnc {
inherit fetchurl stdenv libgcrypt perl gawk
nettools makeWrapper;
};
vtun = import ../tools/networking/vtun {
inherit fetchurl stdenv lzo openssl zlib yacc flex;
};
testdisk = import ../tools/misc/testdisk {
inherit fetchurl stdenv ncurses libjpeg e2fsprogs zlib openssl;
};
tightvnc = import ../tools/admin/tightvnc {
inherit fetchurl stdenv x11 zlib libjpeg perl;
inherit (xlibs) imake gccmakedep libXmu libXaw libXpm libXp xauth;
fontDirectories = [ xorg.fontadobe75dpi xorg.fontmiscmisc xorg.fontcursormisc
xorg.fontbhlucidatypewriter75dpi ];
};
time = import ../tools/misc/time {
inherit fetchurl stdenv;
};
tm = import ../tools/system/tm {
inherit fetchurl stdenv;
};
trang = import ../tools/text/xml/trang {
inherit fetchurl stdenv unzip jre;
};
ts = import ../tools/system/ts {
inherit fetchurl stdenv;
};
transfig = import ../tools/graphics/transfig {
inherit fetchurl stdenv libpng libjpeg zlib;
inherit (xlibs) imake;
};
truecrypt = import ../applications/misc/truecrypt {
inherit fetchurl stdenv pkgconfig fuse devicemapper;
wxGTK = wxGTK28;
};
/* don't have time to fix the builderDefs based expression
ttmkfdirX = import ../tools/misc/ttmkfdir {
inherit debPackage freetype fontconfig libunwind libtool bison;
flex = flex2534;
};
*/
ttmkfdir = import ../tools/misc/ttmkfdir/normal-builder.nix {
inherit stdenv fetchurl freetype fontconfig libunwind libtool bison;
flex = flex2534;
};
units = import ../tools/misc/units {
inherit fetchurl stdenv;
};
unrar = import ../tools/archivers/unrar {
inherit fetchurl stdenv;
};
unshield = import ../tools/archivers/unshield {
inherit fetchurl stdenv zlib;
};
unzip = import ../tools/archivers/unzip {
inherit fetchurl stdenv;
};
wdfs = import ../tools/networking/wdfs {
inherit stdenv fetchurl neon fuse pkgconfig;
inherit (gtkLibs) glib;
};
wget = import ../tools/networking/wget {
inherit fetchurl stdenv gettext openssl;
};
which = import ../tools/system/which {
inherit fetchurl stdenv readline;
};
wv = import ../tools/misc/wv {
inherit fetchurl stdenv libpng zlib imagemagick
pkgconfig libgsf libxml2 bzip2;
inherit (gtkLibs) glib;
};
wv2 = import ../tools/misc/wv2 {
inherit stdenv fetchurl pkgconfig libgsf libxml2;
inherit (gtkLibs) glib;
};
x11_ssh_askpass = import ../tools/networking/x11-ssh-askpass {
inherit fetchurl stdenv x11;
inherit (xorg) imake;
};
xclip = import ../tools/misc/xclip {
inherit fetchurl stdenv x11;
inherit (xlibs) libXmu;
};
xmlroff = import ../tools/typesetting/xmlroff {
inherit fetchurl stdenv pkgconfig libxml2 libxslt popt;
inherit (gtkLibs) glib pango gtk;
inherit (gnome) libgnomeprint;
inherit pangoxsl;
};
xmlto = import ../tools/typesetting/xmlto {
inherit fetchurl stdenv flex libxml2 libxslt
docbook_xml_dtd_42 docbook_xsl w3m
glibc bash getopt mktemp findutils makeWrapper;
};
xmltv = import ../tools/misc/xmltv {
inherit fetchurl perl perlPackages;
};
xmpppy = builderDefsPackage (import ../development/python-modules/xmpppy) {
inherit python setuptools;
};
xpf = import ../tools/text/xml/xpf {
inherit fetchurl stdenv python;
libxml2 = libxml2Python;
};
xsel = import ../tools/misc/xsel {
inherit fetchurl stdenv x11;
};
zdelta = import ../tools/compression/zdelta {
inherit fetchurl stdenv;
};
zile = import ../applications/editors/zile {
inherit fetchurl stdenv ncurses help2man;
};
zip = import ../tools/archivers/zip {
inherit fetchurl stdenv;
};
### SHELLS
bash = lowPrio (useFromStdenv "bash" bashReal);
bashReal = makeOverridable (import ../shells/bash) {
inherit fetchurl stdenv bison;
};
bashInteractive = appendToName "interactive" (bashReal.override {
inherit readline texinfo;
interactive = true;
});
tcsh = import ../shells/tcsh {
inherit fetchurl stdenv ncurses;
};
zsh = composedArgsAndFun (selectVersion ../shells/zsh "4.3.9") {
inherit fetchurl stdenv ncurses coreutils;
# for CVS:
inherit (bleedingEdgeRepos) sourceByName;
inherit autoconf yodl;
};
### DEVELOPMENT / COMPILERS
abc =
abcPatchable [];
abcPatchable = patches :
import ../development/compilers/abc/default.nix {
inherit stdenv fetchurl patches jre apacheAnt;
javaCup = import ../development/libraries/java/cup {
inherit stdenv fetchurl jdk;
};
};
aspectj =
import ../development/compilers/aspectj {
inherit stdenv fetchurl jre;
};
bigloo = import ../development/compilers/bigloo {
inherit fetchurl stdenv;
};
dylan = import ../development/compilers/gwydion-dylan {
inherit fetchurl stdenv perl boehmgc yacc flex readline;
dylan =
import ../development/compilers/gwydion-dylan/binary.nix {
inherit fetchurl stdenv;
};
};
adobeFlexSDK33 = import ../development/compilers/adobe-flex-sdk {
inherit fetchurl stdenv unzip jre;
};
fpc = import ../development/compilers/fpc {
inherit fetchurl stdenv gawk system;
};
gcc = gcc43;
gcc295 = wrapGCC (import ../development/compilers/gcc-2.95 {
inherit fetchurl stdenv noSysDirs;
});
gcc33 = wrapGCC (import ../development/compilers/gcc-3.3 {
inherit fetchurl stdenv noSysDirs;
});
gcc34 = wrapGCC (import ../development/compilers/gcc-3.4 {
inherit fetchurl stdenv noSysDirs;
});
# XXX: GCC 4.2 (and possibly others) misdetects `makeinfo' when
# using Texinfo >= 4.10, just because it uses a stupid regexp that
# expects a single digit after the dot. As a workaround, we feed
# GCC with Texinfo 4.9. Stupid bug, hackish workaround.
gcc40 = wrapGCC (makeOverridable (import ../development/compilers/gcc-4.0) {
inherit fetchurl stdenv noSysDirs;
texinfo = texinfo49;
profiledCompiler = true;
});
gcc41 = wrapGCC (makeOverridable (import ../development/compilers/gcc-4.1) {
inherit fetchurl stdenv noSysDirs;
texinfo = texinfo49;
profiledCompiler = false;
});
gcc42 = wrapGCC (makeOverridable (import ../development/compilers/gcc-4.2) {
inherit fetchurl stdenv noSysDirs;
profiledCompiler = false;
});
gcc43 = useFromStdenv "gcc" gcc43_real;
gcc43_real = lowPrio (wrapGCC (makeOverridable (import ../development/compilers/gcc-4.3) {
inherit fetchurl stdenv texinfo gmp mpfr noSysDirs;
profiledCompiler = true;
}));
gcc43_multi = lowPrio (wrapGCCWith (import ../build-support/gcc-wrapper) glibc_multi (gcc43_real.gcc.override {
stdenv = overrideGCC stdenv (wrapGCCWith (import ../build-support/gcc-wrapper) glibc_multi gcc);
profiledCompiler = false;
enableMultilib = true;
}));
gccApple = wrapGCC (import ../development/compilers/gcc-apple {
inherit fetchurl stdenv noSysDirs;
profiledCompiler = true;
});
gccupc40 = wrapGCCUPC (import ../development/compilers/gcc-upc-4.0 {
inherit fetchurl stdenv bison autoconf gnum4 noSysDirs;
texinfo = texinfo49;
});
gfortran = gfortran43;
gfortran40 = wrapGCC (gcc40.gcc.override {
name = "gfortran";
langFortran = true;
langCC = false;
inherit gmp mpfr;
});
gfortran41 = wrapGCC (gcc41.gcc.override {
name = "gfortran";
langFortran = true;
langCC = false;
langC = false;
inherit gmp mpfr;
});
gfortran42 = wrapGCC (gcc42.gcc.override {
name = "gfortran";
langFortran = true;
langCC = false;
langC = false;
inherit gmp mpfr;
});
gfortran43 = wrapGCC (gcc43_real.gcc.override {
name = "gfortran";
langFortran = true;
langCC = false;
langC = false;
profiledCompiler = false;
});
gcj = gcj43;
gcj43 = wrapGCC (gcc43_real.gcc.override {
name = "gcj";
langJava = true;
langFortran = false;
langCC = true;
langC = false;
profiledCompiler = false;
inherit zlib boehmgc;
});
# This new ghc stuff is under heavy development and will change !
# ===============================================================
# usage: see ghcPkgUtil.sh
# depreceated -> use functions defined in builderDefs
ghcPkgUtil = runCommand "ghcPkgUtil-internal"
{ ghcPkgUtil = ../development/libraries/haskell/generic/ghcPkgUtil.sh; }
"mkdir -p $out/nix-support; cp $ghcPkgUtil \$out/nix-support/setup-hook;";
ghcsAndLibs =
assert builtins ? listToAttrs;
import ../development/compilers/ghcs {
ghcboot = ghc642Binary;
inherit fetchurl stdenv recurseIntoAttrs perl gnum4 gmp readline lib;
inherit ghcPkgUtil ctags autoconf automake getConfig;
inherit (ghc68executables) hasktags;
inherit (bleedingEdgeRepos) sourceByName;
# needed for install darcs ghc version
happy = ghc68executables.happy;
alex = ghc68executables.alex;
};
# creates ghc-X-wl wich adds the passed libraries to the env var GHC_PACKAGE_PATH
ghcWrapper = { ghcPackagedLibs ? false, ghc, libraries, name, suffix ? "ghc_wrapper_${ghc.name}" } :
import ../development/compilers/ghc/ghc-wrapper {
inherit ghcPackagedLibs ghc name suffix libraries ghcPkgUtil
lib
readline ncurses stdenv;
inherit (sourceAndTags) sourceWithTagsDerivation annotatedWithSourceAndTagInfo sourceWithTagsFromDerivation;
#inherit stdenv ghcPackagedLibs ghc name suffix libraries ghcPkgUtil
# annotatedDerivations lib sourceWithTagsDerivation annotatedWithSourceAndTagInfo;
installSourceAndTags = getConfig ["haskell" "ghcWrapper" "installSourceAndTags"] false;
};
# args must contain src name buildInputs
# classic expression style.. seems to work fine
# used now
#
# args must contain: src name buildInputs propagatedBuildInputs
# classic expression style.. seems to work fine
# used now
# srcDir contains source directory (containing the .cabal file)
# TODO: set --bindir=/usr/local or such (executables are installed to
# /usr/local/bin which is not added to path when building other packages
# hsp needs trhsx from hsx
# TODO add eval "$preBuild" phase
ghcCabalDerivation = args : with args;
let buildInputs = (if (args ? buildInputs) then args.buildInputs else [])
++ [ ghcPkgUtil ] ++ ( if args ? pass && args.pass ? buildInputs then args.pass.buildInputs else []);
configure = if (args ? useLocalPkgDB)
then "nix_ghc_pkg_tool join localDb\n" +
"\$CABAL_SETUP configure --package-db=localDb \$profiling \$cabalFlags"
else "\$CABAL_SETUP configure --by-env=\$PACKAGE_DB \$profiling \$cabalFlags";
in stdenv.mkDerivation ({
srcDir = if (args ? srcDir) then args.srcDir else ".";
inherit (args) name src propagatedBuildInputs;
phases = "unpackPhase patchPhase buildPhase";
profiling = if getConfig [ "ghc68" "profiling" ] false then "-p" else "";
cabalFlags = map lib.escapeShellArg
(getConfig [ "cabal" "flags" ] []
++ (if args ? cabalFlags then args.cabalFlags else []) );
# TODO remove echo line
buildPhase ="
createEmptyPackageDatabaseAndSetupHook
export GHC_PACKAGE_PATH
cd \$srcDir
ghc --make Setup.*hs -o setup
CABAL_SETUP=./setup
" + configure +"
\$CABAL_SETUP build
\$CABAL_SETUP copy --destdir=\$out
\$CABAL_SETUP register --gen-script
sed -e \"s=/usr/local/lib=\$out/usr/local/lib=g\" \\
-e \"s#bin/ghc-pkg --package-conf.*#bin/ghc-pkg --package-conf=\$PACKAGE_DB register -#\" \\
-i register.sh
./register.sh
rm \${PACKAGE_DB}.old
ensureDir \"\$out/nix-support\"
echo \"\$propagatedBuildInputs\" > \"\$out/nix-support/propagated-build-inputs\"
";
} // ( if args ? pass then (args.pass) else {} ) // { inherit buildInputs; } );
ghcCabalExecutableFun = (import ../development/compilers/ghc/ghc-wrapper/ghc-cabal-executable-fun.nix){
inherit ghc68extraLibs ghcsAndLibs stdenv lib;
# extra packages from this top level file:
inherit perl;
};
# this may change in the future
ghc68extraLibs = (import ../misc/ghc68extraLibs ) {
# lib like stuff
inherit (sourceAndTags) addHasktagsTaggingInfo;
inherit bleedingEdgeRepos fetchurl lib ghcCabalDerivation pkgconfig unzip zlib;
# used (non haskell) libraries (ffi etc)
inherit postgresql mysql sqlite gtkLibs gnome xlibs freetype getConfig libpng bzip2 pcre;
executables = ghc68executables;
wxGTK = wxGTK26;
};
# Executables compiled by this ghc68 - I'm too lazy to add them all as additional file in here
ghc68executables = import ../misc/ghc68executables {
inherit ghcCabalExecutableFun fetchurl lib bleedingEdgeRepos autoconf zlib getConfig;
#inherit X11;
inherit (xlibs) xmessage;
inherit pkgs; # passing pkgs to add the possibility for the user to add his own executables. pkgs is passed.
};
# the wrappers basically does one thing: It defines GHC_PACKAGE_PATH before calling ghc{i,-pkg}
# So you can have different wrappers with different library combinations
# So installing ghc libraries isn't done by nix-env -i package but by adding
# the lib to the libraries list below
# Doesn't create that much useless symlinks (you seldomly want to read the
# .hi and .o files, right?
ghcLibraryWrapper68 =
let ghc = ghcsAndLibs.ghc68.ghc; in
ghcWrapper rec {
ghcPackagedLibs = true;
name = "ghc${ghc.version}_wrapper";
suffix = "${ghc.version}wrapper";
libraries =
# core_libs distributed with this ghc version
(lib.flattenAttrs ghcsAndLibs.ghc68.core_libs)
# (map ( a : builtins.getAttr a ghcsAndLibs.ghc68.core_libs ) [ "cabal" "mtl" "base" ]
# some extra libs
++ (lib.flattenAttrs (ghc68extraLibs ghcsAndLibs.ghc68) );
# ++ map ( a : builtins.getAttr a (ghc68extraLibs ghcsAndLibs.ghc68 ) ) [ "mtl" "parsec" ... ]
inherit ghc;
};
#ghc = haskellPackages.ghc;
ghc642Binary = lowPrio (import ../development/compilers/ghc/6.4.2-binary.nix {
inherit fetchurl stdenv ncurses gmp;
readline = if stdenv.system == "i686-linux" then readline4 else readline;
perl = perl58;
});
ghc6101Binary = lowPrio (import ../development/compilers/ghc/6.10.1-binary.nix {
inherit fetchurl stdenv perl ncurses gmp libedit;
});
ghc6102Binary = lowPrio (import ../development/compilers/ghc/6.10.2-binary.nix {
inherit fetchurl stdenv perl ncurses gmp libedit;
});
haskellPackages = haskellPackages_ghc6103;
haskellPackages_ghc642 = import ./haskell-packages.nix {
inherit pkgs;
ghc = import ../development/compilers/ghc/6.4.2.nix {
inherit fetchurl stdenv perl ncurses readline m4 gmp;
ghc = ghc642Binary;
};
};
haskellPackages_ghc661 = import ./haskell-packages.nix {
inherit pkgs;
ghc = import ../development/compilers/ghc/6.6.1.nix {
inherit fetchurl stdenv readline perl58 gmp ncurses m4;
ghc = ghc642Binary;
};
};
haskellPackages_ghc682 = import ./haskell-packages.nix {
inherit pkgs;
ghc = import ../development/compilers/ghc/6.8.2.nix {
inherit fetchurl stdenv readline perl gmp ncurses m4;
ghc = ghc642Binary;
};
};
haskellPackages_ghc683 = recurseIntoAttrs (import ./haskell-packages.nix {
inherit pkgs;
ghc = import ../development/compilers/ghc/6.8.3.nix {
inherit fetchurl stdenv readline perl gmp ncurses m4;
ghc = ghc642Binary;
haddock = import ../development/tools/documentation/haddock/boot.nix {
inherit gmp;
cabal = import ../development/libraries/haskell/cabal/cabal.nix {
inherit stdenv fetchurl lib;
ghc = ghc642Binary;
};
};
};
});
haskellPackages_ghc6101 = recurseIntoAttrs (import ./haskell-packages.nix {
inherit pkgs;
ghc = import ../development/compilers/ghc/6.10.1.nix {
inherit fetchurl stdenv perl ncurses gmp libedit;
ghc = ghc6101Binary;
};
});
haskellPackages_ghc6102 = recurseIntoAttrs (import ./haskell-packages.nix {
inherit pkgs;
ghc = import ../development/compilers/ghc/6.10.2.nix {
inherit fetchurl stdenv perl ncurses gmp libedit;
ghc = ghc6101Binary;
};
});
haskellPackages_ghc6103 = recurseIntoAttrs (import ./haskell-packages.nix {
inherit pkgs;
ghc = import ../development/compilers/ghc/6.10.3.nix {
inherit fetchurl stdenv perl ncurses gmp libedit;
ghc = ghc6101Binary;
};
});
gprolog = import ../development/compilers/gprolog {
inherit fetchurl stdenv;
};
gwt = import ../development/compilers/gwt {
inherit stdenv fetchurl;
inherit (gtkLibs) glib gtk pango atk;
inherit (xlibs) libX11 libXt;
libstdcpp5 = gcc33.gcc;
};
ikarus = builderDefsPackage (selectVersion ../development/compilers/ikarus "0.0.3") {
inherit gmp;
};
#TODO add packages http://cvs.haskell.org/Hugs/downloads/2006-09/packages/ and test
# commented out because it's using the new configuration style proposal which is unstable
hugs = import ../development/compilers/hugs {
inherit lib fetchurl stdenv composableDerivation;
};
j2sdk14x =
assert system == "i686-linux";
import ../development/compilers/jdk/default-1.4.nix {
inherit fetchurl stdenv;
};
jdk5 =
assert system == "i686-linux" || system == "x86_64-linux";
import ../development/compilers/jdk/default-5.nix {
inherit fetchurl stdenv unzip;
};
jdk = jdkdistro true false;
jre = jdkdistro false false;
jdkPlugin = jdkdistro true true;
jrePlugin = jdkdistro false true;
supportsJDK =
system == "i686-linux" ||
system == "x86_64-linux" ||
system == "powerpc-linux";
jdkdistro = installjdk: pluginSupport:
assert supportsJDK;
(if pluginSupport then appendToName "plugin" else x: x) (import ../development/compilers/jdk {
inherit fetchurl stdenv unzip installjdk xlibs pluginSupport makeWrapper;
});
jikes = import ../development/compilers/jikes {
inherit fetchurl stdenv;
};
lazarus = builderDefsPackage (import ../development/compilers/fpc/lazarus.nix) {
inherit fpc makeWrapper;
inherit (gtkLibs1x) gtk glib gdkpixbuf;
inherit (xlibs) libXi inputproto libX11 xproto libXext xextproto;
};
llvm = import ../development/compilers/llvm {
inherit fetchurl stdenv gcc flex perl libtool;
};
llvmGCC = builderDefsPackage (import ../development/compilers/llvm/llvm-gcc.nix) {
flex=flex2535;
inherit llvm perl libtool bison;
};
mono = import ../development/compilers/mono {
inherit fetchurl stdenv bison pkgconfig;
inherit (gtkLibs) glib;
};
monoDLLFixer = import ../build-support/mono-dll-fixer {
inherit stdenv perl;
};
monotone = import ../applications/version-management/monotone {
inherit stdenv fetchurl boost zlib botan libidn pcre
sqlite;
lua = lua5;
};
monotoneViz = builderDefsPackage (selectVersion ../applications/version-management/monotone-viz "1.0.1") {
inherit ocaml lablgtk graphviz pkgconfig;
inherit (gnome) gtk libgnomecanvas glib;
};
viewMtn = builderDefsPackage (selectVersion ../applications/version-management/viewmtn "0.10")
{
inherit monotone flup cheetahTemplate highlight ctags
makeWrapper graphviz which python;
};
nasm = import ../development/compilers/nasm {
inherit fetchurl stdenv;
};
ocaml = getVersion "ocaml" ocaml_alts;
ocaml_alts = import ../development/compilers/ocaml {
inherit fetchurl stdenv x11 ncurses;
};
/*
gcj = import ../build-support/gcc-wrapper/default2.nix {
name = "gcj-wrapper";
nativeTools = false;
nativeLibc = false;
gcc = import ../development/compilers/gcc-4.0 {
inherit fetchurl stdenv noSysDirs;
langJava = true;
langCC = false;
langC = false;
langF77 = false;
};
inherit (stdenv.gcc) binutils libc;
inherit stdenv;
};
*/
opencxx = import ../development/compilers/opencxx {
inherit fetchurl stdenv libtool;
gcc = gcc33;
};
qcmm = import ../development/compilers/qcmm {
lua = lua4;
ocaml = builtins.getAttr "3.08.0" ocaml_alts;
inherit fetchurl stdenv mk noweb groff;
};
roadsend = import ../development/compilers/roadsend {
inherit fetchurl stdenv flex bison bigloo lib curl composableDerivation;
# optional features
# all features pcre, fcgi xml mysql, sqlite3, (not implemented: odbc gtk gtk2)
flags = ["pcre" "xml" "mysql"];
inherit mysql libxml2 fcgi;
};
sbcl = builderDefsPackage (import ../development/compilers/sbcl) {
inherit makeWrapper;
clisp = clisp_2_44_1;
};
scala = import ../development/compilers/scala {
inherit stdenv fetchurl;
};
stalin = import ../development/compilers/stalin {
inherit stdenv fetchurl;
inherit (xlibs) libX11;
};
strategoPackages = strategoPackages017;
strategoPackages016 = import ../development/compilers/strategoxt/0.16.nix {
inherit fetchurl pkgconfig aterm getopt;
stdenv = overrideInStdenv stdenv [gnumake380];
};
strategoPackages017 = import ../development/compilers/strategoxt/0.17.nix {
inherit fetchurl stdenv pkgconfig aterm getopt jdk;
};
metaBuildEnv = import ../development/compilers/meta-environment/meta-build-env {
inherit fetchurl stdenv ;
};
swiProlog = composedArgsAndFun (selectVersion ../development/compilers/swi-prolog "5.6.51") {
inherit fetchurl stdenv;
};
tinycc = import ../development/compilers/tinycc {
inherit fetchurl stdenv perl texinfo;
};
visualcpp = import ../development/compilers/visual-c++ {
inherit fetchurl stdenv cabextract;
};
webdsl = import ../development/compilers/webdsl {
inherit stdenv fetchurl pkgconfig strategoPackages;
};
win32hello = import ../development/compilers/visual-c++/test {
inherit fetchurl stdenv visualcpp windowssdk;
};
wrapGCCWith = gccWrapper: glibc: baseGCC: gccWrapper {
nativeTools = stdenv ? gcc && stdenv.gcc.nativeTools;
nativeLibc = stdenv ? gcc && stdenv.gcc.nativeLibc;
nativePrefix = if stdenv ? gcc then stdenv.gcc.nativePrefix else "";
gcc = baseGCC;
libc = glibc;
inherit stdenv binutils;
};
wrapGCC = wrapGCCWith (import ../build-support/gcc-wrapper) glibc;
# FIXME: This is a specific hack for GCC-UPC. Eventually, we may
# want to merge `gcc-upc-wrapper' and `gcc-wrapper'.
wrapGCCUPC = baseGCC: import ../build-support/gcc-upc-wrapper {
nativeTools = stdenv ? gcc && stdenv.gcc.nativeTools;
nativeLibc = stdenv ? gcc && stdenv.gcc.nativeLibc;
gcc = baseGCC;
libc = glibc;
inherit stdenv binutils;
};
# prolog
yap = import ../development/compilers/yap {
inherit fetchurl stdenv;
};
### DEVELOPMENT / INTERPRETERS
clisp = import ../development/interpreters/clisp {
inherit fetchurl stdenv libsigsegv gettext
readline ncurses coreutils pcre zlib libffi libffcall;
inherit (xlibs) libX11 libXau libXt xproto
libXpm libXext xextproto;
};
# compatibility issues in 2.47 - at list 2.44.1 is known good
# for sbcl bootstrap
clisp_2_44_1 = import ../development/interpreters/clisp/2.44.1.nix {
inherit fetchurl stdenv libsigsegv gettext
readline ncurses coreutils pcre zlib libffi libffcall;
inherit (xlibs) libX11 libXau libXt xproto
libXpm libXext xextproto;
};
erlang = import ../development/interpreters/erlang {
inherit fetchurl stdenv perl gnum4 ncurses openssl;
};
guile = import ../development/interpreters/guile {
inherit fetchurl stdenv readline libtool gmp gawk makeWrapper;
};
io = builderDefsPackage (import ../development/interpreters/io) {
inherit sqlite zlib gmp libffi cairo ncurses freetype mesa
libpng libtiff libjpeg readline libsndfile libxml2
freeglut e2fsprogs libsamplerate pcre libevent libedit;
};
kaffe = import ../development/interpreters/kaffe {
inherit fetchurl stdenv jikes alsaLib xlibs;
};
lua4 = import ../development/interpreters/lua-4 {
inherit fetchurl stdenv;
};
lua5 = import ../development/interpreters/lua-5 {
inherit fetchurl stdenv ncurses readline;
};
maude = import ../development/interpreters/maude {
inherit fetchurl stdenv flex bison ncurses buddy tecla gmp libsigsegv makeWrapper;
};
octave = import ../development/interpreters/octave {
inherit stdenv fetchurl gfortran readline ncurses perl flex qhull texinfo;
};
# mercurial (hg) bleeding edge version
octaveHG = import ../development/interpreters/octave/hg.nix {
inherit fetchurl readline ncurses perl flex atlas getConfig glibc qhull gfortran;
inherit automake autoconf bison gperf lib python gnuplot texinfo texLive; # for dev Version
inherit stdenv;
inherit (xlibs) libX11;
#stdenv = overrideGCC stdenv gcc40;
inherit (bleedingEdgeRepos) sourceByName;
};
perl = if !stdenv.isLinux then sysPerl else perlReal;
perl58 = if !stdenv.isLinux then sysPerl else
import ../development/interpreters/perl-5.8 {
inherit fetchurl stdenv;
};
perlReal = import ../development/interpreters/perl-5.10 {
fetchurl = fetchurlBoot;
inherit stdenv;
};
# FIXME: unixODBC needs patching on Darwin (see darwinports)
phpOld = import ../development/interpreters/php {
inherit stdenv fetchurl flex bison libxml2 apacheHttpd;
unixODBC =
if stdenv.isDarwin then null else unixODBC;
};
php = import ../development/interpreters/php_configurable {
inherit
stdenv fetchurl lib composableDerivation autoconf automake
flex bison apacheHttpd mysql libxml2 # gettext
zlib curl gd postgresql openssl pkgconfig sqlite;
};
pltScheme = builderDefsPackage (import ../development/interpreters/plt-scheme) {
inherit cairo fontconfig freetype libjpeg libpng openssl
perl mesa zlib which;
inherit (xorg) libX11 libXaw libXft libXrender libICE xproto
renderproto pixman libSM libxcb libXext xextproto libXmu
libXt;
};
python = if getConfig ["python" "full"] false then pythonFull else pythonBase;
python25 = if getConfig ["python" "full"] false then python25Full else python25Base;
pythonBase = python25Base;
pythonFull = python25Full;
python24 = import ../development/interpreters/python/2.4 {
inherit fetchurl stdenv zlib bzip2;
};
python25Base = composedArgsAndFun (import ../development/interpreters/python/2.5) {
inherit fetchurl stdenv zlib bzip2 gdbm;
};
python25Full = python25Base.passthru.function {
# FIXME: We lack ncurses support, needed, e.g., for `gpsd'.
db4 = if getConfig ["python" "db4Support"] true then db4 else null;
sqlite = if getConfig ["python" "sqliteSupport"] true then sqlite else null;
readline = if getConfig ["python" "readlineSupport"] true then readline else null;
openssl = if getConfig ["python" "opensslSupport"] true then openssl else null;
tk = if getConfig ["python" "tkSupport"] true then tk else null;
tcl = if getConfig ["python" "tkSupport"] true then tcl else null;
libX11 = if getConfig ["python" "tkSupport"] true then xlibs.libX11 else null;
xproto = if getConfig ["python" "tkSupport"] true then xlibs.xproto else null;
};
# new python and lib proposal
# - adding a python lib to buildinputs should be enough
# (handles .pth files by patching site.py
# while introducing NIX_PYTHON_SITES describing list of modules)
# - adding pyCheck = "import foo" test scripts to ensure libraries can be imported
# - providing pythonWrapper so that you can run python and import the selected libraries
# feel free to comment on this (experimental)
python25New = recurseIntoAttrs ((import ../development/interpreters/python-new/2.5) pkgs);
pythonNew = python25New; # the default python
pyrex = pyrex095;
pyrex095 = import ../development/interpreters/pyrex/0.9.5.nix {
inherit fetchurl stdenv stringsWithDeps lib builderDefs python;
};
pyrex096 = import ../development/interpreters/pyrex/0.9.6.nix {
inherit fetchurl stdenv stringsWithDeps lib builderDefs python;
};
Qi = composedArgsAndFun (selectVersion ../development/compilers/qi "9.1") {
inherit clisp stdenv fetchurl builderDefs unzip;
};
ruby = import ../development/interpreters/ruby {
inherit fetchurl stdenv readline ncurses zlib lib openssl;
};
rake = import ../development/ruby-modules/rake {
inherit fetchurl stdenv ruby ;
};
rubySqlite3 = import ../development/ruby-modules/sqlite3 {
inherit fetchurl stdenv ruby sqlite;
};
rLang = import ../development/interpreters/r-lang {
inherit fetchurl stdenv readline perl gfortran libpng zlib;
inherit (xorg) libX11 libXt;
withBioconductor = getConfig ["rLang" "withBioconductor"] false;
};
rubygems = builderDefsPackage (import ../development/interpreters/ruby/gems.nix) {
inherit ruby makeWrapper;
};
rq = import ../applications/networking/cluster/rq {
inherit fetchurl stdenv sqlite ruby ;
};
spidermonkey = import ../development/interpreters/spidermonkey {
inherit fetchurl stdenv readline;
};
sysPerl = import ../development/interpreters/sys-perl {
inherit stdenv;
};
tcl = import ../development/interpreters/tcl {
inherit fetchurl stdenv;
};
xulrunnerWrapper = {application, launcher}:
import ../development/interpreters/xulrunner/wrapper {
inherit stdenv application launcher;
xulrunner = xulrunner3;
};
### DEVELOPMENT / MISC
avrgcclibc = import ../development/misc/avr-gcc-with-avr-libc {
inherit fetchurl stdenv writeTextFile gnumake coreutils gnutar bzip2
gnugrep gnused gawk;
inherit gcc;
};
avr8burnomat = import ../development/misc/avr8-burn-omat {
inherit fetchurl stdenv unzip;
};
/*
toolbus = import ../development/interpreters/toolbus {
inherit stdenv fetchurl atermjava toolbuslib aterm yacc flex;
};
*/
bleedingEdgeRepos = import ../development/misc/bleeding-edge-repos {
inherit getConfig fetchurl lib;
};
ecj = import ../development/eclipse/ecj {
inherit fetchurl stdenv unzip jre ant;
};
jdtsdk = import ../development/eclipse/jdt-sdk {
inherit fetchurl stdenv unzip;
};
guileLib = import ../development/guile-modules/guile-lib {
inherit fetchurl stdenv guile texinfo;
};
windowssdk = import ../development/misc/windows-sdk {
inherit fetchurl stdenv cabextract;
};
### DEVELOPMENT / TOOLS
antlr = import ../development/tools/parsing/antlr/2.7.7.nix {
inherit fetchurl stdenv jdk python;
};
antlr3 = import ../development/tools/parsing/antlr {
inherit fetchurl stdenv jre;
};
ant = apacheAnt;
apacheAnt = import ../development/tools/build-managers/apache-ant {
inherit fetchurl stdenv jdk;
name = "ant-" + jdk.name;
};
apacheAnt14 = import ../development/tools/build-managers/apache-ant {
inherit fetchurl stdenv;
jdk = j2sdk14x;
name = "ant-" + j2sdk14x.name;
};
autobuild = import ../development/tools/misc/autobuild {
inherit fetchurl stdenv makeWrapper perl openssh rsync;
};
autoconf = import ../development/tools/misc/autoconf {
inherit fetchurl stdenv perl m4 lzma;
};
autoconf213 = import ../development/tools/misc/autoconf/2.13.nix {
inherit fetchurl stdenv perl m4 lzma;
};
automake = automake110x;
automake17x = import ../development/tools/misc/automake/automake-1.7.x.nix {
inherit fetchurl stdenv perl autoconf makeWrapper;
};
automake19x = import ../development/tools/misc/automake/automake-1.9.x.nix {
inherit fetchurl stdenv perl autoconf makeWrapper;
};
automake110x = import ../development/tools/misc/automake/automake-1.10.x.nix {
inherit fetchurl stdenv perl autoconf makeWrapper;
};
automake111x = import ../development/tools/misc/automake/automake-1.11.x.nix {
inherit fetchurl stdenv perl autoconf makeWrapper;
};
avrdude = import ../development/tools/misc/avrdude {
inherit lib fetchurl stdenv flex yacc composableDerivation texLive;
};
binutils = useFromStdenv "binutils"
(import ../development/tools/misc/binutils {
inherit fetchurl stdenv noSysDirs;
});
bison = bison23;
bison1875 = import ../development/tools/parsing/bison/bison-1.875.nix {
inherit fetchurl stdenv m4;
};
bison23 = import ../development/tools/parsing/bison/bison-2.3.nix {
inherit fetchurl stdenv m4;
};
bison24 = import ../development/tools/parsing/bison/bison-2.4.nix {
inherit fetchurl stdenv m4;
};
buildbot = import ../development/tools/build-managers/buildbot {
inherit fetchurl stdenv python twisted makeWrapper;
};
byacc = import ../development/tools/parsing/byacc {
inherit fetchurl stdenv;
};
ccache = import ../development/tools/misc/ccache {
inherit fetchurl stdenv;
};
ctags = import ../development/tools/misc/ctags {
inherit fetchurl stdenv bleedingEdgeRepos automake autoconf;
};
ctagsWrapped = import ../development/tools/misc/ctags/wrapped.nix {
inherit pkgs ctags writeScriptBin lib makeOverridable;
};
cmake = import ../development/tools/build-managers/cmake {
inherit fetchurl stdenv replace ncurses;
};
cproto = import ../development/tools/misc/cproto {
inherit fetchurl stdenv flex bison;
};
cflow = import ../development/tools/misc/cflow {
inherit fetchurl stdenv gettext emacs;
};
cscope = import ../development/tools/misc/cscope {
inherit fetchurl stdenv ncurses pkgconfig emacs;
};
dejagnu = import ../development/tools/misc/dejagnu {
inherit fetchurl stdenv expect makeWrapper;
};
ddd = import ../development/tools/misc/ddd {
inherit fetchurl stdenv lesstif ncurses;
inherit (xlibs) libX11 libXt;
};
docutils = builderDefsPackage (import ../development/tools/documentation/docutils) {
inherit python pil makeWrapper;
};
doxygen = import ../development/tools/documentation/doxygen {
inherit fetchurl stdenv graphviz perl flex bison gnumake;
inherit (xlibs) libX11 libXext;
qt = if getPkgConfig "doxygen" "qt4" true then qt4 else null;
};
elfutils = import ../development/tools/misc/elfutils {
inherit fetchurl stdenv m4;
};
epm = import ../development/tools/misc/epm {
inherit fetchurl stdenv rpm;
};
emma = import ../development/tools/analysis/emma {
inherit fetchurl stdenv unzip;
};
findbugs = import ../development/tools/analysis/findbugs {
inherit fetchurl stdenv;
};
pmd = import ../development/tools/analysis/pmd {
inherit fetchurl stdenv unzip;
};
jdepend = import ../development/tools/analysis/jdepend {
inherit fetchurl stdenv unzip;
};
checkstyle = import ../development/tools/analysis/checkstyle {
inherit fetchurl stdenv unzip;
};
flex = flex254a;
flex2535 = import ../development/tools/parsing/flex/flex-2.5.35.nix {
inherit fetchurl stdenv yacc m4;
};
flex2534 = import ../development/tools/parsing/flex/flex-2.5.34.nix {
inherit fetchurl stdenv yacc m4;
};
flex2533 = import ../development/tools/parsing/flex/flex-2.5.33.nix {
inherit fetchurl stdenv yacc m4;
};
flex254a = import ../development/tools/parsing/flex/flex-2.5.4a.nix {
inherit fetchurl stdenv yacc;
};
m4 = gnum4;
gnum4 = import ../development/tools/misc/gnum4 {
inherit fetchurl stdenv;
};
gnumake = useFromStdenv "gnumake"
(import ../development/tools/build-managers/gnumake {
inherit fetchurl stdenv;
});
gnumake380 = import ../development/tools/build-managers/gnumake-3.80 {
inherit fetchurl stdenv;
};
gperf = import ../development/tools/misc/gperf {
inherit fetchurl stdenv;
};
gtkdialog = import ../development/tools/misc/gtkdialog {
inherit fetchurl stdenv pkgconfig;
inherit (gtkLibs) gtk;
};
/*
hsc2hs = import ../development/tools/misc/hsc2hs {
inherit bleedingEdgeRepos stdenv;
ghc = ghcsAndLibs.ghc68.ghc;
libs = with (ghc68extraLibs ghcsAndLibs.ghc68 // ghcsAndLibs.ghc68.core_libs); [ base directory process cabal_darcs ];
};
*/
guileLint = import ../development/tools/guile/guile-lint {
inherit fetchurl stdenv guile;
};
gwrap = import ../development/tools/guile/g-wrap {
inherit fetchurl stdenv guile libffi pkgconfig guileLib;
inherit (gtkLibs) glib;
};
help2man = import ../development/tools/misc/help2man {
inherit fetchurl stdenv perl gettext;
inherit (perlPackages) LocaleGettext;
};
iconnamingutils = import ../development/tools/misc/icon-naming-utils {
inherit fetchurl stdenv perl;
inherit (perlPackages) XMLSimple;
};
indent = composedArgsAndFun (selectVersion ../development/tools/misc/indent "2.2.9") {
inherit fetchurl stdenv builderDefs;
};
jikespg = import ../development/tools/parsing/jikespg {
inherit fetchurl stdenv;
};
kcachegrind = import ../development/tools/misc/kcachegrind {
inherit fetchurl stdenv kdelibs zlib perl expat libpng libjpeg;
inherit (xlibs) libX11 libXext libSM;
qt = qt3;
};
lcov = import ../development/tools/analysis/lcov {
inherit fetchurl stdenv perl;
};
libtool = libtool_2;
libtool_1_5 = import ../development/tools/misc/libtool {
inherit fetchurl stdenv perl m4;
};
libtool_2 = import ../development/tools/misc/libtool/libtool2.nix {
inherit fetchurl stdenv lzma perl m4;
};
lsof = import ../development/tools/misc/lsof {
inherit fetchurl stdenv;
};
ltrace = composedArgsAndFun (selectVersion ../development/tools/misc/ltrace "0.5-3deb") {
inherit fetchurl stdenv builderDefs stringsWithDeps lib elfutils;
};
mk = import ../development/tools/build-managers/mk {
inherit fetchurl stdenv;
};
noweb = import ../development/tools/literate-programming/noweb {
inherit fetchurl stdenv;
};
oprofile = import ../development/tools/profiling/oprofile {
inherit fetchurl stdenv binutils popt;
inherit makeWrapper gawk which gnugrep;
};
patchelf = useFromStdenv "patchelf"
(import ../development/tools/misc/patchelf {
inherit fetchurl stdenv;
});
patchelf05 = import ../development/tools/misc/patchelf/0.5.nix {
inherit fetchurl stdenv;
};
pmccabe = import ../development/tools/misc/pmccabe {
inherit fetchurl stdenv;
};
/**
* pkgconfig is optionally taken from the stdenv to allow bootstrapping
* of glib and pkgconfig itself on MinGW.
*/
pkgconfig = useFromStdenv "pkgconfig"
(import ../development/tools/misc/pkgconfig {
inherit fetchurl stdenv;
});
radare = import ../development/tools/analysis/radare {
inherit stdenv fetchurl pkgconfig libusb readline gtkdialog python
ruby libewf perl;
inherit (gtkLibs) gtk;
inherit (gnome) vte;
lua = lua5;
};
ragel = import ../development/tools/parsing/ragel {
inherit composableDerivation fetchurl transfig texLive;
};
# couldn't find the source yet
seleniumRCBin = import ../development/tools/selenium/remote-control {
inherit fetchurl stdenv unzip;
jre = jdk;
};
scons = import ../development/tools/build-managers/scons {
inherit fetchurl stdenv python makeWrapper;
};
sloccount = import ../development/tools/misc/sloccount {
inherit fetchurl stdenv perl;
};
sparse = import ../development/tools/analysis/sparse {
inherit fetchurl stdenv pkgconfig;
};
spin = import ../development/tools/analysis/spin {
inherit fetchurl stdenv flex yacc tk;
};
splint = import ../development/tools/analysis/splint {
inherit fetchurl stdenv flex;
};