* Merged from the trunk. Let's see how well this works with

Subversion 1.5...

svn path=/nixpkgs/branches/stdenv-updates/; revision=13601
This commit is contained in:
Eelco Dolstra
2008-12-10 09:59:21 +00:00
331 changed files with 14072 additions and 1377 deletions
+12
View File
@@ -215,4 +215,16 @@
url = http://mawercer.de/~nix/repos/kdesupport_telepathy_qt.tar.gz;
sha256 = "022599182ff629662bbd01acdea6ead9aec64b3e73e8da3eb58ef857803035f2";
};
cinelerra = args: with args; fetchurl { # Tue Oct 14 12:36:49 UTC 2008
url = "http://mawercer.de/~nix/repos/cinelerra-9f9adf2ad5472886d5bc43a05c6aa8077cabd967.tar.gz";
sha256 = "1e84ff59dcd7a3c80343eb9be302f822e510c95398fd1a6c8f2e4b163fd51e45";
};
hg2git = args: with args; fetchurl { # Sat Oct 18 21:02:44 UTC 2008
url = "http://mawercer.de/~nix/repos/hg2git-4c77e121b739d2aac8a23352503763343823f870.tar.gz";
sha256 = "22354d36937bf9e5d3e3dfc1a3ef9e3f2bc183b8e114a23958a2b10f83abc97e";
};
octave = args: with args; fetchurl { # Mon Dec 1 23:23:49 UTC 2008
url = "http://mawercer.de/~nix/repos/octave-03b414516dd8.tar.gz";
sha256 = "28ca0be1407954e746909241bda95c5bf0a04f611e73100c1e3967ddc249c519";
};
}
+22 -14
View File
@@ -1,31 +1,39 @@
{stdenv, fetchurl, zlib, libjpeg, libpng, libtiff, pam}:
{stdenv, fetchurl, zlib, libjpeg, libpng, libtiff, pam, openssl}:
stdenv.mkDerivation {
name = "cups-1.2.10";
name = "cups-1.3.9";
src = fetchurl {
url = http://ftp.funet.fi/pub/mirrors/ftp.easysw.com/pub/cups/1.2.10/cups-1.2.10-source.tar.bz2;
sha256 = "0dmvjl513kqbb7m4m0b22wa4xvn9avdyihr7fi3n2ly5as93n6v0";
url = http://ftp.easysw.com/pub/cups/1.3.9/cups-1.3.9-source.tar.bz2;
sha256 = "0svb5alfsj9bfraw0yb9i92g5hc9h36m9xfipvi1pxdwp2s6m19q";
};
buildInputs = [zlib libjpeg libpng libtiff pam];
buildInputs = [zlib libjpeg libpng libtiff pam openssl];
preConfigure = "
configureFlags=\"--localstatedir=/var\"
";
preConfigure = ''
configureFlags="--localstatedir=/var"
'';
preBuild = "
preBuild = ''
makeFlagsArray=(INITDIR=$out/etc/rc.d)
";
'';
# Awful hack: CUPS' `make install' wants to write in /var, but it
# can't. So redirect it with a BUILDROOT (=DESTDIR).
preInstall = "
preInstall = ''
installFlagsArray=(BUILDROOT=$out/destdir)
";
'';
postInstall = "
# !!! Ideally, we wouldn't have Samba as a dependency of CUPS.
# Rather, the backend directory should be treated as configuration
# data generated in some other Nix expression in NixOS.
postInstall = ''
mv $out/destdir/$out/* $out
rm -rf $out/destdir
";
''; # */
meta = {
homepage = http://www.cups.org/;
description = "A standards-based printing system for UNIX";
};
}
+3 -3
View File
@@ -8,11 +8,11 @@ assert stdenv.isLinux;
let lib = import ../../../lib/default.nix; in
stdenv.mkDerivation {
name = "wine-1.1.2";
name = "wine-1.1.9";
src = fetchurl {
url = mirror://sourceforge/wine/wine-1.1.2.tar.bz2;
sha256 = "1d136dmfnjmghm5hkmcfc635s3xgrhdwvrw0gr3gymwhzrxa1y8y";
url = mirror://sourceforge/wine/wine-1.1.9.tar.bz2;
sha256 = "1jhy7l5q1jri529n5070f4wjigbw4dr7d4jgdc10v6hxfmlp1mzy";
};
buildInputs = [
+1 -1
View File
@@ -4,7 +4,7 @@ stdenv.mkDerivation {
name = "linuxwacom-0.7.2";
builder = ./builder.sh;
src = fetchurl {
url = http://nix.cs.uu.nl/dist/tarballs/linuxwacom-0.7.2.tar.bz2;
url = http://nixos.org/tarballs/linuxwacom-0.7.2.tar.bz2;
md5 = "3f6290101d5712a24097243ca9f092ed";
};
buildInputs = [libX11 libXi];
+79
View File
@@ -0,0 +1,79 @@
# idea: provide nix environment for your developement actions
# experimental
/*
# example:
# add postgresql to environment and create ctags (tagfiles can be extracted from TAG_FILES)
# add this to your ~/.nixpkgs/config.nix
{
packageOverrides = pkgs : with pkgs; with sourceAndTags;
let simple = { name, buildInputs ? [], cTags ? [], extraCmds ? ""}:
pkgs.myEnvFun {
inherit name;
buildInputs = buildInputs
++ map (x : sourceWithTagsDerivation ( (addCTaggingInfo x ).passthru.sourceWithTags ) ) cTags;
extraCmds = ''
${extraCmds}
HOME=${builtins.getEnv "HOME"}
. ~/.bashrc
'';
};
in rec {
nixEnv = simple {
name = "nix";
buildInputs = [ libtool stdenv perl curl bzip2 openssl aterm242fixes db45 autoconf automake zlib ];
cTags = [ aterm242fixes];
};
[...]
};
}
Put this into your .bashrc
loadEnv(){ . "${HOME}/.nix-profile/dev-envs/${1}" }
then nix-env -iA ...nixEnv
and
$ loadEnv postgresql
*/
{ mkDerivation, substituteAll, pkgs } : { stdenv ? pkgs.stdenv, name, buildInputs ? [], cTags ? [], extraCmds ? ""} :
mkDerivation {
buildInputs = [ ] ++ buildInputs ;
name = "env-${name}";
phases = "buildPhase";
setupNew = substituteAll {
src = ../../stdenv/generic/setup-new.sh;
preHook="";
postHook="";
initialPath= (import ../../stdenv/common-path.nix) { inherit pkgs; };
gcc = stdenv.gcc;
};
buildPhase = ''
set -x
mkdir -p "$out/dev-envs" "$out/nix-support"
s="$out/nix-support/setup-new-modified"
cp "$setupNew" "$s"
# shut some warning up.., do not use set -e
sed -e 's@set -e@@' \
-e 's@assertEnvExists\s\+NIX_STORE@:@' \
-e 's@trap.*@@' \
-i "$s"
cat >> "$out/dev-envs/''${name/env-/}" << EOF
buildInputs="$buildInputs"
# the setup-new script wants to write some data to a temp file.. so just let it do that and tidy up afterwards
tmp="\$("${pkgs.coreutils}/bin/mktemp" -d)"
NIX_BUILD_TOP="\$tmp"
phases=
# only do all the setup stuff in nix-support/*
set +e
source "$s"
rm -fr "\$tmp"
${extraCmds}
export PATH
echo $name loaded
EOF
'';
}
+2 -2
View File
@@ -2,12 +2,12 @@
stdenv.mkDerivation rec {
pname = "ntfs-3g";
version = "1.2812";
version = "1.5012";
name = "${pname}-${version}";
src = fetchurl {
url = "${meta.homepage}/${name}.tgz";
sha256 = "1jvgv53glrxk883bixl2dl1fjydmprmw189yn6jqwjvfhnx6g1zy";
sha256 = "e79102fdb5948f209d25432f8f5127965877fe47bed68b9270b23fc1d187735a";
};
preConfigure = ''
+17
View File
@@ -0,0 +1,17 @@
{stdenv, fetchurl}:
stdenv.mkDerivation {
name = "pgf-2.00";
src = fetchurl {
url = mirror://sourceforge/pgf/pgf-2.00.tar.gz;
sha256 = "0j57niag4jb2k0iyrvjsannxljc3vkx0iag7zd35ilhiy4dh6264";
};
buildPhase = "true";
installPhase = "
ensureDir $out/share/texmf-nix
cp -prd * $out/share/texmf-nix
";
}
+20 -2
View File
@@ -1,9 +1,11 @@
args: with args;
rec {
name = "texlive-pgf-2007";
src = fetchurl {
url = mirror://debian/pool/main/p/pgf/pgf_1.18.orig.tar.gz;
sha256 = "1fk0m3rqsgdrxp2n6mbhh92819g1133w67lbgk66pqgspbrnk6h2";
url = "mirror://sourceforge/pgf/pgf-2.00.tar.gz";
sha256 = "0j57niag4jb2k0iyrvjsannxljc3vkx0iag7zd35ilhiy4dh6264";
};
propagatedBuildInputs = [texLiveLatexXColor texLive];
@@ -16,5 +18,21 @@ rec {
meta = {
description = "Extra components for TeXLive: graphics package";
longDescription = ''
PGF is a macro package for creating graphics. It is platform-
and format-independent and works together with the most
important TeX backend drivers, including pdftex and dvips. It
comes with a user-friedly syntax layer called TikZ.
Its usage is similar to pstricks and the standard picture
environment. PGF works with plain (pdf-)TeX, (pdf-)LaTeX, and
ConTeXt. Unlike pstricks , it can produce either PostScript or
PDF output.
'';
license = [ "GPLv2" "LPPLv1.3c" ];
homepage = http://tug.ctan.org/tex-archive/graphics/pgf/;
};
}