replacing applyAndFun by lib.defaultOverridableDelayableArgs

applyAndFun has a bug resulting in the same arg beeing added more than
once when using a concatenating merge function for the attr set.

I've tried giving the function a name "overridableDelayableArgs" which
resembles its usage much more.

important refactoring:
  applyAndFun had .fun and .funMerge only when passing the merge
  function lib.mergeOrApply

  composableDerivation {
    initial = {
      ...
    };
  }

to

  overridableDelayableArgs has always .replace and .merge
  composableDerivation {} {
    ...
  }

svn path=/nixpkgs/trunk/; revision=14428
This commit is contained in:
Marc Weber 2009-03-06 23:21:28 +00:00
parent 51289a41b0
commit b56ed35851
15 changed files with 564 additions and 593 deletions

View file

@ -2,77 +2,74 @@
# but I have gvim with python support now :) - Marc
args: with args;
let inherit (args.composableDerivation) composableDerivation edf; in
composableDerivation {
initial = {
composableDerivation {} {
name = "vim_configurable-7.1";
name = "vim_configurable-7.1";
src = args.fetchurl {
url = ftp://ftp.vim.org/pub/vim/unix/vim-7.2.tar.bz2;
sha256 = "11hxkb6r2550c4n13nwr0d8afvh30qjyr5c2hw16zgay43rb0kci";
};
configureFlags = ["--enable-gui=auto" "--with-features=${args.features}"];
buildInputs = [ncurses pkgconfig]
++ [ gtk libX11 libXext libSM libXpm libXt libXaw libXau libXmu ];
# most interpreters aren't tested yet.. (see python for example how to do it)
flags = {}
// edf { name = "darwin"; } #Disable Darwin (Mac OS X) support.
// edf { name = "xsmp"; } #Disable XSMP session management
// edf { name = "xsmp_interact"; } #Disable XSMP interaction
// edf { name = "mzscheme"; } #Include MzScheme interpreter.
// edf { name = "perl"; feat = "perlinterp"; enable = { buildInputs = [perl]; };} #Include Perl interpreter.
// edf { name = "python"; feat = "pythoninterp"; enable = { buildInputs = [python]; }; } #Include Python interpreter.
// edf { name = "tcl"; enable = { buildInputs = [tcl]; }; } #Include Tcl interpreter.
// edf { name = "ruby"; feat = "rubyinterp"; enable = { buildInputs = [ruby]; };} #Include Ruby interpreter.
// edf { name = "cscope"; } #Include cscope interface.
// edf { name = "workshop"; } #Include Sun Visual Workshop support.
// edf { name = "netbeans"; } #Disable NetBeans integration support.
// edf { name = "sniff"; } #Include Sniff interface.
// edf { name = "multibyte"; } #Include multibyte editing support.
// edf { name = "hangulinput"; } #Include Hangul input support.
# // edf { name = "xim"; enable = { buildInputs = [xim]; }; } #Include XIM input support.
// edf { name = "fontset"; } #Include X fontset output support.
// edf { name = "acl"; } #Don't check for ACL support.
// edf { name = "gpm"; } #Don't use gpm (Linux mouse daemon).
// edf { name = "nls"; } #Don't support NLS (gettext()).
;
cfg = {
pythonSupport = true;
src = args.fetchurl {
url = ftp://ftp.vim.org/pub/vim/unix/vim-7.2.tar.bz2;
sha256 = "11hxkb6r2550c4n13nwr0d8afvh30qjyr5c2hw16zgay43rb0kci";
};
#--enable-gui=OPTS X11 GUI default=auto OPTS=auto/no/gtk/gtk2/gnome/gnome2/motif/athena/neXtaw/photon/carbon
/*
// edf "gtk_check" "gtk_check" { } #If auto-select GUI, check for GTK default=yes
// edf "gtk2_check" "gtk2_check" { } #If GTK GUI, check for GTK+ 2 default=yes
// edf "gnome_check" "gnome_check" { } #If GTK GUI, check for GNOME default=no
// edf "motif_check" "motif_check" { } #If auto-select GUI, check for Motif default=yes
// edf "athena_check" "athena_check" { } #If auto-select GUI, check for Athena default=yes
// edf "nextaw_check" "nextaw_check" { } #If auto-select GUI, check for neXtaw default=yes
// edf "carbon_check" "carbon_check" { } #If auto-select GUI, check for Carbon default=yes
// edf "gtktest" "gtktest" { } #Do not try to compile and run a test GTK program
*/
configureFlags = ["--enable-gui=auto" "--with-features=${args.features}"];
postInstall = "
rpath=`patchelf --print-rpath \$out/bin/vim`;
for i in $\buildInputs; do
echo adding \$i/lib
rpath=\$rpath:\$i/lib
done
echo \$buildInputs
echo \$rpath
patchelf --set-rpath \$rpath \$out/bin/{vim,gvim}
";
dontStrip =1;
buildInputs = [ncurses pkgconfig]
++ [ gtk libX11 libXext libSM libXpm libXt libXaw libXau libXmu ];
meta = {
description = "The most popular clone of the VI editor";
homepage = "www.vim.org";
};
# most interpreters aren't tested yet.. (see python for example how to do it)
flags = {}
// edf { name = "darwin"; } #Disable Darwin (Mac OS X) support.
// edf { name = "xsmp"; } #Disable XSMP session management
// edf { name = "xsmp_interact"; } #Disable XSMP interaction
// edf { name = "mzscheme"; } #Include MzScheme interpreter.
// edf { name = "perl"; feat = "perlinterp"; enable = { buildInputs = [perl]; };} #Include Perl interpreter.
// edf { name = "python"; feat = "pythoninterp"; enable = { buildInputs = [python]; }; } #Include Python interpreter.
// edf { name = "tcl"; enable = { buildInputs = [tcl]; }; } #Include Tcl interpreter.
// edf { name = "ruby"; feat = "rubyinterp"; enable = { buildInputs = [ruby]; };} #Include Ruby interpreter.
// edf { name = "cscope"; } #Include cscope interface.
// edf { name = "workshop"; } #Include Sun Visual Workshop support.
// edf { name = "netbeans"; } #Disable NetBeans integration support.
// edf { name = "sniff"; } #Include Sniff interface.
// edf { name = "multibyte"; } #Include multibyte editing support.
// edf { name = "hangulinput"; } #Include Hangul input support.
# // edf { name = "xim"; enable = { buildInputs = [xim]; }; } #Include XIM input support.
// edf { name = "fontset"; } #Include X fontset output support.
// edf { name = "acl"; } #Don't check for ACL support.
// edf { name = "gpm"; } #Don't use gpm (Linux mouse daemon).
// edf { name = "nls"; } #Don't support NLS (gettext()).
;
cfg = {
pythonSupport = true;
};
#--enable-gui=OPTS X11 GUI default=auto OPTS=auto/no/gtk/gtk2/gnome/gnome2/motif/athena/neXtaw/photon/carbon
/*
// edf "gtk_check" "gtk_check" { } #If auto-select GUI, check for GTK default=yes
// edf "gtk2_check" "gtk2_check" { } #If GTK GUI, check for GTK+ 2 default=yes
// edf "gnome_check" "gnome_check" { } #If GTK GUI, check for GNOME default=no
// edf "motif_check" "motif_check" { } #If auto-select GUI, check for Motif default=yes
// edf "athena_check" "athena_check" { } #If auto-select GUI, check for Athena default=yes
// edf "nextaw_check" "nextaw_check" { } #If auto-select GUI, check for neXtaw default=yes
// edf "carbon_check" "carbon_check" { } #If auto-select GUI, check for Carbon default=yes
// edf "gtktest" "gtktest" { } #Do not try to compile and run a test GTK program
*/
postInstall = "
rpath=`patchelf --print-rpath \$out/bin/vim`;
for i in $\buildInputs; do
echo adding \$i/lib
rpath=\$rpath:\$i/lib
done
echo \$buildInputs
echo \$rpath
patchelf --set-rpath \$rpath \$out/bin/{vim,gvim}
";
dontStrip =1;
meta = {
description = "The most popular clone of the VI editor";
homepage = "www.vim.org";
};
}

View file

@ -1,61 +1,58 @@
args: with args;
let inherit (args.composableDerivation) composableDerivation edf; in
composableDerivation {
composableDerivation {} {
initial = {
name = "sox-14.0.0";
name = "sox-14.0.0";
src = args.fetchurl {
url = mirror://sourceforge/sox/sox-14.0.0.tar.gz;
sha256 = "1l7v04nlvb96y0w9crvm6nq8g50yxp3bkv6nb1c205s982inlalc";
};
flags =
# are these options of interest? We'll see
#--disable-fftw disable usage of FFTW
#--enable-debug enable debugging
#--disable-cpu-clip disable tricky cpu specific clipper
edf { name = "alsa"; enable = { buildInputs = [alsaLib]; }; }
// edf { name = "libao"; enable = { buildInputs = [libao]; }; }
// edf { name = "oss"; }
// edf { name = "sun_audio"; };
# These options should be autodetected by the configure script
/*
--without-sndfile Don't try to use libsndfile
--without-ogg Don't try to use Ogg Vorbis
--without-flac Don't try to use FLAC
--without-ffmpeg Don't try to use ffmpeg
--without-mad Don't try to use MAD (MP3 Audio Decoder)
--without-lame Don't try to use LAME (LAME Ain't an MP3 Encoder)
--without-amr-wb Don't try to use amr-wb
--without-amr-nb Don't try to use amr-nb
--without-samplerate Don't try to use libsamplerate (aka Secret Rabbit
Code)
--without-ladspa Don't try to use LADSPA
--with-ladspa-path Default search path for LADSPA plugins
*/
cfg = {
ossSupport = false;
sun_audioSupport = false;
src = args.fetchurl {
url = mirror://sourceforge/sox/sox-14.0.0.tar.gz;
sha256 = "1l7v04nlvb96y0w9crvm6nq8g50yxp3bkv6nb1c205s982inlalc";
};
optionals = [ "libsndfile" "libogg" "flac" "ffmpeg" "libmad" "lame"
/* "amr-wb" "amr-nb" */
"libsamplerate" /* "ladspa" */ ];
flags =
# are these options of interest? We'll see
#--disable-fftw disable usage of FFTW
#--enable-debug enable debugging
#--disable-cpu-clip disable tricky cpu specific clipper
edf { name = "alsa"; enable = { buildInputs = [alsaLib]; }; }
// edf { name = "libao"; enable = { buildInputs = [libao]; }; }
// edf { name = "oss"; }
// edf { name = "sun_audio"; };
# These options should be autodetected by the configure script
/*
--without-sndfile Don't try to use libsndfile
--without-ogg Don't try to use Ogg Vorbis
--without-flac Don't try to use FLAC
--without-ffmpeg Don't try to use ffmpeg
--without-mad Don't try to use MAD (MP3 Audio Decoder)
--without-lame Don't try to use LAME (LAME Ain't an MP3 Encoder)
--without-amr-wb Don't try to use amr-wb
--without-amr-nb Don't try to use amr-nb
--without-samplerate Don't try to use libsamplerate (aka Secret Rabbit
Code)
--without-ladspa Don't try to use LADSPA
--with-ladspa-path Default search path for LADSPA plugins
*/
meta = {
description = "Sample Rate Converter for audio";
homepage = http://www.mega-nerd.com/SRC/index.html;
# you can choose one of the following licenses:
license = [ "GPL"
{ url=http://www.mega-nerd.com/SRC/libsamplerate-cul.pdf;
name="libsamplerate Commercial Use License";
} ];
};
cfg = {
ossSupport = false;
sun_audioSupport = false;
};
optionals = [ "libsndfile" "libogg" "flac" "ffmpeg" "libmad" "lame"
/* "amr-wb" "amr-nb" */
"libsamplerate" /* "ladspa" */ ];
meta = {
description = "Sample Rate Converter for audio";
homepage = http://www.mega-nerd.com/SRC/index.html;
# you can choose one of the following licenses:
license = [ "GPL"
{ url=http://www.mega-nerd.com/SRC/libsamplerate-cul.pdf;
name="libsamplerate Commercial Use License";
} ];
};
}

View file

@ -3,43 +3,41 @@ let edf = composableDerivation.edf;
optionIncLib = name : attr : " -D${name}_INCLUDE_DIR=${__getAttr attr args}/incclude"
+ " -D${name}_LIBRARY=${__getAttr attr args}/lib "; # lib 64?
in
composableDerivation.composableDerivation {
initial = {
composableDerivation.composableDerivation {} {
buildInputs = [ gdal cmake qt flex bison proj geos x11 sqlite gsl];
cfgOption = [
# without this option it can't find sqlite libs yet (missing symbols..) (TODO)
"-DWITH_INTERNAL_SQLITE3=TRUE"
];
buildInputs = [ gdal cmake qt flex bison proj geos x11 sqlite gsl];
cfgOption = [
# without this option it can't find sqlite libs yet (missing symbols..) (TODO)
"-DWITH_INTERNAL_SQLITE3=TRUE"
];
name = "qgis-${version}";
# src = args.fetchsvn { url=https://svn.qgis.org/repos/qgis/trunk/qgis;
# md5="ac0560e0a2d4e6258c8639f1e9b56df3"; rev="7704"; };
src = fetchurl {
url = "http://download.osgeo.org/qgis/src/qgis_${version}.tar.gz";
sha256 = "17vqbld4wr9jyn1s5n0bkpaminsgc2dzcgdfk8ic168xydnwa7b3";
};
meta = {
description = "user friendly Open Source Geographic Information System";
homepage = http://www.qgis.org;
# you can choose one of the following licenses:
license = [ "GPL" ];
};
phases = "unpackPhase buildPhase installPhase";
buildPhase = ''pwd;echo XXXXXXXXX; VERBOSE=1 cmake -DCMAKE_INSTALL_PREFIX=$out ''${cfgOption} ..'';
postUnpack = ''
export CMAKE_SYSTEM_LIBRARY_PATH=
for i in $buildInputs $propagatedBuildInputs; do
CMAKE_SYSTEM_LIBRARY_PATH=$i/lib:$CMAKE_SYSTEM_LIBRARY_PATH
done
'';
#configurePhase="./autogen.sh --prefix=\$out --with-gdal=\$gdal/bin/gdal-config --with-qtdir=\$qt";
# buildPhases="unpackPhase buildPhase";
name = "qgis-${version}";
# src = args.fetchsvn { url=https://svn.qgis.org/repos/qgis/trunk/qgis;
# md5="ac0560e0a2d4e6258c8639f1e9b56df3"; rev="7704"; };
src = fetchurl {
url = "http://download.osgeo.org/qgis/src/qgis_${version}.tar.gz";
sha256 = "17vqbld4wr9jyn1s5n0bkpaminsgc2dzcgdfk8ic168xydnwa7b3";
};
meta = {
description = "user friendly Open Source Geographic Information System";
homepage = http://www.qgis.org;
# you can choose one of the following licenses:
license = [ "GPL" ];
};
phases = "unpackPhase buildPhase installPhase";
buildPhase = ''pwd;echo XXXXXXXXX; VERBOSE=1 cmake -DCMAKE_INSTALL_PREFIX=$out ''${cfgOption} ..'';
postUnpack = ''
export CMAKE_SYSTEM_LIBRARY_PATH=
for i in $buildInputs $propagatedBuildInputs; do
CMAKE_SYSTEM_LIBRARY_PATH=$i/lib:$CMAKE_SYSTEM_LIBRARY_PATH
done
'';
#configurePhase="./autogen.sh --prefix=\$out --with-gdal=\$gdal/bin/gdal-config --with-qtdir=\$qt";
# buildPhases="unpackPhase buildPhase";
}

View file

@ -1,56 +1,54 @@
args: with args;
let edf = composableDerivation.edf;
wwf = composableDerivation.wwf; in
composableDerivation.composableDerivation {
initial = {
composableDerivation.composableDerivation {} {
name="hugs98";
name="hugs98";
src = fetchurl {
url = http://cvs.haskell.org/Hugs/downloads/2006-09/hugs98-Sep2006.tar.gz;
sha256 = "3cf4d27673564cffe691bd14032369f646233f14daf2bc37c6c6df9f062b46b6";
};
#encode all character I/O using the byte encoding
#determined by the locale in effect at that time. To
#require that the UTF-8 encoding is always used, give
#the --enable-char-encoding=utf8 option.
#[default=autodetect]
postUnpack = ''
find -type f | xargs sed -i 's@/bin/cp@cp@';
'';
configurePhase="./configure --prefix=\$out --enable-char-encoding=utf8 $configureFlags";
flags =
edf { name = "pathCanonicalization"; feat="path-canonicalization"; }
// edf { name="timer"; } # enable evaluation timing (for benchmarking Hugs)
// edf { name="profiling"; }# enable heap profiler
// edf { name="stackDumps"; feat="stack-dummps"; } # enable stack dump on stack overflow
// edf { name="largeBanner"; feat="large-banner"; } # disable multiline startup banner
// edf { name="internal-prims"; } # experimental primitives to access Hugs's innards
// edf { name="debug"; } # include C debugging information (for debugging Hugs)
// edf { name="tag"; } # runtime tag checking (for debugging Hugs)
// edf { name="lint"; } # enable "lint" flags (for debugging Hugs)
// edf { name="only98"; } # build Hugs to understand Haskell 98 only
// edf { name="ffi"; }
#--with-nmake produce a Makefile compatible with nmake
#--with-gui build Hugs for Windows GUI (Borland C++ only)
// wwf { name="pthreads"; } # build Hugs using POSIX threads C library
;
cfg = {
largeBannerSupport = true; # seems to be default
char = { cfgOption = "--enable-char-encoding"; blocks = "utf8"; };
utf8 = { cfgOption = "--enable-char-encoding=utf8"; blocks="char"; };
src = fetchurl {
url = http://cvs.haskell.org/Hugs/downloads/2006-09/hugs98-Sep2006.tar.gz;
sha256 = "3cf4d27673564cffe691bd14032369f646233f14daf2bc37c6c6df9f062b46b6";
};
#encode all character I/O using the byte encoding
#determined by the locale in effect at that time. To
#require that the UTF-8 encoding is always used, give
#the --enable-char-encoding=utf8 option.
#[default=autodetect]
postUnpack = ''
find -type f | xargs sed -i 's@/bin/cp@cp@';
'';
configurePhase="./configure --prefix=\$out --enable-char-encoding=utf8 $configureFlags";
flags =
edf { name = "pathCanonicalization"; feat="path-canonicalization"; }
// edf { name="timer"; } # enable evaluation timing (for benchmarking Hugs)
// edf { name="profiling"; }# enable heap profiler
// edf { name="stackDumps"; feat="stack-dummps"; } # enable stack dump on stack overflow
// edf { name="largeBanner"; feat="large-banner"; } # disable multiline startup banner
// edf { name="internal-prims"; } # experimental primitives to access Hugs's innards
// edf { name="debug"; } # include C debugging information (for debugging Hugs)
// edf { name="tag"; } # runtime tag checking (for debugging Hugs)
// edf { name="lint"; } # enable "lint" flags (for debugging Hugs)
// edf { name="only98"; } # build Hugs to understand Haskell 98 only
// edf { name="ffi"; }
#--with-nmake produce a Makefile compatible with nmake
#--with-gui build Hugs for Windows GUI (Borland C++ only)
// wwf { name="pthreads"; } # build Hugs using POSIX threads C library
;
cfg = {
largeBannerSupport = true; # seems to be default
char = { cfgOption = "--enable-char-encoding"; blocks = "utf8"; };
utf8 = { cfgOption = "--enable-char-encoding=utf8"; blocks="char"; };
};
meta = {
license = "as-is"; # gentoo is calling it this way..
description = "The HUGS98 Haskell <interpreter";
homepage = http://www.haskell.org/hugs;
};
meta = {
license = "as-is"; # gentoo is calling it this way..
description = "The HUGS98 Haskell <interpreter";
homepage = http://www.haskell.org/hugs;
};
}

View file

@ -1,38 +1,36 @@
args: with args;
let edf = composableDerivation.edf; in
composableDerivation.composableDerivation {
initial = {
name = "roadsend-2.9.3";
buildInputs = [bigloo curl];
flags = edf { name = "pcre"; }
// edf { name = "fcgi"; enable = { inherit fcgi; }; }
// edf { name = "xml"; enable = { buildInputs = [ libxml2 ]; }; }
// edf { name = "mysql"; enable = { buildInputs = [ mysql ]; }; }
// edf { name = "odbc"; };
# // edf { name = "gtk"} }
# // edf { name = "gtk2", enable = { buildInputs = [ mysql ]; } }
cfg = {
pcreSupport = true;
fcgiSupport = true;
xmlSupport = true;
mysqlSupport = true;
};
src = args.fetchurl {
url = "http://code.roadsend.com/snaps/roadsend-php-20081210.tar.bz2";
sha256 = "0yhpiik0dyayd964wvn2k0cq7b1gihx1k3qx343r2l7lla4mapsx";
};
composableDerivation.composableDerivation {} {
name = "roadsend-2.9.3";
buildInputs = [bigloo curl];
flags = edf { name = "pcre"; }
// edf { name = "fcgi"; enable = { inherit fcgi; }; }
// edf { name = "xml"; enable = { buildInputs = [ libxml2 ]; }; }
// edf { name = "mysql"; enable = { buildInputs = [ mysql ]; }; }
// edf { name = "odbc"; };
# // edf { name = "gtk"} }
# // edf { name = "gtk2", enable = { buildInputs = [ mysql ]; } }
cfg = {
pcreSupport = true;
fcgiSupport = true;
xmlSupport = true;
mysqlSupport = true;
};
src = args.fetchurl {
url = "http://code.roadsend.com/snaps/roadsend-php-20081210.tar.bz2";
sha256 = "0yhpiik0dyayd964wvn2k0cq7b1gihx1k3qx343r2l7lla4mapsx";
};
# http://code.roadsend.com/snaps/roadsend-php-testsuite-2.9.7.tar.bz2";
# sha256 = "0rf0g9r0prla7daq3aif24d7dx0j01i35hcm8h5bbg3gvpfim463";
# tell pcc where to find the fastcgi library
postInstall = " sed -e \"s=(ldflags fastcgi.*=(ldflags -l fastcgi -L \$fcgi)=\" -i \$out/etc/pcc.conf ";
meta = {
description = "roadsend PHP -> C compiler";
homepage = http://www.roadsend.com;
# you can choose one of the following licenses:
# Runtime license is LPGL 2.1
license = ["GPL2"];
};
# tell pcc where to find the fastcgi library
postInstall = " sed -e \"s=(ldflags fastcgi.*=(ldflags -l fastcgi -L \$fcgi)=\" -i \$out/etc/pcc.conf ";
meta = {
description = "roadsend PHP -> C compiler";
homepage = http://www.roadsend.com;
# you can choose one of the following licenses:
# Runtime license is LPGL 2.1
license = ["GPL2"];
};
}

View file

@ -4,177 +4,174 @@ args: with args;
let inherit (args.composableDerivation) composableDerivation edf wwf; in
composableDerivation {
initial = fixed : {
composableDerivation {} ( fixed : {
name = "php_configurable-${version}";
name = "php_configurable-${version}";
buildInputs = ["flex" "bison" "pkgconfig"];
buildInputs = ["flex" "bison" "pkgconfig"];
flags = {
flags = {
# much left to do here...
# SAPI modules:
apxs2 = {
configureFlags = ["--with-apxs2=${apacheHttpd}/bin/apxs"];
buildInputs = [apacheHttpd];
};
# Extensions
curl = {
configureFlags = ["--with-curl=${args.curl}" "--with-curlwrappers"];
buildInputs = [curl];
};
zlib = {
configureFlags = ["--with-zlib=${args.zlib}"];
buildInputs = [zlib];
};
libxml2 = {
configureFlags = ["--with-libxml-dir=${libxml2}"];
buildInputs = [ libxml2 ];
};
postgresql = {
configureFlags = ["--with-pgsql=${postgresql}"];
buildInputs = [ postgresql ];
};
mysql = {
configureFlags = ["--with-mysql=${mysql}"];
buildInputs = [ mysql ];
};
mysqli = {
configureFlags = ["--with-mysqli=${mysql}/bin/mysql_config"];
buildInputs = [ mysql];
};
mysqli_embedded = {
configureFlags = ["--enable-embedded-mysqli"];
depends = "mysqli";
assertion = fixed.mysqliSupport;
};
pdo_mysql = {
configureFlags = ["--with-pdo-mysql=${mysql}"];
buildInputs = [ mysql ];
};
bcmath = {
configureFlags = ["--enable-bcmath"];
};
gd = {
configureFlags = ["--with-gd=${args.gd}"];
buildInputs = [gd];
};
sockets = {
configureFlags = ["--enable-sockets"];
};
openssl = {
configureFlags = ["--with-openssl=${args.openssl}"];
buildInputs = ["openssl"];
};
mbstring = {
configureFlags = ["--enable-mbstring"];
};
/*
Building xdebug withing php to be able to add the parameters to the ini file.. Ther should be a better way
meta = {
description = "debugging support for PHP";
homepage = http://xdebug.org;
license = "based on the PHP license - as is";
};
*/
xdebug = {
buildInputs = [ automake autoconf ];
xdebug_src = args.fetchurl {
name = "xdebug-2.0.2.tar.gz";
url = "http://xdebug.org/link.php?url=xdebug202";
sha256 = "1h0bxvf8krr203fmk1k7izrrr81gz537xmd3pqh4vslwdlbhrvic";
};
};
# SAPI modules:
apxs2 = {
configureFlags = ["--with-apxs2=${apacheHttpd}/bin/apxs"];
buildInputs = [apacheHttpd];
};
cfg = {
mysqlSupport = true;
mysqliSupport = true;
pdo_mysqlSupport = true;
libxml2Support = true;
apxs2Support = true;
bcmathSupport = true;
socketsSupport = true;
curlSupport = true;
gettextSupport = true;
postgresqlSupport = true;
zlibSupport = true;
opnesslSupport = true;
xdebugSupport = true;
mbstringSupport = true;
gdSupport = true;
# Extensions
curl = {
configureFlags = ["--with-curl=${args.curl}" "--with-curlwrappers"];
buildInputs = [curl];
};
zlib = {
configureFlags = ["--with-zlib=${args.zlib}"];
buildInputs = [zlib];
};
libxml2 = {
configureFlags = ["--with-libxml-dir=${libxml2}"];
buildInputs = [ libxml2 ];
};
postgresql = {
configureFlags = ["--with-pgsql=${postgresql}"];
buildInputs = [ postgresql ];
};
mysql = {
configureFlags = ["--with-mysql=${mysql}"];
buildInputs = [ mysql ];
};
mysqli = {
configureFlags = ["--with-mysqli=${mysql}/bin/mysql_config"];
buildInputs = [ mysql];
};
mysqli_embedded = {
configureFlags = ["--enable-embedded-mysqli"];
depends = "mysqli";
assertion = fixed.mysqliSupport;
};
pdo_mysql = {
configureFlags = ["--with-pdo-mysql=${mysql}"];
buildInputs = [ mysql ];
};
bcmath = {
configureFlags = ["--enable-bcmath"];
};
gd = {
configureFlags = ["--with-gd=${args.gd}"];
buildInputs = [gd];
};
sockets = {
configureFlags = ["--enable-sockets"];
};
openssl = {
configureFlags = ["--with-openssl=${args.openssl}"];
buildInputs = ["openssl"];
};
mbstring = {
configureFlags = ["--enable-mbstring"];
};
/*
Building xdebug withing php to be able to add the parameters to the ini file.. Ther should be a better way
meta = {
description = "debugging support for PHP";
homepage = http://xdebug.org;
license = "based on the PHP license - as is";
};
*/
xdebug = {
buildInputs = [ automake autoconf ];
xdebug_src = args.fetchurl {
name = "xdebug-2.0.2.tar.gz";
url = "http://xdebug.org/link.php?url=xdebug202";
sha256 = "1h0bxvf8krr203fmk1k7izrrr81gz537xmd3pqh4vslwdlbhrvic";
};
};
};
configurePhase = ''
iniFile=$out/etc/$name.ini
[[ -z "$libxml2" ]] || export PATH=$PATH:$libxml2/bin
./configure --with-config-file-scan-dir=/etc --with-config-file-path=$out/etc --prefix=$out $configureFlags
echo configurePhase end
'';
installPhase = ''
unset installPhase; installPhase;
cp php.ini-recommended $iniFile
# Now Let's build xdebug if flag has been given
# TODO I think there are better paths than the given below
if [ -n $flag_set_xdebug ]; then
PATH=$PATH:$out/bin
tar xfz $xdebug_src;
cd xdebug*
phpize
./configure --prefix=$out
make
ensureDir $out/lib; cp modules/xdebug.so $out/lib
cat >> $out/etc/php.ini << EOF
zend_extension="$out/lib/xdebug.so"
zend_extension_ts="$out/lib/xdebug.so"
zend_extension_debug="$out/lib/xdebug.so"
xdebug.remote_enable=true
xdebug.remote_host=127.0.0.1
xdebug.remote_port=9000
xdebug.remote_handler=dbgp
xdebug.profiler_enable=0
xdebug.profiler_output_dir="/tmp/xdebug"
xdebug.remote_mode=req
max_execution_time = 300
date.timezone = UTC
EOF
fi
'';
src = args.fetchurl {
url = "http://nl.php.net/get/php-${version}.tar.bz2/from/this/mirror";
md5 = "7380ffecebd95c6edb317ef861229ebd";
name = "php-${version}.tar.bz2";
};
meta = {
description = "The PHP language runtime engine";
homepage = http://www.php.net/;
license = "PHP-3";
};
patches = [./fix.patch];
cfg = {
mysqlSupport = true;
mysqliSupport = true;
pdo_mysqlSupport = true;
libxml2Support = true;
apxs2Support = true;
bcmathSupport = true;
socketsSupport = true;
curlSupport = true;
gettextSupport = true;
postgresqlSupport = true;
zlibSupport = true;
opnesslSupport = true;
xdebugSupport = true;
mbstringSupport = true;
gdSupport = true;
};
}
configurePhase = ''
iniFile=$out/etc/$name.ini
[[ -z "$libxml2" ]] || export PATH=$PATH:$libxml2/bin
./configure --with-config-file-scan-dir=/etc --with-config-file-path=$out/etc --prefix=$out $configureFlags
echo configurePhase end
'';
installPhase = ''
unset installPhase; installPhase;
cp php.ini-recommended $iniFile
# Now Let's build xdebug if flag has been given
# TODO I think there are better paths than the given below
if [ -n $flag_set_xdebug ]; then
PATH=$PATH:$out/bin
tar xfz $xdebug_src;
cd xdebug*
phpize
./configure --prefix=$out
make
ensureDir $out/lib; cp modules/xdebug.so $out/lib
cat >> $out/etc/php.ini << EOF
zend_extension="$out/lib/xdebug.so"
zend_extension_ts="$out/lib/xdebug.so"
zend_extension_debug="$out/lib/xdebug.so"
xdebug.remote_enable=true
xdebug.remote_host=127.0.0.1
xdebug.remote_port=9000
xdebug.remote_handler=dbgp
xdebug.profiler_enable=0
xdebug.profiler_output_dir="/tmp/xdebug"
xdebug.remote_mode=req
max_execution_time = 300
date.timezone = UTC
EOF
fi
'';
src = args.fetchurl {
url = "http://nl.php.net/get/php-${version}.tar.bz2/from/this/mirror";
md5 = "7380ffecebd95c6edb317ef861229ebd";
name = "php-${version}.tar.bz2";
};
meta = {
description = "The PHP language runtime engine";
homepage = http://www.php.net/;
license = "PHP-3";
};
patches = [./fix.patch];
})

View file

@ -129,7 +129,7 @@ in
### python libraries:
wxPythonBaseFun = (t.pythonLibSetup.merge (a :
let inherit (a.fixed) wxGTK version; in
let inherit (a.fixed.passthru) wxGTK; inherit (a.fixed) version; in
{
buildInputs = [p.pkgconfig wxGTK (wxGTK.gtk)];
setupFlags=["WXPORT=gtk2 NO_HEADERS=1 BUILD_GLCANVAS=0 BUILD_OGL=0 UNICODE=1"];
@ -196,7 +196,7 @@ in
# If you install dozens of python packages this might be bloat.
# So I think the overhead of installing these packages into the same store path should be prefered.
pygtkBaseFun = (t.pythonLibStub.merge (a :
let inherit (a.fixed) glib gtk; in lib.mergeAttrsByFuncDefaults [
let inherit (a.fixed.passthru) glib gtk; in lib.mergeAttrsByFuncDefaults [
{
unpackPhase = "true";
configurePhase = "true";
@ -312,7 +312,7 @@ in
pygtk212 = t.pygtkBaseFun.merge (a : {
version = "2.12.1";
name = "pygobject-${a.fixed.pygobjectVersion}-and-pygtk-${a.fixed.version}";
name = "pygobject-${a.fixed.passthru.pygobjectVersion}-and-pygtk-${a.fixed.version}";
pygtkSrc = fetchurl {
url = http://ftp.acc.umu.se/pub/GNOME/sources/pygtk/2.12/pygtk-2.12.1.tar.bz2;
sha256 = "0gg13xgr7y9sppw8bdys042928nc66czn74g60333c4my95ys021";

View file

@ -1,47 +1,45 @@
args: with args;
let inherit (args.composableDerivation) composableDerivation edf; in
composableDerivation {
initial = {
composableDerivation {} {
name = "fltk-2.0.x-r6483";
name = "fltk-2.0.x-r6483";
src = args.fetchurl {
url = ftp://ftp.easysw.com/pub/fltk/snapshots/fltk-2.0.x-r6483.tar.bz2;
sha256 = "1n8b53r5p0zb4sbvr6pj8aasls4zjwksv1sdc3r3pzb20fikp5jb";
};
src = args.fetchurl {
url = ftp://ftp.easysw.com/pub/fltk/snapshots/fltk-2.0.x-r6483.tar.bz2;
sha256 = "1n8b53r5p0zb4sbvr6pj8aasls4zjwksv1sdc3r3pzb20fikp5jb";
};
propagatedBuildInputs=[x11 inputproto libXi freeglut];
propagatedBuildInputs=[x11 inputproto libXi freeglut];
buildInputs = [ args.pkgconfig ];
buildInputs = [ args.pkgconfig ];
flags =
# this could be tidied up (?).. eg why does it require freeglut without glSupport?
edf { name = "cygwin"; } # use the CygWin libraries default=no
// edf { name = "debug"; } # turn on debugging default=no
// edf { name = "gl"; enable = { buildInputs = [ mesa ]; }; } # turn on OpenGL support default=yes
// edf { name = "shared"; } # turn on shared libraries default=no
// edf { name = "threads"; } # enable multi-threading support
// edf { name = "quartz"; enable = { buildInputs = "quartz"; }; } # don't konw yet what quartz is # use Quartz instead of Quickdraw (default=no)
// edf { name = "largefile"; } # omit support for large files
// edf { name = "localjpeg"; disable = { buildInputs = [libjpeg]; }; } # use local JPEG library, default=auto
// edf { name = "localzlib"; disable = { buildInputs = [zlib]; }; } # use local ZLIB library, default=auto
// edf { name = "localpng"; disable = { buildInputs = [libpng]; }; } # use local PNG library, default=auto
// edf { name = "xinerama"; enable = { buildInputs = [libXinerama]; }; } # turn on Xinerama support default=no
// edf { name = "xft"; enable = { buildInputs=[libXft]; }; } # turn on Xft support default=no
// edf { name = "xdbe"; }; # turn on Xdbe support default=no
cfg = {
largefileSupport = true; # is default
glSupport = true; # doesn't build without it. Why?
localjpegSupport = false;
localzlibSupport = false;
localpngSupport = false;
sharedSupport = true;
threadsSupport = true;
};
flags =
# this could be tidied up (?).. eg why does it require freeglut without glSupport?
edf { name = "cygwin"; } # use the CygWin libraries default=no
// edf { name = "debug"; } # turn on debugging default=no
// edf { name = "gl"; enable = { buildInputs = [ mesa ]; }; } # turn on OpenGL support default=yes
// edf { name = "shared"; } # turn on shared libraries default=no
// edf { name = "threads"; } # enable multi-threading support
// edf { name = "quartz"; enable = { buildInputs = "quartz"; }; } # don't konw yet what quartz is # use Quartz instead of Quickdraw (default=no)
// edf { name = "largefile"; } # omit support for large files
// edf { name = "localjpeg"; disable = { buildInputs = [libjpeg]; }; } # use local JPEG library, default=auto
// edf { name = "localzlib"; disable = { buildInputs = [zlib]; }; } # use local ZLIB library, default=auto
// edf { name = "localpng"; disable = { buildInputs = [libpng]; }; } # use local PNG library, default=auto
// edf { name = "xinerama"; enable = { buildInputs = [libXinerama]; }; } # turn on Xinerama support default=no
// edf { name = "xft"; enable = { buildInputs=[libXft]; }; } # turn on Xft support default=no
// edf { name = "xdbe"; }; # turn on Xdbe support default=no
cfg = {
largefileSupport = true; # is default
glSupport = true; # doesn't build without it. Why?
localjpegSupport = false;
localzlibSupport = false;
localpngSupport = false;
sharedSupport = true;
threadsSupport = true;
};
meta = {
description = "a C++ cross platform lightweight gui library binding";
homepage = http://www.fltk.org;
};
meta = {
description = "a C++ cross platform lightweight gui library binding";
homepage = http://www.fltk.org;
};
}

View file

@ -1,38 +1,35 @@
args: with args;
let inherit (args.composableDerivation) composableDerivation edf; in
composableDerivation {
composableDerivation {} {
initial = {
buildInputs = [ "which" ]; # which is needed for the autogen.sh
buildInputs = [ "which" ]; # which is needed for the autogen.sh
flags =
# python and ruby untested
edf { name = "python"; enable = { buildInputs = [ python ]; }; };
# (if args.use_svn then ["libtool" "autoconf" "automake" "swig"] else [])
# // edf { name = "ruby"; enable = { buildInputs = [ ruby ]; };}
flags =
# python and ruby untested
edf { name = "python"; enable = { buildInputs = [ python ]; }; };
# (if args.use_svn then ["libtool" "autoconf" "automake" "swig"] else [])
# // edf { name = "ruby"; enable = { buildInputs = [ ruby ]; };}
name = "geos-3.0.3";
name = "geos-3.0.3";
src = fetchurl {
url = http://download.osgeo.org/geos/geos-3.0.3.tar.bz2;
sha256 = "1pxk20jcbyidp3bvip1vdf8wfw2wvh8pcn810qkf1y3zfnki0c7k";
};
src = fetchurl {
url = http://download.osgeo.org/geos/geos-3.0.3.tar.bz2;
sha256 = "1pxk20jcbyidp3bvip1vdf8wfw2wvh8pcn810qkf1y3zfnki0c7k";
};
# for development version. can be removed ?
#configurePhase = "
# [ -f configure ] || \\
# LIBTOOLIZE=libtoolize ./autogen.sh
# [>{ automake --add-missing; autoconf; }
# unset configurePhase; configurePhase
#";
# for development version. can be removed ?
#configurePhase = "
# [ -f configure ] || \\
# LIBTOOLIZE=libtoolize ./autogen.sh
# [>{ automake --add-missing; autoconf; }
# unset configurePhase; configurePhase
#";
meta = {
description = "C++ port of the Java Topology Suite (JTS)"
+ "- all the OpenGIS \"Simple Features for SQL\" spatial predicate functions and spatial operators,"
+ " as well as specific JTS topology functions such as IsValid";
homepage = http://geos.refractions.net/;
license = "GPL";
};
meta = {
description = "C++ port of the Java Topology Suite (JTS)"
+ "- all the OpenGIS \"Simple Features for SQL\" spatial predicate functions and spatial operators,"
+ " as well as specific JTS topology functions such as IsValid";
homepage = http://geos.refractions.net/;
license = "GPL";
};
}

View file

@ -1,29 +1,28 @@
args: with args;
let inherit (args.composableDerivation) composableDerivation edf; in
composableDerivation {
initial = {
flags = { }
# TODO! implement flags
# I want to get kino and cinelerra working. That's why I don't spend more time on this now
// edf { name = "libtool_lock"; } #avoid locking (might break parallel builds)
// edf { name ="asm"; } #disable use of architecture specific assembly code
// edf { name ="sdl"; } #enable use of SDL for display
// edf { name ="gtk"; } #disable use of gtk for display
// edf { name ="xv"; } #disable use of XVideo extension for display
// edf { name ="gprof"; }; #enable compiler options for gprof profiling
composableDerivation {} {
name = "libdv-1.0.0";
flags = { }
# TODO! implement flags
# I want to get kino and cinelerra working. That's why I don't spend more time on this now
// edf { name = "libtool_lock"; } #avoid locking (might break parallel builds)
// edf { name ="asm"; } #disable use of architecture specific assembly code
// edf { name ="sdl"; } #enable use of SDL for display
// edf { name ="gtk"; } #disable use of gtk for display
// edf { name ="xv"; } #disable use of XVideo extension for display
// edf { name ="gprof"; }; #enable compiler options for gprof profiling
src = args.fetchurl {
url = mirror://sourceforge/libdv/libdv-1.0.0.tar.gz;
sha256 = "1fl96f2xh2slkv1i1ix7kqk576a0ak1d33cylm0mbhm96d0761d3";
};
name = "libdv-1.0.0";
meta = {
description = "software decoder for DV format video, as defined by the IEC 61834 and SMPTE 314M standards";
homepage = http://sourceforge.net/projects/libdv/;
# you can choose one of the following licenses:
license = [];
};
src = args.fetchurl {
url = mirror://sourceforge/libdv/libdv-1.0.0.tar.gz;
sha256 = "1fl96f2xh2slkv1i1ix7kqk576a0ak1d33cylm0mbhm96d0761d3";
};
meta = {
description = "software decoder for DV format video, as defined by the IEC 61834 and SMPTE 314M standards";
homepage = http://sourceforge.net/projects/libdv/;
# you can choose one of the following licenses:
license = [];
};
}

View file

@ -5,40 +5,38 @@ let
name = "ragel-${version}";
in
composableDerivation.composableDerivation {
initial = rec {
inherit name;
src = fetchurl {
url = "http://www.complang.org/ragel/${name}.tar.gz";
sha256 = "018cedc8a68be85cda330fc53d0bb8a1ca6ad39b1cf790eed0311e7baa5a2520";
};
composableDerivation.composableDerivation {} {
inherit name;
src = fetchurl {
url = "http://www.complang.org/ragel/${name}.tar.gz";
sha256 = "018cedc8a68be85cda330fc53d0bb8a1ca6ad39b1cf790eed0311e7baa5a2520";
};
flags = {
doc = {
# require fig2dev & pdflatex (see README)
buildInputs = [transfig texLive];
# use post* because default values of buildPhase is empty.
postBuild = ''
pushd doc
make
popd
'';
postInstall = ''
pushd doc
make install
popd
'';
};
};
cfg = {
docSupport = false;
};
meta = {
homepage = http://www.complang.org/ragel;
description = "State machine compiler";
license = "GPL-2";
flags = {
doc = {
# require fig2dev & pdflatex (see README)
buildInputs = [transfig texLive];
# use post* because default values of buildPhase is empty.
postBuild = ''
pushd doc
make
popd
'';
postInstall = ''
pushd doc
make install
popd
'';
};
};
cfg = {
docSupport = false;
};
meta = {
homepage = http://www.complang.org/ragel;
description = "State machine compiler";
license = "GPL-2";
};
}

View file

@ -12,14 +12,12 @@ let inherit (lib) nv nvs; in
# TODO add newer example using new syntax (kernel derivation proposal -> mailinglist)
composableDerivation = {
mkDerivation ? pkgs.stdenv.mkDerivation,
# initial set of arguments to be passed to stdenv.mkDerivation passing prepareDerivationArgs by default
initial ? {},
# list of functions to be applied before defaultOverridableDelayableArgs removes removeAttrs names
# prepareDerivationArgs handles derivation configurations
# applyPreTidy ? [ lib.prepareDerivationArgs ],
applyPreTidy ? [],
applyPreTidy ? [ lib.prepareDerivationArgs ],
# consider adding addtional elements by derivation.merge { removeAttrs = ["elem"]; };
removeAttrs ? ["cfg" "flags"]
}: (lib.defaultOverridableDelayableArgs ( a: mkDerivation a)

View file

@ -1,37 +1,35 @@
args: with args;
let edf = composableDerivation.edf;
name = "gxemul-0.4.6"; in
composableDerivation.composableDerivation {
composableDerivation.composableDerivation {} {
initial = {
inherit name;
flags = {
doc = { installPhase = "ensureDir \$out/share/${name}; cp -r doc \$out/share/${name};"; implies = "man"; };
demos = { installPhase = "ensureDir \$out/share/${name}; cp -r demos \$out/share/${name};"; };
man = { installPhase = "cp -r ./man \$out/;";};
};
cfg = {
docSupport = true;
demosSupport = true;
manSupport = true;
};
installPhase = "ensureDir \$out/bin; cp gxemul \$out/bin;";
src = fetchurl {
url = http://gavare.se/gxemul/src/gxemul-0.4.6.tar.gz;
sha256 = "0hf3gi6hfd2qr5090zimfiddcjgank2q6m7dfsr81wwpxfbhb2z3";
};
configurePhase="./configure";
meta = {
license = "BSD";
description = "A Machine Emulator, Mainly emulates MIPS, but supports other CPU type";
homepage = http://gavare.se/gxemul/;
};
mergeAttrBy = { installPhase = a : b : "${a}\n${b}"; };
inherit name;
flags = {
doc = { installPhase = "ensureDir \$out/share/${name}; cp -r doc \$out/share/${name};"; implies = "man"; };
demos = { installPhase = "ensureDir \$out/share/${name}; cp -r demos \$out/share/${name};"; };
man = { installPhase = "cp -r ./man \$out/;";};
};
cfg = {
docSupport = true;
demosSupport = true;
manSupport = true;
};
installPhase = "ensureDir \$out/bin; cp gxemul \$out/bin;";
src = fetchurl {
url = http://gavare.se/gxemul/src/gxemul-0.4.6.tar.gz;
sha256 = "0hf3gi6hfd2qr5090zimfiddcjgank2q6m7dfsr81wwpxfbhb2z3";
};
configurePhase="./configure";
meta = {
license = "BSD";
description = "A Machine Emulator, Mainly emulates MIPS, but supports other CPU type";
homepage = http://gavare.se/gxemul/;
};
mergeAttrBy = { installPhase = a : b : "${a}\n${b}"; };
}

View file

@ -2,52 +2,50 @@
# still much to test but it compiles now
args:
let inherit (args.composableDerivation) composableDerivation edf; in
composableDerivation {
initial = {
buildInputs = [ args.pkgconfig ];
flags =
# FIXME: tidy up
edf { name = "posix-shm"; } #use POSIX shm API
// edf { name = "timestamps"; } # allow clients to use the JACK timestamp API
// edf { name = "capabilities"; } #use libcap to gain realtime scheduling priviledges
// edf { name = "oldtrans"; } #remove old transport interfaces
// edf { name = "stripped-jackd"; } #strip jack before computing its md5 sum
// edf { name = "portaudio"; } #ignore PortAudio driver
// edf { name = "coreaudio"; } #ignore CoreAudio driver
// edf { name = "oss"; } #ignore OSS driver
// edf { name = "freebob"; } #ignore FreeBob driver
// edf { name = "alsa"; enable = { buildInputs=[args.alsaLib]; }; };
composableDerivation {} {
buildInputs = [ args.pkgconfig ];
flags =
# FIXME: tidy up
edf { name = "posix-shm"; } #use POSIX shm API
// edf { name = "timestamps"; } # allow clients to use the JACK timestamp API
// edf { name = "capabilities"; } #use libcap to gain realtime scheduling priviledges
// edf { name = "oldtrans"; } #remove old transport interfaces
// edf { name = "stripped-jackd"; } #strip jack before computing its md5 sum
// edf { name = "portaudio"; } #ignore PortAudio driver
// edf { name = "coreaudio"; } #ignore CoreAudio driver
// edf { name = "oss"; } #ignore OSS driver
// edf { name = "freebob"; } #ignore FreeBob driver
// edf { name = "alsa"; enable = { buildInputs=[args.alsaLib]; }; };
# altivec seems to be for mac only ?
# altivec = { configureFlags = ["--enable-altivec"]; }; #enable Altivec support (default=auto)
# altivec seems to be for mac only ?
# altivec = { configureFlags = ["--enable-altivec"]; }; #enable Altivec support (default=auto)
# keeping default values by now:
# optimization_by_compiler = { configureFlags = ["--enable-optimization-by-compiler"]; }; [>use compiler (NOT processor) capabilities to determine optimization flags
# optimization_by_cpu = { configureFlags = ["--enable-optimization-by-cpu"]; }; [>use processor capabilities to determine optimization flags
# keeping default values by now:
# optimization_by_compiler = { configureFlags = ["--enable-optimization-by-compiler"]; }; [>use compiler (NOT processor) capabilities to determine optimization flags
# optimization_by_cpu = { configureFlags = ["--enable-optimization-by-cpu"]; }; [>use processor capabilities to determine optimization flags
# I think the default is ok
# mmx = edf { name = "mmx"; }; #enable MMX support (default=auto)
#sse = edf { name = "sse"; }; #enable SSE support (default=auto)
#dynsimd = edf { name = "dynsimd"; }; #enable dynamic SIMD selection (default=no)
#optimize = edf { name = "optimize"; }; #ask the compiler for its best optimizations
#resize = edf { name = "resize"; }; #enable buffer resizing feature
#ensure_mlock = edf { name = "ensure-mlock"; }; #fail if unable to lock memory
#debug = edf { name = "debug"; }; #enable debugging messages in jackd and libjack
#preemption_check = edf { name = "preemption-check"; }; #
cfg = {
posix_shmSupport = true;
timestampsSupport = true;
alsaSupport = true;
};
name = "jack-0.103.0";
src = args.fetchurl {
url = "mirror://sourceforge/jackit/jack-audio-connection-kit-0.109.2.tar.gz";
sha256 = "1m5z8dzalqspsa63pkcgyns0cvh0kqwhb9g1ivcwvnz0bc7ag9r7";
};
meta = {
description = "jack audio connection kit";
homepage = "http://jackaudio.org";
license = "GPL";
};
};
# I think the default is ok
# mmx = edf { name = "mmx"; }; #enable MMX support (default=auto)
#sse = edf { name = "sse"; }; #enable SSE support (default=auto)
#dynsimd = edf { name = "dynsimd"; }; #enable dynamic SIMD selection (default=no)
#optimize = edf { name = "optimize"; }; #ask the compiler for its best optimizations
#resize = edf { name = "resize"; }; #enable buffer resizing feature
#ensure_mlock = edf { name = "ensure-mlock"; }; #fail if unable to lock memory
#debug = edf { name = "debug"; }; #enable debugging messages in jackd and libjack
#preemption_check = edf { name = "preemption-check"; }; #
cfg = {
posix_shmSupport = true;
timestampsSupport = true;
alsaSupport = true;
};
name = "jack-0.103.0";
src = args.fetchurl {
url = "mirror://sourceforge/jackit/jack-audio-connection-kit-0.109.2.tar.gz";
sha256 = "1m5z8dzalqspsa63pkcgyns0cvh0kqwhb9g1ivcwvnz0bc7ag9r7";
};
meta = {
description = "jack audio connection kit";
homepage = "http://jackaudio.org";
license = "GPL";
};
}

View file

@ -8946,7 +8946,7 @@ let
};
# doesn't compile yet - in case someone else want's to continue ..
qgis = composedArgsAndFun (selectVersion ../applications/misc/qgis "0.11.0") {
qgis = (selectVersion ../applications/misc/qgis "0.11.0") {
inherit composableDerivation fetchsvn stdenv flex lib
ncurses fetchurl perl cmake gdal geos proj x11
gsl libpng zlib bison