1
0
Fork 1
mirror of https://github.com/NixOS/nixpkgs.git synced 2024-11-24 06:31:02 +00:00

Merging from trunk - I had to resolve conflicts on coreutils; I hope I resolved that

well


svn path=/nixpkgs/branches/stdenv-updates/; revision=21975
This commit is contained in:
Lluís Batlle i Rossell 2010-05-25 20:38:18 +00:00
commit fa1a414aee
58 changed files with 1265 additions and 250 deletions

View file

@ -8,7 +8,8 @@ stdenv.mkDerivation rec {
sha256 = "1lm24sw2ziqsib11sddz7gcqzw5iwfnsx65m1i461kxq218xl59h";
};
buildInputs = [ ncurses help2man ];
buildInputs = [ ncurses ];
buildNativeInputs = [ help2man ];
# Tests can't be run because most of them rely on the ability to
# fiddle with the terminal.

View file

@ -1,14 +1,19 @@
{ stdenv, fetchurl, pkgconfig, openssl, curl, intltool, gtkClient ? true, gtk }:
stdenv.mkDerivation rec {
name = "transmission-1.92";
name = "transmission-1.93";
src = fetchurl {
url = "http://mirrors.m0k.org/transmission/files/${name}.tar.bz2";
sha256 = "1vdvl3aza5cip4skhd2y4ip2vjci7q3y3qi3008ykk28ga93gw6s";
sha256 = "0w0nsyw10h4lm57qc09ja4iqqwvzcjldnqxi4zp0ha5dkbxv3dz9";
};
buildInputs = [ pkgconfig openssl curl intltool ] ++ stdenv.lib.optional gtkClient gtk;
configureFlags = if gtkClient then "--enable-gtk" else "--disable-gtk";
meta = {
description = "A fast, easy and free BitTorrent client.";
description = "A fast, easy and free BitTorrent client";
longDescription = ''
Transmission is a BitTorrent client which features a simple interface
on top of a cross-platform back-end.
@ -22,7 +27,7 @@ stdenv.mkDerivation rec {
'';
homepage = http://www.transmissionbt.com/;
license = [ "GPLv2" ];
maintainers = with stdenv.lib.maintainers; [ astsmtl ];
platforms = with stdenv.lib.platforms; linux;
maintainers = [ stdenv.lib.maintainers.astsmtl ];
platforms = stdenv.lib.platforms.linux;
};
}

View file

@ -33,7 +33,8 @@ postConfigure() {
buildPhase() {
source LinuxX86*Env.Set.sh
./bootstrap
dmake # wait a few hours...
# bootstrap defines the alias 'build', that mostly runs this perl script:
(cd instsetoo_native; perl ../solenv/bin/build.pl --all) # wait a few hours... add -P4 for quadcores
}
wrapSOffice() {
@ -57,6 +58,7 @@ installPhase() {
ooFiles=$out/lib/openoffice
# This was all borrowed from ooo-build-2.2.1's bin/ooinstall.
# This needs the ./bootstrap having run in the buildPhase to get some env vars.
eval $(grep 'BUILD\|LAST_MINOR' $SOLARENV/inc/minor.mk)
export PYTHONPATH=$SOLARVERSION/$INPATH/lib:$SRC_ROOT/instsetoo_native/$INPATH/bin:$PYTHONPATH
export OUT=../$INPATH

View file

@ -67,11 +67,6 @@ stdenv.mkDerivation rec {
--without-system-graphite
";
# Double make - I don't know why a single make reports error, and two, do not.
buildPhase = ''
make || make
'';
LD_LIBRARY_PATH = "${libXext}/lib:${libX11}/lib:${libXtst}/lib:${libXi}/lib:${libjpeg}/lib";
buildInputs = [

View file

@ -0,0 +1,140 @@
{ stdenv, fetchurl, pam, python, tcsh, libxslt, perl, ArchiveZip
, CompressZlib, zlib, libjpeg, expat, pkgconfig, freetype, libwpd
, libxml2, db4, sablotron, curl, libXaw, fontconfig, libsndfile, neon
, bison, flex, zip, unzip, gtk, libmspack, getopt, file, cairo, which
, icu, boost, jdk, ant, libXext, libX11, libXtst, libXi, cups
, libXinerama, openssl, gperf, cppunit, GConf, ORBit2
, autoconf, openldap, postgresql
, langs ? [ "en-US" "ca" "ru" "eo" "fr" "nl" "de" "en-GB" ]
}:
let version = "3.2.0"; in
stdenv.mkDerivation rec {
name = "go-oo-3.2.0.10";
# builder = ./builder.sh;
downloadRoot = "http://download.services.openoffice.org/files/stable";
versionDirs = true;
src = fetchurl {
url = "http://download.go-oo.org/OOO320/ooo-build-3.2.0.10.tar.gz";
sha256 = "0g6n0m9pibn6cx12zslmknzy1p764nqj8vdf45l5flyls9aj3x21";
};
srcs_download = (import ./src.nix) fetchurl;
# Multi-CPU: --with-num-cpus=4
configurePhase = ''
sed -i -e '1s,/bin/bash,${stdenv.bash}/bin/bash,' $(find bin -type f)
sed -i -e '1s,/usr/bin/perl,${perl}/bin/perl,' download.in bin/ooinstall bin/generate-bash-completion
echo "$distroFlags" > distro-configs/SUSE-11.1.conf.in
./configure --with-distro=SUSE-11.1 --with-system-libwpd --without-git --with-system-cairo \
--with-lang="${langsSpaces}"
'';
buildPhase = ''
for a in $srcs_download; do
FILE=$(basename $a)
# take out the hash
cp -v $a src/$(echo $FILE | sed 's/[^-]*-//')
done
sed '/-x $WGET/d' -i download
./download
# Needed to find genccode
PATH=$PATH:${icu}/sbin
make build.prepare
set -x
pushd build/ooo3*-*/
# Fix svtools: hardcoded jpeg path
sed -i -e 's,^JPEG3RDLIB=.*,JPEG3RDLIB=${libjpeg}/lib/libjpeg.so,' solenv/inc/libs.mk
# Fix sysui: wants to create a tar for root
sed -i -e 's,--own.*root,,' sysui/desktop/slackware/makefile.mk
# Fix libtextcat: wants to set rpath to /usr/local/lib
sed -i -e 's,^CONFIGURE_FLAGS.*,& --prefix='$TMPDIR, libtextcat/makefile.mk
# Fix hunspell: the checks fail due to /bin/bash missing, and I find this fix easier
sed -i -e 's,make && make check,make,' hunspell/makefile.mk
# Fix redland: wants to set rpath to /usr/local/lib
sed -i -e 's,^CONFIGURE_FLAGS.*,& --prefix='$TMPDIR, redland/redland/makefile.mk \
redland/raptor/makefile.mk redland/rasqal/makefile.mk
popd
set +x
make
'';
installPhase = ''
bin/ooinstall $out
ensureDir $out/bin
for a in $out/program/{sbase,scalc,sdraw,simpress,smath,soffice,swriter,soffice.bin}; do
ln -s $a $out/bin
done
'';
distroFlags = ''
--with-vendor=NixPkgs
--with-package-format=native
--disable-epm
--disable-fontooo
--disable-gnome-vfs
--disable-gnome-vfs
--disable-mathmldtd
--disable-mozilla
--disable-odk
--disable-pasf
--disable-dbus
--disable-kde
--disable-kde4
--disable-mono
--disable-gstreamer
--with-cairo
--with-system-libs
--with-system-python
--with-system-boost
--with-system-db
--with-jdk-home=${jdk}
--with-ant-home=${ant}
--without-afms
--without-dict
--without-fonts
--without-myspell-dicts
--without-nas
--without-ppds
--without-system-agg
--without-system-beanshell
--without-system-hsqldb
--without-system-xalan
--without-system-xerces
--without-system-xml-apis
--without-system-xt
--without-system-jars
--without-system-hunspell
--without-system-altlinuxhyph
--without-system-lpsolve
--without-system-graphite
--without-system-mozilla
--without-system-libwps
--without-system-libwpg
'';
buildInputs = [
pam python tcsh libxslt perl ArchiveZip CompressZlib zlib
libjpeg expat pkgconfig freetype libwpd libxml2 db4 sablotron curl
libXaw fontconfig libsndfile neon bison flex zip unzip gtk libmspack
getopt file jdk cairo which icu boost libXext libX11 libXtst libXi
cups libXinerama openssl gperf GConf ORBit2
ant autoconf openldap postgresql
];
langsSpaces = stdenv.lib.concatStringsSep " " langs;
meta = {
description = "Go-oo - Novell variant of OpenOffice.org";
homepage = http://go-oo.org/;
license = "LGPL";
maintainers = [ stdenv.lib.maintainers.viric ];
platforms = [ stdenv.lib.platforms.linux ];
};
}

View file

@ -0,0 +1,141 @@
fetchurl:
[
(fetchurl {
url = "http://download.go-oo.org//DEV300/ooo-cli-prebuilt-3.2.tar.bz2";
sha256 = "1v55fl0n8zisn6gih99fn1c5vp6wl6cf0qh1nwlcx9ia76jnjj9k";
})
/*
(fetchurl {
url = "http://cairographics.org/releases//cairo-1.4.10.tar.gz";
sha256 = "0cji7shlnd3yg3939233p8imnrivykx4g39p3qr8r2a4c2k7hkjr";
})
*/
(fetchurl {
url = "http://download.go-oo.org//SRC680/mdbtools-0.6pre1.tar.gz";
sha256 = "1lz33lmqifjszad7rl1r7rpxbziprrm5rkb27wmswyl5v98dqsbi";
})
(fetchurl {
url = "http://cgit.freedesktop.org/ooo-build/artwork/snapshot/ooo/OOO320_m12.tar.bz2";
name = "ooo320-m12-artwork.tar.bz2";
sha256 = "1zfn1gjdbxychxb9xvfi9hchzqbp20f15nf06badgga5klllir8b";
})
(fetchurl {
url = "http://cgit.freedesktop.org/ooo-build/base/snapshot/ooo/OOO320_m12.tar.bz2";
name = "ooo320-m12-base.tar.bz2";
sha256 = "07gmicn9c2x16qzcfi0jh2z8mx0iz76vhskml7xkwv99vryy48im";
})
(fetchurl {
url = "http://cgit.freedesktop.org/ooo-build/bootstrap/snapshot/ooo/OOO320_m12.tar.bz2";
name = "ooo320-m12-bootstrap.tar.bz2";
sha256 = "070zmd25wysmf2rka07b8w02wkyxz7qa30kscd9b3pc8m0cgq0fl";
})
(fetchurl {
url = "http://cgit.freedesktop.org/ooo-build/calc/snapshot/ooo/OOO320_m12.tar.bz2";
name = "ooo320-m12-calc.tar.bz2";
sha256 = "0iwgmvffljmm1vbkjv36fq0riy7alk7r4gnfl5x9nrw7zic0xh29";
})
(fetchurl {
url = "http://cgit.freedesktop.org/ooo-build/components/snapshot/ooo/OOO320_m12.tar.bz2";
name = "ooo320-m12-components.tar.bz2";
sha256 = "19x6lhdbcazkicp4h3zs8sq7n9gc7z9c3xkx6266m15n2k4c8ms9";
})
(fetchurl {
url = "http://cgit.freedesktop.org/ooo-build/extras/snapshot/ooo/OOO320_m12.tar.bz2";
name = "ooo320-m12-extras.tar.bz2";
sha256 = "1lr8l0nxaqrhgcbb1vn08a8d4wzq032q2zl9a12dgjrnmgcx76s7";
})
(fetchurl {
url = "http://cgit.freedesktop.org/ooo-build/filters/snapshot/ooo/OOO320_m12.tar.bz2";
name = "ooo320-m12-filters.tar.bz2";
sha256 = "1p13w9gngc5wz40nhsx8igk8zygnwcacd3bgas3m2jv9ifazk9v3";
})
(fetchurl {
url = "http://cgit.freedesktop.org/ooo-build/help/snapshot/ooo/OOO320_m12.tar.bz2";
name = "ooo320-m12-help.tar.bz2";
sha256 = "0fqg8fpivgpyfqf0s085mjm09cmfzy684q1b58y62hg0f01wwr0k";
})
(fetchurl {
url = "http://cgit.freedesktop.org/ooo-build/impress/snapshot/ooo/OOO320_m12.tar.bz2";
name = "ooo320-m12-impress.tar.bz2";
sha256 = "1dhrdsak1jqydjfkylj6r7w1h886gbcn1g4wjh1kgkwk50bdamh5";
})
(fetchurl {
url = "http://cgit.freedesktop.org/ooo-build/libs-gui/snapshot/ooo/OOO320_m12.tar.bz2";
name = "ooo320-m12-libs-gui.tar.bz2";
sha256 = "0x5jf8bwzqkd76dpd7rh0fj1p4hmh8h9yshn8rfq6ss26bgwnmwr";
})
(fetchurl {
url = "http://cgit.freedesktop.org/ooo-build/libs-core/snapshot/ooo/OOO320_m12.tar.bz2";
name = "ooo320-m12-libs-core.tar.bz2";
sha256 = "1qaa1g9mrlpjv7fkv0c8qarbl162l99w0a92ydsj1lv86jg01xvx";
})
(fetchurl {
url = "http://cgit.freedesktop.org/ooo-build/libs-extern/snapshot/ooo/OOO320_m12.tar.bz2";
name = "ooo320-m12-libs-extern.tar.bz2";
sha256 = "0hxkba5yb1c09yyrqpw4llrr7xhpf5x08mnwgfdcfks690p1rzc9";
})
(fetchurl {
url = "http://cgit.freedesktop.org/ooo-build/postprocess/snapshot/ooo/OOO320_m12.tar.bz2";
name = "ooo320-m12-postprocess.tar.bz2";
sha256 = "1jkkxpc199y64a41y13s6ib6gyp6gas8gl4w95sx506xvj90qxi3";
})
(fetchurl {
url = "http://cgit.freedesktop.org/ooo-build/sdk/snapshot/ooo/OOO320_m12.tar.bz2";
name = "ooo320-m12-sdk.tar.bz2";
sha256 = "0211ak14sblmzswwa605q430gxxdjrqa5a2924r4lb1knrc9vlns";
})
(fetchurl {
url = "http://cgit.freedesktop.org/ooo-build/testing/snapshot/ooo/OOO320_m12.tar.bz2";
name = "ooo320-m12-testing.tar.bz2";
sha256 = "0i7bcxd791id2bbgnsakwnmr4xnzd5hdcydlnqx50mni5mcd13v1";
})
(fetchurl {
url = "http://cgit.freedesktop.org/ooo-build/ure/snapshot/ooo/OOO320_m12.tar.bz2";
name = "ooo320-m12-ure.tar.bz2";
sha256 = "16957l2npcbaizs29ly0xxfqaxinchnrvi720gggwhfp2mbl05ql";
})
(fetchurl {
url = "http://cgit.freedesktop.org/ooo-build/writer/snapshot/ooo/OOO320_m12.tar.bz2";
name = "ooo320-m12-writer.tar.bz2";
sha256 = "0lcdlwy2scs01glj8fi1q1ysmyvn7j70b91ciad3m32lrxmr8s67";
})
(fetchurl {
url = "http://cgit.freedesktop.org/ooo-build/libs-extern-sys/snapshot/ooo/OOO320_m12.tar.bz2";
name = "ooo320-m12-libs-extern-sys.tar.bz2";
sha256 = "0my3wh90xil3xpcjxi1q76v1bwi0rf62pzrf3pi3angd5y3hmysd";
})
(fetchurl {
url = "http://cgit.freedesktop.org/ooo-build/extensions/snapshot/ooo/OOO320_m12.tar.bz2";
name = "ooo320-m12-extensions.tar.bz2";
sha256 = "1qmyc2vb0n6fdl7p92cpvp972zm6ilafq5s5m21wgicqwfr34chv";
})
(fetchurl {
url = "http://download.go-oo.org//SRC680/extras-3.tar.bz2";
sha256 = "1s6cz92b2amfn135l6a2hras4qrd04kw5yyqli7xmb8xqa0m3y3c";
})
(fetchurl {
url = "http://download.go-oo.org//SRC680/biblio.tar.bz2";
sha256 = "02v2xbq771zi09qw3k4zih95m1rjns4pwwpl51n0m34c0a00lhf0";
})
(fetchurl {
url = "http://tools.openoffice.org/unowinreg_prebuild/680//unowinreg.dll";
sha256 = "0g3529nr0nfhn3cygn8x931pqxnqq88nfc5h829xncr1j8ifaqzm";
})
(fetchurl {
url = "http://cgit.freedesktop.org/ooo-build/l10n/snapshot/ooo/OOO320_m12.tar.bz2";
name = "ooo320-m12-l10n.tar.bz2";
sha256 = "0lknxxl0n4f383gxkljl1294zggfgaf2hbg3f6p4q6vr1byf3lww";
})
(fetchurl {
url = "http://download.go-oo.org//SRC680/libwps-0.1.2.tar.gz";
sha256 = "1cdjmgpy0igrwlb5i1sm4s2yxvzbmqz6j7xnmmv3kpbx7z43zw78";
})
(fetchurl {
url = "http://download.go-oo.org//SRC680/libwpg-0.1.3.tar.gz";
sha256 = "1qv5qqycaqrm8arprwf3vyk76fm6v7qabpx5qq58knp1xm72z98r";
})
(fetchurl {
url = "http://download.go-oo.org//DEV300/ooo_oxygen_images-2009-06-17.tar.gz";
sha256 = "0jhgjhm63cmjr59nhvdln1szgm36v6kkazy2388l7z6xjjrhxk1z";
})
]

View file

@ -8,7 +8,8 @@
, jackaudioSupport ? false, jackaudio ? null
, x264Support ? false, x264 ? null
, xvidSupport ? false, xvidcore ? null
, mesa, pkgconfig, unzip
, lameSupport ? true, lame ? null
, mesa, pkgconfig, unzip, yasm
}:
assert alsaSupport -> alsa != null;
@ -53,7 +54,7 @@ stdenv.mkDerivation {
};
buildInputs =
[ x11 libXv freetype zlib mesa pkgconfig ]
[ x11 libXv freetype zlib mesa pkgconfig yasm ]
++ stdenv.lib.optional alsaSupport alsa
++ stdenv.lib.optional xvSupport libXv
++ stdenv.lib.optional theoraSupport libtheora
@ -65,7 +66,8 @@ stdenv.mkDerivation {
++ stdenv.lib.optional jackaudioSupport jackaudio
++ stdenv.lib.optionals amrSupport [ amrnb amrwb ]
++ stdenv.lib.optional x264Support x264
++ stdenv.lib.optional xvidSupport xvidcore;
++ stdenv.lib.optional xvidSupport xvidcore
++ stdenv.lib.optional lameSupport lame;
configureFlags = ''
${if cacaSupport then "--enable-caca" else "--disable-caca"}

View file

@ -5,7 +5,16 @@ header "exporting $url (rev $rev) into $out"
git clone "$url" $out
if test -n "$rev"; then
cd $out
git checkout $rev
# Track all remote branches so that revisions like
# `t/foo@{2010-05-12}' are correctly resolved. Failing to do that,
# Git bails out with an "invalid reference" error.
for branch in $(git branch -rl | grep -v ' origin/master$')
do
git branch --track "$(echo $branch | sed -es,origin/,,g)" "$branch"
done
git checkout "$rev" --
fi
if test -z "$leaveDotGit"; then

View file

@ -311,6 +311,11 @@ pkgs.recurseIntoAttrs (rec {
inherit automoc4 phonon;
};
yakuake = import ./extragear/yakuake {
inherit (pkgs) stdenv fetchurl cmake perl gettext;
inherit kdelibs automoc4 qt4 phonon;
};
### LOCALIZATION
l10n = pkgs.recurseIntoAttrs (import ./l10n {

View file

@ -0,0 +1,19 @@
{ stdenv, fetchurl, kdelibs, cmake, gettext, perl, automoc4, qt4, phonon }:
stdenv.mkDerivation rec {
name = "yakuake-2.9.6";
src = fetchurl {
url = "http://download.berlios.de/yakuake/${name}.tar.bz2";
sha256 = "08n6kdzk205rq1bs4yx5f2qawz6xigdhn9air0pbjsi1j630yfzq";
};
buildInputs = [ kdelibs cmake gettext perl automoc4 qt4 phonon stdenv.gcc.libc ];
meta = with stdenv.lib; {
homepage = http://yakuake.kde.org;
description = "Quad-style terminal emulator for KDE";
maintainers = [ maintainers.urkud ];
platforms = platforms.linux;
};
}

View file

@ -15,6 +15,12 @@ else
EXTRA_LDFLAGS=""
fi
# GCC interprets empty paths as ".", which we don't want.
if test -z "$CPATH"; then unset CPATH; fi
if test -z "$LIBRARY_PATH"; then unset LIBRARY_PATH; fi
echo "\$CPATH is \`$CPATH'"
echo "\$LIBRARY_PATH is \`$LIBRARY_PATH'"
if test "$noSysDirs" = "1"; then
if test -e $NIX_GCC/nix-support/orig-libc; then
@ -48,21 +54,9 @@ if test "$noSysDirs" = "1"; then
EXTRA_LDFLAGS="$EXTRA_LDFLAGS -Wl,$i"
done
if test -n "$targetConfig"; then
# Cross-compiling, we need gcc not to read ./specs in order to build
# the g++ compiler (after the specs for the cross-gcc are created).
# Having LIBRARY_PATH= makes gcc read the specs from ., and the build
# breaks. Having this variable comes from the default.nix code to bring
# gcj in.
unset LIBRARY_PATH
unset CPATH
if test -z "$crossStageStatic" -o -n "$crossMingw"; then
EXTRA_FLAGS_TARGET="-g0 -O2 -B${libcCross}/lib -idirafter ${libcCross}/include"
EXTRA_LDFLAGS_TARGET="-Wl,-L${libcCross}/lib"
fi
else
EXTRA_FLAGS_TARGET="$EXTRA_FLAGS"
EXTRA_LDFLAGS_TARGET="$EXTRA_LDFLAGS"
if test -z "$targetConfig"; then
EXTRA_TARGET_CFLAGS="$EXTRA_FLAGS"
EXTRA_TARGET_LDFLAGS="$EXTRA_LDFLAGS"
fi
# CFLAGS_FOR_TARGET are needed for the libstdc++ configure script to find
@ -74,17 +68,17 @@ if test "$noSysDirs" = "1"; then
NATIVE_SYSTEM_HEADER_DIR="$NIX_FIXINC_DUMMY" \
SYSTEM_HEADER_DIR="$NIX_FIXINC_DUMMY" \
CFLAGS_FOR_BUILD="$EXTRA_FLAGS $EXTRA_LDFLAGS" \
CFLAGS_FOR_TARGET="$EXTRA_FLAGS_TARGET $EXTRA_LDFLAGS_TARGET" \
FLAGS_FOR_TARGET="$EXTRA_FLAGS_TARGET $EXTRA_LDFLAGS_TARGET" \
CFLAGS_FOR_TARGET="$EXTRA_TARGET_CFLAGS" \
FLAGS_FOR_TARGET="$EXTRA_TARGET_CFLAGS $EXTRA_TARGET_LDFLAGS" \
LDFLAGS_FOR_BUILD="$EXTRA_FLAGS $EXTRA_LDFLAGS" \
LDFLAGS_FOR_TARGET="$EXTRA_FLAGS_TARGET $EXTRA_LDFLAGS_TARGET" \
LDFLAGS_FOR_TARGET="$EXTRA_TARGET_LDFLAGS" \
)
if test -z "$targetConfig"; then
makeFlagsArray=( \
"${makeFlagsArray[@]}" \
BOOT_CFLAGS="$EXTRA_FLAGS $EXTRA_LDFLAGS" \
BOOT_LDFLAGS="$EXTRA_FLAGS_TARGET $EXTRA_LDFLAGS_TARGET" \
BOOT_LDFLAGS="$EXTRA_FLAGS $EXTRA_LDFLAGS" \
)
fi

View file

@ -7,6 +7,7 @@
, staticCompiler ? false
, enableShared ? true
, texinfo ? null
, perl ? null # optional, for texi2pod (then pod2man); required for Java
, gmp, mpfr, mpc, gettext, which
, libelf # optional, for link-time optimizations (LTO)
, ppl ? null, cloogppl ? null # optional, for the Graphite optimization framework
@ -24,11 +25,13 @@
, libcCross ? null
, crossStageStatic ? true
, gnat ? null
, libpthread ? null, libpthreadCross ? null # required for GNU/Hurd
}:
assert langTreelang -> bison != null && flex != null;
assert langJava -> zip != null && unzip != null
&& zlib != null && boehmgc != null;
&& zlib != null && boehmgc != null
&& perl != null; # for `--enable-java-home'
assert langAda -> gnatboot != null;
assert langVhdl -> gnat != null;
@ -36,6 +39,7 @@ assert langVhdl -> gnat != null;
assert libelf != null -> zlib != null;
with stdenv.lib;
with builtins;
let version = "4.5.0";
javaEcj = fetchurl {
@ -132,7 +136,7 @@ stdenv.mkDerivation ({
};
patches =
[ ]
[ ./softfp-hurd.patch ]
++ optional (cross != null) ./libstdc++-target.patch
++ optional noSysDirs ./no-sys-dirs.patch
# The GNAT Makefiles did not pay attention to CFLAGS_FOR_TARGET for its
@ -141,10 +145,32 @@ stdenv.mkDerivation ({
++ optional langVhdl ./ghdl-ortho-cflags.patch
;
postPatch =
if (stdenv.system == "i586-pc-gnu"
|| (cross != null && cross.config == "i586-pc-gnu"
&& libcCross != null))
then
# On GNU/Hurd glibc refers to Hurd & Mach headers so add the right `-I'
# flags to the default spec string.
let
libc = if cross != null then libcCross else stdenv.glibc;
config_h = "gcc/config/i386/gnu.h";
extraCPPSpec =
concatStrings (intersperse " "
(map (x: "-I${x}/include")
libc.propagatedBuildInputs));
in
'' echo "augmenting \`CPP_SPEC' in \`${config_h}' with \`${extraCPPSpec}'..."
sed -i "${config_h}" \
-es'|CPP_SPEC *"\(.*\)$|CPP_SPEC "${extraCPPSpec} \1|g'
''
else null;
inherit noSysDirs profiledCompiler staticCompiler langJava crossStageStatic
libcCross crossMingw;
buildInputs = [ texinfo gmp mpfr mpc libelf gettext which ]
++ (optional (perl != null) perl)
++ (optional (ppl != null) ppl)
++ (optional (cloogppl != null) cloogppl)
++ (optionals langTreelang [bison flex])
@ -162,7 +188,11 @@ stdenv.mkDerivation ({
${if enableShared then "" else "--disable-shared"}
${if ppl != null then "--with-ppl=${ppl}" else ""}
${if cloogppl != null then "--with-cloog=${cloogppl}" else ""}
${if langJava then "--with-ecj-jar=${javaEcj}" else ""}
${if langJava then
"--with-ecj-jar=${javaEcj} " +
"--enable-java-home --with-java-home=\${prefix} " +
"--with-jvm-root-dir=\${prefix}/jdk"
else ""}
${if javaAwtGtk then "--enable-java-awt=gtk" else ""}
${if langJava && javaAntlr != null then "--with-antlr-jar=${javaAntlr}" else ""}
--with-gmp=${gmp}
@ -212,15 +242,35 @@ stdenv.mkDerivation ({
(optionals (zlib != null) [ zlib ]
++ optionals langJava [ boehmgc ]
++ optionals javaAwtGtk xlibs
++ optionals javaAwtGtk [ gmp mpfr ])));
++ optionals javaAwtGtk [ gmp mpfr ]
++ optional (libpthread != null) libpthread
++ optional (libpthreadCross != null) libpthreadCross
# On GNU/Hurd glibc refers to Mach & Hurd
# headers.
++ optionals (libcCross != null &&
hasAttr "propagatedBuildInputs" libcCross)
libcCross.propagatedBuildInputs)));
LIBRARY_PATH = concatStrings
(intersperse ":" (map (x: x + "/lib")
(optionals (zlib != null) [ zlib ]
++ optionals langJava [ boehmgc ]
++ optionals javaAwtGtk xlibs
++ optionals javaAwtGtk [ gmp mpfr ])));
++ optionals javaAwtGtk [ gmp mpfr ]
++ optional (libpthread != null) libpthread)));
EXTRA_TARGET_CFLAGS =
if cross != null && libcCross != null
then "-g0 -O2 -idirafter ${libcCross}/include"
else null;
EXTRA_TARGET_LDFLAGS =
if cross != null && libcCross != null
then "-B${libcCross}/lib -Wl,-L${libcCross}/lib" +
(optionalString (libpthreadCross != null)
" -L${libpthreadCross}/lib ${libpthreadCross.TARGET_LDFLAGS}")
else null;
passthru = { inherit langC langCC langAda langFortran langTreelang langVhdl
enableMultilib; };

View file

@ -0,0 +1,32 @@
This patch fixes undefined references to softp symbols (__multf3, __fixunstfsi,
__subtf3, etc.) in libgcc_s.so on GNU/Hurd.
Taken from <http://gcc.gnu.org/ml/gcc-patches/2010-04/msg00602.html>, with second
hunk adjusted so that it applies to GCC 4.5.0.
diff --git a/gcc/config.gcc b/gcc/config.gcc
index 9e499cb..9aec392 100644
--- a/gcc/config.gcc
+++ b/gcc/config.gcc
@@ -3070,7 +3070,9 @@ case ${target} in
i[34567]86-*-darwin* | x86_64-*-darwin*)
tmake_file="${tmake_file} i386/t-fprules-softfp soft-fp/t-softfp"
;;
- i[34567]86-*-linux* | x86_64-*-linux* | i[34567]86-*-kfreebsd*-gnu | x86_64-*-kfreebsd*-gnu)
+ i[34567]86-*-linux* | x86_64-*-linux* | \
+ i[34567]86-*-kfreebsd*-gnu | x86_64-*-kfreebsd*-gnu | \
+ i[34567]86-*-gnu*)
tmake_file="${tmake_file} i386/t-fprules-softfp soft-fp/t-softfp i386/t-linux"
;;
ia64*-*-linux*)
diff --git a/libgcc/config.host b/libgcc/config.host
--- a/libgcc/config.host
+++ b/libgcc/config.host
@@ -600,6 +600,7 @@ case ${host} in
i[34567]86-*-darwin* | x86_64-*-darwin* | \
i[34567]86-*-kfreebsd*-gnu | x86_64-*-kfreebsd*-gnu | \
i[34567]86-*-linux* | x86_64-*-linux* | \
+ i[34567]86-*-gnu* | \
i[34567]86-*-solaris2* | \
i[34567]86-*-cygwin* | i[34567]86-*-mingw* | x86_64-*-mingw*)
if test "${host_address}" = 32; then

View file

@ -72,6 +72,15 @@ in {
};
};
it = buildDict {
shortName = "it-0.53-0";
fullName = "Italian";
src = fetchurl {
url = mirror://gnu/aspell/dict/it/aspell-it-0.53-0.tar.bz2;
sha256 = "0vzs2mk0h2znx0jjs5lqiwdrc4nf6v3f8xbrsni8pfnxhh5ik1rv";
};
};
la = buildDict {
shortName = "la-20020503-0";
fullName = "Latin";

View file

@ -0,0 +1,28 @@
Upstream patch
From fc2870a65f6b3ed3b71bcac69c5faf3a9c759c64 Mon Sep 17 00:00:00 2001
From: Matthias Clasen <mclasen@redhat.com>
Date: Mon, 21 Dec 2009 11:13:23 -0500
Subject: [PATCH 1/2] Don't daemonize when activated
It confuses some versions of D-Bus and isn't needed
(or wanted it).
http://bugs.freedesktop.org/show_bug.cgi?id=25642
---
data/org.freedesktop.ConsoleKit.service.in | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/data/org.freedesktop.ConsoleKit.service.in b/data/org.freedesktop.ConsoleKit.service.in
index ec2128c..d716a36 100644
--- a/data/org.freedesktop.ConsoleKit.service.in
+++ b/data/org.freedesktop.ConsoleKit.service.in
@@ -1,4 +1,4 @@
[D-BUS Service]
Name=org.freedesktop.ConsoleKit
-Exec=@sbindir@/console-kit-daemon
+Exec=@sbindir@/console-kit-daemon --no-daemon
User=root
--
1.7.1

View file

@ -0,0 +1,62 @@
Upstream patch
From 2418840248f07025ad0edc96ed17e03ce5e47f3e Mon Sep 17 00:00:00 2001
From: Ray Strode <rstrode@redhat.com>
Date: Mon, 21 Dec 2009 11:14:54 -0500
Subject: [PATCH 2/2] Don't take bus name until ready
Previously, we would take a bus name right away, but
not register the manager object until later. This
causes a race when being activated by a method call
on the manager object, where ConsoleKit gets started
but the method call fails.
https://bugs.freedesktop.org/show_bug.cgi?id=25744
---
src/main.c | 16 ++++++++--------
1 files changed, 8 insertions(+), 8 deletions(-)
diff --git a/src/main.c b/src/main.c
index 809c6d6..b8f698f 100644
--- a/src/main.c
+++ b/src/main.c
@@ -294,11 +294,19 @@ main (int argc,
setup_debug_log (debug);
+ g_debug ("initializing console-kit-daemon %s", VERSION);
+
connection = get_system_bus ();
if (connection == NULL) {
goto out;
}
+ manager = ck_manager_new ();
+
+ if (manager == NULL) {
+ goto out;
+ }
+
bus_proxy = get_bus_proxy (connection);
if (bus_proxy == NULL) {
g_warning ("Could not construct bus_proxy object; bailing out");
@@ -310,16 +318,8 @@ main (int argc,
goto out;
}
- g_debug ("initializing console-kit-daemon %s", VERSION);
-
create_pid_file ();
- manager = ck_manager_new ();
-
- if (manager == NULL) {
- goto out;
- }
-
loop = g_main_loop_new (NULL, FALSE);
g_signal_connect (bus_proxy,
--
1.7.1

View file

@ -10,6 +10,8 @@ stdenv.mkDerivation rec {
};
buildInputs = [ pkgconfig dbus_glib zlib pam glib libX11 polkit expat ];
patches = [ ./0001-Don-t-daemonize-when-activated.patch
./0002-Don-t-take-bus-name-until-ready.patch ];
# For console-kit to get the rpath to libgcc_s, needed for pthread_cancel to work
NIX_LDFLAGS = "-lgcc_s";

View file

@ -1,4 +1,4 @@
{stdenv, fetchurl, faad2, libtheora, speex, libvorbis, x264, pkgconfig, xvidcore}:
{stdenv, fetchurl, faad2, libtheora, speex, libvorbis, x264, pkgconfig, xvidcore, lame, yasm}:
stdenv.mkDerivation {
name = "ffmpeg-0.5.1";
@ -24,9 +24,11 @@ stdenv.mkDerivation {
--enable-libspeex
--enable-libx264
--enable-libxvid
--enable-libmp3lame
--enable-runtime-cpudetect
'';
buildInputs = [faad2 libtheora speex libvorbis x264 pkgconfig xvidcore];
buildInputs = [faad2 libtheora speex libvorbis x264 pkgconfig xvidcore lame yasm];
meta = {
homepage = http://www.ffmpeg.org/;

View file

@ -0,0 +1,58 @@
### XXX: This file should replace `builder.sh' in the `stdenv-updates'
### branch!
# Glibc cannot have itself in its RPATH.
export NIX_NO_SELF_RPATH=1
source $stdenv/setup
postConfigure() {
# Hack: get rid of the `-static' flag set by the bootstrap stdenv.
# This has to be done *after* `configure' because it builds some
# test binaries.
export NIX_CFLAGS_LINK=
export NIX_LDFLAGS_BEFORE=
export NIX_DONT_SET_RPATH=1
unset CFLAGS
}
postInstall() {
if test -n "$installLocales"; then
make localedata/install-locales
fi
test -f $out/etc/ld.so.cache && rm $out/etc/ld.so.cache
# FIXME: Use `test -n $linuxHeaders' when `kernelHeaders' has been
# renamed.
if test -z "$hurdHeaders"; then
# Include the Linux kernel headers in Glibc, except the `scsi'
# subdirectory, which Glibc provides itself.
(cd $out/include && \
ln -sv $(ls -d $kernelHeaders/include/* | grep -v 'scsi$') .)
fi
if test -f "$out/lib/libhurduser.so"; then
# libc.so, libhurduser.so, and libmachuser.so depend on each
# other, so add them to libc.so (a RUNPATH on libc.so.0.3
# would be ignored by the cross-linker.)
echo "adding \`libhurduser.so' and \`libmachuser.so' to the \`libc.so' linker script..."
sed -i "$out/lib/libc.so" \
-e"s|\(libc\.so\.[^ ]\+\>\)|\1 $out/lib/libhurduser.so $out/lib/libmachuser.so|g"
fi
# Fix for NIXOS-54 (ldd not working on x86_64). Make a symlink
# "lib64" to "lib".
if test -n "$is64bit"; then
ln -s lib $out/lib64
fi
# This file, that should not remain in the glibc derivation,
# may have not been created during the preInstall
rm -f $out/lib/libgcc_s.so.1
}
genericBuild

View file

@ -10,8 +10,9 @@ cross :
, preConfigure ? "", ... }@args :
let
rev = "df4c3faf0ccc848b5a8086c222bdb42679a9798f";
version = if hurdHeaders != null then "0.0-pre" + rev else "2.11.1";
date = "2010-05-12";
rev = "tschwinge/Roger_Whittaker@{${date}}";
version = if hurdHeaders != null then date else "2.11.1";
in
assert (cross != null) -> (gccCross != null);
@ -100,6 +101,8 @@ stdenv.mkDerivation ({
NIX_CFLAGS_COMPILE = stdenv.lib.optionalString (stdenv.system == "i686-linux") "-U__i686";
}
# FIXME: This is way too broad and causes the *native* glibc to have a
# different store path dependending on whether `cross' is null or not.
// args //
{

View file

@ -39,7 +39,21 @@ in
//
(if hurdHeaders != null
then { inherit machHeaders hurdHeaders mig fetchgit; }
then rec {
inherit machHeaders hurdHeaders mig fetchgit;
propagatedBuildInputs = [ machHeaders hurdHeaders ];
passthru = {
# When building GCC itself `propagatedBuildInputs' above is not
# honored, so we pass it here so that the GCC builder can do the right
# thing.
inherit propagatedBuildInputs;
};
# XXX: Remove this hack in `stdenv-updates'.
builder = ./builder2.sh;
}
else { })
//

View file

@ -1,10 +1,11 @@
args: with args;
{stdenv, fetchurl, libgpgerror, gnupg, pkgconfig, glib, pth, libassuan}:
stdenv.mkDerivation {
name = "gpgme-1.1.4";
stdenv.mkDerivation rec {
name = "gpgme-1.3.0";
src = fetchurl {
url = ftp://ftp.gnupg.org/gcrypt/gpgme/gpgme-1.1.4.tar.bz2;
sha256 = "0ncrv7p33rjq1avkxpp9x0gz6wna9y3b3dmw6nv366n5mgvxmpg8";
url = "ftp://ftp.gnupg.org/gcrypt/gpgme/${name}.tar.bz2";
sha256 = "18g6wgiacnbj437yfsczbjxaf041ljia48dnv2qgcqb0sky41q3l";
};
buildInputs = [libgpgerror gnupg gnupg2 pkgconfig glib pth];
buildInputs = [libgpgerror gnupg pkgconfig glib pth libassuan];
configureFlags = "--with-gpg=${gnupg}/bin/gpg2";
}

View file

@ -1,4 +1,4 @@
{ fetchurl, stdenv }:
{ fetchurl, stdenv, shishi }:
stdenv.mkDerivation rec {
name = "gss-1.0.0";
@ -8,16 +8,22 @@ stdenv.mkDerivation rec {
sha256 = "0rcbzg19m7bddvbhjqv1iwyydkj61czb0xr691mkj0i5p4d4bakk";
};
buildInputs = [ shishi ];
doCheck = true;
# Work around the lack of `-lshishi' for `krb5context'. See
# <http://lists.gnu.org/archive/html/help-gsasl/2010-05/msg00005.html>.
checkPhase = "make check LDFLAGS=-lshishi";
meta = {
description = "GNU GSS Generic Security Service";
longDescription =
'' GSS is an implementation of the Generic Security Service Application
Program Interface (GSS-API). GSS-API is used by network servers to
provide security services, e.g., to authenticate SMTP/IMAP clients
against SMTP/IMAP servers.
Program Interface (GSS-API). GSS-API is used by network servers to
provide security services, e.g., to authenticate SMTP/IMAP clients
against SMTP/IMAP servers.
'';
homepage = http://www.gnu.org/software/gss/;

View file

@ -1,19 +1,14 @@
{ stdenv, fetchurl, pkgconfig, cairo, expat, ncurses
, autoconf, automake, libtool }:
{ stdenv, fetchurl, pkgconfig, cairo, expat, ncurses }:
stdenv.mkDerivation rec {
name = "hwloc-1.0rc1";
name = "hwloc-1.0";
src = fetchurl {
url = "http://www.open-mpi.org/software/hwloc/v1.0/downloads/${name}.tar.bz2";
sha256 = "0mgjlyfwp1pbl2312l9diwjw53yb9hb62slmvcb3xvhqdwvj0d7s";
sha256 = "1s64w026idxrkf0y56q4cybapz7yldn1xycnfh1d5bj7v7ncds21";
};
patches = [ ./ncurses.patch ];
preConfigure = "autoreconf -vfi";
buildInputs = [ autoconf automake libtool pkgconfig cairo expat ncurses ];
buildInputs = [ pkgconfig cairo expat ncurses ];
doCheck = true;

View file

@ -1,14 +1,14 @@
{ fetchurl, stdenv, pth }:
{ fetchurl, stdenv, pth, libgpgerror }:
stdenv.mkDerivation rec {
name = "libassuan-1.0.5";
name = "libassuan-2.0.0";
src = fetchurl {
url = "mirror://gnupg/libassuan/${name}.tar.bz2";
sha256 = "1xar8i5jmah75wa9my4x7vkc5b6nmzd2p6k9kmpdg9hsv04292y5";
sha256 = "13vzs4jxscnlskwzd3wpqwnfb5f0hwqc75rbi8j9f42bs6q08apx";
};
propagatedBuildInputs = [ pth ];
propagatedBuildInputs = [ pth libgpgerror ];
doCheck = true;

View file

@ -0,0 +1,28 @@
{ fetchurl, stdenv, pth }:
stdenv.mkDerivation rec {
name = "libassuan-1.0.5";
src = fetchurl {
url = "mirror://gnupg/libassuan/${name}.tar.bz2";
sha256 = "1xar8i5jmah75wa9my4x7vkc5b6nmzd2p6k9kmpdg9hsv04292y5";
};
propagatedBuildInputs = [ pth ];
doCheck = true;
meta = {
description = "Libassuan, the IPC library used by GnuPG and related software";
longDescription = ''
Libassuan is a small library implementing the so-called Assuan
protocol. This protocol is used for IPC between most newer
GnuPG components. Both, server and client side functions are
provided.
'';
homepage = http://gnupg.org;
license = "LGPLv2+";
};
}

View file

@ -1,11 +1,11 @@
args: with args;
{ stdenv, fetchurl, libgpgerror }:
stdenv.mkDerivation rec {
name = "libksba-1.0.2";
name = "libksba-1.0.7";
src = fetchurl {
url = "ftp://ftp.gnupg.org/gcrypt/libksba/${name}.tar.bz2";
sha256 = "1jkjh1daaykkrfq0s4vv8ddf0w8agdvspg9qm0ghjidlrfnsfiwh";
url = "mirror://gnupg/libksba/${name}.tar.bz2";
sha256 = "1biabl4ijaf0jyl4zf3qrhcs0iaq9pypjibp8wgnim3n3kg0bdda";
};
propagatedBuildInputs = [libgpgerror];

View file

@ -0,0 +1,32 @@
{stdenv, fetchurl, bash}:
stdenv.mkDerivation rec {
name = "libvpx-0.9.0";
src = fetchurl {
url = http://webm.googlecode.com/files/libvpx-0.9.0.tar.bz2;
sha256 = "1p5rl7r8zpw43n8i38wv73na8crkkakw16yx0v7n3ywwhp36l2d0";
};
patchPhase = ''
sed -e 's,/bin/bash,${bash}/bin/bash,' -i configure build/make/version.sh \
examples/gen_example_code.sh
'';
configurePhase = ''
mkdir -p build
cd build
../configure --disable-install-srcs --disable-examples --enable-vp8 --enable-runtime-cpu-detect
'';
installPhase = ''
make quiet=false DIST_DIR=$out install
'';
meta = {
description = "VP8 video encoder";
homepage = http://code.google.com/p/webm;
license = "BSD";
};
}

View file

@ -1,15 +1,26 @@
{stdenv, fetchurl, python, gmp}:
{ stdenv, fetchurl, python, gmp }:
stdenv.mkDerivation {
name = "pycrypto-2.0.1";
stdenv.mkDerivation rec {
name = "pycrypto-2.1.0";
src = fetchurl {
url = http://www.amk.ca/files/python/crypto/pycrypto-2.0.1.tar.gz;
md5 = "4d5674f3898a573691ffb335e8d749cd";
url = "http://ftp.dlitz.net/pub/dlitz/crypto/pycrypto/${name}.tar.gz";
sha256 = "18nq49l8wplg54hz9h26n61rq49vjzmy5xzlkm1g0j82x8i1qgi5";
};
buildInputs = [python gmp];
buildInputs = [ python gmp ];
buildPhase = "true";
installPhase = "
python ./setup.py build_ext --library-dirs=${gmp}/lib
python ./setup.py install --prefix=$out
";
installPhase =
''
python ./setup.py build_ext --library-dirs=${gmp}/lib
python ./setup.py install --prefix=$out
'';
meta = {
homepage = http://www.dlitz.net/software/pycrypto/;
description = "Python Cryptography Toolkit";
platforms = stdenv.lib.platforms.linux;
};
}

View file

@ -1,4 +1,7 @@
let lib = import ./default.nix; in
let lib = import ./default.nix;
inherit (builtins) getAttr attrNames isFunction;
in
rec {
@ -31,7 +34,10 @@ rec {
overrideDerivation = drv: f:
let
# Filter out special attributes.
attrs = removeAttrs drv ["meta" "passthru" "outPath" "drvPath" "hostDrv" "buildDrv" "type" "override" "deepOverride" "origArgs"];
drop = ["meta" "passthru" "outPath" "drvPath" "hostDrv" "buildDrv" "type" "override" "deepOverride" "origArgs"]
# also drop functions such as .merge .override etc
++ lib.filter (n: isFunction (getAttr n drv)) (attrNames drv);
attrs = removeAttrs drv drop;
newDrv = derivation (attrs // (f drv));
in newDrv //
{ meta = if drv ? meta then drv.meta else {};

View file

@ -1,6 +1,6 @@
{ pkgs, stdenv } :
let inherit (pkgs) stdenv runCommand perl;
let inherit (pkgs) stdenv runCommand perl lib;
in
@ -106,4 +106,30 @@ in
echo "''${PATH}" > $target/PATH
'';
};
# build a debug version of a package
debugVersion = pkg: lib.overrideDerivation pkg (attrs: {
prePhases = ["preHook"] ++ lib.optionals (pkgs ? prePhases) pkgs.prePhases;
dontStrip = true;
NIX_STRIP_DEBUG=0;
CFLAGS="-ggdb -O0";
CXXFLAGS="-ggdb -O0";
preHook = ''
s=$out/src
mkdir -p $s; cd $s;
export TMP=$s
export TEMP=$s
for var in CFLAGS CXXFLAGS NIX_CFLAGS_COMPILE; do
declare -x "$var=''${!var} -ggdb -O0"
done
echo "file should tell that executable has not been strippee"
'';
});
}

View file

@ -1,9 +1,21 @@
{ fetchgit, stdenv, autoconf, automake, libtool, texinfo
, machHeaders, mig, headersOnly ? true }:
, machHeaders, mig, headersOnly ? true
, cross ? null, gccCross ? null, glibcCross ? null
, buildTarget ? "all", installTarget ? "install" }:
let rev = "7913beaef3e6a2c4f7f315a8db7a31dbe1f713e0"; in
stdenv.mkDerivation (rec {
name = "hurd-0.4-${rev}";
assert (cross != null) -> (gccCross != null);
let
date = "2010-05-12";
rev = "master@{${date}}";
suffix = if headersOnly
then "-headers"
else (if buildTarget != "all"
then "-minimal"
else "");
in
stdenv.mkDerivation ({
name = "hurd${suffix}-${date}";
src = fetchgit {
url = "git://git.sv.gnu.org/hurd/hurd.git";
@ -11,13 +23,27 @@ stdenv.mkDerivation (rec {
inherit rev;
};
buildInputs = [ autoconf automake libtool texinfo mig ];
buildInputs = [ autoconf automake libtool texinfo mig ]
++ stdenv.lib.optional (gccCross != null) gccCross
++ stdenv.lib.optional (glibcCross != null) glibcCross;
propagatedBuildInputs = [ machHeaders ];
configureFlags = "--build=i586-pc-gnu";
configureFlags = stdenv.lib.optionals headersOnly [ "--build=i586-pc-gnu" ];
preConfigure = "autoreconf -vfi";
patchPhase =
'' echo "removing \`-o root' from makefiles..."
for mf in {utils,daemons}/Makefile
do
sed -i "$mf" -e's/-o root//g'
done
'';
buildPhase = "make ${buildTarget}";
installPhase = "make ${installTarget}";
meta = {
description = "The GNU Hurd, GNU project's replacement for the Unix kernel";
@ -41,4 +67,12 @@ stdenv.mkDerivation (rec {
(if headersOnly
then { buildPhase = ":"; installPhase = "make install-headers"; }
else {}))
else (if (cross != null)
then {
crossConfig = cross.config;
# The `configure' script wants to build executables so tell it where
# to find `crt1.o' et al.
LDFLAGS = "-B${glibcCross}/lib";
}
else { })))

View file

@ -0,0 +1,65 @@
{ fetchgit, stdenv, autoconf, automake, libtool
, machHeaders, hurdHeaders, hurd
, cross ? null, gccCross ? null, glibcCross ? null }:
assert (cross != null) -> (gccCross != null) && (glibcCross != null);
let
date = "2010-05-12";
# Use the weird branch prescribed in
# <http://www.gnu.org/software/hurd/hurd/building/cross-compiling.html>.
rev = "tschwinge/Peter_Herbolzheimer@{${date}}";
in
stdenv.mkDerivation ({
name = "libpthread-hurd-${date}";
src = fetchgit {
url = "git://git.sv.gnu.org/hurd/libpthread.git";
sha256 = "1wya9kfmqgn04l995a25p4hxfwddjahfmhdzljb4cribw0bqdizg";
inherit rev;
};
buildNativeInputs = [ autoconf automake libtool ];
buildInputs = [ machHeaders hurdHeaders hurd ]
++ stdenv.lib.optional (gccCross != null) gccCross;
preConfigure = "autoreconf -vfi";
meta = {
description = "GNU Hurd's libpthread";
license = "LGPLv2+";
maintainers = [ stdenv.lib.maintainers.ludo ];
};
}
//
(if cross != null
then {
crossConfig = cross.config;
# Tell gcc where to find `crt1.o' et al. This is specified in two
# different ways: one for gcc as run from `configure', and one for linking
# libpthread.so (by default `libtool --mode=link' swallows `-B', hence
# this workaround; see
# <http://lists.gnu.org/archive/html/bug-libtool/2010-05/msg00012.html>.)
LDFLAGS = "-B${glibcCross}/lib";
makeFlags = [ "LDFLAGS=-Wc,-B${glibcCross}/lib" ];
# Help the linker find glibc.
CPATH = "${glibcCross}/include";
LIBRARY_PATH = "${glibcCross}/lib";
passthru = {
# Extra target LDFLAGS to allow the cross-linker to find the
# dependencies of the cross libpthread.so, namely libihash.so.
#
# This is actually only useful while building the final cross-gcc, since
# afterwards gcc-cross-wrapper should add the relevant flags.
TARGET_LDFLAGS = "-Wl,-rpath-link=${hurd}/lib";
};
}
else { }))

View file

@ -3,10 +3,12 @@
assert (!headersOnly) -> (mig != null);
let rev = "7987a711e8f13c0543e87a0211981f4b40ef6d94";
let
date = "2010-05-12";
rev = "master@{${date}}";
in
stdenv.mkDerivation (rec {
name = "gnumach-1.4-${rev}";
stdenv.mkDerivation ({
name = "gnumach${if headersOnly then "-headers" else ""}-${date}";
src = fetchgit {
url = "git://git.sv.gnu.org/hurd/gnumach.git";

View file

@ -1,9 +1,11 @@
{ fetchgit, stdenv, autoconf, automake, flex, bison, machHeaders
, cross ? null }:
{ fetchgit, stdenv, autoconf, automake, flex, bison, machHeaders }:
let rev = "4fee6a5652f609cb68cdbd9049d4da7a194f15f8"; in
stdenv.mkDerivation rec {
name = "mig-1.4-${rev}";
let
date = "2010-05-12";
rev = "master@{${date}}";
in
stdenv.mkDerivation {
name = "mig-${date}";
src = fetchgit {
url = "git://git.sv.gnu.org/hurd/mig.git";
@ -15,8 +17,9 @@ stdenv.mkDerivation rec {
preConfigure = "autoreconf -vfi";
configureFlags =
stdenv.lib.optionalString (cross != null) "--build=${cross.config}";
configureFlags = [ "--build=i586-pc-gnu" ];
doCheck = true;
meta = {
description = "GNU MIG, the Mach interface generator";

View file

@ -53,7 +53,7 @@ stdenv.mkDerivation {
homepage = http://support.amd.com/us/gpudownload/Pages/index.aspx;
license = "unfree";
maintainers = [stdenv.lib.maintainers.marcweber];
platforms = stdenv.lib.platforms.linux;
platforms = [ "x86_64-linux" ];
};
# moved assertions here because the name is evaluated when the NixOS manual is generated

View file

@ -1,13 +1,25 @@
{stdenv, fetchurl}:
stdenv.mkDerivation rec {
name = "iptables-1.4.6";
name = "iptables-1.4.8";
src = fetchurl {
url = "http://www.netfilter.org/projects/iptables/files/${name}.tar.bz2";
sha256 = "193jdplnkzikrmk0y313d9alc4kp5gi55aikw3b668fnrac2fwvf";
sha256 = "1d6wykz1x2h0hp03akpm5gdgnamb1ij1nxzx3w3lhdvbzjwpbaxq";
};
# Install header files required by miniupnpd.
postInstall =
''
cp include/iptables.h $out/include
cp include/libiptc/libiptc.h include/libiptc/ipt_kernel_headers.h $out/include/libiptc
mkdir $out/include/iptables
cp include/iptables/internal.h $out/include/iptables
mkdir $out/include/net
cp -prd include/net/netfilter $out/include/net/netfilter
mkdir $out/include/linux
'';
meta = {
description = "A program to configure the Linux IP packet filtering ruleset";
homepage = http://www.netfilter.org/projects/iptables/index.html;

View file

@ -3,11 +3,11 @@
assert stdenv.isLinux;
stdenv.mkDerivation rec {
name = "qemu-kvm-0.12.3";
name = "qemu-kvm-0.12.4";
src = fetchurl {
url = "mirror://sourceforge/kvm/${name}.tar.gz";
sha256 = "1cn20jsmf27h23ynm804bz41i2fmmbg02gbnfknz6cwbjg4cvk3p";
sha256 = "07hqcjg97i8j4cvpq3nicwhnc8dvd23rjyl1arr8ayzg1mdgx28l";
};
patches = [ ./unix-domain.patch ./smb-tmpdir.patch ];

View file

@ -1,6 +1,8 @@
{stdenv, fetchurl, aclSupport ? false, acl, perl, gmp}:
{ stdenv, fetchurl, aclSupport ? false, acl ? null, perl, gmp ? null}:
stdenv.mkDerivation rec {
assert aclSupport -> acl != null;
stdenv.mkDerivation (rec {
name = "coreutils-8.4";
src = fetchurl {
@ -26,7 +28,7 @@ stdenv.mkDerivation rec {
# (http://thread.gmane.org/gmane.comp.gnu.core-utils.bugs/19025),
# Darwin (http://thread.gmane.org/gmane.comp.gnu.core-utils.bugs/19351),
# and {Open,Free}BSD.
doCheck = (stdenv ? glibc);
doCheck = (stdenv ? glibc) && (cross == null);
meta = {
homepage = http://www.gnu.org/software/coreutils/;

View file

@ -1,16 +1,21 @@
{ fetchurl, stdenv, glib, pkgconfig, gtk, ncurses }:
{ fetchurl, stdenv, pkgconfig, glib
, useGtk ? true, gtk ? null
, useNcurses ? true, ncurses ? null
, useQt4 ? false, qt4 ? null }:
assert useGtk -> (gtk != null);
assert useNcurses -> (ncurses != null);
assert useQt4 -> (qt4 != null);
stdenv.mkDerivation rec {
name = "pinentry-0.7.5";
name = "pinentry-0.8.0";
src = fetchurl {
url = "mirror://gnupg/pinentry/${name}.tar.gz";
sha256 = "cb269ac058793b2df343a12a65e3402abc4b68503e105b12e4ca903d8d8e3172";
sha256 = "06phs3gbs6gf0z9g28z3jgsw312dhhpdgzrx4hhps53xrbwpyv22";
};
patches = [ ./duplicate-glib-defs.patch ];
buildInputs = [ glib pkgconfig gtk ncurses ];
buildInputs = [ glib pkgconfig gtk ncurses ] ++ stdenv.lib.optional useQt4 qt4;
meta = {
description = "GnuPG's interface to passphrase input";

View file

@ -0,0 +1,17 @@
{ stdenv, fetchurl, openssl, libxml2, zlib }:
stdenv.mkDerivation rec {
name = "aria2-1.9.3";
src = fetchurl {
url = "mirror://sourceforge/aria2/stable/${name}/${name}.tar.bz2";
sha256 = "04vnvq5f797bbyrrv1kzvnv8h02f4wbhvsl34syi4gygimfrwkrn";
};
buildInputs = [ openssl libxml2 zlib ];
meta = {
homepage = http://aria2.sourceforge.net/;
description = "A lightweight, multi-protocol, multi-source, command-line download utility";
};
}

View file

@ -0,0 +1,37 @@
{ stdenv, fetchurl, iptables }:
assert stdenv.isLinux;
stdenv.mkDerivation rec {
name = "miniupnpd-1.4";
src = fetchurl {
url = "http://miniupnp.free.fr/files/download.php?file=${name}.tar.gz";
sha256 = "06q5agkzv2snjxcsszpm27h8bqv41jijahs8jqnarxdrik97rfl5";
};
buildInputs = [ iptables ];
NIX_CFLAGS_COMPILE = "-DIPTABLES_143";
NIX_CFLAGS_LINK = "-liptc";
makefile = "Makefile.linux";
makeFlags = "LIBS=";
postBuild = "cat config.h";
installFlags = "PREFIX=$(out) INSTALLPREFIX=$(out)";
postInstall =
''
ensureDir $out/share/man/man1
cp miniupnpd.1 $out/share/man/man1/
'';
meta = {
homepage = http://miniupnp.free.fr/;
description = "A daemon that implements the UPnP Internet Gateway Device (IGD) specification";
};
}

View file

@ -4,11 +4,11 @@
}:
stdenv.mkDerivation rec {
name = "nix-0.16pre21802";
name = "nix-0.16pre21920";
src = fetchurl {
url = "http://hydra.nixos.org/build/410078/download/4/${name}.tar.bz2";
sha256 = "dec142f401fd0aab771eebcddf8354edc57d9a05f63f07f0e74dd7c499df8cf8";
url = "http://hydra.nixos.org/build/413218/download/4/${name}.tar.bz2";
sha256 = "7d978a5d48a329c01d2af763ce6fc2038dbc24318e4ee57d873fa0c68d30f7ae";
};
buildInputs = [ perl curl openssl ];

View file

@ -4,11 +4,11 @@
}:
stdenv.mkDerivation rec {
name = "nix-0.16pre21778";
name = "nix-0.16pre21832";
src = fetchurl {
url = "http://hydra.nixos.org/build/408983/download/4/${name}.tar.bz2";
sha256 = "54e154776efe05973aaf75b33f6e00987cd147d1cb7a2a132f4386d4b51c6bdc";
url = "http://hydra.nixos.org/build/410867/download/4/${name}.tar.bz2";
sha256 = "c9ab6723859e07982a83c89f8863069c5c5ca9eea21591b194acd838f0de63b9";
};
buildNativeInputs = [ perl ];

View file

@ -0,0 +1,11 @@
{ stdenv, fetchurl, libgpgerror, libgcrypt, libassuan, libksba, openldap }:
stdenv.mkDerivation rec {
name = "dirmngr-1.0.3";
src = fetchurl {
url = "mirror://gnupg/${name}.tar.bz2";
sha256 = "03f54582caxgwjdv1b71azyk612a738ckgk2k05bmg466r1cw8jd";
};
buildInputs = [ libgpgerror libgcrypt libassuan libksba openldap ];
}

View file

@ -1,36 +1,58 @@
{ # Support for the IDEA cipher (used by the old PGP) should only be
# enabled if it is legal for you to do so.
ideaSupport ? false
# Remember to install Pinentry and
# 'echo "pinentry-program `which pinentry-gtk-2`" >> ~/.gnupg/gpg-agent.conf'.
, stdenv, fetchurl, readline, bzip2
{ fetchurl, stdenv, readline, zlib, libgpgerror, pth, libgcrypt, libassuan
, libksba, coreutils, useLdap ? true, openldap ? null
, useBzip2 ? true, bzip2 ? null, useUsb ? true, libusb ? null
, useCurl ? true, curl ? null
}:
let
idea = fetchurl {
url = http://nixos.org/tarballs/idea.c.gz;
md5 = "9dc3bc086824a8c7a331f35e09a3e57f";
};
in
assert useLdap -> (openldap != null);
assert useBzip2 -> (bzip2 != null);
assert useUsb -> (libusb != null);
assert useCurl -> (curl != null);
stdenv.mkDerivation rec {
name = "gnupg-1.4.10";
name = "gnupg-2.0.15";
src = fetchurl {
url = "mirror://gnupg/gnupg/${name}.tar.bz2";
sha256 = "0f5v8c8fkxcnrlmnijaq2sqfqq6xhmbyi2p44pj98y6n6927z452";
sha256 = "070diybdiwf45d8xqbb5lwf3jjvhja1lcr6sf4fcw8519lpqi0aq";
};
buildInputs = [ readline bzip2 ];
buildInputs = [ readline zlib libgpgerror pth libgcrypt libassuan libksba ]
++ stdenv.lib.optional useLdap openldap
++ stdenv.lib.optional useBzip2 bzip2
++ stdenv.lib.optional useUsb libusb
++ stdenv.lib.optional useCurl curl;
patchPhase = ''
find tests -type f | xargs sed -e 's@/bin/pwd@${coreutils}&@g' -i
'';
checkPhase="GNUPGHOME=`pwd` ./agent/gpg-agent --daemon make check";
doCheck = true;
preConfigure = stdenv.lib.optionalString ideaSupport
''
gunzip < ${idea} > ./cipher/idea.c
'';
meta = {
description = "A free implementation of the OpenPGP standard for encrypting and signing data";
homepage = http://www.gnupg.org/;
description = "GNU Privacy Guard (GnuPG), GNU Project's implementation of the OpenPGP standard";
longDescription = ''
GnuPG is the GNU project's complete and free implementation of
the OpenPGP standard as defined by RFC4880. GnuPG allows to
encrypt and sign your data and communication, features a
versatile key managment system as well as access modules for all
kind of public key directories. GnuPG, also known as GPG, is a
command line tool with features for easy integration with other
applications. A wealth of frontend applications and libraries
are available. Version 2 of GnuPG also provides support for
S/MIME.
'';
homepage = http://gnupg.org/;
license = "GPLv3+";
maintainers = with stdenv.lib.maintainers; [ ludo urkud ];
};
}

View file

@ -0,0 +1,36 @@
{ # Support for the IDEA cipher (used by the old PGP) should only be
# enabled if it is legal for you to do so.
ideaSupport ? false
, stdenv, fetchurl, readline, bzip2
}:
let
idea = fetchurl {
url = http://nixos.org/tarballs/idea.c.gz;
md5 = "9dc3bc086824a8c7a331f35e09a3e57f";
};
in
stdenv.mkDerivation rec {
name = "gnupg-1.4.10";
src = fetchurl {
url = "mirror://gnupg/gnupg/${name}.tar.bz2";
sha256 = "0f5v8c8fkxcnrlmnijaq2sqfqq6xhmbyi2p44pj98y6n6927z452";
};
buildInputs = [ readline bzip2 ];
preConfigure = stdenv.lib.optionalString ideaSupport
''
gunzip < ${idea} > ./cipher/idea.c
'';
meta = {
description = "A free implementation of the OpenPGP standard for encrypting and signing data";
homepage = http://www.gnupg.org/;
};
}

View file

@ -0,0 +1,20 @@
{ stdenv, gnupg, coreutils, writeScript }:
stdenv.mkDerivation {
name = "gnupg1compat-0";
builder = writeScript "gnupg1compat-builder" ''
# First symlink all top-level dirs
${coreutils}/bin/mkdir -p $out
${coreutils}/bin/ln -s ${gnupg}/* $out
# Replace bin with directory and symlink it contents
${coreutils}/bin/rm $out/bin
${coreutils}/bin/mkdir -p $out/bin
${coreutils}/bin/ln -s ${gnupg}/bin/* $out/bin
# Add gpg->gpg2 and gpgv->gpgv2 symlinks
${coreutils}/bin/ln -s gpg2 $out/bin/gpg
${coreutils}/bin/ln -s gpgv2 $out/bin/gpgv
'';
}

View file

@ -1,51 +0,0 @@
# Remember to install Pinentry and
# 'echo "pinentry-program `which pinentry-gtk-2`" >> ~/.gnupg/gpg-agent.conf'.
{ fetchurl, stdenv, readline, openldap, bzip2, zlib, libgpgerror
, pth, libgcrypt, libassuan, libksba, libusb, curl }:
stdenv.mkDerivation rec {
name = "gnupg-2.0.12";
src = fetchurl {
url = "mirror://gnupg/gnupg/${name}.tar.bz2";
sha256 = "1klw3m32s6d81qkslin4pibb2f84yz8l6n6fkwfdxyhrql2f2cwn";
};
buildInputs = [ readline openldap bzip2 zlib libgpgerror pth libgcrypt
libassuan libksba libusb curl ];
patchPhase = ''
for file in tests/pkits/*
do
if [ -f "$file" ]
then
sed -i "$file" -es'|/bin/pwd|pwd|g'
fi
done
'';
doCheck = true;
meta = {
description = "GNU Privacy Guard (GnuPG), GNU Project's implementation of the OpenPGP standard";
longDescription = ''
GnuPG is the GNU project's complete and free implementation of
the OpenPGP standard as defined by RFC4880. GnuPG allows to
encrypt and sign your data and communication, features a
versatile key managment system as well as access modules for all
kind of public key directories. GnuPG, also known as GPG, is a
command line tool with features for easy integration with other
applications. A wealth of frontend applications and libraries
are available. Version 2 of GnuPG also provides support for
S/MIME.
'';
homepage = http://gnupg.org/;
license = "GPLv3+";
maintainers = [ stdenv.lib.maintainers.ludo ];
};
}

View file

@ -1,5 +1,5 @@
{stdenv, fetchurl, libtool, readline, zlib, openssl, libiconv, pcsclite, libassuan, pkgconfig,
libXt, pinentry}:
{stdenv, fetchurl, libtool, readline, zlib, openssl, libiconv, pcsclite,
libassuan1, pkgconfig, libXt, pinentry}:
stdenv.mkDerivation rec {
name = "opensc-0.11.7";
@ -13,7 +13,7 @@ stdenv.mkDerivation rec {
"--with-pcsc-provider=${pcsclite}/lib/libpcsclite.so.1"
"--with-pinentry=${pinentry}/bin/pinentry" ];
buildInputs = [ libtool readline zlib openssl pcsclite libassuan pkgconfig
buildInputs = [ libtool readline zlib openssl pcsclite libassuan1 pkgconfig
libXt ] ++
stdenv.lib.optional (! stdenv.isLinux) libiconv;

View file

@ -1,30 +1,42 @@
{stdenv, fetchurl, libevent, openssl, zlib}:
{ stdenv, fetchurl, libevent, openssl, zlib }:
stdenv.mkDerivation {
stdenv.mkDerivation rec {
name = "tor-0.2.1.26";
src = fetchurl {
url = "http://www.torproject.org/dist/tor-0.2.1.26.tar.gz";
url = "http://www.torproject.org/dist/${name}.tar.gz";
sha256 = "18kz1hs6lvckkddy4y36gi7ly03ar2il2xzkrf8bfgif1gnn1p3c";
};
buildInputs = [libevent openssl zlib];
patchPhase =
# DNS lookups fail in chroots.
'' sed -i "src/or/test.c" -es/localhost/127.0.0.1/g
'';
buildInputs = [ libevent openssl zlib ];
doCheck = true;
meta = {
homepage = http://www.torproject.org/;
description = "Tor is an onion router enabling Internet anonymity by thwarting network traffic analysis";
longDescription=''
Tor protects you by bouncing your communications around a distributed
network of relays run by volunteers all around the world: it prevents
somebody watching your Internet connection from learning what sites you
visit, and it prevents the sites you visit from learning your physical
location. Tor works with many of your existing applications, including
web browsers, instant messaging clients, remote login, and other
applications based on the TCP protocol.
'';
license="bsd";
};
description = "Tor, an anonymous network router to improve privacy on the Internet";
longDescription=''
Tor protects you by bouncing your communications around a distributed
network of relays run by volunteers all around the world: it prevents
somebody watching your Internet connection from learning what sites you
visit, and it prevents the sites you visit from learning your physical
location. Tor works with many of your existing applications, including
web browsers, instant messaging clients, remote login, and other
applications based on the TCP protocol.
'';
license="mBSD";
maintainers =
[ # Russell OConnor <roconnor@theorem.ca> ?
stdenv.lib.maintainers.ludo
];
platforms = stdenv.lib.platforms.gnu; # arbitrary choice
};
}

View file

@ -371,6 +371,10 @@ let
aria = builderDefsPackage (import ../tools/networking/aria) {
};
aria2 = import ../tools/networking/aria2 {
inherit fetchurl stdenv openssl libxml2 zlib;
};
at = import ../tools/system/at {
inherit fetchurl stdenv bison flex pam ssmtp;
};
@ -542,7 +546,9 @@ let
else import ../tools/misc/coreutils)
{
inherit fetchurl stdenv acl perl gmp;
aclSupport = stdenv.isLinux;
# TODO: Add ACL support for cross-Linux.
aclSupport = (crossSystem == null) && stdenv.isLinux;
};
coreutils = useFromStdenv "coreutils" coreutils_real;
@ -628,6 +634,10 @@ let
inherit fetchurl stdenv coreutils;
});
dirmngr = import ../tools/security/dirmngr {
inherit stdenv fetchurl libgpgerror libgcrypt libassuan libksba openldap;
};
docbook2x = import ../tools/typesetting/docbook2x {
inherit fetchurl stdenv texinfo perl
gnused groff libxml2 libxslt makeWrapper;
@ -646,8 +656,9 @@ let
};
duplicity = import ../tools/backup/duplicity {
inherit fetchurl stdenv librsync gnupg makeWrapper python;
inherit fetchurl stdenv librsync makeWrapper python;
inherit (pythonPackages) boto;
gnupg = gnupg1;
};
dvdplusrwtools = import ../tools/cd-dvd/dvd+rw-tools {
@ -807,14 +818,21 @@ let
inherit fetchurl stdenv ed;
});
gnupg = makeOverridable (import ../tools/security/gnupg) {
gnupg1orig = makeOverridable (import ../tools/security/gnupg1) {
inherit fetchurl stdenv readline bzip2;
ideaSupport = false;
};
gnupg2 = makeOverridable (import ../tools/security/gnupg2) {
gnupg1compat = import ../tools/security/gnupg1compat {
inherit stdenv gnupg writeScript coreutils;
};
# use config.packageOverrides if you prefer original gnupg1
gnupg1 = gnupg1compat;
gnupg = makeOverridable (import ../tools/security/gnupg) {
inherit fetchurl stdenv readline libgpgerror libgcrypt libassuan pth libksba zlib
openldap bzip2 libusb curl;
openldap bzip2 libusb curl coreutils;
};
gnuplot = makeOverridable (import ../tools/graphics/gnuplot) {
@ -1078,6 +1096,10 @@ let
flex = flex2535;
};
miniupnpd = import ../tools/networking/miniupnpd {
inherit fetchurl stdenv iptables;
};
mjpegtools = import ../tools/video/mjpegtools {
inherit fetchurl stdenv libjpeg;
inherit (xlibs) libX11;
@ -1271,7 +1293,7 @@ let
opensc_0_11_7 = import ../tools/security/opensc/0.11.7.nix {
inherit fetchurl stdenv libtool readline zlib openssl libiconv pcsclite
libassuan pkgconfig pinentry;
libassuan1 pkgconfig pinentry;
inherit (xlibs) libXt;
};
@ -1369,8 +1391,8 @@ let
inherit (xlibs) libX11;
};
pinentry = import ../tools/misc/pinentry {
inherit fetchurl stdenv pkgconfig ncurses;
pinentry = makeOverridable (import ../tools/misc/pinentry) {
inherit fetchurl stdenv pkgconfig ncurses qt4;
inherit (gnome) glib gtk;
};
@ -2091,7 +2113,13 @@ let
};
gccCrossStageFinal = wrapGCCCross {
gcc = forceBuildDrv gcc_realCross;
gcc = forceBuildDrv (gcc_realCross.override {
libpthreadCross =
# FIXME: Don't explicitly refer to `i586-pc-gnu'.
if crossSystem != null && crossSystem.config == "i586-pc-gnu"
then hurdLibpthreadCross
else null;
});
libc = libcCross;
binutils = binutilsCross;
cross = assert crossSystem != null; crossSystem;
@ -2110,7 +2138,7 @@ let
}));
gcc45 = lowPrio (wrapGCC (makeOverridable (import ../development/compilers/gcc-4.5) {
inherit fetchurl stdenv texinfo gmp mpfr mpc libelf zlib
inherit fetchurl stdenv texinfo gmp mpfr mpc libelf zlib perl
ppl cloogppl
gettext which noSysDirs;
profiledCompiler = true;
@ -2190,7 +2218,7 @@ let
langCC = true;
langC = false;
profiledCompiler = false;
inherit zip unzip zlib boehmgc gettext pkgconfig;
inherit zip unzip zlib boehmgc gettext pkgconfig perl;
inherit (gtkLibs) gtk;
inherit (gnome) libart_lgpl;
inherit (xlibs) libX11 libXt libSM libICE libXtst libXi libXrender
@ -3244,10 +3272,9 @@ let
inherit fetchurl stdenv builderDefs stringsWithDeps lib elfutils;
};
migCross = forceBuildDrv (import ../development/tools/misc/mig {
mig = import ../os-specific/gnu/mig {
inherit fetchgit stdenv autoconf automake flex bison machHeaders;
cross = assert crossSystem != null; crossSystem;
});
};
mk = import ../development/tools/build-managers/mk {
inherit fetchurl stdenv;
@ -3711,7 +3738,8 @@ let
};
ffmpeg = import ../development/libraries/ffmpeg {
inherit fetchurl stdenv faad2 libvorbis speex libtheora x264 pkgconfig xvidcore;
inherit fetchurl stdenv faad2 libvorbis speex libtheora x264 pkgconfig xvidcore
lame yasm;
};
fftw = import ../development/libraries/fftw {
@ -3901,10 +3929,7 @@ let
//
(if crossGNU
then {
inherit machHeaders hurdHeaders fetchgit;
mig = migCross;
}
then { inherit machHeaders hurdHeaders mig fetchgit; }
else { }))));
glibcCross = glibc211Cross;
@ -4030,7 +4055,7 @@ let
};
gpgme = import ../development/libraries/gpgme {
inherit fetchurl stdenv libgpgerror pkgconfig pth gnupg gnupg2 glib;
inherit fetchurl stdenv libgpgerror pkgconfig pth gnupg glib libassuan;
};
gsasl = import ../development/libraries/gsasl {
@ -4046,7 +4071,7 @@ let
};
gss = import ../development/libraries/gss {
inherit stdenv fetchurl;
inherit stdenv fetchurl shishi;
};
gtkimageview = import ../development/libraries/gtkimageview {
@ -4181,8 +4206,7 @@ let
};
hwloc = import ../development/libraries/hwloc {
inherit fetchurl stdenv pkgconfig cairo expat ncurses
autoconf automake libtool;
inherit fetchurl stdenv pkgconfig cairo expat ncurses;
};
hydraAntLogger = import ../development/libraries/java/hydra-ant-logger {
@ -4300,10 +4324,14 @@ let
openssl attr;
};
libassuan = import ../development/libraries/libassuan {
libassuan1 = import ../development/libraries/libassuan1 {
inherit fetchurl stdenv pth;
};
libassuan = import ../development/libraries/libassuan {
inherit fetchurl stdenv pth libgpgerror;
};
libavc1394 = import ../development/libraries/libavc1394 {
inherit fetchurl stdenv pkgconfig libraw1394;
};
@ -4713,6 +4741,10 @@ let
inherit fetchurl stdenv pkgconfig ncurses gpm glib;
};
libvpx = import ../development/libraries/libvpx {
inherit fetchurl stdenv bash;
};
libvterm = import ../development/libraries/libvterm {
inherit fetchurl stdenv pkgconfig ncurses glib;
};
@ -6069,13 +6101,47 @@ let
inherit fetchurl stdenv ncurses;
};
hurdCross = forceBuildDrv(import ../os-specific/gnu/hurd {
inherit fetchgit stdenv autoconf libtool texinfo machHeaders
mig glibcCross;
automake = automake111x;
headersOnly = false;
cross = assert crossSystem != null; crossSystem;
gccCross = gccCrossStageFinal;
});
hurdCrossIntermediate = forceBuildDrv(import ../os-specific/gnu/hurd {
inherit fetchgit stdenv autoconf libtool texinfo machHeaders
mig glibcCross;
automake = automake111x;
headersOnly = false;
cross = assert crossSystem != null; crossSystem;
# The "final" GCC needs glibc and the Hurd libraries (libpthread in
# particular) so we first need an intermediate Hurd built with the
# intermediate GCC.
gccCross = gccCrossStageStatic;
# This intermediate Hurd is only needed to build libpthread, which really
# only needs libihash.
buildTarget = "libihash";
installTarget = "libihash-install";
});
hurdHeaders = import ../os-specific/gnu/hurd {
inherit fetchgit stdenv autoconf libtool texinfo machHeaders;
mig = migCross;
inherit fetchgit stdenv autoconf libtool texinfo mig machHeaders;
automake = automake111x;
headersOnly = true;
};
hurdLibpthreadCross = forceBuildDrv(import ../os-specific/gnu/libpthread {
inherit fetchgit stdenv autoconf automake libtool
machHeaders hurdHeaders glibcCross;
hurd = hurdCrossIntermediate;
gccCross = gccCrossStageStatic;
cross = assert crossSystem != null; crossSystem;
});
hwdata = import ../os-specific/linux/hwdata {
inherit fetchurl stdenv;
};
@ -8123,7 +8189,7 @@ let
MPlayer = import ../applications/video/MPlayer {
inherit fetchurl stdenv freetype fontconfig x11 zlib libtheora libcaca libdvdnav
cdparanoia mesa pkgconfig unzip amrnb amrwb jackaudio x264 xvidcore;
cdparanoia mesa pkgconfig unzip amrnb amrwb jackaudio x264 xvidcore lame yasm;
inherit (xlibs) libX11 libXv libXinerama libXrandr;
alsaSupport = true;
alsa = alsaLib;
@ -8203,6 +8269,21 @@ let
stdenv = stdenv2;
};
go_oo = import ../applications/office/openoffice/go-oo.nix {
inherit fetchurl pam python tcsh libxslt perl zlib libjpeg
expat pkgconfig freetype fontconfig libwpd libxml2 db4 sablotron
curl libsndfile flex zip unzip libmspack getopt file cairo
which icu jdk ant cups openssl bison boost gperf cppunit;
inherit (xlibs) libXaw libXext libX11 libXtst libXi libXinerama;
inherit (gtkLibs) gtk;
inherit (perlPackages) ArchiveZip CompressZlib;
inherit (gnome) GConf ORBit2;
neon = neon026;
stdenv = stdenv2;
inherit autoconf openldap postgresql;
};
opera = import ../applications/networking/browsers/opera {
inherit fetchurl zlib glibc stdenv makeDesktopItem;
inherit (xlibs) libX11 libSM libICE libXt libXext;

View file

@ -1879,8 +1879,8 @@ rec {
url = mirror://cpan/authors/id/G/GB/GBARR/libnet-1.22.tar.gz;
sha256 = "113c36qilbvd69yhkm2i2ba20ajff7cdpgvlqx96j9bb1hfmhb1p";
};
# Test perform network access
doCheck = false;
patchPhase = "chmod a-x Configure";
doCheck = false; # The test suite fails, because it requires network access.
};
NetSMTPSSL = buildPerlPackage {

View file

@ -685,11 +685,11 @@ rec {
};
twisted = buildPythonPackage {
name = "twisted-8.2.0";
name = "twisted-10.0.0";
src = fetchurl {
url = http://tmrc.mit.edu/mirror/twisted/Twisted/8.2/Twisted-8.2.0.tar.bz2;
sha256 = "1c6zplisjdnjzkfs0ld3a0f7m7xbjgx5rcwsdw5i1xiibsq2nq70";
url = http://tmrc.mit.edu/mirror/twisted/Twisted/10.0/Twisted-10.0.0.tar.bz2;
sha256 = "1cbqpvwdwsc2av43fyqqdyyxs2j3drbagnl9m5vk7fl9k5q8q4fv";
};
propagatedBuildInputs = [ zopeInterface ];

View file

@ -6,6 +6,7 @@ let
basicHostDrv = {
bison.hostDrv = nativePlatforms;
busybox.hostDrv = nativePlatforms;
coreutils_real.hostDrv = nativePlatforms;
dropbear.hostDrv = nativePlatforms;
tightvnc.hostDrv = nativePlatforms;
#openoffice.hostDrv = nativePlatforms;
@ -152,5 +153,14 @@ let
in {
crossGNU = mapTestOnCross crossSystem {
gccCrossStageFinal = nativePlatforms;
hurdCross = nativePlatforms;
coreutils_real.hostDrv = nativePlatforms;
ed.hostDrv = nativePlatforms;
grub2.hostDrv = nativePlatforms;
inetutils.hostDrv = nativePlatforms;
nixUnstable.hostDrv = nativePlatforms;
patch.hostDrv = nativePlatforms;
zile.hostDrv = nativePlatforms;
};
})

View file

@ -3,7 +3,26 @@ rec {
pkgs = allPackages {};
/* The working or failing letters for cross builds will be sent only to
/* !!! Hack: poor man's memoisation function. Necessary for prevent
Nixpkgs from being evaluated again and again for every
job/platform pair. */
pkgsFor = system:
if system == "x86_64-linux" then pkgs_x86_64_linux
else if system == "i686-linux" then pkgs_i686_linux
else if system == "x86_64-darwin" then pkgs_x86_64_darwin
else if system == "i686-darwin" then pkgs_i686_darwin
else if system == "i686-freebsd" then pkgs_i686_freebsd
else if system == "i686-cygwin" then pkgs_i686_cygwin
else abort "unsupported system type: ${system}";
pkgs_x86_64_linux = allPackages { system = "x86_64-linux"; };
pkgs_i686_linux = allPackages { system = "i686-linux"; };
pkgs_x86_64_darwin = allPackages { system = "x86_64-darwin"; };
pkgs_i686_darwin = allPackages { system = "i686-darwin"; };
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 ];
@ -23,7 +42,7 @@ rec {
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 (allPackages {inherit system;}) else {};
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 */

View file

@ -120,7 +120,7 @@ with (import ./release-lib.nix);
gnum4 = all;
gnumake = all;
gnupatch = all;
gnupg2 = linux;
gnupg = linux;
gnuplot = allBut "i686-cygwin";
gnused = all;
gnutar = all;