Merge remote-tracking branch 'origin/master' into stdenv-updates.

This commit is contained in:
Peter Simons 2013-03-28 14:02:56 +01:00
commit fdbe2878f0
77 changed files with 1516 additions and 2284 deletions

View file

@ -1,32 +1,23 @@
# Evaluate `release.nix' like Hydra would (i.e. call each job
# attribute with the expected `system' argument). Too bad
# nix-instantiate can't to do this.
# Evaluate `release.nix' like Hydra would. Too bad nix-instantiate
# can't to do this.
with import ../../pkgs/lib;
let
trace = if builtins.getEnv "VERBOSE" == "1" then builtins.trace else (x: y: y);
rel = removeAttrs (import ../../pkgs/top-level/release.nix) [ "tarball" "xbursttools" ];
seqList = xs: res: fold (x: xs: seq x xs) res xs;
strictAttrs = as: seqList (attrValues as) as;
maybe = as: let y = builtins.tryEval (strictAttrs as); in if y.success then y.value else builtins.trace "FAIL" {};
call = attrs: flip mapAttrs attrs
(n: v: trace n (
if builtins.isFunction v then maybe (v { system = "x86_64-linux"; })
else if builtins.isAttrs v then call v
else null
));
rel = removeAttrs (import ../../pkgs/top-level/release.nix { }) [ "tarball" "unstable" "xbursttools" ];
# Add the recurseForDerivations attribute to ensure that
# nix-instantiate recurses into nested attribute sets.
recurse = attrs:
if isDerivation attrs
then attrs
else { recurseForDerivations = true; } // mapAttrs (n: v: recurse v) attrs;
if (builtins.tryEval attrs).success then
if isDerivation attrs
then
if (builtins.tryEval attrs.outPath).success
then attrs
else { }
else { recurseForDerivations = true; } // mapAttrs (n: v: recurse v) attrs
else { };
in recurse (call rel)
in recurse rel

View file

@ -1,7 +1,5 @@
#! /bin/sh -e
export PERL5LIB=/nix/var/nix/profiles/per-user/eelco/cpan-generator/lib/perl5/site_perl
name="$1"
[ -n "$name" ] || { echo "no name"; exit 1; }

View file

