3
0
Fork 0
forked from mirrors/nixpkgs

Merge remote-tracking branch 'upstream/master'

This commit is contained in:
Jack Cummings 2012-10-06 20:27:01 -07:00
commit a4978228e2
11 changed files with 184 additions and 109 deletions

View file

@ -2,6 +2,7 @@
, libIDL, dbus_glib, bzip2, alsaLib, nspr, yasm, mesa, nss
, libnotify, cairo, pixman, fontconfig
, libjpeg
, pythonPackages
, # If you want the resulting program to call itself "Thunderbird"
# instead of "Shredder", enable this option. However, those
@ -9,45 +10,24 @@
# Mozilla Foundation, see
# http://www.mozilla.org/foundation/trademarks/.
enableOfficialBranding ? false
}:
let version = "11.0.1";
# This patch may become necessary when we use a more recent version of libpng
# for now, it's actually not needed
# pngPatch = fetchurl {
# url = http://www.linuxfromscratch.org/patches/blfs/svn/thunderbird-9.0.1-libpng-1.5-1.patch;
# sha256 = "8454bdde3be8dc37c9f5e6f597914f0a585ff4b357d3fc86c6c9f80208b6068d";
# };
in
let version = "15.0.1"; in
stdenv.mkDerivation {
name = "thunderbird-${version}";
src = fetchurl {
url = "ftp://ftp.mozilla.org/pub/thunderbird/releases/11.0.1/source/thunderbird-${version}.source.tar.bz2";
sha1 = "037344b451b1c031472d92f96d401b15d8e3e7d3";
url = "ftp://ftp.mozilla.org/pub/thunderbird/releases/${version}/source/thunderbird-${version}.source.tar.bz2";
sha1 = "688bed2b48abda000b489f3c84de0ba9f93818f0";
};
enableParallelBuilding = true;
buildInputs =
[ pkgconfig perl python zip unzip bzip2 gtk dbus_glib alsaLib libIDL nspr
libnotify cairo pixman fontconfig yasm mesa /* nss */
libjpeg
];
# fix some paths in pngPatch
# prePatch = ''
# substitute ${pngPatch} png.patch --replace "mozilla-release/modules/" "comm-release/mozilla/modules/"
# '';
patches = [
# "png.patch" # produced by postUnpack
# Fix weird dependencies such as a so file which depends on "-lpthread".
# ./thunderbird-build-deps.patch
libnotify cairo pixman fontconfig yasm mesa nss
libjpeg pythonPackages.sqlite3
];
configureFlags =
@ -58,11 +38,13 @@ stdenv.mkDerivation {
"--enable-strip"
"--with-pthreads"
"--with-system-jpeg"
# "--with-system-png" # png 1.5.x not merged in nixpkgs yet
#"--with-system-png"
"--with-system-zlib"
"--with-system-bz2"
"--with-system-nspr"
"--enable-system-cairo"
"--with-system-nss"
# Broken: https://bugzilla.mozilla.org/show_bug.cgi?id=722975
#"--enable-system-cairo"
"--disable-crashreporter"
"--disable-necko-wifi"
"--disable-webm"
@ -84,10 +66,7 @@ stdenv.mkDerivation {
postInstall =
''
# Fix some references to /bin paths in the Xulrunner shell script.
substituteInPlace $out/lib/thunderbird-*/thunderbird \
--replace /bin/pwd "$(type -tP pwd)" \
--replace /bin/ls "$(type -tP ls)"
rm -rf $out/include $out/lib/thunderbird-devel-* $out/share/idl
# Create a desktop item.
mkdir -p $out/share/applications
@ -109,7 +88,7 @@ stdenv.mkDerivation {
# Official branding implies thunderbird name and logo cannot be reuse,
# see http://www.mozilla.org/foundation/licensing.html
if enableOfficialBranding then licenses.proprietary else licenses.mpl11;
maintainers = with maintainers; [ pierron ];
platforms = with platforms; linux;
maintainers = maintainers.pierron;
platforms = platforms.linux;
};
}

View file

@ -0,0 +1,30 @@
{ stdenv, fetchgit, sqlite, pkgconfig
, buildllvmsparse ? true
, buildc2xml ? true
, llvm ? null, libxml2 ? null
}:
assert buildllvmsparse -> llvm != null;
assert buildc2xml -> libxml2 != null;
stdenv.mkDerivation {
name = "smatch";
src = fetchgit {
url = git://repo.or.cz/smatch.git;
rev = "23656e3e578b700cbf96d043f039e6341a3ba5b9";
sha256 = "09a44967d4cff026c67062f778e251d0b432af132e9d59a47b7d3167f379adfa";
};
buildInputs = [sqlite pkgconfig]
++ stdenv.lib.optional buildllvmsparse llvm
++ stdenv.lib.optional buildc2xml libxml2;
installFlags = "DESTDIR=$(out)";
meta = {
description = "A semantic analysis tool for C";
homepage = "http://smatch.sourceforge.net/";
license = "free"; /* OSL, see http://www.opensource.org */
};
}

View file

@ -155,6 +155,12 @@ rec {
# Return true iff string v1 denotes a version older than v2.
versionOlder = v1: v2: builtins.compareVersions v2 v1 == 1;
# Get the version of the specified derivation, as specified in its
# name attribute.
getVersion = drv: (builtins.parseDrvName drv.name).version;
# Extract name with version from URL. Ask for separator which is
# supposed to start extension
nameFromURL = url: sep: let

View file

@ -1,21 +1,27 @@
{ stdenv, fetchurl, hotplugSupport ? true, libusb ? null
{ stdenv, fetchurl, hotplugSupport ? true, libusb ? null, libv4l ? null
, pkgconfig ? null
, gt68xxFirmware ? null }:
let
firmware = gt68xxFirmware {inherit fetchurl;};
in
assert hotplugSupport -> (stdenv.system == "i686-linux" || stdenv.system == "x86_64-linux");
stdenv.mkDerivation {
name = "sane-backends-1.0.22";
stdenv.mkDerivation rec {
version = "1.0.23";
name = "sane-backends-${version}";
src = fetchurl {
url = http://alioth.debian.org/frs/download.php/3503/sane-backends-1.0.22.tar.gz;
sha256 = "0m0cz4ljw9asqvpryl6gx1ndwf7ll2qinlvql9whnzs901la314z";
url = "https://launchpad.net/ubuntu/+archive/primary/+files/sane-backends_${version}.orig.tar.gz";
sha256 = "4d4f5b2881615af7fc0ed75fdde7dc623a749e80e40f3f792fe4010163cbb029";
};
udevSupport = hotplugSupport;
buildInputs = if libusb != null then [libusb] else [];
buildInputs = []
++ stdenv.lib.optional (libusb != null) libusb
++ stdenv.lib.optional (libv4l != null) libv4l
++ stdenv.lib.optional (pkgconfig != null) pkgconfig
;
postInstall = ''
if test "$udevSupport" = "1"; then

View file

@ -13,7 +13,7 @@ stdenv.mkDerivation rec {
sha256 = "0cgnnl6kqaz3als5y9g8jvsvbs4c8ccp0vl4s1g8rwk69w2cwxd2";
};
patches = [ ./reexec.patch ];
patches = [ ./reexec.patch ./ignore-duplicates.patch ];
buildInputs =
[ pkgconfig intltool gperf libcap dbus kmod xz pam acl

View file

@ -0,0 +1,20 @@
Ignore duplicate paths in "systemctl start".
diff --git a/src/systemctl/systemctl.c b/src/systemctl/systemctl.c
index a4290c4..d3ac3ad 100644
--- a/src/systemctl/systemctl.c
+++ b/src/systemctl/systemctl.c
@@ -1596,8 +1596,11 @@ static int start_unit_one(
r = set_put(s, p);
if (r < 0) {
- 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;

View file

@ -1,10 +1,11 @@
{stdenv, fetchurl}:
{ stdenv, fetchurl }:
stdenv.mkDerivation rec {
name = "cabextract-1.3";
name = "cabextract-1.4";
src = fetchurl {
url = meta.homepage + name + ".tar.gz";
sha256 = "00f0qcrz9f2gwvm98qglbrjpwrzwrfdgh0hck6im93dl6lx3hr6l";
url = "http://www.cabextract.org.uk/${name}.tar.gz";
sha256 = "07p49053a727nwnw7vnx1bpj4xqa43cvx8mads2146fpqai8pfpp";
};
meta = {

View file

@ -1,11 +1,11 @@
{ stdenv, fetchurl }:
stdenv.mkDerivation rec {
name = "p7zip-9.13";
name = "p7zip-9.20.1";
src = fetchurl {
url = mirror://sourceforge/p7zip/p7zip_9.13_src_all.tar.bz2;
sha256 = "08yr0cfbjx60r1ia7vhphzvc3gax62xhgsn3vdm7sdmxxai0z77w";
url = mirror://sourceforge/p7zip/p7zip_9.20.1_src_all.tar.bz2;
sha256 = "10j7rc1nzdp7vvcpc3340yi3qw7abby4szv8zkwh10d0zizpwma9";
};
preConfigure =
@ -14,6 +14,8 @@ stdenv.mkDerivation rec {
buildFlags=all3
'';
enableParallelBuilding = true;
meta = {
homepage = http://p7zip.sourceforge.net/;
description = "A port of the 7-zip archiver";

View file

@ -1,55 +1,65 @@
{ stdenv, fetchurl, dpkg, gettext, gawk, perl, wget }:
{ stdenv, fetchurl, dpkg, gettext, gawk, perl, wget, coreutils, fakeroot }:
let
devices = fetchurl {
url = mirror://gentoo/distfiles/devices.tar.gz;
sha256 = "0j4yhajmlgvbksr2ij0dm7jy3q52j3wzhx2fs5lh05i1icygk4qd";
# USAGE like this: debootstrap sid /tmp/target-chroot-directory
# There is also cdebootstrap now. Is that easier to maintain?
makedev = stdenv.mkDerivation {
name = "makedev-for-debootstrap";
src = fetchurl {
url = mirror://debian/pool/main/m/makedev/makedev_2.3.1.orig.tar.gz;
sha256 = "1yhxlj2mhn1nqkx1f0sn0bl898nf28arxxa4lgp7hdrb5cpp36c5";
};
patches = [
(fetchurl {
url = "http://ftp.de.debian.org/debian/pool/main/m/makedev/makedev_2.3.1-89.diff.gz";
sha256 = "1zbifw2jkq6471fb67y893nq4lq009xbfbi57jbjwxnhqmrppcy9";
})
];
# TODO install man
installPhase = ''
ensureDir $out/sbin
ls -l
t=$out/sbin/MAKEDEV
cp MAKEDEV $t
chmod +x $t
'';
};
in
stdenv.mkDerivation {
name = "debootstrap-1.0.10lenny";
name = "debootstrap-1.0.42";
src = fetchurl {
# I'd like to use the source. However it's lacking the lanny script ?
url = mirror://debian/pool/main/d/debootstrap/debootstrap_1.0.10lenny1_all.deb;
sha256 = "a70af8e3369408ce9d6314fb5219de73f9523b347b75a3b07ee17ea92c445051";
# git clone git://git.debian.org/d-i/debootstrap.git
# I'd like to use the source. However it's lacking the lanny script ? (still true?)
url = http://ftp.de.debian.org/debian/pool/main/d/debootstrap/debootstrap_1.0.42.tar.gz;
sha256 = "0a5azl22wz1q92b2c91zlpz6krd7wqyi63yk87vyczp363ml0nz0";
};
buildInputs = [ dpkg gettext gawk perl ];
unpackPhase = ''
dpkg-deb --extract "$src" .
'';
buildPhase = ":";
patches = [
# replace /usr/* and /sbin/* executables by @executable@ so that they can be replaced by substitute
# Be careful not to replace code being run in the debian chroot !
./subst.patch
];
# from deb
# If you have to update the patch for functions a vim regex like this
# can help you identify which lines are used to write scripts on TARGET and
# which should /bin/ paths should be replaced:
# \<echo\>\|\/bin\/\|^\s*\<cat\>\|EOF\|END
installPhase = ''
cp -r . $out; cd $out
t=bin/debootstrap
mkdir -p bin man/man8
cat >> $t << EOF
#!/bin/sh
export DEBOOTSTRAP_DIR=$out/usr/share/debootstrap
# mount and other tools must be found in chroot. So add default debain paths!
# TODO only add paths which are required by the scripts!
export PATH=$PATH:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
$out/usr/sbin/debootstrap "\$@"
EOF
chmod +x $t
mv usr/share/man/man8/debootstrap.8.gz man/man8
set -x
for file in usr/share/debootstrap/functions usr/sbin/debootstrap; do
sed -i \
-e 's@/usr/bin/id@id@' \
-e 's@/usr/bin/dpkg@${dpkg}/bin/dpkg@' \
-e 's@/usr/bin/sha@${coreutils}/bin/sha@' \
-e 's@/bin/sha@${coreutils}/bin/sha@' \
debootstrap
for file in functions debootstrap; do
substituteInPlace "$file" \
--subst-var-by gunzip "$(type -p gunzip)" \
--subst-var-by bunzip "$(type -p bunzip)" \
@ -61,28 +71,36 @@ stdenv.mkDerivation {
--subst-var-by uname "$(type -p uname)" \
--subst-var-by wget "${wget}/bin/wget"
done
sed -i \
-e 's@\<wget\>@${wget}/bin/wget@' \
functions
d=$out/share/debootstrap
ensureDir $out/{share/debootstrap,bin}
${fakeroot}/bin/fakeroot -- make devices.tar.gz MAKEDEV=${makedev}/sbin/MAKEDEV
cp -r . $d
cat >> $out/bin/debootstrap << EOF
#!/bin/sh
export DEBOOTSTRAP_DIR="''${DEBOOTSTRAP_DIR:-$d}"
# mount and other tools must be found in chroot. So add default debain paths!
# TODO only add paths which are required by the scripts!
export PATH=$PATH:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
exec $d/debootstrap "\$@"
EOF
chmod +x $out/bin/debootstrap
ensureDir $out/man/man8
mv debootstrap.8 $out/man/man8
'';
/* build from source:
installPhase = ''
cp ${devices} devices.tar.gz
mkdir -p $out/{bin,man/man8};
cp debootstrap.8 $out/man/man8
sed -i \
-e 's@-o root@@' \
-e 's@-g root@@' \
-e 's@chown@true@' \
Makefile
make pkgdetails debootstrap-arch
make DESTDIR="''\${out}" install-arch
t=$out/bin/debootstrap
cat >> $t << EOF
#!/bin/sh
DEBOOTSTRAP_DIR=$out/usr/share/debootstrap $out/usr/sbin/debootstrap "\$@"
EOF
chmod +x $t
'';
*/
passthru = {
inherit makedev;
};
meta = {
description = "Tool to create a Debian system in a chroot";

View file

@ -1,13 +1,21 @@
{stdenv, fetchurl}:
{stdenv, fetchurl, utillinux}:
stdenv.mkDerivation {
name = "fakeroot-1.18.1";
stdenv.mkDerivation rec {
name = "fakeroot-1.18.4";
src = fetchurl {
url = http://ftp.de.debian.org/debian/pool/main/f/fakeroot/fakeroot_1.18.1.orig.tar.bz2;
sha256 = "0h5jsw715a9hv32cb1m1bajy26l7xxrbgrk6qk1b6m91lxh6rnw9";
url = https://launchpad.net/ubuntu/+archive/primary/+files/fakeroot_1.18.4.orig.tar.bz2;
sha256 = "18mydrz49n7ic7147pikkpdb96x00s9wisdk6hrc75ll7vx9wd8a";
};
buildInputs = [ utillinux /* provides getopt */ ];
postUnpack = ''
for prog in getopt; do
sed -i "s@getopt@$(type -p getopt)@g" ${name}/scripts/fakeroot.in
done
'';
meta = {
homepage = http://fakeroot.alioth.debian.org/;
description = "Give a fake root environment through LD_PRELOAD";

View file

@ -3200,6 +3200,11 @@ let
sloccount = callPackage ../development/tools/misc/sloccount { };
smatch = callPackage ../development/tools/analysis/smatch {
buildllvmsparse = false;
buildc2xml = false;
};
sparse = callPackage ../development/tools/analysis/sparse { };
spin = callPackage ../development/tools/analysis/spin { };
@ -7758,7 +7763,7 @@ let
thinkingRock = callPackage ../applications/misc/thinking-rock { };
thunderbird = callPackage ../applications/networking/mailreaders/thunderbird/11.x.nix {
thunderbird = callPackage ../applications/networking/mailreaders/thunderbird/15.x.nix {
inherit (gnome) libIDL;
};