@ -13,6 +13,10 @@ stdenv.mkDerivation rec {
patches = ./linuxsampler_lv2_sfz_fix.diff;
# It fails to compile without this option. I'm not sure what the bug
# is, but everything works OK for me (goibhniu).
configureFlags = [ "--disable-nptl-bug-check" ];
preConfigure = ''
sed -e 's/which/type -P/g' -i scripts/generate_parser.sh
make -f Makefile.cvs

View file

@ -8,12 +8,12 @@
assert stdenv ? glibc;
stdenv.mkDerivation rec {
version = "1.1.2";
version = "1.1.4";
name = "darktable-${version}";
src = fetchurl {
url = "mirror://sourceforge/darktable/darktable-${version}.tar.gz";
sha256 = "225ebf1bd2ca4cf06aa609f2eda55cb0894ae69bdf4db25fd97b2503c28e1765";
url = "mirror://sourceforge/darktable/darktable/1.1/darktable-${version}.tar.xz";
sha256 = "1bzcxh8zm0xxrpifkkksv9k4xagjrzlam00yja9v9cbjlvawfszv";
};
buildInputs =

View file

@ -4,11 +4,11 @@
, python, pygtk, libart_lgpl, libexif, gettext, xlibs }:
stdenv.mkDerivation rec {
name = "gimp-2.8.2";
name = "gimp-2.8.4";
src = fetchurl {
url = "ftp://ftp.gimp.org/pub/gimp/v2.8/${name}.tar.bz2";
md5 = "b542138820ca3a41cbd63fc331907955";
md5 = "392592e8755d046317878d226145900f";
};
buildInputs =

View file

@ -0,0 +1,34 @@
{ stdenv, fetchurl, boost, cmake, ilmbase, libjpeg, libpng, libtiff
, opencolorio, openexr, unzip
}:
stdenv.mkDerivation rec {
name = "oiio-${version}";
version = "1.1.8";
src = fetchurl {
url = "https://github.com/OpenImageIO/oiio/archive/Release-${version}.zip";
sha256 = "08a6qhplzs8kianqb1gjgrndg81h3il5531jn9g6i4940b1xispg";
};
buildInputs = [
boost cmake ilmbase libjpeg libpng libtiff opencolorio openexr unzip
];
configurePhase = "";
buildPhase = ''
make ILMBASE_HOME=${ilmbase} OPENEXR_HOME=${openexr} USE_PYTHON=0 \
INSTALLDIR=$out dist_dir=
'';
installPhase = ":";
meta = with stdenv.lib; {
homepage = http://www.openimageio.org;
description = "A library and tools for reading and writing images";
license = licenses.bsd3;
maintainers = [ maintainers.goibhniu ];
platforms = platforms.linux;
};
}

View file

@ -1,12 +1,12 @@
{ fetchurl, stdenv, openssl, db4, boost, zlib, miniupnpc, qt4 }:
stdenv.mkDerivation rec {
version = "0.6.3";
version = "0.8.1";
name = "bitcoin-${version}";
src = fetchurl {
url = "mirror://sourceforge/bitcoin/${name}-linux.tar.gz";
sha256 = "722d4209ff4a951a9eb5cae26a33ad62770fdcb5dfb5acf0b5c6a8f6f3a8a0ef";
sha256 = "161arfkzpya5anh6vh5i9ydvwqpia7bpqgz83p2kd97iklx04zvd";
};
buildInputs = [ openssl db4 boost zlib miniupnpc qt4 ];

View file

@ -1,26 +1,37 @@
{ stdenv, fetchurl, SDL, cmake, gettext, ilmbase, libXi, libjpeg,
libpng, libsamplerate, libtiff, mesa, openal, openexr, openjpeg,
python, zlib, boost }:
{ stdenv, fetchurl, SDL, boost, cmake, ffmpeg, gettext, glew
, ilmbase, jackaudio, libXi, libjpeg, libpng, libsamplerate, libsndfile
, libtiff, mesa, openal, opencolorio, openexr, openimageio, openjpeg, python
, zlib
}:
stdenv.mkDerivation rec {
name = "blender-2.63a";
name = "blender-2.66a";
src = fetchurl {
url = "http://download.blender.org/source/${name}.tar.gz";
sha256 = "c479b1abfe5fd8a1a5d04b8d21fdbc0fc960d7855b24785b888c09792bca4c1a";
sha256 = "0wj8x9xk5irvsjc3rm7wzml1j47xcdpdpy84kidafk02biskcqcb";
};
buildInputs = [ cmake mesa gettext python libjpeg libpng zlib openal
SDL openexr libsamplerate libXi libtiff ilmbase openjpeg boost ];
buildInputs = [
SDL boost cmake ffmpeg gettext glew ilmbase jackaudio libXi
libjpeg libpng libsamplerate libsndfile libtiff mesa openal
opencolorio openexr openimageio openjpeg python zlib
];
cmakeFlags = [
"-DOPENEXR_INC=${openexr}/include/OpenEXR"
"-DWITH_OPENCOLLADA=OFF"
"-DWITH_CODEC_FFMPEG=ON"
"-DWITH_CODEC_SNDFILE=ON"
"-DWITH_JACK=ON"
"-DWITH_INSTALL_PORTABLE=OFF"
"-DPYTHON_LIBRARY=python${python.majorVersion}m"
"-DPYTHON_LIBPATH=${python}/lib"
"-DPYTHON_INCLUDE_DIR=${python}/include/python${python.majorVersion}m"
];
NIX_CFLAGS_COMPILE = "-I${ilmbase}/include/OpenEXR -I${python}/include/${python.libPrefix}";
NIX_CFLAGS_COMPILE = "-I${ilmbase}/include/OpenEXR -I${python}/include/${python.libPrefix}m";
enableParallelBuilding = true;

View file

@ -24,6 +24,7 @@ stdenv.mkDerivation rec {
meta = {
description = "Tool to share the mouse keyboard and the clipboard between computers";
homepage = http://synergy-foss.org;
license = "GPL";
license = stdenv.lib.licenses.gpl2;
platforms = stdenv.lib.platforms.all;
};
}

View file

@ -1,19 +0,0 @@
From 222f1e980ab84ffd3a21001feaf06dd537570a1a Mon Sep 17 00:00:00 2001
From: Ian Farmer <ian@ianfarmer.net>
Date: Sat, 16 Feb 2013 09:38:10 -0800
Subject: [PATCH] Update Chromium dev channel version to 26.0.1410.5.
This version requires a patch for compatibility with versions
of glibc that support older kernel versions.
--- a/content/common/sandbox_seccomp_bpf_linux.cc 2013-02-15 23:26:06.000000000 -0800
+++ b/content/common/sandbox_seccomp_bpf_linux.cc 2013-02-15 23:26:24.000000000 -0800
@@ -1313,7 +1313,7 @@
return Sandbox::Cond(0, ErrorCode::TP_32BIT, ErrorCode::OP_EQUAL,
CLONE_VM | CLONE_FS | CLONE_FILES | CLONE_SIGHAND |
CLONE_THREAD | CLONE_SYSVSEM | CLONE_SETTLS |
- CLONE_PARENT_SETTID | CLONE_CHILD_CLEARTID,
+ CLONE_PARENT_SETTID | CLONE_CHILD_CLEARTID | CLONE_DETACHED,
ErrorCode(ErrorCode::ERR_ALLOWED),
Sandbox::Trap(ReportCloneFailure, NULL));
} else {

View file

@ -21,6 +21,9 @@
# dependencies for >= v26
, speechd, libXdamage
# dependencies for >= v27
, libXtst
# optional dependencies
, libgcrypt ? null # gnomeSupport || cupsSupport
@ -88,7 +91,9 @@ let
];
pre26 = versionOlder sourceInfo.version "26.0.0.0";
pre27 = versionOlder sourceInfo.version "27.0.0.0";
post25 = !pre26;
post26 = !pre27;
in stdenv.mkDerivation rec {
name = "${packageName}-${version}";
@ -118,16 +123,16 @@ in stdenv.mkDerivation rec {
++ optional cupsSupport libgcrypt
++ optional pulseSupport pulseaudio
++ optional pre26 libvpx
++ optionals post25 [ speechd libXdamage ];
++ optionals post25 [ speechd libXdamage ]
++ optional post26 libXtst;
opensslPatches = optional useOpenSSL openssl.patches;
prePatch = "patchShebangs .";
patches = optional cupsSupport ./cups_allow_deprecated.patch
++ optional pulseSupport ./pulseaudio_array_bounds.patch
++ optional post25 ./clone_detached.patch
++ [ ./glibc-2.16-use-siginfo_t.patch ];
++ optional (pulseSupport && pre27) ./pulseaudio_array_bounds.patch
++ optional pre27 ./glibc-2.16-use-siginfo_t.patch;
postPatch = ''
sed -i -r -e 's/-f(stack-protector)(-all)?/-fno-\1/' build/common.gypi

View file

@ -1,18 +1,18 @@
# This file is autogenerated from update.sh in the same directory.
{
dev = {
version = "26.0.1410.28";
url = "http://commondatastorage.googleapis.com/chromium-browser-official/chromium-26.0.1410.28.tar.xz";
sha256 = "1g32xyh06xsqkli0g83flqr1qvx2yxb7vaqshf9wcyqgkyzvy7il";
version = "27.0.1448.0";
url = "http://commondatastorage.googleapis.com/chromium-browser-official/chromium-27.0.1448.0.tar.xz";
sha256 = "03sarp8drf9a6likk4m73lgk2i4nhqqri8ja9h8qiglqc4sf2hn0";
};
beta = {
version = "26.0.1410.28";
url = "http://commondatastorage.googleapis.com/chromium-browser-official/chromium-26.0.1410.28.tar.xz";
sha256 = "1g32xyh06xsqkli0g83flqr1qvx2yxb7vaqshf9wcyqgkyzvy7il";
version = "26.0.1410.43";
url = "http://commondatastorage.googleapis.com/chromium-browser-official/chromium-26.0.1410.43.tar.xz";
sha256 = "110x9cs88gqvqya71bqspx2s7ph6ca0als7sp5fbf911cj0iy0ii";
};
stable = {
version = "25.0.1364.152";
url = "http://commondatastorage.googleapis.com/chromium-browser-official/chromium-25.0.1364.152.tar.bz2";
sha256 = "1v8zpqk3q21d5hars1clss75n187hlg4zxbr68jj1ysmqclzbni8";
version = "26.0.1410.43";
url = "http://commondatastorage.googleapis.com/chromium-browser-official/chromium-26.0.1410.43.tar.xz";
sha256 = "110x9cs88gqvqya71bqspx2s7ph6ca0als7sp5fbf911cj0iy0ii";
};
}

View file

@ -62,7 +62,7 @@ then
sha256="$(nix_getattr "$output_file" "$channel.sha256")";
fi;
sha_insert "$version" "$sha256"
sha_insert "$version" "$sha256";
echo "$sha256";
}
else
@ -80,10 +80,11 @@ get_channel_exprs()
version="${chline##*,}";
# XXX: Remove case after version 26 is stable:
case "${version%%.*}" in
26) url="${bucket_url%/}/chromium-$version-lite.tar.xz";;
*) url="${bucket_url%/}/chromium-$version.tar.bz2";;
esac;
if [ "${version%%.*}" -ge 26 ]; then
url="${bucket_url%/}/chromium-$version.tar.xz";
else
url="${bucket_url%/}/chromium-$version.tar.bz2";
fi;
echo -n "Checking if sha256 of version $version is cached..." >&2;
if sha256="$(sha_lookup "$version")";

View file

@ -16,13 +16,19 @@
# replace these libraries with the appropriate ones in
# nixpkgs.
# note: there is a i686 version available as well
assert stdenv.system == "x86_64-linux";
let
arch = if stdenv.system == "x86_64-linux" then "x86_64"
else if stdenv.system == "i686-linux" then "x86"
else throw "Dropbox client for: ${stdenv.system} not supported!";
interpreter = if stdenv.system == "x86_64-linux" then "ld-linux-x86-64.so.2"
else if stdenv.system == "i686-linux" then "ld-linux.so.2"
else throw "Dropbox client for: ${stdenv.system} not supported!";
version = "1.4.21";
sha256 = "94073842f4a81feee80bca590e1df73fc3cab47ba879407ceba2de48f30d84e2";
sha256 = if stdenv.system == "x86_64-linux" then "94073842f4a81feee80bca590e1df73fc3cab47ba879407ceba2de48f30d84e2"
else if stdenv.system == "i686-linux" then "121v92m20l73xjmzng3vmcp4zsp9mlbcfia73f5py5y74kndb2ap"
else throw "Dropbox client for: ${stdenv.system} not supported!";
# relative location where the dropbox libraries are stored
appdir = "opt/dropbox";
@ -52,8 +58,8 @@ in stdenv.mkDerivation {
name = "dropbox-${version}.tar.gz";
# using version-specific URL so if the version is no longer available,
# build will fail without having to finish downloading first
# url = "http://www.dropbox.com/download?plat=lnx.x86_64";
url = "http://dl-web.dropbox.com/u/17/dropbox-lnx.x86_64-${version}.tar.gz";
# url = "http://www.dropbox.com/download?plat=lnx.${arch}";
url = "http://dl-web.dropbox.com/u/17/dropbox-lnx.${arch}-${version}.tar.gz";
inherit sha256;
};
@ -69,10 +75,10 @@ in stdenv.mkDerivation {
ensureDir "$out/bin"
ln -s "$out/${appdir}/dropbox" "$out/bin/dropbox"
patchelf --set-interpreter ${stdenv.glibc}/lib/ld-linux-x86-64.so.2 \
patchelf --set-interpreter ${stdenv.glibc}/lib/${interpreter} \
"$out/${appdir}/dropbox"
RPATH=${ldpath}:${gcc.gcc}/lib64:$out/${appdir}
RPATH=${ldpath}:${gcc.gcc}/lib:$out/${appdir}
echo "updating rpaths to: $RPATH"
find "$out/${appdir}" -type f -a -perm +0100 \
-print -exec patchelf --force-rpath --set-rpath "$RPATH" {} \;

View file

@ -4,28 +4,20 @@ let
start_script = ''
#!/bin/sh
cd "$out/lib/hol_light"
exec ${ocaml}/bin/ocaml -I "$(ocamlfind query camlp5)" -init make.ml
exec ${ocaml}/bin/ocaml -I "camlp5 -where" -init make.ml
'';
in
stdenv.mkDerivation {
name = "hol_light-20130124";
name = "hol_light-20130324";
src = fetchsvn {
url = http://hol-light.googlecode.com/svn/trunk;
rev = "155";
sha256 = "057223kcv7y2vcnyzvrygvdafn6mb7ycr1m5rj3fsrwz0yl8dqnr";
rev = "157";
sha256 = "0d0pbnkw2gb11dn30ggfl91lhdxv86kd1fyiqn170w08n0gi805f";
};
buildInputs = [ ocaml findlib camlp5 ];
buildPhase = ''
make pa_j.ml
ocamlc -c \
-pp "camlp5r pa_lexer.cmo pa_extend.cmo q_MLast.cmo" \
-I "$(ocamlfind query camlp5)" \
pa_j.ml
'';
installPhase = ''
mkdir -p "$out/lib/hol_light" "$out/bin"
cp -a . $out/lib/hol_light
@ -45,6 +37,6 @@ can extend it with new theorems and inference rules without compromising its
soundness.
'';
homepage = http://www.cl.cam.ac.uk/~jrh13/hol-light/;
license = "BSD";
license = stdenv.lib.licenses.bsd2;
};
}

View file

@ -22,6 +22,7 @@ fi;
# server's certificate. This is perfectly safe: we don't care
# whether the server is being spoofed --- only the cryptographic
# hash of the output matters.
echo 'p' | svn export -r "$rev" "$url" $out
echo 'p' | svn export ${ignoreExternals:+--ignore-externals} \
-r "$rev" "$url" "$out"
stopNest

View file

@ -1,5 +1,5 @@
{stdenv, subversion, sshSupport ? false, openssh ? null}:
{url, rev ? "HEAD", md5 ? "", sha256 ? ""}:
{url, rev ? "HEAD", md5 ? "", sha256 ? "", ignoreExternals ? false}:
let
repoName = with stdenv.lib;
@ -29,7 +29,7 @@ stdenv.mkDerivation {
outputHashMode = "recursive";
outputHash = if sha256 == "" then md5 else sha256;
inherit url rev sshSupport openssh;
inherit url rev sshSupport openssh ignoreExternals;
impureEnvVars = [
# We borrow these environment variables from the caller to allow

View file

@ -39,4 +39,14 @@ rec {
{ inherit stdenv vmTools checkinstall;
} // args);
aggregate =
{ name, members, meta ? { } }:
pkgs.runCommand name
{ inherit members meta;
_hydraAggregate = true;
}
''
echo $members > $out
'';
}

View file

@ -1,11 +1,11 @@
{ stdenv, fetchurl }:
stdenv.mkDerivation rec {
name = "man-pages-3.48";
name = "man-pages-3.50";
src = fetchurl {
url = "mirror://kernel/linux/docs/man-pages/${name}.tar.xz";
sha256 = "6944cc3ad5131abab01c6703e63672b2e44be52737cdb1144f6ddaebb7f7d682";
sha256 = "04fn7zzi75y79rkg57nkync3hf14m8708iw33s03f0x8ays6fajz";
};
preBuild =

View file

@ -1,4 +1,5 @@
{ stdenv, fetchurl, buildPythonPackage, minicom, avrdude, arduino_core, avrgcclibc }:
{ stdenv, fetchurl, buildPythonPackage, pythonPackages, minicom
, avrdude, arduino_core, avrgcclibc }:
buildPythonPackage {
name = "ino-0.3.4";
@ -10,15 +11,20 @@ buildPythonPackage {
};
# TODO: add avrgcclibc, it must be rebuild with C++ support
propagatedBuildInputs = [ minicom avrdude arduino_core ];
propagatedBuildInputs =
[ arduino_core avrdude minicom pythonPackages.configobj
pythonPackages.jinja2 pythonPackages.pyserial ];
patchPhase = ''
echo "Patching Arduino distribution path"
sed -i 's@/usr/local/share/arduino@${arduino_core}/share/arduino@g' ino/environment.py
sed -i 's@/usr/local/share/arduino@${arduino_core}/share/arduino@g' \
ino/environment.py
sed -i -e 's@argparse@@' -e 's@ordereddict@@' \
requirements.txt
sed -i -e 's@from ordereddict@from collections@' \
ino/environment.py ino/utils.py
'';
doCheck = false;
meta = {
description = "Command line toolkit for working with Arduino hardware";
homepage = http://inotool.org/;

View file

@ -5,12 +5,22 @@ stdenv.mkDerivation {
buildInputs = [ocaml zlib neko];
src = fetchsvn {
srcs = fetchsvn {
url = "http://haxe.googlecode.com/svn/tags/v2-10";
sha256 = "dbd3c655e4136eb68a165ef83b96bfc1f0f2eb9ec8729603b19bcd717a61a679";
sha256 = "0vwdlj0vmmf97bg6cish7yah36aca2q599vwzbr1m0jpjbvindkh";
ignoreExternals = true;
};
ocamllibs = fetchsvn {
url = "http://ocamllibs.googlecode.com/svn/trunk";
sha256 = "143s320xn2xalm0lnw46h1fvy48qg7my3j8cf66f0wwzv2fisr1q";
rev = 256;
ignoreExternals = true;
};
prePatch = ''
cp -r "$ocamllibs" libs
chmod -R u+w libs
sed -i -e 's|com.class_path <- \[|&"'"$out/lib/haxe/std/"'";|' main.ml
'';

View file

@ -2,11 +2,11 @@
stdenv.mkDerivation rec {
name = "neko-${version}";
version = "1.8.2";
version = "2.0.0";
src = fetchurl {
url = "http://nekovm.org/_media/neko-${version}.tar.gz";
sha256 = "099727w6dk689z3pcgbhsqjl74zzrh82a5vb2abxynamcqxcgz1w";
sha256 = "1lcm1ahbklfpd5lnqjwmvyj2vr85jbq57hszk5jgq0x6yx6p3927";
};
prePatch = with stdenv.lib; let

View file

@ -16,8 +16,8 @@ assert readline != null -> ncurses != null;
with stdenv.lib;
let
majorVersion = "3.2";
version = "${majorVersion}.3";
majorVersion = "3.3";
version = "${majorVersion}.1rc1";
buildInputs = filter (p: p != null) [
zlib bzip2 gdbm sqlite db4 readline ncurses openssl tcl tk libX11 xproto
@ -29,7 +29,7 @@ stdenv.mkDerivation {
src = fetchurl {
url = "http://www.python.org/ftp/python/${version}/Python-${version}.tar.bz2";
sha256 = "5648ec81f93870fde2f0aa4ed45c8718692b15ce6fd9ed309bfb827ae12010aa";
sha256 = "1pnsbdzbd3750jcy32sv1760lv7am4x3f33jn1kmdmd82za279gv";
};
preConfigure = ''

View file

@ -15,7 +15,7 @@ stdenv.mkDerivation {
makeWrapper "$python/bin/$prg" "$out/bin/$prg" --suffix PYTHONPATH : "$PYTHONPATH"
done
ensureDir "$out/share"
ln "$python/share/man" "$out/share/man" -s
ln -s "$python/share/man" "$out/share/man"
'';
inherit python;

View file

@ -16,14 +16,15 @@ stdenv.mkDerivation {
# SIZEOF_LONG, SIZEOF_INT and SIZEOF_VOID_P being set.
./sizeof.patch
];
doCheck = true;
dontDisableStatic = true;
dontDisableStatic = true;
meta = {
homepage = http://www.cwi.nl/htbin/sen1/twiki/bin/view/SEN1/ATerm;
license = "LGPL";
description = "Library for manipulation of term data structures in C";
platforms = stdenv.lib.platforms.all;
};
}

View file

@ -1,17 +0,0 @@
{ cabal, X11 }:
cabal.mkDerivation (self: {
pname = "HGL";
version = "3.2.0.2";
sha256 = "13wcvf6bfii9pihr8m08b81fyslf5n587ds4zzgizbd8m38k81vz";
buildDepends = [ X11 ];
meta = {
description = "A simple graphics library based on X11 or Win32";
license = self.stdenv.lib.licenses.bsd3;
platforms = self.ghc.meta.platforms;
maintainers = [
self.stdenv.lib.maintainers.andres
self.stdenv.lib.maintainers.simons
];
};
})

View file

@ -5,6 +5,7 @@ cabal.mkDerivation (self: {
version = "0.2.3";
sha256 = "0xb8igsqydiw1w00frn4mxkflhxkayif2vivxmq5fk53am2f43wy";
buildDepends = [ cairo graphviz gtk mtl polyparse text ];
jailbreak = true;
meta = {
description = "Parse Graphviz xdot files and interactively view them using GTK and Cairo";
license = self.stdenv.lib.licenses.bsd3;

View file

@ -0,0 +1,21 @@
{ stdenv, fetchurl, cmake, unzip }:
stdenv.mkDerivation rec {
name = "ocio-${version}";
version = "1.0.8";
src = fetchurl {
url = "https://github.com/imageworks/OpenColorIO/archive/v1.0.8.zip";
sha256 = "1l70bf40dz2znm9rh3r6xs9d6kp719y1djayb7dc89khfqqbx2di";
};
buildInputs = [ cmake unzip ];
meta = with stdenv.lib; {
homepage = http://opencolorio.org;
description = "A color management framework for visual effects and animation";
license = licenses.bsd3;
maintainers = [ maintainers.goibhniu ];
platforms = platforms.linux;
};
}

View file

@ -1,7 +1,21 @@
{ stdenv, fetchgit }:
stdenv.lib.setName "gnulib-0.0-7898-gdb9cad7" (fetchgit {
url = "http://git.savannah.gnu.org/r/gnulib.git";
rev = "db9cad7b8b59a010ff9158513a29cb002a2b8ae1";
sha256 = "1azdz7mhx1jf0l17wn7zp591wxry0ys4g29ycij5mai7vzhddjn6";
})
stdenv.mkDerivation {
name = "gnulib-0.0-7899-g34f8464";
src = fetchgit {
url = "http://git.savannah.gnu.org/r/gnulib.git";
rev = "34f84640cd015eee3d9aed3b1eddf6f361576890";
sha256 = "9267827d6b3f0eb97957eae7851afd4e5ac8aa714a83e3be52e7b660cc27851d";
};
buildPhase = ":";
installPhase = "mkdir -p $out; mv * $out/";
meta = {
homepage = "http://www.gnu.org/software/gnulib/";
description = "central location for code to be shared among GNU packages";
license = stdenv.lib.licenses.gpl3Plus;
};
}

View file

@ -10,6 +10,11 @@ stdenv.mkDerivation rec {
buildInputs = [ ncurses perl ];
preInstall = ''
installFlags="TEXMF=$out/texmf";
installTargets="install install-tex";
'';
doCheck = true;
meta = {

View file

@ -92,10 +92,6 @@ rec {
remove = e: filter (x: x != e);
# Given two lists, removes all elements of the first list from the second list
removeList = l: filter (x: elem x l);
# Return true if `list' has an element `x'.
elem =
builtins.elem or

View file

@ -1,6 +1,6 @@
{ stdenv, fetchurl, libtool, gettext }:
assert stdenv.isLinux && stdenv.system != "powerpc-linux";
assert stdenv.system == "i686-linux" || stdenv.system == "x86_64-linux";
stdenv.mkDerivation {
name = "cpufrequtils-008";

View file

@ -1,11 +1,11 @@
{ fetchurl, stdenv, flex, bison, db4, iptables, pkgconfig }:
stdenv.mkDerivation rec {
name = "iproute2-3.6.0";
name = "iproute2-3.8.0";
src = fetchurl {
url = http://kernel.org/pub/linux/utils/net/iproute2/iproute2-3.6.0.tar.xz;
sha256 = "0d05av2s7p552yszgj6glz6d74jlmg392s7n74hicgqfl16m85rd";
url = "mirror://kernel/linux/utils/net/iproute2/${name}.tar.xz";
sha256 = "0kqy30wz2krbg4y7750hjq5218hgy2vj9pm5qzkn1bqskxs4b4ap";
};
patches = [ ./vpnc.patch ];

View file

@ -1,351 +0,0 @@
aufs2 base patch for linux-2.6.35
diff --git a/fs/namei.c b/fs/namei.c
index 868d0cb..6e92c81 100644
--- a/fs/namei.c
+++ b/fs/namei.c
@@ -1178,7 +1178,7 @@ out:
* needs parent already locked. Doesn't follow mounts.
* SMP-safe.
*/
-static struct dentry *lookup_hash(struct nameidata *nd)
+struct dentry *lookup_hash(struct nameidata *nd)
{
int err;
@@ -1190,5 +1190,5 @@
-static int __lookup_one_len(const char *name, struct qstr *this,
+int __lookup_one_len(const char *name, struct qstr *this,
struct dentry *base, int len)
{
unsigned long hash;
diff --git a/fs/splice.c b/fs/splice.c
index efdbfec..e01a51e 100644
--- a/fs/splice.c
+++ b/fs/splice.c
@@ -1104,8 +1104,8 @@ EXPORT_SYMBOL(generic_splice_sendpage);
/*
* Attempt to initiate a splice from pipe to file.
*/
-static long do_splice_from(struct pipe_inode_info *pipe, struct file *out,
- loff_t *ppos, size_t len, unsigned int flags)
+long do_splice_from(struct pipe_inode_info *pipe, struct file *out,
+ loff_t *ppos, size_t len, unsigned int flags)
{
ssize_t (*splice_write)(struct pipe_inode_info *, struct file *,
loff_t *, size_t, unsigned int);
@@ -1132,9 +1132,9 @@ static long do_splice_from(struct pipe_inode_info *pipe, struct file *out,
/*
* Attempt to initiate a splice from a file to a pipe.
*/
-static long do_splice_to(struct file *in, loff_t *ppos,
- struct pipe_inode_info *pipe, size_t len,
- unsigned int flags)
+long do_splice_to(struct file *in, loff_t *ppos,
+ struct pipe_inode_info *pipe, size_t len,
+ unsigned int flags)
{
ssize_t (*splice_read)(struct file *, loff_t *,
struct pipe_inode_info *, size_t, unsigned int);
diff --git a/include/linux/namei.h b/include/linux/namei.h
index 05b441d..91bc74e 100644
--- a/include/linux/namei.h
+++ b/include/linux/namei.h
@@ -73,6 +73,9 @@ extern int vfs_path_lookup(struct dentry *, struct vfsmount *,
extern struct file *lookup_instantiate_filp(struct nameidata *nd, struct dentry *dentry,
int (*open)(struct inode *, struct file *));
+extern struct dentry *lookup_hash(struct nameidata *nd);
+extern int __lookup_one_len(const char *name, struct qstr *this,
+ struct dentry *base, int len);
extern struct dentry *lookup_one_len(const char *, struct dentry *, int);
extern int follow_down(struct path *);
diff --git a/include/linux/splice.h b/include/linux/splice.h
index 997c3b4..be9a153 100644
--- a/include/linux/splice.h
+++ b/include/linux/splice.h
@@ -89,4 +89,10 @@ extern int splice_grow_spd(struct pipe_inode_info *, struct splice_pipe_desc *);
extern void splice_shrink_spd(struct pipe_inode_info *,
struct splice_pipe_desc *);
+extern long do_splice_from(struct pipe_inode_info *pipe, struct file *out,
+ loff_t *ppos, size_t len, unsigned int flags);
+extern long do_splice_to(struct file *in, loff_t *ppos,
+ struct pipe_inode_info *pipe, size_t len,
+ unsigned int flags);
+
#endif
aufs2 standalone patch for linux-2.6.35
diff --git a/fs/namei.c b/fs/namei.c
index 6e92c81..334130e 100644
--- a/fs/namei.c
+++ b/fs/namei.c
@@ -348,6 +348,7 @@ int deny_write_access(struct file * file)
return 0;
}
+EXPORT_SYMBOL(deny_write_access);
/**
* path_get - get a reference to a path
@@ -1187,6 +1188,7 @@ struct dentry *lookup_hash(struct nameidata *nd)
return ERR_PTR(err);
return __lookup_hash(&nd->last, nd->path.dentry, nd);
}
+EXPORT_SYMBOL(lookup_hash);
int __lookup_one_len(const char *name, struct qstr *this,
struct dentry *base, int len)
@@ -1209,6 +1211,7 @@ int __lookup_one_len(const char *name, struct qstr *this,
this->hash = end_name_hash(hash);
return 0;
}
+EXPORT_SYMBOL(__lookup_one_len);
/**
* lookup_one_len - filesystem helper to lookup single pathname component
diff --git a/fs/namespace.c b/fs/namespace.c
index 88058de..397afcc 100644
--- a/fs/namespace.c
+++ b/fs/namespace.c
@@ -1279,6 +1279,7 @@ int iterate_mounts(int (*f)(struct vfsmount *, void *), void *arg,
}
return 0;
}
+EXPORT_SYMBOL(iterate_mounts);
static void cleanup_group_ids(struct vfsmount *mnt, struct vfsmount *end)
{
diff --git a/fs/notify/group.c b/fs/notify/group.c
index 0e16771..3fab10a 100644
--- a/fs/notify/group.c
+++ b/fs/notify/group.c
@@ -22,6 +22,7 @@
#include <linux/srcu.h>
#include <linux/rculist.h>
#include <linux/wait.h>
+#include <linux/module.h>
#include <linux/fsnotify_backend.h>
#include "fsnotify.h"
@@ -169,6 +170,7 @@ void fsnotify_put_group(struct fsnotify_group *group)
fsnotify_recalc_global_mask();
fsnotify_destroy_group(group);
}
+EXPORT_SYMBOL(fsnotify_put_group);
/*
* Simply run the fsnotify_groups list and find a group which matches
@@ -252,3 +254,4 @@ struct fsnotify_group *fsnotify_obtain_group(unsigned int group_num, __u32 mask,
return group;
}
+EXPORT_SYMBOL(fsnotify_obtain_group);
diff --git a/fs/notify/inode_mark.c b/fs/notify/inode_mark.c
index 0399bcb..74cdc13 100644
--- a/fs/notify/inode_mark.c
+++ b/fs/notify/inode_mark.c
@@ -105,6 +105,7 @@ void fsnotify_put_mark(struct fsnotify_mark_entry *entry)
if (atomic_dec_and_test(&entry->refcnt))
entry->free_mark(entry);
}
+EXPORT_SYMBOL(fsnotify_put_mark);
/*
* Recalculate the mask of events relevant to a given inode locked.
@@ -215,6 +216,7 @@ void fsnotify_destroy_mark_by_entry(struct fsnotify_mark_entry *entry)
if (unlikely(atomic_dec_and_test(&group->num_marks)))
fsnotify_final_destroy_group(group);
}
+EXPORT_SYMBOL(fsnotify_destroy_mark_by_entry);
/*
* Given a group, destroy all of the marks associated with that group.
@@ -281,6 +283,7 @@ struct fsnotify_mark_entry *fsnotify_find_mark_entry(struct fsnotify_group *grou
}
return NULL;
}
+EXPORT_SYMBOL(fsnotify_find_mark_entry);
/*
* Nothing fancy, just initialize lists and locks and counters.
@@ -297,6 +300,7 @@ void fsnotify_init_mark(struct fsnotify_mark_entry *entry,
entry->inode = NULL;
entry->free_mark = free_mark;
}
+EXPORT_SYMBOL(fsnotify_init_mark);
/*
* Attach an initialized mark entry to a given group and inode.
@@ -352,6 +356,7 @@ int fsnotify_add_mark(struct fsnotify_mark_entry *entry,
return ret;
}
+EXPORT_SYMBOL(fsnotify_add_mark);
/**
* fsnotify_unmount_inodes - an sb is unmounting. handle any watched inodes.
diff --git a/fs/open.c b/fs/open.c
index 5463266..d248ead 100644
--- a/fs/open.c
+++ b/fs/open.c
@@ -59,6 +59,7 @@ int do_truncate(struct dentry *dentry, loff_t length, unsigned int time_attrs,
mutex_unlock(&dentry->d_inode->i_mutex);
return ret;
}
+EXPORT_SYMBOL(do_truncate);
static long do_sys_truncate(const char __user *pathname, loff_t length)
{
diff --git a/fs/splice.c b/fs/splice.c
index e01a51e..4806358 100644
--- a/fs/splice.c
+++ b/fs/splice.c
@@ -1128,6 +1128,7 @@ long do_splice_from(struct pipe_inode_info *pipe, struct file *out,
return splice_write(pipe, out, ppos, len, flags);
}
+EXPORT_SYMBOL(do_splice_from);
/*
* Attempt to initiate a splice from a file to a pipe.
@@ -1154,6 +1155,7 @@ long do_splice_to(struct file *in, loff_t *ppos,
return splice_read(in, ppos, pipe, len, flags);
}
+EXPORT_SYMBOL(do_splice_to);
/**
* splice_direct_to_actor - splices data directly between two non-pipes
diff --git a/security/commoncap.c b/security/commoncap.c
index 4e01599..3611e1b 100644
--- a/security/commoncap.c
+++ b/security/commoncap.c
@@ -951,3 +951,4 @@ int cap_file_mmap(struct file *file, unsigned long reqprot,
}
return ret;
}
+EXPORT_SYMBOL(cap_file_mmap);
diff --git a/security/device_cgroup.c b/security/device_cgroup.c
index 8d9c48f..29108aa 100644
--- a/security/device_cgroup.c
+++ b/security/device_cgroup.c
@@ -515,6 +515,7 @@ found:
return -EPERM;
}
+EXPORT_SYMBOL(devcgroup_inode_permission);
int devcgroup_inode_mknod(int mode, dev_t dev)
{
diff --git a/security/security.c b/security/security.c
index 351942a..6ba84a8 100644
--- a/security/security.c
+++ b/security/security.c
@@ -376,6 +376,7 @@ int security_path_mkdir(struct path *dir, struct dentry *dentry, int mode)
return 0;
return security_ops->path_mkdir(dir, dentry, mode);
}
+EXPORT_SYMBOL(security_path_mkdir);
int security_path_rmdir(struct path *dir, struct dentry *dentry)
{
@@ -383,6 +384,7 @@ int security_path_rmdir(struct path *dir, struct dentry *dentry)
return 0;
return security_ops->path_rmdir(dir, dentry);
}
+EXPORT_SYMBOL(security_path_rmdir);
int security_path_unlink(struct path *dir, struct dentry *dentry)
{
@@ -390,6 +392,7 @@ int security_path_unlink(struct path *dir, struct dentry *dentry)
return 0;
return security_ops->path_unlink(dir, dentry);
}
+EXPORT_SYMBOL(security_path_unlink);
int security_path_symlink(struct path *dir, struct dentry *dentry,
const char *old_name)
@@ -398,6 +401,7 @@ int security_path_symlink(struct path *dir, struct dentry *dentry,
return 0;
return security_ops->path_symlink(dir, dentry, old_name);
}
+EXPORT_SYMBOL(security_path_symlink);
int security_path_link(struct dentry *old_dentry, struct path *new_dir,
struct dentry *new_dentry)
@@ -406,6 +410,7 @@ int security_path_link(struct dentry *old_dentry, struct path *new_dir,
return 0;
return security_ops->path_link(old_dentry, new_dir, new_dentry);
}
+EXPORT_SYMBOL(security_path_link);
int security_path_rename(struct path *old_dir, struct dentry *old_dentry,
struct path *new_dir, struct dentry *new_dentry)
@@ -416,6 +421,7 @@ int security_path_rename(struct path *old_dir, struct dentry *old_dentry,
return security_ops->path_rename(old_dir, old_dentry, new_dir,
new_dentry);
}
+EXPORT_SYMBOL(security_path_rename);
int security_path_truncate(struct path *path, loff_t length,
unsigned int time_attrs)
@@ -424,6 +430,7 @@ int security_path_truncate(struct path *path, loff_t length,
return 0;
return security_ops->path_truncate(path, length, time_attrs);
}
+EXPORT_SYMBOL(security_path_truncate);
int security_path_chmod(struct dentry *dentry, struct vfsmount *mnt,
mode_t mode)
@@ -432,6 +439,7 @@ int security_path_chmod(struct dentry *dentry, struct vfsmount *mnt,
return 0;
return security_ops->path_chmod(dentry, mnt, mode);
}
+EXPORT_SYMBOL(security_path_chmod);
int security_path_chown(struct path *path, uid_t uid, gid_t gid)
{
@@ -439,6 +447,7 @@ int security_path_chown(struct path *path, uid_t uid, gid_t gid)
return 0;
return security_ops->path_chown(path, uid, gid);
}
+EXPORT_SYMBOL(security_path_chown);
int security_path_chroot(struct path *path)
{
@@ -515,6 +524,7 @@ int security_inode_readlink(struct dentry *dentry)
return 0;
return security_ops->inode_readlink(dentry);
}
+EXPORT_SYMBOL(security_inode_readlink);
int security_inode_follow_link(struct dentry *dentry, struct nameidata *nd)
{
@@ -529,6 +539,7 @@ int security_inode_permission(struct inode *inode, int mask)
return 0;
return security_ops->inode_permission(inode, mask);
}
+EXPORT_SYMBOL(security_inode_permission);
int security_inode_setattr(struct dentry *dentry, struct iattr *attr)
{
@@ -622,6 +633,7 @@ int security_file_permission(struct file *file, int mask)
{
return security_ops->file_permission(file, mask);
}
+EXPORT_SYMBOL(security_file_permission);
int security_file_alloc(struct file *file)
{
@@ -649,6 +661,7 @@ int security_file_mmap(struct file *file, unsigned long reqprot,
return ret;
return ima_file_mmap(file, prot);
}
+EXPORT_SYMBOL(security_file_mmap);
int security_file_mprotect(struct vm_area_struct *vma, unsigned long reqprot,
unsigned long prot)

View file

@ -1,354 +0,0 @@
From:
http://git.c3sl.ufpr.br/gitweb?p=aufs/aufs2-standalone.git;a=blob;f=aufs2-base.patch;hb=eb0355d5b8ff5b04ad217a86d8c677f265675436
http://git.c3sl.ufpr.br/gitweb?p=aufs/aufs2-standalone.git;a=blob;f=aufs2-standalone.patch;hb=a9c3ab997b526d76bdd23391b3ddc1fdf28edd46
aufs2 base patch for linux-2.6.32
diff --git a/fs/namei.c b/fs/namei.c
index d11f404..7d28f56 100644
--- a/fs/namei.c
+++ b/fs/namei.c
@@ -1219,7 +1219,7 @@ out:
* needs parent already locked. Doesn't follow mounts.
* SMP-safe.
*/
-static struct dentry *lookup_hash(struct nameidata *nd)
+struct dentry *lookup_hash(struct nameidata *nd)
{
int err;
@@ -1229,7 +1229,7 @@ static struct dentry *lookup_hash(struct nameidata *nd)
return __lookup_hash(&nd->last, nd->path.dentry, nd);
}
-static int __lookup_one_len(const char *name, struct qstr *this,
+int __lookup_one_len(const char *name, struct qstr *this,
struct dentry *base, int len)
{
unsigned long hash;
diff --git a/fs/splice.c b/fs/splice.c
index 7394e9e..77184f0 100644
--- a/fs/splice.c
+++ b/fs/splice.c
@@ -1051,8 +1051,8 @@ EXPORT_SYMBOL(generic_splice_sendpage);
/*
* Attempt to initiate a splice from pipe to file.
*/
-static long do_splice_from(struct pipe_inode_info *pipe, struct file *out,
- loff_t *ppos, size_t len, unsigned int flags)
+long do_splice_from(struct pipe_inode_info *pipe, struct file *out,
+ loff_t *ppos, size_t len, unsigned int flags)
{
ssize_t (*splice_write)(struct pipe_inode_info *, struct file *,
loff_t *, size_t, unsigned int);
@@ -1078,9 +1078,9 @@ static long do_splice_from(struct pipe_inode_info *pipe, struct file *out,
/*
* Attempt to initiate a splice from a file to a pipe.
*/
-static long do_splice_to(struct file *in, loff_t *ppos,
- struct pipe_inode_info *pipe, size_t len,
- unsigned int flags)
+long do_splice_to(struct file *in, loff_t *ppos,
+ struct pipe_inode_info *pipe, size_t len,
+ unsigned int flags)
{
ssize_t (*splice_read)(struct file *, loff_t *,
struct pipe_inode_info *, size_t, unsigned int);
diff --git a/include/linux/namei.h b/include/linux/namei.h
index ec0f607..1438153 100644
--- a/include/linux/namei.h
+++ b/include/linux/namei.h
@@ -75,6 +75,9 @@ extern struct file *lookup_instantiate_filp(struct nameidata *nd, struct dentry
extern struct file *nameidata_to_filp(struct nameidata *nd, int flags);
extern void release_open_intent(struct nameidata *);
+extern struct dentry *lookup_hash(struct nameidata *nd);
+extern int __lookup_one_len(const char *name, struct qstr *this,
+ struct dentry *base, int len);
extern struct dentry *lookup_one_len(const char *, struct dentry *, int);
extern struct dentry *lookup_one_noperm(const char *, struct dentry *);
diff --git a/include/linux/splice.h b/include/linux/splice.h
index 18e7c7c..8393b5c 100644
--- a/include/linux/splice.h
+++ b/include/linux/splice.h
@@ -82,4 +82,10 @@ extern ssize_t splice_to_pipe(struct pipe_inode_info *,
extern ssize_t splice_direct_to_actor(struct file *, struct splice_desc *,
splice_direct_actor *);
+extern long do_splice_from(struct pipe_inode_info *pipe, struct file *out,
+ loff_t *ppos, size_t len, unsigned int flags);
+extern long do_splice_to(struct file *in, loff_t *ppos,
+ struct pipe_inode_info *pipe, size_t len,
+ unsigned int flags);
+
#endif
aufs2 standalone patch for linux-2.6.32
diff --git a/fs/namei.c b/fs/namei.c
index 7d28f56..0f6117c 100644
--- a/fs/namei.c
+++ b/fs/namei.c
@@ -350,6 +350,7 @@ int deny_write_access(struct file * file)
return 0;
}
+EXPORT_SYMBOL(deny_write_access);
/**
* path_get - get a reference to a path
@@ -1228,6 +1229,7 @@ struct dentry *lookup_hash(struct nameidata *nd)
return ERR_PTR(err);
return __lookup_hash(&nd->last, nd->path.dentry, nd);
}
+EXPORT_SYMBOL(lookup_hash);
int __lookup_one_len(const char *name, struct qstr *this,
struct dentry *base, int len)
@@ -1250,6 +1252,7 @@ int __lookup_one_len(const char *name, struct qstr *this,
this->hash = end_name_hash(hash);
return 0;
}
+EXPORT_SYMBOL(__lookup_one_len);
/**
* lookup_one_len - filesystem helper to lookup single pathname component
diff --git a/fs/namespace.c b/fs/namespace.c
index bdc3cb4..a2cadcf 100644
--- a/fs/namespace.c
+++ b/fs/namespace.c
@@ -39,6 +39,7 @@
/* spinlock for vfsmount related operations, inplace of dcache_lock */
__cacheline_aligned_in_smp DEFINE_SPINLOCK(vfsmount_lock);
+EXPORT_SYMBOL(vfsmount_lock);
static int event;
static DEFINE_IDA(mnt_id_ida);
diff --git a/fs/notify/group.c b/fs/notify/group.c
index 0e16771..3fab10a 100644
--- a/fs/notify/group.c
+++ b/fs/notify/group.c
@@ -22,6 +22,7 @@
#include <linux/srcu.h>
#include <linux/rculist.h>
#include <linux/wait.h>
+#include <linux/module.h>
#include <linux/fsnotify_backend.h>
#include "fsnotify.h"
@@ -169,6 +170,7 @@ void fsnotify_put_group(struct fsnotify_group *group)
fsnotify_recalc_global_mask();
fsnotify_destroy_group(group);
}
+EXPORT_SYMBOL(fsnotify_put_group);
/*
* Simply run the fsnotify_groups list and find a group which matches
@@ -252,3 +254,4 @@ struct fsnotify_group *fsnotify_obtain_group(unsigned int group_num, __u32 mask,
return group;
}
+EXPORT_SYMBOL(fsnotify_obtain_group);
diff --git a/fs/notify/inode_mark.c b/fs/notify/inode_mark.c
index 3165d85..4586162 100644
--- a/fs/notify/inode_mark.c
+++ b/fs/notify/inode_mark.c
@@ -106,6 +106,7 @@ void fsnotify_put_mark(struct fsnotify_mark_entry *entry)
if (atomic_dec_and_test(&entry->refcnt))
entry->free_mark(entry);
}
+EXPORT_SYMBOL(fsnotify_put_mark);
/*
* Recalculate the mask of events relevant to a given inode locked.
@@ -216,6 +217,7 @@ void fsnotify_destroy_mark_by_entry(struct fsnotify_mark_entry *entry)
if (unlikely(atomic_dec_and_test(&group->num_marks)))
fsnotify_final_destroy_group(group);
}
+EXPORT_SYMBOL(fsnotify_destroy_mark_by_entry);
/*
* Given a group, destroy all of the marks associated with that group.
@@ -282,6 +284,7 @@ struct fsnotify_mark_entry *fsnotify_find_mark_entry(struct fsnotify_group *grou
}
return NULL;
}
+EXPORT_SYMBOL(fsnotify_find_mark_entry);
/*
* Nothing fancy, just initialize lists and locks and counters.
@@ -298,6 +301,7 @@ void fsnotify_init_mark(struct fsnotify_mark_entry *entry,
entry->inode = NULL;
entry->free_mark = free_mark;
}
+EXPORT_SYMBOL(fsnotify_init_mark);
/*
* Attach an initialized mark entry to a given group and inode.
@@ -353,6 +357,7 @@ int fsnotify_add_mark(struct fsnotify_mark_entry *entry,
return ret;
}
+EXPORT_SYMBOL(fsnotify_add_mark);
/**
* fsnotify_unmount_inodes - an sb is unmounting. handle any watched inodes.
diff --git a/fs/open.c b/fs/open.c
index 4f01e06..ef09031 100644
--- a/fs/open.c
+++ b/fs/open.c
@@ -223,6 +223,7 @@ int do_truncate(struct dentry *dentry, loff_t length, unsigned int time_attrs,
mutex_unlock(&dentry->d_inode->i_mutex);
return ret;
}
+EXPORT_SYMBOL(do_truncate);
static long do_sys_truncate(const char __user *pathname, loff_t length)
{
diff --git a/fs/splice.c b/fs/splice.c
index 77184f0..8479d95 100644
--- a/fs/splice.c
+++ b/fs/splice.c
@@ -1074,6 +1074,7 @@ long do_splice_from(struct pipe_inode_info *pipe, struct file *out,
return splice_write(pipe, out, ppos, len, flags);
}
+EXPORT_SYMBOL(do_splice_from);
/*
* Attempt to initiate a splice from a file to a pipe.
@@ -1099,6 +1100,7 @@ long do_splice_to(struct file *in, loff_t *ppos,
return splice_read(in, ppos, pipe, len, flags);
}
+EXPORT_SYMBOL(do_splice_to);
/**
* splice_direct_to_actor - splices data directly between two non-pipes
diff --git a/security/commoncap.c b/security/commoncap.c
index fe30751..813108d 100644
--- a/security/commoncap.c
+++ b/security/commoncap.c
@@ -1014,3 +1014,4 @@ int cap_file_mmap(struct file *file, unsigned long reqprot,
}
return ret;
}
+EXPORT_SYMBOL(cap_file_mmap);
diff --git a/security/device_cgroup.c b/security/device_cgroup.c
index 6cf8fd2..008e0d8 100644
--- a/security/device_cgroup.c
+++ b/security/device_cgroup.c
@@ -514,6 +514,7 @@ found:
return -EPERM;
}
+EXPORT_SYMBOL(devcgroup_inode_permission);
int devcgroup_inode_mknod(int mode, dev_t dev)
{
diff --git a/security/integrity/ima/ima_main.c b/security/integrity/ima/ima_main.c
index b85e61b..a23fad4 100644
--- a/security/integrity/ima/ima_main.c
+++ b/security/integrity/ima/ima_main.c
@@ -324,6 +324,7 @@ int ima_file_mmap(struct file *file, unsigned long prot)
MAY_EXEC, FILE_MMAP);
return 0;
}
+EXPORT_SYMBOL(ima_file_mmap);
/**
* ima_bprm_check - based on policy, collect/store measurement.
diff --git a/security/security.c b/security/security.c
index c4c6732..092cd90 100644
--- a/security/security.c
+++ b/security/security.c
@@ -386,6 +386,7 @@ int security_path_mkdir(struct path *path, struct dentry *dentry, int mode)
return 0;
return security_ops->path_mkdir(path, dentry, mode);
}
+EXPORT_SYMBOL(security_path_mkdir);
int security_path_rmdir(struct path *path, struct dentry *dentry)
{
@@ -393,6 +394,7 @@ int security_path_rmdir(struct path *path, struct dentry *dentry)
return 0;
return security_ops->path_rmdir(path, dentry);
}
+EXPORT_SYMBOL(security_path_rmdir);
int security_path_unlink(struct path *path, struct dentry *dentry)
{
@@ -400,6 +402,7 @@ int security_path_unlink(struct path *path, struct dentry *dentry)
return 0;
return security_ops->path_unlink(path, dentry);
}
+EXPORT_SYMBOL(security_path_unlink);
int security_path_symlink(struct path *path, struct dentry *dentry,
const char *old_name)
@@ -408,6 +411,7 @@ int security_path_symlink(struct path *path, struct dentry *dentry,
return 0;
return security_ops->path_symlink(path, dentry, old_name);
}
+EXPORT_SYMBOL(security_path_symlink);
int security_path_link(struct dentry *old_dentry, struct path *new_dir,
struct dentry *new_dentry)
@@ -416,6 +420,7 @@ int security_path_link(struct dentry *old_dentry, struct path *new_dir,
return 0;
return security_ops->path_link(old_dentry, new_dir, new_dentry);
}
+EXPORT_SYMBOL(security_path_link);
int security_path_rename(struct path *old_dir, struct dentry *old_dentry,
struct path *new_dir, struct dentry *new_dentry)
@@ -426,6 +431,7 @@ int security_path_rename(struct path *old_dir, struct dentry *old_dentry,
return security_ops->path_rename(old_dir, old_dentry, new_dir,
new_dentry);
}
+EXPORT_SYMBOL(security_path_rename);
int security_path_truncate(struct path *path, loff_t length,
unsigned int time_attrs)
@@ -434,6 +440,7 @@ int security_path_truncate(struct path *path, loff_t length,
return 0;
return security_ops->path_truncate(path, length, time_attrs);
}
+EXPORT_SYMBOL(security_path_truncate);
#endif
int security_inode_create(struct inode *dir, struct dentry *dentry, int mode)
@@ -505,6 +512,7 @@ int security_inode_readlink(struct dentry *dentry)
return 0;
return security_ops->inode_readlink(dentry);
}
+EXPORT_SYMBOL(security_inode_readlink);
int security_inode_follow_link(struct dentry *dentry, struct nameidata *nd)
{
@@ -519,6 +527,7 @@ int security_inode_permission(struct inode *inode, int mask)
return 0;
return security_ops->inode_permission(inode, mask);
}
+EXPORT_SYMBOL(security_inode_permission);
int security_inode_setattr(struct dentry *dentry, struct iattr *attr)
{
@@ -619,6 +628,7 @@ int security_file_permission(struct file *file, int mask)
{
return security_ops->file_permission(file, mask);
}
+EXPORT_SYMBOL(security_file_permission);
int security_file_alloc(struct file *file)
{
@@ -641,6 +651,7 @@ int security_file_mmap(struct file *file, unsigned long reqprot,
{
return security_ops->file_mmap(file, reqprot, prot, flags, addr, addr_only);
}
+EXPORT_SYMBOL(security_file_mmap);
int security_file_mprotect(struct vm_area_struct *vma, unsigned long reqprot,
unsigned long prot)

View file

@ -1,44 +0,0 @@
--- a/fs/cifs/transport.c 2011-04-12 15:16:00.253887813 +0200
+++ b/fs/cifs/transport.c 2011-04-12 15:17:22.650296413 +0200
@@ -247,9 +247,9 @@
n_vec - first_vec, total_len);
if ((rc == -ENOSPC) || (rc == -EAGAIN)) {
i++;
- if(i >= 14) {
+ if(i >= 119) {
cERROR(1,
- ("sends on sock %p stuck for 15 seconds",
+ ("sends on sock %p stuck for 120 seconds",
ssocket));
rc = -EAGAIN;
break;
@@ -421,12 +421,12 @@
else if (long_op == 2) /* writes past end of file can take loong time */
timeout = 180 * HZ;
else if (long_op == 1)
- timeout = 45 * HZ; /* should be greater than
+ timeout = 120 * HZ; /* should be greater than
servers oplock break timeout (about 43 seconds) */
else if (long_op > 2) {
timeout = MAX_SCHEDULE_TIMEOUT;
} else
- timeout = 15 * HZ;
+ timeout = 120 * HZ;
/* wait for 15 seconds or until woken up due to response arriving or
due to last connection to this server being unmounted */
if (signal_pending(current)) {
@@ -687,12 +687,12 @@
else if (long_op == 2) /* writes past end of file can take loong time */
timeout = 180 * HZ;
else if (long_op == 1)
- timeout = 45 * HZ; /* should be greater than
+ timeout = 120 * HZ; /* should be greater than
servers oplock break timeout (about 43 seconds) */
else if (long_op > 2) {
timeout = MAX_SCHEDULE_TIMEOUT;
} else
- timeout = 15 * HZ;
+ timeout = 120 * HZ;
/* wait for 15 seconds or until woken up due to response arriving or
due to last connection to this server being unmounted */
if (signal_pending(current)) {

View file

@ -1,47 +0,0 @@
diff -ru -x '*~' /tmp/linux-2.6.32.14/fs/cifs/transport.c linux-2.6.32.14/fs/cifs/transport.c
--- /tmp/linux-2.6.32.14/fs/cifs/transport.c 2010-05-26 23:29:57.000000000 +0200
+++ linux-2.6.32.14/fs/cifs/transport.c 2010-06-20 22:03:13.000000000 +0200
@@ -166,9 +166,9 @@
after the retries we will kill the socket and
reconnect which may clear the network problem.
*/
- if ((i >= 14) || (!server->noblocksnd && (i > 2))) {
+ if ((i >= 119) || (!server->noblocksnd && (i > 2))) {
cERROR(1,
- ("sends on sock %p stuck for 15 seconds",
+ ("sends on sock %p stuck for 120 seconds",
ssocket));
rc = -EAGAIN;
break;
@@ -459,11 +459,11 @@
goto out;
if (long_op == CIFS_STD_OP)
- timeout = 15 * HZ;
+ timeout = 120 * HZ;
else if (long_op == CIFS_VLONG_OP) /* e.g. slow writes past EOF */
timeout = 180 * HZ;
else if (long_op == CIFS_LONG_OP)
- timeout = 45 * HZ; /* should be greater than
+ timeout = 120 * HZ; /* should be greater than
servers oplock break timeout (about 43 seconds) */
else if (long_op == CIFS_ASYNC_OP)
goto out;
@@ -651,7 +651,7 @@
goto out;
if (long_op == CIFS_STD_OP)
- timeout = 15 * HZ;
+ timeout = 120 * HZ;
/* wait for 15 seconds or until woken up due to response arriving or
due to last connection to this server being unmounted */
else if (long_op == CIFS_ASYNC_OP)
@@ -659,7 +659,7 @@
else if (long_op == CIFS_VLONG_OP) /* writes past EOF can be slow */
timeout = 180 * HZ;
else if (long_op == CIFS_LONG_OP)
- timeout = 45 * HZ; /* should be greater than
+ timeout = 120 * HZ; /* should be greater than
servers oplock break timeout (about 43 seconds) */
else if (long_op == CIFS_BLOCKING_OP)
timeout = 0x7FFFFFFF; /* large but no so large as to wrap */

View file

@ -1,45 +0,0 @@
--- /tmp/linux-2.6.32.14/fs/cifs/transport.c 2010-11-22 20:01:26.000000000 +0100
+++ linux-2.6.32.14/fs/cifs/transport.c 2011-03-29 15:31:14.926510480 +0200
@@ -166,8 +166,8 @@
after the retries we will kill the socket and
reconnect which may clear the network problem.
*/
- if ((i >= 14) || (!server->noblocksnd && (i > 2))) {
- cERROR(1, "sends on sock %p stuck for 15 seconds",
+ if ((i >= 119) || (!server->noblocksnd && (i > 2))) {
+ cERROR(1, "sends on sock %p stuck for 119 seconds",
ssocket);
rc = -EAGAIN;
break;
@@ -458,11 +458,11 @@
goto out;
if (long_op == CIFS_STD_OP)
- timeout = 15 * HZ;
+ timeout = 120 * HZ;
else if (long_op == CIFS_VLONG_OP) /* e.g. slow writes past EOF */
timeout = 180 * HZ;
else if (long_op == CIFS_LONG_OP)
- timeout = 45 * HZ; /* should be greater than
+ timeout = 120 * HZ; /* should be greater than
servers oplock break timeout (about 43 seconds) */
else if (long_op == CIFS_ASYNC_OP)
goto out;
@@ -650,7 +650,7 @@
goto out;
if (long_op == CIFS_STD_OP)
- timeout = 15 * HZ;
+ timeout = 120 * HZ;
/* wait for 15 seconds or until woken up due to response arriving or
due to last connection to this server being unmounted */
else if (long_op == CIFS_ASYNC_OP)
@@ -658,7 +658,7 @@
else if (long_op == CIFS_VLONG_OP) /* writes past EOF can be slow */
timeout = 180 * HZ;
else if (long_op == CIFS_LONG_OP)
- timeout = 45 * HZ; /* should be greater than
+ timeout = 120 * HZ; /* should be greater than
servers oplock break timeout (about 43 seconds) */
else if (long_op == CIFS_BLOCKING_OP)
timeout = 0x7FFFFFFF; /* large but no so large as to wrap */

View file

@ -1,23 +0,0 @@
Ensure that the dell-bluetooth device does not stay in the "hard
blocked" state.
From https://patchwork.kernel.org/patch/37539/
diff --git a/drivers/platform/x86/dell-laptop.c b/drivers/platform/x86/dell-laptop.c
index 74909c4..cf40c4e 100644
--- a/drivers/platform/x86/dell-laptop.c
+++ b/drivers/platform/x86/dell-laptop.c
@@ -197,8 +197,11 @@ static void dell_rfkill_query(struct rfkill *rfkill, void *data)
dell_send_request(&buffer, 17, 11);
status = buffer.output[1];
- if (status & BIT(bit))
- rfkill_set_hw_state(rfkill, !!(status & BIT(16)));
+ /*
+ * Don't change state unless the read-only HW rfkill switch is disabled.
+ */
+ if (status & BIT(16))
+ rfkill_set_hw_state(rfkill, !!(status & BIT(bit)));
}
static const struct rfkill_ops dell_rfkill_ops = {

View file

@ -1,48 +0,0 @@
{ stdenv, fetchurl, extraConfig ? "", ... } @ args:
let
configWithPlatform = kernelPlatform:
''
# Don't include any debug features.
DEBUG_KERNEL n
# Support drivers that need external firmware.
STANDALONE n
# Make /proc/config.gz available.
IKCONFIG_PROC y
# Optimize with -O2, not -Os.
CC_OPTIMIZE_FOR_SIZE n
# Enable various subsystems.
MTD_COMPLEX_MAPPINGS y # needed for many devices
# Networking options.
IP_PNP n
IPV6_PRIVACY y
# Filesystem options - in particular, enable extended attributes and
# ACLs for all filesystems that support them.
CIFS_XATTR y
CIFS_POSIX y
${extraConfig}
'';
in
import ./generic.nix (rec {
version = "2.6.15.7";
postBuild = "make $makeFlags $kernelTarget";
src = fetchurl {
url = "ftp://ftp.kernel.org/pub/linux/kernel/v2.6/linux-${version}.tar.bz2";
sha256 = "43e0c251924324749b06464512532c3002d6294520faabdba5b3aea4e840b48b";
};
config = configWithPlatform stdenv.platform;
configCross = configWithPlatform stdenv.cross.platform;
}
// removeAttrs args ["extraConfig"]
)

View file

@ -1,215 +0,0 @@
{ stdenv, fetchurl, extraConfig ? "", ... } @ args:
let
configWithPlatform = kernelPlatform:
''
# Don't include any debug features.
DEBUG_KERNEL n
# Support drivers that need external firmware.
STANDALONE n
# Make /proc/config.gz available.
IKCONFIG_PROC y
# Optimize with -O2, not -Os.
CC_OPTIMIZE_FOR_SIZE n
# Enable the kernel's built-in memory tester.
MEMTEST y
# Include the CFQ I/O scheduler in the kernel, rather than as a
# module, so that the initrd gets a good I/O scheduler.
IOSCHED_CFQ y
# Disable some expensive (?) features.
FTRACE n
KPROBES n
NUMA? n
PM_TRACE_RTC n
# Enable various subsystems.
ACCESSIBILITY y # Accessibility support
AUXDISPLAY y # Auxiliary Display support
DONGLE y # Serial dongle support
HIPPI y
MTD_COMPLEX_MAPPINGS y # needed for many devices
NET_POCKET y # enable pocket and portable adapters
SCSI_LOWLEVEL y # enable lots of SCSI devices
SCSI_LOWLEVEL_PCMCIA y
SPI y # needed for many devices
SPI_MASTER y
WAN y
# Networking options.
IP_PNP n
IPV6_PRIVACY y
NETFILTER_ADVANCED y
IP_VS_PROTO_TCP y
IP_VS_PROTO_UDP y
IP_VS_PROTO_ESP y
IP_VS_PROTO_AH y
IP_DCCP_CCID3 n # experimental
CLS_U32_PERF y
CLS_U32_MARK y
# Wireless networking.
IPW2100_MONITOR y # support promiscuous mode
IPW2200_MONITOR y # support promiscuous mode
IWLWIFI_LEDS? y
IWLWIFI_SPECTRUM_MEASUREMENT y
IWL3945_SPECTRUM_MEASUREMENT y
IWL4965 y # Intel Wireless WiFi 4965AGN
IWL5000 y # Intel Wireless WiFi 5000AGN
HOSTAP_FIRMWARE y # Support downloading firmware images with Host AP driver
HOSTAP_FIRMWARE_NVRAM y
# Some settings to make sure that fbcondecor works - in particular,
# disable tileblitting and the drivers that need it.
# Enable various FB devices.
FB y
FB_EFI y
FB_NVIDIA_I2C y # Enable DDC Support
FB_RIVA_I2C y
FB_ATY_CT y # Mach64 CT/VT/GT/LT (incl. 3D RAGE) support
FB_ATY_GX y # Mach64 GX support
FB_SAVAGE_I2C y
FB_SAVAGE_ACCEL y
FB_SIS_300 y
FB_SIS_315 y
FB_3DFX_ACCEL y
FB_GEODE y
# Video configuration
# The intel drivers already require KMS
DRM_I915_KMS y
# Sound.
SND_AC97_POWER_SAVE y # AC97 Power-Saving Mode
SND_HDA_INPUT_BEEP y # Support digital beep via input layer
SND_USB_CAIAQ_INPUT y
PSS_MIXER y # Enable PSS mixer (Beethoven ADSP-16 and other compatible)
# USB serial devices.
USB_SERIAL_GENERIC y # USB Generic Serial Driver
USB_SERIAL_KEYSPAN_MPR y # include firmware for various USB serial devices
USB_SERIAL_KEYSPAN_USA28 y
USB_SERIAL_KEYSPAN_USA28X y
USB_SERIAL_KEYSPAN_USA28XA y
USB_SERIAL_KEYSPAN_USA28XB y
USB_SERIAL_KEYSPAN_USA19 y
USB_SERIAL_KEYSPAN_USA18X y
USB_SERIAL_KEYSPAN_USA19W y
USB_SERIAL_KEYSPAN_USA19QW y
USB_SERIAL_KEYSPAN_USA19QI y
USB_SERIAL_KEYSPAN_USA49W y
USB_SERIAL_KEYSPAN_USA49WLC y
# Filesystem options - in particular, enable extended attributes and
# ACLs for all filesystems that support them.
EXT2_FS_XATTR y # Ext2 extended attributes
EXT2_FS_POSIX_ACL y # Ext2 POSIX Access Control Lists
EXT2_FS_SECURITY y # Ext2 Security Labels
EXT2_FS_XIP y # Ext2 execute in place support
EXT4_FS_POSIX_ACL y
EXT4_FS_SECURITY y
REISERFS_FS_XATTR y
REISERFS_FS_POSIX_ACL y
REISERFS_FS_SECURITY y
JFS_POSIX_ACL y
JFS_SECURITY y
XFS_QUOTA y
XFS_POSIX_ACL y
XFS_RT y # XFS Realtime subvolume support
OCFS2_DEBUG_MASKLOG n
OCFS2_FS_POSIX_ACL y
BTRFS_FS_POSIX_ACL y
UBIFS_FS_XATTR y
UBIFS_FS_ADVANCED_COMPR y
NFSD_V2_ACL y
NFSD_V3 y
NFSD_V3_ACL y
NFSD_V4 y
CIFS_XATTR y
CIFS_POSIX y
# Security related features.
STRICT_DEVMEM y # Filter access to /dev/mem
SECURITY_SELINUX_BOOTPARAM_VALUE 0 # disable SELinux by default
# Misc. options.
8139TOO_8129 y
8139TOO_PIO n # PIO is slower
AIC79XX_DEBUG_ENABLE n
AIC7XXX_DEBUG_ENABLE n
AIC94XX_DEBUG n
B43_PCMCIA y
BLK_DEV_BSG n
BLK_DEV_CMD640_ENHANCED y # CMD640 enhanced support
BLK_DEV_IDEACPI y # IDE ACPI support
BLK_DEV_INTEGRITY y
BSD_PROCESS_ACCT_V3 y
BT_HCIUART_BCSP y
BT_HCIUART_H4 y # UART (H4) protocol support
BT_HCIUART_LL y
BT_RFCOMM_TTY y # RFCOMM TTY support
CPU_FREQ_DEBUG n
CRASH_DUMP n
DMAR? n # experimental
DVB_DYNAMIC_MINORS y # we use udev
FUSION y # Fusion MPT device support
IDE_GD_ATAPI y # ATAPI floppy support
IRDA_ULTRA y # Ultra (connectionless) protocol
JOYSTICK_IFORCE_232 y # I-Force Serial joysticks and wheels
JOYSTICK_IFORCE_USB y # I-Force USB joysticks and wheels
JOYSTICK_XPAD_FF y # X-Box gamepad rumble support
JOYSTICK_XPAD_LEDS y # LED Support for Xbox360 controller 'BigX' LED
KALLSYMS_EXTRA_PASS n
LDM_PARTITION y # Windows Logical Disk Manager (Dynamic Disk) support
LEDS_TRIGGER_IDE_DISK y # LED IDE Disk Trigger
LOGIRUMBLEPAD2_FF y # Logitech Rumblepad 2 force feedback
LOGO n # not needed
MEDIA_ATTACH y
MEGARAID_NEWGEN y
MICROCODE_AMD y
MODVERSIONS y
MOUSE_PS2_ELANTECH y # Elantech PS/2 protocol extension
MTRR_SANITIZER y
NET_FC y # Fibre Channel driver support
PCI_LEGACY y
PPP_MULTILINK y # PPP multilink support
REGULATOR y # Voltage and Current Regulator Support
SCSI_LOGGING y # SCSI logging facility
SERIAL_8250 y # 8250/16550 and compatible serial support
SLIP_COMPRESSED y # CSLIP compressed headers
SLIP_SMART y
THERMAL_HWMON y # Hardware monitoring support
USB_DEBUG n
USB_EHCI_ROOT_HUB_TT y # Root Hub Transaction Translators
X86_CHECK_BIOS_CORRUPTION y
X86_MCE y
${if kernelPlatform ? kernelExtraConfig then kernelPlatform.kernelExtraConfig else ""}
${extraConfig}
'';
in
import ./generic.nix (
rec {
version = "2.6.32.60";
src = fetchurl {
url = "mirror://kernel/linux/kernel/v2.6/longterm/v2.6.32/linux-${version}.tar.bz2";
sha256 = "0iyg5z76g8wnh73aq6p6j4xb3043skpa14fb3dwgbpdpx710x5nf";
};
config = configWithPlatform stdenv.platform;
configCross = configWithPlatform stdenv.cross.platform;
features.iwlwifi = true;
}
// removeAttrs args ["extraConfig"]
)

View file

@ -1,222 +0,0 @@
{ stdenv, fetchurl, extraConfig ? "", ... } @ args:
let
configWithPlatform = kernelPlatform:
''
# Don't include any debug features.
DEBUG_KERNEL n
# Support drivers that need external firmware.
STANDALONE n
# Make /proc/config.gz available.
IKCONFIG_PROC y
# Optimize with -O2, not -Os.
CC_OPTIMIZE_FOR_SIZE n
# Enable the kernel's built-in memory tester.
MEMTEST y
# Include the CFQ I/O scheduler in the kernel, rather than as a
# module, so that the initrd gets a good I/O scheduler.
IOSCHED_CFQ y
BLK_CGROUP y # required by CFQ
# Disable some expensive (?) features.
FTRACE n
KPROBES n
NUMA? n
PM_TRACE_RTC n
# Enable various subsystems.
ACCESSIBILITY y # Accessibility support
AUXDISPLAY y # Auxiliary Display support
DONGLE y # Serial dongle support
HIPPI y
MTD_COMPLEX_MAPPINGS y # needed for many devices
NET_POCKET y # enable pocket and portable adapters
SCSI_LOWLEVEL y # enable lots of SCSI devices
SCSI_LOWLEVEL_PCMCIA y
SPI y # needed for many devices
SPI_MASTER y
WAN y
# Networking options.
IP_PNP n
IPV6_PRIVACY y
NETFILTER_ADVANCED y
IP_VS_PROTO_TCP y
IP_VS_PROTO_UDP y
IP_VS_PROTO_ESP y
IP_VS_PROTO_AH y
IP_DCCP_CCID3 n # experimental
CLS_U32_PERF y
CLS_U32_MARK y
# Wireless networking.
IPW2100_MONITOR y # support promiscuous mode
IPW2200_MONITOR y # support promiscuous mode
IWL4965 y # Intel Wireless WiFi 4965AGN
IWL5000 y # Intel Wireless WiFi 5000AGN
HOSTAP_FIRMWARE y # Support downloading firmware images with Host AP driver
HOSTAP_FIRMWARE_NVRAM y
# Some settings to make sure that fbcondecor works - in particular,
# disable tileblitting and the drivers that need it.
# Enable various FB devices.
FB y
FB_EFI y
FB_NVIDIA_I2C y # Enable DDC Support
FB_RIVA_I2C y
FB_ATY_CT y # Mach64 CT/VT/GT/LT (incl. 3D RAGE) support
FB_ATY_GX y # Mach64 GX support
FB_SAVAGE_I2C y
FB_SAVAGE_ACCEL y
FB_SIS_300 y
FB_SIS_315 y
FB_3DFX_ACCEL y
FB_GEODE y
# Video configuration
# The intel drivers already require KMS
DRM_I915_KMS y
# Sound.
SND_AC97_POWER_SAVE y # AC97 Power-Saving Mode
SND_HDA_INPUT_BEEP y # Support digital beep via input layer
SND_USB_CAIAQ_INPUT y
PSS_MIXER y # Enable PSS mixer (Beethoven ADSP-16 and other compatible)
# USB serial devices.
USB_SERIAL_GENERIC y # USB Generic Serial Driver
USB_SERIAL_KEYSPAN_MPR y # include firmware for various USB serial devices
USB_SERIAL_KEYSPAN_USA28 y
USB_SERIAL_KEYSPAN_USA28X y
USB_SERIAL_KEYSPAN_USA28XA y
USB_SERIAL_KEYSPAN_USA28XB y
USB_SERIAL_KEYSPAN_USA19 y
USB_SERIAL_KEYSPAN_USA18X y
USB_SERIAL_KEYSPAN_USA19W y
USB_SERIAL_KEYSPAN_USA19QW y
USB_SERIAL_KEYSPAN_USA19QI y
USB_SERIAL_KEYSPAN_USA49W y
USB_SERIAL_KEYSPAN_USA49WLC y
# Filesystem options - in particular, enable extended attributes and
# ACLs for all filesystems that support them.
EXT2_FS_XATTR y # Ext2 extended attributes
EXT2_FS_POSIX_ACL y # Ext2 POSIX Access Control Lists
EXT2_FS_SECURITY y # Ext2 Security Labels
EXT2_FS_XIP y # Ext2 execute in place support
EXT4_FS_POSIX_ACL y
EXT4_FS_SECURITY y
REISERFS_FS_XATTR y
REISERFS_FS_POSIX_ACL y
REISERFS_FS_SECURITY y
JFS_POSIX_ACL y
JFS_SECURITY y
XFS_QUOTA y
XFS_POSIX_ACL y
XFS_RT y # XFS Realtime subvolume support
OCFS2_DEBUG_MASKLOG n
BTRFS_FS_POSIX_ACL y
UBIFS_FS_XATTR y
UBIFS_FS_ADVANCED_COMPR y
NFSD_V2_ACL y
NFSD_V3 y
NFSD_V3_ACL y
NFSD_V4 y
CIFS_XATTR y
CIFS_POSIX y
# Security related features.
STRICT_DEVMEM y # Filter access to /dev/mem
SECURITY_SELINUX_BOOTPARAM_VALUE 0 # disable SELinux by default
# Misc. options.
8139TOO_8129 y
8139TOO_PIO n # PIO is slower
AIC79XX_DEBUG_ENABLE n
AIC7XXX_DEBUG_ENABLE n
AIC94XX_DEBUG n
B43_PCMCIA y
BLK_DEV_BSG n
BLK_DEV_CMD640_ENHANCED y # CMD640 enhanced support
BLK_DEV_IDEACPI y # IDE ACPI support
BLK_DEV_INTEGRITY y
BSD_PROCESS_ACCT_V3 y
BT_HCIUART_BCSP y
BT_HCIUART_H4 y # UART (H4) protocol support
BT_HCIUART_LL y
BT_RFCOMM_TTY y # RFCOMM TTY support
CPU_FREQ_DEBUG n
CRASH_DUMP n
DMAR? n # experimental
DVB_DYNAMIC_MINORS y # we use udev
FUSION y # Fusion MPT device support
IDE_GD_ATAPI y # ATAPI floppy support
IRDA_ULTRA y # Ultra (connectionless) protocol
JOYSTICK_IFORCE_232 y # I-Force Serial joysticks and wheels
JOYSTICK_IFORCE_USB y # I-Force USB joysticks and wheels
JOYSTICK_XPAD_FF y # X-Box gamepad rumble support
JOYSTICK_XPAD_LEDS y # LED Support for Xbox360 controller 'BigX' LED
KALLSYMS_EXTRA_PASS n
LDM_PARTITION y # Windows Logical Disk Manager (Dynamic Disk) support
LEDS_TRIGGER_IDE_DISK y # LED IDE Disk Trigger
LOGIRUMBLEPAD2_FF y # Logitech Rumblepad 2 force feedback
LOGO n # not needed
MEDIA_ATTACH y
MEGARAID_NEWGEN y
MICROCODE_AMD y
MODVERSIONS y
MOUSE_PS2_ELANTECH y # Elantech PS/2 protocol extension
MTRR_SANITIZER y
NET_FC y # Fibre Channel driver support
PPP_MULTILINK y # PPP multilink support
REGULATOR y # Voltage and Current Regulator Support
SCSI_LOGGING y # SCSI logging facility
SERIAL_8250 y # 8250/16550 and compatible serial support
SLIP_COMPRESSED y # CSLIP compressed headers
SLIP_SMART y
THERMAL_HWMON y # Hardware monitoring support
USB_DEBUG n
USB_EHCI_ROOT_HUB_TT y # Root Hub Transaction Translators
X86_CHECK_BIOS_CORRUPTION y
X86_MCE y
# Allow up to 128 GiB of RAM in Xen domains.
XEN_MAX_DOMAIN_MEMORY 128
# PROC_EVENTS requires that the netlink connector is not built
# as a module. This is required by libcgroup's cgrulesengd.
CONNECTOR y
PROC_EVENTS y
# Devtmpfs support.
DEVTMPFS y
${if kernelPlatform ? kernelExtraConfig then kernelPlatform.kernelExtraConfig else ""}
${extraConfig}
'';
in
import ./generic.nix (
rec {
version = "2.6.35.14";
src = fetchurl {
url = "mirror://kernel/linux/kernel/v2.6/longterm/v2.6.35/linux-${version}.tar.bz2";
sha256 = "1wzml7s9karfbk2yi36g1r8fyaq4d4f16yizc68zgchv0xzj39zl";
};
config = configWithPlatform stdenv.platform;
configCross = configWithPlatform stdenv.cross.platform;
features.iwlwifi = true;
}
// removeAttrs args ["extraConfig"]
)

View file

@ -173,6 +173,7 @@ let
CRASH_DUMP n
DMAR? n # experimental
DVB_DYNAMIC_MINORS y # we use udev
FHANDLE y # used by systemd
FUSION y # Fusion MPT device support
IDE_GD_ATAPI y # ATAPI floppy support
IRDA_ULTRA y # Ultra (connectionless) protocol

View file

@ -176,6 +176,7 @@ let
CRASH_DUMP n
DMAR? n # experimental
DVB_DYNAMIC_MINORS y # we use udev
FHANDLE y # used by systemd
FUSION y # Fusion MPT device support
IDE_GD_ATAPI y # ATAPI floppy support
IRDA_ULTRA y # Ultra (connectionless) protocol
@ -239,7 +240,7 @@ in
import ./generic.nix (
rec {
version = "3.2.41";
version = "3.2.42";
modDirVersion = version;
@ -249,7 +250,7 @@ import ./generic.nix (
src = fetchurl {
url = "mirror://kernel/linux/kernel/v3.0/linux-${version}.tar.xz";
sha256 = "0dwk0pg07kq5s4i8h0mzv4n3dc68hp0ayd1lqis3ix86m8qkhv4j";
sha256 = "17cwyv474pnwj7i7i513l6g1iz8sp92gvf0crpmrrvv93064xz08";
};
config = configWithPlatform stdenv.platform;

View file

@ -177,6 +177,7 @@ let
DMAR? n # experimental
DVB_DYNAMIC_MINORS y # we use udev
EFI_STUB y # EFI bootloader in the bzImage itself
FHANDLE y # used by systemd
FUSION y # Fusion MPT device support
IDE_GD_ATAPI y # ATAPI floppy support
IRDA_ULTRA y # Ultra (connectionless) protocol

View file

@ -178,6 +178,7 @@ let
DMAR? n # experimental
DVB_DYNAMIC_MINORS? y # we use udev
EFI_STUB y # EFI bootloader in the bzImage itself
FHANDLE y # used by systemd
FUSION y # Fusion MPT device support
IDE_GD_ATAPI y # ATAPI floppy support
IRDA_ULTRA y # Ultra (connectionless) protocol

View file

@ -178,6 +178,7 @@ let
DMAR? n # experimental
DVB_DYNAMIC_MINORS? y # we use udev
EFI_STUB y # EFI bootloader in the bzImage itself
FHANDLE y # used by systemd
FUSION y # Fusion MPT device support
IDE_GD_ATAPI y # ATAPI floppy support
IRDA_ULTRA y # Ultra (connectionless) protocol

View file

@ -178,6 +178,7 @@ let
DMAR? n # experimental
DVB_DYNAMIC_MINORS? y # we use udev
EFI_STUB y # EFI bootloader in the bzImage itself
FHANDLE y # used by systemd
FUSION y # Fusion MPT device support
IDE_GD_ATAPI y # ATAPI floppy support
IRDA_ULTRA y # Ultra (connectionless) protocol

View file

@ -2,24 +2,6 @@
let
fbcondecorConfig =
''
FB_CON_DECOR y
# fbcondecor is picky about some other settings.
FB y
FB_TILEBLITTING n
FB_MATROX n
FB_S3 n
FB_VT8623 n
FB_ARK n
FB_CFB_FILLRECT y
FB_CFB_COPYAREA y
FB_CFB_IMAGEBLIT y
FB_VESA y
FRAMEBUFFER_CONSOLE y
'';
makeTuxonicePatch = { version, kernelVersion, sha256,
url ? "http://tuxonice.net/files/tuxonice-${version}-for-${kernelVersion}.patch.bz2" }:
{ name = "tuxonice-${kernelVersion}";
@ -64,47 +46,6 @@ rec {
features.secPermPatch = true;
};
fbcondecor_2_6_31 =
{ name = "fbcondecor-0.9.6-2.6.31.2";
patch = fetchurl {
url = http://dev.gentoo.org/~spock/projects/fbcondecor/archive/fbcondecor-0.9.6-2.6.31.2.patch;
sha256 = "1avk0yn0y2qbpsxf31r6d14y4a1mand01r4k4i71yfxvpqcgxka9";
};
extraConfig = fbcondecorConfig;
features.fbConDecor = true;
};
fbcondecor_2_6_35 =
rec {
name = "fbcondecor-0.9.6-2.6.35-rc4";
patch = fetchurl {
url = "http://dev.gentoo.org/~spock/projects/fbcondecor/archive/${name}.patch";
sha256 = "0dlks1arr3b3hlmw9k1a1swji2x655why61sa0aahm62faibsg1r";
};
extraConfig = fbcondecorConfig;
features.fbConDecor = true;
};
aufs2_2_6_32 =
{ # From http://git.c3sl.ufpr.br/gitweb?p=aufs/aufs2-standalone.git;a=tree;h=refs/heads/aufs2-32;hb=aufs2-32
# Note that this merely the patch needed to build AUFS2 as a
# standalone package.
name = "aufs2";
patch = ./aufs2.patch;
features.aufsBase = true;
features.aufs2 = true;
};
aufs2_2_6_35 =
{ # From http://git.c3sl.ufpr.br/gitweb?p=aufs/aufs2-standalone.git;a=tree;h=refs/heads/aufs2-35;hb=aufs2-35
# Note that this merely the patch needed to build AUFS2 as a
# standalone package.
name = "aufs2";
patch = ./aufs2-35.patch;
features.aufsBase = true;
features.aufs2 = true;
};
aufs3_0 = rec {
name = "aufs3.0";
version = "3.0.20121210";
@ -164,24 +105,6 @@ rec {
# Increase the timeout on CIFS requests from 15 to 120 seconds to
# make CIFS more resilient to high load on the CIFS server.
cifs_timeout_2_6_15 =
{ name = "cifs-timeout";
patch = ./cifs-timeout-2.6.15.patch;
features.cifsTimeout = true;
};
cifs_timeout_2_6_29 =
{ name = "cifs-timeout";
patch = ./cifs-timeout-2.6.29.patch;
features.cifsTimeout = true;
};
cifs_timeout_2_6_35 =
{ name = "cifs-timeout";
patch = ./cifs-timeout-2.6.35.patch;
features.cifsTimeout = true;
};
cifs_timeout_2_6_38 =
{ name = "cifs-timeout";
patch = ./cifs-timeout-2.6.38.patch;
@ -194,16 +117,6 @@ rec {
features.noXsave = true;
};
dell_rfkill =
{ name = "dell-rfkill";
patch = ./dell-rfkill.patch;
};
sheevaplug_modules_2_6_35 =
{ name = "sheevaplug_modules-2.6.35";
patch = ./sheevaplug_modules-2.6.35.patch;
};
mips_fpureg_emu =
{ name = "mips-fpureg-emulation";
patch = ./mips-fpureg-emulation.patch;

View file

@ -1,63 +0,0 @@
http://www.mail-archive.com/armedslack@lists.armedslack.org/msg00212.html
From d0679c730395d0bde9a46939e7ba255b4ba7dd7c Mon Sep 17 00:00:00 2001
From: Andi Kleen <andi@firstfloor.org>
Date: Tue, 2 Feb 2010 14:40:02 -0800
Subject: [PATCH] kbuild: move -fno-dwarf2-cfi-asm to powerpc only
Better dwarf2 unwind information is a good thing, it allows better
debugging with kgdb and crash and helps systemtap.
Commit 003086497f07f7f1e67c0c295e261740f822b377 ("Build with
-fno-dwarf2-cfi-asm") disabled some CFI information globally to work
around a module loader bug on powerpc.
But this disables the better unwind tables for all architectures, not just
powerpc. Move the workaround to powerpc and also add a suitable comment
that's it really a workaround.
This improves dwarf2 unwind tables on x86 at least.
Signed-off-by: Andi Kleen <ak@linux.intel.com>
Cc: Kyle McMartin <kyle@mcmartin.ca>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Acked-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Michal Marek <mmarek@suse.cz>
---
Makefile | 3 ---
arch/powerpc/Makefile | 5 +++++
2 files changed, 5 insertions(+), 3 deletions(-)
diff --git a/Makefile b/Makefile
index 03053c6..2e74a68 100644
--- a/Makefile
+++ b/Makefile
@@ -579,6 +579,9 @@ KBUILD_CFLAGS += $(call cc-option,-Wno-pointer-sign,)
# disable invalid "can't wrap" optimizations for signed / pointers
KBUILD_CFLAGS += $(call cc-option,-fno-strict-overflow)
+# revert to pre-gcc-4.4 behaviour of .eh_frame
+KBUILD_CFLAGS += $(call cc-option,-fno-dwarf2-cfi-asm)
+
# conserve stack if available
KBUILD_CFLAGS += $(call cc-option,-fconserve-stack)
diff --git a/arch/powerpc/Makefile b/arch/powerpc/Makefile
index 1a54a3b..42dcd3f 100644
--- a/arch/powerpc/Makefile
+++ b/arch/powerpc/Makefile
@@ -112,11 +112,6 @@ KBUILD_CFLAGS += $(call cc-option,-mspe=no)
# kernel considerably.
KBUILD_CFLAGS += $(call cc-option,-funit-at-a-time)
-# FIXME: the module load should be taught about the additional relocs
-# generated by this.
-# revert to pre-gcc-4.4 behaviour of .eh_frame
-KBUILD_CFLAGS += $(call cc-option,-fno-dwarf2-cfi-asm)
-
# Never use string load/store instructions as they are
# often slow when they are implemented at all
KBUILD_CFLAGS += -mno-string
--
1.7.3.1

View file

@ -1,7 +1,7 @@
From 0085f49cd0ba889e3db9102f328f6044ae3a2c18 Mon Sep 17 00:00:00 2001
From ebbb4bc256e1ed53c594fc54d9e1a9faf5a5f77a Mon Sep 17 00:00:00 2001
From: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Tue, 8 Jan 2013 15:44:33 +0100
Subject: [PATCH 1/6] Make "systemctl daemon-reexec" do the right thing on
Subject: [PATCH 1/8] Make "systemctl daemon-reexec" do the right thing on
NixOS
---
@ -9,10 +9,10 @@ Subject: [PATCH 1/6] Make "systemctl daemon-reexec" do the right thing on
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/core/main.c b/src/core/main.c
index 1ee3c9c..1686f60 100644
index 25f55fc..c2e42b7 100644
--- a/src/core/main.c
+++ b/src/core/main.c
@@ -1858,7 +1858,7 @@ finish:
@@ -1887,7 +1887,7 @@ finish:
char_array_0(sfd);
i = 0;
@ -22,5 +22,5 @@ index 1ee3c9c..1686f60 100644
args[i++] = "--switched-root";
args[i++] = arg_running_as == SYSTEMD_SYSTEM ? "--system" : "--user";
--
1.8.0.1
1.8.1

View file

@ -1,30 +1,29 @@
From 2b0a9106d3aabb365af0cc34b595a1e697120f37 Mon Sep 17 00:00:00 2001
From 64c36ac79fca8f0214faed8b7aff19b379b1ac1b Mon Sep 17 00:00:00 2001
From: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Tue, 8 Jan 2013 15:45:01 +0100
Subject: [PATCH 2/6] Ignore duplicate paths in "systemctl start"
Subject: [PATCH 2/8] Ignore duplicate paths in "systemctl start"
---
src/systemctl/systemctl.c | 7 +++++--
1 file changed, 5 insertions(+), 2 deletions(-)
src/systemctl/systemctl.c | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/src/systemctl/systemctl.c b/src/systemctl/systemctl.c
index 2ebfff8..9f99df5 100644
index edd136a..86ce32a 100644
--- a/src/systemctl/systemctl.c
+++ b/src/systemctl/systemctl.c
@@ -1591,8 +1591,11 @@ static int start_unit_one(
@@ -1510,8 +1510,10 @@ static int start_unit_one(
r = set_put(s, p);
if (r < 0) {
free(p);
- log_error("Failed to add path to set.");
- return r;
+ free(p);
+ if (r != -EEXIST) {
+ log_error("Failed to add path %s to set.", p);
+ return r;
+ }
}
}
p = NULL;
--
1.8.0.1
1.8.1

View file

@ -1,7 +1,7 @@
From a013beb84f135cebf1c8c9363d5676c1c0a6be7a Mon Sep 17 00:00:00 2001
From 776093e73b86bcddfeb0971cb6267d13d07f0a81 Mon Sep 17 00:00:00 2001
From: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Tue, 8 Jan 2013 15:46:30 +0100
Subject: [PATCH 3/6] Start device units for uninitialised encrypted devices
Subject: [PATCH 3/8] Start device units for uninitialised encrypted devices
This is necessary because the NixOS service that initialises the
filesystem depends on the appearance of the device unit. Also, this
@ -28,5 +28,5 @@ index d17bdd9..040b10e 100644
SUBSYSTEM=="block", ENV{DEVTYPE}=="disk", KERNEL=="md*", TEST!="md/array_state", ENV{SYSTEMD_READY}="0"
SUBSYSTEM=="block", ENV{DEVTYPE}=="disk", KERNEL=="md*", ATTR{md/array_state}=="|clear|inactive", ENV{SYSTEMD_READY}="0"
--
1.8.0.1
1.8.1

View file

@ -1,7 +1,7 @@
From b40d8783f94666035baae567882c0d4be82cda01 Mon Sep 17 00:00:00 2001
From 0bc7513439a8b77f62bc8ebcf220b77f83321b75 Mon Sep 17 00:00:00 2001
From: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Tue, 8 Jan 2013 15:48:19 +0100
Subject: [PATCH 4/6] Set switch-to-configuration hints for some units
Subject: [PATCH 4/8] Set switch-to-configuration hints for some units
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
@ -24,22 +24,22 @@ to prevent all user sessions from being killed when this unit changes.
4 files changed, 12 insertions(+)
diff --git a/units/local-fs.target b/units/local-fs.target
index dd92b17..dfcbc7b 100644
index ee02e4e..63ae843 100644
--- a/units/local-fs.target
+++ b/units/local-fs.target
@@ -10,3 +10,5 @@ Description=Local File Systems
Documentation=man:systemd.special(7)
@@ -11,3 +11,5 @@ Documentation=man:systemd.special(7)
After=local-fs-pre.target
OnFailure=emergency.target
OnFailureIsolate=yes
+
+X-StopOnReconfiguration=yes
diff --git a/units/remote-fs.target b/units/remote-fs.target
index 9e68878..85a53d7 100644
index e867b8d..02462b4 100644
--- a/units/remote-fs.target
+++ b/units/remote-fs.target
@@ -9,5 +9,7 @@
Description=Remote File Systems
@@ -10,5 +10,7 @@ Description=Remote File Systems
Documentation=man:systemd.special(7)
After=remote-fs-pre.target remote-fs-setup.target
+X-StopOnReconfiguration=yes
+
@ -70,5 +70,5 @@ index 0869e73..b6ed958 100644
+# Restart kills all active sessions.
+X-RestartIfChanged=no
--
1.8.0.1
1.8.1

View file

@ -1,7 +1,7 @@
From c5c8ac3a0420fb42ba2f629368fd5bd6ea1e753b Mon Sep 17 00:00:00 2001
From 5337d8f5a555f83ba8731472a2f3b0d36ac607d9 Mon Sep 17 00:00:00 2001
From: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Tue, 8 Jan 2013 15:56:03 +0100
Subject: [PATCH 5/6] sysinit.target: Drop the dependency on local-fs.target
Subject: [PATCH 5/8] sysinit.target: Drop the dependency on local-fs.target
and swap.target
Having all services with DefaultDependencies=yes depend on
@ -29,5 +29,5 @@ index 8f4fb8f..e0f0147 100644
+After=emergency.service emergency.target
RefuseManualStart=yes
--
1.8.0.1
1.8.1

View file

@ -1,7 +1,7 @@
From d3caa154098e215145679f38fa92a8bd482107be Mon Sep 17 00:00:00 2001
From b944fede26773167cb6a9f86888a9209dda4c35e Mon Sep 17 00:00:00 2001
From: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Tue, 8 Jan 2013 18:36:28 +0100
Subject: [PATCH 6/6] Don't call "plymouth quit"
Subject: [PATCH 6/8] Don't call "plymouth quit"
NixOS doesn't use Plymouth (yet).
---
@ -34,5 +34,5 @@ index 269797a..2c640f4 100644
ExecStart=-/sbin/sulogin
ExecStopPost=-@SYSTEMCTL@ --fail --no-block default
--
1.8.0.1
1.8.1

View file

@ -1,4 +1,4 @@
From ab889004b8972258a87798133451f99dfce21823 Mon Sep 17 00:00:00 2001
From b9f175c7b3ea6ac34d148f5afba598f985c5b9fe Mon Sep 17 00:00:00 2001
From: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Mon, 4 Feb 2013 12:41:14 +0100
Subject: [PATCH 7/8] Ignore IPv6 link-local addresses

View file

@ -1,42 +0,0 @@
From ef9b259ae24e7bf4ebec04b0b0a44964bc661bb5 Mon Sep 17 00:00:00 2001
From: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Mon, 4 Feb 2013 12:43:08 +0100
Subject: [PATCH 8/8] Fix a segfault in nscd when using nss-myhostname
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Nscd expects that an NSS module's gethostbyname4_r function returns
its first result in the pre-allocated gaih_addrtuple denoted by **pat.
(See nscd/aicache.c in the Glibc sources.) However, nss-myhostname
doesn't fill in **pat but allocates the first result in buffer, then
sets *pat. So nscd crashes (e.g. when running getent ahosts
my-machine).
Hard to tell if this is a bug in nscd, since there doesn't seem to be
a proper API spec for gethostbyname4_r. But in any case, this patch
fixes the crash by copying the first result to **pat.
---
src/nss-myhostname/nss-myhostname.c | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)
diff --git a/src/nss-myhostname/nss-myhostname.c b/src/nss-myhostname/nss-myhostname.c
index 834a806..b0fb832 100644
--- a/src/nss-myhostname/nss-myhostname.c
+++ b/src/nss-myhostname/nss-myhostname.c
@@ -176,7 +176,11 @@ enum nss_status _nss_myhostname_gethostbyname4_r(
/* Verify the size matches */
assert(idx == ms);
- *pat = r_tuple_prev;
+ /* Nscd expects us to store the first record in **pat. */
+ if (*pat)
+ **pat = *r_tuple_prev;
+ else
+ *pat = r_tuple_prev;
if (ttlp)
*ttlp = 0;
--
1.8.1

View file

@ -0,0 +1,28 @@
From dcfb048af5face4787ecdf29c00454898c52963d Mon Sep 17 00:00:00 2001
From: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Wed, 27 Mar 2013 13:33:09 +0100
Subject: [PATCH 8/8] systemd-sysctl: Handle missing /etc/sysctl.conf properly
Since fabe5c0e5fce730aa66e10a9c4f9fdd443d7aeda, systemd-sysctl returns
a non-zero exit code if /etc/sysctl.conf does not exist, due to a
broken ENOENT check.
---
src/sysctl/sysctl.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/sysctl/sysctl.c b/src/sysctl/sysctl.c
index 2d43660..79f3f77 100644
--- a/src/sysctl/sysctl.c
+++ b/src/sysctl/sysctl.c
@@ -125,7 +125,7 @@ static int parse_file(Hashmap *sysctl_options, const char *path, bool ignore_eno
r = search_and_fopen_nulstr(path, "re", conf_file_dirs, &f);
if (r < 0) {
- if (ignore_enoent && errno == -ENOENT)
+ if (ignore_enoent && r == -ENOENT)
return 0;
log_error("Failed to open file '%s', ignoring: %s", path, strerror(-r));
--
1.8.1

View file

@ -1,16 +1,16 @@
{ stdenv, fetchurl, pkgconfig, intltool, gperf, libcap, dbus, kmod
, xz, pam, acl, cryptsetup, libuuid, m4, utillinux
, glib, kbd, libxslt, coreutils, libgcrypt, sysvtools
, glib, kbd, libxslt, coreutils, libgcrypt, sysvtools, docbook_xsl
}:
assert stdenv.gcc.libc or null != null;
stdenv.mkDerivation rec {
name = "systemd-197";
name = "systemd-199";
src = fetchurl {
url = "http://www.freedesktop.org/software/systemd/${name}.tar.xz";
sha256 = "1dbljyyc3w4a1af99f15f3sqnfx7mfmc5x5hwxb70kg23ai7x1g6";
sha256 = "1vazjqi95pri5zx21gs4chyd7c8kg5lf1rc26w47zkry9yh64i4c";
};
patches =
@ -21,12 +21,12 @@ stdenv.mkDerivation rec {
./0005-sysinit.target-Drop-the-dependency-on-local-fs.targe.patch
./0006-Don-t-call-plymouth-quit.patch
./0007-Ignore-IPv6-link-local-addresses.patch
./0008-Fix-a-segfault-in-nscd-when-using-nss-myhostname.patch
./0008-systemd-sysctl-Handle-missing-etc-sysctl.conf-proper.patch
] ++ stdenv.lib.optional stdenv.isArm ./libc-bug-accept4-arm.patch;
buildInputs =
[ pkgconfig intltool gperf libcap dbus kmod xz pam acl
/* cryptsetup */ libuuid m4 glib libxslt libgcrypt
/* cryptsetup */ libuuid m4 glib libxslt libgcrypt docbook_xsl
];
configureFlags =
@ -40,7 +40,7 @@ stdenv.mkDerivation rec {
"--with-dbuspolicydir=$(out)/etc/dbus-1/system.d"
"--with-dbussystemservicedir=$(out)/share/dbus-1/system-services"
"--with-dbussessionservicedir=$(out)/share/dbus-1/services"
"--with-firmware-path=/root/test-firmware:/var/run/current-system/firmware"
"--with-firmware-path=/root/test-firmware:/run/current-system/firmware"
"--with-tty-gid=3" # tty in NixOS has gid 3
];
@ -69,11 +69,13 @@ stdenv.mkDerivation rec {
NIX_CFLAGS_COMPILE =
[ # Can't say ${polkit}/bin/pkttyagent here because that would
# lead to a cyclic dependency.
"-DPOLKIT_AGENT_BINARY_PATH=\"/run/current-system/sw/bin/pkttyagent\""
"-UPOLKIT_AGENT_BINARY_PATH -DPOLKIT_AGENT_BINARY_PATH=\"/run/current-system/sw/bin/pkttyagent\""
"-fno-stack-protector"
# Work around our kernel headers being too old. FIXME: remove
# this after the next stdenv update.
"-DFS_NOCOW_FL=0x00800000"
# Enable udev's firmware builtin for now.
"-DENABLE_FIRMWARE=1"
];
# Use /var/lib/udev rather than /etc/udev for the generated hardware
@ -81,7 +83,7 @@ stdenv.mkDerivation rec {
# 1e1954f53386cb773e2a152748dd31c4d36aa2d8) because using /var is
# forbidden in early boot, but in NixOS the initrd guarantees that
# /var is mounted.
makeFlags = "CPPFLAGS=-I${stdenv.gcc.libc}/include hwdb_bin=/var/lib/udev/hwdb.bin";
makeFlags = "hwdb_bin=/var/lib/udev/hwdb.bin";
installFlags = "localstatedir=$(TMPDIR)/var sysconfdir=$(out)/etc sysvinitdir=$(TMPDIR)/etc/init.d";

View file

@ -12,12 +12,12 @@ assert ldapSupport -> aprutil.ldapSupport && openldap != null;
assert mpm == "prefork" || mpm == "worker" || mpm == "event";
stdenv.mkDerivation rec {
version = "2.2.23";
version = "2.2.24";
name = "apache-httpd-${version}";
src = fetchurl {
url = "mirror://apache/httpd/httpd-${version}.tar.bz2";
sha1 = "2776145201068045d4ed83157a0e2e1c28c4c453";
sha1 = "f73bce14832ec40c1aae68f4f8c367cab2266241";
};
buildInputs = [perl apr aprutil pcre] ++

View file

@ -1,11 +1,11 @@
{ stdenv, fetchurl, boostHeaders }:
stdenv.mkDerivation rec {
name = "mini-httpd-1.3";
name = "mini-httpd-1.4";
src = fetchurl {
url = "mirror://savannah/mini-httpd/${name}.tar.gz";
sha256 = "16n33hyp3fcjvd71yrny3ym3kqvxr1jy2hh9wgf6b7zjri3gfak3";
sha256 = "1i46klkx2ca1cgmlilajkx8gf7b7d7c2sj58llxfllh184pb6cpd";
};
buildInputs = [ boostHeaders ];

View file

@ -1,15 +1,44 @@
{ stdenv, fetchurl, buildPythonPackage, pythonPackages }:
{ stdenv, fetchurl, buildPythonPackage, pythonPackages, pyqt4 ? null, sip ? null
, notebookSupport ? true # ipython notebook
, qtconsoleSupport ? true # ipython qtconsole
, pylabSupport ? true # ipython --pylab (backend: agg - no gui, just file)
, pylabQtSupport ? true # ipython --pylab=qt (backend: Qt4Agg - plot to window)
}:
# ipython qtconsole works with both pyside and pyqt4. But ipython --pylab=qt
# only works with pyqt4 (at least this is true for ipython 0.13.1). So just use
# pyqt4 for both.
assert qtconsoleSupport == true -> pyqt4 != null;
assert pylabQtSupport == true -> pyqt4 != null && sip != null;
buildPythonPackage rec {
name = "ipython-0.13";
name = "ipython-0.13.1";
namePrefix = "";
src = fetchurl {
url = "http://pypi.python.org/packages/source/i/ipython/${name}.tar.gz";
sha256 = "1m4m0zf3llnicfgrbnl2h08p3662px7v2pzbhq4fq24vnyz6x5w2";
sha256 = "1h7q2zlyfn7si2vf6gnq2d0krkm1f5jy5nbi105by7zxqjai1grv";
};
propagatedBuildInputs = [ pythonPackages.readline pythonPackages.sqlite3 pythonPackages.tornado pythonPackages.pyzmq ];
propagatedBuildInputs = [
pythonPackages.readline
pythonPackages.sqlite3 # required for history support
] ++ stdenv.lib.optionals notebookSupport [
pythonPackages.tornado
pythonPackages.pyzmq
pythonPackages.jinja2
] ++ stdenv.lib.optionals qtconsoleSupport [
pythonPackages.pygments
pythonPackages.pyzmq
pyqt4
] ++ stdenv.lib.optionals pylabSupport [
pythonPackages.matplotlib
] ++ stdenv.lib.optionals pylabQtSupport [
pythonPackages.matplotlib
pyqt4
sip
];
doCheck = false;

View file

@ -15,6 +15,11 @@ stdenv.mkDerivation rec {
"--with-postgresql=${postgresql}"
];
postInstall = ''
mkdir -p $out/bin
ln -s $out/sbin/* $out/bin
'';
meta = {
description = "Enterprise ready, Network Backup Tool";
homepage = http://bacula.org/;

View file

@ -0,0 +1,19 @@
{stdenv, fetchurl, readline}:
stdenv.mkDerivation {
name = "renameutils-0.12";
src = fetchurl {
url = mirror://savannah/renameutils/renameutils-0.12.0.tar.gz;
sha256 = "18xlkr56jdyajjihcmfqlyyanzyiqqlzbhrm6695mkvw081g1lnb";
};
patches = [ ./install-exec.patch ];
nativeBuildInputs = [ readline ];
meta = {
homepage = http://www.nongnu.org/renameutils/;
description = "A set of programs to make renaming of files faster";
};
}

View file

@ -0,0 +1,24 @@
diff -Naur renameutils-0.12.0-orig/src/Makefile.am renameutils-0.12.0/src/Makefile.am
--- renameutils-0.12.0-orig/src/Makefile.am 2012-04-23 12:10:43.000000000 +0100
+++ renameutils-0.12.0/src/Makefile.am 2013-03-25 11:13:21.605447377 +0000
@@ -49,7 +49,7 @@
@[ -f icp ] || (echo $(LN_S) icmd icp ; $(LN_S) icmd icp)
install-exec-local:
- $(mkdir_p) $(DESTDIR)($bindir)
+ $(mkdir_p) $(DESTDIR)$(bindir)
@[ -f $(DESTDIR)$(bindir)/qmv ] || (echo $(LN_S) qcmd $(DESTDIR)$(bindir)/qmv ; $(LN_S) qcmd $(DESTDIR)$(bindir)/qmv)
@[ -f $(DESTDIR)$(bindir)/qcp ] || (echo $(LN_S) qcmd $(DESTDIR)$(bindir)/qcp ; $(LN_S) qcmd $(DESTDIR)$(bindir)/qcp)
@[ -f $(DESTDIR)$(bindir)/imv ] || (echo $(LN_S) icmd $(DESTDIR)$(bindir)/imv ; $(LN_S) icmd $(DESTDIR)$(bindir)/imv)
diff -Naur renameutils-0.12.0-orig/src/Makefile.in renameutils-0.12.0/src/Makefile.in
--- renameutils-0.12.0-orig/src/Makefile.in 2012-04-23 12:24:10.000000000 +0100
+++ renameutils-0.12.0/src/Makefile.in 2013-03-25 11:13:40.549847891 +0000
@@ -1577,7 +1577,7 @@
@[ -f icp ] || (echo $(LN_S) icmd icp ; $(LN_S) icmd icp)
install-exec-local:
- $(mkdir_p) $(DESTDIR)($bindir)
+ $(mkdir_p) $(DESTDIR)$(bindir)
@[ -f $(DESTDIR)$(bindir)/qmv ] || (echo $(LN_S) qcmd $(DESTDIR)$(bindir)/qmv ; $(LN_S) qcmd $(DESTDIR)$(bindir)/qmv)
@[ -f $(DESTDIR)$(bindir)/qcp ] || (echo $(LN_S) qcmd $(DESTDIR)$(bindir)/qcp ; $(LN_S) qcmd $(DESTDIR)$(bindir)/qcp)
@[ -f $(DESTDIR)$(bindir)/imv ] || (echo $(LN_S) icmd $(DESTDIR)$(bindir)/imv ; $(LN_S) icmd $(DESTDIR)$(bindir)/imv)

View file

@ -0,0 +1,28 @@
{ stdenv, fetchurl, ncurses }:
stdenv.mkDerivation {
name = "sl-3.03";
src = fetchurl {
url = "http://www.tkl.iis.u-tokyo.ac.jp/~toyoda/sl/sl.tar";
sha256 = "1x3517aza0wm9hhb02npl8s7xy947cdidxmans27q0gjmj3bvg5j";
};
patchPhase = ''
sed -i "s/-lcurses -ltermcap/-lncurses/" Makefile
'';
buildInputs = [ ncurses ];
installPhase = ''
ensureDir $out/bin
cp sl $out/bin
'';
meta = {
homepage = http://www.tkl.iis.u-tokyo.ac.jp/~toyoda/index_e.html;
license = "unfree"; # I couldn't find its license, only a copyright.
description = "Steam Locomotive runs across your terminal when you type 'sl'";
platforms = with stdenv.lib.platforms; linux;
};
}

View file

@ -5,11 +5,11 @@
}:
stdenv.mkDerivation rec {
name = "nix-1.5.2pre3079_c3fc60d";
name = "nix-1.5.2pre3082_2398417";
src = fetchurl {
url = "http://hydra.nixos.org/build/4445767/download/5/${name}.tar.xz";
sha256 = "0422ceb1439cf1140e86f86514bdcb04b0706881ea31a9f6ee5206b9faad009b";
url = "http://hydra.nixos.org/build/4480483/download/5/${name}.tar.xz";
sha256 = "efea03fd9e15f52564ecfe6942bf9e8a757ef2e83b6ad9832f214342b2cbba83";
};
nativeBuildInputs = [ perl pkgconfig ];

View file

@ -652,6 +652,8 @@ let
ddrescue = callPackage ../tools/system/ddrescue { };
deluge = pythonPackages.deluge;
desktop_file_utils = callPackage ../tools/misc/desktop-file-utils { };
despotify = callPackage ../development/libraries/despotify { };
@ -1476,6 +1478,8 @@ let
remmina = callPackage ../applications/networking/remote/remmina {};
renameutils = callPackage ../tools/misc/renameutils { };
replace = callPackage ../tools/text/replace { };
reptyr = callPackage ../os-specific/linux/reptyr {};
@ -1577,6 +1581,8 @@ let
fusesmb = callPackage ../tools/filesystems/fusesmb { };
sl = callPackage ../tools/misc/sl { };
socat = callPackage ../tools/networking/socat { };
sourceHighlight = callPackage ../tools/text/source-highlight { };
@ -2181,7 +2187,7 @@ let
stdenv = overrideGCC stdenv (wrapGCCWith (import ../build-support/gcc-wrapper) glibc_multi gcc.gcc);
profiledCompiler = false;
enableMultilib = true;
})) else throw "Multilib gcc not supported on this system";
})) else throw "Multilib gcc not supported on ${system}";
gcc47_real = lowPrio (wrapGCC (callPackage ../development/compilers/gcc/4.7 {
inherit noSysDirs;
@ -2856,8 +2862,7 @@ let
pure = callPackage ../development/interpreters/pure {};
python3 = python32;
python32 = callPackage ../development/interpreters/python/3.2 { };
python3 = hiPrio (callPackage ../development/interpreters/python/3.3 { });
python = python27;
python26 = callPackage ../development/interpreters/python/2.6 { };
@ -4691,6 +4696,8 @@ let
opensc = opensc_0_11_7;
};
opencolorio = callPackage ../development/libraries/opencolorio { };
ois = callPackage ../development/libraries/ois {};
opal = callPackage ../development/libraries/opal {};
@ -5813,53 +5820,10 @@ let
kernelPatches = callPackage ../os-specific/linux/kernel/patches.nix { };
linux_2_6_15 = makeOverridable (import ../os-specific/linux/kernel/linux-2.6.15.nix) {
inherit fetchurl perl mktemp module_init_tools;
stdenv = overrideInStdenv stdenv [ gcc34 gnumake381 ];
kernelPatches =
[ kernelPatches.cifs_timeout_2_6_15
];
};
linux_2_6_32 = makeOverridable (import ../os-specific/linux/kernel/linux-2.6.32.nix) {
inherit fetchurl stdenv perl mktemp module_init_tools ubootChooser;
kernelPatches =
[ kernelPatches.fbcondecor_2_6_31
kernelPatches.sec_perm_2_6_24
# kernelPatches.aufs2_2_6_32
kernelPatches.cifs_timeout_2_6_29
# kernelPatches.no_xsave # doesn't apply anymore
kernelPatches.dell_rfkill
];
};
linux_2_6_35 = makeOverridable (import ../os-specific/linux/kernel/linux-2.6.35.nix) {
inherit fetchurl stdenv perl mktemp module_init_tools ubootChooser;
kernelPatches =
[ kernelPatches.fbcondecor_2_6_35
kernelPatches.sec_perm_2_6_24
# kernelPatches.aufs2_2_6_35
kernelPatches.cifs_timeout_2_6_35
] ++ lib.optional (platform.kernelArch == "arm")
kernelPatches.sheevaplug_modules_2_6_35;
};
linux_2_6_35_oldI686 = linux_2_6_35.override {
extraConfig = ''
HIGHMEM64G? n
XEN? n
'';
extraMeta = {
platforms = ["i686-linux"];
maintainers = [lib.maintainers.raskin];
};
};
linux_3_0 = makeOverridable (import ../os-specific/linux/kernel/linux-3.0.nix) {
inherit fetchurl stdenv perl mktemp module_init_tools ubootChooser;
kernelPatches =
[ #kernelPatches.fbcondecor_2_6_38
kernelPatches.sec_perm_2_6_24
[ kernelPatches.sec_perm_2_6_24
# kernelPatches.aufs3_0
];
};
@ -5867,8 +5831,7 @@ let
linux_3_2 = makeOverridable (import ../os-specific/linux/kernel/linux-3.2.nix) {
inherit fetchurl stdenv perl mktemp module_init_tools ubootChooser;
kernelPatches =
[ #kernelPatches.fbcondecor_2_6_38
kernelPatches.sec_perm_2_6_24
[ kernelPatches.sec_perm_2_6_24
# kernelPatches.aufs3_2
kernelPatches.cifs_timeout_2_6_38
];
@ -5883,8 +5846,7 @@ let
linux_3_4 = makeOverridable (import ../os-specific/linux/kernel/linux-3.4.nix) {
inherit fetchurl stdenv perl mktemp module_init_tools ubootChooser;
kernelPatches =
[ #kernelPatches.fbcondecor_2_6_38
kernelPatches.sec_perm_2_6_24
[ kernelPatches.sec_perm_2_6_24
# kernelPatches.aufs3_4
] ++ lib.optionals (platform.kernelArch == "mips")
[ kernelPatches.mips_fpureg_emu
@ -6045,8 +6007,6 @@ let
};
# Build the kernel modules for the some of the kernels.
linuxPackages_2_6_32 = recurseIntoAttrs (linuxPackagesFor linux_2_6_32 linuxPackages_2_6_32);
linuxPackages_2_6_35 = recurseIntoAttrs (linuxPackagesFor linux_2_6_35 linuxPackages_2_6_35);
linuxPackages_3_0 = recurseIntoAttrs (linuxPackagesFor linux_3_0 linuxPackages_3_0);
linuxPackages_3_2 = recurseIntoAttrs (linuxPackagesFor pkgs.linux_3_2 linuxPackages_3_2);
linuxPackages_3_2_xen = recurseIntoAttrs (linuxPackagesFor pkgs.linux_3_2_xen linuxPackages_3_2_xen);
@ -6627,7 +6587,7 @@ let
};
blender = callPackage ../applications/misc/blender {
python = python32;
python = python3;
};
bristol = callPackage ../applications/audio/bristol { };
@ -7569,6 +7529,8 @@ let
openbox = callPackage ../applications/window-managers/openbox { };
openimageio = callPackage ../applications/graphics/openimageio { };
openjump = callPackage ../applications/misc/openjump { };
openscad = callPackage ../applications/graphics/openscad {};
@ -7962,7 +7924,10 @@ let
weechat = callPackage ../applications/networking/irc/weechat { };
wings = callPackage ../applications/graphics/wings { };
wings = callPackage ../applications/graphics/wings {
erlang = erlangR14B04;
esdl = esdl.override { erlang = erlangR14B04; };
};
wmname = callPackage ../applications/misc/wmname { };
@ -9008,7 +8973,7 @@ let
texLiveFull = lib.setName "texlive-full" (texLiveAggregationFun {
paths = [ texLive texLiveExtra lmodern texLiveCMSuper texLiveLatexXColor
texLivePGF texLiveBeamer texLiveModerncv tipa tex4ht ];
texLivePGF texLiveBeamer texLiveModerncv tipa tex4ht texinfo5 ];
});
/* Look in configurations/misc/raskin.nix for usage example (around revisions

View file

@ -1054,8 +1054,6 @@ let result = let callPackage = x : y : modifyPrio (newScope result.final x y);
HFuse = callPackage ../development/libraries/haskell/hfuse {};
HGL = callPackage ../development/libraries/haskell/HGL {};
highlightingKate = callPackage ../development/libraries/haskell/highlighting-kate {};
hinotify = callPackage ../development/libraries/haskell/hinotify {};

View file

@ -2,9 +2,7 @@
also builds the documentation and tests whether the Nix expressions
evaluate correctly. */
{ nixpkgs ? { outPath = (import ./all-packages.nix {}).lib.cleanSource ../..; revCount = 1234; shortRev = "abcdef"; }
, officialRelease ? false
}:
{ nixpkgs, officialRelease }:
with import nixpkgs.outPath {};

View file

@ -1553,6 +1553,19 @@ rec {
};
};
DBIxClassCandy = buildPerlPackage {
name = "DBIx-Class-Candy-0.002103";
src = fetchurl {
url = mirror://cpan/authors/id/F/FR/FREW/DBIx-Class-Candy-0.002103.tar.gz;
sha256 = "1vcaigvzxq9jjkhw2bkayrnsa76sakr3wrv7009f1dxyfa0iyrsk";
};
propagatedBuildInputs = [ TestDeep TestFatal DBIxClass LinguaENInflect StringCamelCase ];
meta = {
description = "Sugar for your favorite ORM, DBIx::Class";
license = "perl5";
};
};
DBIxClassCursorCached = buildPerlPackage {
name = "DBIx-Class-Cursor-Cached-1.001002";
src = fetchurl {
@ -1576,6 +1589,19 @@ rec {
propagatedBuildInputs = [DBIxClass HTMLWidget];
};
DBIxClassHelpers = buildPerlPackage {
name = "DBIx-Class-Helpers-2.016005";
src = fetchurl {
url = mirror://cpan/authors/id/F/FR/FREW/DBIx-Class-Helpers-2.016005.tar.gz;
sha256 = "0nkskc0h284l2q3m33553i8g4pr1kcx7vmwz8bi1kmga16bs7nqk";
};
propagatedBuildInputs = [ DBIxClassCandy TestDeep CarpClan DBDSQLite ];
meta = {
description = "Simplify the common case stuff for DBIx::Class.";
license = "perl5";
};
};
DBIxClassIntrospectableM2M = buildPerlPackage {
name = "DBIx-Class-IntrospectableM2M-0.001001";
src = fetchurl {
@ -2057,10 +2083,10 @@ rec {
};
GD = buildPerlPackage rec {
name = "GD-2.45";
name = "GD-2.49";
src = fetchurl {
url = "mirror://cpan/authors/id/L/LD/LDS/${name}.tar.gz";
sha256 = "1p84585b4iyqa21hbqni0blj8fzd917ynd3y1hwh3mrmyfqj178x";
sha256 = "03wwvhvni22cs7arai7d3wkb2qfa9p20grrb32hdxv41nqxqpihh";
};
buildInputs = [ pkgs.gd pkgs.libjpeg pkgs.zlib pkgs.freetype

View file

@ -49,7 +49,7 @@ pythonPackages = python.modules // rec {
# packages defined elsewhere
ipython = import ../shells/ipython {
inherit (pkgs) stdenv fetchurl;
inherit (pkgs) stdenv fetchurl sip pyqt4;
inherit buildPythonPackage pythonPackages;
};
@ -123,6 +123,61 @@ pythonPackages = python.modules // rec {
};
almir = buildPythonPackage rec {
name = "almir-0.1.7";
src = fetchurl {
url = "http://pypi.python.org/packages/source/a/almir/${name}.zip";
md5 = "daea15c898487a2bded1ae6ef78633e5";
};
buildInputs = [
pkgs.which
pkgs.unzip
coverage
mock
tissue
unittest2
webtest
];
propagatedBuildInputs = [
pkgs.makeWrapper
pkgs.bacula
colander
deform
deform_bootstrap
docutils
nose
mysql_connector_repackaged
pg8000
pyramid
pyramid_beaker
pyramid_exclog
pyramid_jinja2
pyramid_tm
pytz
sqlalchemy
transaction
waitress
webhelpers
zope_sqlalchemy
];
postInstall = ''
ln -s ${pyramid}/bin/pserve $out/bin
ln -s ${pkgs.bacula}/bin/bconsole $out/bin
wrapProgram "$out/bin/pserve" \
--suffix PYTHONPATH : "$out/lib/python2.7/site-packages"
'';
meta = {
maintainers = [ stdenv.lib.maintainers.iElectric ];
platforms = stdenv.lib.platforms.all;
};
};
alot = buildPythonPackage rec {
rev = "d3c1880a60ddd8ded397d92cddf310a948b97fdc";
name = "alot-0.3.4_${rev}";
@ -574,6 +629,26 @@ pythonPackages = python.modules // rec {
};
});
colander = buildPythonPackage rec {
name = "colander-0.9.6";
src = fetchurl {
url = "http://pypi.python.org/packages/source/c/colander/${name}.tar.gz";
md5 = "2d9f65a64cb6b7f35d6a0d7b607ce4c6";
};
propagatedBuildInputs = [ translationstring ];
meta = {
maintainers = [
stdenv.lib.maintainers.garbas
stdenv.lib.maintainers.iElectric
];
platforms = stdenv.lib.platforms.all;
};
};
configobj = buildPythonPackage (rec {
name = "configobj-4.7.2";
@ -712,6 +787,295 @@ pythonPackages = python.modules // rec {
};
};
deform = buildPythonPackage rec {
name = "deform-0.9.4";
src = fetchurl {
url = "http://pypi.python.org/packages/source/d/deform/${name}.tar.gz";
md5 = "2ed7b69644a6d8f4e1404e1892329240";
};
propagatedBuildInputs = [ beautifulsoup4 peppercorn colander translationstring chameleon ];
meta = {
maintainers = [
stdenv.lib.maintainers.garbas
stdenv.lib.maintainers.iElectric
];
platforms = stdenv.lib.platforms.all;
};
};
deform_bootstrap = buildPythonPackage rec {
name = "deform_bootstrap-0.2";
src = fetchurl {
url = "http://pypi.python.org/packages/source/d/deform_bootstrap/${name}.tar.gz";
md5 = "57812251f327367761f32d49a8286aa4";
};
propagatedBuildInputs = [ deform ];
meta = {
maintainers = [ stdenv.lib.maintainers.iElectric ];
platforms = stdenv.lib.platforms.all;
};
};
peppercorn = buildPythonPackage rec {
name = "peppercorn-0.4";
src = fetchurl {
url = "http://pypi.python.org/packages/source/p/peppercorn/${name}.tar.gz";
md5 = "464d6f2342eaf704dfb52046c1f5c320";
};
meta = {
maintainers = [
stdenv.lib.maintainers.garbas
stdenv.lib.maintainers.iElectric
];
platforms = stdenv.lib.platforms.all;
};
};
pyramid = buildPythonPackage rec {
name = "pyramid-1.3.4";
src = fetchurl {
url = "http://pypi.python.org/packages/source/p/pyramid/${name}.tar.gz";
md5 = "967a04fcb2143b31b279c3013a778a2b";
};
buildInputs = [
docutils
virtualenv
webtest
zope_component
zope_interface
];
propagatedBuildInputs = [
chameleon
Mako
paste_deploy
repoze_lru
repoze_sphinx_autointerface
translationstring
venusian
webob
zope_deprecation
zope_interface
];
meta = {
maintainers = [
stdenv.lib.maintainers.garbas
stdenv.lib.maintainers.iElectric
];
platforms = stdenv.lib.platforms.all;
};
};
pyramid_jinja2 = buildPythonPackage rec {
name = "pyramid_jinja2-1.6";
src = fetchurl {
url = "http://pypi.python.org/packages/source/p/pyramid_jinja2/${name}.zip";
md5 = "b7df1ab97f90f39529d27ba6da1f6b1c";
};
buildInputs = [ pkgs.unzip webtest ];
propagatedBuildInputs = [ jinja2 pyramid ];
meta = {
maintainers = [ stdenv.lib.maintainers.iElectric ];
platforms = stdenv.lib.platforms.all;
};
};
pyramid_beaker = buildPythonPackage rec {
name = "pyramid_beaker-0.7";
src = fetchurl {
url = "http://pypi.python.org/packages/source/p/pyramid_beaker/${name}.tar.gz";
md5 = "acb863517a98b90b5f29648ce55dd563";
};
propagatedBuildInputs = [ beaker pyramid ];
meta = {
maintainers = [ stdenv.lib.maintainers.iElectric ];
platforms = stdenv.lib.platforms.all;
};
};
pyramid_tm = buildPythonPackage rec {
name = "pyramid_tm-0.7";
src = fetchurl {
url = "http://pypi.python.org/packages/source/p/pyramid_tm/${name}.tar.gz";
md5 = "6dc917d262c69366630c542bd21859a3";
};
propagatedBuildInputs = [ transaction pyramid ];
meta = {
maintainers = [
stdenv.lib.maintainers.garbas
stdenv.lib.maintainers.iElectric
];
platforms = stdenv.lib.platforms.all;
};
};
pyramid_exclog = buildPythonPackage rec {
name = "pyramid_exclog-0.6";
src = fetchurl {
url = "http://pypi.python.org/packages/source/p/pyramid_exclog/${name}.tar.gz";
md5 = "5c18706f5500605416afff311120c933";
};
propagatedBuildInputs = [ pyramid ];
meta = {
maintainers = [
stdenv.lib.maintainers.garbas
stdenv.lib.maintainers.iElectric
];
platforms = stdenv.lib.platforms.all;
};
};
beaker = buildPythonPackage rec {
name = "Beaker-1.6.4";
src = fetchurl {
url = "http://pypi.python.org/packages/source/B/Beaker/${name}.tar.gz";
md5 = "c2e102870ed4c53104dec48ceadf8e9d";
};
buildInputs = [ sqlalchemy pycryptopp nose mock webtest ];
# http://hydra.nixos.org/build/4511591/log/raw
doCheck = false;
meta = {
maintainers = [
stdenv.lib.maintainers.garbas
stdenv.lib.maintainers.iElectric
];
platforms = stdenv.lib.platforms.all;
};
};
repoze_sphinx_autointerface = buildPythonPackage rec {
name = "repoze.sphinx.autointerface-0.7.1";
src = fetchurl {
url = "http://pypi.python.org/packages/source/r/repoze.sphinx.autointerface/${name}.tar.gz";
md5 = "f2fee996ae28dc16eb48f1a3e8f64801";
};
propagatedBuildInputs = [ zope_interface sphinx ];
meta = {
maintainers = [ stdenv.lib.maintainers.iElectric ];
platforms = stdenv.lib.platforms.all;
};
};
repoze_lru = buildPythonPackage rec {
name = "repoze.lru-0.4";
src = fetchurl {
url = "http://pypi.python.org/packages/source/r/repoze.lru/${name}.tar.gz";
md5 = "9f6ab7a4ff871ba795cadf56c20fb0f0";
};
meta = {
maintainers = [
stdenv.lib.maintainers.garbas
stdenv.lib.maintainers.iElectric
];
platforms = stdenv.lib.platforms.all;
};
};
zope_deprecation = buildPythonPackage rec {
name = "zope.deprecation-3.5.0";
src = fetchurl {
url = "http://pypi.python.org/packages/source/z/zope.deprecation/${name}.tar.gz";
md5 = "1e7db82583013127aab3e7e790b1f2b6";
};
buildInputs = [ zope_testing ];
meta = {
maintainers = [
stdenv.lib.maintainers.garbas
stdenv.lib.maintainers.iElectric
];
platforms = stdenv.lib.platforms.all;
};
};
venusian = buildPythonPackage rec {
name = "venusian-1.0a7";
src = fetchurl {
url = "http://pypi.python.org/packages/source/v/venusian/${name}.tar.gz";
md5 = "6f67506dd3cf77116f1c01682a6c3f27";
};
# TODO: https://github.com/Pylons/venusian/issues/23
doCheck = false;
meta = {
maintainers = [
stdenv.lib.maintainers.garbas
stdenv.lib.maintainers.iElectric
];
platforms = stdenv.lib.platforms.all;
};
};
chameleon = buildPythonPackage rec {
name = "Chameleon-2.11";
src = fetchurl {
url = "http://pypi.python.org/packages/source/C/Chameleon/${name}.tar.gz";
md5 = "df72458bf3dd26a744dcff5ad555c34b";
};
# TODO: https://github.com/malthe/chameleon/issues/139
doCheck = false;
meta = {
maintainers = [
stdenv.lib.maintainers.garbas
stdenv.lib.maintainers.iElectric
];
platforms = stdenv.lib.platforms.all;
};
};
distribute = stdenv.mkDerivation rec {
name = "distribute-0.6.34";
@ -796,14 +1160,14 @@ pythonPackages = python.modules // rec {
md5 = "33557678bf2f320de670ddaefaea009d";
};
# TODO: gui, procsettitle
buildInputs = [ pkgs.libtorrentRasterbar twisted Mako chardet pyxdg pkgs.pyopenssl ];
propagatedBuildInputs = [ pkgs.libtorrentRasterbar twisted Mako chardet pyxdg pkgs.pyopenssl ];
propagatedBuildInputs = with pkgs; [
pyGtkGlade libtorrentRasterbar twisted Mako chardet pyxdg pyopenssl
];
meta = {
homepage = http://deluge-torrent.org;
description = "Torrent client";
license = "GPLv3";
license = stdenv.lib.licenses.gpl3Plus;
maintainers = [ stdenv.lib.maintainers.iElectric ];
platforms = stdenv.lib.platforms.all;
};
@ -1717,11 +2081,11 @@ pythonPackages = python.modules // rec {
mock = buildPythonPackage (rec {
name = "mock-0.7.0";
name = "mock-1.0.1";
src = fetchurl {
url = "http://pypi.python.org/packages/source/m/mock/${name}.tar.gz";
md5 = "be029f8c963c55250a452c400e10cf42";
md5 = "c3971991738caa55ec7c356bbc154ee2";
};
buildInputs = [ unittest2 ];
@ -1850,6 +2214,24 @@ pythonPackages = python.modules // rec {
};
mysql_connector_repackaged = buildPythonPackage rec {
name = "mysql-connector-repackaged-0.3.1";
src = fetchurl {
url = "http://pypi.python.org/packages/source/m/mysql-connector-repackaged/${name}.tar.gz";
md5 = "0b17ad1cb3fe763fd44487cb97cf45b2";
};
meta = {
maintainers = [
stdenv.lib.maintainers.garbas
stdenv.lib.maintainers.iElectric
];
platforms = stdenv.lib.platforms.linux;
};
};
namebench = buildPythonPackage (rec {
name = "namebench-1.0.5";
@ -2192,21 +2574,20 @@ pythonPackages = python.modules // rec {
paste_deploy = buildPythonPackage rec {
version = "1.3.4";
version = "1.5.0";
name = "paste-deploy-${version}";
src = fetchurl {
url = "http://pypi.python.org/packages/source/P/PasteDeploy/PasteDeploy-${version}.tar.gz";
md5 = "eb4b3e2543d54401249c2cbd9f2d014f";
md5 = "f1a068a0b680493b6eaff3dd7690690f";
};
buildInputs = [ nose ];
doCheck = false; # can't find "FakeEgg.app", apparently missing from the tarball
meta = {
description = "Load, configure, and compose WSGI applications and servers";
homepage = http://pythonpaste.org/deploy/;
platforms = stdenv.lib.platforms.all;
};
};
@ -2279,6 +2660,28 @@ pythonPackages = python.modules // rec {
};
};
pg8000 = buildPythonPackage rec {
name = "pg8000-1.08";
src = fetchurl {
url = "http://pybrary.net/pg8000/dist/${name}.tar.gz";
md5 = "2e8317a22d0e09a6f12e98ddf3bb75fd";
};
buildInputs = [ pkgs.unzip ];
propagatedBuildInputs = [ pytz ];
meta = {
maintainers = [
stdenv.lib.maintainers.garbas
stdenv.lib.maintainers.iElectric
];
platforms = stdenv.lib.platforms.linux;
};
};
pip = buildPythonPackage {
name = "pip-1.2.1";
src = fetchurl {
@ -2854,11 +3257,13 @@ pythonPackages = python.modules // rec {
pyquery = buildPythonPackage rec {
name = "pyquery-1.2.4";
src = fetchurl {
url = "http://pypi.python.org/packages/source/p/pyquery/pyquery-1.2.4.tar.gz";
url = "http://pypi.python.org/packages/source/p/pyquery/${name}.tar.gz";
md5 = "268f08258738d21bc1920d7522f2a63b";
};
buildInputs = [ cssselect lxml ];
propagatedBuildInputs = [ cssselect lxml ];
};
@ -3873,24 +4278,38 @@ pythonPackages = python.modules // rec {
};
};
waitress = buildPythonPackage rec {
name = "waitress-0.8.1";
src = fetchurl {
url = "http://pypi.python.org/packages/source/w/waitress/${name}.tar.gz";
md5 = "aadfc692b780fc42eb05ac819102d336";
};
meta = {
maintainers = [
stdenv.lib.maintainers.garbas
stdenv.lib.maintainers.iElectric
];
platforms = stdenv.lib.platforms.all;
};
};
webob = buildPythonPackage rec {
version = "1.0.6";
version = "1.2.3";
name = "webob-${version}";
src = fetchurl {
url = "http://pypi.python.org/packages/source/W/WebOb/WebOb-${version}.zip";
md5 = "8e46dd755f6998d471bfbcb4def897ff";
url = "http://pypi.python.org/packages/source/W/WebOb/WebOb-${version}.tar.gz";
md5 = "11825b7074ba7043e157805e4e6e0f55";
};
buildInputs = [ pkgs.unzip ];
# The test requires "webtest", which is a cyclic dependency. (WTF?)
doCheck = false;
propagatedBuildInputs = [ nose ];
meta = {
description = "WSGI request and response object";
homepage = http://pythonpaste.org/webob/;
platforms = stdenv.lib.platforms.all;
};
};
@ -3914,19 +4333,34 @@ pythonPackages = python.modules // rec {
webtest = buildPythonPackage rec {
version = "1.2.3";
version = "2.0.3";
name = "webtest-${version}";
src = fetchurl {
url = "http://pypi.python.org/packages/source/W/WebTest/WebTest-${version}.tar.gz";
md5 = "585f9331467e6d99acaba4051c1c5878";
url = "http://pypi.python.org/packages/source/W/WebTest/WebTest-${version}.zip";
md5 = "a1266d4db421963fd3deb172c6689e4b";
};
propagatedBuildInputs = [ nose webob dtopt ];
buildInputs = [ pkgs.unzip ];
propagatedBuildInputs = [
nose
webob
six
beautifulsoup4
waitress
unittest2
mock
pyquery
wsgiproxy2
paste_deploy
coverage
];
meta = {
description = "Helper to test WSGI applications";
homepage = http://pythonpaste.org/webtest/;
platforms = stdenv.lib.platforms.all;
};
};
@ -3965,6 +4399,26 @@ pythonPackages = python.modules // rec {
});
wsgiproxy2 = buildPythonPackage rec {
name = "WSGIProxy2-0.1";
src = fetchurl {
url = "http://pypi.python.org/packages/source/W/WSGIProxy2/${name}.tar.gz";
md5 = "157049212f1c81a8790efa31146fbabf";
};
propagatedBuildInputs = [ six webob ];
meta = {
maintainers = [
stdenv.lib.maintainers.garbas
stdenv.lib.maintainers.iElectric
];
platforms = stdenv.lib.platforms.all;
};
};
wxPython = wxPython28;
@ -4478,6 +4932,27 @@ pythonPackages = python.modules // rec {
};
zope_sqlalchemy = buildPythonPackage rec {
name = "zope.sqlalchemy-0.7.2";
src = fetchurl {
url = "http://pypi.python.org/packages/source/z/zope.sqlalchemy/${name}.zip";
md5 = "b654e5d144ed141e13b42591a21a4868";
};
buildInputs = [ pkgs.unzip sqlalchemy zope_testing zope_interface setuptools ];
propagatedBuildInputs = [ sqlalchemy transaction ];
meta = {
maintainers = [
stdenv.lib.maintainers.garbas
stdenv.lib.maintainers.iElectric
];
platforms = stdenv.lib.platforms.all;
};
};
zope_testing = buildPythonPackage rec {
name = "zope.testing-${version}";
version = "4.1.1";
@ -4596,6 +5071,7 @@ pythonPackages = python.modules // rec {
};
};
tornado = buildPythonPackage rec {
name = "tornado-2.4";
src = fetchurl {
@ -4618,6 +5094,26 @@ pythonPackages = python.modules // rec {
};
tissue = buildPythonPackage rec {
name = "tissue-0.7";
src = fetchurl {
url = "http://pypi.python.org/packages/source/t/tissue/${name}.tar.gz";
md5 = "c9f3772407eb7499a949daaa9b859fdf";
};
buildInputs = [ nose ];
propagatedBuildInputs = [ pep8 ];
meta = {
maintainers = [
stdenv.lib.maintainers.garbas
stdenv.lib.maintainers.iElectric
];
platforms = stdenv.lib.platforms.all;
};
};
tracing = buildPythonPackage rec {
name = "tracing-0.7";
@ -4638,6 +5134,24 @@ pythonPackages = python.modules // rec {
};
};
translationstring = buildPythonPackage rec {
name = "translationstring-0.4";
src = fetchurl {
url = "http://pypi.python.org/packages/source/t/translationstring/${name}.tar.gz";
md5 = "392287923c475b660b7549b2c2f03dbc";
};
meta = {
maintainers = [
stdenv.lib.maintainers.garbas
stdenv.lib.maintainers.iElectric
];
platforms = stdenv.lib.platforms.all;
};
};
ttystatus = buildPythonPackage rec {
name = "ttystatus-0.21";
@ -4680,6 +5194,29 @@ pythonPackages = python.modules // rec {
};
};
webhelpers = buildPythonPackage rec {
name = "WebHelpers-1.3";
src = fetchurl {
url = "http://pypi.python.org/packages/source/W/WebHelpers/${name}.tar.gz";
md5 = "32749ffadfc40fea51075a7def32588b";
};
buildInputs = [ routes MarkupSafe webob nose ];
# TODO: failing tests https://bitbucket.org/bbangert/webhelpers/pull-request/1/fix-error-on-webob-123/diff
doCheck = false;
meta = {
maintainers = [
stdenv.lib.maintainers.garbas
stdenv.lib.maintainers.iElectric
];
platforms = stdenv.lib.platforms.all;
};
};
whisper = buildPythonPackage rec {
name = "whisper-${version}";
version = "0.9.10";

View file

@ -1,4 +1,4 @@
with (import ./release-lib.nix);
with import ./release-lib.nix { supportedSystems = []; };
let
nativePlatforms = linux;

View file

@ -1,3 +1,5 @@
{ supportedSystems }:
rec {
# Ensure that we don't build packages marked as unfree.
@ -5,9 +7,10 @@ rec {
config.allowUnfree = false;
});
pkgs = allPackages { };
pkgs = allPackages { system = "x86_64-linux"; };
/* !!! Hack: poor man's memoisation function. Necessary for prevent
/* !!! Hack: poor man's memoisation function. Necessary to prevent
Nixpkgs from being evaluated again and again for every
job/platform pair. */
pkgsFor = system:
@ -26,33 +29,42 @@ rec {
pkgs_i686_freebsd = allPackages { system = "i686-freebsd"; };
pkgs_i686_cygwin = allPackages { system = "i686-cygwin"; };
/* The working or failing mails for cross builds will be sent only to
the following maintainers, as most package maintainers will not be
interested in the result of cross building a package. */
crossMaintainers = with pkgs.lib.maintainers; [ viric ];
/* Set the Hydra scheduling priority for a job. The default
priority (10) should be used for most jobs. A different
priority should only be used for a few particularly interesting
jobs (in terms of giving feedback to developers), such as stdenv.
*/
priority (10) should be used for most jobs. A different priority
should only be used for a few particularly interesting jobs (in
terms of giving feedback to developers), such as stdenv. */
prio = level: job: toJob job // { schedulingPriority = level; };
toJob = x: if builtins.isAttrs x then x else
{ type = "job"; systems = x; schedulingPriority = 10; };
/* Perform a job on the given set of platforms. The function `f' is
called by Hydra for each platform, and should return some job
to build on that platform. `f' is passed the Nixpkgs collection
for the platform in question. */
testOn = systems: f: {system ? builtins.currentSystem}:
if pkgs.lib.elem system systems then f (pkgsFor system) else {};
/* Similar to the testOn function, but with an additional 'crossSystem'
* parameter for allPackages, defining the target platform for cross builds */
/* Build a package on the given set of platforms. The function `f'
is called for each supported platform with Nixpkgs for that
platform as an argument . We return an attribute set containing
a derivation for each supported platform, i.e. { x86_64-linux =
f pkgs_x86_64_linux; i686-linux = f pkgs_i686_linux; ... }. */
testOn = systems: f: pkgs.lib.genAttrs
(pkgs.lib.filter (x: pkgs.lib.elem x supportedSystems) systems)
(system: f (pkgsFor system));
/* Similar to the testOn function, but with an additional
'crossSystem' parameter for allPackages, defining the target
platform for cross builds. */
testOnCross = crossSystem: systems: f: {system ? builtins.currentSystem}:
if pkgs.lib.elem system systems then f (allPackages {inherit system
crossSystem;}) else {};
if pkgs.lib.elem system systems
then f (allPackages { inherit system crossSystem; })
else {};
/* Map an attribute of the form `foo = [platforms...]' to `testOn
[platforms...] (pkgs: pkgs.foo)'. */
@ -82,29 +94,28 @@ rec {
(pkgs.lib.getAttrFromPath path pkgs));
in testOnCross crossSystem job.systems getPkg);
/* Find all packages that have a meta.platforms field listing the
supported platforms. */
packagesWithMetaPlatform = attrSet:
if builtins ? tryEval then
let pairs = pkgs.lib.concatMap
(x:
let pair = builtins.tryEval
(let
attrVal = (builtins.getAttr x attrSet);
in
{val=(processPackage attrVal);
attrVal = attrVal;
attrValIsAttrs = builtins.isAttrs attrVal;
});
success = (builtins.tryEval pair.value.attrVal).success;
in
if success && pair.value.attrValIsAttrs &&
pair.value.val != [] then
[{name= x; value=pair.value.val;}] else [])
(builtins.attrNames attrSet);
in
builtins.listToAttrs pairs
else {};
let pairs = pkgs.lib.concatMap
(x:
let pair = builtins.tryEval
(let
attrVal = (builtins.getAttr x attrSet);
in
{ val = processPackage attrVal;
attrVal = attrVal;
attrValIsAttrs = builtins.isAttrs attrVal;
});
success = (builtins.tryEval pair.value.attrVal).success;
in
pkgs.lib.optional (success && pair.value.attrValIsAttrs && pair.value.val != [])
{ name = x; value = pair.value.val; })
(builtins.attrNames attrSet);
in
builtins.listToAttrs pairs;
# May fail as much as it wishes, we will catch the error.
processPackage = attrSet:
@ -117,6 +128,7 @@ rec {
then attrSet.meta.platforms
else [];
/* Common platform groups on which to test packages. */
inherit (pkgs.lib.platforms) linux darwin cygwin allBut all mesaPlatforms;

View file

@ -1,436 +1,461 @@
/*
This file will be evaluated by hydra with a call like this:
hydra_eval_jobs --gc-roots-dir \
/nix/var/nix/gcroots/per-user/hydra/hydra-roots --argstr \
system i686-linux --argstr system x86_64-linux --arg \
nixpkgs "{outPath = ./}" .... release.nix
/* This file defines the builds that constitute the Nixpkgs.
Everything defined here ends up in the Nixpkgs channel. Individual
jobs can be tested by running:
Hydra can be installed with "nix-env -i hydra".
$ nix-build pkgs/top-level/release.nix -A <jobname>.<system>
e.g.
$ nix-build pkgs/top-level/release.nix -A coreutils.x86_64-linux
*/
with (import ./release-lib.nix);
{
{ nixpkgs ? { outPath = (import ./all-packages.nix {}).lib.cleanSource ../..; revCount = 1234; shortRev = "abcdef"; }
, officialRelease ? false
, # The platforms for which we build Nixpkgs.
supportedSystems ? [ "x86_64-linux" "i686-linux" "x86_64-darwin" "x86_64-freebsd" "i686-freebsd" ]
}:
tarball = import ./make-tarball.nix;
with import ./release-lib.nix { inherit supportedSystems; };
} // (mapTestOn ((packagesWithMetaPlatform pkgs) // rec {
let
abcde = linux;
alsaUtils = linux;
apacheHttpd = linux;
aspell = all;
at = linux;
aterm25 = all;
aterm28 = all;
audacious = linux;
autoconf = all;
automake110x = all;
automake111x = all;
avahi = allBut "i686-cygwin"; # Cygwin builds fail
bash = all;
bashInteractive = all;
bazaar = linux; # first let sqlite3 work on darwin
bc = all;
binutils = linux;
bind = linux;
bitlbee = linux;
bittorrent = linux;
blender = linux;
bsdiff = all;
btrfsProgs = linux;
bvi = all;
bzip2 = all;
cabextract = all;
castle_combat = linux;
cdrkit = linux;
chatzilla = linux;
cksfv = all;
classpath = linux;
coreutils = all;
cpio = all;
cron = linux;
cvs = linux;
db4 = all;
ddrescue = linux;
dhcp = linux;
dico = linux;
dietlibc = linux;
diffutils = all;
disnix = all;
disnixos = linux;
DisnixWebService = linux;
docbook5 = all;
docbook5_xsl = all;
docbook_xml_dtd_42 = all;
docbook_xml_dtd_43 = all;
docbook_xsl = all;
dosbox = linux;
dovecot = linux;
doxygen = linux;
dpkg = linux;
drgeo = linux;
e2fsprogs = linux;
ejabberd = linux;
elinks = linux;
emacs23 = gtkSupported;
enscript = all;
eprover = linux;
evince = linux;
expect = linux;
exult = linux;
fbterm = linux;
feh = linux;
file = all;
findutils = all;
flex = all;
flex2535 = all;
fontforge = linux;
fuse = linux;
gajim = linux;
gawk = all;
gcc = linux;
gcc33 = linux;
gcc34 = linux;
gcc42 = linux;
gcc43_multi = ["x86_64-linux"];
gcc44 = linux;
gcj44 = linux;
ghdl = linux;
ghostscript = linux;
ghostscriptX = linux;
gimp_2_8 = linux;
git = linux;
gitFull = linux;
glibc = linux;
glibcLocales = linux;
glxinfo = linux;
gnash = linux;
gnat44 = linux;
gnugrep = all;
gnum4 = all;
gnumake = all;
gnupatch = all;
gnupg = linux;
gnuplot = allBut "i686-cygwin";
gnused = all;
gnutar = all;
gnutls = linux;
gogoclient = linux;
gphoto2 = linux;
gpm = linux;
gprolog = linux;
gpsbabel = all;
gpscorrelate = linux;
gpsd = linux;
gqview = gtkSupported;
graphviz = all;
grub = linux;
grub2 = linux;
gsl = linux;
guile = linux; # tests fail on Cygwin
gv = linux;
gzip = all;
hddtemp = linux;
hello = all;
host = linux;
htmlTidy = all;
hugin = linux;
iana_etc = linux;
icecat3Xul = linux;
icewm = linux;
idutils = all;
ifplugd = linux;
impressive = linux;
inetutils = linux;
inkscape = linux;
iputils = linux;
irssi = linux;
jfsutils = linux;
jfsrec = linux;
jnettop = linux;
jwhois = linux;
kbd = linux;
keen4 = ["i686-linux"];
# klibc = linux;
kvm = linux;
qemu = linux;
qemu_kvm = linux;
less = all;
lftp = all;
libarchive = linux;
libsmbios = linux;
libtool = all;
libtool_2 = all;
lout = linux;
lsh = linux;
lsof = linux;
ltrace = linux;
lvm2 = linux;
lynx = linux;
lzma = linux;
man = linux;
manpages = linux;
maxima = linux;
mc = linux;
mcabber = linux;
mcron = linux;
mdadm = linux;
mercurial = allBut "i686-cygwin";
mercurialFull = allBut "i686-cygwin";
mesa = mesaPlatforms;
midori = linux;
mingetty = linux;
mk = linux;
mktemp = all;
mod_python = linux;
module_init_tools = linux;
mono = linux;
mpg321 = linux;
mupen64plus = linux;
mutt = linux;
mysql = linux;
mysql51 = linux;
mysql55 = linux;
namazu = all;
nano = allBut "i686-cygwin";
ncat = linux;
netcat = all;
nfsUtils = linux;
nix = all;
nixUnstable = all;
nmap = linux;
nss_ldap = linux;
nssmdns = linux;
ntfs3g = linux;
ntp = linux;
ocaml = linux;
octave = linux;
openssh = linux;
openssl = all;
pam_console = linux;
pam_login = linux;
pan = gtkSupported;
par2cmdline = all;
pavucontrol = linux;
pciutils = linux;
pdf2xml = all;
perl = all;
php = linux;
pidgin = linux;
pinentry = linux;
pltScheme = linux;
pmccabe = linux;
portmap = linux;
postgresql = all;
postfix = linux;
ppl = all;
procps = linux;
pthreadmanpages = linux;
pygtk = linux;
pyqt4 = linux;
python = allBut "i686-cygwin";
pythonFull = linux;
sbcl = linux;
qt3 = linux;
quake3demo = linux;
readline = all;
reiserfsprogs = linux;
rlwrap = all;
rogue = all;
rpm = linux;
rsync = linux;
rubber = allBut "i686-cygwin";
ruby = all;
rxvt_unicode = linux;
screen = linux ++ darwin;
scrot = linux;
sdparm = linux;
seccure = linux;
sgtpuzzles = linux;
sharutils = all;
slim = linux;
sloccount = allBut "i686-cygwin";
smartmontools = linux;
socat = linux;
spidermonkey = linux;
splashutils = linux;
sqlite = allBut "i686-cygwin";
squid = linux;
ssmtp = linux;
stdenv = prio 175 all;
stlport = linux;
strace = linux;
su = linux;
sudo = linux;
superTuxKart = linux;
swig = linux;
sylpheed = linux;
sysklogd = linux;
syslinux = ["i686-linux"];
sysvinit = linux;
sysvtools = linux;
tahoelafs = linux;
tangogps = linux;
tcl = linux;
tcpdump = linux;
teeworlds = linux;
tetex = linux;
texLive = linux;
texLiveBeamer = linux;
texLiveExtra = linux;
texinfo = all;
tightvnc = linux;
time = linux;
tinycc = ["i686-linux"];
uae = linux;
udev = linux;
unrar = linux;
upstart = linux;
usbutils = linux;
utillinux = linux;
utillinuxCurses = linux;
uzbl = linux;
viking = linux;
vice = linux;
vim = linux;
vimHugeX = linux;
VisualBoyAdvance = linux;
vlc = linux;
vncrec = linux;
vorbisTools = linux;
vpnc = linux;
vsftpd = linux;
w3m = all;
webkit = linux;
weechat = linux;
wget = all;
which = all;
wicd = linux;
wine = ["i686-linux"];
wireshark = linux;
wirelesstools = linux;
wxGTK = linux;
x11_ssh_askpass = linux;
xchm = linux;
xfig = x11Supported;
xfsprogs = linux;
xineUI = linux;
xkeyboard_config = linux;
xlockmore = linux;
xmltv = linux;
xpdf = linux;
xscreensaver = linux;
xsel = linux;
xterm = linux;
xxdiff = linux;
zdelta = linux;
zile = linux;
zip = all;
zsh = linux;
zsnes = ["i686-linux"];
jobs =
{ tarball = import ./make-tarball.nix { inherit nixpkgs officialRelease; };
emacs23Packages = {
bbdb = linux;
cedet = linux;
ecb = linux;
emacsw3m = linux;
emms = linux;
jdee = linux;
};
unstable = pkgs.releaseTools.aggregate
{ name = "nixpkgs-${jobs.tarball.version}";
meta.description = "Release-critical builds for the Nixpkgs unstable channel";
members =
[ jobs.tarball
jobs.stdenv.x86_64-linux
jobs.stdenv.i686-linux
jobs.stdenv.x86_64-darwin
jobs.linux.x86_64-linux
jobs.linux.i686-linux
# Ensure that X11/GTK+ are in order.
jobs.thunderbird.x86_64-linux
jobs.thunderbird.i686-linux
];
};
firefox36Pkgs.firefox = linux;
firefox19Pkgs.firefox = linux;
} // (mapTestOn ((packagesWithMetaPlatform pkgs) // rec {
gnome = {
gnome_panel = linux;
metacity = linux;
gnome_vfs = linux;
};
abcde = linux;
alsaUtils = linux;
apacheHttpd = linux;
aspell = all;
at = linux;
audacious = linux;
autoconf = all;
automake110x = all;
automake111x = all;
avahi = allBut "i686-cygwin"; # Cygwin builds fail
bash = all;
bashInteractive = all;
bazaar = linux; # first let sqlite3 work on darwin
bc = all;
binutils = linux;
bind = linux;
bitlbee = linux;
bittorrent = linux;
blender = linux;
bsdiff = all;
btrfsProgs = linux;
bvi = all;
bzip2 = all;
cabextract = all;
castle_combat = linux;
cdrkit = linux;
chatzilla = linux;
cksfv = all;
classpath = linux;
coreutils = all;
cpio = all;
cron = linux;
cvs = linux;
db4 = all;
ddrescue = linux;
dhcp = linux;
dico = linux;
dietlibc = linux;
diffutils = all;
disnix = all;
disnixos = linux;
DisnixWebService = linux;
docbook5 = all;
docbook5_xsl = all;
docbook_xml_dtd_42 = all;
docbook_xml_dtd_43 = all;
docbook_xsl = all;
dosbox = linux;
dovecot = linux;
doxygen = linux;
dpkg = linux;
drgeo = linux;
e2fsprogs = linux;
ejabberd = linux;
elinks = linux;
emacs23 = gtkSupported;
enscript = all;
eprover = linux;
evince = linux;
expect = linux;
exult = linux;
fbterm = linux;
feh = linux;
file = all;
findutils = all;
flex = all;
flex2535 = all;
fontforge = linux;
fuse = linux;
gajim = linux;
gawk = all;
gcc = linux;
gcc33 = linux;
gcc34 = linux;
gcc42 = linux;
gcc43_multi = ["x86_64-linux"];
gcc44 = linux;
gcj44 = linux;
ghdl = linux;
ghostscript = linux;
ghostscriptX = linux;
gimp_2_8 = linux;
git = linux;
gitFull = linux;
glibc = linux;
glibcLocales = linux;
glxinfo = linux;
gnash = linux;
gnat44 = linux;
gnugrep = all;
gnum4 = all;
gnumake = all;
gnupatch = all;
gnupg = linux;
gnuplot = allBut "i686-cygwin";
gnused = all;
gnutar = all;
gnutls = linux;
gogoclient = linux;
gphoto2 = linux;
gpm = linux;
gprolog = linux;
gpsbabel = all;
gpscorrelate = linux;
gpsd = linux;
gqview = gtkSupported;
graphviz = all;
grub = linux;
grub2 = linux;
gsl = linux;
guile = linux; # tests fail on Cygwin
gv = linux;
gzip = all;
hddtemp = linux;
hello = all;
host = linux;
htmlTidy = all;
hugin = linux;
iana_etc = linux;
icecat3Xul = linux;
icewm = linux;
idutils = all;
ifplugd = linux;
impressive = linux;
inetutils = linux;
inkscape = linux;
iputils = linux;
irssi = linux;
jfsutils = linux;
jfsrec = linux;
jnettop = linux;
jwhois = linux;
kbd = linux;
keen4 = ["i686-linux"];
# klibc = linux;
kvm = linux;
qemu = linux;
qemu_kvm = linux;
less = all;
lftp = all;
libarchive = linux;
libsmbios = linux;
libtool = all;
libtool_2 = all;
lout = linux;
lsh = linux;
lsof = linux;
ltrace = linux;
lvm2 = linux;
lynx = linux;
lzma = linux;
man = linux;
manpages = linux;
maxima = linux;
mc = linux;
mcabber = linux;
mcron = linux;
mdadm = linux;
mercurial = allBut "i686-cygwin";
mercurialFull = allBut "i686-cygwin";
mesa = mesaPlatforms;
midori = linux;
mingetty = linux;
mk = linux;
mktemp = all;
mod_python = linux;
module_init_tools = linux;
mono = linux;
mpg321 = linux;
mupen64plus = linux;
mutt = linux;
mysql = linux;
mysql51 = linux;
mysql55 = linux;
namazu = all;
nano = allBut "i686-cygwin";
ncat = linux;
netcat = all;
nfsUtils = linux;
nix = all;
nixUnstable = all;
nmap = linux;
nss_ldap = linux;
nssmdns = linux;
ntfs3g = linux;
ntp = linux;
ocaml = linux;
octave = linux;
openssh = linux;
openssl = all;
pam_console = linux;
pam_login = linux;
pan = gtkSupported;
par2cmdline = all;
pavucontrol = linux;
pciutils = linux;
pdf2xml = all;
perl = all;
php = linux;
pidgin = linux;
pinentry = linux;
pltScheme = linux;
pmccabe = linux;
portmap = linux;
postgresql = all;
postfix = linux;
ppl = all;
procps = linux;
pthreadmanpages = linux;
pygtk = linux;
pyqt4 = linux;
python = allBut "i686-cygwin";
pythonFull = linux;
sbcl = linux;
qt3 = linux;
quake3demo = linux;
readline = all;
reiserfsprogs = linux;
rlwrap = all;
rogue = all;
rpm = linux;
rsync = linux;
rubber = allBut "i686-cygwin";
ruby = all;
rxvt_unicode = linux;
screen = linux ++ darwin;
scrot = linux;
sdparm = linux;
seccure = linux;
sgtpuzzles = linux;
sharutils = all;
slim = linux;
sloccount = allBut "i686-cygwin";
smartmontools = linux;
socat = linux;
spidermonkey = linux;
splashutils = linux;
sqlite = allBut "i686-cygwin";
squid = linux;
ssmtp = linux;
stdenv = prio 175 all;
stlport = linux;
strace = linux;
su = linux;
sudo = linux;
superTuxKart = linux;
swig = linux;
sylpheed = linux;
sysklogd = linux;
syslinux = ["i686-linux"];
sysvinit = linux;
sysvtools = linux;
tahoelafs = linux;
tangogps = linux;
tcl = linux;
tcpdump = linux;
teeworlds = linux;
tetex = linux;
texLive = linux;
texLiveBeamer = linux;
texLiveExtra = linux;
texinfo = all;
tightvnc = linux;
time = linux;
tinycc = ["i686-linux"];
uae = linux;
udev = linux;
unrar = linux;
upstart = linux;
usbutils = linux;
utillinux = linux;
utillinuxCurses = linux;
uzbl = linux;
viking = linux;
vice = linux;
vim = linux;
vimHugeX = linux;
VisualBoyAdvance = linux;
vlc = linux;
vncrec = linux;
vorbisTools = linux;
vpnc = linux;
vsftpd = linux;
w3m = all;
webkit = linux;
weechat = linux;
wget = all;
which = all;
wicd = linux;
wine = ["i686-linux"];
wireshark = linux;
wirelesstools = linux;
wxGTK = linux;
x11_ssh_askpass = linux;
xchm = linux;
xfig = x11Supported;
xfsprogs = linux;
xineUI = linux;
xkeyboard_config = linux;
xlockmore = linux;
xmltv = linux;
xpdf = linux;
xscreensaver = linux;
xsel = linux;
xterm = linux;
xxdiff = linux;
zdelta = linux;
zile = linux;
zip = all;
zsh = linux;
zsnes = ["i686-linux"];
haskellPackages_ghc6104 = {
ghc = ghcSupported;
};
emacs23Packages = {
bbdb = linux;
cedet = linux;
ecb = linux;
emacsw3m = linux;
emms = linux;
jdee = linux;
};
haskellPackages_ghc6123 = {
ghc = ghcSupported;
};
firefox36Pkgs.firefox = linux;
firefox19Pkgs.firefox = linux;
haskellPackages_ghc704 = {
ghc = ghcSupported;
};
gnome = {
gnome_panel = linux;
metacity = linux;
gnome_vfs = linux;
};
haskellPackages_ghc742 = {
ghc = ghcSupported;
};
haskellPackages_ghc6104 = {
ghc = ghcSupported;
};
haskellPackages_ghc762 = {
ghc = ghcSupported;
};
haskellPackages_ghc6123 = {
ghc = ghcSupported;
};
strategoPackages = {
sdf = linux;
strategoxt = linux;
javafront = linux;
strategoShell = linux ++ darwin;
dryad = linux;
};
haskellPackages_ghc704 = {
ghc = ghcSupported;
};
pythonPackages = {
zfec = linux;
};
haskellPackages_ghc742 = {
ghc = ghcSupported;
};
xorg = {
fontadobe100dpi = linux;
fontadobe75dpi = linux;
fontbh100dpi = linux;
fontbhlucidatypewriter100dpi = linux;
fontbhlucidatypewriter75dpi = linux;
fontbhttf = linux;
fontcursormisc = linux;
fontmiscmisc = linux;
iceauth = linux;
libX11 = linux;
lndir = all;
setxkbmap = linux;
xauth = linux;
xbitmaps = linux;
xev = linux;
xf86inputevdev = linux;
xf86inputkeyboard = linux;
xf86inputmouse = linux;
xf86inputsynaptics = linux;
xf86videoati = linux;
xf86videocirrus = linux;
xf86videointel = linux;
xf86videonv = linux;
xf86videovesa = linux;
xfs = linux;
xkbcomp = linux;
xlsclients = linux;
xmessage = linux;
xorgserver = linux;
xprop = linux;
xrandr = linux;
xrdb = linux;
xset = linux;
xsetroot = linux;
xwininfo = linux;
};
haskellPackages_ghc762 = {
ghc = ghcSupported;
};
xfce = {
gtk_xfce_engine = linux;
mousepad = linux;
ristretto = linux;
terminal = linux;
thunar = linux;
xfce4_power_manager = linux;
xfce4icontheme = linux;
xfce4mixer = linux;
xfce4panel = linux;
xfce4session = linux;
xfce4settings = linux;
xfdesktop = linux;
xfwm4 = linux;
};
strategoPackages = {
sdf = linux;
strategoxt = linux;
javafront = linux;
strategoShell = linux ++ darwin;
dryad = linux;
};
} ))
pythonPackages = {
zfec = linux;
};
xorg = {
fontadobe100dpi = linux;
fontadobe75dpi = linux;
fontbh100dpi = linux;
fontbhlucidatypewriter100dpi = linux;
fontbhlucidatypewriter75dpi = linux;
fontbhttf = linux;
fontcursormisc = linux;
fontmiscmisc = linux;
iceauth = linux;
libX11 = linux;
lndir = all;
setxkbmap = linux;
xauth = linux;
xbitmaps = linux;
xev = linux;
xf86inputevdev = linux;
xf86inputkeyboard = linux;
xf86inputmouse = linux;
xf86inputsynaptics = linux;
xf86videoati = linux;
xf86videocirrus = linux;
xf86videointel = linux;
xf86videonv = linux;
xf86videovesa = linux;
xfs = linux;
xkbcomp = linux;
xlsclients = linux;
xmessage = linux;
xorgserver = linux;
xprop = linux;
xrandr = linux;
xrdb = linux;
xset = linux;
xsetroot = linux;
xwininfo = linux;
};
xfce = {
gtk_xfce_engine = linux;
mousepad = linux;
ristretto = linux;
terminal = linux;
thunar = linux;
xfce4_power_manager = linux;
xfce4icontheme = linux;
xfce4mixer = linux;
xfce4panel = linux;
xfce4session = linux;
xfce4settings = linux;
xfdesktop = linux;
xfwm4 = linux;
};
} ));
in jobs