From fac757a77efa87c4050bef653d197381547f1b59 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Wed, 25 Jun 2014 11:31:20 +0200 Subject: [PATCH 001/937] Make Perl 5.20 the default Perl --- pkgs/top-level/all-packages.nix | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index df954e3fae6b..c1637d53e72e 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -3492,13 +3492,13 @@ let perl514 = callPackage ../development/interpreters/perl/5.14 { }; - perl516 = callPackage ../development/interpreters/perl/5.16 { + perl516 = callPackage ../development/interpreters/perl/5.16 { }; + + perl520 = callPackage ../development/interpreters/perl/5.20 { fetchurl = fetchurlBoot; }; - perl520 = callPackage ../development/interpreters/perl/5.20 { }; - - perl = if system != "i686-cygwin" then perl516 else sysPerl; + perl = if system != "i686-cygwin" then perl520 else sysPerl; php = php54; From 1b55b07eeb43ba41470eed1ce21991df96110e70 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Mon, 27 Oct 2014 11:34:38 +0100 Subject: [PATCH 002/937] glibc/2.19 -> glibc We only have one version of Glibc so no need for a separate directory. --- .../libraries/glibc/{2.19 => }/builder.sh | 0 .../libraries/glibc/{2.19 => }/common.nix | 0 .../libraries/glibc/{2.19 => }/cve-2014-0475.patch | 0 .../libraries/glibc/{2.19 => }/cve-2014-5119.patch | 0 .../libraries/glibc/{2.19 => }/default.nix | 0 .../{2.19 => }/dont-use-system-ld-so-cache.patch | 0 .../{2.19 => }/dont-use-system-ld-so-preload.patch | 0 .../libraries/glibc/{2.19 => }/fix-math.patch | 0 .../{2.19 => }/fix_path_attribute_in_getconf.patch | 0 .../glibc/{2.19 => }/glibc-crypt-blowfish.patch | 0 .../glibc-remove-date-from-compilation-banner.patch | 0 .../{2.19 => }/glibc-remove-datetime-from-nscd.patch | 0 pkgs/development/libraries/glibc/{2.19 => }/info.nix | 0 .../libraries/glibc/{2.19 => }/locales-builder.sh | 0 .../libraries/glibc/{2.19 => }/locales.nix | 0 .../development/libraries/glibc/{2.19 => }/multi.nix | 0 .../glibc/{2.19 => }/nix-locale-archive.patch | 0 .../libraries/glibc/{2.19 => }/rpcgen-path.patch | 0 pkgs/top-level/all-packages.nix | 12 ++++++------ 19 files changed, 6 insertions(+), 6 deletions(-) rename pkgs/development/libraries/glibc/{2.19 => }/builder.sh (100%) rename pkgs/development/libraries/glibc/{2.19 => }/common.nix (100%) rename pkgs/development/libraries/glibc/{2.19 => }/cve-2014-0475.patch (100%) rename pkgs/development/libraries/glibc/{2.19 => }/cve-2014-5119.patch (100%) rename pkgs/development/libraries/glibc/{2.19 => }/default.nix (100%) rename pkgs/development/libraries/glibc/{2.19 => }/dont-use-system-ld-so-cache.patch (100%) rename pkgs/development/libraries/glibc/{2.19 => }/dont-use-system-ld-so-preload.patch (100%) rename pkgs/development/libraries/glibc/{2.19 => }/fix-math.patch (100%) rename pkgs/development/libraries/glibc/{2.19 => }/fix_path_attribute_in_getconf.patch (100%) rename pkgs/development/libraries/glibc/{2.19 => }/glibc-crypt-blowfish.patch (100%) rename pkgs/development/libraries/glibc/{2.19 => }/glibc-remove-date-from-compilation-banner.patch (100%) rename pkgs/development/libraries/glibc/{2.19 => }/glibc-remove-datetime-from-nscd.patch (100%) rename pkgs/development/libraries/glibc/{2.19 => }/info.nix (100%) rename pkgs/development/libraries/glibc/{2.19 => }/locales-builder.sh (100%) rename pkgs/development/libraries/glibc/{2.19 => }/locales.nix (100%) rename pkgs/development/libraries/glibc/{2.19 => }/multi.nix (100%) rename pkgs/development/libraries/glibc/{2.19 => }/nix-locale-archive.patch (100%) rename pkgs/development/libraries/glibc/{2.19 => }/rpcgen-path.patch (100%) diff --git a/pkgs/development/libraries/glibc/2.19/builder.sh b/pkgs/development/libraries/glibc/builder.sh similarity index 100% rename from pkgs/development/libraries/glibc/2.19/builder.sh rename to pkgs/development/libraries/glibc/builder.sh diff --git a/pkgs/development/libraries/glibc/2.19/common.nix b/pkgs/development/libraries/glibc/common.nix similarity index 100% rename from pkgs/development/libraries/glibc/2.19/common.nix rename to pkgs/development/libraries/glibc/common.nix diff --git a/pkgs/development/libraries/glibc/2.19/cve-2014-0475.patch b/pkgs/development/libraries/glibc/cve-2014-0475.patch similarity index 100% rename from pkgs/development/libraries/glibc/2.19/cve-2014-0475.patch rename to pkgs/development/libraries/glibc/cve-2014-0475.patch diff --git a/pkgs/development/libraries/glibc/2.19/cve-2014-5119.patch b/pkgs/development/libraries/glibc/cve-2014-5119.patch similarity index 100% rename from pkgs/development/libraries/glibc/2.19/cve-2014-5119.patch rename to pkgs/development/libraries/glibc/cve-2014-5119.patch diff --git a/pkgs/development/libraries/glibc/2.19/default.nix b/pkgs/development/libraries/glibc/default.nix similarity index 100% rename from pkgs/development/libraries/glibc/2.19/default.nix rename to pkgs/development/libraries/glibc/default.nix diff --git a/pkgs/development/libraries/glibc/2.19/dont-use-system-ld-so-cache.patch b/pkgs/development/libraries/glibc/dont-use-system-ld-so-cache.patch similarity index 100% rename from pkgs/development/libraries/glibc/2.19/dont-use-system-ld-so-cache.patch rename to pkgs/development/libraries/glibc/dont-use-system-ld-so-cache.patch diff --git a/pkgs/development/libraries/glibc/2.19/dont-use-system-ld-so-preload.patch b/pkgs/development/libraries/glibc/dont-use-system-ld-so-preload.patch similarity index 100% rename from pkgs/development/libraries/glibc/2.19/dont-use-system-ld-so-preload.patch rename to pkgs/development/libraries/glibc/dont-use-system-ld-so-preload.patch diff --git a/pkgs/development/libraries/glibc/2.19/fix-math.patch b/pkgs/development/libraries/glibc/fix-math.patch similarity index 100% rename from pkgs/development/libraries/glibc/2.19/fix-math.patch rename to pkgs/development/libraries/glibc/fix-math.patch diff --git a/pkgs/development/libraries/glibc/2.19/fix_path_attribute_in_getconf.patch b/pkgs/development/libraries/glibc/fix_path_attribute_in_getconf.patch similarity index 100% rename from pkgs/development/libraries/glibc/2.19/fix_path_attribute_in_getconf.patch rename to pkgs/development/libraries/glibc/fix_path_attribute_in_getconf.patch diff --git a/pkgs/development/libraries/glibc/2.19/glibc-crypt-blowfish.patch b/pkgs/development/libraries/glibc/glibc-crypt-blowfish.patch similarity index 100% rename from pkgs/development/libraries/glibc/2.19/glibc-crypt-blowfish.patch rename to pkgs/development/libraries/glibc/glibc-crypt-blowfish.patch diff --git a/pkgs/development/libraries/glibc/2.19/glibc-remove-date-from-compilation-banner.patch b/pkgs/development/libraries/glibc/glibc-remove-date-from-compilation-banner.patch similarity index 100% rename from pkgs/development/libraries/glibc/2.19/glibc-remove-date-from-compilation-banner.patch rename to pkgs/development/libraries/glibc/glibc-remove-date-from-compilation-banner.patch diff --git a/pkgs/development/libraries/glibc/2.19/glibc-remove-datetime-from-nscd.patch b/pkgs/development/libraries/glibc/glibc-remove-datetime-from-nscd.patch similarity index 100% rename from pkgs/development/libraries/glibc/2.19/glibc-remove-datetime-from-nscd.patch rename to pkgs/development/libraries/glibc/glibc-remove-datetime-from-nscd.patch diff --git a/pkgs/development/libraries/glibc/2.19/info.nix b/pkgs/development/libraries/glibc/info.nix similarity index 100% rename from pkgs/development/libraries/glibc/2.19/info.nix rename to pkgs/development/libraries/glibc/info.nix diff --git a/pkgs/development/libraries/glibc/2.19/locales-builder.sh b/pkgs/development/libraries/glibc/locales-builder.sh similarity index 100% rename from pkgs/development/libraries/glibc/2.19/locales-builder.sh rename to pkgs/development/libraries/glibc/locales-builder.sh diff --git a/pkgs/development/libraries/glibc/2.19/locales.nix b/pkgs/development/libraries/glibc/locales.nix similarity index 100% rename from pkgs/development/libraries/glibc/2.19/locales.nix rename to pkgs/development/libraries/glibc/locales.nix diff --git a/pkgs/development/libraries/glibc/2.19/multi.nix b/pkgs/development/libraries/glibc/multi.nix similarity index 100% rename from pkgs/development/libraries/glibc/2.19/multi.nix rename to pkgs/development/libraries/glibc/multi.nix diff --git a/pkgs/development/libraries/glibc/2.19/nix-locale-archive.patch b/pkgs/development/libraries/glibc/nix-locale-archive.patch similarity index 100% rename from pkgs/development/libraries/glibc/2.19/nix-locale-archive.patch rename to pkgs/development/libraries/glibc/nix-locale-archive.patch diff --git a/pkgs/development/libraries/glibc/2.19/rpcgen-path.patch b/pkgs/development/libraries/glibc/rpcgen-path.patch similarity index 100% rename from pkgs/development/libraries/glibc/2.19/rpcgen-path.patch rename to pkgs/development/libraries/glibc/rpcgen-path.patch diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 37237470c9b1..f586b260422a 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -5072,7 +5072,7 @@ let glfw2 = callPackage ../development/libraries/glfw/2.x.nix { }; glfw3 = callPackage ../development/libraries/glfw/3.x.nix { }; - glibc = callPackage ../development/libraries/glibc/2.19 { + glibc = callPackage ../development/libraries/glibc { kernelHeaders = linuxHeaders; installLocales = config.glibc.locales or false; machHeaders = null; @@ -5080,13 +5080,13 @@ let gccCross = null; }; - glibc_memusage = callPackage ../development/libraries/glibc/2.19 { + glibc_memusage = callPackage ../development/libraries/glibc { kernelHeaders = linuxHeaders; installLocales = false; withGd = true; }; - glibcCross = forceNativeDrv (makeOverridable (import ../development/libraries/glibc/2.19) + glibcCross = forceNativeDrv (makeOverridable (import ../development/libraries/glibc) (let crossGNU = crossSystem != null && crossSystem.config == "i586-pc-gnu"; in { inherit stdenv fetchurl; @@ -5114,11 +5114,11 @@ let installLocales = config.glibc.locales or false; }; - glibcLocales = callPackage ../development/libraries/glibc/2.19/locales.nix { }; + glibcLocales = callPackage ../development/libraries/glibc/locales.nix { }; - glibcInfo = callPackage ../development/libraries/glibc/2.19/info.nix { }; + glibcInfo = callPackage ../development/libraries/glibc/info.nix { }; - glibc_multi = callPackage ../development/libraries/glibc/2.19/multi.nix { + glibc_multi = callPackage ../development/libraries/glibc/multi.nix { inherit glibc; glibc32 = (import ./all-packages.nix {system = "i686-linux";}).glibc; }; From 54e727133a5a1d599d5e4ecdbb3b2ae01bcb42bd Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Mon, 27 Oct 2014 12:31:53 +0100 Subject: [PATCH 003/937] Remove tabs/whitespace --- pkgs/stdenv/linux/make-bootstrap-tools.nix | 28 +++++++++++----------- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/pkgs/stdenv/linux/make-bootstrap-tools.nix b/pkgs/stdenv/linux/make-bootstrap-tools.nix index 9116b2225690..820fc978bda6 100644 --- a/pkgs/stdenv/linux/make-bootstrap-tools.nix +++ b/pkgs/stdenv/linux/make-bootstrap-tools.nix @@ -83,7 +83,7 @@ rec { ''; }; - build = + build = stdenv.mkDerivation { name = "build"; @@ -91,7 +91,7 @@ rec { buildInputs = [nukeReferences cpio]; buildCommand = '' - set -x + set -x mkdir -p $out/bin $out/lib $out/libexec # Copy what we need of Glibc. @@ -105,20 +105,20 @@ rec { cp -d ${glibc}/lib/libnsl*.so* $out/lib cp -d ${glibc}/lib/libutil*.so* $out/lib cp -d ${glibc}/lib/crt?.o $out/lib - + cp -rL ${glibc}/include $out chmod -R u+w $out/include - + # Hopefully we won't need these. rm -rf $out/include/mtd $out/include/rdma $out/include/sound $out/include/video find $out/include -name .install -exec rm {} \; find $out/include -name ..install.cmd -exec rm {} \; mv $out/include $out/include-glibc - + # Copy coreutils, bash, etc. cp ${coreutils_}/bin/* $out/bin (cd $out/bin && rm vdir dir sha*sum pinky factor pathchk runcon shuf who whoami shred users) - + cp ${bash}/bin/bash $out/bin cp ${findutils}/bin/find $out/bin cp ${findutils}/bin/xargs $out/bin @@ -135,7 +135,7 @@ rec { cp ${patchelf}/bin/* $out/bin cp -d ${gnugrep.pcre}/lib/libpcre*.so* $out/lib # needed by grep - + # Copy what we need of GCC. cp -d ${gcc.gcc}/bin/gcc $out/bin cp -d ${gcc.gcc}/bin/cpp $out/bin @@ -164,14 +164,14 @@ rec { cp -d ${mpc}/lib/libmpc*.so* $out/lib cp -d ${zlib}/lib/libz.so* $out/lib cp -d ${libelf}/lib/libelf.so* $out/lib - + # Copy binutils. for i in as ld ar ranlib nm strip readelf objdump; do cp ${binutils}/bin/$i $out/bin done chmod -R u+w $out - + # Strip executables even further. for i in $out/bin/* $out/libexec/gcc/*/*/*; do if test -x $i -a ! -L $i; then @@ -210,9 +210,9 @@ rec { allowedReferences = []; }; - + unpack = - + stdenv.mkDerivation { name = "unpack"; @@ -245,7 +245,7 @@ rec { name = "test"; realBuilder = "${unpack}/bin/bash"; - + buildCommand = '' export PATH=${unpack}/bin ls -l @@ -267,7 +267,7 @@ rec { export CPP="cpp -idirafter ${unpack}/include-glibc -B${unpack}" export CC="gcc -idirafter ${unpack}/include-glibc -B${unpack} -Wl,-dynamic-linker,$ldlinux -Wl,-rpath,${unpack}/lib" export CXX="g++ -idirafter ${unpack}/include-glibc -B${unpack} -Wl,-dynamic-linker,$ldlinux -Wl,-rpath,${unpack}/lib" - + echo '#include ' >> foo.c echo '#include ' >> foo.c echo 'int main() { printf("Hello World\n"); return 0; }' >> foo.c @@ -286,5 +286,5 @@ rec { make install ''; # */ }; - + } From 5b50f0cbc597005d555c18bb75206db4fb3a389d Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Wed, 29 Oct 2014 09:40:44 +0100 Subject: [PATCH 004/937] busybox: Remove unused patch --- .../include-missing-sys-resource-header.patch | 12 ------------ 1 file changed, 12 deletions(-) delete mode 100644 pkgs/os-specific/linux/busybox/include-missing-sys-resource-header.patch diff --git a/pkgs/os-specific/linux/busybox/include-missing-sys-resource-header.patch b/pkgs/os-specific/linux/busybox/include-missing-sys-resource-header.patch deleted file mode 100644 index 8163a86e3cdb..000000000000 --- a/pkgs/os-specific/linux/busybox/include-missing-sys-resource-header.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff --git a/include/libbb.h b/include/libbb.h -index f12800f..e7806c2 100644 ---- a/include/libbb.h -+++ b/include/libbb.h -@@ -40,6 +40,7 @@ - #include - #include - #include -+#include - #include - #include - #include From 937e1280c0b3f9bc21c33e70475c76ec3e8e97d5 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Wed, 29 Oct 2014 11:23:12 +0100 Subject: [PATCH 005/937] Rename badly named linuxHeaders_3_7 (it's actually 3.12) --- pkgs/os-specific/linux/kernel-headers/{3.7.nix => 3.12.nix} | 0 pkgs/top-level/all-packages.nix | 4 ++-- 2 files changed, 2 insertions(+), 2 deletions(-) rename pkgs/os-specific/linux/kernel-headers/{3.7.nix => 3.12.nix} (100%) diff --git a/pkgs/os-specific/linux/kernel-headers/3.7.nix b/pkgs/os-specific/linux/kernel-headers/3.12.nix similarity index 100% rename from pkgs/os-specific/linux/kernel-headers/3.7.nix rename to pkgs/os-specific/linux/kernel-headers/3.12.nix diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index f586b260422a..3b3ad79ffa41 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -7836,7 +7836,7 @@ let # -- Linux kernel expressions ------------------------------------------------ - linuxHeaders = linuxHeaders_3_7; + linuxHeaders = linuxHeaders_3_12; linuxHeaders24Cross = forceNativeDrv (import ../os-specific/linux/kernel-headers/2.4.nix { inherit stdenv fetchurl perl; @@ -7848,7 +7848,7 @@ let cross = assert crossSystem != null; crossSystem; }); - linuxHeaders_3_7 = callPackage ../os-specific/linux/kernel-headers/3.7.nix { }; + linuxHeaders_3_12 = callPackage ../os-specific/linux/kernel-headers/3.12.nix { }; linuxHeaders_3_14 = callPackage ../os-specific/linux/kernel-headers/3.14.nix { }; From 5cc92eb0d8b859b76b6f3ce0900a5e51af81d49f Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Wed, 29 Oct 2014 11:54:17 +0100 Subject: [PATCH 006/937] Remove obsolete useDietLibC stdenv adapter --- pkgs/os-specific/linux/e3cfsprogs/default.nix | 12 +------- .../linux/module-init-tools/default.nix | 4 --- pkgs/stdenv/adapters.nix | 30 ------------------- pkgs/tools/compression/bzip2/default.nix | 2 +- pkgs/tools/networking/curl/7.15.nix | 1 - pkgs/tools/networking/curl/default.nix | 1 - 6 files changed, 2 insertions(+), 48 deletions(-) diff --git a/pkgs/os-specific/linux/e3cfsprogs/default.nix b/pkgs/os-specific/linux/e3cfsprogs/default.nix index 89d5ad5158ce..ef25d59a9df5 100644 --- a/pkgs/os-specific/linux/e3cfsprogs/default.nix +++ b/pkgs/os-specific/linux/e3cfsprogs/default.nix @@ -11,20 +11,10 @@ stdenv.mkDerivation { sha256 = "8dd3de546aeb1ae42fb05409aeb724a145fe9aa1dbe1115441c2297c9d48cf31"; }; - configureFlags = - if stdenv ? isDietLibC - then "" - else "--enable-dynamic-e2fsck --enable-elf-shlibs"; + configureFlags ="--enable-dynamic-e2fsck --enable-elf-shlibs"; buildInputs = [gettext]; preInstall = "installFlagsArray=('LN=ln -s')"; postInstall = "make install-libs"; - - NIX_CFLAGS_COMPILE = - if stdenv ? isDietLibC then - "-UHAVE_SYS_PRCTL_H " + - (if stdenv.system == "x86_64-linux" then "-DHAVE_LSEEK64_PROTOTYPE=1 -Dstat64=stat" else "") - else ""; } - #note that ext3cow requires the ext3cow kernel patch !!!! diff --git a/pkgs/os-specific/linux/module-init-tools/default.nix b/pkgs/os-specific/linux/module-init-tools/default.nix index 240150b09ddb..c83bd28d2430 100644 --- a/pkgs/os-specific/linux/module-init-tools/default.nix +++ b/pkgs/os-specific/linux/module-init-tools/default.nix @@ -23,10 +23,6 @@ stdenv.mkDerivation { postInstall = "rm $out/sbin/insmod.static"; # don't need it - # We don't want bash (and therefore glibc) in the closure of the - # output, since we want to put this in a initrd. - dontPatchShebangs = stdenv ? isDietLibC; - meta = { homepage = http://www.kernel.org/pub/linux/utils/kernel/module-init-tools/; description = "Tools for loading and managing Linux kernel modules"; diff --git a/pkgs/stdenv/adapters.nix b/pkgs/stdenv/adapters.nix index d223cf1708cf..2f1db703ed23 100644 --- a/pkgs/stdenv/adapters.nix +++ b/pkgs/stdenv/adapters.nix @@ -29,36 +29,6 @@ rec { overrideSetup = stdenv: setupScript: stdenv.override { inherit setupScript; }; - # Return a modified stdenv that uses dietlibc to create small - # statically linked binaries. - useDietLibC = stdenv: stdenv // - { mkDerivation = args: stdenv.mkDerivation (args // { - NIX_CFLAGS_LINK = "-static"; - - # libcompat.a contains some commonly used functions. - NIX_LDFLAGS = "-lcompat"; - - # These are added *after* the command-line flags, so we'll - # always optimise for size. - NIX_CFLAGS_COMPILE = - args.NIX_CFLAGS_COMPILE or "" - + " -Os -s -D_BSD_SOURCE=1"; - - configureFlags = - args.configureFlags or "" - + " --disable-shared"; # brrr... - - NIX_GCC = import ../build-support/gcc-wrapper { - inherit stdenv; - libc = pkgs.dietlibc; - inherit (stdenv.gcc) gcc binutils nativeTools nativePrefix; - nativeLibc = false; - }; - }); - isDietLibC = true; - }; - - # Return a modified stdenv that uses klibc to create small # statically linked binaries. useKlibc = stdenv: klibc: stdenv // diff --git a/pkgs/tools/compression/bzip2/default.nix b/pkgs/tools/compression/bzip2/default.nix index 55fca6ca3cb9..e00c4e504ce6 100644 --- a/pkgs/tools/compression/bzip2/default.nix +++ b/pkgs/tools/compression/bzip2/default.nix @@ -24,7 +24,7 @@ stdenv.mkDerivation { }; sharedLibrary = - !stdenv.isDarwin && !(stdenv ? isDietLibC) && !(stdenv ? isStatic) && stdenv.system != "i686-cygwin" && !linkStatic; + !stdenv.isDarwin && !(stdenv ? isStatic) && stdenv.system != "i686-cygwin" && !linkStatic; preConfigure = "substituteInPlace Makefile --replace '$(PREFIX)/man' '$(PREFIX)/share/man'"; diff --git a/pkgs/tools/networking/curl/7.15.nix b/pkgs/tools/networking/curl/7.15.nix index 0a87eaa944cd..47ac790e2adb 100644 --- a/pkgs/tools/networking/curl/7.15.nix +++ b/pkgs/tools/networking/curl/7.15.nix @@ -43,7 +43,6 @@ stdenv.mkDerivation rec { dontDisableStatic = linkStatic; - CFLAGS = if stdenv ? isDietLibC then "-DHAVE_INET_NTOA_R_2_ARGS=1" else ""; LDFLAGS = if linkStatic then "-static" else ""; CXX = "g++"; CXXCPP = "g++ -E"; diff --git a/pkgs/tools/networking/curl/default.nix b/pkgs/tools/networking/curl/default.nix index e12db01ae726..6766415c8b11 100644 --- a/pkgs/tools/networking/curl/default.nix +++ b/pkgs/tools/networking/curl/default.nix @@ -47,7 +47,6 @@ stdenv.mkDerivation rec { dontDisableStatic = linkStatic; - CFLAGS = if stdenv ? isDietLibC then "-DHAVE_INET_NTOA_R_2_ARGS=1" else ""; LDFLAGS = if linkStatic then "-static" else ""; CXX = "g++"; CXXCPP = "g++ -E"; From d135422009991d9fb7602892abf77dcdb1e42cad Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Wed, 29 Oct 2014 11:55:23 +0100 Subject: [PATCH 007/937] Remove obsolete useKlibc stdenv adapter --- pkgs/stdenv/adapters.nix | 27 --------------------------- 1 file changed, 27 deletions(-) diff --git a/pkgs/stdenv/adapters.nix b/pkgs/stdenv/adapters.nix index 2f1db703ed23..e2561258b7d6 100644 --- a/pkgs/stdenv/adapters.nix +++ b/pkgs/stdenv/adapters.nix @@ -29,33 +29,6 @@ rec { overrideSetup = stdenv: setupScript: stdenv.override { inherit setupScript; }; - # Return a modified stdenv that uses klibc to create small - # statically linked binaries. - useKlibc = stdenv: klibc: stdenv // - { mkDerivation = args: stdenv.mkDerivation (args // { - NIX_CFLAGS_LINK = "-static"; - - # These are added *after* the command-line flags, so we'll - # always optimise for size. - NIX_CFLAGS_COMPILE = - args.NIX_CFLAGS_COMPILE or "" + " -Os -s"; - - configureFlags = - args.configureFlags or "" + " --disable-shared"; # brrr... - - NIX_GCC = pkgs.runCommand "klibc-wrapper" {} '' - mkdir -p $out/bin - ln -s ${klibc}/bin/klcc $out/bin/gcc - ln -s ${klibc}/bin/klcc $out/bin/cc - mkdir -p $out/nix-support - echo 'PATH=$PATH:${stdenv.gcc.binutils}/bin' > $out/nix-support/setup-hook - ''; - }); - isKlibc = true; - isStatic = true; - }; - - # Return a modified stdenv that tries to build statically linked # binaries. makeStaticBinaries = stdenv: stdenv // From dc0d68ffc30d2b446f416eff4ed974eeafcf8224 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Wed, 29 Oct 2014 12:06:27 +0100 Subject: [PATCH 008/937] curl: Remove static link support We only needed this for the stdenv bootstrap, but not anymore. --- pkgs/tools/networking/curl/default.nix | 16 ++-------------- 1 file changed, 2 insertions(+), 14 deletions(-) diff --git a/pkgs/tools/networking/curl/default.nix b/pkgs/tools/networking/curl/default.nix index 6766415c8b11..883d21e4da11 100644 --- a/pkgs/tools/networking/curl/default.nix +++ b/pkgs/tools/networking/curl/default.nix @@ -4,7 +4,6 @@ , scpSupport ? false, libssh2 ? null , gssSupport ? false, gss ? null , c-aresSupport ? false, c-ares ? null -, linkStatic ? false }: assert zlibSupport -> zlib != null; @@ -41,29 +40,18 @@ stdenv.mkDerivation rec { ( if scpSupport then "--with-libssh2=${libssh2}" else "--without-libssh2" ) ] ++ stdenv.lib.optional c-aresSupport "--enable-ares=${c-ares}" - ++ stdenv.lib.optional gssSupport "--with-gssapi=${gss}" - ++ stdenv.lib.optionals linkStatic [ "--enable-static" "--disable-shared" ] - ; + ++ stdenv.lib.optional gssSupport "--with-gssapi=${gss}"; - dontDisableStatic = linkStatic; - - LDFLAGS = if linkStatic then "-static" else ""; CXX = "g++"; CXXCPP = "g++ -E"; - # libtool hack to get a static binary. Notice that to 'configure' I passed - # other LDFLAGS, because it doesn't use libtool for linking in the tests. - makeFlags = if linkStatic then "LDFLAGS=-all-static" else ""; - crossAttrs = { # We should refer to the cross built openssl # For the 'urandom', maybe it should be a cross-system option configureFlags = [ ( if sslSupport then "--with-ssl=${openssl.crossDrv}" else "--without-ssl" ) "--with-random /dev/urandom" - ] - ++ stdenv.lib.optionals linkStatic [ "--enable-static" "--disable-shared" ] - ; + ]; }; passthru = { From 423e923182d966e2315fdd405f1e0efbd1dcb18a Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Wed, 29 Oct 2014 13:32:40 +0100 Subject: [PATCH 009/937] busybox: Enable building a minimal configuration This starts with "make allnoconfig" rather than "make defconfig", making it easier to turn on only the needed features. Also, fix broken .config generation (the presence of "#" lines confused parseconfig). --- pkgs/os-specific/linux/busybox/default.nix | 43 +++++++++------------- 1 file changed, 18 insertions(+), 25 deletions(-) diff --git a/pkgs/os-specific/linux/busybox/default.nix b/pkgs/os-specific/linux/busybox/default.nix index 34eb19380d4a..da1d2dc2ed06 100644 --- a/pkgs/os-specific/linux/busybox/default.nix +++ b/pkgs/os-specific/linux/busybox/default.nix @@ -1,4 +1,4 @@ -{stdenv, fetchurl, enableStatic ? false, extraConfig ? ""}: +{ stdenv, fetchurl, enableStatic ? false, enableMinimal ? false, extraConfig ? "" }: let configParser = '' @@ -7,14 +7,7 @@ let NAME=`echo "$LINE" | cut -d \ -f 1` OPTION=`echo "$LINE" | cut -d \ -f 2` - if test -z "$NAME"; then - continue - fi - - if test "$NAME" == "CLEAR"; then - echo "parseconfig: CLEAR" - echo > .config - fi + if ! [[ "$NAME" =~ ^CONFIG_ ]]; then continue; fi echo "parseconfig: removing $NAME" sed -i /$NAME'\(=\| \)'/d .config @@ -25,19 +18,6 @@ let } ''; - nixConfig = '' - CONFIG_PREFIX "$out" - CONFIG_INSTALL_NO_USR y - - # Use the external mount.cifs program. - CONFIG_FEATURE_MOUNT_CIFS n - CONFIG_FEATURE_MOUNT_HELPERS y - ''; - - staticConfig = stdenv.lib.optionalString enableStatic '' - CONFIG_STATIC y - ''; - in stdenv.mkDerivation rec { @@ -50,14 +30,27 @@ stdenv.mkDerivation rec { configurePhase = '' export KCONFIG_NOTIMESTAMP=1 - make defconfig + make ${if enableMinimal then "allnoconfig" else "defconfig"} + ${configParser} + cat << EOF | parseconfig - ${staticConfig} - ${nixConfig} + + CONFIG_PREFIX "$out" + CONFIG_INSTALL_NO_USR y + + ${stdenv.lib.optionalString enableStatic '' + CONFIG_STATIC y + ''} + + # Use the external mount.cifs program. + CONFIG_FEATURE_MOUNT_CIFS n + CONFIG_FEATURE_MOUNT_HELPERS y + ${extraConfig} $extraCrossConfig EOF + make oldconfig ''; From 3b2177b7696c23df8d378c175a2db0ab81062106 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Wed, 29 Oct 2014 13:34:46 +0100 Subject: [PATCH 010/937] busybox: Allow running from within the Nix store This enables running the busybox program directly from the Nix store (i.e. as /nix/store/-busybox). We need this for the stdenv bootstrap. --- .../linux/busybox/busybox-in-store.patch | 16 ++++++++++++++++ pkgs/os-specific/linux/busybox/default.nix | 2 ++ 2 files changed, 18 insertions(+) create mode 100644 pkgs/os-specific/linux/busybox/busybox-in-store.patch diff --git a/pkgs/os-specific/linux/busybox/busybox-in-store.patch b/pkgs/os-specific/linux/busybox/busybox-in-store.patch new file mode 100644 index 000000000000..ea245a49259b --- /dev/null +++ b/pkgs/os-specific/linux/busybox/busybox-in-store.patch @@ -0,0 +1,16 @@ +Allow BusyBox to be invoked as "-busybox". This is +necessary when it's run from the Nix store as -busybox during +stdenv bootstrap. + +diff -ru -x '*~' busybox-1.22.1-orig/libbb/appletlib.c busybox-1.22.1/libbb/appletlib.c +--- busybox-1.22.1-orig/libbb/appletlib.c 2014-01-09 19:15:44.000000000 +0100 ++++ busybox-1.22.1/libbb/appletlib.c 2014-10-29 09:53:01.232052068 +0100 +@@ -764,7 +764,7 @@ + int applet = find_applet_by_name(name); + if (applet >= 0) + run_applet_no_and_exit(applet, argv); +- if (strncmp(name, "busybox", 7) == 0) ++ if (strstr(name, "busybox") != 0) + exit(busybox_main(argv)); + } + diff --git a/pkgs/os-specific/linux/busybox/default.nix b/pkgs/os-specific/linux/busybox/default.nix index da1d2dc2ed06..6073692c70a8 100644 --- a/pkgs/os-specific/linux/busybox/default.nix +++ b/pkgs/os-specific/linux/busybox/default.nix @@ -28,6 +28,8 @@ stdenv.mkDerivation rec { sha256 = "12v7nri79v8gns3inmz4k24q7pcnwi00hybs0wddfkcy1afh42xf"; }; + patches = [ ./busybox-in-store.patch ]; + configurePhase = '' export KCONFIG_NOTIMESTAMP=1 make ${if enableMinimal then "allnoconfig" else "defconfig"} From e8992c5084e31198af3fa2c624655203391ecd60 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Wed, 29 Oct 2014 13:36:03 +0100 Subject: [PATCH 011/937] Update the stdenv bootstrap tools generator The static curl program is gone, replaced by curl inside of the bootstrap tools tarball. Also, we generate a .tar.xz archive rather than .cpio.bz2, making the download smaller. The separate {sh,cpio,mkdir,ln,bzip2} programs have been replaced by a single busybox program. --- pkgs/stdenv/linux/make-bootstrap-tools.nix | 142 +++++++-------------- 1 file changed, 47 insertions(+), 95 deletions(-) diff --git a/pkgs/stdenv/linux/make-bootstrap-tools.nix b/pkgs/stdenv/linux/make-bootstrap-tools.nix index 820fc978bda6..651ccee74fdc 100644 --- a/pkgs/stdenv/linux/make-bootstrap-tools.nix +++ b/pkgs/stdenv/linux/make-bootstrap-tools.nix @@ -1,4 +1,4 @@ -{system ? builtins.currentSystem}: +{ system ? builtins.currentSystem }: with import ../../top-level/all-packages.nix {inherit system;}; @@ -6,80 +6,27 @@ rec { # We want coreutils without ACL support. - coreutils_ = coreutils.override (args: { + coreutilsMinimal = coreutils.override (args: { aclSupport = false; }); - # bzip2 wants utime.h, a header 'legacy' in uclibc - uclibcForBzip2 = uclibc.override { - extraConfig = '' - UCLIBC_SUSV3_LEGACY y - UCLIBC_SUSV4_LEGACY y - ''; - }; - - gccLinkStatic = wrapGCCWith (import ../../build-support/gcc-wrapper) uclibcForBzip2 - stdenv.gcc.gcc; - stdenvLinkStatic = overrideGCC stdenv gccLinkStatic; - - curlStatic = import ../../tools/networking/curl { - stdenv = stdenvLinkStatic; - inherit fetchurl; + curlMinimal = curl.override { zlibSupport = false; sslSupport = false; - linkStatic = true; + scpSupport = false; }; - - bzip2Static = import ../../tools/compression/bzip2 { - stdenv = stdenvLinkStatic; - inherit fetchurl; - linkStatic = true; - }; - - #gccNoShared = wrapGCC ( gcc.gcc.override { enableShared = false; } ); - - busyboxStaticSh = busybox.override { + busyboxMinimal = busybox.override { + enableStatic = true; + enableMinimal = true; extraConfig = '' - CLEAR - CONFIG_STATIC y - CONFIG_ASH y - CONFIG_BASH_COMPAT y - CONFIG_ASH_ALIAS y - CONFIG_ASH_GETOPTS y - CONFIG_ASH_CMDCMD y - CONFIG_ASH_JOB_CONTROL y CONFIG_ASH_BUILTIN_ECHO y - CONFIG_ASH_BUILTIN_PRINTF y CONFIG_ASH_BUILTIN_TEST y - ''; - }; - - busyboxStaticLn = busybox.override { - extraConfig = '' - CLEAR - CONFIG_STATIC y - CONFIG_LN y - ''; - }; - - busyboxStaticMkdir = busybox.override { - extraConfig = '' - CLEAR - CONFIG_STATIC y + CONFIG_ASH_OPTIMIZE_FOR_SIZE y CONFIG_MKDIR y - ''; - }; - - busyboxStaticCpio = busybox.override { - extraConfig = '' - CLEAR - CONFIG_STATIC y - CONFIG_CPIO y - # (shlevy) Are these necessary? - CONFIG_FEATURE_CPIO_O y - CONFIG_FEATURE_CPIO_P y + CONFIG_TAR y + CONFIG_UNXZ y ''; }; @@ -116,7 +63,7 @@ rec { mv $out/include $out/include-glibc # Copy coreutils, bash, etc. - cp ${coreutils_}/bin/* $out/bin + cp ${coreutilsMinimal}/bin/* $out/bin (cd $out/bin && rm vdir dir sha*sum pinky factor pathchk runcon shuf who whoami shred users) cp ${bash}/bin/bash $out/bin @@ -124,7 +71,7 @@ rec { cp ${findutils}/bin/xargs $out/bin cp -d ${diffutils}/bin/* $out/bin cp -d ${gnused}/bin/* $out/bin - cp -d ${gnugrep}/bin/* $out/bin + cp -d ${gnugrep}/bin/grep $out/bin cp ${gawk}/bin/gawk $out/bin cp -d ${gawk}/bin/awk $out/bin cp ${gnutar}/bin/tar $out/bin @@ -133,6 +80,8 @@ rec { cp -d ${gnumake}/bin/* $out/bin cp -d ${patch}/bin/* $out/bin cp ${patchelf}/bin/* $out/bin + cp ${curlMinimal}/bin/curl $out/bin + cp -d ${curlMinimal}/lib/libcurl* $out/lib cp -d ${gnugrep.pcre}/lib/libpcre*.so* $out/lib # needed by grep @@ -151,6 +100,8 @@ rec { rm -rf $out/lib/gcc/*/*/plugin #rm -f $out/lib/gcc/*/*/*.a cp -rd ${gcc.gcc}/libexec/* $out/libexec + chmod -R u+w $out/libexec + rm -rf $out/libexec/gcc/*/*/plugin mkdir $out/include cp -rd ${gcc.gcc}/include/c++ $out/include chmod -R u+w $out/include @@ -159,8 +110,6 @@ rec { cp -d ${gmpxx}/lib/libgmp*.so* $out/lib cp -d ${mpfr}/lib/libmpfr*.so* $out/lib - cp -d ${ppl}/lib/libppl*.so* $out/lib - cp -d ${cloogppl}/lib/libcloog*.so* $out/lib cp -d ${mpc}/lib/libmpc*.so* $out/lib cp -d ${zlib}/lib/libz.so* $out/lib cp -d ${libelf}/lib/libelf.so* $out/lib @@ -169,6 +118,7 @@ rec { for i in as ld ar ranlib nm strip readelf objdump; do cp ${binutils}/bin/$i $out/bin done + cp -d ${binutils}/lib/lib*.so* $out/lib chmod -R u+w $out @@ -189,19 +139,10 @@ rec { mv $out/.pack $out/pack mkdir $out/on-server - (cd $out/pack && (find | cpio -o -H newc)) | bzip2 > $out/on-server/bootstrap-tools.cpio.bz2 - - mkdir $out/in-nixpkgs - cp ${busyboxStaticSh}/bin/busybox $out/in-nixpkgs/sh - cp ${busyboxStaticCpio}/bin/busybox $out/in-nixpkgs/cpio - cp ${busyboxStaticMkdir}/bin/busybox $out/in-nixpkgs/mkdir - cp ${busyboxStaticLn}/bin/busybox $out/in-nixpkgs/ln - cp ${curlStatic}/bin/curl $out/in-nixpkgs - cp ${bzip2Static}/bin/bzip2 $out/in-nixpkgs - chmod u+w $out/in-nixpkgs/* - strip $out/in-nixpkgs/* - nuke-refs $out/in-nixpkgs/* - bzip2 $out/in-nixpkgs/curl + tar cvfJ $out/on-server/bootstrap-tools.tar.xz -C $out/pack . + cp ${busyboxMinimal}/bin/busybox $out/on-server + chmod u+w $out/on-server/busybox + nuke-refs $out/on-server/busybox ''; # */ # The result should not contain any references (store paths) so @@ -213,19 +154,30 @@ rec { unpack = - stdenv.mkDerivation { + derivation { name = "unpack"; + inherit system; + builder = "${build}/on-server/busybox"; + args = [ "ash" "-e" "-c" "eval \"$buildCommand\"" ]; buildCommand = '' - ${build}/in-nixpkgs/mkdir $out - ${build}/in-nixpkgs/bzip2 -d < ${build}/on-server/bootstrap-tools.cpio.bz2 | (cd $out && ${build}/in-nixpkgs/cpio -v -i) + export PATH=${build}/on-server:$out/bin + + busybox mkdir $out + < ${build}/on-server/bootstrap-tools.tar.xz busybox unxz | busybox tar x -C $out for i in $out/bin/* $out/libexec/gcc/*/*/*; do - echo patching $i - if ! test -L $i; then - LD_LIBRARY_PATH=$out/lib $out/lib/ld-linux*.so.2 \ - $out/bin/patchelf --set-interpreter $out/lib/ld-linux*.so.2 --set-rpath $out/lib --force-rpath $i - fi + if [ -L "$i" ]; then continue; fi + if [ -z "''${i##*/liblto*}" ]; then continue; fi + echo patching "$i" + LD_LIBRARY_PATH=$out/lib $out/lib/ld-linux*.so.2 \ + $out/bin/patchelf --set-interpreter $out/lib/ld-linux*.so.2 --set-rpath $out/lib --force-rpath "$i" + done + + for i in $out/lib/libpcre*; do + if [ -L "$i" ]; then continue; fi + echo patching "$i" + $out/bin/patchelf --set-rpath $out/lib --force-rpath "$i" done # Fix the libc linker script. @@ -241,10 +193,11 @@ rec { test = - stdenv.mkDerivation { + derivation { name = "test"; - - realBuilder = "${unpack}/bin/bash"; + inherit system; + builder = "${build}/on-server/busybox"; + args = [ "ash" "-e" "-c" "eval \"$buildCommand\"" ]; buildCommand = '' export PATH=${unpack}/bin @@ -259,8 +212,7 @@ rec { awk --version grep --version gcc --version - - ${build}/in-nixpkgs/sh -c 'echo Hello World' + curl --version ldlinux=$(echo ${unpack}/lib/ld-linux*.so.2) @@ -270,12 +222,12 @@ rec { echo '#include ' >> foo.c echo '#include ' >> foo.c - echo 'int main() { printf("Hello World\n"); return 0; }' >> foo.c + echo 'int main() { printf("Hello World\\n"); return 0; }' >> foo.c $CC -o $out/bin/foo foo.c $out/bin/foo echo '#include ' >> bar.cc - echo 'int main() { std::cout << "Hello World\n"; }' >> bar.cc + echo 'int main() { std::cout << "Hello World\\n"; }' >> bar.cc $CXX -v -o $out/bin/bar bar.cc $out/bin/bar From c77b30e3fbe61fa775ce874ba336819ff4f263f7 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Wed, 29 Oct 2014 14:18:00 +0100 Subject: [PATCH 012/937] uclibc: Fix building against recent kernel headers --- pkgs/os-specific/linux/uclibc/default.nix | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/pkgs/os-specific/linux/uclibc/default.nix b/pkgs/os-specific/linux/uclibc/default.nix index a0df3d526f59..dadae487cd2f 100644 --- a/pkgs/os-specific/linux/uclibc/default.nix +++ b/pkgs/os-specific/linux/uclibc/default.nix @@ -16,11 +16,6 @@ let continue fi - if test "$NAME" == "CLEAR"; then - echo "parseconfig: CLEAR" - echo > .config - fi - echo "parseconfig: removing $NAME" sed -i /^$NAME=/d .config @@ -60,6 +55,13 @@ stdenv.mkDerivation { sha256 = "0qhngsbzj2s6nz92b1s2p0dmvwk8xiqpy58j7ljzw186grvjr3cq"; }; + patches = + [ (fetchurl { + url = https://dev.openwrt.org/export/37939/trunk/toolchain/uClibc/patches-0.9.33.2/970-add___kernel_long_and___kernel_ulong.patch; + sha256 = "1d1bfjpw0qla5zr32wk32s1y3wl2576zidbmvqsmqf0359bxhxrg"; + }) + ]; + # 'ftw' needed to build acl, a coreutils dependency configurePhase = '' make defconfig ${archMakeFlag} @@ -80,6 +82,8 @@ stdenv.mkDerivation { buildInputs = stdenv.lib.optional (gccCross != null) gccCross; + enableParallelBuilding = true; + installPhase = '' mkdir -p $out make PREFIX=$out VERBOSE=1 install ${crossMakeFlag} @@ -92,7 +96,7 @@ stdenv.mkDerivation { # Derivations may check for the existance of this attribute, to know what to link to. inherit libiconv; }; - + meta = { homepage = http://www.uclibc.org/; description = "A small implementation of the C library"; From 41a479b15f2f26fde3952e384d1aff37bde7186b Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Wed, 29 Oct 2014 14:44:56 +0100 Subject: [PATCH 013/937] busybox: Optionally use uclibc --- pkgs/os-specific/linux/busybox/default.nix | 12 +++++++----- pkgs/stdenv/linux/make-bootstrap-tools.nix | 1 + 2 files changed, 8 insertions(+), 5 deletions(-) diff --git a/pkgs/os-specific/linux/busybox/default.nix b/pkgs/os-specific/linux/busybox/default.nix index 6073692c70a8..47f9fb9a5a40 100644 --- a/pkgs/os-specific/linux/busybox/default.nix +++ b/pkgs/os-specific/linux/busybox/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchurl, enableStatic ? false, enableMinimal ? false, extraConfig ? "" }: +{ lib, stdenv, uclibc, fetchurl, enableStatic ? false, enableMinimal ? false, useUclibc ? false, extraConfig ? "" }: let configParser = '' @@ -41,7 +41,7 @@ stdenv.mkDerivation rec { CONFIG_PREFIX "$out" CONFIG_INSTALL_NO_USR y - ${stdenv.lib.optionalString enableStatic '' + ${lib.optionalString enableStatic '' CONFIG_STATIC y ''} @@ -54,6 +54,8 @@ stdenv.mkDerivation rec { EOF make oldconfig + '' + lib.optionalString useUclibc '' + makeFlagsArray+=("CC=gcc -isystem ${uclibc}/include -B${uclibc}/lib -L${uclibc}/lib") ''; crossAttrs = { @@ -70,8 +72,8 @@ stdenv.mkDerivation rec { meta = { description = "Tiny versions of common UNIX utilities in a single small executable"; homepage = http://busybox.net/; - license = stdenv.lib.licenses.gpl2; - maintainers = with stdenv.lib.maintainers; [viric]; - platforms = with stdenv.lib.platforms; linux; + license = lib.licenses.gpl2; + maintainers = [ lib.maintainers.viric ]; + platforms = lib.platforms.linux; }; } diff --git a/pkgs/stdenv/linux/make-bootstrap-tools.nix b/pkgs/stdenv/linux/make-bootstrap-tools.nix index 651ccee74fdc..e202f691fa8d 100644 --- a/pkgs/stdenv/linux/make-bootstrap-tools.nix +++ b/pkgs/stdenv/linux/make-bootstrap-tools.nix @@ -17,6 +17,7 @@ rec { }; busyboxMinimal = busybox.override { + useUclibc = true; enableStatic = true; enableMinimal = true; extraConfig = '' From ac8e5cd145fa5f22bab1b01d8b4db4d26d22e65c Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Wed, 29 Oct 2014 14:55:04 +0100 Subject: [PATCH 014/937] uclibc: Update to the latest prerelease This resolves a segfault in busybox. --- pkgs/os-specific/linux/uclibc/default.nix | 14 ++++---------- 1 file changed, 4 insertions(+), 10 deletions(-) diff --git a/pkgs/os-specific/linux/uclibc/default.nix b/pkgs/os-specific/linux/uclibc/default.nix index dadae487cd2f..169733112054 100644 --- a/pkgs/os-specific/linux/uclibc/default.nix +++ b/pkgs/os-specific/linux/uclibc/default.nix @@ -46,22 +46,16 @@ let ''; in + stdenv.mkDerivation { - name = "uclibc-0.9.33.2" + stdenv.lib.optionalString (cross != null) + name = "uclibc-0.9.34-pre-20141029" + stdenv.lib.optionalString (cross != null) ("-" + cross.config); src = fetchurl { - url = http://www.uclibc.org/downloads/uClibc-0.9.33.2.tar.bz2; - sha256 = "0qhngsbzj2s6nz92b1s2p0dmvwk8xiqpy58j7ljzw186grvjr3cq"; + url = http://www.uclibc.org/downloads/snapshots/uClibc-20141029.tar.bz2; + sha256 = "018r3bhw1jyyihmm5xxq1psl3r5yx02a57p8qxvay3vvzxn2cvzm"; }; - patches = - [ (fetchurl { - url = https://dev.openwrt.org/export/37939/trunk/toolchain/uClibc/patches-0.9.33.2/970-add___kernel_long_and___kernel_ulong.patch; - sha256 = "1d1bfjpw0qla5zr32wk32s1y3wl2576zidbmvqsmqf0359bxhxrg"; - }) - ]; - # 'ftw' needed to build acl, a coreutils dependency configurePhase = '' make defconfig ${archMakeFlag} From 119ce1ab03d0b3250e9e350f0686e095060014b0 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Wed, 29 Oct 2014 17:26:29 +0100 Subject: [PATCH 015/937] Update the stdenv-linux bootstrap tools --- pkgs/stdenv/linux/bootstrap/i686.nix | 41 +++------------ pkgs/stdenv/linux/bootstrap/x86_64.nix | 9 ++-- pkgs/stdenv/linux/default.nix | 11 ++-- .../linux/scripts/unpack-bootstrap-tools.sh | 50 +++++++------------ 4 files changed, 32 insertions(+), 79 deletions(-) diff --git a/pkgs/stdenv/linux/bootstrap/i686.nix b/pkgs/stdenv/linux/bootstrap/i686.nix index 7b6b3ee80344..04712360d152 100644 --- a/pkgs/stdenv/linux/bootstrap/i686.nix +++ b/pkgs/stdenv/linux/bootstrap/i686.nix @@ -1,39 +1,12 @@ -let - - fetch = { file, sha256 }: import { - url = "http://tarballs.nixos.org/stdenv-linux/i686/r24519/${file}"; - inherit sha256; +{ + busybox = import { + url = http://tarballs.nixos.org/stdenv-linux/i686/ac8e5cd145fa5f22bab1b01d8b4db4d26d22e65c/busybox; + sha256 = "0314dskcp6gp0jpy87phpjz1r13zh0grb40yvdl9s4l2rxzgzr2v"; executable = true; }; -in { - sh = fetch { - file = "sh"; - sha256 = "1l6sdhyqjlh4m5gj3pfpi8aisp1m012lpwxfcc4v1x8g429mflmy"; - }; - - bzip2 = fetch { - file = "bzip2"; - sha256 = "1p5nkrdn52jm6rsx8x3wwjpsh83f2qsjl1qckkgnkplwhj23zjp7"; - }; - - mkdir = fetch { - file = "mkdir"; - sha256 = "02ff7i9ph9ahiapsg2v9c3pwr7sl73sk4n7ic112ljkrgwkail33"; - }; - - cpio = fetch { - file = "cpio"; - sha256 = "046if3aqqramyhrn2yxrjf4bfkl8x1bcqxhvi7ml9nrv9smx8irg"; - }; - - curl = fetch { - file = "curl.bz2"; - sha256 = "1v0yfb4gcdyqpl2fxlxjh337r28c23iqm7vwck4p4643xd55di7q"; - }; - - bootstrapTools = { - url = http://tarballs.nixos.org/stdenv-linux/i686/r24519/bootstrap-tools.cpio.bz2; - sha256 = "0imypaxy6piwbk8ff2y1nr7yk49pqmdgdbv6g8miq1zs5yfip6ij"; + bootstrapTools = import { + url = http://tarballs.nixos.org/stdenv-linux/i686/ac8e5cd145fa5f22bab1b01d8b4db4d26d22e65c/bootstrap-tools.tar.xz; + sha256 = "025r3vifkqlw0i5nvlkmfrvbn0v73r1pr6jkqckgs585y7nmsjhz"; }; } diff --git a/pkgs/stdenv/linux/bootstrap/x86_64.nix b/pkgs/stdenv/linux/bootstrap/x86_64.nix index 71961e6961e6..2950e42ae0a5 100644 --- a/pkgs/stdenv/linux/bootstrap/x86_64.nix +++ b/pkgs/stdenv/linux/bootstrap/x86_64.nix @@ -1,10 +1,9 @@ -# Use the static tools for i686-linux. They work on x86_64-linux -# machines as well. +# Use busybox for i686-linux since it works on x86_64-linux as well. (import ./i686.nix) // { - bootstrapTools = { - url = http://tarballs.nixos.org/stdenv-linux/x86_64/r23302/bootstrap-tools.cpio.bz2; - sha256 = "0w89kqhx47yl0jifp2vffp073pyrqha5f312kp971smi4h41drna"; + bootstrapTools = import { + url = http://tarballs.nixos.org/stdenv-linux/x86_64/ac8e5cd145fa5f22bab1b01d8b4db4d26d22e65c/bootstrap-tools.tar.xz; + sha256 = "01485vvwxb7fsx8c8il5hip0bhh4xy2gg76sj4zc98gl4v1jbfq9"; }; } diff --git a/pkgs/stdenv/linux/default.nix b/pkgs/stdenv/linux/default.nix index 0467b60ca476..a5d8f5ba7265 100644 --- a/pkgs/stdenv/linux/default.nix +++ b/pkgs/stdenv/linux/default.nix @@ -40,20 +40,15 @@ rec { bootstrapTools = derivation { name = "bootstrap-tools"; - builder = bootstrapFiles.sh; + builder = bootstrapFiles.busybox; args = if system == "armv5tel-linux" || system == "armv6l-linux" || system == "armv7l-linux" then [ ./scripts/unpack-bootstrap-tools-arm.sh ] - else [ ./scripts/unpack-bootstrap-tools.sh ]; + else [ "ash" "-e" ./scripts/unpack-bootstrap-tools.sh ]; - # FIXME: get rid of curl. - inherit (bootstrapFiles) bzip2 mkdir curl cpio; - - tarball = import { - inherit (bootstrapFiles.bootstrapTools) url sha256; - }; + tarball = bootstrapFiles.bootstrapTools; inherit system; diff --git a/pkgs/stdenv/linux/scripts/unpack-bootstrap-tools.sh b/pkgs/stdenv/linux/scripts/unpack-bootstrap-tools.sh index 422dc6dd5fef..9db5d2c88e5d 100644 --- a/pkgs/stdenv/linux/scripts/unpack-bootstrap-tools.sh +++ b/pkgs/stdenv/linux/scripts/unpack-bootstrap-tools.sh @@ -1,9 +1,7 @@ -set -e - # Unpack the bootstrap tools tarball. echo Unpacking the bootstrap tools... -$mkdir $out -$bzip2 -d < $tarball | (cd $out && $cpio -i) +$builder mkdir $out +< $tarball $builder unxz | $builder tar x -C $out # Set the ELF interpreter / RPATH in the bootstrap binaries. echo Patching the bootstrap tools... @@ -21,32 +19,17 @@ fi LD_LIBRARY_PATH=$out/lib $LD_BINARY $out/bin/cp $out/bin/patchelf . for i in $out/bin/* $out/libexec/gcc/*/*/*; do - echo patching $i - if ! test -L $i; then - LD_LIBRARY_PATH=$out/lib $LD_BINARY \ - $out/bin/patchelf --set-interpreter $LD_BINARY --set-rpath $out/lib --force-rpath $i - LD_LIBRARY_PATH=$out/lib $LD_BINARY \ - $out/bin/patchelf --set-interpreter $LD_BINARY --set-rpath $out/lib --force-rpath $i - fi -done -for i in $out/lib/librt* ; do - echo patching $i - if ! test -L $i; then - LD_LIBRARY_PATH=$out/lib $LD_BINARY \ - $out/bin/patchelf --set-interpreter $LD_BINARY --set-rpath $out/lib --force-rpath $i - LD_LIBRARY_PATH=$out/lib $LD_BINARY \ - $out/bin/patchelf --set-interpreter $LD_BINARY --set-rpath $out/lib --force-rpath $i - fi + if [ -L "$i" ]; then continue; fi + if [ -z "${i##*/liblto*}" ]; then continue; fi + echo patching "$i" + LD_LIBRARY_PATH=$out/lib $out/lib/ld-linux*.so.2 \ + $out/bin/patchelf --set-interpreter $LD_BINARY --set-rpath $out/lib --force-rpath "$i" done -for i in $out/lib/libgmp* $out/lib/libppl* $out/lib/libcloog* $out/lib/libmpc* $out/lib/libpcre* $out/lib/libstdc++*.so.*[0-9]; do - echo trying to patch $i - if test -f $i -a ! -L $i; then - LD_LIBRARY_PATH=$out/lib $LD_BINARY \ - $out/bin/patchelf --set-rpath $out/lib --force-rpath $i - LD_LIBRARY_PATH=$out/lib $LD_BINARY \ - $out/bin/patchelf --set-rpath $out/lib --force-rpath $i - fi +for i in $out/lib/libpcre*; do + if [ -L "$i" ]; then continue; fi + echo patching "$i" + $out/bin/patchelf --set-rpath $out/lib --force-rpath "$i" done # Fix the libc linker script. @@ -60,13 +43,16 @@ mv $out/lib/libpthread.so.tmp $out/lib/libpthread.so ln -s bash $out/bin/sh ln -s bzip2 $out/bin/bunzip2 -# Mimic the gunzip script as in gzip installations +# Provide a gunzip script. cat > $out/bin/gunzip < $out/bin/curl -chmod +x $out/bin/curl +# Provide fgrep/egrep. +echo "#! $out/bin/sh" > $out/bin/egrep +echo "exec $out/bin/grep -E \"\$@\"" >> $out/bin/egrep +echo "#! $out/bin/sh" > $out/bin/fgrep +echo "exec $out/bin/grep -F \"\$@\"" >> $out/bin/fgrep +chmod +x $out/bin/egrep $out/bin/fgrep From dac591aae6b56c5036b050fb017ccdfe4ed33f2d Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Wed, 29 Oct 2014 17:54:47 +0100 Subject: [PATCH 016/937] glibc: Update to 2.20 --- pkgs/development/libraries/glibc/common.nix | 12 +- .../libraries/glibc/cve-2014-0475.patch | 170 --------- .../libraries/glibc/cve-2014-5119.patch | 206 ----------- .../glibc/dont-use-system-ld-so-preload.patch | 10 +- .../libraries/glibc/fix-math.patch | 336 ------------------ ...-remove-date-from-compilation-banner.patch | 12 - pkgs/development/libraries/glibc/locales.nix | 4 +- 7 files changed, 9 insertions(+), 741 deletions(-) delete mode 100644 pkgs/development/libraries/glibc/cve-2014-0475.patch delete mode 100644 pkgs/development/libraries/glibc/cve-2014-5119.patch delete mode 100644 pkgs/development/libraries/glibc/fix-math.patch delete mode 100644 pkgs/development/libraries/glibc/glibc-remove-date-from-compilation-banner.patch diff --git a/pkgs/development/libraries/glibc/common.nix b/pkgs/development/libraries/glibc/common.nix index 23efc01a3975..2559dea26539 100644 --- a/pkgs/development/libraries/glibc/common.nix +++ b/pkgs/development/libraries/glibc/common.nix @@ -13,7 +13,7 @@ cross: let - version = "2.19"; + version = "2.20"; in @@ -56,14 +56,6 @@ stdenv.mkDerivation ({ "/bin:/usr/bin", which is inappropriate on NixOS machines. This patch extends the search path by "/run/current-system/sw/bin". */ ./fix_path_attribute_in_getconf.patch - - ./fix-math.patch - - ./cve-2014-0475.patch - ./cve-2014-5119.patch - - /* Remove references to the compilation date. */ - ./glibc-remove-date-from-compilation-banner.patch ]; postPatch = @@ -155,7 +147,7 @@ stdenv.mkDerivation ({ } else fetchurl { url = "mirror://gnu/glibc/glibc-${version}.tar.gz"; - sha256 = "15n7x9mmzhd7w6s5hd9srx0h23b32gwb306x98k9ss940yvnvb8q"; + sha256 = "1g6ysvk15arpi7c1f1fpx5slgfr2k3dqd5xr0yvijajp1m0xxq9p"; }; # Remove absolute paths from `configure' & co.; build out-of-tree. diff --git a/pkgs/development/libraries/glibc/cve-2014-0475.patch b/pkgs/development/libraries/glibc/cve-2014-0475.patch deleted file mode 100644 index a4f983de8f6c..000000000000 --- a/pkgs/development/libraries/glibc/cve-2014-0475.patch +++ /dev/null @@ -1,170 +0,0 @@ -Picked from upstream commits, but excluding changes to news and tests: -d183645616b0533 and 4e8f95a0df7c2 -Also see https://sourceware.org/bugzilla/show_bug.cgi?id=17137 - -diff --git a/locale/setlocale.c b/locale/setlocale.c -index 9458468..6455b8b 100644 ---- a/locale/setlocale.c -+++ b/locale/setlocale.c -@@ -272,6 +272,8 @@ setlocale (int category, const char *locale) - of entries of the form `CATEGORY=VALUE'. */ - const char *newnames[__LC_LAST]; - struct __locale_data *newdata[__LC_LAST]; -+ /* Copy of the locale argument, for in-place splitting. */ -+ char *locale_copy = NULL; - - /* Set all name pointers to the argument name. */ - for (category = 0; category < __LC_LAST; ++category) -@@ -281,7 +283,13 @@ setlocale (int category, const char *locale) - if (__glibc_unlikely (strchr (locale, ';') != NULL)) - { - /* This is a composite name. Make a copy and split it up. */ -- char *np = strdupa (locale); -+ locale_copy = strdup (locale); -+ if (__glibc_unlikely (locale_copy == NULL)) -+ { -+ __libc_rwlock_unlock (__libc_setlocale_lock); -+ return NULL; -+ } -+ char *np = locale_copy; - char *cp; - int cnt; - -@@ -299,6 +307,7 @@ setlocale (int category, const char *locale) - { - error_return: - __libc_rwlock_unlock (__libc_setlocale_lock); -+ free (locale_copy); - - /* Bogus category name. */ - ERROR_RETURN; -@@ -391,8 +400,9 @@ setlocale (int category, const char *locale) - /* Critical section left. */ - __libc_rwlock_unlock (__libc_setlocale_lock); - -- /* Free the resources (the locale path variable). */ -+ /* Free the resources. */ - free (locale_path); -+ free (locale_copy); - - return composite; - } -diff --git a/locale/findlocale.c b/locale/findlocale.c -index bbaf708..22e8b53 100644 ---- a/locale/findlocale.c -+++ b/locale/findlocale.c -@@ -17,6 +17,7 @@ - . */ - - #include -+#include - #include - #include - #include -@@ -57,6 +58,45 @@ struct loaded_l10nfile *_nl_locale_file_list[__LC_LAST]; - - const char _nl_default_locale_path[] attribute_hidden = LOCALEDIR; - -+/* Checks if the name is actually present, that is, not NULL and not -+ empty. */ -+static inline int -+name_present (const char *name) -+{ -+ return name != NULL && name[0] != '\0'; -+} -+ -+/* Checks that the locale name neither extremely long, nor contains a -+ ".." path component (to prevent directory traversal). */ -+static inline int -+valid_locale_name (const char *name) -+{ -+ /* Not set. */ -+ size_t namelen = strlen (name); -+ /* Name too long. The limit is arbitrary and prevents stack overflow -+ issues later. */ -+ if (__glibc_unlikely (namelen > 255)) -+ return 0; -+ /* Directory traversal attempt. */ -+ static const char slashdot[4] = {'/', '.', '.', '/'}; -+ if (__glibc_unlikely (memmem (name, namelen, -+ slashdot, sizeof (slashdot)) != NULL)) -+ return 0; -+ if (namelen == 2 && __glibc_unlikely (name[0] == '.' && name [1] == '.')) -+ return 0; -+ if (namelen >= 3 -+ && __glibc_unlikely (((name[0] == '.' -+ && name[1] == '.' -+ && name[2] == '/') -+ || (name[namelen - 3] == '/' -+ && name[namelen - 2] == '.' -+ && name[namelen - 1] == '.')))) -+ return 0; -+ /* If there is a slash in the name, it must start with one. */ -+ if (__glibc_unlikely (memchr (name, '/', namelen) != NULL) && name[0] != '/') -+ return 0; -+ return 1; -+} - - struct __locale_data * - internal_function -@@ -65,7 +105,7 @@ _nl_find_locale (const char *locale_path, size_t locale_path_len, - { - int mask; - /* Name of the locale for this category. */ -- char *loc_name; -+ char *loc_name = (char *) *name; - const char *language; - const char *modifier; - const char *territory; -@@ -73,31 +113,39 @@ _nl_find_locale (const char *locale_path, size_t locale_path_len, - const char *normalized_codeset; - struct loaded_l10nfile *locale_file; - -- if ((*name)[0] == '\0') -+ if (loc_name[0] == '\0') - { - /* The user decides which locale to use by setting environment - variables. */ -- *name = getenv ("LC_ALL"); -- if (*name == NULL || (*name)[0] == '\0') -- *name = getenv (_nl_category_names.str -+ loc_name = getenv ("LC_ALL"); -+ if (!name_present (loc_name)) -+ loc_name = getenv (_nl_category_names.str - + _nl_category_name_idxs[category]); -- if (*name == NULL || (*name)[0] == '\0') -- *name = getenv ("LANG"); -+ if (!name_present (loc_name)) -+ loc_name = getenv ("LANG"); -+ if (!name_present (loc_name)) -+ loc_name = (char *) _nl_C_name; - } - -- if (*name == NULL || (*name)[0] == '\0' -- || (__builtin_expect (__libc_enable_secure, 0) -- && strchr (*name, '/') != NULL)) -- *name = (char *) _nl_C_name; -+ /* We used to fall back to the C locale if the name contains a slash -+ character '/', but we now check for directory traversal in -+ valid_locale_name, so this is no longer necessary. */ - -- if (__builtin_expect (strcmp (*name, _nl_C_name), 1) == 0 -- || __builtin_expect (strcmp (*name, _nl_POSIX_name), 1) == 0) -+ if (__builtin_expect (strcmp (loc_name, _nl_C_name), 1) == 0 -+ || __builtin_expect (strcmp (loc_name, _nl_POSIX_name), 1) == 0) - { - /* We need not load anything. The needed data is contained in - the library itself. */ - *name = (char *) _nl_C_name; - return _nl_C[category]; - } -+ else if (!valid_locale_name (loc_name)) -+ { -+ __set_errno (EINVAL); -+ return NULL; -+ } -+ -+ *name = loc_name; - - /* We really have to load some data. First we try the archive, - but only if there was no LOCPATH environment variable specified. */ diff --git a/pkgs/development/libraries/glibc/cve-2014-5119.patch b/pkgs/development/libraries/glibc/cve-2014-5119.patch deleted file mode 100644 index cbae03425eb9..000000000000 --- a/pkgs/development/libraries/glibc/cve-2014-5119.patch +++ /dev/null @@ -1,206 +0,0 @@ -http://anonscm.debian.org/viewvc/pkg-glibc/glibc-package/trunk/debian/patches/any/cvs-CVE-2014-5119.diff?revision=6248&view=co - -commit a1a6a401ab0a3c9f15fb7eaebbdcee24192254e8 -Author: Florian Weimer -Date: Tue Aug 26 19:38:59 2014 +0200 - - __gconv_translit_find: Disable function [BZ #17187] - - This functionality has never worked correctly, and the implementation - contained a security vulnerability (CVE-2014-5119). - -2014-08-26 Florian Weimer - - [BZ #17187] - * iconv/gconv_trans.c (struct known_trans, search_tree, lock, - trans_compare, open_translit, __gconv_translit_find): - Remove module loading code. - ---- a/iconv/gconv_trans.c -+++ b/iconv/gconv_trans.c -@@ -238,181 +238,12 @@ __gconv_transliterate (struct __gconv_step *step, - return __GCONV_ILLEGAL_INPUT; - } - -- --/* Structure to represent results of found (or not) transliteration -- modules. */ --struct known_trans --{ -- /* This structure must remain the first member. */ -- struct trans_struct info; -- -- char *fname; -- void *handle; -- int open_count; --}; -- -- --/* Tree with results of previous calls to __gconv_translit_find. */ --static void *search_tree; -- --/* We modify global data. */ --__libc_lock_define_initialized (static, lock); -- -- --/* Compare two transliteration entries. */ --static int --trans_compare (const void *p1, const void *p2) --{ -- const struct known_trans *s1 = (const struct known_trans *) p1; -- const struct known_trans *s2 = (const struct known_trans *) p2; -- -- return strcmp (s1->info.name, s2->info.name); --} -- -- --/* Open (maybe reopen) the module named in the struct. Get the function -- and data structure pointers we need. */ --static int --open_translit (struct known_trans *trans) --{ -- __gconv_trans_query_fct queryfct; -- -- trans->handle = __libc_dlopen (trans->fname); -- if (trans->handle == NULL) -- /* Not available. */ -- return 1; -- -- /* Find the required symbol. */ -- queryfct = __libc_dlsym (trans->handle, "gconv_trans_context"); -- if (queryfct == NULL) -- { -- /* We cannot live with that. */ -- close_and_out: -- __libc_dlclose (trans->handle); -- trans->handle = NULL; -- return 1; -- } -- -- /* Get the context. */ -- if (queryfct (trans->info.name, &trans->info.csnames, &trans->info.ncsnames) -- != 0) -- goto close_and_out; -- -- /* Of course we also have to have the actual function. */ -- trans->info.trans_fct = __libc_dlsym (trans->handle, "gconv_trans"); -- if (trans->info.trans_fct == NULL) -- goto close_and_out; -- -- /* Now the optional functions. */ -- trans->info.trans_init_fct = -- __libc_dlsym (trans->handle, "gconv_trans_init"); -- trans->info.trans_context_fct = -- __libc_dlsym (trans->handle, "gconv_trans_context"); -- trans->info.trans_end_fct = -- __libc_dlsym (trans->handle, "gconv_trans_end"); -- -- trans->open_count = 1; -- -- return 0; --} -- -- - int - internal_function - __gconv_translit_find (struct trans_struct *trans) - { -- struct known_trans **found; -- const struct path_elem *runp; -- int res = 1; -- -- /* We have to have a name. */ -- assert (trans->name != NULL); -- -- /* Acquire the lock. */ -- __libc_lock_lock (lock); -- -- /* See whether we know this module already. */ -- found = __tfind (trans, &search_tree, trans_compare); -- if (found != NULL) -- { -- /* Is this module available? */ -- if ((*found)->handle != NULL) -- { -- /* Maybe we have to reopen the file. */ -- if ((*found)->handle != (void *) -1) -- /* The object is not unloaded. */ -- res = 0; -- else if (open_translit (*found) == 0) -- { -- /* Copy the data. */ -- *trans = (*found)->info; -- (*found)->open_count++; -- res = 0; -- } -- } -- } -- else -- { -- size_t name_len = strlen (trans->name) + 1; -- int need_so = 0; -- struct known_trans *newp; -- -- /* We have to continue looking for the module. */ -- if (__gconv_path_elem == NULL) -- __gconv_get_path (); -- -- /* See whether we have to append .so. */ -- if (name_len <= 4 || memcmp (&trans->name[name_len - 4], ".so", 3) != 0) -- need_so = 1; -- -- /* Create a new entry. */ -- newp = (struct known_trans *) malloc (sizeof (struct known_trans) -- + (__gconv_max_path_elem_len -- + name_len + 3) -- + name_len); -- if (newp != NULL) -- { -- char *cp; -- -- /* Clear the struct. */ -- memset (newp, '\0', sizeof (struct known_trans)); -- -- /* Store a copy of the module name. */ -- newp->info.name = cp = (char *) (newp + 1); -- cp = __mempcpy (cp, trans->name, name_len); -- -- newp->fname = cp; -- -- /* Search in all the directories. */ -- for (runp = __gconv_path_elem; runp->name != NULL; ++runp) -- { -- cp = __mempcpy (__stpcpy ((char *) newp->fname, runp->name), -- trans->name, name_len); -- if (need_so) -- memcpy (cp, ".so", sizeof (".so")); -- -- if (open_translit (newp) == 0) -- { -- /* We found a module. */ -- res = 0; -- break; -- } -- } -- -- if (res) -- newp->fname = NULL; -- -- /* In any case we'll add the entry to our search tree. */ -- if (__tsearch (newp, &search_tree, trans_compare) == NULL) -- { -- /* Yickes, this should not happen. Unload the object. */ -- res = 1; -- /* XXX unload here. */ -- } -- } -- } -- -- __libc_lock_unlock (lock); -- -- return res; -+ /* Transliteration module loading has been removed because it never -+ worked as intended and suffered from a security vulnerability. -+ Consequently, this function always fails. */ -+ return 1; - } diff --git a/pkgs/development/libraries/glibc/dont-use-system-ld-so-preload.patch b/pkgs/development/libraries/glibc/dont-use-system-ld-so-preload.patch index fabb6c3ec5e1..894e2a11cf87 100644 --- a/pkgs/development/libraries/glibc/dont-use-system-ld-so-preload.patch +++ b/pkgs/development/libraries/glibc/dont-use-system-ld-so-preload.patch @@ -1,12 +1,12 @@ -diff -rupN a/elf/rtld.c b/elf/rtld.c ---- a/elf/rtld.c 2013-08-11 00:52:55.000000001 +0200 -+++ b/elf/rtld.c 2014-02-18 13:56:19.000000001 +0100 -@@ -1639,7 +1639,7 @@ ERROR: ld.so: object '%s' cannot be load +diff -ru glibc-2.20-orig/elf/rtld.c glibc-2.20/elf/rtld.c +--- glibc-2.20-orig/elf/rtld.c 2014-09-07 10:09:09.000000000 +0200 ++++ glibc-2.20/elf/rtld.c 2014-10-27 11:32:25.203043157 +0100 +@@ -1513,7 +1513,7 @@ open(). So we do this first. If it succeeds we do almost twice the work but this does not matter, since it is not for production use. */ - static const char preload_file[] = "/etc/ld.so.preload"; + static const char preload_file[] = "/etc/ld-nix.so.preload"; - if (__builtin_expect (__access (preload_file, R_OK) == 0, 0)) + if (__glibc_unlikely (__access (preload_file, R_OK) == 0)) { /* Read the contents of the file. */ diff --git a/pkgs/development/libraries/glibc/fix-math.patch b/pkgs/development/libraries/glibc/fix-math.patch deleted file mode 100644 index 516f53954ddd..000000000000 --- a/pkgs/development/libraries/glibc/fix-math.patch +++ /dev/null @@ -1,336 +0,0 @@ -From: Siddhesh Poyarekar -Date: Thu, 27 Feb 2014 15:42:09 +0000 (+0530) -Subject: Fix sign of input to bsloww1 (BZ #16623) -X-Git-Url: http://repo.or.cz/w/glibc.git/commitdiff_plain/1cadc85813d736f7682fa2eeadae639ab6b66c65 - -Fix sign of input to bsloww1 (BZ #16623) - -In 84ba214c, I removed some redundant sign computations and in the -process, I incorrectly got rid of a temporary variable, thus passing -the absolute value of the input to bsloww1. This caused #16623. - -This fix undoes the incorrect change. - -[nix]: drop docs update (wouldn't apply) ---- - -diff --git a/math/auto-libm-test-in b/math/auto-libm-test-in -index ac5348f..fafe96f 100644 ---- a/math/auto-libm-test-in -+++ b/math/auto-libm-test-in -@@ -594,6 +594,7 @@ cos 0x1.0000010b239a9p0 - cos 0x1.00000162a932bp0 - cos 0x1.000002d452a10p0 - cos 0x1.000005bc7d86dp0 -+cos 0x1.200145a975ce6p32 - cos 1 - cos 2 - cos 3 -@@ -1748,6 +1749,7 @@ sin 7 - sin 8 - sin 9 - sin 10 -+sin 0x1.2001469775ce6p32 - - sincos 0 - sincos -0 -diff --git a/math/auto-libm-test-out b/math/auto-libm-test-out -index 8f79359..59c08a7 100644 ---- a/math/auto-libm-test-out -+++ b/math/auto-libm-test-out -@@ -74446,6 +74446,75 @@ cos 0x1.000005bc7d86dp0 - = cos tonearest ldbl-128ibm 0x1.000005bc7d86dp+0L : 0x8.a513ba9f703d3ffffffcb92354p-4L : inexact-ok - = cos towardzero ldbl-128ibm 0x1.000005bc7d86dp+0L : 0x8.a513ba9f703d3ffffffcb92354p-4L : inexact-ok - = cos upward ldbl-128ibm 0x1.000005bc7d86dp+0L : 0x8.a513ba9f703d3ffffffcb92358p-4L : inexact-ok -+cos 0x1.200145a975ce6p32 -+= cos downward flt-32 0x1.200146p+32f : -0xf.74fbep-4f : inexact-ok -+= cos tonearest flt-32 0x1.200146p+32f : -0xf.74fbdp-4f : inexact-ok -+= cos towardzero flt-32 0x1.200146p+32f : -0xf.74fbdp-4f : inexact-ok -+= cos upward flt-32 0x1.200146p+32f : -0xf.74fbdp-4f : inexact-ok -+= cos downward dbl-64 0x1.200146p+32 : -0xf.74fbd5498fe5p-4 : inexact-ok -+= cos tonearest dbl-64 0x1.200146p+32 : -0xf.74fbd5498fe5p-4 : inexact-ok -+= cos towardzero dbl-64 0x1.200146p+32 : -0xf.74fbd5498fe48p-4 : inexact-ok -+= cos upward dbl-64 0x1.200146p+32 : -0xf.74fbd5498fe48p-4 : inexact-ok -+= cos downward ldbl-96-intel 0x1.200146p+32L : -0xf.74fbd5498fe4c0dp-4L : inexact-ok -+= cos tonearest ldbl-96-intel 0x1.200146p+32L : -0xf.74fbd5498fe4c0cp-4L : inexact-ok -+= cos towardzero ldbl-96-intel 0x1.200146p+32L : -0xf.74fbd5498fe4c0cp-4L : inexact-ok -+= cos upward ldbl-96-intel 0x1.200146p+32L : -0xf.74fbd5498fe4c0cp-4L : inexact-ok -+= cos downward ldbl-96-m68k 0x1.200146p+32L : -0xf.74fbd5498fe4c0dp-4L : inexact-ok -+= cos tonearest ldbl-96-m68k 0x1.200146p+32L : -0xf.74fbd5498fe4c0cp-4L : inexact-ok -+= cos towardzero ldbl-96-m68k 0x1.200146p+32L : -0xf.74fbd5498fe4c0cp-4L : inexact-ok -+= cos upward ldbl-96-m68k 0x1.200146p+32L : -0xf.74fbd5498fe4c0cp-4L : inexact-ok -+= cos downward ldbl-128 0x1.200146p+32L : -0xf.74fbd5498fe4c0c71bd9e4ef59e8p-4L : inexact-ok -+= cos tonearest ldbl-128 0x1.200146p+32L : -0xf.74fbd5498fe4c0c71bd9e4ef59e8p-4L : inexact-ok -+= cos towardzero ldbl-128 0x1.200146p+32L : -0xf.74fbd5498fe4c0c71bd9e4ef59ep-4L : inexact-ok -+= cos upward ldbl-128 0x1.200146p+32L : -0xf.74fbd5498fe4c0c71bd9e4ef59ep-4L : inexact-ok -+= cos downward ldbl-128ibm 0x1.200146p+32L : -0xf.74fbd5498fe4c0c71bd9e4ef5cp-4L : inexact-ok -+= cos tonearest ldbl-128ibm 0x1.200146p+32L : -0xf.74fbd5498fe4c0c71bd9e4ef58p-4L : inexact-ok -+= cos towardzero ldbl-128ibm 0x1.200146p+32L : -0xf.74fbd5498fe4c0c71bd9e4ef58p-4L : inexact-ok -+= cos upward ldbl-128ibm 0x1.200146p+32L : -0xf.74fbd5498fe4c0c71bd9e4ef58p-4L : inexact-ok -+= cos downward flt-32 0x1.200144p+32f : 0xf.bc96cp-4f : inexact-ok -+= cos tonearest flt-32 0x1.200144p+32f : 0xf.bc96dp-4f : inexact-ok -+= cos towardzero flt-32 0x1.200144p+32f : 0xf.bc96cp-4f : inexact-ok -+= cos upward flt-32 0x1.200144p+32f : 0xf.bc96dp-4f : inexact-ok -+= cos downward dbl-64 0x1.200144p+32 : 0xf.bc96ca2c658a8p-4 : inexact-ok -+= cos tonearest dbl-64 0x1.200144p+32 : 0xf.bc96ca2c658a8p-4 : inexact-ok -+= cos towardzero dbl-64 0x1.200144p+32 : 0xf.bc96ca2c658a8p-4 : inexact-ok -+= cos upward dbl-64 0x1.200144p+32 : 0xf.bc96ca2c658bp-4 : inexact-ok -+= cos downward ldbl-96-intel 0x1.200144p+32L : 0xf.bc96ca2c658abf5p-4L : inexact-ok -+= cos tonearest ldbl-96-intel 0x1.200144p+32L : 0xf.bc96ca2c658abf6p-4L : inexact-ok -+= cos towardzero ldbl-96-intel 0x1.200144p+32L : 0xf.bc96ca2c658abf5p-4L : inexact-ok -+= cos upward ldbl-96-intel 0x1.200144p+32L : 0xf.bc96ca2c658abf6p-4L : inexact-ok -+= cos downward ldbl-96-m68k 0x1.200144p+32L : 0xf.bc96ca2c658abf5p-4L : inexact-ok -+= cos tonearest ldbl-96-m68k 0x1.200144p+32L : 0xf.bc96ca2c658abf6p-4L : inexact-ok -+= cos towardzero ldbl-96-m68k 0x1.200144p+32L : 0xf.bc96ca2c658abf5p-4L : inexact-ok -+= cos upward ldbl-96-m68k 0x1.200144p+32L : 0xf.bc96ca2c658abf6p-4L : inexact-ok -+= cos downward ldbl-128 0x1.200144p+32L : 0xf.bc96ca2c658abf5ace7b886a8fbp-4L : inexact-ok -+= cos tonearest ldbl-128 0x1.200144p+32L : 0xf.bc96ca2c658abf5ace7b886a8fbp-4L : inexact-ok -+= cos towardzero ldbl-128 0x1.200144p+32L : 0xf.bc96ca2c658abf5ace7b886a8fbp-4L : inexact-ok -+= cos upward ldbl-128 0x1.200144p+32L : 0xf.bc96ca2c658abf5ace7b886a8fb8p-4L : inexact-ok -+= cos downward ldbl-128ibm 0x1.200144p+32L : 0xf.bc96ca2c658abf5ace7b886a8cp-4L : inexact-ok -+= cos tonearest ldbl-128ibm 0x1.200144p+32L : 0xf.bc96ca2c658abf5ace7b886a9p-4L : inexact-ok -+= cos towardzero ldbl-128ibm 0x1.200144p+32L : 0xf.bc96ca2c658abf5ace7b886a8cp-4L : inexact-ok -+= cos upward ldbl-128ibm 0x1.200144p+32L : 0xf.bc96ca2c658abf5ace7b886a9p-4L : inexact-ok -+= cos downward dbl-64 0x1.200145a975ce6p+32 : -0x6.568e7ed3dffdp-4 : inexact-ok -+= cos tonearest dbl-64 0x1.200145a975ce6p+32 : -0x6.568e7ed3dffccp-4 : inexact-ok -+= cos towardzero dbl-64 0x1.200145a975ce6p+32 : -0x6.568e7ed3dffccp-4 : inexact-ok -+= cos upward dbl-64 0x1.200145a975ce6p+32 : -0x6.568e7ed3dffccp-4 : inexact-ok -+= cos downward ldbl-96-intel 0x1.200145a975ce6p+32L : -0x6.568e7ed3dffcdfe8p-4L : inexact-ok -+= cos tonearest ldbl-96-intel 0x1.200145a975ce6p+32L : -0x6.568e7ed3dffcdfep-4L : inexact-ok -+= cos towardzero ldbl-96-intel 0x1.200145a975ce6p+32L : -0x6.568e7ed3dffcdfep-4L : inexact-ok -+= cos upward ldbl-96-intel 0x1.200145a975ce6p+32L : -0x6.568e7ed3dffcdfep-4L : inexact-ok -+= cos downward ldbl-96-m68k 0x1.200145a975ce6p+32L : -0x6.568e7ed3dffcdfe8p-4L : inexact-ok -+= cos tonearest ldbl-96-m68k 0x1.200145a975ce6p+32L : -0x6.568e7ed3dffcdfep-4L : inexact-ok -+= cos towardzero ldbl-96-m68k 0x1.200145a975ce6p+32L : -0x6.568e7ed3dffcdfep-4L : inexact-ok -+= cos upward ldbl-96-m68k 0x1.200145a975ce6p+32L : -0x6.568e7ed3dffcdfep-4L : inexact-ok -+= cos downward ldbl-128 0x1.200145a975ce6p+32L : -0x6.568e7ed3dffcdfe227fd726840e8p-4L : inexact-ok -+= cos tonearest ldbl-128 0x1.200145a975ce6p+32L : -0x6.568e7ed3dffcdfe227fd726840e4p-4L : inexact-ok -+= cos towardzero ldbl-128 0x1.200145a975ce6p+32L : -0x6.568e7ed3dffcdfe227fd726840e4p-4L : inexact-ok -+= cos upward ldbl-128 0x1.200145a975ce6p+32L : -0x6.568e7ed3dffcdfe227fd726840e4p-4L : inexact-ok -+= cos downward ldbl-128ibm 0x1.200145a975ce6p+32L : -0x6.568e7ed3dffcdfe227fd726842p-4L : inexact-ok -+= cos tonearest ldbl-128ibm 0x1.200145a975ce6p+32L : -0x6.568e7ed3dffcdfe227fd72684p-4L : inexact-ok -+= cos towardzero ldbl-128ibm 0x1.200145a975ce6p+32L : -0x6.568e7ed3dffcdfe227fd72684p-4L : inexact-ok -+= cos upward ldbl-128ibm 0x1.200145a975ce6p+32L : -0x6.568e7ed3dffcdfe227fd72684p-4L : inexact-ok - cos 1 - = cos downward flt-32 0x1p+0f : 0x8.a514p-4f : inexact-ok - = cos tonearest flt-32 0x1p+0f : 0x8.a514p-4f : inexact-ok -@@ -157744,6 +157813,75 @@ sin 10 - = sin tonearest ldbl-128ibm 0xap+0L : -0x8.b44f7af9a7a92ce7fb22be025p-4L : inexact-ok - = sin towardzero ldbl-128ibm 0xap+0L : -0x8.b44f7af9a7a92ce7fb22be024cp-4L : inexact-ok - = sin upward ldbl-128ibm 0xap+0L : -0x8.b44f7af9a7a92ce7fb22be024cp-4L : inexact-ok -+sin 0x1.2001469775ce6p32 -+= sin downward flt-32 0x1.200148p+32f : -0x5.595d8p-4f : inexact-ok -+= sin tonearest flt-32 0x1.200148p+32f : -0x5.595d8p-4f : inexact-ok -+= sin towardzero flt-32 0x1.200148p+32f : -0x5.595d78p-4f : inexact-ok -+= sin upward flt-32 0x1.200148p+32f : -0x5.595d78p-4f : inexact-ok -+= sin downward dbl-64 0x1.200148p+32 : -0x5.595d7e536fe38p-4 : inexact-ok -+= sin tonearest dbl-64 0x1.200148p+32 : -0x5.595d7e536fe34p-4 : inexact-ok -+= sin towardzero dbl-64 0x1.200148p+32 : -0x5.595d7e536fe34p-4 : inexact-ok -+= sin upward dbl-64 0x1.200148p+32 : -0x5.595d7e536fe34p-4 : inexact-ok -+= sin downward ldbl-96-intel 0x1.200148p+32L : -0x5.595d7e536fe35eep-4L : inexact-ok -+= sin tonearest ldbl-96-intel 0x1.200148p+32L : -0x5.595d7e536fe35ed8p-4L : inexact-ok -+= sin towardzero ldbl-96-intel 0x1.200148p+32L : -0x5.595d7e536fe35ed8p-4L : inexact-ok -+= sin upward ldbl-96-intel 0x1.200148p+32L : -0x5.595d7e536fe35ed8p-4L : inexact-ok -+= sin downward ldbl-96-m68k 0x1.200148p+32L : -0x5.595d7e536fe35eep-4L : inexact-ok -+= sin tonearest ldbl-96-m68k 0x1.200148p+32L : -0x5.595d7e536fe35ed8p-4L : inexact-ok -+= sin towardzero ldbl-96-m68k 0x1.200148p+32L : -0x5.595d7e536fe35ed8p-4L : inexact-ok -+= sin upward ldbl-96-m68k 0x1.200148p+32L : -0x5.595d7e536fe35ed8p-4L : inexact-ok -+= sin downward ldbl-128 0x1.200148p+32L : -0x5.595d7e536fe35edbe2ad0df9d944p-4L : inexact-ok -+= sin tonearest ldbl-128 0x1.200148p+32L : -0x5.595d7e536fe35edbe2ad0df9d94p-4L : inexact-ok -+= sin towardzero ldbl-128 0x1.200148p+32L : -0x5.595d7e536fe35edbe2ad0df9d94p-4L : inexact-ok -+= sin upward ldbl-128 0x1.200148p+32L : -0x5.595d7e536fe35edbe2ad0df9d94p-4L : inexact-ok -+= sin downward ldbl-128ibm 0x1.200148p+32L : -0x5.595d7e536fe35edbe2ad0df9dap-4L : inexact-ok -+= sin tonearest ldbl-128ibm 0x1.200148p+32L : -0x5.595d7e536fe35edbe2ad0df9dap-4L : inexact-ok -+= sin towardzero ldbl-128ibm 0x1.200148p+32L : -0x5.595d7e536fe35edbe2ad0df9d8p-4L : inexact-ok -+= sin upward ldbl-128ibm 0x1.200148p+32L : -0x5.595d7e536fe35edbe2ad0df9d8p-4L : inexact-ok -+= sin downward flt-32 0x1.200146p+32f : 0x4.220ffp-4f : inexact-ok -+= sin tonearest flt-32 0x1.200146p+32f : 0x4.220ffp-4f : inexact-ok -+= sin towardzero flt-32 0x1.200146p+32f : 0x4.220ffp-4f : inexact-ok -+= sin upward flt-32 0x1.200146p+32f : 0x4.220ff8p-4f : inexact-ok -+= sin downward dbl-64 0x1.200146p+32 : 0x4.220ff25f5cfp-4 : inexact-ok -+= sin tonearest dbl-64 0x1.200146p+32 : 0x4.220ff25f5cf04p-4 : inexact-ok -+= sin towardzero dbl-64 0x1.200146p+32 : 0x4.220ff25f5cfp-4 : inexact-ok -+= sin upward dbl-64 0x1.200146p+32 : 0x4.220ff25f5cf04p-4 : inexact-ok -+= sin downward ldbl-96-intel 0x1.200146p+32L : 0x4.220ff25f5cf02a4p-4L : inexact-ok -+= sin tonearest ldbl-96-intel 0x1.200146p+32L : 0x4.220ff25f5cf02a48p-4L : inexact-ok -+= sin towardzero ldbl-96-intel 0x1.200146p+32L : 0x4.220ff25f5cf02a4p-4L : inexact-ok -+= sin upward ldbl-96-intel 0x1.200146p+32L : 0x4.220ff25f5cf02a48p-4L : inexact-ok -+= sin downward ldbl-96-m68k 0x1.200146p+32L : 0x4.220ff25f5cf02a4p-4L : inexact-ok -+= sin tonearest ldbl-96-m68k 0x1.200146p+32L : 0x4.220ff25f5cf02a48p-4L : inexact-ok -+= sin towardzero ldbl-96-m68k 0x1.200146p+32L : 0x4.220ff25f5cf02a4p-4L : inexact-ok -+= sin upward ldbl-96-m68k 0x1.200146p+32L : 0x4.220ff25f5cf02a48p-4L : inexact-ok -+= sin downward ldbl-128 0x1.200146p+32L : 0x4.220ff25f5cf02a464dbb3a679ccp-4L : inexact-ok -+= sin tonearest ldbl-128 0x1.200146p+32L : 0x4.220ff25f5cf02a464dbb3a679ccp-4L : inexact-ok -+= sin towardzero ldbl-128 0x1.200146p+32L : 0x4.220ff25f5cf02a464dbb3a679ccp-4L : inexact-ok -+= sin upward ldbl-128 0x1.200146p+32L : 0x4.220ff25f5cf02a464dbb3a679cc4p-4L : inexact-ok -+= sin downward ldbl-128ibm 0x1.200146p+32L : 0x4.220ff25f5cf02a464dbb3a679cp-4L : inexact-ok -+= sin tonearest ldbl-128ibm 0x1.200146p+32L : 0x4.220ff25f5cf02a464dbb3a679cp-4L : inexact-ok -+= sin towardzero ldbl-128ibm 0x1.200146p+32L : 0x4.220ff25f5cf02a464dbb3a679cp-4L : inexact-ok -+= sin upward ldbl-128ibm 0x1.200146p+32L : 0x4.220ff25f5cf02a464dbb3a679ep-4L : inexact-ok -+= sin downward dbl-64 0x1.2001469775ce6p+32 : -0x6.444fda50019fcp-4 : inexact-ok -+= sin tonearest dbl-64 0x1.2001469775ce6p+32 : -0x6.444fda50019f8p-4 : inexact-ok -+= sin towardzero dbl-64 0x1.2001469775ce6p+32 : -0x6.444fda50019f8p-4 : inexact-ok -+= sin upward dbl-64 0x1.2001469775ce6p+32 : -0x6.444fda50019f8p-4 : inexact-ok -+= sin downward ldbl-96-intel 0x1.2001469775ce6p+32L : -0x6.444fda50019f9f6p-4L : inexact-ok -+= sin tonearest ldbl-96-intel 0x1.2001469775ce6p+32L : -0x6.444fda50019f9f58p-4L : inexact-ok -+= sin towardzero ldbl-96-intel 0x1.2001469775ce6p+32L : -0x6.444fda50019f9f58p-4L : inexact-ok -+= sin upward ldbl-96-intel 0x1.2001469775ce6p+32L : -0x6.444fda50019f9f58p-4L : inexact-ok -+= sin downward ldbl-96-m68k 0x1.2001469775ce6p+32L : -0x6.444fda50019f9f6p-4L : inexact-ok -+= sin tonearest ldbl-96-m68k 0x1.2001469775ce6p+32L : -0x6.444fda50019f9f58p-4L : inexact-ok -+= sin towardzero ldbl-96-m68k 0x1.2001469775ce6p+32L : -0x6.444fda50019f9f58p-4L : inexact-ok -+= sin upward ldbl-96-m68k 0x1.2001469775ce6p+32L : -0x6.444fda50019f9f58p-4L : inexact-ok -+= sin downward ldbl-128 0x1.2001469775ce6p+32L : -0x6.444fda50019f9f5ba3779ca70604p-4L : inexact-ok -+= sin tonearest ldbl-128 0x1.2001469775ce6p+32L : -0x6.444fda50019f9f5ba3779ca706p-4L : inexact-ok -+= sin towardzero ldbl-128 0x1.2001469775ce6p+32L : -0x6.444fda50019f9f5ba3779ca706p-4L : inexact-ok -+= sin upward ldbl-128 0x1.2001469775ce6p+32L : -0x6.444fda50019f9f5ba3779ca706p-4L : inexact-ok -+= sin downward ldbl-128ibm 0x1.2001469775ce6p+32L : -0x6.444fda50019f9f5ba3779ca708p-4L : inexact-ok -+= sin tonearest ldbl-128ibm 0x1.2001469775ce6p+32L : -0x6.444fda50019f9f5ba3779ca706p-4L : inexact-ok -+= sin towardzero ldbl-128ibm 0x1.2001469775ce6p+32L : -0x6.444fda50019f9f5ba3779ca706p-4L : inexact-ok -+= sin upward ldbl-128ibm 0x1.2001469775ce6p+32L : -0x6.444fda50019f9f5ba3779ca706p-4L : inexact-ok - sincos 0 - = sincos downward flt-32 0x0p+0f : 0x0p+0f 0x1p+0f : inexact-ok - = sincos tonearest flt-32 0x0p+0f : 0x0p+0f 0x1p+0f : inexact-ok -diff --git a/sysdeps/ieee754/dbl-64/s_sin.c b/sysdeps/ieee754/dbl-64/s_sin.c -index 6105e9f..50109b8 100644 ---- a/sysdeps/ieee754/dbl-64/s_sin.c -+++ b/sysdeps/ieee754/dbl-64/s_sin.c -@@ -447,19 +447,21 @@ __sin (double x) - } - else - { -+ double t; - if (a > 0) - { - m = 1; -+ t = a; - db = da; - } - else - { - m = 0; -- a = -a; -+ t = -a; - db = -da; - } -- u.x = big + a; -- y = a - (u.x - big); -+ u.x = big + t; -+ y = t - (u.x - big); - res = do_sin (u, y, db, &cor); - cor = (cor > 0) ? 1.035 * cor + eps : 1.035 * cor - eps; - retval = ((res == res + cor) ? ((m) ? res : -res) -@@ -671,19 +673,21 @@ __cos (double x) - } - else - { -+ double t; - if (a > 0) - { - m = 1; -+ t = a; - db = da; - } - else - { - m = 0; -- a = -a; -+ t = -a; - db = -da; - } -- u.x = big + a; -- y = a - (u.x - big); -+ u.x = big + t; -+ y = t - (u.x - big); - res = do_sin (u, y, db, &cor); - cor = (cor > 0) ? 1.035 * cor + eps : 1.035 * cor - eps; - retval = ((res == res + cor) ? ((m) ? res : -res) -diff --git a/sysdeps/x86_64/fpu/libm-test-ulps b/sysdeps/x86_64/fpu/libm-test-ulps -index f3980f8..544f1c7 100644 ---- a/sysdeps/x86_64/fpu/libm-test-ulps -+++ b/sysdeps/x86_64/fpu/libm-test-ulps -@@ -10900,6 +10900,14 @@ idouble: 1 - Test "cos_downward (0x1.0c152382d7365p+0)": - double: 1 - idouble: 1 -+Test "cos_downward (0x1.200145a975ce6p+32)": -+double: 1 -+idouble: 1 -+ildouble: 1 -+ldouble: 1 -+Test "cos_downward (0x1.200146p+32)": -+ildouble: 1 -+ldouble: 1 - Test "cos_downward (0x1.921fb4p+0)": - ildouble: 1 - ldouble: 1 -@@ -11126,6 +11134,9 @@ idouble: 1 - Test "cos_towardzero (0x1.0c152382d7365p+0)": - double: 1 - idouble: 1 -+Test "cos_towardzero (0x1.200146p+32)": -+double: 1 -+idouble: 1 - Test "cos_towardzero (0x1.921fb4p+0)": - ildouble: 1 - ldouble: 1 -@@ -11258,6 +11269,17 @@ idouble: 1 - Test "cos_upward (0x1.0c1524p+0)": - double: 1 - idouble: 1 -+Test "cos_upward (0x1.200144p+32)": -+double: 1 -+idouble: 1 -+Test "cos_upward (0x1.200145a975ce6p+32)": -+ildouble: 1 -+ldouble: 1 -+Test "cos_upward (0x1.200146p+32)": -+double: 1 -+idouble: 1 -+ildouble: 1 -+ldouble: 1 - Test "cos_upward (0x1.921fb4p+0)": - double: 1 - idouble: 1 -@@ -15155,6 +15177,19 @@ double: 1 - idouble: 1 - ildouble: 1 - ldouble: 1 -+Test "sin_downward (0x1.2001469775ce6p+32)": -+double: 1 -+idouble: 1 -+ildouble: 1 -+ldouble: 1 -+Test "sin_downward (0x1.200146p+32)": -+double: 1 -+idouble: 1 -+Test "sin_downward (0x1.200148p+32)": -+double: 1 -+idouble: 1 -+ildouble: 1 -+ldouble: 1 - Test "sin_downward (0x1.921fb54442d18468p+0)": - ildouble: 1 - ldouble: 1 -@@ -15383,6 +15418,9 @@ double: 1 - idouble: 1 - ildouble: 1 - ldouble: 1 -+Test "sin_towardzero (0x1.200146p+32)": -+double: 1 -+idouble: 1 - Test "sin_towardzero (0x1.921fb54442d18468p+0)": - ildouble: 1 - ldouble: 1 -@@ -15532,6 +15570,12 @@ ldouble: 1 - Test "sin_upward (-0x8.60a92p-4)": - ildouble: 1 - ldouble: 1 -+Test "sin_upward (0x1.2001469775ce6p+32)": -+ildouble: 1 -+ldouble: 1 -+Test "sin_upward (0x1.200148p+32)": -+ildouble: 1 -+ldouble: 1 - Test "sin_upward (0x1.921fb4p+0)": - double: 1 - idouble: 1 diff --git a/pkgs/development/libraries/glibc/glibc-remove-date-from-compilation-banner.patch b/pkgs/development/libraries/glibc/glibc-remove-date-from-compilation-banner.patch deleted file mode 100644 index 5d0b1a51762e..000000000000 --- a/pkgs/development/libraries/glibc/glibc-remove-date-from-compilation-banner.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -ur glibc-2.17.orig/csu/Makefile glibc-2.17/csu/Makefile ---- glibc-2.17.orig/csu/Makefile 2012-12-25 04:02:13.000000000 +0100 -+++ glibc-2.17/csu/Makefile 2013-08-19 16:01:57.132378550 +0200 -@@ -172,7 +172,7 @@ - os=Linux; \ - fi; \ - printf '"Compiled on a %s %s system on %s.\\n"\n' \ -- "$$os" "$$version" "`date +%Y-%m-%d`";; \ -+ "$$os" "$$version";; \ - *) ;; \ - esac; \ - files="$(all-Banner-files)"; \ diff --git a/pkgs/development/libraries/glibc/locales.nix b/pkgs/development/libraries/glibc/locales.nix index 9f9fb86a396d..1dd15832f5b6 100644 --- a/pkgs/development/libraries/glibc/locales.nix +++ b/pkgs/development/libraries/glibc/locales.nix @@ -28,8 +28,8 @@ build null { mkdir -p $TMPDIR/"$(dirname $(readlink -f $(type -p localedef)))/../lib/locale" # Hack to allow building of the locales (needed since glibc-2.12) - sed -i -e "s,^LOCALEDEF=.*,LOCALEDEF=localedef --prefix=$TMPDIR," -e \ - /library-path/d ../glibc-2*/localedata/Makefile + sed -i -e 's,^$(rtld-prefix) $(common-objpfx)locale/localedef,localedef --prefix='$TMPDIR',' ../glibc-2*/localedata/Makefile + ${if allLocales then "" else "echo SUPPORTED-LOCALES=\"${toString locales}\" > ../glibc-2*/localedata/SUPPORTED"} From 41c0302661b90dd98e9c1806e5e747ea339d5a3d Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Wed, 29 Oct 2014 17:55:40 +0100 Subject: [PATCH 017/937] aterm: Fix building on Glibc 2.20 --- pkgs/development/libraries/aterm/2.5.nix | 2 ++ 1 file changed, 2 insertions(+) diff --git a/pkgs/development/libraries/aterm/2.5.nix b/pkgs/development/libraries/aterm/2.5.nix index 10a22e00f650..ef53a76d20ba 100644 --- a/pkgs/development/libraries/aterm/2.5.nix +++ b/pkgs/development/libraries/aterm/2.5.nix @@ -21,6 +21,8 @@ stdenv.mkDerivation { dontDisableStatic = true; + NIX_CFLAGS_COMPILE = "-D__USE_BSD"; + meta = { homepage = http://www.cwi.nl/htbin/sen1/twiki/bin/view/SEN1/ATerm; license = "LGPL"; From 1acfbca7dfc7beff7f5988d7e3621c930b7eaccd Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Thu, 30 Oct 2014 09:28:10 +0100 Subject: [PATCH 018/937] grub2: Fix building against Glibc 2.20 http://hydra.nixos.org/build/16563301 --- pkgs/tools/misc/grub/2.0x.nix | 2 +- pkgs/tools/misc/grub/glibc-2.20.patch | 29 +++++++++++++++++++++++++++ 2 files changed, 30 insertions(+), 1 deletion(-) create mode 100644 pkgs/tools/misc/grub/glibc-2.20.patch diff --git a/pkgs/tools/misc/grub/2.0x.nix b/pkgs/tools/misc/grub/2.0x.nix index e5471a6c404c..1dbdfff7448d 100644 --- a/pkgs/tools/misc/grub/2.0x.nix +++ b/pkgs/tools/misc/grub/2.0x.nix @@ -77,7 +77,7 @@ stdenv.mkDerivation rec { -e "s|/usr/src/unifont.bdf|$PWD/unifont.bdf|g" ''; - patches = [ ./fix-bash-completion.patch ]; + patches = [ ./fix-bash-completion.patch ./glibc-2.20.patch ]; configureFlags = optional zfsSupport "--enable-libzfs" ++ optionals efiSupport [ "--with-platform=efi" "--target=${efiSystems.${stdenv.system}.target}" "--program-prefix=" ]; diff --git a/pkgs/tools/misc/grub/glibc-2.20.patch b/pkgs/tools/misc/grub/glibc-2.20.patch new file mode 100644 index 000000000000..6bb4f677541b --- /dev/null +++ b/pkgs/tools/misc/grub/glibc-2.20.patch @@ -0,0 +1,29 @@ +* grub-core/kern/emu/hostfs.c: squahes below warning + warning: #warning "_BSD_SOURCE and _SVID_SOURCE are deprecated, use +_DEFAULT_SOURCE" + +Signed-off-by: Khem Raj + +Upstream-Status: Submitted +--- + grub-core/kern/emu/hostfs.c | 4 ++++ + 1 file changed, 4 insertions(+) + +diff --git a/grub-core/kern/emu/hostfs.c b/grub-core/kern/emu/hostfs.c +index 7e725f6..823116d 100644 +--- a/grub-core/kern/emu/hostfs.c ++++ b/grub-core/kern/emu/hostfs.c +@@ -19,7 +19,11 @@ + + #include + ++/* Legacy feature macro.*/ + #define _BSD_SOURCE ++/* New feature macro that provides everything _BSD_SOURCE and ++ * _SVID_SOURCE provided and possibly more. */ ++#define _DEFAULT_SOURCE + #include + #include + #include +-- +2.1.0 From d3da884dd8562dee55b4eeccc0a0c19ef052e9ec Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Thu, 30 Oct 2014 13:34:26 +0100 Subject: [PATCH 019/937] imagemagick: Use --with-gcc-arch Without this, ImageMagick's configure script will generate code specific to the machine building the package. This code may then fail on other CPU types. http://hydra.nixos.org/build/16564129 --- .../graphics/ImageMagick/default.nix | 28 +++++++++++++------ 1 file changed, 19 insertions(+), 9 deletions(-) diff --git a/pkgs/applications/graphics/ImageMagick/default.nix b/pkgs/applications/graphics/ImageMagick/default.nix index e75ce535f7f2..da2ca64d9758 100644 --- a/pkgs/applications/graphics/ImageMagick/default.nix +++ b/pkgs/applications/graphics/ImageMagick/default.nix @@ -1,4 +1,5 @@ -{ stdenv +{ lib +, stdenv , fetchurl , pkgconfig , bzip2 @@ -18,8 +19,16 @@ }: let + version = "6.8.9-8"; + + arch = + if stdenv.system == "i686-linux" then "i686" + else if stdenv.system == "x86_64-linux" || stdenv.system == "x86_64-darwin" then "x86-64" + else throw "ImageMagick is not supported on this platform."; + in + stdenv.mkDerivation rec { name = "ImageMagick-${version}"; @@ -35,18 +44,19 @@ stdenv.mkDerivation rec { export DVIDecodeDelegate=${tetex}/bin/dvips '' else ""; - configureFlags = "" + stdenv.lib.optionalString (stdenv.system != "x86_64-darwin") '' - --with-gs-font-dir=${ghostscript}/share/ghostscript/fonts - --with-gslib - '' + '' - --with-frozenpaths - ${if librsvg != null then "--with-rsvg" else ""} - ''; + configureFlags = + [ "--with-frozenpaths" ] + ++ [ "--with-gcc-arch=${arch}" ] + ++ lib.optional (librsvg != null) "--with-rsvg" + ++ lib.optionals (stdenv.system != "x86_64-darwin") + [ "--with-gs-font-dir=${ghostscript}/share/ghostscript/fonts" + "--with-gslib" + ]; propagatedBuildInputs = [ bzip2 fontconfig freetype libjpeg libpng libtiff libxml2 zlib librsvg libtool jasper libX11 - ] ++ stdenv.lib.optional (stdenv.system != "x86_64-darwin") ghostscript; + ] ++ lib.optional (stdenv.system != "x86_64-darwin") ghostscript; buildInputs = [ tetex pkgconfig ]; From 4cc61d6d080a10c80267463a340dbe42f0ad0174 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Sat, 1 Nov 2014 22:29:42 +0100 Subject: [PATCH 020/937] xorg.xf86-video-vmware: fix build against glibc-2.20 --- pkgs/servers/x11/xorg/overrides.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pkgs/servers/x11/xorg/overrides.nix b/pkgs/servers/x11/xorg/overrides.nix index 246ed94cd1ab..19c119ad74c6 100644 --- a/pkgs/servers/x11/xorg/overrides.nix +++ b/pkgs/servers/x11/xorg/overrides.nix @@ -203,6 +203,11 @@ in xf86videovmware = attrs: attrs // { buildInputs = attrs.buildInputs ++ [ args.mesa_drivers ]; # for libxatracker + patches = [( args.fetchpatch { + url = "http://cgit.freedesktop.org/xorg/driver/xf86-video-vmware/patch/" + + "?id=4664412d7a5266d2b392957406b34abc5db95e48"; + sha256 = "1gix83f1is91iq1zd66nj4k72jm24jjjd9s9l0bzpzhgc8smqdk2"; + })]; }; xf86videoqxl = attrs: attrs // { From 95b475da0925230b6610330d6f6b7fec4729a6dd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Sat, 1 Nov 2014 23:26:44 +0100 Subject: [PATCH 021/937] xorg.xf86-input-vmmouse: fix build with glibc-2.20 --- pkgs/servers/x11/xorg/overrides.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pkgs/servers/x11/xorg/overrides.nix b/pkgs/servers/x11/xorg/overrides.nix index 19c119ad74c6..ca3d16d1f9be 100644 --- a/pkgs/servers/x11/xorg/overrides.nix +++ b/pkgs/servers/x11/xorg/overrides.nix @@ -188,6 +188,11 @@ in "--with-xorg-conf-dir=$(out)/share/X11/xorg.conf.d" "--with-udev-rules-dir=$(out)/lib/udev/rules.d" ]; + patches = [( args.fetchpatch { + url = "http://cgit.freedesktop.org/xorg/driver/xf86-input-vmmouse/patch/" + + "?id=1cbbc03c4b37d57760c57bd2e0b0f89d744a5795"; + sha256 = "1qkhwj2yal0cz15lv9557d10ylvxlq05ibq43pm2rrvqdg3mb6h4"; + })]; }; xf86videoati = attrs: attrs // { From 515dcb0f660a472877a34a8c00980fb77ebc005a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Sat, 1 Nov 2014 23:31:18 +0100 Subject: [PATCH 022/937] xorg.xf86-video-intel: use the new versions The old driver wasn't updated since August 2013, and e.g. won't compile with glibc-2.20. Distros like Arch or Ubuntu are using newer one for a long time. --- pkgs/servers/x11/xorg/default.nix | 10 +++++----- pkgs/servers/x11/xorg/tarballs-7.7.list | 2 +- pkgs/servers/x11/xorg/xf86-video-intel-testing.nix | 14 -------------- pkgs/top-level/all-packages.nix | 2 -- 4 files changed, 6 insertions(+), 22 deletions(-) delete mode 100644 pkgs/servers/x11/xorg/xf86-video-intel-testing.nix diff --git a/pkgs/servers/x11/xorg/default.nix b/pkgs/servers/x11/xorg/default.nix index 11b1168498d4..e379ab2750d1 100644 --- a/pkgs/servers/x11/xorg/default.nix +++ b/pkgs/servers/x11/xorg/default.nix @@ -1555,14 +1555,14 @@ let }) // {inherit fontsproto libpciaccess randrproto renderproto videoproto xextproto xorgserver xproto ;}; xf86videointel = (mkDerivation "xf86videointel" { - name = "xf86-video-intel-2.21.15"; + name = "xf86-video-intel-2.99.916"; builder = ./builder.sh; src = fetchurl { - url = mirror://xorg/individual/driver/xf86-video-intel-2.21.15.tar.bz2; - sha256 = "1z6ncmpszmwqi9xr590c4kp4gjjf7mndcr56r35x2bx7h87i8nkx"; + url = mirror://xorg/individual/driver/xf86-video-intel-2.99.916.tar.bz2; + sha256 = "00gd3v3xgrmj8aliwjxkml13gfqvcbjazb6l5m1wkry39agq36j0"; }; - buildInputs = [pkgconfig dri2proto fontsproto glamoregl libdrm udev libpciaccess randrproto renderproto libX11 xcbutil libxcb libXext xextproto xf86driproto xorgserver xproto libXrender libXvMC ]; - }) // {inherit dri2proto fontsproto glamoregl libdrm udev libpciaccess randrproto renderproto libX11 xcbutil libxcb libXext xextproto xf86driproto xorgserver xproto libXrender libXvMC ;}; + buildInputs = [pkgconfig dri2proto dri3proto fontsproto glamoregl libdrm libpng udev libpciaccess presentproto randrproto renderproto libX11 xcbutil libxcb libXext xextproto xf86driproto libXfixes xorgserver xproto libXrandr libXrender libxshmfence libXvMC ]; + }) // {inherit dri2proto dri3proto fontsproto glamoregl libdrm libpng udev libpciaccess presentproto randrproto renderproto libX11 xcbutil libxcb libXext xextproto xf86driproto libXfixes xorgserver xproto libXrandr libXrender libxshmfence libXvMC ;}; xf86videomach64 = (mkDerivation "xf86videomach64" { name = "xf86-video-mach64-6.9.4"; diff --git a/pkgs/servers/x11/xorg/tarballs-7.7.list b/pkgs/servers/x11/xorg/tarballs-7.7.list index 42947f49778a..8644aba9a50c 100644 --- a/pkgs/servers/x11/xorg/tarballs-7.7.list +++ b/pkgs/servers/x11/xorg/tarballs-7.7.list @@ -134,7 +134,7 @@ mirror://xorg/individual/driver/xf86-video-geode-2.11.16.tar.bz2 mirror://xorg/individual/driver/xf86-video-glide-1.2.2.tar.bz2 mirror://xorg/individual/driver/xf86-video-glint-1.2.8.tar.bz2 mirror://xorg/individual/driver/xf86-video-i128-1.3.6.tar.bz2 -mirror://xorg/individual/driver/xf86-video-intel-2.21.15.tar.bz2 +mirror://xorg/individual/driver/xf86-video-intel-2.99.916.tar.bz2 mirror://xorg/individual/driver/xf86-video-mach64-6.9.4.tar.bz2 mirror://xorg/individual/driver/xf86-video-mga-1.6.3.tar.bz2 mirror://xorg/individual/driver/xf86-video-modesetting-0.9.0.tar.bz2 diff --git a/pkgs/servers/x11/xorg/xf86-video-intel-testing.nix b/pkgs/servers/x11/xorg/xf86-video-intel-testing.nix deleted file mode 100644 index bee394e99638..000000000000 --- a/pkgs/servers/x11/xorg/xf86-video-intel-testing.nix +++ /dev/null @@ -1,14 +0,0 @@ -{ stdenv, fetchurl, pkgconfig, libdrm, udev, xorg }: - -with xorg; - -(stdenv.mkDerivation ({ - name = "xf86-video-intel-2.99.912"; - builder = ./builder.sh; - src = fetchurl { - url = mirror://xorg/individual/driver/xf86-video-intel-2.99.912.tar.bz2; - sha256 = "00cmvs5jxaqnl1pwqvj1rwir4kbvf5qfng89cjn4rwsr5m4zr3vw"; - }; - buildInputs = [pkgconfig dri2proto fontsproto glamoregl libdrm udev libpciaccess randrproto renderproto libX11 xcbutil libxcb libXcursor libXdamage libXext xextproto xf86driproto libXfixes libXinerama xorgserver xproto libXrandr libXrender libXtst libXvMC ]; -})) // {inherit dri2proto fontsproto glamoregl libdrm udev libpciaccess randrproto renderproto libX11 xcbutil libxcb libXcursor libXdamage libXext xextproto xf86driproto libXfixes libXinerama xorgserver xproto libXrandr libXrender libXtst libXvMC ;} - diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 3b3ad79ffa41..17ac0a29554d 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -7565,8 +7565,6 @@ let mesa = mesa_noglu; udev = if stdenv.isLinux then udev else null; libdrm = if stdenv.isLinux then libdrm else null; - } // { - xf86videointel-testing = callPackage ../servers/x11/xorg/xf86-video-intel-testing.nix { }; }); xorgReplacements = callPackage ../servers/x11/xorg/replacements.nix { }; From 73b75f6157db79fc899154a497823e82e409e76d Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Mon, 3 Nov 2014 13:25:58 +0100 Subject: [PATCH 023/937] gcc: Fix bug causing Glibc miscompilation http://hydra.nixos.org/build/16564205 --- .../development/compilers/gcc/4.8/bug-61801.patch | 15 +++++++++++++++ pkgs/development/compilers/gcc/4.8/default.nix | 2 +- 2 files changed, 16 insertions(+), 1 deletion(-) create mode 100644 pkgs/development/compilers/gcc/4.8/bug-61801.patch diff --git a/pkgs/development/compilers/gcc/4.8/bug-61801.patch b/pkgs/development/compilers/gcc/4.8/bug-61801.patch new file mode 100644 index 000000000000..3d87e007813b --- /dev/null +++ b/pkgs/development/compilers/gcc/4.8/bug-61801.patch @@ -0,0 +1,15 @@ +https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61801 +https://gcc.gnu.org/viewcvs/gcc?view=revision&revision=212740 + +--- a/gcc/sched-deps.c 2014/07/17 07:48:49 212739 ++++ b/gcc/sched-deps.c 2014/07/17 07:49:44 212740 +@@ -2744,7 +2744,8 @@ + Consider for instance a volatile asm that changes the fpu rounding + mode. An insn should not be moved across this even if it only uses + pseudo-regs because it might give an incorrectly rounded result. */ +- if (code != ASM_OPERANDS || MEM_VOLATILE_P (x)) ++ if ((code != ASM_OPERANDS || MEM_VOLATILE_P (x)) ++ && !DEBUG_INSN_P (insn)) + reg_pending_barrier = TRUE_BARRIER; + + /* For all ASM_OPERANDS, we must traverse the vector of input operands. diff --git a/pkgs/development/compilers/gcc/4.8/default.nix b/pkgs/development/compilers/gcc/4.8/default.nix index 7166d325b31c..ac5056fbca5d 100644 --- a/pkgs/development/compilers/gcc/4.8/default.nix +++ b/pkgs/development/compilers/gcc/4.8/default.nix @@ -61,7 +61,7 @@ let version = "4.8.3"; enableParallelBuilding = true; - patches = [] + patches = [ ./bug-61801.patch ] ++ optional enableParallelBuilding ./parallel-bconfig.patch ++ optional (cross != null) ./libstdc++-target.patch ++ optional noSysDirs ./no-sys-dirs.patch From 103f5658a49e35dbac2fcec4a58937b9045836cb Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Mon, 3 Nov 2014 14:19:53 +0100 Subject: [PATCH 024/937] bash: Update to 4.3 --- pkgs/shells/bash/bash-4.2-patches.nix | 57 --------------------------- pkgs/shells/bash/bash-4.3-patches.nix | 34 ++++++++++++++++ pkgs/shells/bash/default.nix | 8 ++-- 3 files changed, 38 insertions(+), 61 deletions(-) delete mode 100644 pkgs/shells/bash/bash-4.2-patches.nix create mode 100644 pkgs/shells/bash/bash-4.3-patches.nix diff --git a/pkgs/shells/bash/bash-4.2-patches.nix b/pkgs/shells/bash/bash-4.2-patches.nix deleted file mode 100644 index 8ec6bf738352..000000000000 --- a/pkgs/shells/bash/bash-4.2-patches.nix +++ /dev/null @@ -1,57 +0,0 @@ -# Automatically generated by `update-patch-set.sh'; do not edit. - -patch: [ -(patch "001" "0yml2b6yarrr0dzv7h45lz4126i228hvqbqacqzg4jkcawla0v4d") -(patch "002" "1yffzfxryvqns513yv3r46slkysa3nbqv40442xfxb4rw4kwkfpy") -(patch "003" "1kdl9hcpf1m7gz0ja3mvin3syprl2kmbxc3wm27391wc04apq2js") -(patch "004" "1ha0453cjqdgkns2xkdgpd2izj5b6xlsc9a2w5b3sn6j63wb0d2f") -(patch "005" "182r2iyk27l28b8kyppfavvzxhax6vn5n1zyy3yirf0463klj5x8") -(patch "006" "1labcciavnfmn0alncz1x92ydrsriikcimw24rwzmnidbaa4h4f9") -(patch "007" "15byzdqvavc3zg2lbzzdwpdy43kzdnvmr89nya211pa3yjn2cn20") -(patch "008" "0dr4p83m2xpxhvd61yny0gdlasq6r9mpyiz220998y0alq8hs213") -(patch "009" "086b9jkyjgf2zhwln72d7s5x759iskgg3r4hdrw6b5y1ni059vg7") -(patch "010" "1p23m9kssdmpnjfp96bjmmshzf25cdzlyjygdw8j6sayqa159z5c") -(patch "011" "0chm4r6zv2kafq1g8xs7r0gixmw9h9r63rgd38rdgfvyk8ssx4d4") -(patch "012" "1f5pp64rv4mx3r34577pmb15pyxvhmdhmliccnwz20nssbqk6i1m") -(patch "013" "1sl5rxl3kz39xbnbaf0085jcx0l19l2yqjk0ja2wirmwrg3ca4il") -(patch "014" "0cwb5ilgx1gcbvnfk93pcpyhvq5wzasyvyllbxrk51c517k7i9mm") -(patch "015" "164afkc75534x1ad1h6qkl511k2cpirqs2kyx1jddwxx0j1nm1rd") -(patch "016" "19p20g7h7563m79vvy0adkpzlaxg192affzsm1rxm67wyyycr598") -(patch "017" "0zzfva20hxfrj5njd321pcjfydiv0kzcqryxfdh1sxlc95228mbk") -(patch "018" "0ka9pfnjmdak8lvmbryv2r1kkrlffnxbqjxq656la39pf9qlbag2") -(patch "019" "0mpb0whacppwcdx7pcnf0ah5vjvkw14ang6r2rh9fmkn401cvdx8") -(patch "020" "0vrwv9wpbr692kf427npmsxzvn007d9alk6jf99v7307s3q76is9") -(patch "021" "1p5s6apnnbmx4yf1kzndw7fiwvdxamkcgqiv937mwmr6w9xsk1x8") -(patch "022" "0sswp2c63pclvdwi2hbkwbqf9ysmiw6mmi0qinl2pkgqyyfzdkcx") -(patch "023" "1gzhcmwj0741libjqwln4r4h9k7lskprc4q87hvqgj56y6a17hax") -(patch "024" "1rlrdfk67g8as6pr076ldhjhnkd2c86mb4ci18fjivivsfyjdj4r") -(patch "025" "05am4w789v630x0a6a9wrxhvrjvs73fjn68i55qdand5sxpn9c0d") -(patch "026" "1li3sd3hpdxhh257hdwzzn2g18m4ksflx6crqswv9qxwmgx0rsg7") -(patch "027" "0hpdywvny6vihls2qqlwwxkvps7q710vp6szq117zhgwarr6n7qc") -(patch "028" "0ypdn590h5f8y7kvk2sk93vcjbh5vrcwsaasvprsm0ds77g2chi0") -(patch "029" "10gm73rvfhr42v7i70qqc56wl8l459i2frs6ifrcsnmw2w48rc6h") -(patch "030" "1bmg8iz95jijxp89czwaw9msppgj220233nbrn66s4qsb5k46n8j") -(patch "031" "1yfrz093hghhlrj8na48dzc8v6ax34mj5i0h6l3bnpvp6i6qrwsm") -(patch "032" "1vci8xh1r8f59j6d95iljw9i555jm1fm2lssm1ycprdivdivba73") -(patch "033" "0js38r5gmlyz70zjfw0m2j08h26c3vma2vy8gbsb5pwzss82glgm") -(patch "034" "1f213qpvqnv2bm79a01r44xjlwk65483cxvw6kgwx28k20rg7h81") -(patch "035" "1pvqxpm7m1y7ab5srq3s7r095z34nbcr62gz6nb89d1qn1iy9kff") -(patch "036" "1yma0m9wrk6a15x36libb8a0cz7gmzihv6lvmrrd5i1ar4dklagy") -(patch "037" "0x0niqv7zwqvz4l8n9nivhk0g0036jh5h3vlkil3095vsgfqqmy7") -(patch "038" "0mvdpsxxs4bn5zvsm04yfsplhcrv6y0avpwilj5yasr0vwdsijdq") -(patch "039" "148pkj5s73ym0jhpr8d3z5vfily4chm0am4yms4506ijc0531ygl") -(patch "040" "0v5a98ybibwsd4iyh18gy0kc51mx8qn9w2wfpjaiycn7yg5gjrdj") -(patch "041" "1szmm8xv41hvbzgxfwrj6dg85wa7zy3781nnil428rlzpm8ikk05") -(patch "042" "017kpdqy6v9sgi2a931wyzpix86n9mkalpm6n9cb45v58lgmraps") -(patch "043" "0mswgjk3z80qm1mb93jmbql27nbczxk86cw5byf0m29y1y2869nw") -(patch "044" "1rk6jywzfvg1crvhib1zk37rsps73minhr7l4vcb3vfdkin2vlqh") -(patch "045" "0vcqn9rb26bahhrarbwhpa0ny0nrf4vyrzh97d44lfcxypqfzdyx") -(patch "046" "0vc1ngkxkamwr022ww3vjp9ww9c647az4pjn175c1v60d0xk5hcm") -(patch "047" "0ymgimqz65sx2izg1dvm1h5cc01arl3j9j5137212l1ls00r55y1") -(patch "048" "091xk1ms7ycnczsl3fx461gjhj69j6ycnfijlymwj6mj60ims6km") -(patch "049" "03jipi8qz5baf1dyhld7yvazkkad7lz5czchrjsrnglzvm6df74h") -(patch "050" "19lb9nh0x5siwf21xkga3khy5pa3srfrlx97mby4cfz8am2bh68s") -(patch "051" "0705948wzi27zxphkh5vx4n62i671afyrb4qx276n49sq9xk859y") -(patch "052" "036wc4azli48ri7641fflxh6j95fnsma2167hbn80v7p91qzm67h") -(patch "053" "1pnkzx8bj8rz219wk8kxs8iga1k2wn13g1yvg3dci19qakbr7ri0") -] diff --git a/pkgs/shells/bash/bash-4.3-patches.nix b/pkgs/shells/bash/bash-4.3-patches.nix new file mode 100644 index 000000000000..cd1fb578e62b --- /dev/null +++ b/pkgs/shells/bash/bash-4.3-patches.nix @@ -0,0 +1,34 @@ +# Automatically generated by `update-patch-set.sh'; do not edit. + +patch: [ +(patch "001" "0hip2n2s5hws8p4nfcz37379zn6cak83ljsm64z52rw6ckrdzczc") +(patch "002" "0ashj5d1g3zbyr7zf0r72s5wnk96cz1xj919y3jajadbc9qcvrzf") +(patch "003" "0z88q4daq7dmw93iqd9c5i5d1sndklih3nrh0v75746da2n6w3h0") +(patch "004" "0f0kh9j5k4ym6knshscx31przm50x5cc7ifkwqk0swh6clna982y") +(patch "005" "1ym3b8b7lgmdp3dklp8qaqhyq965wd5392namq8mz7rb0d231j0s") +(patch "006" "04q20igq49py49ynb0f83f6f52cdkyqwd9bpic6akr0m5pkqwr50") +(patch "007" "18zkz23d9myshrwfcwcdjk7qmkqp8az5n91ni9jaixlwqlhy64qi") +(patch "008" "0pprcwvh7ngdli0x95pc1cpssg4qg7layi9xrv2jq6c7965ajhcr") +(patch "009" "19a0pf0alp30d1bjj0zf3zq2f5n0s6y91w7brm9jyswl51kns8n0") +(patch "010" "1dzhr5ammyijisz48cqi5vaw26hfr5vh9smnqxq4qc9p06f7j1ff") +(patch "011" "0fvzdzzi142a8rf3v965r6gbpn0k7fv2gif1yq8a4160vcn40qvw") +(patch "012" "04lcgfcyz7p3zagb4hkia3hkpd7lii9m8ycy9qqwzyrm1c1pj4ry") +(patch "013" "0y9cqi378z6flapkd5k5lfl4lq3ivzg4njj3i3wmw7xb6r9wma5z") +(patch "014" "04xcb0k9fxxq4vashgzb98567xzdnm4655nlm4jvfvjv6si6ykas") +(patch "015" "13ay6lldy1p00xj41nfjpq8lai3vw2qwca79gx6s80z04j53wa8k") +(patch "016" "0wq7bvx3pfw90pnfb86yg5nr9jgjsvm2nq5rrkqxf6zn977hpmlj") +(patch "017" "103p7sibihv6cshqj12k546zsbz0dnd5cv5vlx1719avddfc4rqj") +(patch "018" "0n1x3812y1brb9xbabaj3fvr4cpvm2225iwckmqk2fcpkq5b9a3s") +(patch "019" "08rd1p7zpzgbpmmmnj2im8wj2pcwmbbx51psr9vdc5c049si9ad7") +(patch "020" "163c6g05qpag2plx5q795pmw3f3m904jy7z93xj2i08pgzc8cpna") +(patch "021" "1a90cl3h10dh8k9f2ddrsjmw5ywaw2d5x78xb4fd2sryi039yhs1") +(patch "022" "120s0s4qcqd0q12j1iv0hkpf9fp3w5jnqw646kv66n66jnxlfkgx") +(patch "023" "1m00sfi88p2akgiyrg4hw0gvz3s1586pkzjdr3dm73vs773m1hls") +(patch "024" "0v0gjqzjsqjfgj5x17fq7g649k94jn8zq92qsxkhc2d6l215hl1v") +(patch "025" "0lcj96i659q35f1jcmwwbnw3p7w7vvlxjxqi989vn6d6qksqcl8y") +(patch "026" "0k919ir0inwn4wai2vdzpbwqq5h54fnrlkmgccxjg91v3ch15k1f") +(patch "027" "1gnsfvq6bhb3srlbh0cannj2hackdsipcg7z0ds7zlk1hp96mdqy") +(patch "028" "17a65c4fn4c5rgsiw9gqqnzhznh3gwnd2xzzv2dppyi48znxpc78") +(patch "029" "14k27p28r5l2fz3r03kd0x72vvsq8bja8c6hjz5kxikbzsbs7i2c") +(patch "030" "0nrqb0m7s89qsrbfaffpilc5gcf82bx9yvgzld4hr79p5y54yhw5") +] diff --git a/pkgs/shells/bash/default.nix b/pkgs/shells/bash/default.nix index ca12c26f256c..cc3108841b61 100644 --- a/pkgs/shells/bash/default.nix +++ b/pkgs/shells/bash/default.nix @@ -3,7 +3,7 @@ assert interactive -> readline != null; let - realName = "bash-4.2"; + realName = "bash-4.3"; baseConfigureFlags = if interactive then "--with-installed-readline" else "--disable-readline"; in @@ -12,7 +12,7 @@ stdenv.mkDerivation rec { src = fetchurl { url = "mirror://gnu/bash/${realName}.tar.gz"; - sha256 = "a27a1179ec9c0830c65c6aa5d7dab60f7ce1a2a608618570f96bfa72e95ab3d8"; + sha256 = "1m14s1f61mf6bijfibcjm9y6pkyvz6gibyl8p4hxq90fisi8gimg"; }; NIX_CFLAGS_COMPILE = '' @@ -30,11 +30,11 @@ stdenv.mkDerivation rec { (let patch = nr: sha256: fetchurl { - url = "mirror://gnu/bash/bash-4.2-patches/bash42-${nr}"; + url = "mirror://gnu/bash/bash-4.3-patches/bash43-${nr}"; inherit sha256; }; in - import ./bash-4.2-patches.nix patch); + import ./bash-4.3-patches.nix patch); crossAttrs = { configureFlags = baseConfigureFlags + From 3bd2cfa85373a94f88fd90d9b6b0953c9c3c63a9 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Mon, 3 Nov 2014 18:50:28 +0100 Subject: [PATCH 025/937] Update bootstrap tools with the fix for GCC bug 61801 --- pkgs/stdenv/linux/bootstrap/i686.nix | 8 ++++---- pkgs/stdenv/linux/bootstrap/x86_64.nix | 4 ++-- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/pkgs/stdenv/linux/bootstrap/i686.nix b/pkgs/stdenv/linux/bootstrap/i686.nix index 04712360d152..88bd984bab96 100644 --- a/pkgs/stdenv/linux/bootstrap/i686.nix +++ b/pkgs/stdenv/linux/bootstrap/i686.nix @@ -1,12 +1,12 @@ { busybox = import { - url = http://tarballs.nixos.org/stdenv-linux/i686/ac8e5cd145fa5f22bab1b01d8b4db4d26d22e65c/busybox; - sha256 = "0314dskcp6gp0jpy87phpjz1r13zh0grb40yvdl9s4l2rxzgzr2v"; + url = http://tarballs.nixos.org/stdenv-linux/i686/73b75f6157db79fc899154a497823e82e409e76d/busybox; + sha256 = "159208615405938d9830634f15d38adf5a9c33643926845c44499dbe6dd62042"; executable = true; }; bootstrapTools = import { - url = http://tarballs.nixos.org/stdenv-linux/i686/ac8e5cd145fa5f22bab1b01d8b4db4d26d22e65c/bootstrap-tools.tar.xz; - sha256 = "025r3vifkqlw0i5nvlkmfrvbn0v73r1pr6jkqckgs585y7nmsjhz"; + url = http://tarballs.nixos.org/stdenv-linux/i686/73b75f6157db79fc899154a497823e82e409e76d/bootstrap-tools.tar.xz; + sha256 = "68c430b84dbeac0bd1bea4cdd3159dce44a76445e07860caed1972b4608c42ca"; }; } diff --git a/pkgs/stdenv/linux/bootstrap/x86_64.nix b/pkgs/stdenv/linux/bootstrap/x86_64.nix index 2950e42ae0a5..96822f57e504 100644 --- a/pkgs/stdenv/linux/bootstrap/x86_64.nix +++ b/pkgs/stdenv/linux/bootstrap/x86_64.nix @@ -3,7 +3,7 @@ { bootstrapTools = import { - url = http://tarballs.nixos.org/stdenv-linux/x86_64/ac8e5cd145fa5f22bab1b01d8b4db4d26d22e65c/bootstrap-tools.tar.xz; - sha256 = "01485vvwxb7fsx8c8il5hip0bhh4xy2gg76sj4zc98gl4v1jbfq9"; + url = http://tarballs.nixos.org/stdenv-linux/x86_64/73b75f6157db79fc899154a497823e82e409e76d/bootstrap-tools.tar.xz; + sha256 = "e29d47a5dc9f1ff10c3fbaacbd03a3cca0c784299df09fcdd9e25797ec6414ad"; }; } From 78b01de68d6ecb65ed3b3220e96d290e116436aa Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Mon, 10 Nov 2014 13:35:09 +0100 Subject: [PATCH 026/937] substituteAll: Enumerate environment variables more reliably Getting the names of all environment variables is tricky. The previous implementation easily got confused by multi-line variables. The new one is more reliable but not still not perfect. This works around a segfault in Bash 4.3, where the expression "${!var}" (where var="-9") crashes under certain conditions. http://hydra.nixos.org/build/16693445 --- pkgs/stdenv/generic/setup.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/stdenv/generic/setup.sh b/pkgs/stdenv/generic/setup.sh index fe801c6bb971..987d7766ce89 100644 --- a/pkgs/stdenv/generic/setup.sh +++ b/pkgs/stdenv/generic/setup.sh @@ -386,7 +386,7 @@ substituteAll() { local output="$2" # Select all environment variables that start with a lowercase character. - for envVar in $(env | sed "s/^[^a-z].*//" | sed "s/^\([^=]*\)=.*/\1/"); do + for envVar in $(env | sed -e $'s/^\([a-z][^=]*\)=.*/\\1/; t \n d'); do if [ "$NIX_DEBUG" = "1" ]; then echo "$envVar -> ${!envVar}" fi From 1455ecee734d537766ee61515c77582a9ebd5309 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Mon, 10 Nov 2014 14:09:53 +0100 Subject: [PATCH 027/937] Ensure a correct value for $BASH Previously it was set to /run/current-system/sw/sbin/nologin or similar. --- pkgs/stdenv/generic/setup.sh | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/pkgs/stdenv/generic/setup.sh b/pkgs/stdenv/generic/setup.sh index 987d7766ce89..e9cb75bb6942 100644 --- a/pkgs/stdenv/generic/setup.sh +++ b/pkgs/stdenv/generic/setup.sh @@ -176,10 +176,11 @@ fi # Check that the pre-hook initialised SHELL. if [ -z "$SHELL" ]; then echo "SHELL not set"; exit 1; fi +BASH="$SHELL" +export CONFIG_SHELL="$SHELL" # Execute the pre-hook. -export CONFIG_SHELL="$SHELL" if [ -z "$shell" ]; then export shell=$SHELL; fi From 65221567c12eb20d1254f6bc1b573e126af43645 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Tue, 11 Nov 2014 10:23:26 +0100 Subject: [PATCH 028/937] glibc: Include a copy of libgcc_s.so.1 This prevents failures like "libgcc_s.so.1 must be installed for pthread_cancel to work" that occur because Glibc assumes libgcc_s.so.1 to be in Glibc's libdir. This solution is pretty hacky, because the libgcc_s.so.1 from bootstrap-tools might be too old. So if we update GCC, programs might end up using an outdated libgcc_s.so.1. Ideally, we would build libgcc_s.so.1 *before* Glibc, which might not be impossible... Fixes #3548. --- pkgs/development/libraries/glibc/builder.sh | 4 ---- pkgs/development/libraries/glibc/default.nix | 2 +- pkgs/tools/filesystems/squashfs/default.nix | 2 -- 3 files changed, 1 insertion(+), 7 deletions(-) diff --git a/pkgs/development/libraries/glibc/builder.sh b/pkgs/development/libraries/glibc/builder.sh index 3b077cbb3fd5..2836063e3bf4 100644 --- a/pkgs/development/libraries/glibc/builder.sh +++ b/pkgs/development/libraries/glibc/builder.sh @@ -46,10 +46,6 @@ postInstall() { 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 - # Get rid of more unnecessary stuff. rm -rf $out/var $out/sbin/sln } diff --git a/pkgs/development/libraries/glibc/default.nix b/pkgs/development/libraries/glibc/default.nix index 52a94bd0a0d5..1abba35af088 100644 --- a/pkgs/development/libraries/glibc/default.nix +++ b/pkgs/development/libraries/glibc/default.nix @@ -35,7 +35,7 @@ in preInstall = '' if [ -f ${stdenv.gcc.gcc}/lib/libgcc_s.so.1 ]; then mkdir -p $out/lib - ln -s ${stdenv.gcc.gcc}/lib/libgcc_s.so.1 $out/lib/libgcc_s.so.1 + cp ${stdenv.gcc.gcc}/lib/libgcc_s.so.1 $out/lib/libgcc_s.so.1 fi ''; diff --git a/pkgs/tools/filesystems/squashfs/default.nix b/pkgs/tools/filesystems/squashfs/default.nix index a016627b7a47..5e1700af0178 100644 --- a/pkgs/tools/filesystems/squashfs/default.nix +++ b/pkgs/tools/filesystems/squashfs/default.nix @@ -12,8 +12,6 @@ stdenv.mkDerivation rec { buildInputs = [ zlib xz ]; preBuild = "cd squashfs-tools"; - - NIX_LDFLAGS = "-lgcc_s"; # for pthread_cancel installFlags = "INSTALL_DIR=\${out}/bin"; From 975a822778896c086438e22532fe58652c019499 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Tue, 11 Nov 2014 11:04:10 +0100 Subject: [PATCH 029/937] glibc: improve nscd version check after e316672dcb --- pkgs/development/libraries/glibc/common.nix | 7 +++++-- .../libraries/glibc/glibc-remove-datetime-from-nscd.patch | 2 +- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/pkgs/development/libraries/glibc/common.nix b/pkgs/development/libraries/glibc/common.nix index 2559dea26539..da1d4f08fa2f 100644 --- a/pkgs/development/libraries/glibc/common.nix +++ b/pkgs/development/libraries/glibc/common.nix @@ -69,8 +69,11 @@ stdenv.mkDerivation ({ + '' echo "LDFLAGS-nscd += -static-libgcc" >> nscd/Makefile '' - # Replace the date and time in nscd by $out. - # It is used as a protocol compatibility check. + # Replace the date and time in nscd by a prefix of $out. + # It is used as a protocol compatibility check. + # Note: the size of the struct changes, but using only a part + # would break hash-rewriting. When receiving stats it does check + # that the struct sizes match and can't cause overflow or something. + '' cat ${./glibc-remove-datetime-from-nscd.patch} \ | sed "s,@out@,$out," | patch -p1 diff --git a/pkgs/development/libraries/glibc/glibc-remove-datetime-from-nscd.patch b/pkgs/development/libraries/glibc/glibc-remove-datetime-from-nscd.patch index 0a5456ea5c42..db010e62366b 100644 --- a/pkgs/development/libraries/glibc/glibc-remove-datetime-from-nscd.patch +++ b/pkgs/development/libraries/glibc/glibc-remove-datetime-from-nscd.patch @@ -5,7 +5,7 @@ /* We use this to make sure the receiver is the same. */ -static const char compilation[21] = __DATE__ " " __TIME__; -+static const char compilation[21] = "@out@"; ++static const char compilation[] = "@out@"; /* Statistic data for one database. */ struct dbstat From cef0bcefc6544513fec9dec49686932ef15f1734 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Sat, 15 Nov 2014 21:47:05 +0100 Subject: [PATCH 030/937] linux-headers: Update to 3.12.32 We can do this because bootstrap-tools contains an unxz program now (via busybox). --- pkgs/os-specific/linux/kernel-headers/3.12.nix | 6 +++--- pkgs/stdenv/linux/scripts/unpack-bootstrap-tools.sh | 7 ++++++- 2 files changed, 9 insertions(+), 4 deletions(-) diff --git a/pkgs/os-specific/linux/kernel-headers/3.12.nix b/pkgs/os-specific/linux/kernel-headers/3.12.nix index 9bf189c40eda..2fd34c68edc6 100644 --- a/pkgs/os-specific/linux/kernel-headers/3.12.nix +++ b/pkgs/os-specific/linux/kernel-headers/3.12.nix @@ -4,7 +4,7 @@ assert cross == null -> stdenv.isLinux; let - version = "3.12.6"; + version = "3.12.32"; kernelHeadersBaseConfig = if cross == null @@ -17,8 +17,8 @@ stdenv.mkDerivation { name = "linux-headers-${version}"; src = fetchurl { - url = "mirror://kernel/linux/kernel/v3.x/linux-${version}.tar.bz2"; - sha256 = "1qh6f1az0flfrbkdjx1i9r7yf31ad0gxigax91nd33z2jmd6h4df"; + url = "mirror://kernel/linux/kernel/v3.x/linux-${version}.tar.xz"; + sha256 = "1hzws2bf267hfk81ywqcxspkyi1lg56x63izdc0pv1338xcfas53"; }; targetConfig = if cross != null then cross.config else null; diff --git a/pkgs/stdenv/linux/scripts/unpack-bootstrap-tools.sh b/pkgs/stdenv/linux/scripts/unpack-bootstrap-tools.sh index 9db5d2c88e5d..52953c9b88da 100644 --- a/pkgs/stdenv/linux/scripts/unpack-bootstrap-tools.sh +++ b/pkgs/stdenv/linux/scripts/unpack-bootstrap-tools.sh @@ -55,4 +55,9 @@ echo "#! $out/bin/sh" > $out/bin/egrep echo "exec $out/bin/grep -E \"\$@\"" >> $out/bin/egrep echo "#! $out/bin/sh" > $out/bin/fgrep echo "exec $out/bin/grep -F \"\$@\"" >> $out/bin/fgrep -chmod +x $out/bin/egrep $out/bin/fgrep + +# Provide xz (actually only xz -d will work). +echo "#! $out/bin/sh" > $out/bin/xz +echo "exec $builder unxz \"\$@\"" >> $out/bin/xz + +chmod +x $out/bin/egrep $out/bin/fgrep $out/bin/xz From 581721887dc56ea5f3cf61b2005f1b2a0540eef7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Mon, 17 Nov 2014 11:23:21 +0100 Subject: [PATCH 031/937] gnutls-3.2: maintenance+security update CVE-2014-8564 seems only DOS, so relatively non-critical. --- pkgs/development/libraries/gnutls/3.2.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/gnutls/3.2.nix b/pkgs/development/libraries/gnutls/3.2.nix index 5bf933fbc961..e9254a445de4 100644 --- a/pkgs/development/libraries/gnutls/3.2.nix +++ b/pkgs/development/libraries/gnutls/3.2.nix @@ -4,11 +4,11 @@ assert guileBindings -> guile != null; stdenv.mkDerivation rec { - name = "gnutls-3.2.17"; + name = "gnutls-3.2.20"; src = fetchurl { url = "ftp://ftp.gnutls.org/gcrypt/gnutls/v3.2/${name}.tar.lz"; - sha256 = "a332adda1d294fbee859ae46ee0c128d8959c4a5b9c28e7cdbe5c9b56898fc25"; + sha256 = "0mjwzj486g0aj5i3zr70mixmbd4ldrj1ckrwmcr90si6bqa0sc6q"; }; patches = From 8e44ae5bd4489c1c8342b43687e7026b2e521b21 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Fri, 14 Nov 2014 11:38:33 +0100 Subject: [PATCH 032/937] stdenv lib64-moving: fail instead of overwriting Silent overwriting is dangerous and it bit us straightaway on gcc_multi. https://github.com/NixOS/nixpkgs/commit/51f1b4ec48d5 --- pkgs/build-support/setup-hooks/move-lib64.sh | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/pkgs/build-support/setup-hooks/move-lib64.sh b/pkgs/build-support/setup-hooks/move-lib64.sh index 46c90fcea6bd..7724be369c9c 100644 --- a/pkgs/build-support/setup-hooks/move-lib64.sh +++ b/pkgs/build-support/setup-hooks/move-lib64.sh @@ -3,6 +3,7 @@ # $output/lib. The rationale is that lib64 directories are unnecessary # in Nix (since 32-bit and 64-bit builds of a package are in different # store paths anyway). +# If the move would overwrite anything, it should fail on rmdir. fixupOutputHooks+=(_moveLib64) @@ -13,7 +14,7 @@ _moveLib64() { mkdir -p $prefix/lib shopt -s dotglob for i in $prefix/lib64/*; do - mv "$i" $prefix/lib + mv --no-clobber "$i" $prefix/lib done shopt -u dotglob rmdir $prefix/lib64 From 074af2ac1ca15caa3d1bbb4a65676290661f545d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Mon, 17 Nov 2014 11:28:31 +0100 Subject: [PATCH 033/937] gnutls-3.1: remove unused version The upstream doesn't maintain these well, as they even fail to build now. --- pkgs/development/libraries/gnutls/3.1.nix | 67 ----------------------- pkgs/top-level/all-packages.nix | 4 -- 2 files changed, 71 deletions(-) delete mode 100644 pkgs/development/libraries/gnutls/3.1.nix diff --git a/pkgs/development/libraries/gnutls/3.1.nix b/pkgs/development/libraries/gnutls/3.1.nix deleted file mode 100644 index 44ea0176e38c..000000000000 --- a/pkgs/development/libraries/gnutls/3.1.nix +++ /dev/null @@ -1,67 +0,0 @@ -{ fetchurl, stdenv, zlib, lzo, libtasn1, nettle, pkgconfig, lzip -, guileBindings, guile, perl, gmp }: - -assert guileBindings -> guile != null; - -stdenv.mkDerivation rec { - name = "gnutls-3.1.26"; - - src = fetchurl { - url = "ftp://ftp.gnutls.org/gcrypt/gnutls/v3.1/${name}.tar.lz"; - sha256 = "7947e18fd0c292c0274d810c9bdf674b8faa3566e056ea404a39f335982607a3"; - }; - - # FreeBSD doesn't have , and Gnulib's `alloca' module isn't used. - patches = stdenv.lib.optional stdenv.isFreeBSD ./guile-gnulib-includes.patch; - - # Note: GMP is a dependency of Nettle, whose public headers include - # GMP headers, hence the hack. - configurePhase = '' - ./configure --prefix="$out" \ - --disable-dependency-tracking --enable-fast-install \ - --without-p11-kit \ - --with-lzo --with-libtasn1-prefix="${libtasn1}" \ - --with-libnettle-prefix="${nettle}" \ - CPPFLAGS="-I${gmp}/include" \ - ${stdenv.lib.optionalString guileBindings - "--enable-guile --with-guile-site-dir=\"$out/share/guile/site\""} - ''; - - # Build of the Guile bindings is not parallel-safe. See - # - # for the actual fix. - enableParallelBuilding = !guileBindings; - - buildInputs = [ zlib lzo lzip ] - ++ stdenv.lib.optional guileBindings guile; - - nativeBuildInputs = [ perl pkgconfig ]; - - propagatedBuildInputs = [ nettle libtasn1 ]; - - # XXX: Gnulib's `test-select' fails on FreeBSD: - # http://hydra.nixos.org/build/2962084/nixlog/1/raw . - doCheck = false;#(!stdenv.isFreeBSD && !stdenv.isDarwin); - - meta = { - description = "The GNU Transport Layer Security Library"; - - longDescription = '' - GnuTLS is a project that aims to develop a library which - provides a secure layer, over a reliable transport - layer. Currently the GnuTLS library implements the proposed - standards by the IETF's TLS working group. - - Quoting from the TLS protocol specification: - - "The TLS protocol provides communications privacy over the - Internet. The protocol allows client/server applications to - communicate in a way that is designed to prevent eavesdropping, - tampering, or message forgery." - ''; - - homepage = http://www.gnu.org/software/gnutls/; - license = stdenv.lib.licenses.lgpl21Plus; - maintainers = [ stdenv.lib.maintainers.eelco ]; - }; -} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 10736fabf0b6..03697edf5790 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -5318,10 +5318,6 @@ let gnutls = gnutls32; - gnutls31 = callPackage ../development/libraries/gnutls/3.1.nix { - guileBindings = config.gnutls.guile or false; - }; - gnutls32 = callPackage ../development/libraries/gnutls/3.2.nix { guileBindings = config.gnutls.guile or false; }; From eaf74a6b7749252da79b03e72160d0cd0ae02d8c Mon Sep 17 00:00:00 2001 From: Chris Double Date: Tue, 18 Nov 2014 00:57:44 +1300 Subject: [PATCH 034/937] Update aliceml to use git version of Alice ML This allows 64 bit builds of Alice ML and removes the need for old versions of gcc to build. The license is changed to 'mit' from the 'bsd' that it was previously as the COPYING files in the alice and seam repositories appear to be the modern style MIT variant (also known as the ICU variant). Added myself as the maintainer. --- pkgs/development/compilers/aliceml/builder.sh | 71 ---------------- .../development/compilers/aliceml/default.nix | 85 +++++++------------ pkgs/development/compilers/aliceml/make.patch | 20 +++++ pkgs/development/compilers/aliceml/seam.patch | 13 +++ 4 files changed, 66 insertions(+), 123 deletions(-) delete mode 100644 pkgs/development/compilers/aliceml/builder.sh create mode 100644 pkgs/development/compilers/aliceml/make.patch create mode 100644 pkgs/development/compilers/aliceml/seam.patch diff --git a/pkgs/development/compilers/aliceml/builder.sh b/pkgs/development/compilers/aliceml/builder.sh deleted file mode 100644 index e1f5d1b2bed7..000000000000 --- a/pkgs/development/compilers/aliceml/builder.sh +++ /dev/null @@ -1,71 +0,0 @@ -source $stdenv/setup - -export CXXFLAGS="-m32" - -tar zxvf "$gecodeSrc" -cd gecode-1.3.1 -./configure --prefix="$out" --disable-minimodel --disable-examples -make -make install -cd .. - -PKG_CONFIG_PATH=$PKG_CONFIG_PATH:"$out"/lib/pkgconfig - -tar zxvf "$seamSrc" -cd seam-1.4 -./configure --prefix="$out" --with-zlib=$zlib -make -make install -cd .. - -PATH=$PATH:"$out"/bin - -tar zxvf "$aliceSrc" -cd alice-1.4 -sed -i -e 's/bin\/bash/usr\/bin\/env bash/g' bin/alicerun.in -sed -i -e 's/bin\/bash/usr\/bin\/env bash/g' bin/aliceremote -./configure --prefix="$out" --with-gmp=$gmp -make -make install -cd .. - -tar zxvf "$aliceGecodeSrc" -cd alice-gecode-1.4 -make compiledll MUST_GENERATE=no -make installdll MUST_GENERATE=no -cd .. - -tar zxvf "$aliceRegexSrc" -cd alice-regex-1.4 -make compiledll MUST_GENERATE=no -make installdll MUST_GENERATE=no -cd .. - -tar zxvf "$aliceSqliteSrc" -cd alice-sqlite-1.4 -make compiledll MUST_GENERATE=no -make installdll MUST_GENERATE=no -cd .. - -tar zxvf "$aliceXmlSrc" -cd alice-xml-1.4 -make compiledll MUST_GENERATE=no -make installdll MUST_GENERATE=no -cd .. - -tar zxvf "$aliceGtkSrc" -cd alice-gtk-1.4 -sed -i -e 's/PRIVATE_GTK_LEAVE_PENDING/PRIVATE_GTK_HAS_POINTER/g' NativeGtk.cc -sed -i -e 's/bin\/bash/usr\/bin\/env bash/g' myinstall -make compiledll MUST_GENERATE=no -make installdll MUST_GENERATE=no -cd .. - -tar zxvf "$aliceRuntimeSrc" -cd alice-runtime-1.4 -./configure --prefix="$out" -make -make install -cd .. - - diff --git a/pkgs/development/compilers/aliceml/default.nix b/pkgs/development/compilers/aliceml/default.nix index 29e95863921c..5059cdf21587 100644 --- a/pkgs/development/compilers/aliceml/default.nix +++ b/pkgs/development/compilers/aliceml/default.nix @@ -1,46 +1,13 @@ -{stdenv, fetchurl, pkgsi686Linux, libtool, gnumake381, autoconf, automake111x, file, which, zsh, m4, pkgconfig, perl}: +{stdenv, gcc, glibc, fetchurl, fetchgit, libtool, autoconf, automake, file, gnumake, which, zsh, m4, pkgconfig, perl, gnome, pango, sqlite, libxml2, zlib, gmp, smlnj }: stdenv.mkDerivation { - name = "aliceml-1.4"; + name = "aliceml-1.4-493cd356"; - aliceSrc = fetchurl { - url = http://www.ps.uni-saarland.de/alice/download/sources/alice-1.4.tar.gz; - sha256 = "1ay8r26g7xm9zlrlpigp6y1zmrl93hzkndb5phx7651wx8j2183r"; - }; - - aliceGecodeSrc = fetchurl { - url = http://www.ps.uni-saarland.de/alice/download/sources/alice-gecode-1.4.tar.gz; - sha256 = "0yklpsqnm3wwzfz4vvv69dmm7q7pzpl3z7iw7wg33klng85cidl6"; - }; - - aliceGtkSrc = fetchurl { - url = http://www.ps.uni-saarland.de/alice/download/sources/alice-gtk-1.4.tar.gz; - sha256 = "0zx4ks0pk5wgbcsflcmn0kbpa9j7pjbsc19d1s3jgp4rwb24m1an"; - }; - - aliceRegexSrc = fetchurl { - url = http://www.ps.uni-saarland.de/alice/download/sources/alice-regex-1.4.tar.gz; - sha256 = "0myjzh3295awamghs4c88ypaa41m8sxh5jys876yq6flslw41s02"; - }; - - aliceRuntimeSrc = fetchurl { - url = http://www.ps.uni-saarland.de/alice/download/sources/alice-runtime-1.4.tar.gz; - sha256 = "1cbca71vh16l2h0zjvhgzzs0rzq99nc8nx9a97yzw595355nq57f"; - }; - - aliceSqliteSrc = fetchurl { - url = http://www.ps.uni-saarland.de/alice/download/sources/alice-sqlite-1.4.tar.gz; - sha256 = "0554xbx8zgqmpb7x06d7xvhlbk7bxmc237khgjs6yjcy53yf366b"; - }; - - aliceXmlSrc = fetchurl { - url = http://www.ps.uni-saarland.de/alice/download/sources/alice-xml-1.4.tar.gz; - sha256 = "058a815a0vajjvjlsmd4ryx2bc71q6zwvyjg2c0v1gba2v3pddm0"; - }; - - seamSrc = fetchurl { - url = http://www.ps.uni-saarland.de/alice/download/sources/seam-1.4.tar.gz; - sha256 = "1iz98jdv914whaw426d5406shlqgxqwpy3fbyb472x7d3lfra2dz"; + src = fetchgit { + url = "https://github.com/aliceml/aliceml"; + rev = "493cd3565f0bc3b35790185ec358fb91b7b43037"; + sha256 = "12fbaf0a474e53f40a71f16bf61c52b7ffe044f4d0993e208e69552df3054d45"; + fetchSubmodules = true; }; gecodeSrc = fetchurl { @@ -48,19 +15,32 @@ stdenv.mkDerivation { sha256 = "0mgc6llbq166jmlq3alvagqsg3730670zvbwwkdgsqklw70v9355"; }; - zlib = pkgsi686Linux.zlib; - gmp = pkgsi686Linux.gmp; - - buildInputs = [ - stdenv pkgsi686Linux.gcc34 pkgsi686Linux.glibc - libtool gnumake381 autoconf automake111x pkgsi686Linux.zlib - file which zsh pkgsi686Linux.gmp m4 pkgsi686Linux.gnome.gtk - pkgsi686Linux.gnome.libgnomecanvas pkgsi686Linux.pango pkgsi686Linux.sqlite - pkgsi686Linux.libxml2 pkgsi686Linux.lightning pkgconfig perl + stdenv gcc glibc + libtool gnumake autoconf automake + file which zsh m4 gnome.gtk zlib gmp + gnome.libgnomecanvas pango sqlite + libxml2 pkgconfig perl smlnj ]; - - builder = ./builder.sh; + + makePatch = ./make.patch; + seamPatch = ./seam.patch; + + phases = [ "unpackPhase" "patchPhase" "configurePhase" "buildPhase" ]; + + patchPhase = '' + sed -i -e "s@wget ..GECODE_URL. -O - | tar xz@tar xf $gecodeSrc@" make/Makefile + patch -p1 <$makePatch + patch -p1 <$seamPatch + ''; + + configurePhase = '' + make -C make setup PREFIX="$out" + ''; + + buildPhase = '' + gmp="${gmp}" zlib="${zlib}" PATH=$PATH:`pwd`/seam-support/install/bin make -C make all PREFIX="$out" + ''; meta = { description = "Functional programming language based on Standard ML"; @@ -70,6 +50,7 @@ stdenv.mkDerivation { programming. ''; homepage = http://www.ps.uni-saarland.de/alice/; - license = "BSD"; + license = stdenv.lib.licenses.mit; + maintainers = [ stdenv.lib.maintainers.doublec ]; }; } diff --git a/pkgs/development/compilers/aliceml/make.patch b/pkgs/development/compilers/aliceml/make.patch new file mode 100644 index 000000000000..78e2b28974e8 --- /dev/null +++ b/pkgs/development/compilers/aliceml/make.patch @@ -0,0 +1,20 @@ +diff --git a/Makefile b/Makefile +index 6a55b06..84a6000 100644 +--- a/make/Makefile ++++ b/make/Makefile +@@ -387,6 +387,7 @@ configure-seam-linux64: + ../sources/configure \ + --prefix='$(PREFIX)' \ + --with-warnings=yes \ ++ --with-zlib='$(zlib)' \ + --disable-lightning) + + .PHONY: configure-seam-darwin64 +@@ -434,6 +435,7 @@ configure-alice-ll-linux: + (cd $(PWD)/alice/build && \ + ../sources/vm-seam/configure \ + --prefix='$(PREFIX)' \ ++ --with-gmp='$(gmp)' \ + --with-warnings=yes) + + .PHONY: rebuild-alice-ll diff --git a/pkgs/development/compilers/aliceml/seam.patch b/pkgs/development/compilers/aliceml/seam.patch new file mode 100644 index 000000000000..d489037fef4a --- /dev/null +++ b/pkgs/development/compilers/aliceml/seam.patch @@ -0,0 +1,13 @@ +diff --git a/Makefile.cvs b/Makefile.cvs +index b59434a..cd1316f 100644 +--- a/seam/sources/Makefile.cvs ++++ b/seam/sources/Makefile.cvs +@@ -32,7 +32,7 @@ autotools: + aclocal -I . + autoconf + automake --add-missing +- cd libltdl; aclocal; autoconf; automake --add-missing ++ cd libltdl; chmod +w *; aclocal; autoconf; automake --add-missing + + lightning: + rm -rf lightning From 847b7fe6976d95a08c76b4ef1e52bb4e329438c2 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Mon, 17 Nov 2014 15:21:29 +0100 Subject: [PATCH 035/937] perl: Fix evaluation on Darwin --- pkgs/development/interpreters/perl/5.20/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/development/interpreters/perl/5.20/default.nix b/pkgs/development/interpreters/perl/5.20/default.nix index 66a9ca597a40..bfd2c26bf70a 100644 --- a/pkgs/development/interpreters/perl/5.20/default.nix +++ b/pkgs/development/interpreters/perl/5.20/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchurl, enableThreading ? true }: +{ stdenv, fetchurl, enableThreading ? stdenv ? glibc }: # We can only compile perl with threading on platforms where we have a # real glibc in the stdenv. From 9f914a3f82e7b3400210006d79a9d7603ba0488c Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Tue, 18 Nov 2014 10:42:23 +0100 Subject: [PATCH 036/937] perl-5.14: Remove It's EOL and unmaintained. There was only one package using it which I've marked as broken. --- pkgs/applications/misc/slic3r/default.nix | 1 + .../interpreters/perl/5.14/default.nix | 64 -------- .../interpreters/perl/5.14/ld-shared.patch | 11 -- .../interpreters/perl/5.14/no-libutil.patch | 12 -- .../interpreters/perl/5.14/no-sys-dirs.patch | 152 ------------------ .../interpreters/perl/5.14/setup-hook.sh | 5 - pkgs/top-level/all-packages.nix | 16 +- 7 files changed, 2 insertions(+), 259 deletions(-) delete mode 100644 pkgs/development/interpreters/perl/5.14/default.nix delete mode 100644 pkgs/development/interpreters/perl/5.14/ld-shared.patch delete mode 100644 pkgs/development/interpreters/perl/5.14/no-libutil.patch delete mode 100644 pkgs/development/interpreters/perl/5.14/no-sys-dirs.patch delete mode 100644 pkgs/development/interpreters/perl/5.14/setup-hook.sh diff --git a/pkgs/applications/misc/slic3r/default.nix b/pkgs/applications/misc/slic3r/default.nix index a057197a92de..727bb0486053 100644 --- a/pkgs/applications/misc/slic3r/default.nix +++ b/pkgs/applications/misc/slic3r/default.nix @@ -69,5 +69,6 @@ stdenv.mkDerivation rec { license = licenses.agpl3; platforms = platforms.linux; maintainers = with maintainers; [ bjornfor the-kenny ]; + broken = true; # requires Perl 5.14 }; } diff --git a/pkgs/development/interpreters/perl/5.14/default.nix b/pkgs/development/interpreters/perl/5.14/default.nix deleted file mode 100644 index dd4e7acf71f3..000000000000 --- a/pkgs/development/interpreters/perl/5.14/default.nix +++ /dev/null @@ -1,64 +0,0 @@ -{ stdenv, fetchurl }: - -let - - libc = if stdenv ? gcc && stdenv.gcc.libc != null then stdenv.gcc.libc else "/usr"; - -in - -stdenv.mkDerivation rec { - name = "perl-5.14.4"; - - src = fetchurl { - url = "mirror://cpan/src/${name}.tar.gz"; - sha256 = "1js47zzna3v38fjnirf2vq6y0rjp8m86ysj5vagzgkig956d8gw0"; - }; - - patches = - [ # Do not look in /usr etc. for dependencies. - ./no-sys-dirs.patch - ] - ++ stdenv.lib.optional stdenv.isSunOS ./ld-shared.patch - ++ stdenv.lib.optional stdenv.isDarwin ./no-libutil.patch; - - # Build a thread-safe Perl with a dynamic libperls.o. We need the - # "installstyle" option to ensure that modules are put under - # $out/lib/perl5 - this is the general default, but because $out - # contains the string "perl", Configure would select $out/lib. - # Miniperl needs -lm. perl needs -lrt. - configureFlags = - [ "-de" - "-Dcc=gcc" - "-Uinstallusrbinperl" - "-Dinstallstyle=lib/perl5" - "-Duseshrplib" - "-Dlocincpth=${libc}/include" - "-Dloclibpth=${libc}/lib" - ] - ++ stdenv.lib.optional (stdenv ? glibc) "-Dusethreads"; - - configureScript = "${stdenv.shell} ./Configure"; - - dontAddPrefix = true; - - enableParallelBuilding = true; - - preConfigure = - '' - configureFlags="$configureFlags -Dprefix=$out -Dman1dir=$out/share/man/man1 -Dman3dir=$out/share/man/man3" - - ${stdenv.lib.optionalString stdenv.isArm '' - configureFlagsArray=(-Dldflags="-lm -lrt") - ''} - ''; - - preBuild = stdenv.lib.optionalString (!(stdenv ? gcc && stdenv.gcc.nativeTools)) - '' - # Make Cwd work on NixOS (where we don't have a /bin/pwd). - substituteInPlace dist/Cwd/Cwd.pm --replace "'/bin/pwd'" "'$(type -tP pwd)'" - ''; - - setupHook = ./setup-hook.sh; - - passthru.libPrefix = "lib/perl5/site_perl"; -} diff --git a/pkgs/development/interpreters/perl/5.14/ld-shared.patch b/pkgs/development/interpreters/perl/5.14/ld-shared.patch deleted file mode 100644 index b1834ff7a1f2..000000000000 --- a/pkgs/development/interpreters/perl/5.14/ld-shared.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- perl-5.14.2/hints/solaris_2.sh.orig 2013-02-14 19:29:49.453988140 +0000 -+++ perl-5.14.2/hints/solaris_2.sh 2013-02-14 19:30:31.681631019 +0000 -@@ -568,7 +568,7 @@ - # ccflags="$ccflags -Wa,`getconf XBS5_LP64_OFF64_CFLAGS 2>/dev/null`" - # fi - ldflags="$ldflags -m64" -- lddlflags="$lddlflags -G -m64" -+ lddlflags="$lddlflags -shared -m64" - ;; - *) - getconfccflags="`getconf XBS5_LP64_OFF64_CFLAGS 2>/dev/null`" diff --git a/pkgs/development/interpreters/perl/5.14/no-libutil.patch b/pkgs/development/interpreters/perl/5.14/no-libutil.patch deleted file mode 100644 index 9b749bccf32c..000000000000 --- a/pkgs/development/interpreters/perl/5.14/no-libutil.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -ru -x '*~' perl-5.14.2-orig/Configure perl-5.14.2/Configure ---- perl-5.14.2-orig/Configure 2011-09-26 11:44:34.000000000 +0200 -+++ perl-5.14.2/Configure 2012-02-16 17:24:50.779839039 +0100 -@@ -1368,7 +1368,7 @@ - : List of libraries we want. - : If anyone needs extra -lxxx, put those in a hint file. - libswanted="sfio socket bind inet nsl nm ndbm gdbm dbm db malloc dl dld ld sun" --libswanted="$libswanted m crypt sec util c cposix posix ucb bsd BSD" -+libswanted="$libswanted m crypt sec c cposix posix ucb bsd BSD" - : We probably want to search /usr/shlib before most other libraries. - : This is only used by the lib/ExtUtils/MakeMaker.pm routine extliblist. - glibpth=`echo " $glibpth " | sed -e 's! /usr/shlib ! !'` diff --git a/pkgs/development/interpreters/perl/5.14/no-sys-dirs.patch b/pkgs/development/interpreters/perl/5.14/no-sys-dirs.patch deleted file mode 100644 index 54ffb28e2065..000000000000 --- a/pkgs/development/interpreters/perl/5.14/no-sys-dirs.patch +++ /dev/null @@ -1,152 +0,0 @@ -diff -ru -x '*~' perl-5.14.2-orig/Configure perl-5.14.2/Configure ---- perl-5.14.2-orig/Configure 2011-09-26 11:44:34.000000000 +0200 -+++ perl-5.14.2/Configure 2012-01-20 17:05:23.089223129 +0100 -@@ -106,15 +106,7 @@ - fi - - : Proper PATH setting --paths='/bin /usr/bin /usr/local/bin /usr/ucb /usr/local /usr/lbin' --paths="$paths /opt/bin /opt/local/bin /opt/local /opt/lbin" --paths="$paths /usr/5bin /etc /usr/gnu/bin /usr/new /usr/new/bin /usr/nbin" --paths="$paths /opt/gnu/bin /opt/new /opt/new/bin /opt/nbin" --paths="$paths /sys5.3/bin /sys5.3/usr/bin /bsd4.3/bin /bsd4.3/usr/ucb" --paths="$paths /bsd4.3/usr/bin /usr/bsd /bsd43/bin /opt/ansic/bin /usr/ccs/bin" --paths="$paths /etc /usr/lib /usr/ucblib /lib /usr/ccs/lib" --paths="$paths /sbin /usr/sbin /usr/libexec" --paths="$paths /system/gnu_library/bin" -+paths='' - - for p in $paths - do -@@ -1311,8 +1303,7 @@ - archname='' - : Possible local include directories to search. - : Set locincpth to "" in a hint file to defeat local include searches. --locincpth="/usr/local/include /opt/local/include /usr/gnu/include" --locincpth="$locincpth /opt/gnu/include /usr/GNU/include /opt/GNU/include" -+locincpth="" - : - : no include file wanted by default - inclwanted='' -@@ -1328,17 +1319,12 @@ - archobjs='' - libnames='' - : change the next line if compiling for Xenix/286 on Xenix/386 --xlibpth='/usr/lib/386 /lib/386' -+xlibpth='' - : Possible local library directories to search. --loclibpth="/usr/local/lib /opt/local/lib /usr/gnu/lib" --loclibpth="$loclibpth /opt/gnu/lib /usr/GNU/lib /opt/GNU/lib" -+loclibpth="" - - : general looking path for locating libraries --glibpth="/lib /usr/lib $xlibpth" --glibpth="$glibpth /usr/ccs/lib /usr/ucblib /usr/local/lib" --test -f /usr/shlib/libc.so && glibpth="/usr/shlib $glibpth" --test -f /shlib/libc.so && glibpth="/shlib $glibpth" --test -d /usr/lib64 && glibpth="$glibpth /lib64 /usr/lib64 /usr/local/lib64" -+glibpth="" - - : Private path used by Configure to find libraries. Its value - : is prepended to libpth. This variable takes care of special -@@ -1371,8 +1357,6 @@ - libswanted="$libswanted m crypt sec util c cposix posix ucb bsd BSD" - : We probably want to search /usr/shlib before most other libraries. - : This is only used by the lib/ExtUtils/MakeMaker.pm routine extliblist. --glibpth=`echo " $glibpth " | sed -e 's! /usr/shlib ! !'` --glibpth="/usr/shlib $glibpth" - : Do not use vfork unless overridden by a hint file. - usevfork=false - -@@ -2380,7 +2364,6 @@ - zip - " - pth=`echo $PATH | sed -e "s/$p_/ /g"` --pth="$pth /lib /usr/lib" - for file in $loclist; do - eval xxx=\$$file - case "$xxx" in -@@ -4785,7 +4768,7 @@ - : Set private lib path - case "$plibpth" in - '') if ./mips; then -- plibpth="$incpath/usr/lib /usr/local/lib /usr/ccs/lib" -+ plibpth="$incpath/usr/lib" - fi;; - esac - case "$libpth" in -@@ -8390,13 +8373,8 @@ - echo " " - case "$sysman" in - '') -- syspath='/usr/share/man/man1 /usr/man/man1' -- syspath="$syspath /usr/man/mann /usr/man/manl /usr/man/local/man1" -- syspath="$syspath /usr/man/u_man/man1" -- syspath="$syspath /usr/catman/u_man/man1 /usr/man/l_man/man1" -- syspath="$syspath /usr/local/man/u_man/man1 /usr/local/man/l_man/man1" -- syspath="$syspath /usr/man/man.L /local/man/man1 /usr/local/man/man1" -- sysman=`./loc . /usr/man/man1 $syspath` -+ syspath='' -+ sysman='' - ;; - esac - if $test -d "$sysman"; then -@@ -19721,9 +19699,10 @@ - case "$full_ar" in - '') full_ar=$ar ;; - esac -+full_ar=ar - - : Store the full pathname to the sed program for use in the C program --full_sed=$sed -+full_sed=sed - - : see what type gids are declared as in the kernel - echo " " -diff -ru -x '*~' perl-5.14.2-orig/ext/Errno/Errno_pm.PL perl-5.14.2/ext/Errno/Errno_pm.PL ---- perl-5.14.2-orig/ext/Errno/Errno_pm.PL 2011-09-26 11:44:34.000000000 +0200 -+++ perl-5.14.2/ext/Errno/Errno_pm.PL 2012-01-20 17:02:07.938138311 +0100 -@@ -137,11 +137,7 @@ - if ($dep =~ /(\S+errno\.h)/) { - $file{$1} = 1; - } -- } elsif ($^O eq 'linux' && -- $Config{gccversion} ne '' && -- $Config{gccversion} !~ /intel/i -- # might be using, say, Intel's icc -- ) { -+ } elsif (0) { - # Some Linuxes have weird errno.hs which generate - # no #file or #line directives - my $linux_errno_h = -e '/usr/include/errno.h' ? -diff -ru -x '*~' perl-5.14.2-orig/hints/freebsd.sh perl-5.14.2/hints/freebsd.sh ---- perl-5.14.2-orig/hints/freebsd.sh 2011-09-19 15:18:22.000000000 +0200 -+++ perl-5.14.2/hints/freebsd.sh 2012-01-20 17:10:37.267924044 +0100 -@@ -118,21 +118,21 @@ - objformat=`/usr/bin/objformat` - if [ x$objformat = xaout ]; then - if [ -e /usr/lib/aout ]; then -- libpth="/usr/lib/aout /usr/local/lib /usr/lib" -- glibpth="/usr/lib/aout /usr/local/lib /usr/lib" -+ libpth="" -+ glibpth="" - fi - lddlflags='-Bshareable' - else -- libpth="/usr/lib /usr/local/lib" -- glibpth="/usr/lib /usr/local/lib" -+ libpth="" -+ glibpth="" - ldflags="-Wl,-E " - lddlflags="-shared " - fi - cccdlflags='-DPIC -fPIC' - ;; - *) -- libpth="/usr/lib /usr/local/lib" -- glibpth="/usr/lib /usr/local/lib" -+ libpth="" -+ glibpth="" - ldflags="-Wl,-E " - lddlflags="-shared " - cccdlflags='-DPIC -fPIC' diff --git a/pkgs/development/interpreters/perl/5.14/setup-hook.sh b/pkgs/development/interpreters/perl/5.14/setup-hook.sh deleted file mode 100644 index a8656b8531db..000000000000 --- a/pkgs/development/interpreters/perl/5.14/setup-hook.sh +++ /dev/null @@ -1,5 +0,0 @@ -addPerlLibPath () { - addToSearchPath PERL5LIB $1/lib/perl5/site_perl -} - -envHooks+=(addPerlLibPath) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 03697edf5790..669d3d473dba 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -4000,8 +4000,6 @@ let ocropus = callPackage ../applications/misc/ocropus { }; - perl514 = callPackage ../development/interpreters/perl/5.14 { }; - perl516 = callPackage ../development/interpreters/perl/5.16 { }; perl520 = callPackage ../development/interpreters/perl/5.20 { @@ -7238,14 +7236,6 @@ let overrides = (config.perlPackageOverrides or (p: {})) pkgs; }); - perl514Packages = import ./perl-packages.nix { - pkgs = pkgs // { - perl = perl514; - buildPerlPackage = import ../development/perl-modules/generic perl514; - }; - overrides = (config.perl514PackageOverrides or (p: {})) pkgs; - }; - perlXMLParser = perlPackages.XMLParser; ack = perlPackages.ack; @@ -10581,11 +10571,7 @@ let lightdm_gtk_greeter = callPackage ../applications/display-managers/lightdm-gtk-greeter { }; - # slic3r 0.9.10b says: "Running Slic3r under Perl >= 5.16 is not supported nor recommended" - slic3r = callPackage ../applications/misc/slic3r { - perlPackages = perl514Packages; - perl = perl514; - }; + slic3r = callPackage ../applications/misc/slic3r { }; curaengine = callPackage ../applications/misc/curaengine { }; From f4ab3dc223ede44cb9d20ed0638d7528219b04fa Mon Sep 17 00:00:00 2001 From: Moritz Ulrich Date: Wed, 19 Nov 2014 14:45:02 +0100 Subject: [PATCH 037/937] libcurl: Honor $SSL_CERT_FILE --- pkgs/tools/networking/curl/7.15.nix | 6 ++++++ pkgs/tools/networking/curl/default.nix | 5 +++++ 2 files changed, 11 insertions(+) diff --git a/pkgs/tools/networking/curl/7.15.nix b/pkgs/tools/networking/curl/7.15.nix index 0a87eaa944cd..df42b7d290ea 100644 --- a/pkgs/tools/networking/curl/7.15.nix +++ b/pkgs/tools/networking/curl/7.15.nix @@ -32,6 +32,12 @@ stdenv.mkDerivation rec { preConfigure = '' sed -e 's|/usr/bin|/no-such-path|g' -i.bak configure ''; + + # make curl honor CURL_CA_BUNDLE & SSL_CERT_FILE + postConfigure = '' + echo '#define CURL_CA_BUNDLE (getenv("CURL_CA_BUNDLE") || getenv("SSL_CERT_FILE"))' >> lib/curl_config.h + ''; + configureFlags = [ ( if sslSupport then "--with-ssl=${openssl}" else "--without-ssl" ) ( if scpSupport then "--with-libssh2=${libssh2}" else "--without-libssh2" ) diff --git a/pkgs/tools/networking/curl/default.nix b/pkgs/tools/networking/curl/default.nix index 85b935ebd767..f055680a2f0c 100644 --- a/pkgs/tools/networking/curl/default.nix +++ b/pkgs/tools/networking/curl/default.nix @@ -36,6 +36,11 @@ stdenv.mkDerivation rec { rm src/tool_hugehelp.c ''; + # make curl honor CURL_CA_BUNDLE & SSL_CERT_FILE + postConfigure = '' + echo '#define CURL_CA_BUNDLE (getenv("CURL_CA_BUNDLE") || getenv("SSL_CERT_FILE"))' >> lib/curl_config.h + ''; + configureFlags = [ ( if sslSupport then "--with-ssl=${openssl}" else "--without-ssl" ) ( if scpSupport then "--with-libssh2=${libssh2}" else "--without-libssh2" ) From 9a2b2e7b34190f553f41aa80297acf383700a19d Mon Sep 17 00:00:00 2001 From: David Virgilio Date: Thu, 20 Nov 2014 00:37:19 -0600 Subject: [PATCH 038/937] new package: xwayland --- pkgs/servers/x11/xorg/xwayland.nix | 41 ++++++++++++++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 ++ 2 files changed, 43 insertions(+) create mode 100644 pkgs/servers/x11/xorg/xwayland.nix diff --git a/pkgs/servers/x11/xorg/xwayland.nix b/pkgs/servers/x11/xorg/xwayland.nix new file mode 100644 index 000000000000..ae625240798d --- /dev/null +++ b/pkgs/servers/x11/xorg/xwayland.nix @@ -0,0 +1,41 @@ + +{ stdenv, wayland, xorgserver, xkbcomp, xkeyboard_config, epoxy, libxslt, libunwind, makeWrapper } : + +with stdenv.lib; + +overrideDerivation xorgserver (oldAttrs: { + + name = "xwayland-${xorgserver.version}"; + propagatedNativeBuildInputs = oldAttrs.propagatedNativeBuildInputs + ++ [wayland epoxy libxslt makeWrapper libunwind]; + configureFlags = [ + "--disable-docs" + "--disable-devel-docs" + "--enable-xwayland" + "--disable-xorg" + "--disable-xvfb" + "--disable-xnest" + "--disable-xquartz" + "--disable-xwin" + "--with-default-font-path=" + "--with-xkb-bin-directory=${xkbcomp}/bin" + "--with-xkb-path=${xkeyboard_config}/etc/X11/xkb" + "--with-xkb-output=$out/share/X11/xkb/compiled" + ]; + + postInstall = '' + rm -fr $out/share/X11/xkb/compiled + ln -s /var/tmp $out/share/X11/xkb/compiled + ''; + +}) // { + meta = { + description = "An X server for interfacing X11 apps with the Wayland protocol"; + homepage = http://wayland.freedesktop.org/xserver.html; + license = licenses.mit; + platforms = platforms.linux; +}; +} + + + diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 55c7e9bb6442..b8dbe4c7b419 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -7828,6 +7828,8 @@ let xorgVideoUnichrome = callPackage ../servers/x11/xorg/unichrome/default.nix { }; + xwayland = with xorg; callPackage ../servers/x11/xorg/xwayland.nix { }; + yaws = callPackage ../servers/http/yaws { }; zabbix = recurseIntoAttrs (import ../servers/monitoring/zabbix { From 1d131a09a42c47630248a75180882885d33d33b1 Mon Sep 17 00:00:00 2001 From: David Virgilio Date: Thu, 20 Nov 2014 05:40:37 -0600 Subject: [PATCH 039/937] update weston: add xwayland support --- pkgs/applications/window-managers/weston/default.nix | 8 +++++--- pkgs/top-level/all-packages.nix | 1 + 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/pkgs/applications/window-managers/weston/default.nix b/pkgs/applications/window-managers/weston/default.nix index 9a6708f1b140..a270bb8d4665 100644 --- a/pkgs/applications/window-managers/weston/default.nix +++ b/pkgs/applications/window-managers/weston/default.nix @@ -1,7 +1,7 @@ { stdenv, fetchurl, pkgconfig, wayland, mesa, libxkbcommon, cairo, libxcb , libXcursor, x11, udev, libdrm, mtdev, libjpeg, pam, dbus, libinput , pango ? null, libunwind ? null, freerdp ? null, vaapi ? null, libva ? null -, libwebp ? null +, libwebp ? null, xwayland ? null }: let version = "1.6.0"; in @@ -21,7 +21,6 @@ stdenv.mkDerivation rec { ]; configureFlags = [ - "--enable-xwayland" "--enable-x11-compositor" "--enable-drm-compositor" "--enable-wayland-compositor" @@ -32,7 +31,10 @@ stdenv.mkDerivation rec { "--enable-weston-launch" "--disable-setuid-install" # prevent install target to chown root weston-launch, which fails ] ++ stdenv.lib.optional (freerdp != null) "--enable-rdp-compositor" - ++ stdenv.lib.optional (vaapi != null) "--enabe-vaapi-recorder"; + ++ stdenv.lib.optional (vaapi != null) "--enabe-vaapi-recorder" + ++ stdenv.lib.optional (xwayland != null) ( + "--enable-xwayland " + + "--with-xserver-path=${xwayland}/bin/Xwayland"); meta = with stdenv.lib; { description = "Reference implementation of a Wayland compositor"; diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index b8dbe4c7b419..84bbbdc728c1 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -10965,6 +10965,7 @@ let vaapi = null; libva = null; libwebp = null; + xwayland = null; }; weston = callPackage ../applications/window-managers/weston { From ad38cdac8ab9526d9eb15edcf5cb005103a9fef0 Mon Sep 17 00:00:00 2001 From: Thomas Tuegel Date: Mon, 17 Nov 2014 18:54:31 -0600 Subject: [PATCH 040/937] qt: upgrade to 5.3.2 This commit also removes the 5.2 branch in favor of 5.3. Several components of KDE5 require Qt 5.3, so it doesn't make much sense to have the rest of the system on an older version. Also, the application styles may not be compatible because Qt breaks ABI compatibility between versions. --- .../misc/cool-old-term/default.nix | 6 +- pkgs/development/libraries/qt-5/default.nix | 11 +- .../qt-5/qt-5.2-dlopen-absolute-paths.patch | 36 ---- pkgs/development/libraries/qt-5/qt-5.3.nix | 165 ------------------ pkgs/top-level/all-packages.nix | 15 -- 5 files changed, 8 insertions(+), 225 deletions(-) delete mode 100644 pkgs/development/libraries/qt-5/qt-5.2-dlopen-absolute-paths.patch delete mode 100644 pkgs/development/libraries/qt-5/qt-5.3.nix diff --git a/pkgs/applications/misc/cool-old-term/default.nix b/pkgs/applications/misc/cool-old-term/default.nix index 76d78f004024..c56393a1be83 100644 --- a/pkgs/applications/misc/cool-old-term/default.nix +++ b/pkgs/applications/misc/cool-old-term/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchFromGitHub, qt53 }: +{ stdenv, fetchFromGitHub, qt5 }: stdenv.mkDerivation rec { version = "0.9"; @@ -11,7 +11,7 @@ stdenv.mkDerivation rec { sha256 = "8462f3eded7b2219acc143258544b0dfac32d81e10cac61ff14276d426704c93"; }; - buildInputs = [ qt53 ]; + buildInputs = [ qt5 ]; buildPhase = '' pushd ./konsole-qml-plugin @@ -31,7 +31,7 @@ stdenv.mkDerivation rec { cat > $out/bin/cool-old-term < Date: Mon, 17 Nov 2014 19:00:17 -0600 Subject: [PATCH 041/937] polkit-qt-1: Qt 5 support polkit-qt-1 is upgraded to the latest version, which supports Qt 5. The attributes are also renamed to differentiate the Qt 4 and Qt 5 branches. The prior naming scheme differentiated between polkit-qt-1 and polkit-qt, but we no longer package the latter. --- pkgs/desktops/kde-4.14/kdebindings/pykde4.nix | 4 ++-- pkgs/desktops/kde-4.14/kdelibs/kdelibs.nix | 4 ++-- .../libraries/polkit-qt-1/default.nix | 20 ++++++++++--------- .../polkit-qt-1/polkit-install.patch | 12 ----------- .../security/polkit-kde-agent/default.nix | 4 ++-- pkgs/top-level/all-packages.nix | 9 ++++++++- 6 files changed, 25 insertions(+), 28 deletions(-) delete mode 100644 pkgs/development/libraries/polkit-qt-1/polkit-install.patch diff --git a/pkgs/desktops/kde-4.14/kdebindings/pykde4.nix b/pkgs/desktops/kde-4.14/kdebindings/pykde4.nix index 64e196452e31..f86412147d3b 100644 --- a/pkgs/desktops/kde-4.14/kdebindings/pykde4.nix +++ b/pkgs/desktops/kde-4.14/kdebindings/pykde4.nix @@ -1,5 +1,5 @@ { kde, kdelibs, python, sip, pyqt4, kdepimlibs, shared_desktop_ontologies, - polkit_qt_1, boost, lndir, pkgconfig }: + polkit_qt4, boost, lndir, pkgconfig }: let pydir = "lib/python${python.majorVersion}"; in @@ -9,7 +9,7 @@ kde { buildInputs = [ python kdepimlibs shared_desktop_ontologies - boost polkit_qt_1 + boost polkit_qt4 ]; nativeBuildInputs = [ pkgconfig ]; diff --git a/pkgs/desktops/kde-4.14/kdelibs/kdelibs.nix b/pkgs/desktops/kde-4.14/kdelibs/kdelibs.nix index 4207dfd56544..52e0ebf2062d 100644 --- a/pkgs/desktops/kde-4.14/kdelibs/kdelibs.nix +++ b/pkgs/desktops/kde-4.14/kdelibs/kdelibs.nix @@ -2,7 +2,7 @@ , qt4, bzip2, fam, shared_mime_info, giflib, jasper, strigi , openexr, avahi, kerberos, shared_desktop_ontologies, libXScrnSaver , automoc4, soprano, qca2, attica, enchant, libdbusmenu_qt, grantlee -, docbook_xml_dtd_42, docbook_xsl, polkit_qt_1, acl, attr, libXtst +, docbook_xml_dtd_42, docbook_xsl, polkit_qt4, acl, attr, libXtst , udev, herqq, phonon, libjpeg, xz, ilmbase, libxslt , pkgconfig }: @@ -13,7 +13,7 @@ kde { buildInputs = [ pkgconfig attica avahi bzip2 enchant fam giflib grantlee herqq - libdbusmenu_qt libXScrnSaver polkit_qt_1 qca2 acl jasper libxslt + libdbusmenu_qt libXScrnSaver polkit_qt4 qca2 acl jasper libxslt shared_desktop_ontologies xz udev libjpeg kerberos openexr libXtst attr ]; diff --git a/pkgs/development/libraries/polkit-qt-1/default.nix b/pkgs/development/libraries/polkit-qt-1/default.nix index 13bc992d0263..c60ae560fe59 100644 --- a/pkgs/development/libraries/polkit-qt-1/default.nix +++ b/pkgs/development/libraries/polkit-qt-1/default.nix @@ -1,20 +1,22 @@ -{ stdenv, fetchurl, cmake, qt4, pkgconfig, polkit, automoc4, glib }: +{ stdenv, fetchurl, cmake, pkgconfig, polkit, automoc4, glib +, qt4 ? null, qt5 ? null, withQt5 ? false }: -stdenv.mkDerivation rec { - name = "polkit-qt-1-0.103.0"; +assert (withQt5 -> qt5 != null); assert (!withQt5 -> qt4 != null); + +stdenv.mkDerivation { + name = "polkit-qt-1-0.112.0"; src = fetchurl { - url = "mirror://kde/stable/apps/KDE4.x/admin/${name}.tar.bz2"; - sha256 = "0k17sb70ywk94dmncnkyig03sg1hcfbhi5wlc77xf3rxirmmccif"; + url = "mirror://kde/stable/apps/KDE4.x/admin/polkit-qt-1-0.112.0.tar.bz2"; + sha256 = "1ip78x20hjqvm08kxhp6gb8hf6k5n6sxyx6kk2yvvq53djzh7yv7"; }; - patches = [ ./polkit-install.patch ]; + nativeBuildInputs = [ cmake automoc4 pkgconfig ]; - nativeBuildInputs = [ cmake automoc4 ]; - - propagatedBuildInputs = [ polkit glib qt4 ]; + propagatedBuildInputs = [ polkit glib (if withQt5 then qt5 else qt4) ]; meta = { description = "A Qt wrapper around PolKit"; + maintainers = with stdenv.lib.maintainers; [ ttuegel ]; }; } diff --git a/pkgs/development/libraries/polkit-qt-1/polkit-install.patch b/pkgs/development/libraries/polkit-qt-1/polkit-install.patch deleted file mode 100644 index 79beda2a3184..000000000000 --- a/pkgs/development/libraries/polkit-qt-1/polkit-install.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -ru -x '*~' polkit-qt-1-0.99.0-orig/PolkitQt-1Config.cmake.in polkit-qt-1-0.99.0/PolkitQt-1Config.cmake.in ---- polkit-qt-1-0.99.0-orig/PolkitQt-1Config.cmake.in 2010-12-08 18:22:28.000000000 +0100 -+++ polkit-qt-1-0.99.0/PolkitQt-1Config.cmake.in 2011-07-12 13:26:51.000000000 +0200 -@@ -15,7 +15,7 @@ - - set(POLKITQT-1_INCLUDE_DIR "@INCLUDE_INSTALL_DIR@/polkit-qt-1") - set(POLKITQT-1_LIB_DIR "@LIB_INSTALL_DIR@") --set(POLKITQT-1_POLICY_FILES_INSTALL_DIR "${POLKITQT-1_INSTALL_DIR}/share/polkit-1/actions") -+set(POLKITQT-1_POLICY_FILES_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/share/polkit-1/actions") - - # Compatibility - if(WIN32) diff --git a/pkgs/tools/security/polkit-kde-agent/default.nix b/pkgs/tools/security/polkit-kde-agent/default.nix index 7696ee93bce0..b3990b53a87a 100644 --- a/pkgs/tools/security/polkit-kde-agent/default.nix +++ b/pkgs/tools/security/polkit-kde-agent/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchurl, kdelibs, polkit_qt_1, gettext }: +{ stdenv, fetchurl, kdelibs, polkit_qt4, gettext }: stdenv.mkDerivation rec { name = "polkit-kde-agent-1-0.99.0"; @@ -8,7 +8,7 @@ stdenv.mkDerivation rec { sha256 = "0rxlq6x0vhvha8i6w109zpzzacp4imins55v4p4fq7a3k0kgywg3"; }; - buildInputs = [ kdelibs polkit_qt_1 ]; + buildInputs = [ kdelibs polkit_qt4 ]; nativeBuildInputs = [ gettext ]; diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 76c26547dc0d..0ab82cd418e4 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -6536,7 +6536,14 @@ let spidermonkey = spidermonkey_185; }; - polkit_qt_1 = callPackage ../development/libraries/polkit-qt-1 { }; + polkit_qt4 = callPackage ../development/libraries/polkit-qt-1 { + inherit qt4; + }; + + polkit_qt5 = callPackage ../development/libraries/polkit-qt-1 { + inherit qt5; + withQt5 = true; + }; policykit = callPackage ../development/libraries/policykit { }; From c3240b9315fea4c9744cb72ad7ab7ac0d9235a21 Mon Sep 17 00:00:00 2001 From: Thomas Tuegel Date: Mon, 17 Nov 2014 19:25:36 -0600 Subject: [PATCH 042/937] phonon: upgrade to 4.8.1 This version adds Qt 5 support. --- pkgs/development/libraries/phonon/default.nix | 20 +++++++++++++------ pkgs/top-level/all-packages.nix | 8 +++++++- 2 files changed, 21 insertions(+), 7 deletions(-) diff --git a/pkgs/development/libraries/phonon/default.nix b/pkgs/development/libraries/phonon/default.nix index 7fd99ab0244a..df32f04bb6c1 100644 --- a/pkgs/development/libraries/phonon/default.nix +++ b/pkgs/development/libraries/phonon/default.nix @@ -1,25 +1,33 @@ -{ stdenv, fetchurl, cmake, automoc4, qt4, pulseaudio }: +{ stdenv, fetchurl, cmake, automoc4, pulseaudio +, qt4 ? null, qt5 ? null, withQt5 ? false }: + +assert (withQt5 -> qt5 != null); assert (!withQt5 -> qt4 != null); + +with stdenv.lib; let - v = "4.7.2"; + v = "4.8.1"; in stdenv.mkDerivation rec { name = "phonon-${v}"; src = fetchurl { - url = "mirror://kde/stable/phonon/${v}/${name}.tar.xz"; - sha256 = "1ghidabmi6vnnmz8q272qi259nb8bbqlbayqk52ln98fs8s9g7l1"; + url = "mirror://kde/stable/phonon/${v}/phonon-${v}.tar.xz"; + sha256 = "1l97h1jj3gvl1chx1qbipizfvjgqc05wrhdcflc76c2krlk03jmn"; }; - buildInputs = [ qt4 pulseaudio ]; + buildInputs = [ (if withQt5 then qt5 else qt4) pulseaudio ]; nativeBuildInputs = [ cmake automoc4 ]; + cmakeFlags = optional withQt5 "-DPHONON_BUILD_PHONON4QT5=ON"; + meta = { homepage = http://phonon.kde.org/; description = "Multimedia API for Qt"; license = stdenv.lib.licenses.lgpl2; platforms = stdenv.lib.platforms.linux; - }; + maintainers = with stdenv.lib.maintainers; [ ttuegel ]; + }; } diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 0ab82cd418e4..3b919b3d8cb4 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -6514,7 +6514,13 @@ let pdf2xml = callPackage ../development/libraries/pdf2xml {} ; - phonon = callPackage ../development/libraries/phonon { }; + phonon = callPackage ../development/libraries/phonon { inherit qt4; }; + + phonon_qt5 = phonon.override { + withQt5 = true; + inherit qt5; + qt4 = null; + }; phonon_backend_gstreamer = callPackage ../development/libraries/phonon-backend-gstreamer { }; From b1123db790131f0c581401967942c55cba01d2e9 Mon Sep 17 00:00:00 2001 From: Thomas Tuegel Date: Mon, 17 Nov 2014 19:30:46 -0600 Subject: [PATCH 043/937] phonon-backend-gstreamer: add Qt 5 support --- .../phonon-backend-gstreamer/default.nix | 29 +++++++++++++------ pkgs/top-level/all-packages.nix | 8 ++++- 2 files changed, 27 insertions(+), 10 deletions(-) diff --git a/pkgs/development/libraries/phonon-backend-gstreamer/default.nix b/pkgs/development/libraries/phonon-backend-gstreamer/default.nix index 844c2e580093..5067a3bd2c25 100644 --- a/pkgs/development/libraries/phonon-backend-gstreamer/default.nix +++ b/pkgs/development/libraries/phonon-backend-gstreamer/default.nix @@ -1,28 +1,39 @@ -{ stdenv, fetchurl, cmake, automoc4, qt4, pkgconfig, phonon, gstreamer -, gst_plugins_base }: +{ stdenv, fetchurl, cmake, automoc4, pkgconfig, gst_all_1 +, phonon, qt4 ? null, qt5 ? null, withQt5 ? false }: + +with stdenv.lib; + +assert (withQt5 -> qt5 != null); assert (!withQt5 -> qt4 != null); let - version = "4.7.2"; + version = "4.8.0"; pname = "phonon-backend-gstreamer"; + qt = if withQt5 then qt5 else qt4; + # Force same Qt version in phonon + phonon_ = phonon.override { inherit qt4 qt5 withQt5; }; in stdenv.mkDerivation rec { name = "${pname}-${version}"; src = fetchurl { - url = "mirror://kde/stable/phonon/${pname}/${version}/src/${name}.tar.xz"; - sha256 = "1cfjk450aajr8hfhnfq7zbmryprxiwr9ha5x585dsh7mja82mdw0"; + url = "mirror://kde/stable/phonon/${pname}/${version}/${name}.tar.xz"; + sha256 = "0zjqf1gpj6h9hj27225vihg5gj0fjgvh4n9nkrbij7kf57bcn6gq"; }; - buildInputs = [ phonon qt4 gstreamer gst_plugins_base ]; + buildInputs = with gst_all_1; [ phonon_ qt gstreamer gst-plugins-base ]; nativeBuildInputs = [ cmake automoc4 pkgconfig ]; - cmakeFlags = [ "-DCMAKE_INSTALL_LIBDIR=lib" ]; + cmakeFlags = + [ "-DCMAKE_INSTALL_LIBDIR=lib" + ] ++ optional withQt5 "-DPHONON_BUILD_PHONON4QT5=ON"; meta = { homepage = http://phonon.kde.org/; description = "GStreamer backend for Phonon"; - platforms = stdenv.lib.platforms.linux; - }; + platforms = platforms.linux; + maintainers = with maintainers; [ ttuegel ]; + license = licenses.lgpl21Plus; + }; } diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 3b919b3d8cb4..f3b9331ce980 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -6522,7 +6522,13 @@ let qt4 = null; }; - phonon_backend_gstreamer = callPackage ../development/libraries/phonon-backend-gstreamer { }; + phonon_backend_gstreamer = callPackage ../development/libraries/phonon-backend-gstreamer { inherit qt4; }; + + phonon_qt5_backend_gstreamer = phonon_backend_gstreamer.override { + withQt5 = true; + inherit qt5; + qt4 = null; + }; phonon_backend_vlc = callPackage ../development/libraries/phonon-backend-vlc { }; From 66ebc65cd3fd91eba18e43e4cc37ddfecbddba95 Mon Sep 17 00:00:00 2001 From: Thomas Tuegel Date: Mon, 17 Nov 2014 19:33:10 -0600 Subject: [PATCH 044/937] phonon-backend-vlc: add Qt 5 support --- pkgs/applications/video/vlc/default.nix | 15 ++++++++--- .../libraries/phonon-backend-vlc/default.nix | 27 +++++++++++++------ pkgs/top-level/all-packages.nix | 10 ++++++- 3 files changed, 39 insertions(+), 13 deletions(-) diff --git a/pkgs/applications/video/vlc/default.nix b/pkgs/applications/video/vlc/default.nix index 71db3d40a46f..f1d3cf836adb 100644 --- a/pkgs/applications/video/vlc/default.nix +++ b/pkgs/applications/video/vlc/default.nix @@ -1,14 +1,20 @@ { stdenv, fetchurl, xz, bzip2, perl, xlibs, libdvdnav, libbluray , zlib, a52dec, libmad, faad2, ffmpeg, alsaLib -, pkgconfig, dbus, fribidi, qt4, freefont_ttf, libebml, libmatroska +, pkgconfig, dbus, fribidi, freefont_ttf, libebml, libmatroska , libvorbis, libtheora, speex, lua5, libgcrypt, libupnp , libcaca, pulseaudio, flac, schroedinger, libxml2, librsvg , mpeg2dec, udev, gnutls, avahi, libcddb, jack2, SDL, SDL_image , libmtp, unzip, taglib, libkate, libtiger, libv4l, samba, liboggz , libass, libva, libdvbpsi, libdc1394, libraw1394, libopus , libvdpau +, onlyLibVLC ? false +, qt4 ? null, qt5 ? null, withQt5 ? false }: +with stdenv.lib; + +assert (withQt5 -> qt5 != null); assert (!withQt5 -> qt4 != null); + stdenv.mkDerivation rec { name = "vlc-${version}"; version = "2.1.5"; @@ -20,13 +26,13 @@ stdenv.mkDerivation rec { buildInputs = [ xz bzip2 perl zlib a52dec libmad faad2 ffmpeg alsaLib libdvdnav libdvdnav.libdvdread - libbluray dbus fribidi qt4 libvorbis libtheora speex lua5 libgcrypt + libbluray dbus fribidi libvorbis libtheora speex lua5 libgcrypt libupnp libcaca pulseaudio flac schroedinger libxml2 librsvg mpeg2dec udev gnutls avahi libcddb jack2 SDL SDL_image libmtp unzip taglib libkate libtiger libv4l samba liboggz libass libdvbpsi libva xlibs.xlibs xlibs.libXv xlibs.libXvMC xlibs.libXpm xlibs.xcbutilkeysyms libdc1394 libraw1394 libopus libebml libmatroska libvdpau - ]; + ] ++ [(if withQt5 then qt5 else qt4)]; nativeBuildInputs = [ pkgconfig ]; @@ -36,7 +42,8 @@ stdenv.mkDerivation rec { "--enable-dc1394" "--enable-ncurses" "--enable-vdpau" - ]; + ] + ++ optional onlyLibVLC "--disable-vlc"; preConfigure = ''sed -e "s@/bin/echo@echo@g" -i configure''; diff --git a/pkgs/development/libraries/phonon-backend-vlc/default.nix b/pkgs/development/libraries/phonon-backend-vlc/default.nix index 8a196463639c..8883f5c11d9e 100644 --- a/pkgs/development/libraries/phonon-backend-vlc/default.nix +++ b/pkgs/development/libraries/phonon-backend-vlc/default.nix @@ -1,26 +1,37 @@ -{ stdenv, fetchurl, xz, qt4, vlc, automoc4, cmake, pkgconfig, phonon }: +{ stdenv, fetchurl, xz, vlc, automoc4, cmake, pkgconfig, phonon +, qt4 ? null, qt5 ? null, withQt5 ? false }: + +with stdenv.lib; + +assert (withQt5 -> qt5 != null); assert (!withQt5 -> qt4 != null); let pname = "phonon-backend-vlc"; - v = "0.7.2"; - vlc_ = vlc.override { inherit qt4; }; #Force using the same qt version + v = "0.8.1"; + # Force same Qt version in phonon and VLC + vlc_ = vlc.override { inherit qt4 qt5 withQt5; }; + phonon_ = phonon.override { inherit qt4 qt5 withQt5; }; in stdenv.mkDerivation { name = "${pname}-${v}"; src = fetchurl { - url = "mirror://kde/stable/phonon/${pname}/${v}/src/${pname}-${v}.tar.xz"; - sha256 = "1acmbn8pmmq16gcz825dlzaf3haj6avp1bmcxzpkjd1fvxh86y0a"; + url = "mirror://kde/stable/phonon/${pname}/${v}/${pname}-${v}.tar.xz"; + sha256 = "1fyfh7qyb6rld350v2fgz452ld96d3z5ifchr323q0vc3hb9k222"; }; nativeBuildInputs = [ cmake pkgconfig automoc4 xz ]; - buildInputs = [ qt4 vlc_ phonon ]; + buildInputs = [ vlc_ phonon_ (if withQt5 then qt5 else qt4)]; + + cmakeFlags = optional withQt5 "-DPHONON_BUILD_PHONON4QT5=ON"; meta = { + homepage = http://phonon.kde.org/; description = "VideoLAN backend for Phonon multimedia framework"; - platforms = stdenv.lib.platforms.linux; - maintainers = [ stdenv.lib.maintainers.urkud ]; + platforms = platforms.linux; + maintainers = with maintainers; [ ttuegel urkud ]; + license = licenses.lgpl21Plus; }; } diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index f3b9331ce980..340852ff3568 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -6530,7 +6530,13 @@ let qt4 = null; }; - phonon_backend_vlc = callPackage ../development/libraries/phonon-backend-vlc { }; + phonon_backend_vlc = callPackage ../development/libraries/phonon-backend-vlc { inherit qt4; }; + + phonon_qt5_backend_vlc = phonon_backend_vlc.override { + withQt5 = true; + inherit qt5; + qt4 = null; + }; physfs = callPackage ../development/libraries/physfs { }; @@ -10890,6 +10896,8 @@ let ffmpeg = ffmpeg_2_3; }; + libvlc = vlc.override { onlyLibVLC = true; }; + vmpk = callPackage ../applications/audio/vmpk { }; vnstat = callPackage ../applications/networking/vnstat { }; From e2fe48756f3edbf1becc31a5c65b7632fd700387 Mon Sep 17 00:00:00 2001 From: Thomas Tuegel Date: Wed, 19 Nov 2014 16:22:54 -0600 Subject: [PATCH 045/937] qt5: find timezone table in $TZDIR --- pkgs/development/libraries/qt-5/default.nix | 1 + .../libraries/qt-5/qt-5.3-tzdir.patch | 40 +++++++++++++++++++ 2 files changed, 41 insertions(+) create mode 100644 pkgs/development/libraries/qt-5/qt-5.3-tzdir.patch diff --git a/pkgs/development/libraries/qt-5/default.nix b/pkgs/development/libraries/qt-5/default.nix index fe290fd69fcf..cdee92764898 100644 --- a/pkgs/development/libraries/qt-5/default.nix +++ b/pkgs/development/libraries/qt-5/default.nix @@ -46,6 +46,7 @@ stdenv.mkDerivation rec { patches = [ ./glib-2.32.patch + ./qt-5.3-tzdir.patch (substituteAll { src = ./qt-5.2-dlopen-absolute-paths.patch; inherit cups icu libXfixes; diff --git a/pkgs/development/libraries/qt-5/qt-5.3-tzdir.patch b/pkgs/development/libraries/qt-5/qt-5.3-tzdir.patch new file mode 100644 index 000000000000..5434a228a9e6 --- /dev/null +++ b/pkgs/development/libraries/qt-5/qt-5.3-tzdir.patch @@ -0,0 +1,40 @@ +diff --git a/qtbase/src/corelib/tools/qtimezoneprivate_tz.cpp b/qtbase/src/corelib/tools/qtimezoneprivate_tz.cpp +index b4ea91e..a56a245 100644 +--- a/qtbase/src/corelib/tools/qtimezoneprivate_tz.cpp ++++ b/qtbase/src/corelib/tools/qtimezoneprivate_tz.cpp +@@ -68,7 +68,10 @@ typedef QHash QTzTimeZoneHash; + // Parse zone.tab table, assume lists all installed zones, if not will need to read directories + static QTzTimeZoneHash loadTzTimeZones() + { +- QString path = QStringLiteral("/usr/share/zoneinfo/zone.tab"); ++ QString path = qgetenv("TZDIR"); ++ path += "/zone.tab"; ++ if (!QFile::exists(path)) ++ path = QStringLiteral("/usr/share/zoneinfo/zone.tab"); + if (!QFile::exists(path)) + path = QStringLiteral("/usr/lib/zoneinfo/zone.tab"); + +@@ -559,12 +562,18 @@ void QTzTimeZonePrivate::init(const QByteArray &ianaId) + if (!tzif.open(QIODevice::ReadOnly)) + return; + } else { +- // Open named tz, try modern path first, if fails try legacy path +- tzif.setFileName(QLatin1String("/usr/share/zoneinfo/") + QString::fromLocal8Bit(ianaId)); ++ // Try TZDIR first ++ QString zoneinfoDir = qgetenv("TZDIR"); ++ zoneinfoDir += "/" + QString::fromLocal8Bit(ianaId); ++ tzif.setFileName(zoneinfoDir); + if (!tzif.open(QIODevice::ReadOnly)) { +- tzif.setFileName(QLatin1String("/usr/lib/zoneinfo/") + QString::fromLocal8Bit(ianaId)); +- if (!tzif.open(QIODevice::ReadOnly)) +- return; ++ // Open named tz, try modern path first, if fails try legacy path ++ tzif.setFileName(QLatin1String("/usr/share/zoneinfo/") + QString::fromLocal8Bit(ianaId)); ++ if (!tzif.open(QIODevice::ReadOnly)) { ++ tzif.setFileName(QLatin1String("/usr/lib/zoneinfo/") + QString::fromLocal8Bit(ianaId)); ++ if (!tzif.open(QIODevice::ReadOnly)) ++ return; ++ } + } + } + From bb2fba11254804635a49ffbfec0e7e3f852eb28a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Mon, 24 Nov 2014 22:09:43 +0100 Subject: [PATCH 046/937] Revert "mesa: Don't depend on Wayland" This reverts commit 7ff232e9584b6bd78a38b0d6b85dd2c6e0ebce4e. See discussion at the original commit. CC: #4999, #5001, #5061, #5071. --- pkgs/development/libraries/mesa/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/mesa/default.nix b/pkgs/development/libraries/mesa/default.nix index 842f3dc7d9b8..4536316b8018 100644 --- a/pkgs/development/libraries/mesa/default.nix +++ b/pkgs/development/libraries/mesa/default.nix @@ -78,7 +78,7 @@ stdenv.mkDerivation { "--with-dri-drivers=i965,r200,radeon" "--with-gallium-drivers=i915,nouveau,r300,r600,svga,swrast,radeonsi" - "--with-egl-platforms=x11,drm" "--enable-gbm" + "--with-egl-platforms=x11,wayland,drm" "--enable-gbm" ] ++ optional enableTextureFloats "--enable-texture-float" ++ optionals enableExtraFeatures [ @@ -97,7 +97,7 @@ stdenv.mkDerivation { autoreconfHook intltool expat libxml2Python llvm glproto dri2proto dri3proto presentproto libX11 libXext libxcb libXt libXfixes libxshmfence - libffi /* wayland */ libvdpau libelf + libffi wayland libvdpau libelf ] ++ optionals enableExtraFeatures [ /*libXvMC*/ ] ++ optional stdenv.isLinux udev ; From 443e0fcbeafa576d1d521d79dd1c5ab4d79baa96 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Mon, 24 Nov 2014 23:04:36 +0100 Subject: [PATCH 047/937] dbus: small update, fixing boot on slow machines See http://cgit.freedesktop.org/dbus/dbus/tree/NEWS?h=dbus-1.8 --- pkgs/development/libraries/dbus/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/dbus/default.nix b/pkgs/development/libraries/dbus/default.nix index 31e271277841..d332321a22ad 100644 --- a/pkgs/development/libraries/dbus/default.nix +++ b/pkgs/development/libraries/dbus/default.nix @@ -3,8 +3,8 @@ , libX11, libICE, libSM, useX11 ? (stdenv.isLinux || stdenv.isDarwin) }: let - version = "1.8.10"; - sha256 = "13mgvwigm931r8n9363imnn0vn6dvc0m322k3p8fs5c8nvyqggqh"; + version = "1.8.12"; + sha256 = "07jhcalg00i2rx5zrgk73rg0vm7lzi5q5z2gscrbl999ipr2h569"; inherit (stdenv) lib; From af379076ceed818f08ffba175b9e4eceb5c35ee2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Mon, 24 Nov 2014 23:06:39 +0100 Subject: [PATCH 048/937] harfbuzz: small update --- pkgs/development/libraries/harfbuzz/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/harfbuzz/default.nix b/pkgs/development/libraries/harfbuzz/default.nix index 45cdc5be02b1..9c7244fdc6ed 100644 --- a/pkgs/development/libraries/harfbuzz/default.nix +++ b/pkgs/development/libraries/harfbuzz/default.nix @@ -8,11 +8,11 @@ # (icu is a ~30 MB dependency, the rest is very small in comparison) stdenv.mkDerivation rec { - name = "harfbuzz-0.9.35"; + name = "harfbuzz-0.9.36"; src = fetchurl { url = "http://www.freedesktop.org/software/harfbuzz/release/${name}.tar.bz2"; - sha256 = "1v86596994bnb9hx7laykhw4ipixqz9ckwzyyqf340pmlsmsi88a"; + sha256 = "3bfbf7b016167ee6b2a2f83948fef75cc1253081873d6a91022161815956b9be"; }; configureFlags = [ From 97a2de297e48d312ef734f8b9c2bdc5092b2aea8 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Tue, 25 Nov 2014 00:28:20 +0100 Subject: [PATCH 049/937] Fix various Perl packages Perl 5.20 removed some modules, in particular Module::Pluggable. So now other modules need to get it from CPAN. http://hydra.nixos.org/build/17450281 --- .../scripts/nix-generate-from-cpan.nix | 4 +- maintainers/scripts/nix-generate-from-cpan.pl | 2 +- pkgs/top-level/perl-packages.nix | 209 ++++++++++++------ 3 files changed, 147 insertions(+), 68 deletions(-) diff --git a/maintainers/scripts/nix-generate-from-cpan.nix b/maintainers/scripts/nix-generate-from-cpan.nix index fffe11f1a5fc..056cd994ba22 100644 --- a/maintainers/scripts/nix-generate-from-cpan.nix +++ b/maintainers/scripts/nix-generate-from-cpan.nix @@ -3,7 +3,7 @@ stdenv.mkDerivation { name = "nix-generate-from-cpan-1"; - buildInputs = [ makeWrapper perl perlPackages.YAMLLibYAML perlPackages.JSON ]; + buildInputs = [ makeWrapper perl perlPackages.YAMLLibYAML perlPackages.JSON perlPackages.CPANPLUS ]; unpackPhase = "true"; buildPhase = "true"; @@ -19,4 +19,4 @@ stdenv.mkDerivation { maintainers = [ stdenv.lib.maintainers.eelco ]; description = "Utility to generate a Nix expression for a Perl package from CPAN"; }; -} \ No newline at end of file +} diff --git a/maintainers/scripts/nix-generate-from-cpan.pl b/maintainers/scripts/nix-generate-from-cpan.pl index 1d9f926ec556..56709ca8000b 100755 --- a/maintainers/scripts/nix-generate-from-cpan.pl +++ b/maintainers/scripts/nix-generate-from-cpan.pl @@ -100,7 +100,7 @@ sub get_deps { foreach my $n (keys %{$deps}) { next if $n eq "perl"; # Hacky way to figure out if this module is part of Perl. - if ($n !~ /^JSON/ && $n !~ /^YAML/) { + if ($n !~ /^JSON/ && $n !~ /^YAML/ && $n !~ /^Module::Pluggable/) { eval "use $n;"; if (!$@) { print STDERR "skipping Perl-builtin module $n\n"; diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix index d02a4f69a167..e1dd33e92815 100644 --- a/pkgs/top-level/perl-packages.nix +++ b/pkgs/top-level/perl-packages.nix @@ -239,6 +239,19 @@ let self = _self // overrides; _self = with self; { }; }; + ArchiveExtract = buildPerlPackage { + name = "Archive-Extract-0.74"; + src = fetchurl { + url = mirror://cpan/authors/id/B/BI/BINGOS/Archive-Extract-0.74.tar.gz; + sha256 = "b297d230fe91720a423a01482db7e037b2acf589f9c8f58cef39f3148374e216"; + }; + propagatedBuildInputs = [ if_ ]; + meta = { + description = "Generic archive extracting mechanism"; + license = "perl"; + }; + }; + ArchiveZip = buildPerlPackage { name = "Archive-Zip-1.16"; src = fetchurl { @@ -329,19 +342,7 @@ let self = _self // overrides; _self = with self; { }; }; - autodie = buildPerlPackage { - name = "autodie-2.20"; - src = fetchurl { - url = mirror://cpan/authors/id/P/PJ/PJF/autodie-2.20.tar.gz; - sha256 = "346763c582cd8066b4e5d07e4013202f9f9296d32b42343e117dbfb13ea6e4f0"; - }; - meta = { - description = "Replace functions with ones that succeed or die with lexical scope"; - license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ]; - maintainers = with maintainers; [ ocharles ]; - platforms = stdenv.lib.platforms.unix; - }; - }; + autodie = null; # part of Perl autovivification = buildPerlPackage { name = "autovivification-0.12"; @@ -643,16 +644,16 @@ let self = _self // overrides; _self = with self; { }; CatalystActionREST = buildPerlPackage { - name = "Catalyst-Action-REST-1.07"; + name = "Catalyst-Action-REST-1.17"; src = fetchurl { - url = mirror://cpan/authors/id/B/BO/BOBTFISH/Catalyst-Action-REST-1.07.tar.gz; - sha256 = "0c893iia1bmqlrknylaqhc9ln1xqz7yw9z639rxmyjyidx5b4q0d"; + url = mirror://cpan/authors/id/F/FR/FREW/Catalyst-Action-REST-1.17.tar.gz; + sha256 = "c833c6ba2150b035b0486ff568c1e5928c14bb53d6a70758271feb969aaedde6"; }; - propagatedBuildInputs = [ CatalystRuntime ClassInspector ConfigGeneral DataSerializer DataTaxi FreezeThaw HTMLParser JSONXS LWPUserAgent Moose MROCompat namespaceautoclean ParamsValidate PHPSerialization URIFind XMLSimple YAMLSyck ]; + buildInputs = [ TestRequires ]; + propagatedBuildInputs = [ CatalystRuntime ClassInspector LWP MROCompat ModulePluggable Moose ParamsValidate URIFind namespaceautoclean ]; meta = { description = "Automated REST Method Dispatching"; - license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ]; - platforms = stdenv.lib.platforms.linux; + license = "perl"; }; }; @@ -1498,11 +1499,16 @@ let self = _self // overrides; _self = with self; { propagatedBuildInputs = [ IOCompress ]; }; - ConfigAny = buildPerlPackage rec { + ConfigAny = buildPerlPackage { name = "Config-Any-0.24"; src = fetchurl { - url = "mirror://cpan/modules/by-module/Config/${name}.tar.gz"; - sha256 = "06n6jn3q3xhk57icwip0ihzqixxav6sgp6rrb35hahj1z748y3vi"; + url = mirror://cpan/authors/id/B/BR/BRICAS/Config-Any-0.24.tar.gz; + sha256 = "710f8fc8f9414205cb58399bfbb4d9aaf7883f8ce046cee22913f6818795c61a"; + }; + propagatedBuildInputs = [ ModulePluggable ]; + meta = { + description = "Load configuration from different file formats, transparently"; + license = "perl"; }; }; @@ -1733,6 +1739,21 @@ let self = _self // overrides; _self = with self; { }; }; + CPANPLUS = buildPerlPackage { + name = "CPANPLUS-0.9152"; + src = fetchurl { + url = mirror://cpan/authors/id/B/BI/BINGOS/CPANPLUS-0.9152.tar.gz; + sha256 = "732d9978ca6e8cde9b16431e1d1bafa543a66d8bce3fbfca4e5ac297a348ad17"; + }; + propagatedBuildInputs = [ ArchiveExtract LogMessage ModulePluggable ObjectAccessor PackageConstants ]; + doCheck = false; + meta = { + homepage = http://github.com/jib/cpanplus-devel; + description = "Ameliorated interface to the CPAN"; + license = "perl"; + }; + }; + CPANUploader = buildPerlPackage { name = "CPAN-Uploader-0.103006"; src = fetchurl { @@ -2200,15 +2221,15 @@ let self = _self // overrides; _self = with self; { }; DateTimeFormatFlexible = buildPerlPackage { - name = "DateTime-Format-Flexible-0.25"; + name = "DateTime-Format-Flexible-0.26"; src = fetchurl { - url = mirror://cpan/authors/id/T/TH/THINC/DateTime-Format-Flexible-0.25.tar.gz; - sha256 = "cd3267e68736ece386d677289b334d4ef1f33ff2524b17b9c9deb53d20420090"; + url = mirror://cpan/authors/id/T/TH/THINC/DateTime-Format-Flexible-0.26.tar.gz; + sha256 = "436efbc5e87cc385112e1c44336427fea32df670caf2b7d6dbb7a113ac6e693d"; }; - propagatedBuildInputs = [ DateTime DateTimeFormatBuilder DateTimeTimeZone ListMoreUtils TestMockTime ]; + propagatedBuildInputs = [ DateTime DateTimeFormatBuilder DateTimeTimeZone ListMoreUtils ModulePluggable TestMockTime ]; meta = { description = "DateTime::Format::Flexible - Flexibly parse strings and turn them into DateTime objects"; - license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + license = "perl"; }; }; @@ -3094,11 +3115,13 @@ let self = _self // overrides; _self = with self; { name = "Email-Abstract-3.007"; src = fetchurl { url = mirror://cpan/authors/id/R/RJ/RJBS/Email-Abstract-3.007.tar.gz; - sha256 = "1a7aynf5jd5lr77x4k51hphnbmxf6p0s2gm1a6fbmxjqlnimm48h"; + sha256 = "10915aa3a558f6ba9c51a13ea1c135aed765e185a14cd2cfc9b434599cf5eaa8"; }; - propagatedBuildInputs = [ EmailSimple MROCompat ]; + propagatedBuildInputs = [ EmailSimple MROCompat ModulePluggable ]; meta = { - license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + homepage = https://github.com/rjbs/Email-Abstract; + description = "Unified interface to mail representations"; + license = "perl"; }; }; @@ -3597,17 +3620,20 @@ let self = _self // overrides; _self = with self; { }; }; - FileChangeNotify = buildPerlModule rec { + FileChangeNotify = buildPerlModule { name = "File-ChangeNotify-0.24"; src = fetchurl { - url = "mirror://cpan/authors/id/D/DR/DROLSKY/${name}.tar.gz"; - sha256 = "090i265f73jlcl5rv250791vw32j9vvl4nd5abc7myg0klb8109w"; + url = mirror://cpan/authors/id/D/DR/DROLSKY/File-ChangeNotify-0.24.tar.gz; + sha256 = "3c8180169de0f97ad852a55942f74e520cbe433aa0889d0b65548ee38a111124"; }; buildInputs = [ TestException ]; propagatedBuildInputs = - [ ClassMOP Moose MooseXParamsValidate MooseXSemiAffordanceAccessor - namespaceautoclean - ] ++ stdenv.lib.optional stdenv.isLinux LinuxInotify2; + [ ClassLoad ListMoreUtils ModulePluggable Moose MooseXParamsValidate MooseXSemiAffordanceAccessor namespaceautoclean ] + ++ stdenv.lib.optional stdenv.isLinux LinuxInotify2; + meta = { + description = "Watch for changes to files, cross-platform style"; + license = "artistic_2"; + }; }; Filechdir = buildPerlPackage rec { @@ -5101,6 +5127,19 @@ let self = _self // overrides; _self = with self; { }; }; + LogMessage = buildPerlPackage { + name = "Log-Message-0.08"; + src = fetchurl { + url = mirror://cpan/authors/id/B/BI/BINGOS/Log-Message-0.08.tar.gz; + sha256 = "bd697dd62aaf26d118e9f0a0813429deb1c544e4501559879b61fcbdfe99fe46"; + }; + propagatedBuildInputs = [ if_ ]; + meta = { + description = "Powerful and flexible message logging mechanism"; + license = "perl"; + }; + }; + LogTrace = buildPerlPackage rec { name = "Log-Trace-1.070"; src = fetchurl { @@ -5615,16 +5654,16 @@ let self = _self // overrides; _self = with self; { }; ModuleInstall = buildPerlPackage { - name = "Module-Install-1.06"; + name = "Module-Install-1.14"; src = fetchurl { - url = mirror://cpan/authors/id/A/AD/ADAMK/Module-Install-1.06.tar.gz; - sha256 = "06a5375q1cr21rzcr07z3n8w6hv611a9p199jrnpsj9vbcwwi7ny"; + url = mirror://cpan/authors/id/B/BI/BINGOS/Module-Install-1.14.tar.gz; + sha256 = "3f02f0a33603aff2f5cf06d15f74d1a9be65e844ada99e1a9c2102330ffa0d49"; }; buildInputs = [ YAMLTiny ]; - propagatedBuildInputs = [ FileRemove LWPUserAgent ModuleScanDeps PARDist YAMLTiny ]; + propagatedBuildInputs = [ FileRemove ModuleScanDeps YAMLTiny ]; meta = { description = "Standalone, extensible Perl module installer"; - license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + license = "perl"; }; }; @@ -5748,14 +5787,15 @@ let self = _self // overrides; _self = with self; { }; ModuleScanDeps = buildPerlPackage { - name = "Module-ScanDeps-1.10"; + name = "Module-ScanDeps-1.17"; src = fetchurl { - url = mirror://cpan/authors/id/R/RS/RSCHUPP/Module-ScanDeps-1.10.tar.gz; - sha256 = "0z85zqvqpj2ck80sw91hmzn94q8m3s40anybw324xh3pcrm9cg5s"; + url = mirror://cpan/authors/id/R/RS/RSCHUPP/Module-ScanDeps-1.17.tar.gz; + sha256 = "1b2999344919826476c59e08e65e4877121b4da1e847c9f354841df688927dd2"; }; + buildInputs = [ TestRequires ]; meta = { description = "Recursively scan Perl code for dependencies"; - license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + license = "perl"; }; }; @@ -6235,17 +6275,17 @@ let self = _self // overrides; _self = with self; { }; MooseXTypes = buildPerlPackage { - name = "MooseX-Types-0.35"; + name = "MooseX-Types-0.45"; src = fetchurl { - url = mirror://cpan/authors/id/D/DR/DROLSKY/MooseX-Types-0.35.tar.gz; - sha256 = "11namg9pjw328ybvj70cgn15aac093jwdm4jv0b173gb7vkflx8a"; + url = mirror://cpan/authors/id/E/ET/ETHER/MooseX-Types-0.45.tar.gz; + sha256 = "d01ff4a3db78e1150101b4b63569e4bce3ced3b5b0024c52c87575e0820609c7"; }; - buildInputs = [ TestFatal TestMoose TestRequires ]; - propagatedBuildInputs = [ CarpClan Moose namespaceclean SubInstall SubName ]; + buildInputs = [ ModuleBuildTiny Moose TestFatal TestRequires if_ ]; + propagatedBuildInputs = [ CarpClan ModuleRuntime Moose SubExporter SubName namespaceautoclean ]; meta = { - homepage = http://search.cpan.org/perldoc?CPAN::Meta::Spec; + homepage = https://github.com/moose/MooseX-Types; description = "Organise your Moose types in libraries"; - license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + license = "perl"; }; }; @@ -6815,6 +6855,18 @@ let self = _self // overrides; _self = with self; { }; }; + ObjectAccessor = buildPerlPackage { + name = "Object-Accessor-0.48"; + src = fetchurl { + url = mirror://cpan/authors/id/B/BI/BINGOS/Object-Accessor-0.48.tar.gz; + sha256 = "76cb824a27b6b4e560409fcf6fd5b3bfbbd38b72f1f3d37ed0b54bd9c0baeade"; + }; + meta = { + description = "Per object accessors"; + license = "perl"; + }; + }; + ObjectInsideOut = buildPerlPackage { name = "Object-InsideOut-3.98"; src = fetchurl { @@ -6887,6 +6939,18 @@ let self = _self // overrides; _self = with self; { propagatedBuildInputs = [ NetOpenIDCommon JSON LWP ]; }; + PackageConstants = buildPerlPackage { + name = "Package-Constants-0.04"; + src = fetchurl { + url = mirror://cpan/authors/id/B/BI/BINGOS/Package-Constants-0.04.tar.gz; + sha256 = "7e09a88da2c0df24f498eb3a133f7d979404a7bc853f21afa2ba68dfd859a880"; + }; + meta = { + description = "List constants defined in a package"; + license = "perl"; + }; + }; + PackageDeprecationManager = buildPerlPackage { name = "Package-DeprecationManager-0.13"; src = fetchurl { @@ -7541,11 +7605,15 @@ let self = _self // overrides; _self = with self; { }; }; - RegexpCommon = buildPerlPackage rec { - name = "Regexp-Common-2.122"; + RegexpCommon = buildPerlPackage { + name = "Regexp-Common-2013031301"; src = fetchurl { - url = "mirror://cpan/authors/id/A/AB/ABIGAIL/${name}.tar.gz"; - sha256 = "1mi411nfsx58nfsgjsbyck50x9d0yfvwqpw63iavajlpx1z38n8r"; + url = mirror://cpan/authors/id/A/AB/ABIGAIL/Regexp-Common-2013031301.tar.gz; + sha256 = "729a8198d264aa64ecbb233ff990507f97fbb66bda746b95f3286f50f5f25c84"; + }; + meta = { + description = "Provide commonly requested regular expressions"; + license = "mit"; }; }; @@ -9080,11 +9148,17 @@ let self = _self // overrides; _self = with self; { propagatedBuildInputs = [ProbePerl IPCRun3]; }; - TestSharedFork = buildPerlPackage rec { - name = "Test-SharedFork-0.18"; + TestSharedFork = buildPerlPackage { + name = "Test-SharedFork-0.29"; src = fetchurl { - url = "mirror://cpan/authors/id/T/TO/TOKUHIROM/${name}.tar.gz"; - sha256 = "1wc41jzi780w75m2ry1038mzxyz7386r8rmhbnmj3krcdxy676cc"; + url = mirror://cpan/authors/id/E/EX/EXODIST/Test-SharedFork-0.29.tar.gz; + sha256 = "63af7788cc35b9b7e6fa37c61220ca66abd6364d8bb90c20038e3d8241988a6e"; + }; + buildInputs = [ TestRequires ]; + meta = { + homepage = https://github.com/tokuhirom/Test-SharedFork; + description = "Fork test"; + license = "perl"; }; }; @@ -9725,10 +9799,15 @@ let self = _self // overrides; _self = with self; { }; UNIVERSALcan = buildPerlPackage { - name = "UNIVERSAL-can-1.12"; + name = "UNIVERSAL-can-1.20140328"; src = fetchurl { - url = mirror://cpan/authors/id/C/CH/CHROMATIC/UNIVERSAL-can-1.12.tar.gz; - sha256 = "1abadbgcy11cmlmj9qf1v73ycic1qhysxv5xx81h8s4p81alialr"; + url = mirror://cpan/authors/id/C/CH/CHROMATIC/UNIVERSAL-can-1.20140328.tar.gz; + sha256 = "522da9f274786fe2cba99bc77cc1c81d2161947903d7fad10bd62dfb7f11990f"; + }; + meta = { + homepage = https://github.com/chromatic/UNIVERSAL-can; + description = "Work around buggy code calling UNIVERSAL::can() as a function"; + license = "perl"; }; }; @@ -10256,10 +10335,10 @@ let self = _self // overrides; _self = with self; { }; YAMLLibYAML = buildPerlPackage rec { - name = "YAML-LibYAML-0.41"; + name = "YAML-LibYAML-0.52"; src = fetchurl { url = "mirror://cpan/authors/id/I/IN/INGY/${name}.tar.gz"; - sha256 = "1kj506lpg3fhqq0726p6y2h7pk24l6xihfyhqqsf8gd6lckl8rcs"; + sha256 = "14qajsfbi2syjz38iynj8c6qf0rv1zmy71kydzvvg9kcq1ib3h86"; }; }; From 07bf146b301a3b5ee03e3d9c76c3e310b66da8f5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Sat, 8 Nov 2014 21:21:36 +0100 Subject: [PATCH 050/937] gtkmm and related *mm updates Also enableParallelBuilding for gtkmm3. --- pkgs/development/libraries/cairomm/default.nix | 6 +++--- pkgs/development/libraries/glibmm/default.nix | 6 +++--- pkgs/development/libraries/gtkmm/3.x.nix | 7 ++++--- 3 files changed, 10 insertions(+), 9 deletions(-) diff --git a/pkgs/development/libraries/cairomm/default.nix b/pkgs/development/libraries/cairomm/default.nix index f21abedc1f52..990d44dfef8e 100644 --- a/pkgs/development/libraries/cairomm/default.nix +++ b/pkgs/development/libraries/cairomm/default.nix @@ -1,15 +1,15 @@ { fetchurl, stdenv, pkgconfig, cairo, x11, fontconfig, freetype, libsigcxx }: stdenv.mkDerivation rec { - name = "cairomm-1.10.0"; + name = "cairomm-1.11.2"; src = fetchurl { url = "http://cairographics.org/releases/${name}.tar.gz"; - sha256 = "13rrp96px95m6xnvmsaqb0wcqsnizg3bz334k0yhlyxf7v29d386"; + sha1 = "35e190a03f760924bece5dc1204cc36b3583c806"; }; buildInputs = [ pkgconfig ]; - + propagatedBuildInputs = [ cairo x11 fontconfig freetype libsigcxx ]; meta = { diff --git a/pkgs/development/libraries/glibmm/default.nix b/pkgs/development/libraries/glibmm/default.nix index 66fb0179489c..c0f0983d73df 100644 --- a/pkgs/development/libraries/glibmm/default.nix +++ b/pkgs/development/libraries/glibmm/default.nix @@ -1,15 +1,15 @@ { stdenv, fetchurl, pkgconfig, glib, libsigcxx }: let - ver_maj = "2.38"; - ver_min = "1"; + ver_maj = "2.42"; + ver_min = "0"; in stdenv.mkDerivation rec { name = "glibmm-${ver_maj}.${ver_min}"; src = fetchurl { url = "mirror://gnome/sources/glibmm/${ver_maj}/${name}.tar.xz"; - sha256 = "18n4czi6lh4ncj54apxms18xn9k8pmrp2ba9sxn0sk9w3pp2bja9"; + sha256 = "985083d97378d234da27a7243587cc0d186897a4b2d3c1286f794089be1a3397"; }; nativeBuildInputs = [ pkgconfig ]; diff --git a/pkgs/development/libraries/gtkmm/3.x.nix b/pkgs/development/libraries/gtkmm/3.x.nix index 47057b819e0b..2d5798186c42 100644 --- a/pkgs/development/libraries/gtkmm/3.x.nix +++ b/pkgs/development/libraries/gtkmm/3.x.nix @@ -1,21 +1,22 @@ { stdenv, fetchurl, pkgconfig, gtk3, glibmm, cairomm, pangomm, atkmm }: let - ver_maj = "3.11"; # unstable version, but ATM no stable builds with gtk-3.12 and this is the version used in GNOME-3.12 "stable" - ver_min = "9"; + ver_maj = "3.12"; + ver_min = "0"; in stdenv.mkDerivation rec { name = "gtkmm-${ver_maj}.${ver_min}"; src = fetchurl { url = "mirror://gnome/sources/gtkmm/${ver_maj}/${name}.tar.xz"; - sha256 = "04yji82prijlwpd3blx0am1ikjy7y7ih7jd628dywdjbbfq42920"; + sha256 = "86c526ceec15d889996822128d566748bb36f70cf5a2c270530dfc546a2574e1"; }; nativeBuildInputs = [ pkgconfig ]; propagatedBuildInputs = [ glibmm gtk3 atkmm cairomm pangomm ]; + enableParallelBuilding = true; doCheck = true; meta = { From e368ca20c91843396f0e418537fdd841cd944439 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Tue, 25 Nov 2014 00:36:20 +0100 Subject: [PATCH 051/937] Fix old Go versions http://hydra.nixos.org/build/17432147 http://hydra.nixos.org/build/17439772 --- pkgs/development/compilers/go/1.1.nix | 2 ++ pkgs/development/compilers/go/1.2.nix | 2 ++ 2 files changed, 4 insertions(+) diff --git a/pkgs/development/compilers/go/1.1.nix b/pkgs/development/compilers/go/1.1.nix index 14ea73c23840..11640f2393d2 100644 --- a/pkgs/development/compilers/go/1.1.nix +++ b/pkgs/development/compilers/go/1.1.nix @@ -17,6 +17,8 @@ stdenv.mkDerivation { buildInputs = [ bison glibc bash makeWrapper ]; + NIX_CFLAGS_COMPILE = "-Wno-error=cpp"; + # I'm not sure what go wants from its 'src', but the go installation manual # describes an installation keeping the src. preUnpack = '' diff --git a/pkgs/development/compilers/go/1.2.nix b/pkgs/development/compilers/go/1.2.nix index d5ca3bf812e9..8e6f6d3f51ee 100644 --- a/pkgs/development/compilers/go/1.2.nix +++ b/pkgs/development/compilers/go/1.2.nix @@ -16,6 +16,8 @@ stdenv.mkDerivation { buildInputs = [ bison glibc bash makeWrapper ]; + NIX_CFLAGS_COMPILE = "-Wno-error=cpp"; + # I'm not sure what go wants from its 'src', but the go installation manual # describes an installation keeping the src. preUnpack = '' From 5c01205bf767b4dd3230a4085f2f03acfe2ba2a1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Tue, 25 Nov 2014 01:03:29 +0100 Subject: [PATCH 052/937] mesa: use upstream patch to fix doCheck again --- pkgs/development/libraries/mesa/default.nix | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/mesa/default.nix b/pkgs/development/libraries/mesa/default.nix index 4536316b8018..a3b40eb612c2 100644 --- a/pkgs/development/libraries/mesa/default.nix +++ b/pkgs/development/libraries/mesa/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchurl, pkgconfig, intltool, flex, bison, autoreconfHook, substituteAll +{ stdenv, fetchurl, fetchpatch, pkgconfig, intltool, flex, bison, autoreconfHook, substituteAll , python, libxml2Python, file, expat, makedepend , libdrm, xorg, wayland, udev, llvm, libffi , libvdpau, libelf @@ -45,6 +45,12 @@ stdenv.mkDerivation { ./glx_ro_text_segm.patch # fix for grsecurity/PaX # TODO: revive ./dricore-gallium.patch when it gets ported (from Ubuntu), # as it saved ~35 MB in $drivers; watch https://launchpad.net/ubuntu/+source/mesa/+changelog + (fetchpatch { + name = "fix-lp_test_arit.diff"; + url = "http://cgit.freedesktop.org/mesa/mesa/patch/" + + "?id=8148a06b8fdb734f7f9a11ce787ee6505939fdaa"; + sha256 = "0k2bnl7d28nx2y88jchw6jj4f3xfdjjvz4vpvhc40060c2iz8fla"; + }) ] ++ optional stdenv.isLinux (substituteAll { src = ./dlopen-absolute-paths.diff; @@ -103,7 +109,7 @@ stdenv.mkDerivation { ; enableParallelBuilding = true; - #doCheck = true; # https://bugs.freedesktop.org/show_bug.cgi?id=67672 + doCheck = true; # move gallium-related stuff to $drivers, so $out doesn't depend on LLVM; # also move libOSMesa to $osmesa, as it's relatively big From 9adc6fe2766669330c5287a276e93c4777fed902 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Tue, 25 Nov 2014 15:43:04 +0100 Subject: [PATCH 053/937] docbook5: Install a catalog.xml --- .../sgml+xml/schemas/docbook-5.0/builder.sh | 17 ----------- .../sgml+xml/schemas/docbook-5.0/default.nix | 28 +++++++++++++++++-- 2 files changed, 25 insertions(+), 20 deletions(-) delete mode 100644 pkgs/data/sgml+xml/schemas/docbook-5.0/builder.sh diff --git a/pkgs/data/sgml+xml/schemas/docbook-5.0/builder.sh b/pkgs/data/sgml+xml/schemas/docbook-5.0/builder.sh deleted file mode 100644 index 96ad77eaa57c..000000000000 --- a/pkgs/data/sgml+xml/schemas/docbook-5.0/builder.sh +++ /dev/null @@ -1,17 +0,0 @@ -source $stdenv/setup - -unpackFile $src - -cd docbook-* - -mkdir -p $out/xml/rng -cp -prv rng $out/xml/rng/docbook - -mkdir -p $out/xml/dtd -cp -prv dtd $out/xml/dtd/docbook - -mkdir -p $out/share/doc -cp -prv docs $out/share/doc/docbook - -mkdir -p $out/share/docbook -cp -prv tools $out/share/docbook/ diff --git a/pkgs/data/sgml+xml/schemas/docbook-5.0/default.nix b/pkgs/data/sgml+xml/schemas/docbook-5.0/default.nix index 1e0103a93059..a9d09945d7ff 100644 --- a/pkgs/data/sgml+xml/schemas/docbook-5.0/default.nix +++ b/pkgs/data/sgml+xml/schemas/docbook-5.0/default.nix @@ -1,13 +1,35 @@ -{stdenv, fetchurl, unzip}: +{ lib, stdenv, fetchurl, unzip }: stdenv.mkDerivation { name = "docbook5-5.0"; - builder = ./builder.sh; src = fetchurl { url = http://www.docbook.org/xml/5.0/docbook-5.0.zip; sha256 = "13i04dkd709f0p5f2413sf2y9321pfi4y85ynf8wih6ryphnbk9x"; }; - buildInputs = [unzip]; + buildInputs = [ unzip ]; + + installPhase = + '' + dst=$out/share/xml/docbook-5.0 + mkdir -p $dst + cp -prv * $dst/ + + substituteInPlace $dst/catalog.xml --replace 'uri="' "uri=\"$dst/" + + rm -rf $dst/docs $dst/ChangeLog + + # Backwards compatibility. Will remove eventually. + mkdir -p $out/xml/rng $out/xml/dtd + ln -s $dst/rng $out/xml/rng/docbook + ln -s $dst/dtd $out/xml/dtd/docbook + ''; + + meta = { + description = "Schemas for DocBook 5.0, a semantic markup language for technical documentation"; + homepage = http://docbook.org/xml/5.0/; + maintainers = [ lib.maintainers.eelco ]; + platforms = lib.platforms.all; + }; } From e611215f5c1b7ca19785ec462e696dff103847b0 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Tue, 25 Nov 2014 16:02:19 +0100 Subject: [PATCH 054/937] Move finding XML catalogs into a separate setup hook This is because libxml/libxslt are not the only implementations that respect $XML_CATALOG_FILES. Also, look in share/xml for catalogs (in addition to the now-deprecated xml/dtd and xml/xsl). --- .../setup-hooks/find-xml-catalogs.sh | 22 +++++++++++++++++++ .../development/libraries/libxml2/default.nix | 6 ++--- .../libraries/libxml2/setup-hook.sh | 19 ---------------- pkgs/top-level/all-packages.nix | 5 ++++- 4 files changed, 28 insertions(+), 24 deletions(-) create mode 100644 pkgs/build-support/setup-hooks/find-xml-catalogs.sh delete mode 100644 pkgs/development/libraries/libxml2/setup-hook.sh diff --git a/pkgs/build-support/setup-hooks/find-xml-catalogs.sh b/pkgs/build-support/setup-hooks/find-xml-catalogs.sh new file mode 100644 index 000000000000..b742d5a8ffd9 --- /dev/null +++ b/pkgs/build-support/setup-hooks/find-xml-catalogs.sh @@ -0,0 +1,22 @@ +addXMLCatalogs () { + local d i + # ‘xml/dtd’ and ‘xml/xsl’ are deprecated. Catalogs should be + # installed underneath ‘share/xml’. + for d in $1/share/xml $1/xml/dtd $1/xml/xsl; do + if [ -d $d ]; then + for i in $(find $d -name catalog.xml); do + XML_CATALOG_FILES+=" $i" + done + fi + done +} + +if [ -z "$libxmlHookDone" ]; then + libxmlHookDone=1 + + # Set up XML_CATALOG_FILES. An empty initial value prevents + # xmllint and xsltproc from looking in /etc/xml/catalog. + export XML_CATALOG_FILES + if [ -z "$XML_CATALOG_FILES" ]; then XML_CATALOG_FILES=" "; fi + envHooks+=(addXMLCatalogs) +fi diff --git a/pkgs/development/libraries/libxml2/default.nix b/pkgs/development/libraries/libxml2/default.nix index 8dfe60f9026d..434b76a09eae 100644 --- a/pkgs/development/libraries/libxml2/default.nix +++ b/pkgs/development/libraries/libxml2/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchurl, zlib, xz, python ? null, pythonSupport ? true }: +{ stdenv, fetchurl, zlib, xz, python ? null, pythonSupport ? true, findXMLCatalogs }: assert pythonSupport -> python != null; @@ -22,9 +22,7 @@ stdenv.mkDerivation (rec { # RUNPATH for that, leading to undefined references for its users. ++ (stdenv.lib.optional stdenv.isFreeBSD xz); - propagatedBuildInputs = [ zlib ]; - - setupHook = ./setup-hook.sh; + propagatedBuildInputs = [ zlib findXMLCatalogs ]; passthru = { inherit pythonSupport version; }; diff --git a/pkgs/development/libraries/libxml2/setup-hook.sh b/pkgs/development/libraries/libxml2/setup-hook.sh deleted file mode 100644 index 4acdd25a6b28..000000000000 --- a/pkgs/development/libraries/libxml2/setup-hook.sh +++ /dev/null @@ -1,19 +0,0 @@ -addXMLCatalogs () { - for kind in dtd xsl; do - if test -d $1/xml/$kind; then - for i in $(find $1/xml/$kind -name catalog.xml); do - export XML_CATALOG_FILES="$XML_CATALOG_FILES $i" - done - fi - done -} - -if test -z "$libxmlHookDone"; then - libxmlHookDone=1 - - # Set up XML_CATALOG_FILES. An empty initial value prevents - # xmllint and xsltproc from looking in /etc/xml/catalog. - export XML_CATALOG_FILES - if test -z "$XML_CATALOG_FILES"; then XML_CATALOG_FILES=" "; fi - envHooks+=(addXMLCatalogs) -fi diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index bebdfab1b546..c81db70d1b10 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -437,7 +437,10 @@ let ../build-support/setup-hooks/make-coverage-analysis-report.sh; # intended to be used like nix-build -E 'with {}; enableDebugging fooPackage' - enableDebugging = pkg : pkg.override { stdenv = stdenvAdapters.keepDebugInfo pkg.stdenv; }; + enableDebugging = pkg: pkg.override { stdenv = stdenvAdapters.keepDebugInfo pkg.stdenv; }; + + findXMLCatalogs = makeSetupHook { } ../build-support/setup-hooks/find-xml-catalogs.sh; + ### TOOLS From 880616c353630fabb54ca33f8ef61b6be7274b13 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Tue, 25 Nov 2014 16:18:53 +0100 Subject: [PATCH 055/937] docbook-xsl-ns: Cleanup --- .../stylesheets/xslt/docbook-xsl-ns/default.nix | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/pkgs/data/sgml+xml/stylesheets/xslt/docbook-xsl-ns/default.nix b/pkgs/data/sgml+xml/stylesheets/xslt/docbook-xsl-ns/default.nix index bfe454a49fe1..36d2cc48c9f0 100644 --- a/pkgs/data/sgml+xml/stylesheets/xslt/docbook-xsl-ns/default.nix +++ b/pkgs/data/sgml+xml/stylesheets/xslt/docbook-xsl-ns/default.nix @@ -1,8 +1,8 @@ -{stdenv, fetchurl}: +{ lib, stdenv, fetchurl }: stdenv.mkDerivation rec { name = "docbook-xsl-ns-1.78.1"; - + src = fetchurl { url = "mirror://sourceforge/docbook/${name}.tar.bz2"; sha256 = "1x3sc0axk9z3i6n0jhlsmzlmb723a4sjgslm9g12by6phirdx3ng"; @@ -12,13 +12,20 @@ stdenv.mkDerivation rec { installPhase = '' + dst=$out/share/xml/docbook-xsl-ns + mkdir -p $dst + rm -rf RELEASE* README* INSTALL TODO NEWS* BUGS install.sh svn* tools log Makefile tests extensions webhelp + mv * $dst/ + + # Backwards compatibility. Will remove eventually. mkdir -p $out/xml/xsl - cd .. - mv docbook-xsl-ns-* $out/xml/xsl/docbook + ln -s $dst $out/xml/xsl/docbook ''; meta = { homepage = http://wiki.docbook.org/topic/DocBookXslStylesheets; description = "XSL stylesheets for transforming DocBook documents into HTML and various other formats"; + maintainers = [ lib.maintainers.eelco ]; + platforms = lib.platforms.all; }; } From 1e5242931b938e2e5ae79ee7c7d2cf567024090b Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Tue, 25 Nov 2014 17:52:43 +0100 Subject: [PATCH 056/937] libxslt: Fix propagation of the libxml2 setup hook --- pkgs/development/libraries/libxslt/default.nix | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/pkgs/development/libraries/libxslt/default.nix b/pkgs/development/libraries/libxslt/default.nix index fd84c53c88fd..c5b91f3c4910 100644 --- a/pkgs/development/libraries/libxslt/default.nix +++ b/pkgs/development/libraries/libxslt/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchurl, libxml2 }: +{ stdenv, fetchurl, libxml2, findXMLCatalogs }: stdenv.mkDerivation rec { name = "libxslt-1.1.28"; @@ -10,6 +10,8 @@ stdenv.mkDerivation rec { buildInputs = [ libxml2 ]; + propagatedBuildInputs = [ findXMLCatalogs ]; + patches = stdenv.lib.optionals stdenv.isSunOS [ ./patch-ah.patch ]; configureFlags = [ @@ -21,11 +23,6 @@ stdenv.mkDerivation rec { "--without-debugger" ]; - postInstall = '' - mkdir -p $out/nix-support - ln -s ${libxml2}/nix-support/setup-hook $out/nix-support/ - ''; - meta = { homepage = http://xmlsoft.org/XSLT/; description = "A C library and tools to do XSL transformations"; From 53fc3e178f388ffec10a6c6f1ea77a56888b0bc2 Mon Sep 17 00:00:00 2001 From: Igor Pashev Date: Wed, 26 Nov 2014 14:05:05 +0300 Subject: [PATCH 057/937] ImageMagick: update (close #5133) --- pkgs/applications/graphics/ImageMagick/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/graphics/ImageMagick/default.nix b/pkgs/applications/graphics/ImageMagick/default.nix index 69bc2006666c..8ae4bc2dd1b1 100644 --- a/pkgs/applications/graphics/ImageMagick/default.nix +++ b/pkgs/applications/graphics/ImageMagick/default.nix @@ -20,7 +20,7 @@ let - version = "6.8.9-8"; + version = "6.9.0-0"; arch = if stdenv.system == "i686-linux" then "i686" @@ -34,7 +34,7 @@ stdenv.mkDerivation rec { src = fetchurl { url = "mirror://imagemagick/releases/${name}.tar.xz"; - sha256 = "1c792hbwi308lm9xkml319xaa4w3bz6hwy6i92jwrm7kqr4h8di7"; + sha256 = "1dmrl5x63msdnxsf4cmhz5v4ard2z3jrgp2zhqlb27399j81qcqj"; }; enableParallelBuilding = true; From 3ef186bdb415ba9324d461ff0c182d1e97c7a3d2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Wed, 26 Nov 2014 22:03:45 +0100 Subject: [PATCH 058/937] fontconfig: drop infinality (for now), close #5140 Also the simplify the expression when we rebuild anyway. --- .../libraries/fontconfig/default.nix | 22 +++++-------------- 1 file changed, 6 insertions(+), 16 deletions(-) diff --git a/pkgs/development/libraries/fontconfig/default.nix b/pkgs/development/libraries/fontconfig/default.nix index bb8289b661ee..158c3dcf07dd 100644 --- a/pkgs/development/libraries/fontconfig/default.nix +++ b/pkgs/development/libraries/fontconfig/default.nix @@ -23,22 +23,12 @@ stdenv.mkDerivation rec { sha256 = "16baa4g5lswkyjlyf1h5lwc0zjap7c4d8grw79349a5w6dsl8qnw"; }; - infinality_patch = - let subvers = "1"; - in fetchurl { - url = http://www.infinality.net/fedora/linux/zips/fontconfig-infinality-1-20130104_1.tar.bz2; - sha256 = "1fm5xx0mx2243jrq5rxk4v0ajw2nawpj23399h710bx6hd1rviq7"; - } - ; - patches = [ - (fetchpatch ({ - url = "http://cgit.freedesktop.org/fontconfig/patch/?id=f44157c809d280e2a0ce87fb078fc4b278d24a67"; - sha256 = "19s5irclg4irj2yxd7xw9yikbazs9263px8qbv4r21asw06nfalv"; - } // stdenv.lib.optionalAttrs (!stdenv.isLinux) { - name = "fc-cache-bug-77252.patch"; # TODO: collapse on mass rebuild - } - )) + (fetchpatch { + name = "fc-cache-bug-77252.patch"; # TODO: collapse on mass rebuild + url = "http://cgit.freedesktop.org/fontconfig/patch/?id=f44157c809d280e2a0ce87fb078fc4b278d24a67"; + sha256 = "19s5irclg4irj2yxd7xw9yikbazs9263px8qbv4r21asw06nfalv"; + }) (substituteAll { src = ./config-compat.patch; inherit configVersion; @@ -72,7 +62,7 @@ stdenv.mkDerivation rec { installFlags = "fc_cachedir=$(TMPDIR)/dummy RUN_FC_CACHE_TEST=false"; postInstall = '' - cd "$out/etc/fonts" && tar xvf ${infinality_patch} + cd "$out/etc/fonts" rm conf.d/{50-user,51-local}.conf "${libxslt}/bin/xsltproc" --stringparam fontDirectories "${fontbhttf}" \ --stringparam fontconfig "$out" \ From a68c1adc35920fa9ee7faf4311f2ad5311a92e99 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Wed, 26 Nov 2014 23:37:50 +0100 Subject: [PATCH 059/937] *: fix builds by disregarding warning from new glibc Says: #warning "_BSD_SOURCE and _SVID_SOURCE are deprecated, use _DEFAULT_SOURCE" CC: #4803. There will likely appear more of these errors on Hydra in time. --- pkgs/applications/networking/browsers/netsurf/libwapcaplet.nix | 2 ++ pkgs/development/compilers/go/default.nix | 2 ++ pkgs/development/tools/misc/tcptrack/default.nix | 2 ++ pkgs/os-specific/linux/kernel/perf.nix | 2 ++ pkgs/tools/networking/inadyn/default.nix | 2 ++ 5 files changed, 10 insertions(+) diff --git a/pkgs/applications/networking/browsers/netsurf/libwapcaplet.nix b/pkgs/applications/networking/browsers/netsurf/libwapcaplet.nix index 8d19d1c1ef24..5aa15d7b80d0 100644 --- a/pkgs/applications/networking/browsers/netsurf/libwapcaplet.nix +++ b/pkgs/applications/networking/browsers/netsurf/libwapcaplet.nix @@ -7,6 +7,8 @@ stdenv.mkDerivation { (fetchurl { url = "http://mawercer.de/~nix/repos/libwapcaplet-9721.tar.gz"; sha256 = "7f9f32ca772c939d67f3bc8bf0705544c2b2950760da3fe6a4e069ad0f77d91a"; }); # END + NIX_CFLAGS_COMPILE = "-Wno-error=cpp"; + installPhase = "make PREFIX=$out install"; buildInputs = []; diff --git a/pkgs/development/compilers/go/default.nix b/pkgs/development/compilers/go/default.nix index e289ce14ee11..b35159c10e79 100644 --- a/pkgs/development/compilers/go/default.nix +++ b/pkgs/development/compilers/go/default.nix @@ -60,6 +60,8 @@ stdenv.mkDerivation { else throw "Unsupported system"; GOARM = stdenv.lib.optionalString (stdenv.system == "armv5tel-linux") "5"; + NIX_CFLAGS_COMPILE = "-Wno-error=cpp"; + installPhase = '' mkdir -p "$out/bin" export GOROOT="$(pwd)/" diff --git a/pkgs/development/tools/misc/tcptrack/default.nix b/pkgs/development/tools/misc/tcptrack/default.nix index 645bd0611777..a6e40a4809ab 100644 --- a/pkgs/development/tools/misc/tcptrack/default.nix +++ b/pkgs/development/tools/misc/tcptrack/default.nix @@ -12,6 +12,8 @@ stdenv.mkDerivation rec { buildInputs = [ ncurses libpcap ]; + NIX_CFLAGS_COMPILE = "-Wno-error=cpp"; + meta = with stdenv.lib; { description = "libpcap based program for live TCP connection monitoring"; homepage = http://www.rhythm.cx/~steve/devel/tcptrack/; # dead link diff --git a/pkgs/os-specific/linux/kernel/perf.nix b/pkgs/os-specific/linux/kernel/perf.nix index 8b8f7e1e78db..be375ea310f1 100644 --- a/pkgs/os-specific/linux/kernel/perf.nix +++ b/pkgs/os-specific/linux/kernel/perf.nix @@ -25,6 +25,8 @@ stdenv.mkDerivation { buildInputs = [ elfutils python perl newt slang pkgconfig] ++ stdenv.lib.optional withGtk gtk; + NIX_CFLAGS_COMPILE = "-Wno-error=cpp"; + installFlags = "install install-man ASCIIDOC8=1"; inherit elfutils; diff --git a/pkgs/tools/networking/inadyn/default.nix b/pkgs/tools/networking/inadyn/default.nix index a821684e5b4b..7e4d5fbe5f05 100644 --- a/pkgs/tools/networking/inadyn/default.nix +++ b/pkgs/tools/networking/inadyn/default.nix @@ -17,6 +17,8 @@ stdenv.mkDerivation { buildInputs = [ gnutls ]; + NIX_CFLAGS_COMPILE = "-Wno-error=cpp"; + meta = { homepage = http://inadyn.sourceforge.net/; description = "Free dynamic DNS client"; From 130c324809dea4b735a521790d1afb42d8cfb76b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Wed, 26 Nov 2014 23:52:32 +0100 Subject: [PATCH 060/937] rsnapshot: fix build by using older perl --- pkgs/top-level/all-packages.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 4904f053d345..9dcc7a9bc528 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -2256,6 +2256,7 @@ let rng_tools = callPackage ../tools/security/rng-tools { }; rsnapshot = callPackage ../tools/backup/rsnapshot { + perl = perl516; # fails to create docs: POD document had syntax errors # For the `logger' command, we can use either `utillinux' or # GNU Inetutils. The latter is more portable. logger = inetutils; From 75d7b9c0c34b5266a9d6a76d42abb4acc5e0e94a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Wed, 26 Nov 2014 23:59:03 +0100 Subject: [PATCH 061/937] stlport: mark as broken (it's unused anyway) I seem unable to fix the error. --- pkgs/development/libraries/stlport/default.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/pkgs/development/libraries/stlport/default.nix b/pkgs/development/libraries/stlport/default.nix index 5588646e53ad..30f87d36ddf9 100644 --- a/pkgs/development/libraries/stlport/default.nix +++ b/pkgs/development/libraries/stlport/default.nix @@ -21,5 +21,6 @@ stdenv.mkDerivation rec { description = "An implementation of the C++ Standard Library"; homepage = http://sourceforge.net/projects/stlport/; license = stdenv.lib.licenses.free; # seems BSD-like + broken = true; # probably glibc-2.20 -related issue }; } From c52db08aa02ac6f326624331305313c7056e3b85 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Thu, 27 Nov 2014 00:51:35 +0100 Subject: [PATCH 062/937] sdcc: fix build with glibc-2.20 (from upstream) --- pkgs/development/compilers/sdcc/default.nix | 2 ++ 1 file changed, 2 insertions(+) diff --git a/pkgs/development/compilers/sdcc/default.nix b/pkgs/development/compilers/sdcc/default.nix index fe293fbc4b8d..0650fae917a6 100644 --- a/pkgs/development/compilers/sdcc/default.nix +++ b/pkgs/development/compilers/sdcc/default.nix @@ -16,6 +16,8 @@ stdenv.mkDerivation rec { ${if gputils == null then "--disable-pic14-port --disable-pic16-port" else ""} ''; + NIX_CFLAGS_COMPILE = "--std=c99"; # http://sourceforge.net/p/sdcc/code/9106/ + meta = with stdenv.lib; { description = "Small Device C Compiler"; longDescription = '' From 607c64fe5517d9dfa8c87025107a03a371ef73a3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Thu, 27 Nov 2014 01:18:49 +0100 Subject: [PATCH 063/937] pthread-man-pages: fix build by using older perl --- pkgs/top-level/all-packages.nix | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 9dcc7a9bc528..d41afa7b0219 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -8886,7 +8886,9 @@ let proggyfonts = callPackage ../data/fonts/proggyfonts { }; - pthreadmanpages = callPackage ../data/documentation/pthread-man-pages { }; + pthreadmanpages = callPackage ../data/documentation/pthread-man-pages { + perl = perl516; # syntax error at troffprepro line 49, near "do subst(" + }; shared_mime_info = callPackage ../data/misc/shared-mime-info { }; From abcb355453805f1f5078e0e16c930929047163dd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Thu, 27 Nov 2014 01:19:24 +0100 Subject: [PATCH 064/937] restund, openssh_hpn: mark as broken --- pkgs/servers/restund/default.nix | 1 + pkgs/tools/networking/openssh/default.nix | 1 + 2 files changed, 2 insertions(+) diff --git a/pkgs/servers/restund/default.nix b/pkgs/servers/restund/default.nix index d6952e9700ee..cf07d0e6e3e1 100644 --- a/pkgs/servers/restund/default.nix +++ b/pkgs/servers/restund/default.nix @@ -28,5 +28,6 @@ stdenv.mkDerivation rec { downloadPage = "http://www.creytiv.com/pub/"; updateWalker = true; downloadURLRegexp = "/restund-.*[.]tar[.]"; + broken = true; # probably due to glibc-2.20 }; } diff --git a/pkgs/tools/networking/openssh/default.nix b/pkgs/tools/networking/openssh/default.nix index 05b97bdcaacb..19957de5d1c8 100644 --- a/pkgs/tools/networking/openssh/default.nix +++ b/pkgs/tools/networking/openssh/default.nix @@ -75,5 +75,6 @@ stdenv.mkDerivation rec { license = stdenv.lib.licenses.bsd2; platforms = platforms.unix; maintainers = with maintainers; [ eelco ]; + broken = hpnSupport; # probably after 6.7 update }; } From 7ef5798bc49f1534a4680699fe60f4e7bea66968 Mon Sep 17 00:00:00 2001 From: Jaka Hudoklin Date: Thu, 27 Nov 2014 12:41:15 +0100 Subject: [PATCH 065/937] pythonPackages: add fig --- pkgs/top-level/python-packages.nix | 83 ++++++++++++++++++++++++++++++ 1 file changed, 83 insertions(+) diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index fcb7eb212a09..b2f74af43332 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -2123,6 +2123,21 @@ let }; }; + dockerpty = buildPythonPackage rec { + name = "dockerpty-0.3.2"; + + src = pkgs.fetchurl { + url = "https://pypi.python.org/packages/source/d/dockerpty/${name}.tar.gz"; + md5 = "1f97b24d2f4b2c345f176f91655002dd"; + }; + + meta = { + description = "Functionality needed to operate the pseudo-tty (PTY) allocated to a docker container"; + homepage = https://github.com/d11wtq/dockerpty; + license = licenses.asl20; + }; + }; + docker_registry_core = buildPythonPackage rec { name = "docker-registry-core-2.0.3"; disabled = isPy3k; @@ -2175,6 +2190,20 @@ let }; }; + docopt = buildPythonPackage rec { + name = "docopt-0.6.2"; + + src = pkgs.fetchurl { + url = "https://pypi.python.org/packages/source/d/docopt/${name}.tar.gz"; + md5 = "4bc74561b37fad5d3e7d037f82a4c3b1"; + }; + + meta = { + description = "Pythonic argument parser, that will make you smile"; + homepage = http://docopt.org/; + license = licenses.mit; + }; + }; dogpile_cache = buildPythonPackage rec { name = "dogpile.cache-0.5.4"; @@ -3838,6 +3867,45 @@ let }; }); + fig = buildPythonPackage rec { + name = "fig-1.0.1"; + disabled = isPy3k || isPyPy; + + src = pkgs.fetchurl { + url = "https://pypi.python.org/packages/source/f/fig/${name}.tar.gz"; + md5 = "e1c82296fe2362fae21b3cb0dfee8cb2"; + }; + + propagatedBuildInputs = with self; [ + six requests2 pyyaml texttable docopt + (dockerpty.override { + src = pkgs.fetchurl { + url = "https://pypi.python.org/packages/source/d/dockerpty/dockerpty-0.3.2.tar.gz"; + md5 = "1f97b24d2f4b2c345f176f91655002dd"; + }; + }) + (docker.override { + src = pkgs.fetchurl { + url = "https://pypi.python.org/packages/source/d/docker-py/docker-py-0.5.3.tar.gz"; + md5 = "809b7b8c144f5e37787e72b030ee353f"; + }; + }) + (websocket_client.override { + src = pkgs.fetchurl { + url = "https://pypi.python.org/packages/source/w/websocket-client/websocket-client-0.11.0.tar.gz"; + md5 = "fcffbb5ac10941d9ace416d14d1e3ec8"; + }; + }) + ]; + + doCheck = false; + + meta = { + homepage = http://www.fig.sh/; + description = "Fast, isolated development environments using Docker"; + license = stdenv.lib.licenses.asl20; + }; + }; flake8 = buildPythonPackage (rec { name = "flake8-2.1.0"; @@ -9582,6 +9650,21 @@ let }; }; + texttable = self.buildPythonPackage rec { + name = "texttable-0.8.1"; + + src = pkgs.fetchurl { + url = "https://pypi.python.org/packages/source/t/texttable/${name}.tar.gz"; + md5 = "4fe37704f16ecf424b91e122defedd7e"; + }; + + meta = with stdenv.lib; { + description = "A module to generate a formatted text table, using ASCII characters"; + homepage = http://foutaise.org/code/; + license = licenses.lgpl2; + }; + }; + tmdb3 = buildPythonPackage rec { name = "tmdb3-${version}"; version = "0.6.17"; From 06c6d4696d47e79b30a8d4ec4cd2dc7f4e135732 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Fri, 28 Nov 2014 18:40:19 +0100 Subject: [PATCH 066/937] *: fix builds by disregarding warning from new glibc Also, in case of collectd, the -lgcc_s shouldn't be needed anymore, as the library is in ${glibc}/lib/ now, which is practically always on RPATH. In case of seyren it was some stdenv change uncovering the mistake of putting src into buildInputs. --- pkgs/applications/misc/monero/default.nix | 3 +++ .../networking/browsers/mozilla-plugins/fribid/default.nix | 2 ++ pkgs/applications/networking/browsers/netsurf/libsvgtiny.nix | 2 ++ pkgs/os-specific/linux/disk-indicator/default.nix | 2 ++ pkgs/servers/monitoring/seyren/default.nix | 2 +- pkgs/servers/sip/freeswitch/default.nix | 2 ++ pkgs/servers/sql/mariadb/default.nix | 2 ++ pkgs/tools/system/collectd/default.nix | 4 ++-- 8 files changed, 16 insertions(+), 3 deletions(-) diff --git a/pkgs/applications/misc/monero/default.nix b/pkgs/applications/misc/monero/default.nix index 1fe5406384f8..6af9b7dc267d 100644 --- a/pkgs/applications/misc/monero/default.nix +++ b/pkgs/applications/misc/monero/default.nix @@ -16,6 +16,9 @@ stdenv.mkDerivation { # these tests take a long time and don't # always complete in the build environment postPatch = "sed -i '/add_subdirectory(tests)/d' CMakeLists.txt"; + + NIX_CFLAGS_COMPILE = "-Wno-error=cpp"; + doCheck = false; checkTarget = "test-release"; # this would be the target diff --git a/pkgs/applications/networking/browsers/mozilla-plugins/fribid/default.nix b/pkgs/applications/networking/browsers/mozilla-plugins/fribid/default.nix index 229aa4f23ba1..3b473019600f 100644 --- a/pkgs/applications/networking/browsers/mozilla-plugins/fribid/default.nix +++ b/pkgs/applications/networking/browsers/mozilla-plugins/fribid/default.nix @@ -17,6 +17,8 @@ stdenv.mkDerivation rec { ./ipc-lazytrace.patch ]; + postPatch = "substituteInPlace plugin/pluginutil.c --replace strndup strndup_"; + passthru.mozillaPlugin = "/lib/mozilla/plugins"; meta = { diff --git a/pkgs/applications/networking/browsers/netsurf/libsvgtiny.nix b/pkgs/applications/networking/browsers/netsurf/libsvgtiny.nix index 300e9965092d..1e9f74a1ffd4 100644 --- a/pkgs/applications/networking/browsers/netsurf/libsvgtiny.nix +++ b/pkgs/applications/networking/browsers/netsurf/libsvgtiny.nix @@ -7,6 +7,8 @@ stdenv.mkDerivation { (fetchurl { url = "http://mawercer.de/~nix/repos/libsvgtiny-9721.tar.gz"; sha256 = "0c4c8e357c220218a32ef789eb2ba8226a403d4c2b550d7c65f351a0af5d1a71"; }); # END + NIX_CFLAGS_COMPILE = "-Wno-error=cpp"; + installPhase = "make PREFIX=$out install"; buildInputs = [pkgconfig gperf libxml2]; diff --git a/pkgs/os-specific/linux/disk-indicator/default.nix b/pkgs/os-specific/linux/disk-indicator/default.nix index b60232a9b754..11c1e7ee8a2e 100644 --- a/pkgs/os-specific/linux/disk-indicator/default.nix +++ b/pkgs/os-specific/linux/disk-indicator/default.nix @@ -18,6 +18,8 @@ stdenv.mkDerivation { buildPhase = "make -f makefile"; + NIX_CFLAGS_COMPILE = "-Wno-error=cpp"; + installPhase = '' mkdir -p "$out/bin" cp ./disk_indicator "$out/bin/" diff --git a/pkgs/servers/monitoring/seyren/default.nix b/pkgs/servers/monitoring/seyren/default.nix index e428067ab62b..ab8365c23f81 100644 --- a/pkgs/servers/monitoring/seyren/default.nix +++ b/pkgs/servers/monitoring/seyren/default.nix @@ -11,7 +11,7 @@ stdenv.mkDerivation rec { phases = ["installPhase"]; - buildInputs = [ makeWrapper jre src ]; + buildInputs = [ makeWrapper jre ]; installPhase = '' mkdir -p "$out"/bin diff --git a/pkgs/servers/sip/freeswitch/default.nix b/pkgs/servers/sip/freeswitch/default.nix index c4a5fcc4284e..5b6ff15cb10a 100644 --- a/pkgs/servers/sip/freeswitch/default.nix +++ b/pkgs/servers/sip/freeswitch/default.nix @@ -12,6 +12,8 @@ stdenv.mkDerivation rec { buildInputs = [ ncurses curl pkgconfig gnutls readline openssl perl libjpeg libzrtpcpp ]; + NIX_CFLAGS_COMPILE = "-Wno-error=cpp"; + meta = { description = "Cross-Platform Scalable FREE Multi-Protocol Soft Switch"; homepage = http://freeswitch.org/; diff --git a/pkgs/servers/sql/mariadb/default.nix b/pkgs/servers/sql/mariadb/default.nix index 04f820223731..c0548f07dd33 100644 --- a/pkgs/servers/sql/mariadb/default.nix +++ b/pkgs/servers/sql/mariadb/default.nix @@ -17,6 +17,8 @@ stdenv.mkDerivation rec { cmakeFlags = [ "-DWITH_READLINE=yes" "-DWITH_EMBEDDED_SERVER=yes" "-DINSTALL_SCRIPTDIR=bin" ]; + NIX_CFLAGS_COMPILE = "-Wno-error=cpp"; + enableParallelBuilding = true; prePatch = '' diff --git a/pkgs/tools/system/collectd/default.nix b/pkgs/tools/system/collectd/default.nix index 4210a0a04a5a..692016153a6c 100644 --- a/pkgs/tools/system/collectd/default.nix +++ b/pkgs/tools/system/collectd/default.nix @@ -33,8 +33,6 @@ stdenv.mkDerivation rec { sha256 = "1q365zx6d1wyhv7n97bagfxqnqbhj2j14zz552nhmjviy8lj2ibm"; }; - NIX_LDFLAGS = "-lgcc_s"; # for pthread_cancel - buildInputs = [ pkgconfig curl iptables libcredis libdbi libgcrypt libmemcached cyrus_sasl libmodbus libnotify gdk_pixbuf liboping libpcap libsigrok libvirt @@ -45,6 +43,8 @@ stdenv.mkDerivation rec { # for some reason libsigrok isn't auto-detected configureFlags = stdenv.lib.optional (libsigrok != null) "--with-libsigrok"; + NIX_CFLAGS_COMPILE = "-Wno-error=cpp"; + meta = with stdenv.lib; { description = "Daemon which collects system performance statistics periodically"; homepage = http://collectd.org; From d2688fd6955ae3d215a684bd86777515fc644349 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Fri, 28 Nov 2014 18:47:03 +0100 Subject: [PATCH 067/937] weechat-dev: mark as broken Non-dev version is newer anyway. --- pkgs/applications/networking/irc/weechat/devel.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/pkgs/applications/networking/irc/weechat/devel.nix b/pkgs/applications/networking/irc/weechat/devel.nix index 34ca4b4d7c6e..a2f32e2b3d3c 100644 --- a/pkgs/applications/networking/irc/weechat/devel.nix +++ b/pkgs/applications/networking/irc/weechat/devel.nix @@ -37,5 +37,6 @@ stdenv.mkDerivation rec { license = stdenv.lib.licenses.gpl3; maintainers = with stdenv.lib.maintainers; [ lovek323 garbas the-kenny ]; platforms = stdenv.lib.platforms.unix; + broken = true; # we have a newer stable that builds }; } From e75fe2e528d745610eb4924e418aee0d85cc582f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Fri, 28 Nov 2014 20:26:22 +0100 Subject: [PATCH 068/937] cairo: pull an upstream patch to fix racket Close #5165, #5166. Also enableParallelBuilding in racket. --- pkgs/development/interpreters/racket/default.nix | 1 + pkgs/development/libraries/cairo/default.nix | 8 +++++++- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/pkgs/development/interpreters/racket/default.nix b/pkgs/development/interpreters/racket/default.nix index b626c8a1539c..af6cf4b19563 100644 --- a/pkgs/development/interpreters/racket/default.nix +++ b/pkgs/development/interpreters/racket/default.nix @@ -48,6 +48,7 @@ stdenv.mkDerivation rec { configureFlags = [ "--enable-shared" "--enable-lt=${libtool}/bin/libtool" ]; NIX_LDFLAGS = "-lgcc_s"; + enableParallelBuilding = true; postInstall = '' for p in $(ls $out/bin/) ; do diff --git a/pkgs/development/libraries/cairo/default.nix b/pkgs/development/libraries/cairo/default.nix index dd73858c3fc2..97e455b1f30e 100644 --- a/pkgs/development/libraries/cairo/default.nix +++ b/pkgs/development/libraries/cairo/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchurl, pkgconfig, libiconvOrEmpty, libintlOrEmpty +{ stdenv, fetchurl, fetchpatch, pkgconfig, libiconvOrEmpty, libintlOrEmpty , expat, zlib, libpng, pixman, fontconfig, freetype, xlibs , gobjectSupport ? true, glib , xcbSupport ? true # no longer experimental since 1.12 @@ -18,6 +18,12 @@ stdenv.mkDerivation rec { sha1 = "53cf589b983412ea7f78feee2e1ba9cea6e3ebae"; }; + patches = [(fetchpatch { + name = "fix-racket.diff"; + url = "http://cgit.freedesktop.org/cairo/patch/?id=2de69581c28bf115852037ca41eba13cb7335976"; + sha256 = "0mk2fd9fwxqzravlmnbbrzwak15wqspn7609y0yn6qh87va5i0x4"; + })]; + nativeBuildInputs = [ pkgconfig ] ++ libintlOrEmpty ++ libiconvOrEmpty; propagatedBuildInputs = From 442cad9cbd7ab1624a87a9b9a4d0287615b3e3c0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Fri, 28 Nov 2014 20:42:07 +0100 Subject: [PATCH 069/937] xorg: update some modules --- pkgs/servers/x11/xorg/default.nix | 24 ++++++++++++------------ pkgs/servers/x11/xorg/tarballs-7.7.list | 10 +++++----- 2 files changed, 17 insertions(+), 17 deletions(-) diff --git a/pkgs/servers/x11/xorg/default.nix b/pkgs/servers/x11/xorg/default.nix index efe35b42b40d..8e4566d906d4 100644 --- a/pkgs/servers/x11/xorg/default.nix +++ b/pkgs/servers/x11/xorg/default.nix @@ -1375,11 +1375,11 @@ let }) // {inherit ;}; xf86inputevdev = (mkDerivation "xf86inputevdev" { - name = "xf86-input-evdev-2.8.4"; + name = "xf86-input-evdev-2.9.1"; builder = ./builder.sh; src = fetchurl { - url = mirror://xorg/individual/driver/xf86-input-evdev-2.8.4.tar.bz2; - sha256 = "030haki1h0m85h91c91812gdnk6znfamw5kpr010zxwwbsgxxyl5"; + url = mirror://xorg/individual/driver/xf86-input-evdev-2.9.1.tar.bz2; + sha256 = "1y82hpx86rngb0yrvcl4ni88wkc3zf9dj25myjk91b7ymll07qqc"; }; buildInputs = [pkgconfig inputproto udev xorgserver xproto ]; }) // {inherit inputproto udev xorgserver xproto ;}; @@ -1645,11 +1645,11 @@ let }) // {inherit fontsproto glproto libdrm udev libpciaccess randrproto renderproto videoproto libX11 libXext xextproto xf86driproto xorgserver xproto libXvMC ;}; xf86videoqxl = (mkDerivation "xf86videoqxl" { - name = "xf86-video-qxl-0.1.2"; + name = "xf86-video-qxl-0.1.3"; builder = ./builder.sh; src = fetchurl { - url = mirror://xorg/individual/driver/xf86-video-qxl-0.1.2.tar.bz2; - sha256 = "09sjpkg7klzzg9sagmqpsw911501vqk9wdd4nr0jkqqanvkx39s3"; + url = mirror://xorg/individual/driver/xf86-video-qxl-0.1.3.tar.bz2; + sha256 = "1368dd5mihn3s098n7wa3fpjkp8pnamabfjjipkqs9zyrcvncy3m"; }; buildInputs = [pkgconfig fontsproto libdrm udev libpciaccess randrproto renderproto videoproto xf86dgaproto xorgserver xproto ]; }) // {inherit fontsproto libdrm udev libpciaccess randrproto renderproto videoproto xf86dgaproto xorgserver xproto ;}; @@ -1865,11 +1865,11 @@ let }) // {inherit inputproto libX11 libXext libXi libXinerama libXrandr ;}; xkbcomp = (mkDerivation "xkbcomp" { - name = "xkbcomp-1.2.4"; + name = "xkbcomp-1.3.0"; builder = ./builder.sh; src = fetchurl { - url = mirror://xorg/X11R7.7/src/everything/xkbcomp-1.2.4.tar.bz2; - sha256 = "0bas1d2wjiy5zy9d0g92d2p9pwv4aapfbfidi7hxy8ax8jmwkl4i"; + url = mirror://xorg/individual/app/xkbcomp-1.3.0.tar.bz2; + sha256 = "0aibcbhhjlwcrxh943xg2dswwx5bz1x0pmhs28b55gzsg0vrgb6g"; }; buildInputs = [pkgconfig libX11 libxkbfile xproto ]; }) // {inherit libX11 libxkbfile xproto ;}; @@ -1985,11 +1985,11 @@ let }) // {inherit ;}; xorgserver = (mkDerivation "xorgserver" { - name = "xorg-server-1.16.1"; + name = "xorg-server-1.16.2"; builder = ./builder.sh; src = fetchurl { - url = mirror://xorg/individual/xserver/xorg-server-1.16.1.tar.bz2; - sha256 = "0q706wdbwipyfcvywl7apih3p5mrms3p0wr1hdj5jyzvr5p7qrzl"; + url = mirror://xorg/individual/xserver/xorg-server-1.16.2.tar.bz2; + sha256 = "0r6fhyvlifmg4zw9gm0pf4qybwbkmslhn060ivbwwsjmplz0qvj4"; }; buildInputs = [pkgconfig renderproto libdrm openssl libX11 libXau libXaw libxcb xcbutil xcbutilwm xcbutilimage xcbutilkeysyms libXdmcp libXfixes libxkbfile libXmu libXpm libXrender libXres libxshmfence libXt ]; }) // {inherit renderproto libdrm openssl libX11 libXau libXaw libxcb xcbutil xcbutilwm xcbutilimage xcbutilkeysyms libXdmcp libXfixes libxkbfile libXmu libXpm libXrender libXres libxshmfence libXt ;}; diff --git a/pkgs/servers/x11/xorg/tarballs-7.7.list b/pkgs/servers/x11/xorg/tarballs-7.7.list index d3a2f1b45f96..746880171528 100644 --- a/pkgs/servers/x11/xorg/tarballs-7.7.list +++ b/pkgs/servers/x11/xorg/tarballs-7.7.list @@ -41,7 +41,7 @@ mirror://xorg/X11R7.7/src/everything/font-mutt-misc-1.0.3.tar.bz2 mirror://xorg/X11R7.7/src/everything/font-schumacher-misc-1.1.2.tar.bz2 mirror://xorg/X11R7.7/src/everything/font-screen-cyrillic-1.0.4.tar.bz2 mirror://xorg/X11R7.7/src/everything/font-sony-misc-1.0.3.tar.bz2 -mirror://xorg/X11R7.7/src/everything/fontsproto-2.1.3.tar.bz2 +mirror://xorg/individual/proto/fontsproto-2.1.3.tar.bz2 mirror://xorg/X11R7.7/src/everything/font-sun-misc-1.0.3.tar.bz2 mirror://xorg/X11R7.7/src/everything/font-util-1.3.0.tar.bz2 mirror://xorg/X11R7.7/src/everything/font-winitzki-cyrillic-1.0.3.tar.bz2 @@ -115,7 +115,7 @@ mirror://xorg/individual/proto/xextproto-7.3.0.tar.bz2 mirror://xorg/X11R7.7/src/everything/xf86bigfontproto-1.2.0.tar.bz2 mirror://xorg/X11R7.7/src/everything/xf86dgaproto-2.1.tar.bz2 mirror://xorg/X11R7.7/src/everything/xf86driproto-2.1.1.tar.bz2 -mirror://xorg/individual/driver/xf86-input-evdev-2.8.4.tar.bz2 +mirror://xorg/individual/driver/xf86-input-evdev-2.9.1.tar.bz2 mirror://xorg/individual/driver/xf86-input-joystick-1.6.2.tar.bz2 mirror://xorg/individual/driver/xf86-input-keyboard-1.8.0.tar.bz2 mirror://xorg/individual/driver/xf86-input-mouse-1.9.1.tar.bz2 @@ -138,7 +138,7 @@ mirror://xorg/individual/driver/xf86-video-intel-2.99.916.tar.bz2 mirror://xorg/individual/driver/xf86-video-mach64-6.9.4.tar.bz2 mirror://xorg/individual/driver/xf86-video-mga-1.6.3.tar.bz2 mirror://xorg/individual/driver/xf86-video-modesetting-0.9.0.tar.bz2 -mirror://xorg/individual/driver/xf86-video-qxl-0.1.2.tar.bz2 +mirror://xorg/individual/driver/xf86-video-qxl-0.1.3.tar.bz2 mirror://xorg/individual/driver/xf86-video-neomagic-1.2.8.tar.bz2 mirror://xorg/X11R7.7/src/everything/xf86-video-newport-0.2.4.tar.bz2 mirror://xorg/individual/driver/xf86-video-nv-2.1.20.tar.bz2 @@ -162,7 +162,7 @@ mirror://xorg/X11R7.7/src/everything/xgamma-1.0.5.tar.bz2 mirror://xorg/individual/app/xhost-1.0.6.tar.bz2 mirror://xorg/X11R7.7/src/everything/xineramaproto-1.2.1.tar.bz2 mirror://xorg/individual/app/xinput-1.6.1.tar.bz2 -mirror://xorg/X11R7.7/src/everything/xkbcomp-1.2.4.tar.bz2 +mirror://xorg/individual/app/xkbcomp-1.3.0.tar.bz2 mirror://xorg/X11R7.7/src/everything/xkbevd-1.1.3.tar.bz2 mirror://xorg/individual/app/xkbutils-1.0.4.tar.bz2 mirror://xorg/individual/data/xkeyboard-config/xkeyboard-config-2.11.tar.bz2 @@ -171,7 +171,7 @@ mirror://xorg/X11R7.7/src/everything/xlsatoms-1.1.1.tar.bz2 mirror://xorg/individual/app/xlsclients-1.1.3.tar.bz2 mirror://xorg/individual/app/xmodmap-1.0.8.tar.bz2 mirror://xorg/X11R7.7/src/everything/xorg-docs-1.7.tar.bz2 -mirror://xorg/individual/xserver/xorg-server-1.16.1.tar.bz2 +mirror://xorg/individual/xserver/xorg-server-1.16.2.tar.bz2 mirror://xorg/X11R7.7/src/everything/xorg-sgml-doctools-1.11.tar.bz2 mirror://xorg/X11R7.7/src/everything/xpr-1.0.4.tar.bz2 mirror://xorg/individual/app/xprop-1.2.2.tar.bz2 From 8c5fd63275a1a209e63187073b9f813668bcde08 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Fri, 28 Nov 2014 21:15:58 +0100 Subject: [PATCH 070/937] flac: maintenance+security update Claims to fix CVE-2014-8962 and CVE-2014-9028 --- pkgs/applications/audio/flac/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/audio/flac/default.nix b/pkgs/applications/audio/flac/default.nix index cb3ec1da97cf..5dd706735216 100644 --- a/pkgs/applications/audio/flac/default.nix +++ b/pkgs/applications/audio/flac/default.nix @@ -1,11 +1,11 @@ { stdenv, fetchurl, libogg }: stdenv.mkDerivation rec { - name = "flac-1.3.0"; + name = "flac-1.3.1"; src = fetchurl { url = "http://downloads.xiph.org/releases/flac/${name}.tar.xz"; - sha256 = "1p0hh190kqvpkbk1bbajd81jfbmkyl4fn2i7pggk2zppq6m68bgs"; + sha256 = "4773c0099dba767d963fd92143263be338c48702172e8754b9bc5103efe1c56c"; }; buildInputs = [ libogg ]; From ea1dd9fd4a44228f02ef3916968425a1fca65483 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Fri, 28 Nov 2014 22:04:39 +0100 Subject: [PATCH 071/937] xorg: revert to older xf86-input-evdev for now How could I forget to test to build it at least :-/ --- pkgs/servers/x11/xorg/default.nix | 6 +++--- pkgs/servers/x11/xorg/tarballs-7.7.list | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/pkgs/servers/x11/xorg/default.nix b/pkgs/servers/x11/xorg/default.nix index 8e4566d906d4..ec56ce185b9c 100644 --- a/pkgs/servers/x11/xorg/default.nix +++ b/pkgs/servers/x11/xorg/default.nix @@ -1375,11 +1375,11 @@ let }) // {inherit ;}; xf86inputevdev = (mkDerivation "xf86inputevdev" { - name = "xf86-input-evdev-2.9.1"; + name = "xf86-input-evdev-2.8.4"; builder = ./builder.sh; src = fetchurl { - url = mirror://xorg/individual/driver/xf86-input-evdev-2.9.1.tar.bz2; - sha256 = "1y82hpx86rngb0yrvcl4ni88wkc3zf9dj25myjk91b7ymll07qqc"; + url = mirror://xorg/individual/driver/xf86-input-evdev-2.8.4.tar.bz2; + sha256 = "030haki1h0m85h91c91812gdnk6znfamw5kpr010zxwwbsgxxyl5"; }; buildInputs = [pkgconfig inputproto udev xorgserver xproto ]; }) // {inherit inputproto udev xorgserver xproto ;}; diff --git a/pkgs/servers/x11/xorg/tarballs-7.7.list b/pkgs/servers/x11/xorg/tarballs-7.7.list index 746880171528..fb5f444a6955 100644 --- a/pkgs/servers/x11/xorg/tarballs-7.7.list +++ b/pkgs/servers/x11/xorg/tarballs-7.7.list @@ -115,7 +115,7 @@ mirror://xorg/individual/proto/xextproto-7.3.0.tar.bz2 mirror://xorg/X11R7.7/src/everything/xf86bigfontproto-1.2.0.tar.bz2 mirror://xorg/X11R7.7/src/everything/xf86dgaproto-2.1.tar.bz2 mirror://xorg/X11R7.7/src/everything/xf86driproto-2.1.1.tar.bz2 -mirror://xorg/individual/driver/xf86-input-evdev-2.9.1.tar.bz2 +mirror://xorg/individual/driver/xf86-input-evdev-2.8.4.tar.bz2 mirror://xorg/individual/driver/xf86-input-joystick-1.6.2.tar.bz2 mirror://xorg/individual/driver/xf86-input-keyboard-1.8.0.tar.bz2 mirror://xorg/individual/driver/xf86-input-mouse-1.9.1.tar.bz2 From 1c3a9336ed41418564a95c48c3fe1abcb628b7d4 Mon Sep 17 00:00:00 2001 From: Georges Dubus Date: Fri, 17 Oct 2014 16:09:20 +0200 Subject: [PATCH 072/937] Packaged cloud-init and its dependencies --- .../virtualization/cloud-init/default.nix | 34 ++++++++++++ pkgs/top-level/all-packages.nix | 2 + pkgs/top-level/python-packages.nix | 52 +++++++++++++++++++ 3 files changed, 88 insertions(+) create mode 100644 pkgs/tools/virtualization/cloud-init/default.nix diff --git a/pkgs/tools/virtualization/cloud-init/default.nix b/pkgs/tools/virtualization/cloud-init/default.nix new file mode 100644 index 000000000000..48eb68242e1e --- /dev/null +++ b/pkgs/tools/virtualization/cloud-init/default.nix @@ -0,0 +1,34 @@ +{ lib, pythonPackages, fetchurl }: + +let version = "0.7.6"; + +in pythonPackages.buildPythonPackage rec { + name = "cloud-init-0.7.6"; + namePrefix = ""; + + src = fetchurl { + url = "https://launchpad.net/cloud-init/trunk/${version}/+download/cloud-init-${version}.tar.gz"; + sha256 = "1mry5zdkfaq952kn1i06wiggc66cqgfp6qgnlpk0mr7nnwpd53wy"; + }; + + preBuild = '' + patchShebangs ./tools + + substituteInPlace setup.py \ + --replace /usr $out \ + --replace /etc $out/etc \ + --replace /lib/systemd $out/lib/systemd \ + ''; + + pythonPath = with pythonPackages; [ cheetah jinja2 prettytable + oauth pyserial configobj pyyaml argparse requests jsonpatch ]; + + setupPyInstallFlags = ["--init-system systemd"]; + + meta = { + homepage = http://cloudinit.readthedocs.org; + description = "provides configuration and customization of cloud instance"; + maintainers = [ lib.maintainers.madjar ]; + platforms = lib.platforms.all; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 3b27e447009d..7806969c83c8 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -657,6 +657,8 @@ let ccnet = callPackage ../tools/networking/ccnet { }; + cloud-init = callPackage ../tools/virtualization/cloud-init { }; + consul = callPackage ../servers/consul { inherit ruby rubyLibs; }; diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index fcb7eb212a09..7b7a996a0d2e 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -2654,6 +2654,42 @@ let }; }; + jsonpatch = buildPythonPackage rec { + name = "jsonpatch-1.8"; + + src = pkgs.fetchurl { + url = "https://pypi.python.org/packages/source/j/jsonpatch/jsonpatch-1.8.tar.gz"; + sha256 = "0xhp6prvk219vnzixbj231wymd458nqbnmsf5fn4252092prvig5"; + }; + + propagatedBuildInputs = with self; [ six jsonpointer ]; + + meta = { + description = "Apply JSON-Patches (RFC 6902)"; + homepage = "https://github.com/stefankoegl/python-json-patch"; + license = stdenv.lib.licenses.bsd3; + platforms = stdenv.lib.platforms.all; + }; + }; + + jsonpointer = buildPythonPackage rec { + name = "jsonpointer-1.4"; + + src = pkgs.fetchurl { + url = "https://pypi.python.org/packages/source/j/jsonpointer/jsonpointer-1.4.tar.gz"; + sha256 = "1d0555smqwdbi0nm48hyqzywb9m2jlz5izgv56ll3zk7viz3b7fb"; + }; + + #propagatedBuildInputs = with self; [ six jsonpointer ]; + + meta = { + description = "Identify specific nodes in a JSON document (RFC 6901)"; + homepage = "https://github.com/stefankoegl/python-json-pointer"; + license = stdenv.lib.licenses.bsd3; + platforms = stdenv.lib.platforms.all; + }; + }; + jsonwatch = buildPythonPackage rec { name = "jsonwatch-0.2.0"; @@ -5993,6 +6029,22 @@ let }; }; + oauth = buildPythonPackage (rec { + name = "oauth-1.0.1"; + + src = pkgs.fetchurl { + url = "http://pypi.python.org/packages/source/o/oauth/oauth-1.0.1.tar.gz"; + sha256 = "0pdgi35hczsslil4890xqawnbpdazkgf2v1443847h5hy2gq2sg7"; + }; + + meta = { + homepage = "http://code.google.com/p/oauth"; + description = "Library for OAuth version 1.0a."; + license = licenses.mit; + platforms = stdenv.lib.platforms.all; + }; + }); + oauth2 = buildPythonPackage (rec { name = "oauth2-1.5.211"; disabled = isPy3k; From 1518d6586655b4aba65a28bb110153103505815d Mon Sep 17 00:00:00 2001 From: Siarhei Zirukin Date: Mon, 1 Dec 2014 19:58:25 +0100 Subject: [PATCH 073/937] schismtracker: new package --- .../audio/schismtracker/default.nix | 23 +++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 ++ 2 files changed, 25 insertions(+) create mode 100644 pkgs/applications/audio/schismtracker/default.nix diff --git a/pkgs/applications/audio/schismtracker/default.nix b/pkgs/applications/audio/schismtracker/default.nix new file mode 100644 index 000000000000..1a448c74b477 --- /dev/null +++ b/pkgs/applications/audio/schismtracker/default.nix @@ -0,0 +1,23 @@ +{ stdenv, fetchurl, alsaLib, python, SDL }: + +stdenv.mkDerivation rec { + version = "20120105"; + name = "schismtracker-${version}"; + + src = fetchurl { + url = "http://schismtracker.org/dl/${name}.tar.bz2"; + sha256 = "1ny7wv2wxm1av299wvpskall6438wjjpadphmqc7c0h6d0zg5kii"; + }; + + configureFlags = "--enable-dependency-tracking"; + + buildInputs = [ alsaLib python SDL ]; + + meta = { + description = "Music tracker application, free reimplementation of Impulse Tracker"; + homepage = "http://schismtracker.org/"; + license = stdenv.lib.licenses.gpl2; + platforms = [ "x86_64-linux" "i686-linux" ]; + maintainers = [ stdenv.lib.maintainers.ftrvxmtrx ]; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 8d53d8d42ac7..1f01e4b51cd4 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -9052,6 +9052,8 @@ let milkytracker = callPackage ../applications/audio/milkytracker { }; + schismtracker = callPackage ../applications/audio/schismtracker { }; + aumix = callPackage ../applications/audio/aumix { gtkGUI = false; }; From 02157ab123508341c4019c64017966fbb8ab2921 Mon Sep 17 00:00:00 2001 From: Thomas Tuegel Date: Tue, 2 Dec 2014 10:41:24 -0600 Subject: [PATCH 074/937] libcurl: honor $SSL_CERT_FILE (fixed) The previous attempt to patch libcurl used getenv("CURL_CA_BUNDLE") || getenv("SSL_CERT_FILE") to get the second environment variable if the first is unset. Unfortunately, this broke libcurl because the (||) operator is C returns only 0 or 1, so it is inappropriate for pointer comparisons! Now we use getenv("CURL_CA_BUNDLE") ? getenv("CURL_CA_BUNDLE") : getenv("SSL_CERT_FILE") instead. This has one downside: it always calls getenv twice! But, that's a small price to pay for actually being correct. --- pkgs/tools/networking/curl/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/tools/networking/curl/default.nix b/pkgs/tools/networking/curl/default.nix index 2e106c899b9c..b54df60ef0a9 100644 --- a/pkgs/tools/networking/curl/default.nix +++ b/pkgs/tools/networking/curl/default.nix @@ -37,7 +37,7 @@ stdenv.mkDerivation rec { # make curl honor CURL_CA_BUNDLE & SSL_CERT_FILE postConfigure = '' - echo '#define CURL_CA_BUNDLE (getenv("CURL_CA_BUNDLE") || getenv("SSL_CERT_FILE"))' >> lib/curl_config.h + echo '#define CURL_CA_BUNDLE (getenv("CURL_CA_BUNDLE") ? getenv("CURL_CA_BUNDLE") : getenv("SSL_CERT_FILE"))' >> lib/curl_config.h ''; configureFlags = [ From e36d7c8d1126fb6180a1fb7bffccc87c934fcc81 Mon Sep 17 00:00:00 2001 From: Thomas Tuegel Date: Tue, 2 Dec 2014 07:27:43 -0600 Subject: [PATCH 075/937] qt5: absolute paths for dlopen --- ...style.patch => 0001-dlopen-gtkstyle.patch} | 39 +++++++++++--- .../qt-5/0002-dlopen-webkit-nsplugin.patch | 53 +++++++++++++++++++ .../libraries/qt-5/0003-glib-2.32.patch | 25 +++++++++ .../libraries/qt-5/0004-dlopen-resolv.patch | 39 ++++++++++++++ .../libraries/qt-5/0005-dlopen-gl.patch | 25 +++++++++ .../{qt-5.3-tzdir.patch => 0006-tzdir.patch} | 12 +++++ .../qt-5/0007-dlopen-webkit-gtk.patch | 25 +++++++++ .../qt-5/0008-dlopen-webkit-udev.patch | 31 +++++++++++ .../qt-5/0009-dlopen-serialport-udev.patch | 28 ++++++++++ .../qt-5/0010-dlopen-libXcursor.patch | 29 ++++++++++ .../libraries/qt-5/0011-dlopen-openssl.patch | 38 +++++++++++++ .../libraries/qt-5/0012-dlopen-dbus.patch | 25 +++++++++ pkgs/development/libraries/qt-5/default.nix | 44 ++++++++++----- .../qt-5/dlopen-webkit-nsplugin.patch | 36 ------------- .../libraries/qt-5/glib-2.32.patch | 12 ----- .../qt-5/qt-5.3-dlopen-absolute-paths.patch | 24 --------- 16 files changed, 393 insertions(+), 92 deletions(-) rename pkgs/development/libraries/qt-5/{dlopen-gtkstyle.patch => 0001-dlopen-gtkstyle.patch} (58%) create mode 100644 pkgs/development/libraries/qt-5/0002-dlopen-webkit-nsplugin.patch create mode 100644 pkgs/development/libraries/qt-5/0003-glib-2.32.patch create mode 100644 pkgs/development/libraries/qt-5/0004-dlopen-resolv.patch create mode 100644 pkgs/development/libraries/qt-5/0005-dlopen-gl.patch rename pkgs/development/libraries/qt-5/{qt-5.3-tzdir.patch => 0006-tzdir.patch} (86%) create mode 100644 pkgs/development/libraries/qt-5/0007-dlopen-webkit-gtk.patch create mode 100644 pkgs/development/libraries/qt-5/0008-dlopen-webkit-udev.patch create mode 100644 pkgs/development/libraries/qt-5/0009-dlopen-serialport-udev.patch create mode 100644 pkgs/development/libraries/qt-5/0010-dlopen-libXcursor.patch create mode 100644 pkgs/development/libraries/qt-5/0011-dlopen-openssl.patch create mode 100644 pkgs/development/libraries/qt-5/0012-dlopen-dbus.patch delete mode 100644 pkgs/development/libraries/qt-5/dlopen-webkit-nsplugin.patch delete mode 100644 pkgs/development/libraries/qt-5/glib-2.32.patch delete mode 100644 pkgs/development/libraries/qt-5/qt-5.3-dlopen-absolute-paths.patch diff --git a/pkgs/development/libraries/qt-5/dlopen-gtkstyle.patch b/pkgs/development/libraries/qt-5/0001-dlopen-gtkstyle.patch similarity index 58% rename from pkgs/development/libraries/qt-5/dlopen-gtkstyle.patch rename to pkgs/development/libraries/qt-5/0001-dlopen-gtkstyle.patch index 05ff30b7ac33..3f411139f5be 100644 --- a/pkgs/development/libraries/qt-5/dlopen-gtkstyle.patch +++ b/pkgs/development/libraries/qt-5/0001-dlopen-gtkstyle.patch @@ -1,7 +1,31 @@ -diff -ruN qt-everywhere-opensource-src-5.1.1-orig/qtbase/src/widgets/styles/qgtkstyle_p.cpp qt-everywhere-opensource-src-5.1.1/qtbase/src/widgets/styles/qgtkstyle_p.cpp ---- qt-everywhere-opensource-src-5.1.1-orig/qtbase/src/widgets/styles/qgtkstyle_p.cpp 2013-08-25 20:03:30.000000000 +0200 -+++ qt-everywhere-opensource-src-5.1.1/qtbase/src/widgets/styles/qgtkstyle_p.cpp 2013-09-25 17:58:04.229373681 +0200 -@@ -348,7 +348,7 @@ +From 35d5995a58c86a6addbf0aaf0d1be64d39182872 Mon Sep 17 00:00:00 2001 +From: Thomas Tuegel +Date: Mon, 1 Dec 2014 17:21:58 -0600 +Subject: [PATCH] dlopen-gtkstyle + +--- + qtbase/src/widgets/styles/qgtk2painter.cpp | 2 +- + qtbase/src/widgets/styles/qgtkstyle_p.cpp | 12 ++++++------ + 2 files changed, 7 insertions(+), 7 deletions(-) + +diff --git a/qtbase/src/widgets/styles/qgtk2painter.cpp b/qtbase/src/widgets/styles/qgtk2painter.cpp +index 7b9bd97..075947a 100644 +--- a/qtbase/src/widgets/styles/qgtk2painter.cpp ++++ b/qtbase/src/widgets/styles/qgtk2painter.cpp +@@ -104,7 +104,7 @@ static void initGtk() + static bool initialized = false; + if (!initialized) { + // enforce the "0" suffix, so we'll open libgtk-x11-2.0.so.0 +- QLibrary libgtk(QLS("gtk-x11-2.0"), 0, 0); ++ QLibrary libgtk(QLS("@gtk@/lib/libgtk-x11-2.0"), 0, 0); + + QGtk2PainterPrivate::gdk_pixmap_new = (Ptr_gdk_pixmap_new)libgtk.resolve("gdk_pixmap_new"); + QGtk2PainterPrivate::gdk_pixbuf_get_from_drawable = (Ptr_gdk_pixbuf_get_from_drawable)libgtk.resolve("gdk_pixbuf_get_from_drawable"); +diff --git a/qtbase/src/widgets/styles/qgtkstyle_p.cpp b/qtbase/src/widgets/styles/qgtkstyle_p.cpp +index 2c64225..3343d32 100644 +--- a/qtbase/src/widgets/styles/qgtkstyle_p.cpp ++++ b/qtbase/src/widgets/styles/qgtkstyle_p.cpp +@@ -334,7 +334,7 @@ void QGtkStylePrivate::gtkWidgetSetFocus(GtkWidget *widget, bool focus) void QGtkStylePrivate::resolveGtk() const { // enforce the "0" suffix, so we'll open libgtk-x11-2.0.so.0 @@ -10,7 +34,7 @@ diff -ruN qt-everywhere-opensource-src-5.1.1-orig/qtbase/src/widgets/styles/qgtk gtk_init = (Ptr_gtk_init)libgtk.resolve("gtk_init"); gtk_window_new = (Ptr_gtk_window_new)libgtk.resolve("gtk_window_new"); -@@ -461,8 +461,8 @@ +@@ -432,8 +432,8 @@ void QGtkStylePrivate::resolveGtk() const pango_font_description_get_family = (Ptr_pango_font_description_get_family)libgtk.resolve("pango_font_description_get_family"); pango_font_description_get_style = (Ptr_pango_font_description_get_style)libgtk.resolve("pango_font_description_get_style"); @@ -21,7 +45,7 @@ diff -ruN qt-everywhere-opensource-src-5.1.1-orig/qtbase/src/widgets/styles/qgtk } /* \internal -@@ -630,9 +630,9 @@ +@@ -601,9 +601,9 @@ void QGtkStylePrivate::cleanupGtkWidgets() static bool resolveGConf() { if (!QGtkStylePrivate::gconf_client_get_default) { @@ -34,3 +58,6 @@ diff -ruN qt-everywhere-opensource-src-5.1.1-orig/qtbase/src/widgets/styles/qgtk } return (QGtkStylePrivate::gconf_client_get_default !=0); } +-- +2.1.3 + diff --git a/pkgs/development/libraries/qt-5/0002-dlopen-webkit-nsplugin.patch b/pkgs/development/libraries/qt-5/0002-dlopen-webkit-nsplugin.patch new file mode 100644 index 000000000000..0752cdcf4793 --- /dev/null +++ b/pkgs/development/libraries/qt-5/0002-dlopen-webkit-nsplugin.patch @@ -0,0 +1,53 @@ +From 8c30f72dbe11752e8ed25f292c6e5695d7733f72 Mon Sep 17 00:00:00 2001 +From: Thomas Tuegel +Date: Mon, 1 Dec 2014 17:22:23 -0600 +Subject: [PATCH] dlopen-webkit-nsplugin + +--- + qtwebkit/Source/WebCore/plugins/qt/PluginPackageQt.cpp | 2 +- + qtwebkit/Source/WebCore/plugins/qt/PluginViewQt.cpp | 2 +- + .../WebKit2/WebProcess/Plugins/Netscape/x11/NetscapePluginX11.cpp | 2 +- + 3 files changed, 3 insertions(+), 3 deletions(-) + +diff --git a/qtwebkit/Source/WebCore/plugins/qt/PluginPackageQt.cpp b/qtwebkit/Source/WebCore/plugins/qt/PluginPackageQt.cpp +index 679480b..2c373cc 100644 +--- a/qtwebkit/Source/WebCore/plugins/qt/PluginPackageQt.cpp ++++ b/qtwebkit/Source/WebCore/plugins/qt/PluginPackageQt.cpp +@@ -132,7 +132,7 @@ static void initializeGtk(QLibrary* module = 0) + } + } + +- QLibrary library(QLatin1String("libgtk-x11-2.0"), 0); ++ QLibrary library(QLatin1String("@gtk@/lib/libgtk-x11-2.0"), 0); + if (library.load()) { + typedef void *(*gtk_init_check_ptr)(int*, char***); + gtk_init_check_ptr gtkInitCheck = (gtk_init_check_ptr)library.resolve("gtk_init_check"); +diff --git a/qtwebkit/Source/WebCore/plugins/qt/PluginViewQt.cpp b/qtwebkit/Source/WebCore/plugins/qt/PluginViewQt.cpp +index de06a2f..363bde5 100644 +--- a/qtwebkit/Source/WebCore/plugins/qt/PluginViewQt.cpp ++++ b/qtwebkit/Source/WebCore/plugins/qt/PluginViewQt.cpp +@@ -697,7 +697,7 @@ static Display *getPluginDisplay() + // support gdk based plugins (like flash) that use a different X connection. + // The code below has the same effect as this one: + // Display *gdkDisplay = gdk_x11_display_get_xdisplay(gdk_display_get_default()); +- QLibrary library(QLatin1String("libgdk-x11-2.0"), 0); ++ QLibrary library(QLatin1String("@gdk_pixbuf@/lib/libgdk-x11-2.0"), 0); + if (!library.load()) + return 0; + +diff --git a/qtwebkit/Source/WebKit2/WebProcess/Plugins/Netscape/x11/NetscapePluginX11.cpp b/qtwebkit/Source/WebKit2/WebProcess/Plugins/Netscape/x11/NetscapePluginX11.cpp +index d734ff6..62a2197 100644 +--- a/qtwebkit/Source/WebKit2/WebProcess/Plugins/Netscape/x11/NetscapePluginX11.cpp ++++ b/qtwebkit/Source/WebKit2/WebProcess/Plugins/Netscape/x11/NetscapePluginX11.cpp +@@ -64,7 +64,7 @@ static Display* getPluginDisplay() + // The code below has the same effect as this one: + // Display *gdkDisplay = gdk_x11_display_get_xdisplay(gdk_display_get_default()); + +- QLibrary library(QLatin1String("libgdk-x11-2.0"), 0); ++ QLibrary library(QLatin1String("@gdk_pixbuf@/libgdk-x11-2.0"), 0); + if (!library.load()) + return 0; + +-- +2.1.3 + diff --git a/pkgs/development/libraries/qt-5/0003-glib-2.32.patch b/pkgs/development/libraries/qt-5/0003-glib-2.32.patch new file mode 100644 index 000000000000..4abb69da4d85 --- /dev/null +++ b/pkgs/development/libraries/qt-5/0003-glib-2.32.patch @@ -0,0 +1,25 @@ +From a41c3e3a3a1ce4b373b1bbb98f3a835e9e8a0718 Mon Sep 17 00:00:00 2001 +From: Thomas Tuegel +Date: Mon, 1 Dec 2014 17:22:39 -0600 +Subject: [PATCH] glib-2.32 + +--- + qtscript/src/3rdparty/javascriptcore/JavaScriptCore/wtf/Threading.h | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/qtscript/src/3rdparty/javascriptcore/JavaScriptCore/wtf/Threading.h b/qtscript/src/3rdparty/javascriptcore/JavaScriptCore/wtf/Threading.h +index 1f6d25e..087c3fb 100644 +--- a/qtscript/src/3rdparty/javascriptcore/JavaScriptCore/wtf/Threading.h ++++ b/qtscript/src/3rdparty/javascriptcore/JavaScriptCore/wtf/Threading.h +@@ -81,7 +81,7 @@ + #include + #elif PLATFORM(GTK) + #include +-typedef struct _GMutex GMutex; ++typedef union _GMutex GMutex; + typedef struct _GCond GCond; + #endif + +-- +2.1.3 + diff --git a/pkgs/development/libraries/qt-5/0004-dlopen-resolv.patch b/pkgs/development/libraries/qt-5/0004-dlopen-resolv.patch new file mode 100644 index 000000000000..e6b921b771d3 --- /dev/null +++ b/pkgs/development/libraries/qt-5/0004-dlopen-resolv.patch @@ -0,0 +1,39 @@ +From 63af41c6eeca28c911c13b1a77afeaf860863c2d Mon Sep 17 00:00:00 2001 +From: Thomas Tuegel +Date: Mon, 1 Dec 2014 17:22:55 -0600 +Subject: [PATCH] dlopen-resolv + +--- + qtbase/src/network/kernel/qdnslookup_unix.cpp | 2 +- + qtbase/src/network/kernel/qhostinfo_unix.cpp | 2 +- + 2 files changed, 2 insertions(+), 2 deletions(-) + +diff --git a/qtbase/src/network/kernel/qdnslookup_unix.cpp b/qtbase/src/network/kernel/qdnslookup_unix.cpp +index 8c5a0eb..27ebf16 100644 +--- a/qtbase/src/network/kernel/qdnslookup_unix.cpp ++++ b/qtbase/src/network/kernel/qdnslookup_unix.cpp +@@ -87,7 +87,7 @@ static void resolveLibrary() + if (!lib.load()) + #endif + { +- lib.setFileName(QLatin1String("resolv")); ++ lib.setFileName(QLatin1String("@glibc/lib/resolv")); + if (!lib.load()) + return; + } +diff --git a/qtbase/src/network/kernel/qhostinfo_unix.cpp b/qtbase/src/network/kernel/qhostinfo_unix.cpp +index df8c8b1..613d0e0 100644 +--- a/qtbase/src/network/kernel/qhostinfo_unix.cpp ++++ b/qtbase/src/network/kernel/qhostinfo_unix.cpp +@@ -103,7 +103,7 @@ static void resolveLibrary() + if (!lib.load()) + #endif + { +- lib.setFileName(QLatin1String("resolv")); ++ lib.setFileName(QLatin1String("@glibc@/lib/libresolv")); + if (!lib.load()) + return; + } +-- +2.1.3 + diff --git a/pkgs/development/libraries/qt-5/0005-dlopen-gl.patch b/pkgs/development/libraries/qt-5/0005-dlopen-gl.patch new file mode 100644 index 000000000000..d112427bdd63 --- /dev/null +++ b/pkgs/development/libraries/qt-5/0005-dlopen-gl.patch @@ -0,0 +1,25 @@ +From 6aaf6858bf817172a4c503158e1701c4837ee790 Mon Sep 17 00:00:00 2001 +From: Thomas Tuegel +Date: Mon, 1 Dec 2014 17:23:08 -0600 +Subject: [PATCH] dlopen-gl + +--- + qtbase/src/plugins/platforms/xcb/qglxintegration.cpp | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/qtbase/src/plugins/platforms/xcb/qglxintegration.cpp b/qtbase/src/plugins/platforms/xcb/qglxintegration.cpp +index 67235e0..2220a2e 100644 +--- a/qtbase/src/plugins/platforms/xcb/qglxintegration.cpp ++++ b/qtbase/src/plugins/platforms/xcb/qglxintegration.cpp +@@ -434,7 +434,7 @@ void (*QGLXContext::getProcAddress(const QByteArray &procName)) () + { + extern const QString qt_gl_library_name(); + // QLibrary lib(qt_gl_library_name()); +- QLibrary lib(QLatin1String("GL")); ++ QLibrary lib(QLatin1String("@openglDriver@/lib/libGL")); + glXGetProcAddressARB = (qt_glXGetProcAddressARB) lib.resolve("glXGetProcAddressARB"); + } + } +-- +2.1.3 + diff --git a/pkgs/development/libraries/qt-5/qt-5.3-tzdir.patch b/pkgs/development/libraries/qt-5/0006-tzdir.patch similarity index 86% rename from pkgs/development/libraries/qt-5/qt-5.3-tzdir.patch rename to pkgs/development/libraries/qt-5/0006-tzdir.patch index 5434a228a9e6..d5a74b25fb38 100644 --- a/pkgs/development/libraries/qt-5/qt-5.3-tzdir.patch +++ b/pkgs/development/libraries/qt-5/0006-tzdir.patch @@ -1,3 +1,12 @@ +From 775fd74351faaabd45f6751618b28e2b05812d05 Mon Sep 17 00:00:00 2001 +From: Thomas Tuegel +Date: Mon, 1 Dec 2014 17:23:22 -0600 +Subject: [PATCH] tzdir + +--- + qtbase/src/corelib/tools/qtimezoneprivate_tz.cpp | 21 +++++++++++++++------ + 1 file changed, 15 insertions(+), 6 deletions(-) + diff --git a/qtbase/src/corelib/tools/qtimezoneprivate_tz.cpp b/qtbase/src/corelib/tools/qtimezoneprivate_tz.cpp index b4ea91e..a56a245 100644 --- a/qtbase/src/corelib/tools/qtimezoneprivate_tz.cpp @@ -38,3 +47,6 @@ index b4ea91e..a56a245 100644 } } +-- +2.1.3 + diff --git a/pkgs/development/libraries/qt-5/0007-dlopen-webkit-gtk.patch b/pkgs/development/libraries/qt-5/0007-dlopen-webkit-gtk.patch new file mode 100644 index 000000000000..9582b714c903 --- /dev/null +++ b/pkgs/development/libraries/qt-5/0007-dlopen-webkit-gtk.patch @@ -0,0 +1,25 @@ +From 089db8835c80bf2b7dd91a97a5c6eb26636b6ab9 Mon Sep 17 00:00:00 2001 +From: Thomas Tuegel +Date: Mon, 1 Dec 2014 17:26:39 -0600 +Subject: [PATCH] dlopen-webkit-gtk + +--- + qtwebkit/Source/WebKit2/PluginProcess/qt/PluginProcessMainQt.cpp | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/qtwebkit/Source/WebKit2/PluginProcess/qt/PluginProcessMainQt.cpp b/qtwebkit/Source/WebKit2/PluginProcess/qt/PluginProcessMainQt.cpp +index 8de6521..0b25748 100644 +--- a/qtwebkit/Source/WebKit2/PluginProcess/qt/PluginProcessMainQt.cpp ++++ b/qtwebkit/Source/WebKit2/PluginProcess/qt/PluginProcessMainQt.cpp +@@ -53,7 +53,7 @@ static void messageHandler(QtMsgType type, const QMessageLogContext&, const QStr + + static bool initializeGtk() + { +- QLibrary gtkLibrary(QLatin1String("libgtk-x11-2.0"), 0); ++ QLibrary gtkLibrary(QLatin1String("@gtk@/lib/libgtk-x11-2.0"), 0); + if (!gtkLibrary.load()) + return false; + typedef void* (*gtk_init_ptr)(void*, void*); +-- +2.1.3 + diff --git a/pkgs/development/libraries/qt-5/0008-dlopen-webkit-udev.patch b/pkgs/development/libraries/qt-5/0008-dlopen-webkit-udev.patch new file mode 100644 index 000000000000..e8a4ba6a2151 --- /dev/null +++ b/pkgs/development/libraries/qt-5/0008-dlopen-webkit-udev.patch @@ -0,0 +1,31 @@ +From 25d2922cce383fcaa4c138e0cc6c8d92328eeacb Mon Sep 17 00:00:00 2001 +From: Thomas Tuegel +Date: Mon, 1 Dec 2014 17:30:41 -0600 +Subject: [PATCH] dlopen-webkit-udev + +--- + qtwebkit/Source/WebCore/platform/qt/GamepadsQt.cpp | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/qtwebkit/Source/WebCore/platform/qt/GamepadsQt.cpp b/qtwebkit/Source/WebCore/platform/qt/GamepadsQt.cpp +index 60ff317..da8ac69 100644 +--- a/qtwebkit/Source/WebCore/platform/qt/GamepadsQt.cpp ++++ b/qtwebkit/Source/WebCore/platform/qt/GamepadsQt.cpp +@@ -111,12 +111,12 @@ private: + bool load() + { + m_libUdev.setLoadHints(QLibrary::ResolveAllSymbolsHint); +- m_libUdev.setFileNameAndVersion(QStringLiteral("udev"), 1); ++ m_libUdev.setFileNameAndVersion(QStringLiteral("@udev@/lib/libudev"), 1); + m_loaded = m_libUdev.load(); + if (resolveMethods()) + return true; + +- m_libUdev.setFileNameAndVersion(QStringLiteral("udev"), 0); ++ m_libUdev.setFileNameAndVersion(QStringLiteral("@udev@/lib/libudev"), 0); + m_loaded = m_libUdev.load(); + return resolveMethods(); + } +-- +2.1.3 + diff --git a/pkgs/development/libraries/qt-5/0009-dlopen-serialport-udev.patch b/pkgs/development/libraries/qt-5/0009-dlopen-serialport-udev.patch new file mode 100644 index 000000000000..e1e66a3ce95a --- /dev/null +++ b/pkgs/development/libraries/qt-5/0009-dlopen-serialport-udev.patch @@ -0,0 +1,28 @@ +From 17c7257e54c00ea2121f2cf95fb2be5e5db6b4ad Mon Sep 17 00:00:00 2001 +From: Thomas Tuegel +Date: Mon, 1 Dec 2014 17:31:03 -0600 +Subject: [PATCH] dlopen-serialport-udev + +--- + qtserialport/src/serialport/qtudev_p.h | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/qtserialport/src/serialport/qtudev_p.h b/qtserialport/src/serialport/qtudev_p.h +index 09940ab..45460f9 100644 +--- a/qtserialport/src/serialport/qtudev_p.h ++++ b/qtserialport/src/serialport/qtudev_p.h +@@ -119,9 +119,9 @@ inline void *resolveSymbol(QLibrary *udevLibrary, const char *symbolName) + inline bool resolveSymbols(QLibrary *udevLibrary) + { + if (!udevLibrary->isLoaded()) { +- udevLibrary->setFileNameAndVersion(QStringLiteral("udev"), 1); ++ udevLibrary->setFileNameAndVersion(QStringLiteral("@udev@/lib/libudev"), 1); + if (!udevLibrary->load()) { +- udevLibrary->setFileNameAndVersion(QStringLiteral("udev"), 0); ++ udevLibrary->setFileNameAndVersion(QStringLiteral("@udev@/lib/libudev"), 0); + if (!udevLibrary->load()) { + qWarning("Failed to load the library: %s, supported version(s): %i and %i", qPrintable(udevLibrary->fileName()), 1, 0); + return false; +-- +2.1.3 + diff --git a/pkgs/development/libraries/qt-5/0010-dlopen-libXcursor.patch b/pkgs/development/libraries/qt-5/0010-dlopen-libXcursor.patch new file mode 100644 index 000000000000..49ade86fae3f --- /dev/null +++ b/pkgs/development/libraries/qt-5/0010-dlopen-libXcursor.patch @@ -0,0 +1,29 @@ +From b56e3737ca97e3de664603976989da4419297eb3 Mon Sep 17 00:00:00 2001 +From: Thomas Tuegel +Date: Mon, 1 Dec 2014 17:33:51 -0600 +Subject: [PATCH] dlopen-libXcursor + +--- + qtbase/src/plugins/platforms/xcb/qxcbcursor.cpp | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/qtbase/src/plugins/platforms/xcb/qxcbcursor.cpp b/qtbase/src/plugins/platforms/xcb/qxcbcursor.cpp +index 6dbac90..4b23fc2 100644 +--- a/qtbase/src/plugins/platforms/xcb/qxcbcursor.cpp ++++ b/qtbase/src/plugins/platforms/xcb/qxcbcursor.cpp +@@ -305,10 +305,10 @@ QXcbCursor::QXcbCursor(QXcbConnection *conn, QXcbScreen *screen) + #ifdef XCB_USE_XLIB + static bool function_ptrs_not_initialized = true; + if (function_ptrs_not_initialized) { +- QLibrary xcursorLib(QLatin1String("Xcursor"), 1); ++ QLibrary xcursorLib(QLatin1String("@libXcursor@/lib/libXcursor"), 1); + bool xcursorFound = xcursorLib.load(); + if (!xcursorFound) { // try without the version number +- xcursorLib.setFileName(QLatin1String("Xcursor")); ++ xcursorLib.setFileName(QLatin1String("@libXcursor@/lib/Xcursor")); + xcursorFound = xcursorLib.load(); + } + if (xcursorFound) { +-- +2.1.3 + diff --git a/pkgs/development/libraries/qt-5/0011-dlopen-openssl.patch b/pkgs/development/libraries/qt-5/0011-dlopen-openssl.patch new file mode 100644 index 000000000000..d08061dd5dd6 --- /dev/null +++ b/pkgs/development/libraries/qt-5/0011-dlopen-openssl.patch @@ -0,0 +1,38 @@ +From 99d458c93698b2d4f16ff164ed54237279ffbb64 Mon Sep 17 00:00:00 2001 +From: Thomas Tuegel +Date: Mon, 1 Dec 2014 17:35:21 -0600 +Subject: [PATCH] dlopen-openssl + +--- + qtbase/src/network/ssl/qsslsocket_openssl_symbols.cpp | 8 ++++---- + 1 file changed, 4 insertions(+), 4 deletions(-) + +diff --git a/qtbase/src/network/ssl/qsslsocket_openssl_symbols.cpp b/qtbase/src/network/ssl/qsslsocket_openssl_symbols.cpp +index 4e6200f..d9c3e7d 100644 +--- a/qtbase/src/network/ssl/qsslsocket_openssl_symbols.cpp ++++ b/qtbase/src/network/ssl/qsslsocket_openssl_symbols.cpp +@@ -585,8 +585,8 @@ static QPair loadOpenSsl() + #endif + #if defined(SHLIB_VERSION_NUMBER) && !defined(Q_OS_QNX) // on QNX, the libs are always libssl.so and libcrypto.so + // first attempt: the canonical name is libssl.so. +- libssl->setFileNameAndVersion(QLatin1String("ssl"), QLatin1String(SHLIB_VERSION_NUMBER)); +- libcrypto->setFileNameAndVersion(QLatin1String("crypto"), QLatin1String(SHLIB_VERSION_NUMBER)); ++ libssl->setFileNameAndVersion(QLatin1String("@openssl@/lib/libssl"), QLatin1String(SHLIB_VERSION_NUMBER)); ++ libcrypto->setFileNameAndVersion(QLatin1String("@openssl@/lib/libcrypto"), QLatin1String(SHLIB_VERSION_NUMBER)); + if (libcrypto->load() && libssl->load()) { + // libssl.so. and libcrypto.so. found + return pair; +@@ -597,8 +597,8 @@ static QPair loadOpenSsl() + #endif + + // second attempt: find the development files libssl.so and libcrypto.so +- libssl->setFileNameAndVersion(QLatin1String("ssl"), -1); +- libcrypto->setFileNameAndVersion(QLatin1String("crypto"), -1); ++ libssl->setFileNameAndVersion(QLatin1String("@openssl@/lib/libssl"), -1); ++ libcrypto->setFileNameAndVersion(QLatin1String("@openssl@/lib/libcrypto"), -1); + if (libcrypto->load() && libssl->load()) { + // libssl.so.0 and libcrypto.so.0 found + return pair; +-- +2.1.3 + diff --git a/pkgs/development/libraries/qt-5/0012-dlopen-dbus.patch b/pkgs/development/libraries/qt-5/0012-dlopen-dbus.patch new file mode 100644 index 000000000000..f32386e114b7 --- /dev/null +++ b/pkgs/development/libraries/qt-5/0012-dlopen-dbus.patch @@ -0,0 +1,25 @@ +From eec8a79c6cc9e2c65fd43db48ca2347de3ae0c5e Mon Sep 17 00:00:00 2001 +From: Thomas Tuegel +Date: Mon, 1 Dec 2014 17:38:04 -0600 +Subject: [PATCH] dlopen-dbus + +--- + qtbase/src/dbus/qdbus_symbols.cpp | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/qtbase/src/dbus/qdbus_symbols.cpp b/qtbase/src/dbus/qdbus_symbols.cpp +index a7a1b67..661baf1 100644 +--- a/qtbase/src/dbus/qdbus_symbols.cpp ++++ b/qtbase/src/dbus/qdbus_symbols.cpp +@@ -93,7 +93,7 @@ bool qdbus_loadLibDBus() + + static int majorversions[] = { 3, 2, -1 }; + lib->unload(); +- lib->setFileName(QLatin1String("dbus-1")); ++ lib->setFileName(QLatin1String("@dbus_libs@/lib/libdbus-1")); + for (uint i = 0; i < sizeof(majorversions) / sizeof(majorversions[0]); ++i) { + lib->setFileNameAndVersion(lib->fileName(), majorversions[i]); + if (lib->load() && lib->resolve("dbus_connection_open_private")) +-- +2.1.3 + diff --git a/pkgs/development/libraries/qt-5/default.nix b/pkgs/development/libraries/qt-5/default.nix index 0fce4203a9a6..31003376fa03 100644 --- a/pkgs/development/libraries/qt-5/default.nix +++ b/pkgs/development/libraries/qt-5/default.nix @@ -3,9 +3,9 @@ , mesaSupported, mesa, mesa_glu, openssl, dbus, cups, pkgconfig , libtiff, glib, icu, mysql, postgresql, sqlite, perl, coreutils, libXi , gdk_pixbuf, python, gdb, xlibs, libX11, libxcb, xcbutil, xcbutilimage -, xcbutilkeysyms, xcbutilwm,udev, libxml2, libxslt, pcre, libxkbcommon +, xcbutilkeysyms, xcbutilwm, udev, libxml2, libxslt, pcre, libxkbcommon , alsaLib, gstreamer, gst_plugins_base -, pulseaudio, bison, flex, gperf, ruby, libwebp +, pulseaudio, bison, flex, gperf, ruby, libwebp, libXcursor , flashplayerFix ? false , gtkStyle ? false, libgnomeui, gtk, GConf, gnome_vfs , buildDocs ? false @@ -45,24 +45,40 @@ stdenv.mkDerivation rec { ''; patches = - [ ./glib-2.32.patch - ./qt-5.3-tzdir.patch + optional gtkStyle (substituteAll { - src = ./qt-5.3-dlopen-absolute-paths.patch; - inherit cups icu libXfixes; - glibc = stdenv.gcc.libc; - openglDriver = if mesaSupported then mesa.driverLink else "/no-such-path"; - }) - ] ++ optional gtkStyle (substituteAll { - src = ./dlopen-gtkstyle.patch; + src = ./0001-dlopen-gtkstyle.patch; # substituteAll ignores env vars starting with capital letter gconf = GConf; inherit gnome_vfs libgnomeui gtk; }) - ++ optional flashplayerFix (substituteAll { - src = ./dlopen-webkit-nsplugin.patch; + ++ optional flashplayerFix + (substituteAll { + src = ./0002-dlopen-webkit-nsplugin.patch; inherit gtk gdk_pixbuf; - }); + }) + ++ optional flashplayerFix + (substituteAll { + src = ./0007-dlopen-webkit-gtk.patch; + inherit gtk; + }) + ++ [ + ./0003-glib-2.32.patch + (substituteAll { + src = ./0004-dlopen-resolv.patch; + glibc = stdenv.gcc.libc; + }) + (substituteAll { + src = ./0005-dlopen-gl.patch; + openglDriver = if mesaSupported then mesa.driverLink else "/no-such-path"; + }) + ./0006-tzdir.patch + (substituteAll { src = ./0008-dlopen-webkit-udev.patch; inherit udev; }) + (substituteAll { src = ./0009-dlopen-serialport-udev.patch; inherit udev; }) + (substituteAll { src = ./0010-dlopen-libXcursor.patch; inherit libXcursor; }) + (substituteAll { src = ./0011-dlopen-openssl.patch; inherit openssl; }) + (substituteAll { src = ./0012-dlopen-dbus.patch; dbus_libs = dbus; }) + ]; preConfigure = '' export LD_LIBRARY_PATH="$PWD/qtbase/lib:$PWD/qtbase/plugins/platforms:$PWD/qttools/lib:$LD_LIBRARY_PATH" diff --git a/pkgs/development/libraries/qt-5/dlopen-webkit-nsplugin.patch b/pkgs/development/libraries/qt-5/dlopen-webkit-nsplugin.patch deleted file mode 100644 index 7cd90551454f..000000000000 --- a/pkgs/development/libraries/qt-5/dlopen-webkit-nsplugin.patch +++ /dev/null @@ -1,36 +0,0 @@ -diff -ruN qt-everywhere-opensource-src-5.1.1-orig/qtwebkit/Source/WebCore/plugins/qt/PluginPackageQt.cpp qt-everywhere-opensource-src-5.1.1/qtwebkit/Source/WebCore/plugins/qt/PluginPackageQt.cpp ---- qt-everywhere-opensource-src-5.1.1-orig/qtwebkit/Source/WebCore/plugins/qt/PluginPackageQt.cpp 2013-08-25 20:04:47.000000000 +0200 -+++ qt-everywhere-opensource-src-5.1.1/qtwebkit/Source/WebCore/plugins/qt/PluginPackageQt.cpp 2013-09-25 17:59:45.925363807 +0200 -@@ -132,7 +132,7 @@ - } - } - -- QLibrary library(QLatin1String("libgtk-x11-2.0"), 0); -+ QLibrary library(QLatin1String("@gtk@/lib/libgtk-x11-2.0"), 0); - if (library.load()) { - typedef void *(*gtk_init_check_ptr)(int*, char***); - gtk_init_check_ptr gtkInitCheck = (gtk_init_check_ptr)library.resolve("gtk_init_check"); -diff -ruN qt-everywhere-opensource-src-5.1.1-orig/qtwebkit/Source/WebCore/plugins/qt/PluginViewQt.cpp qt-everywhere-opensource-src-5.1.1/qtwebkit/Source/WebCore/plugins/qt/PluginViewQt.cpp ---- qt-everywhere-opensource-src-5.1.1-orig/qtwebkit/Source/WebCore/plugins/qt/PluginViewQt.cpp 2013-08-25 20:04:47.000000000 +0200 -+++ qt-everywhere-opensource-src-5.1.1/qtwebkit/Source/WebCore/plugins/qt/PluginViewQt.cpp 2013-09-25 18:00:29.551215155 +0200 -@@ -702,7 +702,7 @@ - // support gdk based plugins (like flash) that use a different X connection. - // The code below has the same effect as this one: - // Display *gdkDisplay = gdk_x11_display_get_xdisplay(gdk_display_get_default()); -- QLibrary library(QLatin1String("libgdk-x11-2.0"), 0); -+ QLibrary library(QLatin1String("@gdk_pixbuf@/lib/libgdk-x11-2.0"), 0); - if (!library.load()) - return 0; - -diff -ruN qt-everywhere-opensource-src-5.1.1-orig/qtwebkit/Source/WebKit2/WebProcess/Plugins/Netscape/x11/NetscapePluginX11.cpp qt-everywhere-opensource-src-5.1.1/qtwebkit/Source/WebKit2/WebProcess/Plugins/Netscape/x11/NetscapePluginX11.cpp ---- qt-everywhere-opensource-src-5.1.1-orig/qtwebkit/Source/WebKit2/WebProcess/Plugins/Netscape/x11/NetscapePluginX11.cpp 2013-08-25 20:04:42.000000000 +0200 -+++ qt-everywhere-opensource-src-5.1.1/qtwebkit/Source/WebKit2/WebProcess/Plugins/Netscape/x11/NetscapePluginX11.cpp 2013-09-25 18:04:54.955408293 +0200 -@@ -64,7 +64,7 @@ - // The code below has the same effect as this one: - // Display *gdkDisplay = gdk_x11_display_get_xdisplay(gdk_display_get_default()); - -- QLibrary library(QLatin1String("libgdk-x11-2.0"), 0); -+ QLibrary library(QLatin1String("@gdk_pixbuf@/libgdk-x11-2.0"), 0); - if (!library.load()) - return 0; - diff --git a/pkgs/development/libraries/qt-5/glib-2.32.patch b/pkgs/development/libraries/qt-5/glib-2.32.patch deleted file mode 100644 index eb71e79d1472..000000000000 --- a/pkgs/development/libraries/qt-5/glib-2.32.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -ruN qt-everywhere-opensource-src-5.1.1-orig/qtscript/src/3rdparty/javascriptcore/JavaScriptCore/wtf/Threading.h qt-everywhere-opensource-src-5.1.1/qtscript/src/3rdparty/javascriptcore/JavaScriptCore/wtf/Threading.h ---- qt-everywhere-opensource-src-5.1.1-orig/qtscript/src/3rdparty/javascriptcore/JavaScriptCore/wtf/Threading.h 2013-08-25 20:04:35.000000000 +0200 -+++ qt-everywhere-opensource-src-5.1.1/qtscript/src/3rdparty/javascriptcore/JavaScriptCore/wtf/Threading.h 2013-09-25 18:09:22.154639482 +0200 -@@ -81,7 +81,7 @@ - #include - #elif PLATFORM(GTK) - #include --typedef struct _GMutex GMutex; -+typedef union _GMutex GMutex; - typedef struct _GCond GCond; - #endif - diff --git a/pkgs/development/libraries/qt-5/qt-5.3-dlopen-absolute-paths.patch b/pkgs/development/libraries/qt-5/qt-5.3-dlopen-absolute-paths.patch deleted file mode 100644 index 66cf342c1076..000000000000 --- a/pkgs/development/libraries/qt-5/qt-5.3-dlopen-absolute-paths.patch +++ /dev/null @@ -1,24 +0,0 @@ -diff -ruN qt-everywhere-opensource-src-5.1.1-orig/qtbase/src/network/kernel/qhostinfo_unix.cpp qt-everywhere-opensource-src-5.1.1/qtbase/src/network/kernel/qhostinfo_unix.cpp ---- qt-everywhere-opensource-src-5.1.1-orig/qtbase/src/network/kernel/qhostinfo_unix.cpp 2013-08-25 20:03:35.000000000 +0200 -+++ qt-everywhere-opensource-src-5.1.1/qtbase/src/network/kernel/qhostinfo_unix.cpp 2013-09-25 17:43:14.047015411 +0200 -@@ -103,7 +103,7 @@ - if (!lib.load()) - #endif - { -- lib.setFileName(QLatin1String("resolv")); -+ lib.setFileName(QLatin1String("@glibc@/lib/libresolv")); - if (!lib.load()) - return; - } -diff -ruN qt-everywhere-opensource-src-5.1.1-orig/qtbase/src/plugins/platforms/xcb/qglxintegration.cpp qt-everywhere-opensource-src-5.1.1/qtbase/src/plugins/platforms/xcb/qglxintegration.cpp ---- qt-everywhere-opensource-src-5.1.1-orig/qtbase/src/plugins/platforms/xcb/qglxintegration.cpp 2013-08-25 20:03:35.000000000 +0200 -+++ qt-everywhere-opensource-src-5.1.1/qtbase/src/plugins/platforms/xcb/qglxintegration.cpp 2013-09-25 17:51:29.834674976 +0200 -@@ -379,7 +379,7 @@ - { - extern const QString qt_gl_library_name(); - // QLibrary lib(qt_gl_library_name()); -- QLibrary lib(QLatin1String("GL")); -+ QLibrary lib(QLatin1String("@openglDriver@/lib/libGL")); - glXGetProcAddressARB = (qt_glXGetProcAddressARB) lib.resolve("glXGetProcAddressARB"); - } - } From b409bd78212be306f00d832b0670c6088f5692e8 Mon Sep 17 00:00:00 2001 From: Thomas Tuegel Date: Wed, 3 Dec 2014 05:24:24 -0600 Subject: [PATCH 076/937] qt5: add ttuegel to maintainers --- pkgs/development/libraries/qt-5/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/development/libraries/qt-5/default.nix b/pkgs/development/libraries/qt-5/default.nix index 31003376fa03..d11980752976 100644 --- a/pkgs/development/libraries/qt-5/default.nix +++ b/pkgs/development/libraries/qt-5/default.nix @@ -176,7 +176,7 @@ stdenv.mkDerivation rec { homepage = http://qt-project.org; description = "A cross-platform application framework for C++"; license = "GPL/LGPL"; - maintainers = [ maintainers.bbenoist maintainers.qknight ]; + maintainers = with maintainers; [ bbenoist qknight ttuegel ]; platforms = platforms.linux; }; } From 9889f1b545725c6f13e6a56966a81dc61b50aa7e Mon Sep 17 00:00:00 2001 From: Georges Dubus Date: Fri, 17 Oct 2014 17:01:12 +0200 Subject: [PATCH 077/937] Added the cloud-init service --- nixos/modules/module-list.nix | 1 + nixos/modules/services/system/cloud-init.nix | 152 +++++++++++++++++++ 2 files changed, 153 insertions(+) create mode 100644 nixos/modules/services/system/cloud-init.nix diff --git a/nixos/modules/module-list.nix b/nixos/modules/module-list.nix index cf9e7fa3bfa1..ca11f00accc7 100755 --- a/nixos/modules/module-list.nix +++ b/nixos/modules/module-list.nix @@ -304,6 +304,7 @@ ./services/security/torify.nix ./services/security/tor.nix ./services/security/torsocks.nix + ./services/system/cloud-init.nix ./services/system/dbus.nix ./services/system/kerberos.nix ./services/system/nscd.nix diff --git a/nixos/modules/services/system/cloud-init.nix b/nixos/modules/services/system/cloud-init.nix new file mode 100644 index 000000000000..0ef31ef8a8b9 --- /dev/null +++ b/nixos/modules/services/system/cloud-init.nix @@ -0,0 +1,152 @@ +{ config, lib, pkgs, ... }: + +with lib; + +let cfg = config.services.cloud-init; + path = with pkgs; [ cloud-init nettools utillinux e2fsprogs shadow dmidecode openssh ]; + configFile = pkgs.writeText "cloud-init.cfg" '' +users: + - root + +disable_root: false +preserve_hostname: false + +cloud_init_modules: + - migrator + - seed_random + - bootcmd + - write-files + - growpart + - resizefs + - set_hostname + - update_hostname + - update_etc_hosts + - ca-certs + - rsyslog + - users-groups + +cloud_config_modules: + - emit_upstart + - disk_setup + - mounts + - ssh-import-id + - set-passwords + - timezone + - disable-ec2-metadata + - runcmd + - ssh + +cloud_final_modules: + - rightscale_userdata + - scripts-vendor + - scripts-per-once + - scripts-per-boot + - scripts-per-instance + - scripts-user + - ssh-authkey-fingerprints + - keys-to-console + - phone-home + - final-message + - power-state-change +''; +in +{ + options = { + + services.cloud-init = { + + enable = mkOption { + type = types.bool; + default = false; + description = '' + Enable the cloud-init service. This services reads + configuration metadata in a cloud environment and configures + the machine according to this metadata. + + This configuration is not completely compatible with the + NixOS way of doing configuration, as configuration done by + cloud-init might be overriden by a subsequent nixos-rebuild + call. However, some parts of cloud-init fall outside of + NixOS's responsibility, like filesystem resizing and ssh + public key provisioning, and cloud-init is useful for that + parts. Thus, be wary that using cloud-init in NixOS might + come as some cost. + ''; + }; + + }; + + }; + + config = mkIf cfg.enable { + + systemd.services.cloud-init-local = + { description = "Initial cloud-init job (pre-networking)"; + wantedBy = [ "multi-user.target" ]; + wants = [ "local-fs.target" ]; + after = [ "local-fs.target" ]; + path = path; + serviceConfig = + { Type = "oneshot"; + ExecStart = "${pkgs.cloud-init}/bin/cloud-init -f ${configFile} init --local"; + RemainAfterExit = "yes"; + TimeoutSec = "0"; + StandardOutput = "journal+console"; + }; + }; + + systemd.services.cloud-init = + { description = "Initial cloud-init job (metadata service crawler)"; + wantedBy = [ "multi-user.target" ]; + wants = [ "local-fs.target" "cloud-init-local.service" "sshd.service" "sshd-keygen.service" ]; + after = [ "local-fs.target" "network.target" "cloud-init-local.service" ]; + before = [ "sshd.service" "sshd-keygen.service" ]; + requires = [ "network.target "]; + path = path; + serviceConfig = + { Type = "oneshot"; + ExecStart = "${pkgs.cloud-init}/bin/cloud-init -f ${configFile} init"; + RemainAfterExit = "yes"; + TimeoutSec = "0"; + StandardOutput = "journal+console"; + }; + }; + + systemd.services.cloud-config = + { description = "Apply the settings specified in cloud-config"; + wantedBy = [ "multi-user.target" ]; + wants = [ "network.target" ]; + after = [ "network.target" "syslog.target" "cloud-config.target" ]; + + path = path; + serviceConfig = + { Type = "oneshot"; + ExecStart = "${pkgs.cloud-init}/bin/cloud-init -f ${configFile} modules --mode=config"; + RemainAfterExit = "yes"; + TimeoutSec = "0"; + StandardOutput = "journal+console"; + }; + }; + + systemd.services.cloud-final = + { description = "Execute cloud user/final scripts"; + wantedBy = [ "multi-user.target" ]; + wants = [ "network.target" ]; + after = [ "network.target" "syslog.target" "cloud-config.service" "rc-local.service" ]; + requires = [ "cloud-config.target" ]; + path = path; + serviceConfig = + { Type = "oneshot"; + ExecStart = "${pkgs.cloud-init}/bin/cloud-init -f ${configFile} modules --mode=final"; + RemainAfterExit = "yes"; + TimeoutSec = "0"; + StandardOutput = "journal+console"; + }; + }; + + systemd.targets.cloud-config = + { description = "Cloud-config availability"; + requires = [ "cloud-init-local.service" "cloud-init.service" ]; + }; + }; +} From 91398001d85ed39a5512c037e9eef38acddd1545 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Sat, 29 Nov 2014 11:13:37 +0100 Subject: [PATCH 078/937] libevdev: minor update Sadly, I could find no kind of news, changelog, or announcement. upstream-tracker.org shows no warnings. --- pkgs/development/libraries/libevdev/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/libevdev/default.nix b/pkgs/development/libraries/libevdev/default.nix index 5dac8f888959..fd16866cceeb 100644 --- a/pkgs/development/libraries/libevdev/default.nix +++ b/pkgs/development/libraries/libevdev/default.nix @@ -1,11 +1,11 @@ { stdenv, fetchurl, python }: stdenv.mkDerivation rec { - name = "libevdev-1.3"; + name = "libevdev-1.3.1"; src = fetchurl { url = "http://www.freedesktop.org/software/libevdev/${name}.tar.xz"; - sha256 = "0iil4pnla0kjdx52ay7igq65sx32sjbzn1wx9q3v74m5g7712m16"; + sha256 = "0hr6xjp7vcnr7lnr1il03235rcslqb95yv7j88qh51q0bwcpcz2b"; }; buildInputs = [ python ]; From ea557c8fd18bd721f4e8017c0da2020e92c251e3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Sat, 29 Nov 2014 11:19:00 +0100 Subject: [PATCH 079/937] xorg xf86-input-evdev: update and add needed inputs --- pkgs/servers/x11/xorg/default.nix | 6 +++--- pkgs/servers/x11/xorg/overrides.nix | 1 + pkgs/servers/x11/xorg/tarballs-7.7.list | 2 +- 3 files changed, 5 insertions(+), 4 deletions(-) diff --git a/pkgs/servers/x11/xorg/default.nix b/pkgs/servers/x11/xorg/default.nix index ec56ce185b9c..8e4566d906d4 100644 --- a/pkgs/servers/x11/xorg/default.nix +++ b/pkgs/servers/x11/xorg/default.nix @@ -1375,11 +1375,11 @@ let }) // {inherit ;}; xf86inputevdev = (mkDerivation "xf86inputevdev" { - name = "xf86-input-evdev-2.8.4"; + name = "xf86-input-evdev-2.9.1"; builder = ./builder.sh; src = fetchurl { - url = mirror://xorg/individual/driver/xf86-input-evdev-2.8.4.tar.bz2; - sha256 = "030haki1h0m85h91c91812gdnk6znfamw5kpr010zxwwbsgxxyl5"; + url = mirror://xorg/individual/driver/xf86-input-evdev-2.9.1.tar.bz2; + sha256 = "1y82hpx86rngb0yrvcl4ni88wkc3zf9dj25myjk91b7ymll07qqc"; }; buildInputs = [pkgconfig inputproto udev xorgserver xproto ]; }) // {inherit inputproto udev xorgserver xproto ;}; diff --git a/pkgs/servers/x11/xorg/overrides.nix b/pkgs/servers/x11/xorg/overrides.nix index 2fa9a7fddc5d..a95d88186515 100644 --- a/pkgs/servers/x11/xorg/overrides.nix +++ b/pkgs/servers/x11/xorg/overrides.nix @@ -173,6 +173,7 @@ in xf86inputevdev = attrs: attrs // { preBuild = "sed -e '/motion_history_proc/d; /history_size/d;' -i src/*.c"; installFlags = "sdkdir=\${out}/include/xorg"; + buildInputs = attrs.buildInputs ++ [ args.mtdev args.libevdev ]; }; xf86inputmouse = attrs: attrs // { diff --git a/pkgs/servers/x11/xorg/tarballs-7.7.list b/pkgs/servers/x11/xorg/tarballs-7.7.list index fb5f444a6955..746880171528 100644 --- a/pkgs/servers/x11/xorg/tarballs-7.7.list +++ b/pkgs/servers/x11/xorg/tarballs-7.7.list @@ -115,7 +115,7 @@ mirror://xorg/individual/proto/xextproto-7.3.0.tar.bz2 mirror://xorg/X11R7.7/src/everything/xf86bigfontproto-1.2.0.tar.bz2 mirror://xorg/X11R7.7/src/everything/xf86dgaproto-2.1.tar.bz2 mirror://xorg/X11R7.7/src/everything/xf86driproto-2.1.1.tar.bz2 -mirror://xorg/individual/driver/xf86-input-evdev-2.8.4.tar.bz2 +mirror://xorg/individual/driver/xf86-input-evdev-2.9.1.tar.bz2 mirror://xorg/individual/driver/xf86-input-joystick-1.6.2.tar.bz2 mirror://xorg/individual/driver/xf86-input-keyboard-1.8.0.tar.bz2 mirror://xorg/individual/driver/xf86-input-mouse-1.9.1.tar.bz2 From 43c4d78bc6e19476c122efc82316122722e988aa Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Wed, 3 Dec 2014 13:49:33 +0100 Subject: [PATCH 080/937] popplerQt4: re-introduce the subpixel rendering patch --- pkgs/development/libraries/poppler/default.nix | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/pkgs/development/libraries/poppler/default.nix b/pkgs/development/libraries/poppler/default.nix index feb3750907f5..39059905a025 100644 --- a/pkgs/development/libraries/poppler/default.nix +++ b/pkgs/development/libraries/poppler/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchurl, fetchgit, pkgconfig, cmake, libiconvOrEmpty, libintlOrEmpty +{ stdenv, fetchurl, fetchpatch, pkgconfig, cmake, libiconvOrEmpty, libintlOrEmpty , zlib, curl, cairo, freetype, fontconfig, lcms, libjpeg, openjpeg , qt4Support ? false, qt4 ? null }: @@ -7,6 +7,14 @@ let version = "0.28.1"; # even major numbers are stable sha256 = "01pxjdbhvpxf00ncf8d9wxc8gkcqcxz59lwrpa151ah988inxkrc"; + # This is for Okular (and similar) to support subpixel rendering. + # It's kept from upstream because of political reasons. + qtcairo_patch = fetchpatch { + url = "https://github.com/giddie/poppler-qt4-cairo-backend/compare/" + + "fa1d636...b30f96c.diff"; # update to current maint...qt4-lcd + sha256 = "0g18y247k2vcz1n56rnfpy226f22v4r9c7pk8cf2h9l12vz2qxkm"; + }; + poppler_drv = nameSuff: merge: stdenv.mkDerivation (stdenv.lib.mergeAttrsByFuncDefaultsClean [ rec { name = "poppler-${nameSuff}-${version}"; @@ -53,6 +61,7 @@ let poppler_glib = poppler_drv "glib" { }; poppler_qt4 = poppler_drv "qt4" { + patches = [ qtcairo_patch ]; propagatedBuildInputs = [ qt4 poppler_glib ]; NIX_LDFLAGS = "-lpoppler"; postConfigure = '' From abd016cea870c3b7bc1257dc093d90bc915c3f61 Mon Sep 17 00:00:00 2001 From: Marc Weber Date: Thu, 4 Dec 2014 15:32:29 +0100 Subject: [PATCH 081/937] Refactoring vim plugins again: - sort automatcially generated vim derivations - move the plugins to be derived by VAM into its own file: vim-plugin-names - rename vimrc into vimUtils moving all common code into it so that it is possible to use it within ~/.nixpkgs/config.nix - Moving all important documentation into vimUtils - provide vimPlugins.pluginnames2Nix to provide a bin/vim-* command writing updated derivations into its buffer VAM's repository's nix.vim got some improvements @ VAM repository, eg hg fetchout out got fixed and shell failures are noticed now (Thanks to Arseniy Seroka) --- pkgs/misc/vim-plugins/default.nix | 1435 +++++++++++------------- pkgs/misc/vim-plugins/vim-plugin-names | 55 + pkgs/misc/vim-plugins/vim-utils.nix | 384 +++++++ pkgs/misc/vim-plugins/vimrc.nix | 203 ---- pkgs/top-level/all-packages.nix | 4 +- 5 files changed, 1068 insertions(+), 1013 deletions(-) create mode 100644 pkgs/misc/vim-plugins/vim-plugin-names create mode 100644 pkgs/misc/vim-plugins/vim-utils.nix delete mode 100644 pkgs/misc/vim-plugins/vimrc.nix diff --git a/pkgs/misc/vim-plugins/default.nix b/pkgs/misc/vim-plugins/default.nix index af75adf2976d..21d289b8f5ab 100644 --- a/pkgs/misc/vim-plugins/default.nix +++ b/pkgs/misc/vim-plugins/default.nix @@ -1,153 +1,24 @@ # TODO check that no license information gets lost -{ fetchurl, bash, stdenv, python, cmake, vim, perl, ruby, unzip, which, fetchgit, fetchzip, llvmPackages, zip }: +{ fetchurl, bash, stdenv, python, cmake, vim, vimUtils, perl, ruby, unzip, + which, fetchgit, fetchhg, fetchzip, llvmPackages, zip, vim_configurable, + vimPlugins +}: -/* -Typical plugin files: - - plugin/P1.vim - autoload/P1.vim - ftplugin/xyz.vim - doc/plugin-documentation.txt (traditional documentation) - README(.md) (nowadays thanks to github) - -Traditionally plugins were installed into ~/.vim/* so it was your task to keep track -of which files belong to what plugin. Now this problem is "fixed" by nix which -assembles your profile for you. - -Vim offers the :h rtp setting which works for most plugins. Thus adding adding -this to your .vimrc should make most plugins work: - - set rtp+=~/.nix-profile/share/vim-plugins/youcompleteme - " or for p in ["youcompleteme"] | exec 'set rtp+=~/.nix-profile/share/vim-plugins/'.p | endfor - -Its what pathogen, vundle, vim-addon-manager (VAM) and others use. -Learn about some differences by visiting http://vim-wiki.mawercer.de/wiki/topic/vim%20plugin%20managment.html. - -If you want Nix to create a .vimrc for you have a look at vimrc in all-packages.nix. -It also contains VAM code illustrating how to make VAM find plugins in arbitrary locations -*/ - -# provide a function creating tag files for vim help documentation (doc/*.txt) - -let rtpPath = "share/vim-plugins"; - - vimHelpTags = '' - vimHelpTags(){ - if [ -d "$1/doc" ]; then - ${vim}/bin/vim -N -u NONE -i NONE -n -e -s -c "helptags $1/doc" +quit! - fi - } - ''; - - addRtp = path: derivation: - derivation // { rtp = "${derivation}/${path}"; }; - - buildVimPlugin = a@{ - name, - namePrefix ? "vimplugin-", - src, - buildPhase ? "", - path ? (builtins.parseDrvName name).name, - ... - }: - addRtp "${rtpPath}/${path}" (stdenv.mkDerivation (a // { - name = namePrefix + name; - - inherit buildPhase; - - installPhase = '' - target=$out/${rtpPath}/${path} - mkdir -p $out/${rtpPath} - cp -r . $target - ${vimHelpTags} - vimHelpTags $target - ''; - })); +let +inherit (vimUtils.override {inherit vim;}) rtpPath addRtp buildVimPlugin + buildVimPluginFrom2Nix vimHelpTags; in -# The attr names in this set should be equal to names used in the vim-pi project [1] so that -# VAM's dependencies work. How to find the name? -# * http://vam.mawercer.de/ or VAM's -# * grep vim-pi -# * use VAM's completion or :AddonsInfo command -# -# How to create derivations? Experimental derivation creation is provided by VAM, example usage: -# call nix#ExportPluginsForNix({'path_to_nixpkgs': '/etc/nixos/nixpkgs', 'names': ["vim-addon-manager", "vim-addon-nix"], 'cache_file': 'cache'}) -# -# [1] https://bitbucket.org/vimcommunity/vim-pi -/* - Some of the plugin definitions below are generated the following VimL command - provided by vim-addon-manager. - - " Copy /tmp/tmp.vim file and run: :source /tmp/tmp.vim - call nix#ExportPluginsForNix({ - \ 'path_to_nixpkgs': '/etc/nixos/nixpkgs', - \ 'cache_file': '/tmp/vim2nix-cache', - \ 'names': [ - \ "vim-addon-syntax-checker", - \ "vim-addon-other", - \ "vim-addon-local-vimrc", - \ "snipmate", - \ "vim-snippets", - \ "vim-addon-mru", - \ "vim-addon-commenting", - \ "vim-addon-sql", - \ "vim-addon-async", - \ "vim-addon-toggle-buffer", - \ "vim-addon-mw-utils", - \ "matchit.zip", - \ "vim-addon-xdebug", - \ "vim-addon-php-manual", - \ "sourcemap.vim", - \ "vim-iced-coffee-script", - \ "ctrlp", - \ "commentary", - \ "Colour_Sampler_Pack", - \ "Solarized", - \ "vim-coffee-script", - \ "vim-easy-align", - \ "Tagbar", - \ "Tabular", - \ "table-mode", - \ "Syntastic", - \ "vim-signature", - \ "surround", - \ "Supertab", - \ "rust", - \ "rainbow_parentheses", - \ "pathogen", - \ "quickfixstatus", - \ "The_NERD_Commenter", - \ "The_NERD_tree", - \ "vim-latex-live-preview", - \ "Hoogle", - \ "Gundo", - \ "vim-gitgutter", - \ "Gist", - \ "ghcmod", - \ "fugitive", - \ "extradite", - \ "vim-airline", - \ "VimOutliner", - \ "vim2hs", - \ "undotree", - \ "UltiSnips", - \ "wombat256", - \ "vundle", - \ "WebAPI", - \ "YankRing", - \ "vim-addon-manager", - \ "vim-addon-nix", - \ "YUNOcommit" - \ ], - \ }) - -# TODO: think about how to add license information? -*/ - +# This attrs contains two sections: +# The first contains plugins added manually, the second contains plugins +# generated by call nix#ExportPluginsForNix. +# Documentation & usage see vim-utils.nix. +# attribute names should be the same as used by vim-pi to make dependency +# resolution work rec { - inherit rtpPath; + + ### section I: manually mantained plugins a = buildVimPlugin { name = "a-git-2010-11-06"; @@ -192,28 +63,6 @@ rec { }; }; - coffee-script = vim-coffee-script; - - coffeeScript = coffee-script; # backwards compat, added 2014-10-18 - - colors-solarized = Solarized; - - colorsamplerpack = Colour_Sampler_Pack; - - Colour_Sampler_Pack = buildVimPlugin { - name = "Colour_Sampler_Pack"; - src = fetchurl { - url = "http://www.vim.org/scripts/download_script.php?src_id=18915"; - name = "ColorSamplerPack.zip"; - sha256 = "1wsrb3vpqn9fncnalfpvc8r92wk1mcskm4shb3s2h9x5dyihf2rd"; - }; - buildInputs = [ unzip ]; - dependencies = []; - meta = { - url = "http://www.vim.org/scripts/script.php?script_id=625"; - }; - }; - command-t = buildVimPlugin rec { version = "1.8"; name = "command-t-${version}"; @@ -233,28 +82,6 @@ rec { command_T = command-t; # backwards compat, added 2014-10-18 - commentary = buildVimPlugin { - name = "commentary"; - src = fetchgit { - url = "git://github.com/tpope/vim-commentary"; - rev = "401dbd8abee69defe66acf5e9ccc85e2746c27e2"; - sha256 = "3deec79d6c40a6c91fa504423f38c9f6a9e3495804f1996e2420d0ad34fe2da8"; - }; - dependencies = []; - }; - - ctrlp = buildVimPlugin { - name = "ctrlp"; - src = fetchgit { - url = "git://github.com/kien/ctrlp.vim"; - rev = "b5d3fe66a58a13d2ff8b6391f4387608496a030f"; - sha256 = "41f7884973770552395b96f8693da70999dc815462d4018c560d3ff6be462e76"; - }; - dependencies = []; - }; - - easy-align = vim-easy-align; - easymotion = buildVimPlugin { name = "easymotion-git-2014-09-29"; src = fetchgit { @@ -284,51 +111,6 @@ rec { }; }; - extradite = buildVimPlugin { - name = "extradite"; - src = fetchgit { - url = "git://github.com/int3/vim-extradite"; - rev = "af4f3a51b6b654d655121b93c0cd9d8fe9a0c85d"; - sha256 = "d1d29cfbc654134be383747f2cd6b14b7a87de75f997af6a041f14d7ef61ade6"; - }; - dependencies = []; - }; - - fugitive = buildVimPlugin { - name = "fugitive"; - src = fetchgit { - url = "git://github.com/tpope/vim-fugitive"; - rev = "0374322ba5d85ae44dd9dc44ef31ca015a59097e"; - sha256 = "3bb09693726c4f9fc1695bc8b40c45d64a6a0f1d9a4243b4a79add841013ad6c"; - }; - dependencies = []; - }; - - ghc-mod-vim = ghcmod; - - ghcmod = buildVimPlugin { - name = "ghcmod"; - src = fetchgit { - url = "git://github.com/eagletmt/ghcmod-vim"; - rev = "d5c6c7f3c85608b5b76dc3e7e001f60b86c32cb9"; - sha256 = "ab56d470ea18da3fae021e22bba14460505e61a94f8bf707778dff5eec51cd6d"; - }; - dependencies = []; - }; - - Gist = buildVimPlugin { - name = "Gist"; - src = fetchgit { - url = "git://github.com/mattn/gist-vim"; - rev = "d609d93472db9cf45bd701bebe51adc356631547"; - sha256 = "e5cabc03d5015c589a32f11c654ab9fbd1e91d26ba01f4b737685be81852c511"; - }; - buildInputs = [ zip ]; - dependencies = []; - }; - - gist-vim = Gist; - gitgutter = vim-gitgutter; golang = buildVimPlugin { @@ -344,18 +126,6 @@ rec { }; }; - Gundo = buildVimPlugin { - name = "Gundo"; - src = fetchgit { - url = "https://bitbucket.org/sjl/gundo.vim"; - rev = ""; - sha256 = ""; - }; - dependencies = []; - }; - - gundo = Gundo; - hardtime = buildVimPlugin { name = "hardtime-git-2014-10-21"; src = fetchgit { @@ -424,18 +194,6 @@ rec { }; }; - Hoogle = buildVimPlugin { - name = "Hoogle"; - src = fetchgit { - url = "git://github.com/Twinside/vim-hoogle"; - rev = "81f28318b0d4174984c33df99db7752891c5c4e9"; - sha256 = "0f96f3badb6218cac87d0f7027ff032ecc74f08ad3ada542898278ce11cbd5a0"; - }; - dependencies = []; - }; - - hoogle = Hoogle; - idris-vim = buildVimPlugin { name = "idris-vim-git-2014-10-14"; src = fetchgit { @@ -475,8 +233,6 @@ rec { }; }; - latex-live-preview = vim-latex-live-preview; - lushtags = buildVimPlugin { name = "lushtags-git-2013-12-27"; src = fetchgit { @@ -490,20 +246,6 @@ rec { }; }; - matchit.zip = buildVimPlugin { - name = "matchit.zip"; - src = fetchurl { - url = "http://www.vim.org/scripts/download_script.php?src_id=8196"; - name = "matchit.zip"; - sha256 = "1bbm8j1bhb70kagwdimwy9vcvlrz9ax5bk2a7wrmn4cy87f9xj4l"; - }; - buildInputs = [ unzip ]; - dependencies = []; - meta = { - url = "http://www.vim.org/scripts/script.php?script_id=39"; - }; - }; - neco-ghc = buildVimPlugin { name = "neco-ghc-git-2014-10-17"; src = fetchgit { @@ -560,28 +302,6 @@ rec { nerdcommenter = The_NERD_Commenter; - nerdtree = The_NERD_tree; - - pathogen = buildVimPlugin { - name = "pathogen"; - src = fetchgit { - url = "git://github.com/tpope/vim-pathogen"; - rev = "91e6378908721d20514bbe5d18d292a0a15faf0c"; - sha256 = "24c1897d6b58576b2189c90050a7f8ede72a51343c752e9d030e833dbe5cac6f"; - }; - dependencies = []; - }; - - quickfixstatus = buildVimPlugin { - name = "quickfixstatus"; - src = fetchgit { - url = "git://github.com/dannyob/quickfixstatus"; - rev = "fd3875b914fc51bbefefa8c4995588c088163053"; - sha256 = "7b6831d5da1c23d95f3158c67e4376d32c2f62ab2e30d02d3f3e14dcfd867d9b"; - }; - dependencies = []; - }; - quickrun = buildVimPlugin { name = "quickrun-git-2014-10-08"; src = fetchgit { @@ -614,26 +334,6 @@ rec { }; }; - rainbow_parentheses = buildVimPlugin { - name = "rainbow_parentheses"; - src = fetchgit { - url = "git://github.com/kien/rainbow_parentheses.vim"; - rev = "eb8baa5428bde10ecc1cb14eed1d6e16f5f24695"; - sha256 = "47975a426d06f41811882691d8a51f32bc72f590477ed52b298660486b2488e3"; - }; - dependencies = []; - }; - - rust = buildVimPlugin { - name = "rust"; - src = fetchgit { - url = "git://github.com/wting/rust.vim"; - rev = "0cf510adc5a83ad4c256f576fd36b38c74349d43"; - sha256 = "839f4ea2e045fc41fa2292882576237dc36d714bd78e46728c6696c44d2851d8"; - }; - dependencies = []; - }; - shabadou = buildVimPlugin { name = "shabadou-git-2014-07-27"; src = fetchgit { @@ -647,38 +347,6 @@ rec { }; }; - signature = vim-signature; - - snipmate = buildVimPlugin { - name = "snipmate"; - src = fetchgit { - url = "git://github.com/garbas/vim-snipmate"; - rev = "e6eb057a58e2fe98137997157d0eff9d1a975888"; - sha256 = "4d8f9091b92a75f21d96a6f6a862aa4ad5671ab8317ceef4498eeb14a1524190"; - }; - dependencies = ["vim-addon-mw-utils" "tlib"]; - }; - - Solarized = buildVimPlugin { - name = "Solarized"; - src = fetchgit { - url = "git://github.com/altercation/vim-colors-solarized"; - rev = "528a59f26d12278698bb946f8fb82a63711eec21"; - sha256 = "a1b2ef696eee94dafa76431c31ee260acdd13a7cf87939f27eca431d5aa5a315"; - }; - dependencies = []; - }; - - sourcemap.vim = buildVimPlugin { - name = "sourcemap.vim"; - src = fetchgit { - url = "git://github.com/chikatoike/sourcemap.vim"; - rev = "0dd82d40faea2fdb0771067f46c01deb41610ba1"; - sha256 = "a08c77aea39be4a0a980d62673d1d17fecc518a8aeb9101210e453aaacb78fbd"; - }; - dependencies = []; - }; - stylish-haskell = buildVimPlugin { name = "stylish-haskell-git-2014-07-14"; src = fetchgit { @@ -694,50 +362,6 @@ rec { stylishHaskell = stylish-haskell; # backwards compat, added 2014-10-18 - Supertab = buildVimPlugin { - name = "Supertab"; - src = fetchgit { - url = "git://github.com/ervandew/supertab"; - rev = "fd4e0d06c2b1d9bff2eef1d15e7895b3b4da7cd7"; - sha256 = "5919521b95519d4baa8ed146c340ca739fa7f31dfd305c74ca0ace324ba93d74"; - }; - dependencies = []; - }; - - supertab = Supertab; - - surround = buildVimPlugin { - name = "surround"; - src = fetchgit { - url = "git://github.com/tpope/vim-surround"; - rev = "fa433e0b7330753688f715f3be5d10dc480f20e5"; - sha256 = "5f01daf72d23fc065f4e4e8eac734275474f32bfa276a9d90ce0d20dfe24058d"; - }; - dependencies = []; - }; - - Syntastic = buildVimPlugin { - name = "Syntastic"; - src = fetchgit { - url = "git://github.com/scrooloose/syntastic"; - rev = "e4c94d67a9ba7f35397b4a2f0daa8f346a84a8b9"; - sha256 = "366b5568ddf0db0e35a19bbd3ae4d0dc4accaefe5fdd14159540d26a76e3a96e"; - }; - dependencies = []; - }; - - syntastic = Syntastic; - - table-mode = buildVimPlugin { - name = "table-mode"; - src = fetchgit { - url = "git://github.com/dhruvasagar/vim-table-mode"; - rev = "ea78f6256513b4b853ea01b55b18baf0f9d99f8c"; - sha256 = "570a9660b17489ec6a976d878aec45470bc91c8da41f0e3ab8f09962683b2da7"; - }; - dependencies = []; - }; - tabmerge = buildVimPlugin { name = "tabmerge-git-2010-10-17"; src = fetchgit { @@ -751,30 +375,6 @@ rec { }; }; - Tabular = buildVimPlugin { - name = "Tabular"; - src = fetchgit { - url = "git://github.com/godlygeek/tabular"; - rev = "60f25648814f0695eeb6c1040d97adca93c4e0bb"; - sha256 = "28c860ad621587f2c3213fae47d1a3997746527c17d51e9ab94c209eb7bfeb0f"; - }; - dependencies = []; - }; - - tabular = Tabular; - - Tagbar = buildVimPlugin { - name = "Tagbar"; - src = fetchgit { - url = "git://github.com/majutsushi/tagbar"; - rev = "5283bc834a8c39b058d5eef1173e323b23b04fa0"; - sha256 = "ed2bcbbb9caf476251cbbe650fc685b9e781390f9966f0c75ff02da0677deb1c"; - }; - dependencies = []; - }; - - tagbar = Tagbar; - taglist = buildVimPlugin { name = "taglist-4.6"; meta = with stdenv.lib; { @@ -798,26 +398,6 @@ rec { buildInputs = [ unzip ]; }; - The_NERD_Commenter = buildVimPlugin { - name = "The_NERD_Commenter"; - src = fetchgit { - url = "git://github.com/scrooloose/nerdcommenter"; - rev = "6549cfde45339bd4f711504196ff3e8b766ef5e6"; - sha256 = "ef270ae5617237d68b3d618068e758af8ffd8d3ba27a3799149f7a106cfd178e"; - }; - dependencies = []; - }; - - The_NERD_tree = buildVimPlugin { - name = "The_NERD_tree"; - src = fetchgit { - url = "git://github.com/scrooloose/nerdtree"; - rev = "f8fd2ecce20f5005e6313ce57d6d2a209890c946"; - sha256 = "b86f8923d4068add210101d34c5272b575dcb1c1352992ee878af59db581fd75"; - }; - dependencies = []; - }; - thumbnail = buildVimPlugin { name = "thumbnail-git-2014-07-24"; src = fetchgit { @@ -831,16 +411,6 @@ rec { }; }; - tlib = buildVimPlugin { - name = "tlib"; - src = fetchgit { - url = "git://github.com/tomtom/tlib_vim"; - rev = "88c5a2427e12397f9b5b1819e3d80c2eebe2c411"; - sha256 = "6cbbeb7fcda26028f73836ce3bae880db3e250cf8289804e6e28cb914854b7de"; - }; - dependencies = []; - }; - tmux-navigator = buildVimPlugin { name = "tmux-navigator-git-2014-09-09"; src = fetchgit { @@ -869,316 +439,6 @@ rec { }; }; - UltiSnips = buildVimPlugin { - name = "UltiSnips"; - src = fetchgit { - url = "git://github.com/sirver/ultisnips"; - rev = "cb8536d7240f5f458c292f8aa38fc50278222fe8"; - sha256 = "95bc88fc3dae45896893797cff9bb697f3701572c27442898c661d004b50be16"; - }; - dependencies = []; - }; - - undotree = buildVimPlugin { - name = "undotree"; - src = fetchgit { - url = "git://github.com/mbbill/undotree"; - rev = "88e4a9bc2f7916f24441faf884853a01ba11d294"; - sha256 = "ad55b88db051f57d0c7ddc226a7b7778daab58fa67dc8ac1d78432c0e7d38520"; - }; - dependencies = []; - }; - - vim-addon-actions = buildVimPlugin { - name = "vim-addon-actions"; - src = fetchgit { - url = "git://github.com/MarcWeber/vim-addon-actions"; - rev = "a5d20500fb8812958540cf17862bd73e7af64936"; - sha256 = "d2c3eb7a1f29e7233c6fcf3b02d07efebe8252d404ee593419ad399a5fdf6383"; - }; - dependencies = ["vim-addon-mw-utils" "tlib"]; - }; - - vim-addon-async = buildVimPlugin { - name = "vim-addon-async"; - src = fetchgit { - url = "git://github.com/MarcWeber/vim-addon-async"; - rev = "dadc96e188f1cdacbac62129eb29a1eacfed792c"; - sha256 = "27f941e21a8ca5940bd20914e2a9e3809e554f3ef2c27b3bafb9a153107a5d07"; - }; - dependencies = ["vim-addon-signs"]; - }; - - vim-addon-background-cmd = buildVimPlugin { - name = "vim-addon-background-cmd"; - src = fetchgit { - url = "git://github.com/MarcWeber/vim-addon-background-cmd"; - rev = "14df72660a95804a57c02b9ff0ae3198608e2491"; - sha256 = "5c2ece1f3ff7653eb7c1b40180554e8e89e5ae43d67e7cc159d95c0156135687"; - }; - dependencies = ["vim-addon-mw-utils"]; - }; - - vim-addon-commenting = buildVimPlugin { - name = "vim-addon-commenting"; - src = fetchgit { - url = "git://github.com/MarcWeber/vim-addon-commenting"; - rev = "b7cf748ac1c9bf555cbd347589e3b7196030d20b"; - sha256 = "4ad7d5f6669f0a1b4a24c9ce3649c030d7d3fc8588de4d4d6c3269140fbe9b3e"; - }; - dependencies = []; - }; - - vim-addon-completion = buildVimPlugin { - name = "vim-addon-completion"; - src = fetchgit { - url = "git://github.com/MarcWeber/vim-addon-completion"; - rev = "80f717d68df5b0d7b32228229ddfd29c3e86e435"; - sha256 = "c8c0af8760f2622c4caef371482916861f68a850eb6a7cd746fe8c9ab405c859"; - }; - dependencies = ["tlib"]; - }; - - vim-addon-errorformats = buildVimPlugin { - name = "vim-addon-errorformats"; - src = fetchgit { - url = "git://github.com/MarcWeber/vim-addon-errorformats"; - rev = "dcbb203ad5f56e47e75fdee35bc92e2ba69e1d28"; - sha256 = "a1260206545d5ae17f2e6b3319f5cf1808b74e792979b1c6667d75974cc53f95"; - }; - dependencies = []; - }; - - vim-addon-goto-thing-at-cursor = buildVimPlugin { - name = "vim-addon-goto-thing-at-cursor"; - src = fetchgit { - url = "git://github.com/MarcWeber/vim-addon-goto-thing-at-cursor"; - rev = "f052e094bdb351829bf72ae3435af9042e09a6e4"; - sha256 = "34658ac99d9a630db9c544b3dfcd2c3df69afa5209e27558cc022b7afc2078ea"; - }; - dependencies = ["tlib"]; - }; - - vim-addon-local-vimrc = buildVimPlugin { - name = "vim-addon-local-vimrc"; - src = fetchgit { - url = "git://github.com/MarcWeber/vim-addon-local-vimrc"; - rev = "7689b55ee86dd6046923fd28ceab49da3881abfe"; - sha256 = "f11d13676e2fdfcc9cabc991577f0b2e85909665b6f245aa02f21ff78d6a8556"; - }; - dependencies = []; - }; - - vim-addon-manager = buildVimPlugin { - name = "vim-addon-manager"; - src = fetchgit { - url = "git://github.com/MarcWeber/vim-addon-manager"; - rev = "d6de0d52bfe338eb373a4908b51b0eb89eaf42b0"; - sha256 = "4becba76d3389e4ace9e01c4393bc7bf38767eecf9eee239689054b9ee0c1fc9"; - }; - dependencies = []; - }; - - vim-addon-mru = buildVimPlugin { - name = "vim-addon-mru"; - src = fetchgit { - url = "git://github.com/MarcWeber/vim-addon-mru"; - rev = "e41e39bd9d1bf78ccfd8d5e1bc05ae5e1026c2bb"; - sha256 = "15b70f796f28cbd999060fea7f47408fa8a6cb176cd4915b9cc3dc6c53eed960"; - }; - dependencies = ["vim-addon-other" "vim-addon-mw-utils"]; - }; - - vim-addon-mw-utils = buildVimPlugin { - name = "vim-addon-mw-utils"; - src = fetchgit { - url = "git://github.com/MarcWeber/vim-addon-mw-utils"; - rev = "0c5612fa31ee434ba055e21c76f456244b3b5109"; - sha256 = "4e1b6d1b59050f1063e58ef4bee9e9603616ad184cd9ef7466d0ec3d8e22b91c"; - }; - dependencies = []; - }; - - vim-addon-nix = buildVimPlugin { - name = "vim-addon-nix"; - src = fetchgit { - url = "git://github.com/MarcWeber/vim-addon-nix"; - rev = "7b0a376bb1797fef8da2dc14e768f318bcb671e8"; - sha256 = "c2b0f6f50083063b5e801b872f38d4f00307fe5d7a4f3977a108e5cd10c1c410"; - }; - dependencies = ["vim-addon-completion" "vim-addon-goto-thing-at-cursor" "vim-addon-errorformats" "vim-addon-actions" "vim-addon-mw-utils" "tlib"]; - }; - - vim-addon-other = buildVimPlugin { - name = "vim-addon-other"; - src = fetchgit { - url = "git://github.com/MarcWeber/vim-addon-other"; - rev = "f78720c9cb5bf871cabb13c7cbf94378dbf0163b"; - sha256 = "43f027e4b7576031072515c23c2b09f7f2c8bba7ee43a1e2041a4371bd954d1b"; - }; - dependencies = ["vim-addon-actions" "vim-addon-mw-utils"]; - }; - - vim-addon-php-manual = buildVimPlugin { - name = "vim-addon-php-manual"; - src = fetchgit { - url = "git://github.com/MarcWeber/vim-addon-php-manual"; - rev = "e09ccdce3d2132771d0bd32884553207cc7122d0"; - sha256 = "b2f44be3a1ceca9de7789ea9b5fd36035b720ea529f4301f3771b010d1e453c2"; - }; - dependencies = []; - }; - - vim-addon-signs = buildVimPlugin { - name = "vim-addon-signs"; - src = fetchgit { - url = "git://github.com/MarcWeber/vim-addon-signs"; - rev = "17a49f293d18174ff09d1bfff5ba86e8eee8e8ae"; - sha256 = "a9c03a32e758d51106741605188cb7f00db314c73a26cae75c0c9843509a8fb8"; - }; - dependencies = []; - }; - - vim-addon-sql = buildVimPlugin { - name = "vim-addon-sql"; - src = fetchgit { - url = "git://github.com/MarcWeber/vim-addon-sql"; - rev = "05b8a0c211f1ae4c515c64e91dec555cdf20d90b"; - sha256 = "a1334ae694e0a03229bacc8ba7e08e7223df240244c7378e3f1bd91d74e957c2"; - }; - dependencies = ["vim-addon-completion" "vim-addon-background-cmd" "tlib"]; - }; - - vim-addon-syntax-checker = buildVimPlugin { - name = "vim-addon-syntax-checker"; - src = fetchgit { - url = "git://github.com/MarcWeber/vim-addon-syntax-checker"; - rev = "8eb7217e636ca717d4de5cd03cc0180c5b66ae77"; - sha256 = "aef048e664653b5007df71ac24ed34ec55d8938c763d3f80885a122e445a9b3d"; - }; - dependencies = ["vim-addon-mw-utils" "tlib"]; - }; - - vim-addon-toggle-buffer = buildVimPlugin { - name = "vim-addon-toggle-buffer"; - src = fetchgit { - url = "git://github.com/MarcWeber/vim-addon-toggle-buffer"; - rev = "a1b38b9c5709cba666ed2d84ef06548f675c6b0b"; - sha256 = "672166ecfe0599177afb56b444366f587f77e9659c256ac4e41ee45cb2df6055"; - }; - dependencies = ["vim-addon-mw-utils" "tlib"]; - }; - - vim-addon-xdebug = buildVimPlugin { - name = "vim-addon-xdebug"; - src = fetchgit { - url = "git://github.com/MarcWeber/vim-addon-xdebug"; - rev = "45f26407305b4ce6f8f5f37d2b5e6e4354104172"; - sha256 = "0a7bf2caf36772c94bd25bfbf46bf628623809c9cfab447ff788eb74149464ef"; - }; - dependencies = ["WebAPI" "vim-addon-mw-utils" "vim-addon-signs" "vim-addon-async"]; - }; - - vim-airline = buildVimPlugin { - name = "vim-airline"; - src = fetchgit { - url = "git://github.com/bling/vim-airline"; - rev = "256dec6800342c121c1b26dabc06dafb0c91edca"; - sha256 = "9bb684da91bffc80d8489210fc74476895be81772b1d1370ee0b9a9ec7469750"; - }; - dependencies = []; - }; - - vim-coffee-script = buildVimPlugin { - name = "vim-coffee-script"; - src = fetchgit { - url = "git://github.com/kchmck/vim-coffee-script"; - rev = "827e4a38b07479433b619091469a7495a392df8a"; - sha256 = "89ee4c7cce9f3310be502df6b2dd2e70a715c0b06882afc9c8169fbf58b207d0"; - }; - dependencies = []; - }; - - vim-easy-align = buildVimPlugin { - name = "vim-easy-align"; - src = fetchgit { - url = "git://github.com/junegunn/vim-easy-align"; - rev = "2595ebf9333f3598502276b29f78ad39965bc595"; - sha256 = "1223b587c515169d4b735bf56f109f7bfc4f7c1327e76865f498309f7472ef78"; - }; - dependencies = []; - }; - - vim-gitgutter = buildVimPlugin { - name = "vim-gitgutter"; - src = fetchgit { - url = "git://github.com/airblade/vim-gitgutter"; - rev = "39f011909620e0c7ae555efdace20c3963ac88af"; - sha256 = "585c367c8cf72d7ef511b3beca3d1eae1d68bbd61b9a8d4dc7aea6e0caa4813a"; - }; - dependencies = []; - }; - - vim-iced-coffee-script = buildVimPlugin { - name = "vim-iced-coffee-script"; - src = fetchgit { - url = "git://github.com/noc7c9/vim-iced-coffee-script"; - rev = "e42e0775fa4b1f8840c55cd36ac3d1cedbc1dea2"; - sha256 = "c7859591975a51a1736f99a433d7ca3e7638b417340a0472a63995e16d8ece93"; - }; - dependencies = ["vim-coffee-script"]; - }; - - vim-latex-live-preview = buildVimPlugin { - name = "vim-latex-live-preview"; - src = fetchgit { - url = "git://github.com/xuhdev/vim-latex-live-preview"; - rev = "18625ceca4de5984f3df50cdd0202fc13eb9e37c"; - sha256 = "261852d3830189a50176f997a4c6b4ec7e25893c5b7842a3eb57eb7771158722"; - }; - dependencies = []; - }; - - vim-signature = buildVimPlugin { - name = "vim-signature"; - src = fetchgit { - url = "git://github.com/kshenoy/vim-signature"; - rev = "29fc095535c4a3206d3194305739b33cd72ffad2"; - sha256 = "46101330cd291dd819552ba1f47571342fe671d6985d06897c34465b87fd7bc4"; - }; - dependencies = []; - }; - - vim-snippets = buildVimPlugin { - name = "vim-snippets"; - src = fetchgit { - url = "git://github.com/honza/vim-snippets"; - rev = "d05ca095ef93e256b45accb1e4b56ae3c44af125"; - sha256 = "1685ebe317ad1029bfc25e06c8f14cc3c14db887a7e1d743378c3748e416ac77"; - }; - dependencies = []; - }; - - vim2hs = buildVimPlugin { - name = "vim2hs"; - src = fetchgit { - url = "git://github.com/dag/vim2hs"; - rev = "f2afd55704bfe0a2d66e6b270d247e9b8a7b1664"; - sha256 = "485fc58595bb4e50f2239bec5a4cbb0d8f5662aa3f744e42c110cd1d66b7e5b0"; - }; - dependencies = []; - }; - - VimOutliner = buildVimPlugin { - name = "VimOutliner"; - src = fetchgit { - url = "git://github.com/vimoutliner/vimoutliner"; - rev = "91dccce033ca3924ad47831d29cd93fccc546013"; - sha256 = "c6dd19df1432908574e84a339a15076ddf8bfd6dfd2544b220928c29d9f752d3"; - }; - dependencies = []; - }; - vimproc = buildVimPlugin { name = "vimproc-git-2014-10-03"; src = fetchgit { @@ -1226,16 +486,6 @@ rec { ''; }; - vundle = buildVimPlugin { - name = "vundle"; - src = fetchgit { - url = "git://github.com/gmarik/vundle"; - rev = "0b28e334e65b6628b0a61c412fcb45204a2f2bab"; - sha256 = "9681d471d1391626cb9ad22b2b469003d9980cd23c5c3a8d34666376447e6204"; - }; - dependencies = []; - }; - watchdogs = buildVimPlugin { name = "watchdogs-git-2014-10-18"; src = fetchgit { @@ -1249,33 +499,6 @@ rec { }; }; - WebAPI = buildVimPlugin { - name = "WebAPI"; - src = fetchgit { - url = "git://github.com/mattn/webapi-vim"; - rev = "a7789abffe936db56e3152e23733847f94755753"; - sha256 = "455b84d9fd13200ff5ced5d796075f434a7fb9c00f506769174579266ae2be80"; - }; - buildInputs = [ zip ]; - dependencies = []; - }; - - webapi-vim = WebAPI; - - wombat256 = buildVimPlugin { - name = "wombat256"; - src = fetchurl { - url = "http://www.vim.org/scripts/download_script.php?src_id=13400"; - name = "wombat256mod.vim"; - sha256 = "1san0jg9sfm6chhnr1wc5nhczlp11ibca0v7i4gf68h9ick9mysn"; - }; - buildInputs = [ unzip ]; - dependencies = []; - meta = { - url = "http://www.vim.org/scripts/script.php?script_id=2465"; - }; - }; - xdebug = buildVimPlugin { name = "xdebug-git-2012-08-15"; src = fetchgit { @@ -1290,22 +513,6 @@ rec { }; }; - YankRing = buildVimPlugin { - name = "YankRing"; - src = fetchurl { - url = "http://www.vim.org/scripts/download_script.php?src_id=20842"; - name = "yankring_180.zip"; - sha256 = "0bsq4pxagy12jqxzs7gcf25k5ahwif13ayb9k8clyhm0jjdkf0la"; - }; - buildInputs = [ unzip ]; - dependencies = []; - meta = { - url = "http://www.vim.org/scripts/script.php?script_id=1234"; - }; - }; - - yankring = YankRing; - YouCompleteMe = addRtp "${rtpPath}/youcompleteme" (stdenv.mkDerivation { src = fetchgit { url = "https://github.com/Valloric/YouCompleteMe.git"; @@ -1361,4 +568,616 @@ rec { dependencies = []; }; + + ### section II: automatically generated plugin derivations + # Update with vimUtils.vimPlugins.pluginnames2Nix command + + # This is not a plugin, it provides bin/vim-open-buffer-with-plugins-derivations + # which recreates this the following derivations based on ./vim-plugin-names + pluginnames2nix = vimUtils.pluginnames2Nix { + name = "vim-plugin-names-to-nix"; + namefiles = [./vim-plugin-names]; + }; + + # aliasess + tabular = Tabular; + tagbar = Tagbar; + coffee-script = vim-coffee-script; + coffeeScript = coffee-script; # backwards compat, added 2014-10-18 + colors-solarized = Solarized; + colorsamplerpack = Colour_Sampler_Pack; + easy-align = vim-easy-align; + ghc-mod-vim = ghcmod; + gist-vim = Gist; + gundo = Gundo; + hoogle = Hoogle; + latex-live-preview = vim-latex-live-preview; + nerdtree = The_NERD_tree; + signature = vim-signature; + supertab = Supertab; + syntastic = Syntastic; + webapi-vim = WebAPI; + yankring = YankRing; + + + ### The following derivations are generated by nix#ExportPluginsForNix + + "Colour_Sampler_Pack" = buildVimPluginFrom2Nix { # created by nix#NixDerivation + name = "Colour_Sampler_Pack"; + src = fetchurl { + url = "http://www.vim.org/scripts/download_script.php?src_id=18915"; + name = "ColorSamplerPack.zip"; + sha256 = "1wsrb3vpqn9fncnalfpvc8r92wk1mcskm4shb3s2h9x5dyihf2rd"; + }; + buildInputs = [ unzip ]; + dependencies = []; + meta = { + url = "http://www.vim.org/scripts/script.php?script_id=625"; + }; + + + }; + "Gist" = buildVimPluginFrom2Nix { # created by nix#NixDerivation + name = "Gist"; + src = fetchgit { + url = "git://github.com/mattn/gist-vim"; + rev = "d609d93472db9cf45bd701bebe51adc356631547"; + sha256 = "e5cabc03d5015c589a32f11c654ab9fbd1e91d26ba01f4b737685be81852c511"; + }; + dependencies = []; + + }; + "Gundo" = buildVimPluginFrom2Nix { # created by nix#NixDerivation + name = "Gundo"; + src = fetchhg { + url = "https://bitbucket.org/sjl/gundo.vim"; + rev = "eb9fc8676b89"; + sha256 = "05lcxrd9ibfi02ja4jvl5y5pp884b8kh9aarw045b0mlldygv6cp"; + }; + dependencies = []; + + }; + "Hoogle" = buildVimPluginFrom2Nix { # created by nix#NixDerivation + name = "Hoogle"; + src = fetchgit { + url = "git://github.com/Twinside/vim-hoogle"; + rev = "81f28318b0d4174984c33df99db7752891c5c4e9"; + sha256 = "0f96f3badb6218cac87d0f7027ff032ecc74f08ad3ada542898278ce11cbd5a0"; + }; + dependencies = []; + + }; + "Solarized" = buildVimPluginFrom2Nix { # created by nix#NixDerivation + name = "Solarized"; + src = fetchgit { + url = "git://github.com/altercation/vim-colors-solarized"; + rev = "528a59f26d12278698bb946f8fb82a63711eec21"; + sha256 = "a1b2ef696eee94dafa76431c31ee260acdd13a7cf87939f27eca431d5aa5a315"; + }; + dependencies = []; + + }; + "Supertab" = buildVimPluginFrom2Nix { # created by nix#NixDerivation + name = "Supertab"; + src = fetchgit { + url = "git://github.com/ervandew/supertab"; + rev = "b0ca47f4570385043f270f9278ba6d50d1d2fa00"; + sha256 = "24e3e63096a6b6f7f00d985ae6f31377154566d6483fb81572a474053fa43082"; + }; + dependencies = []; + + }; + "Syntastic" = buildVimPluginFrom2Nix { # created by nix#NixDerivation + name = "Syntastic"; + src = fetchgit { + url = "git://github.com/scrooloose/syntastic"; + rev = "30b4ce3411f539f695ab8def7fc69c2f835eb8fe"; + sha256 = "c61e2bcd4455525ec2520d75e7b204e39757731f85f5f72ed179f2068ac33700"; + }; + dependencies = []; + + }; + "Tabular" = buildVimPluginFrom2Nix { # created by nix#NixDerivation + name = "Tabular"; + src = fetchgit { + url = "git://github.com/godlygeek/tabular"; + rev = "60f25648814f0695eeb6c1040d97adca93c4e0bb"; + sha256 = "28c860ad621587f2c3213fae47d1a3997746527c17d51e9ab94c209eb7bfeb0f"; + }; + dependencies = []; + + }; + "Tagbar" = buildVimPluginFrom2Nix { # created by nix#NixDerivation + name = "Tagbar"; + src = fetchgit { + url = "git://github.com/majutsushi/tagbar"; + rev = "f9c5f24576e82aae5ab8a5480f1ae48615354e40"; + sha256 = "e1ff486f27c0980fee959db69da5617c4653910504b20aeabe87037a8b68712a"; + }; + dependencies = []; + + }; + "The_NERD_Commenter" = buildVimPluginFrom2Nix { # created by nix#NixDerivation + name = "The_NERD_Commenter"; + src = fetchgit { + url = "git://github.com/scrooloose/nerdcommenter"; + rev = "6549cfde45339bd4f711504196ff3e8b766ef5e6"; + sha256 = "ef270ae5617237d68b3d618068e758af8ffd8d3ba27a3799149f7a106cfd178e"; + }; + dependencies = []; + + }; + "The_NERD_tree" = buildVimPluginFrom2Nix { # created by nix#NixDerivation + name = "The_NERD_tree"; + src = fetchgit { + url = "git://github.com/scrooloose/nerdtree"; + rev = "3b98a7fcae8f9fff356907171f0406ff8cd28921"; + sha256 = "deec2ce33249829ae3925478d7d1925ea99e20c37dcc86db7c3bfac4fdc706e0"; + }; + dependencies = []; + + }; + "UltiSnips" = buildVimPluginFrom2Nix { # created by nix#NixDerivation + name = "UltiSnips"; + src = fetchgit { + url = "git://github.com/sirver/ultisnips"; + rev = "b26f2c97b7d9be708eef0b4ba0cdfb53c868d9c3"; + sha256 = "094055f6255d207c04e26f15ee15019eb9d4b1710c24061c7f8074d23583b9b2"; + }; + dependencies = []; + + }; + "VimOutliner" = buildVimPluginFrom2Nix { # created by nix#NixDerivation + name = "VimOutliner"; + src = fetchgit { + url = "git://github.com/vimoutliner/vimoutliner"; + rev = "469f49b5f28bc2b838a80568c9413f690cc3ffb6"; + sha256 = "38f88f9bbc43622809404c0054a7a4e9b2214166f3b2784511e4fda05bcb4713"; + }; + dependencies = []; + + }; + "WebAPI" = buildVimPluginFrom2Nix { # created by nix#NixDerivation + name = "WebAPI"; + src = fetchgit { + url = "git://github.com/mattn/webapi-vim"; + rev = "a7789abffe936db56e3152e23733847f94755753"; + sha256 = "455b84d9fd13200ff5ced5d796075f434a7fb9c00f506769174579266ae2be80"; + }; + dependencies = []; + + }; + "YankRing" = buildVimPluginFrom2Nix { # created by nix#NixDerivation + name = "YankRing"; + src = fetchurl { + url = "http://www.vim.org/scripts/download_script.php?src_id=20842"; + name = "yankring_180.zip"; + sha256 = "0bsq4pxagy12jqxzs7gcf25k5ahwif13ayb9k8clyhm0jjdkf0la"; + }; + buildInputs = [ unzip ]; + dependencies = []; + meta = { + url = "http://www.vim.org/scripts/script.php?script_id=1234"; + }; + + + }; + "commentary" = buildVimPluginFrom2Nix { # created by nix#NixDerivation + name = "commentary"; + src = fetchgit { + url = "git://github.com/tpope/vim-commentary"; + rev = "9c685131a5facfa0d643feca3a61b41c007d8170"; + sha256 = "2a9f394d0669429469c2f1ddaf9a722c2773f35da08ea9496d3b4b4e85b6038d"; + }; + dependencies = []; + + }; + "ctrlp" = buildVimPluginFrom2Nix { # created by nix#NixDerivation + name = "ctrlp"; + src = fetchgit { + url = "git://github.com/kien/ctrlp.vim"; + rev = "b5d3fe66a58a13d2ff8b6391f4387608496a030f"; + sha256 = "41f7884973770552395b96f8693da70999dc815462d4018c560d3ff6be462e76"; + }; + dependencies = []; + + }; + "extradite" = buildVimPluginFrom2Nix { # created by nix#NixDerivation + name = "extradite"; + src = fetchgit { + url = "git://github.com/int3/vim-extradite"; + rev = "af4f3a51b6b654d655121b93c0cd9d8fe9a0c85d"; + sha256 = "d1d29cfbc654134be383747f2cd6b14b7a87de75f997af6a041f14d7ef61ade6"; + }; + dependencies = []; + + }; + "fugitive" = buildVimPluginFrom2Nix { # created by nix#NixDerivation + name = "fugitive"; + src = fetchgit { + url = "git://github.com/tpope/vim-fugitive"; + rev = "2c8461db084d205903a792a23163faa546f143c9"; + sha256 = "c2569877958fcc5d181cc5b9e26d6b0b022c30aa9ce0908dd96131b44eb90729"; + }; + dependencies = []; + + }; + "ghcmod" = buildVimPluginFrom2Nix { # created by nix#NixDerivation + name = "ghcmod"; + src = fetchgit { + url = "git://github.com/eagletmt/ghcmod-vim"; + rev = "d5c6c7f3c85608b5b76dc3e7e001f60b86c32cb9"; + sha256 = "ab56d470ea18da3fae021e22bba14460505e61a94f8bf707778dff5eec51cd6d"; + }; + dependencies = []; + + }; + "github:MarcWeber/vim-addon-vim2nix" = buildVimPluginFrom2Nix { # created by nix#NixDerivation + name = "github-MarcWeber-vim-addon-vim2nix"; + src = fetchgit { + url = "git://github.com/MarcWeber/vim-addon-vim2nix"; + rev = "1aef89c05ef199fccff34be807ed7eefd914ca41"; + sha256 = "b078fd91cf978ee4cf7002630a83d3381ad781fa99e3ce118185b7f0f417ba2a"; + }; + dependencies = []; + + }; + "matchit.zip" = buildVimPluginFrom2Nix { # created by nix#NixDerivation + name = "matchit.zip"; + src = fetchurl { + url = "http://www.vim.org/scripts/download_script.php?src_id=8196"; + name = "matchit.zip"; + sha256 = "1bbm8j1bhb70kagwdimwy9vcvlrz9ax5bk2a7wrmn4cy87f9xj4l"; + }; + buildInputs = [ unzip ]; + dependencies = []; + meta = { + url = "http://www.vim.org/scripts/script.php?script_id=39"; + }; + + unpackPhase = '' + ( + sourceRoot=d + mkdir $sourceRoot; cd $sourceRoot; + unzip $src + ) + ''; + }; + "pathogen" = buildVimPluginFrom2Nix { # created by nix#NixDerivation + name = "pathogen"; + src = fetchgit { + url = "git://github.com/tpope/vim-pathogen"; + rev = "b9fb0dfd811004010f5f6903edef42d6004ebea2"; + sha256 = "62ec7e9721651aa86aa716d47c2057771f7d093f414c3b98f50a759d210db4c7"; + }; + dependencies = []; + + }; + "quickfixstatus" = buildVimPluginFrom2Nix { # created by nix#NixDerivation + name = "quickfixstatus"; + src = fetchgit { + url = "git://github.com/dannyob/quickfixstatus"; + rev = "fd3875b914fc51bbefefa8c4995588c088163053"; + sha256 = "7b6831d5da1c23d95f3158c67e4376d32c2f62ab2e30d02d3f3e14dcfd867d9b"; + }; + dependencies = []; + + }; + "rainbow_parentheses" = buildVimPluginFrom2Nix { # created by nix#NixDerivation + name = "rainbow_parentheses"; + src = fetchgit { + url = "git://github.com/kien/rainbow_parentheses.vim"; + rev = "eb8baa5428bde10ecc1cb14eed1d6e16f5f24695"; + sha256 = "47975a426d06f41811882691d8a51f32bc72f590477ed52b298660486b2488e3"; + }; + dependencies = []; + + }; + "rust" = buildVimPluginFrom2Nix { # created by nix#NixDerivation + name = "rust"; + src = fetchgit { + url = "git://github.com/wting/rust.vim"; + rev = "0fd423990cfa69336fb6c1d5d58aa2091e7b4e76"; + sha256 = "21f3decedb24478bc391152bf26a9b88d9e4fa5fcdbdb8a558d95b6bb7be2ff1"; + }; + dependencies = []; + + }; + "snipmate" = buildVimPluginFrom2Nix { # created by nix#NixDerivation + name = "snipmate"; + src = fetchgit { + url = "git://github.com/garbas/vim-snipmate"; + rev = "8cb6c3ebe267873dc5abb9a36305c75d9564dea4"; + sha256 = "f4692709724a50ff14ccdd5692d90ebdb950417267adb2228f5ce6006471bad4"; + }; + dependencies = ["vim-addon-mw-utils" "tlib"]; + + }; + "sourcemap.vim" = buildVimPluginFrom2Nix { # created by nix#NixDerivation + name = "sourcemap.vim"; + src = fetchgit { + url = "git://github.com/chikatoike/sourcemap.vim"; + rev = "0dd82d40faea2fdb0771067f46c01deb41610ba1"; + sha256 = "a08c77aea39be4a0a980d62673d1d17fecc518a8aeb9101210e453aaacb78fbd"; + }; + dependencies = []; + + }; + "surround" = buildVimPluginFrom2Nix { # created by nix#NixDerivation + name = "surround"; + src = fetchgit { + url = "git://github.com/tpope/vim-surround"; + rev = "fa433e0b7330753688f715f3be5d10dc480f20e5"; + sha256 = "5f01daf72d23fc065f4e4e8eac734275474f32bfa276a9d90ce0d20dfe24058d"; + }; + dependencies = []; + + }; + "table-mode" = buildVimPluginFrom2Nix { # created by nix#NixDerivation + name = "table-mode"; + src = fetchgit { + url = "git://github.com/dhruvasagar/vim-table-mode"; + rev = "e1258702126463b30e32a8a4cd1ba28689a93ef8"; + sha256 = "2b8ac53a0a346f27db617dade3bd3e4da7d5b560a99c636da7d27cf5622a6690"; + }; + dependencies = []; + + }; + "undotree" = buildVimPluginFrom2Nix { # created by nix#NixDerivation + name = "undotree"; + src = fetchgit { + url = "git://github.com/mbbill/undotree"; + rev = "88e4a9bc2f7916f24441faf884853a01ba11d294"; + sha256 = "ad55b88db051f57d0c7ddc226a7b7778daab58fa67dc8ac1d78432c0e7d38520"; + }; + dependencies = []; + + }; + "vim-addon-async" = buildVimPluginFrom2Nix { # created by nix#NixDerivation + name = "vim-addon-async"; + src = fetchgit { + url = "git://github.com/MarcWeber/vim-addon-async"; + rev = "dadc96e188f1cdacbac62129eb29a1eacfed792c"; + sha256 = "27f941e21a8ca5940bd20914e2a9e3809e554f3ef2c27b3bafb9a153107a5d07"; + }; + dependencies = ["vim-addon-signs"]; + + }; + "vim-addon-commenting" = buildVimPluginFrom2Nix { # created by nix#NixDerivation + name = "vim-addon-commenting"; + src = fetchgit { + url = "git://github.com/MarcWeber/vim-addon-commenting"; + rev = "b7cf748ac1c9bf555cbd347589e3b7196030d20b"; + sha256 = "4ad7d5f6669f0a1b4a24c9ce3649c030d7d3fc8588de4d4d6c3269140fbe9b3e"; + }; + dependencies = []; + + }; + "vim-addon-local-vimrc" = buildVimPluginFrom2Nix { # created by nix#NixDerivation + name = "vim-addon-local-vimrc"; + src = fetchgit { + url = "git://github.com/MarcWeber/vim-addon-local-vimrc"; + rev = "7689b55ee86dd6046923fd28ceab49da3881abfe"; + sha256 = "f11d13676e2fdfcc9cabc991577f0b2e85909665b6f245aa02f21ff78d6a8556"; + }; + dependencies = []; + + }; + "vim-addon-manager" = buildVimPluginFrom2Nix { # created by nix#NixDerivation + name = "vim-addon-manager"; + src = fetchgit { + url = "git://github.com/MarcWeber/vim-addon-manager"; + rev = "345c4b357843b14f4622f212e4d1e0e3f8a7f08a"; + sha256 = "d8fba7dd089f4a919f91dc284537880d7a841c26dacb503ea08b15dce35e7626"; + }; + dependencies = []; + + }; + "vim-addon-mru" = buildVimPluginFrom2Nix { # created by nix#NixDerivation + name = "vim-addon-mru"; + src = fetchgit { + url = "git://github.com/MarcWeber/vim-addon-mru"; + rev = "e41e39bd9d1bf78ccfd8d5e1bc05ae5e1026c2bb"; + sha256 = "15b70f796f28cbd999060fea7f47408fa8a6cb176cd4915b9cc3dc6c53eed960"; + }; + dependencies = ["vim-addon-other" "vim-addon-mw-utils"]; + + }; + "vim-addon-mw-utils" = buildVimPluginFrom2Nix { # created by nix#NixDerivation + name = "vim-addon-mw-utils"; + src = fetchgit { + url = "git://github.com/MarcWeber/vim-addon-mw-utils"; + rev = "0c5612fa31ee434ba055e21c76f456244b3b5109"; + sha256 = "4e1b6d1b59050f1063e58ef4bee9e9603616ad184cd9ef7466d0ec3d8e22b91c"; + }; + dependencies = []; + + }; + "vim-addon-nix" = buildVimPluginFrom2Nix { # created by nix#NixDerivation + name = "vim-addon-nix"; + src = fetchgit { + url = "git://github.com/MarcWeber/vim-addon-nix"; + rev = "7b0a376bb1797fef8da2dc14e768f318bcb671e8"; + sha256 = "c2b0f6f50083063b5e801b872f38d4f00307fe5d7a4f3977a108e5cd10c1c410"; + }; + dependencies = ["vim-addon-completion" "vim-addon-goto-thing-at-cursor" "vim-addon-errorformats" "vim-addon-actions" "vim-addon-mw-utils" "tlib"]; + + }; + "vim-addon-other" = buildVimPluginFrom2Nix { # created by nix#NixDerivation + name = "vim-addon-other"; + src = fetchgit { + url = "git://github.com/MarcWeber/vim-addon-other"; + rev = "f78720c9cb5bf871cabb13c7cbf94378dbf0163b"; + sha256 = "43f027e4b7576031072515c23c2b09f7f2c8bba7ee43a1e2041a4371bd954d1b"; + }; + dependencies = ["vim-addon-actions" "vim-addon-mw-utils"]; + + }; + "vim-addon-php-manual" = buildVimPluginFrom2Nix { # created by nix#NixDerivation + name = "vim-addon-php-manual"; + src = fetchgit { + url = "git://github.com/MarcWeber/vim-addon-php-manual"; + rev = "e09ccdce3d2132771d0bd32884553207cc7122d0"; + sha256 = "b2f44be3a1ceca9de7789ea9b5fd36035b720ea529f4301f3771b010d1e453c2"; + }; + dependencies = []; + + }; + "vim-addon-sql" = buildVimPluginFrom2Nix { # created by nix#NixDerivation + name = "vim-addon-sql"; + src = fetchgit { + url = "git://github.com/MarcWeber/vim-addon-sql"; + rev = "05b8a0c211f1ae4c515c64e91dec555cdf20d90b"; + sha256 = "a1334ae694e0a03229bacc8ba7e08e7223df240244c7378e3f1bd91d74e957c2"; + }; + dependencies = ["vim-addon-completion" "vim-addon-background-cmd" "tlib"]; + + }; + "vim-addon-syntax-checker" = buildVimPluginFrom2Nix { # created by nix#NixDerivation + name = "vim-addon-syntax-checker"; + src = fetchgit { + url = "git://github.com/MarcWeber/vim-addon-syntax-checker"; + rev = "8eb7217e636ca717d4de5cd03cc0180c5b66ae77"; + sha256 = "aef048e664653b5007df71ac24ed34ec55d8938c763d3f80885a122e445a9b3d"; + }; + dependencies = ["vim-addon-mw-utils" "tlib"]; + + }; + "vim-addon-toggle-buffer" = buildVimPluginFrom2Nix { # created by nix#NixDerivation + name = "vim-addon-toggle-buffer"; + src = fetchgit { + url = "git://github.com/MarcWeber/vim-addon-toggle-buffer"; + rev = "a1b38b9c5709cba666ed2d84ef06548f675c6b0b"; + sha256 = "672166ecfe0599177afb56b444366f587f77e9659c256ac4e41ee45cb2df6055"; + }; + dependencies = ["vim-addon-mw-utils" "tlib"]; + + }; + "vim-addon-xdebug" = buildVimPluginFrom2Nix { # created by nix#NixDerivation + name = "vim-addon-xdebug"; + src = fetchgit { + url = "git://github.com/MarcWeber/vim-addon-xdebug"; + rev = "45f26407305b4ce6f8f5f37d2b5e6e4354104172"; + sha256 = "0a7bf2caf36772c94bd25bfbf46bf628623809c9cfab447ff788eb74149464ef"; + }; + dependencies = ["WebAPI" "vim-addon-mw-utils" "vim-addon-signs" "vim-addon-async"]; + + }; + "vim-airline" = buildVimPluginFrom2Nix { # created by nix#NixDerivation + name = "vim-airline"; + src = fetchgit { + url = "git://github.com/bling/vim-airline"; + rev = "4a2208821e1d334c4d3cdf66cd1fd0968755e16a"; + sha256 = "ea2d8bb459ae2cc378a46409c7e86db9b1cc8349bd3d2451c9a5db8ae9c8ea1d"; + }; + dependencies = []; + + }; + "vim-coffee-script" = buildVimPluginFrom2Nix { # created by nix#NixDerivation + name = "vim-coffee-script"; + src = fetchgit { + url = "git://github.com/kchmck/vim-coffee-script"; + rev = "827e4a38b07479433b619091469a7495a392df8a"; + sha256 = "89ee4c7cce9f3310be502df6b2dd2e70a715c0b06882afc9c8169fbf58b207d0"; + }; + dependencies = []; + + }; + "vim-easy-align" = buildVimPluginFrom2Nix { # created by nix#NixDerivation + name = "vim-easy-align"; + src = fetchgit { + url = "git://github.com/junegunn/vim-easy-align"; + rev = "246139c57c4a82a9787974165dfeb7bee7dacc9c"; + sha256 = "9205b94f985f633b5cbdde63a4c5a36ce5c4f92f8a89c124ff4ba66458f98cbf"; + }; + dependencies = []; + + }; + "vim-gitgutter" = buildVimPluginFrom2Nix { # created by nix#NixDerivation + name = "vim-gitgutter"; + src = fetchgit { + url = "git://github.com/airblade/vim-gitgutter"; + rev = "88c7916d2f653e13cbbcd2c461c83c403d09ca46"; + sha256 = "df56b3cd81a71cd3a4286d878a4cfd7b53c3b7b09f3cf45fa41653050315056c"; + }; + dependencies = []; + + }; + "vim-iced-coffee-script" = buildVimPluginFrom2Nix { # created by nix#NixDerivation + name = "vim-iced-coffee-script"; + src = fetchgit { + url = "git://github.com/noc7c9/vim-iced-coffee-script"; + rev = "e42e0775fa4b1f8840c55cd36ac3d1cedbc1dea2"; + sha256 = "c7859591975a51a1736f99a433d7ca3e7638b417340a0472a63995e16d8ece93"; + }; + dependencies = []; + + }; + "vim-latex-live-preview" = buildVimPluginFrom2Nix { # created by nix#NixDerivation + name = "vim-latex-live-preview"; + src = fetchgit { + url = "git://github.com/xuhdev/vim-latex-live-preview"; + rev = "18625ceca4de5984f3df50cdd0202fc13eb9e37c"; + sha256 = "261852d3830189a50176f997a4c6b4ec7e25893c5b7842a3eb57eb7771158722"; + }; + dependencies = []; + + }; + "vim-signature" = buildVimPluginFrom2Nix { # created by nix#NixDerivation + name = "vim-signature"; + src = fetchgit { + url = "git://github.com/kshenoy/vim-signature"; + rev = "598a9275668d772ca18cc052246b96edcbe61de0"; + sha256 = "1c410aaec24840b0e0566cd6e6df100ca3c7fb83d92337efdfc359494b6c49f8"; + }; + dependencies = []; + + }; + "vim-snippets" = buildVimPluginFrom2Nix { # created by nix#NixDerivation + name = "vim-snippets"; + src = fetchgit { + url = "git://github.com/honza/vim-snippets"; + rev = "436038094a27ed635aaa11ebf50ccddc2d4b9328"; + sha256 = "1db34df31ff1526394de42997e21b47cea152dc2c014dbbb1f3bbeb8986820e1"; + }; + dependencies = []; + + }; + "vim2hs" = buildVimPluginFrom2Nix { # created by nix#NixDerivation + name = "vim2hs"; + src = fetchgit { + url = "git://github.com/dag/vim2hs"; + rev = "f2afd55704bfe0a2d66e6b270d247e9b8a7b1664"; + sha256 = "485fc58595bb4e50f2239bec5a4cbb0d8f5662aa3f744e42c110cd1d66b7e5b0"; + }; + dependencies = []; + + }; + "vundle" = buildVimPluginFrom2Nix { # created by nix#NixDerivation + name = "vundle"; + src = fetchgit { + url = "git://github.com/gmarik/vundle"; + rev = "0b28e334e65b6628b0a61c412fcb45204a2f2bab"; + sha256 = "9681d471d1391626cb9ad22b2b469003d9980cd23c5c3a8d34666376447e6204"; + }; + dependencies = []; + + }; + "wombat256" = buildVimPluginFrom2Nix { # created by nix#NixDerivation + name = "wombat256"; + src = fetchurl { + url = "http://www.vim.org/scripts/download_script.php?src_id=13400"; + name = "wombat256mod.vim"; + sha256 = "1san0jg9sfm6chhnr1wc5nhczlp11ibca0v7i4gf68h9ick9mysn"; + }; + buildInputs = [ unzip ]; + dependencies = []; + meta = { + url = "http://www.vim.org/scripts/script.php?script_id=2465"; + }; + + + }; + + } diff --git a/pkgs/misc/vim-plugins/vim-plugin-names b/pkgs/misc/vim-plugins/vim-plugin-names new file mode 100644 index 000000000000..f685f6743bef --- /dev/null +++ b/pkgs/misc/vim-plugins/vim-plugin-names @@ -0,0 +1,55 @@ +"vim-addon-syntax-checker" +"vim-addon-other" +"vim-addon-local-vimrc" +"snipmate" +"vim-snippets" +"vim-addon-mru" +"vim-addon-commenting" +"vim-addon-sql" +"vim-addon-async" +"vim-addon-toggle-buffer" +"vim-addon-mw-utils" +"matchit.zip" +"vim-addon-xdebug" +"vim-addon-php-manual" +"sourcemap.vim" +"vim-iced-coffee-script" +"ctrlp" +"commentary" +"Colour_Sampler_Pack" +"Solarized" +"vim-coffee-script" +"vim-easy-align" +"Tagbar" +"Tabular" +"table-mode" +"Syntastic" +"vim-signature" +"surround" +"Supertab" +"rust" +"rainbow_parentheses" +"pathogen" +"quickfixstatus" +"The_NERD_Commenter" +"The_NERD_tree" +"vim-latex-live-preview" +"Hoogle" +"Gundo" +"vim-gitgutter" +"Gist" +"ghcmod" +"fugitive" +"extradite" +"vim-airline" +"VimOutliner" +"vim2hs" +"undotree" +"UltiSnips" +"wombat256" +"vundle" +"WebAPI" +"YankRing" +"vim-addon-manager" +"vim-addon-nix" +"github:MarcWeber/vim-addon-vim2nix" diff --git a/pkgs/misc/vim-plugins/vim-utils.nix b/pkgs/misc/vim-plugins/vim-utils.nix new file mode 100644 index 000000000000..6b5dd139525b --- /dev/null +++ b/pkgs/misc/vim-plugins/vim-utils.nix @@ -0,0 +1,384 @@ +{stdenv, vim, vimPlugins, vim_configurable, buildEnv, writeText, writeScriptBin}: + +/* + +USAGE EXAMPLE +============= + +Install Vim like this eg using nixos option environment.systemPackages which will provide +vim-with-plugins in PATH: + + vim_configurable.customize { + name = "vim-with-plugins"; + + # add custom .vimrc lines like this: + vimrcConfig.customRC = '' + set hidden + ''; + + vimrcConfig.vam.knownPlugins = pkgs.vimPlugins; # optional + vimrcConfig.vam.pluginDictionaries = [ + # load always + { name = "youcompleteme"; } + { names = ["youcompleteme" "foo"]; } + + # only load when opening a .php file + { name = "phpCompletion"; ft_regex = "^php\$"; } + { name = "phpCompletion"; filename_regex = "^.php\$"; } + + # provide plugin which can be loaded manually: + { name = "phpCompletion"; tag = "lazy"; } + + # full ducomentation at github.com/MarcWeber/vim-addon-manager + ]; + + # there is a pathogen implementation as well, but its startup is slower and [VAM] has more feature + # vimrcConfig.pathogen.knownPlugins = vimPlugins; # optional + # vimrcConfig.pathogen.pluginNames = ["vim-addon-nix"]; + }; + +WHAT IS A VIM PLUGIN? +===================== +Typical plugin files: + + plugin/P1.vim + autoload/P1.vim + ftplugin/xyz.vim + doc/plugin-documentation.txt (traditional documentation) + README(.md) (nowadays thanks to github) + + +Vim offers the :h rtp setting which works for most plugins. Thus adding +this to your .vimrc should make most plugins work: + + set rtp+=~/.nix-profile/share/vim-plugins/youcompleteme + " or for p in ["youcompleteme"] | exec 'set rtp+=~/.nix-profile/share/vim-plugins/'.p | endfor + +which is what the [VAM]/pathogen solutions above basically do. + +Learn about about plugin Vim plugin mm managers at +http://vim-wiki.mawercer.de/wiki/topic/vim%20plugin%20managment.html. + +The documentation can be accessed by Vim's :help command if it was tagged. +See vimHelpTags sample code below. + +CONTRIBUTING AND CUSTOMIZING +============================ +The example file pkgs/misc/vim-plugins/default.nix provides both: +* manually mantained plugins +* plugins created by VAM's nix#ExportPluginsForNix implementation + +I highly recommend to lookup vim plugin attribute names at the [vim-pi] project + which is a database containing all plugins from +vim.org and quite a lot of found at github and similar sources. vim-pi's documented purpose +is to associate vim.org script ids to human readable names so that dependencies +can be describe easily. + +How to find a name? + * http://vam.mawercer.de/ or VAM's + * grep vim-pi + * use VAM's completion or :AddonsInfo command + +It might happen than a plugin is not known by vim-pi yet. We encourage you to +contribute to vim-pi so that plugins can be updated automatically. + + +CREATING DERVITATIONS AUTOMATICALLY BY PLUGIN NAME +================================================== +Most convenient is to use a ~/.vim-scripts file putting a plugin name into each line +as documented by [VAM]'s README.md +It is the same format you pass to vimrcConfig.vam.pluginDictionaries from the +usage example above. + +Then create a temp vim file and insert: + + let opts = {} + let opts.path_to_nixpkgs = '/etc/nixos/nixpkgs' + let opts.cache_file = '/tmp/export-vim-plugin-for-nix-cache-file' + let opts.plugin_dictionaries = map(readfile("vim-plugins"), 'eval(v:val)') + " add more files + " let opts.plugin_dictionaries += map(.. other file ) + call nix#ExportPluginsForNix(opts) + +Then ":source %" it. + +nix#ExportPluginsForNix is provided by github.com/MarcWeber/vim-addon-vim2nix + +A buffer will open containing the plugin derivation lines as well list +fitting the vimrcConfig.vam.pluginDictionaries option. + +Thus the most simple usage would be: + + vim_with_plugins = + let vim = vim_configurable; + inherit (vimUtil.override {inherit vim}) rtpPath addRtp buildVimPlugin vimHelpTags; + vimPlugins = [ + # the derivation list from the buffer created by nix#ExportPluginsForNix + # don't set which will default to pkgs.vimPlugins + ]; + in vim.customize { + name = "vim-with-plugins"; + + vimrcConfig.customRC = '' .. ''; + + vimrcConfig.vam.knownPlugins = vimPlugins; + vimrcConfig.vam.pluginDictionaries = [ + # the plugin list form ~/.vim-scripts turned into nix format added to + # the buffer created by the nix#ExportPluginsForNix + ]; + } + +vim_with_plugins can be installed like any other application within Nix. + +[VAM] https://github.com/MarcWeber/vim-addon-manager +[vim-pi] https://bitbucket.org/vimcommunity/vim-pi +*/ + + +let + inherit (stdenv) lib; + + findDependenciesRecursively = {knownPlugins, names}: + + let depsOf = name: (builtins.getAttr name knownPlugins).dependencies or []; + + recurseNames = path: names: lib.concatMap (name: recurse ([name]++path)) names; + + recurse = path: + let name = builtins.head path; + in if builtins.elem name (builtins.tail path) + then throw "recursive vim dependencies" + else [name] ++ recurseNames path (depsOf name); + + in lib.uniqList { inputList = recurseNames [] names; }; + + vimrcFile = { + vam ? null, + pathogen ? null, + customRC ? "" + }: + + let + /* pathogen mostly can set &rtp at startup time. Its used very commonly. + */ + pathogenImpl = lib.optionalString (pathogen != null) + (let + knownPlugins = pathogen.knownPlugins or vimPlugins; + + plugins = map (name: knownPlugins.${name}) (findDependenciesRecursively { inherit knownPlugins; names = pathogen.pluginNames; }); + + pluginsEnv = buildEnv { + name = "pathogen-plugin-env"; + paths = map (x: "${x}/${vimPlugins.rtpPath}") plugins; + }; + in + '' + let &rtp.=(empty(&rtp)?"":',')."${vimPlugins.pathogen.rtp}" + execute pathogen#infect('${pluginsEnv}/{}') + ''); + + /* + vim-addon-manager = VAM + + * maps names to plugin location + + * manipulates &rtp at startup time + or when Vim has been running for a while + + * can activate plugins laziy (eg when loading a specific filetype) + + * knows about vim plugin dependencies (addon-info.json files) + + * still is minimalistic (only loads one file), the "check out" code it also + has only gets loaded when a plugin is requested which is not found on disk + yet + + */ + vamImpl = lib.optionalString (vam != null) + (let + knownPlugins = vam.knownPlugins or vimPlugins; + + toNames = x: + if builtins.isString x then [x] + else (lib.optional (x ? name) x.name) + ++ (x.names or []); + + names = findDependenciesRecursively { inherit knownPlugins; names = lib.concatMap toNames vam.pluginDictionaries; }; + + # Vim almost reads JSON, so eventually JSON support should be added to Nix + # TODO: proper quoting + toNix = x: + if (builtins.isString x) then "'${x}'" + else if builtins.isAttrs x && builtins ? out then toNix "${x}" # a derivation + else if builtins.isAttrs x then "{${lib.concatStringsSep ", " (lib.mapAttrsToList (n: v: "${toNix n}: ${toNix v}") x)}}" + else if builtins.isList x then "[${lib.concatMapStringsSep ", " toNix x}]" + else throw "turning ${lib.showVal x} into a VimL thing not implemented yet"; + + in assert builtins.hasAttr "vim-addon-manager" knownPlugins; + '' + let g:nix_plugin_locations = {} + ${lib.concatMapStrings (name: '' + let g:nix_plugin_locations['${name}'] = "${knownPlugins.${name}.rtp}" + '') names} + let g:nix_plugin_locations['vim-addon-manager'] = "${knownPlugins."vim-addon-manager".rtp}" + + let g:vim_addon_manager = {} + + if exists('g:nix_plugin_locations') + " nix managed config + + " override default function making VAM aware of plugin locations: + fun! NixPluginLocation(name) + let path = get(g:nix_plugin_locations, a:name, "") + return path == "" ? vam#DefaultPluginDirFromName(a:name) : path + endfun + let g:vim_addon_manager.plugin_dir_by_name = 'NixPluginLocation' + " tell Vim about VAM: + let &rtp.=(empty(&rtp)?"":','). g:nix_plugin_locations['vim-addon-manager'] + else + " standalone config + + let &rtp.=(empty(&rtp)?"":',').c.plugin_root_dir.'/vim-addon-manager' + if !isdirectory(c.plugin_root_dir.'/vim-addon-manager/autoload') + " checkout VAM + execute '!git clone --depth=1 git://github.com/MarcWeber/vim-addon-manager ' + \ shellescape(c.plugin_root_dir.'/vim-addon-manager', 1) + endif + endif + + " tell vam about which plugins to load when: + let l = [] + ${lib.concatMapStrings (p: "call add(l, ${toNix p})\n") vam.pluginDictionaries} + call vam#Scripts(l, {}) + ''); + + # somebody else could provide these implementations + vundleImpl = ""; + + neobundleImpl = ""; + + + in writeText "vimrc" '' + " minimal setup, generated by NIX + set nocompatible + filetype indent plugin on | syn on + + ${vamImpl} + ${pathogenImpl} + ${vundleImpl} + ${neobundleImpl} + + ${customRC} + ''; + +in + +rec { + inherit vimrcFile; + + # shell script with custom name passing [-u vimrc] [-U gvimrc] to vim + vimWithRC = {vimExecutable, name ? null, vimrcFile ? null, gvimrcFile ? null}: + let rcOption = o: file: stdenv.lib.optionalString (file != null) "-${o} ${file}"; + in writeScriptBin (if name == null then "vim" else name) '' + #!/bin/sh + exec ${vimExecutable} ${rcOption "u" vimrcFile} ${rcOption "U" gvimrcFile} "$@" + ''; + + # add a customize option to a vim derivation + makeCustomizable = vim: vim // { + customize = {name, vimrcConfig}: vimWithRC { + vimExecutable = "${vim}/bin/vim"; + inherit name; + vimrcFile = vimrcFile vimrcConfig; + }; + }; + + pluginnames2Nix = {name, namefiles} : vim_configurable.customize { + inherit name; + vimrcConfig.vam.knownPlugins = vimPlugins; + vimrcConfig.vam.pluginDictionaries = ["github:MarcWeber/vim-addon-vim2nix"]; + vimrcConfig.customRC = '' + " Yes - this is impure and will create the cache file and checkout vim-pi + " into ~/.vim/vim-addons + let g:vim_addon_manager.plugin_root_dir = "/tmp/vim2nix-".$USER + if !isdirectory(g:vim_addon_manager.plugin_root_dir) + call mkdir(g:vim_addon_manager.plugin_root_dir) + else + echom repeat("=", 80) + echom "WARNING: reusing cache directory :".g:vim_addon_manager.plugin_root_dir + echom repeat("=", 80) + endif + let opts = {} + let opts.nix_prefetch_git = "${../../../pkgs/build-support/fetchgit/nix-prefetch-git}" + let opts.nix_prefetch_hg = "${../../../pkgs/build-support/fetchhg/nix-prefetch-hg}" + let opts.cache_file = g:vim_addon_manager.plugin_root_dir.'/cache' + let opts.plugin_dictionaries = [] + ${lib.concatMapStrings (file: "let opts.plugin_dictionaries += map(readfile(\"${file}\"), 'eval(v:val)')\n") namefiles } + + " uncomment for debugging failures + " let opts.try_catch = 0 + + " add more files + " let opts.plugin_dictionaries += map(.. other file ) + call nix#ExportPluginsForNix(opts) + ''; + }; + + rtpPath = "share/vim-plugins"; + + vimHelpTags = '' + vimHelpTags(){ + if [ -d "$1/doc" ]; then + ${vim}/bin/vim -N -u NONE -i NONE -n -e -s -c "helptags $1/doc" +quit! + fi + } + ''; + + addRtp = path: derivation: + derivation // { rtp = "${derivation}/${path}"; }; + + buildVimPlugin = a@{ + name, + namePrefix ? "vimplugin-", + src, + unpackPhase ? "", + configurePhase ? "", + buildPhase ? "", + path ? (builtins.parseDrvName name).name, + addonInfo ? null, + ... + }: + addRtp "${rtpPath}/${path}" (stdenv.mkDerivation (a // { + name = namePrefix + name; + + inherit unpackPhase configurePhase buildPhase addonInfo; + + installPhase = '' + target=$out/${rtpPath}/${path} + mkdir -p $out/${rtpPath} + cp -r . $target + ${vimHelpTags} + vimHelpTags $target + if [ -n "$addonInfo" ]; then + echo "$addonInfo" > $target/addon-info.json + fi + ''; + })); + + buildVimPluginFrom2Nix = a: buildVimPlugin ({ + buildPhase = ":"; + configurePhase =":"; + } // a); + + # test cases: + test_vim_with_vim_addon_nix_using_vam = vim_configurable.customize { + name = "vim-with-vim-addon-nix-using-vam"; + vimrcConfig.vam.pluginDictionaries = [{name = "vim-addon-nix"; }]; + }; + + test_vim_with_vim_addon_nix_using_pathogen = vim_configurable.customize { + name = "vim-with-vim-addon-nix-using-pathogen"; + vimrcConfig.pathogen.pluginNames = [ "vim-addon-nix" ]; + }; + +} diff --git a/pkgs/misc/vim-plugins/vimrc.nix b/pkgs/misc/vim-plugins/vimrc.nix deleted file mode 100644 index 4e97d7f1d549..000000000000 --- a/pkgs/misc/vim-plugins/vimrc.nix +++ /dev/null @@ -1,203 +0,0 @@ -{stdenv, vimPlugins, vim_configurable, buildEnv, writeText, writeScriptBin}: - - /* usage example:: - let vimrcConfig = { - - # If you like pathogen use such - pathogen.knownPlugins = vimPlugins; # optional - pathogen.pluginNames = ["vim-addon-nix"]; - - # If you like VAM use such: - vam.knownPlugins = vimPlugins; # optional - vam.pluginDictionaries = [ - # load always - { name = "youcompleteme"; } - { names = ["youcompleteme" "foo"]; } - # only load when opening a .php file - { name = "phpCompletion"; ft_regex = "^php\$"; } - { name = "phpCompletion"; filename_regex = "^.php\$"; } - - # provide plugin which can be loaded manually: - { name = "phpCompletion"; tag = "lazy"; } - ]; - - # if you like NeoBundle or Vundle provide an implementation - - # add custom .vimrc lines like this: - customRC = '' - set hidden - ''; - }; - in vim_configurable.customize { name = "vim-with-plugins"; inherit vimrcConfig; }; - - */ - -let - inherit (stdenv) lib; - - findDependenciesRecursively = {knownPlugins, names}: - - let depsOf = name: (builtins.getAttr name knownPlugins).dependencies or []; - - recurseNames = path: names: lib.concatMap (name: recurse ([name]++path)) names; - - recurse = path: - let name = builtins.head path; - in if builtins.elem name (builtins.tail path) - then throw "recursive vim dependencies" - else [name] ++ recurseNames path (depsOf name); - - in lib.uniqList { inputList = recurseNames [] names; }; - - vimrcFile = { - vam ? null, - pathogen ? null, - customRC ? "" - }: - - let - /* pathogen mostly can set &rtp at startup time. Its used very commonly. - */ - pathogenImpl = lib.optionalString (pathogen != null) - (let - knownPlugins = pathogen.knownPlugins or vimPlugins; - - plugins = map (name: knownPlugins.${name}) (findDependenciesRecursively { inherit knownPlugins; names = pathogen.pluginNames; }); - - pluginsEnv = buildEnv { - name = "pathogen-plugin-env"; - paths = map (x: "${x}/${vimPlugins.rtpPath}") plugins; - }; - in - '' - let &rtp.=(empty(&rtp)?"":',')."${vimPlugins.pathogen.rtp}" - execute pathogen#infect('${pluginsEnv}/{}') - ''); - - /* - vim-addon-manager = VAM - - * maps names to plugin location - - * manipulates &rtp at startup time - or when Vim has been running for a while - - * can activate plugins laziy (eg when loading a specific filetype) - - * knows about vim plugin dependencies (addon-info.json files) - - * still is minimalistic (only loads one file), the "check out" code it also - has only gets loaded when a plugin is requested which is not found on disk - yet - - */ - vamImpl = lib.optionalString (vam != null) - (let - knownPlugins = vam.knownPlugins or vimPlugins; - - toNames = x: - if builtins.isString x then [x] - else (lib.optional (x ? name) x.name) - ++ (x.names or []); - - names = findDependenciesRecursively { inherit knownPlugins; names = lib.concatMap toNames vam.pluginDictionaries; }; - - # Vim almost reads JSON, so eventually JSON support should be added to Nix - # TODO: proper quoting - toNix = x: - if (builtins.isString x) then "'${x}'" - else if builtins.isAttrs x && builtins ? out then toNix "${x}" # a derivation - else if builtins.isAttrs x then "{${lib.concatStringsSep ", " (lib.mapAttrsToList (n: v: "${toNix n}: ${toNix v}") x)}}" - else if builtins.isList x then "[${lib.concatMapStringsSep ", " toNix x}]" - else throw "turning ${lib.showVal x} into a VimL thing not implemented yet"; - - in assert builtins.hasAttr "vim-addon-manager" knownPlugins; - '' - let g:nix_plugin_locations = {} - ${lib.concatMapStrings (name: '' - let g:nix_plugin_locations['${name}'] = "${knownPlugins.${name}.rtp}" - '') names} - let g:nix_plugin_locations['vim-addon-manager'] = "${vimPlugins."vim-addon-manager".rtp}" - - let g:vim_addon_manager = {} - - if exists('g:nix_plugin_locations') - " nix managed config - - " override default function making VAM aware of plugin locations: - fun! NixPluginLocation(name) - let path = get(g:nix_plugin_locations, a:name, "") - return path == "" ? vam#DefaultPluginDirFromName(a:name) : path - endfun - let g:vim_addon_manager.plugin_dir_by_name = 'NixPluginLocation' - " tell Vim about VAM: - let &rtp.=(empty(&rtp)?"":','). g:nix_plugin_locations['vim-addon-manager'] - else - " standalone config - - let &rtp.=(empty(&rtp)?"":',').c.plugin_root_dir.'/vim-addon-manager' - if !isdirectory(c.plugin_root_dir.'/vim-addon-manager/autoload') - " checkout VAM - execute '!git clone --depth=1 git://github.com/MarcWeber/vim-addon-manager ' - \ shellescape(c.plugin_root_dir.'/vim-addon-manager', 1) - endif - endif - - " tell vam about which plugins to load when: - let l = [] - ${lib.concatMapStrings (p: "call add(l, ${toNix p})\n") vam.pluginDictionaries} - call vam#Scripts(l, {}) - ''); - - # somebody else could provide these implementations - vundleImpl = ""; - - neobundleImpl = ""; - - - in writeText "vimrc" '' - " minimal setup, generated by NIX - set nocompatible - filetype indent plugin on | syn on - - ${vamImpl} - ${pathogenImpl} - ${vundleImpl} - ${neobundleImpl} - - ${customRC} - ''; - -in - -rec { - inherit vimrcFile; - - # shell script with custom name passing [-u vimrc] [-U gvimrc] to vim - vimWithRC = {vimExecutable, name ? null, vimrcFile ? null, gvimrcFile ? null}: - let rcOption = o: file: stdenv.lib.optionalString (file != null) "-${o} ${file}"; - in writeScriptBin (if name == null then "vim" else name) '' - #!/bin/sh - exec ${vimExecutable} ${rcOption "u" vimrcFile} ${rcOption "U" gvimrcFile} "$@" - ''; - - # add a customize option to a vim derivation - makeCustomizable = vim: vim // { - customize = {name, vimrcConfig}: vimWithRC { - vimExecutable = "${vim}/bin/vim"; - inherit name; - vimrcFile = vimrcFile vimrcConfig; - }; - }; - - # test cases: - test_vim_with_vim_addon_nix_using_vam = vim_configurable.customize { - name = "vim-with-vim-addon-nix-using-vam"; - vimrcConfig.vam.pluginDictionaries = [{name = "vim-addon-nix"; }]; - }; - - test_vim_with_vim_addon_nix_using_pathogen = vim_configurable.customize { - name = "vim-with-vim-addon-nix-using-pathogen"; - vimrcConfig.pathogen.pluginNames = [ "vim-addon-nix" ]; - }; -} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 68712a254ed4..d459ff3fd480 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -10964,7 +10964,7 @@ let vimHugeX = vim_configurable; - vim_configurable = vimrc.makeCustomizable (callPackage ../applications/editors/vim/configurable.nix { + vim_configurable = vimUtils.makeCustomizable (callPackage ../applications/editors/vim/configurable.nix { inherit (pkgs) fetchurl fetchhg stdenv ncurses pkgconfig gettext composableDerivation lib config glib gtk python perl tcl ruby; inherit (pkgs.xlibs) libX11 libXext libSM libXpm libXt libXaw libXau libXmu @@ -12751,7 +12751,7 @@ let viewnior = callPackage ../applications/graphics/viewnior { }; - vimrc = callPackage ../misc/vim-plugins/vimrc.nix { inherit writeText; }; + vimUtils = callPackage ../misc/vim-plugins/vim-utils.nix { inherit writeText; }; vimPlugins = recurseIntoAttrs (callPackage ../misc/vim-plugins { }); From 4a5897be657ec7ba8b7cad537293a9bbbdcdd5c3 Mon Sep 17 00:00:00 2001 From: Jaka Hudoklin Date: Thu, 4 Dec 2014 17:27:01 +0100 Subject: [PATCH 082/937] spark: update to 1.1.1, simplify a lot --- .../networking/cluster/spark/default.nix | 124 +++--------------- 1 file changed, 21 insertions(+), 103 deletions(-) diff --git a/pkgs/applications/networking/cluster/spark/default.nix b/pkgs/applications/networking/cluster/spark/default.nix index 1e9fe918a2e5..1852f21d27ac 100644 --- a/pkgs/applications/networking/cluster/spark/default.nix +++ b/pkgs/applications/networking/cluster/spark/default.nix @@ -1,128 +1,46 @@ -{ stdenv, fetchurl, jre, bash, simpleBuildTool, python27Packages }: +{ stdenv, fetchurl, makeWrapper, jre, pythonPackages +, mesosSupport ? true, mesos +}: + +with stdenv.lib; stdenv.mkDerivation rec { name = "spark-${version}"; - version = "0.9.1"; + version = "1.1.1"; src = fetchurl { url = "http://d3kbcqa49mib13.cloudfront.net/${name}-bin-cdh4.tgz"; - sha256 = "1k3954srx3km3ckmfi6wn8rldrljxc039g0pf5m3azgkmaz0gld5"; + sha256 = "1k0lw8aq5is3gnsrm8q24s0knga6kb3c9xsca20g11fy8b0y4nvk"; }; - unpackPhase = ''tar zxf $src''; + buildInputs = [ makeWrapper jre pythonPackages.python pythonPackages.numpy ] + ++ optional mesosSupport [ mesos ]; untarDir = "${name}-bin-cdh4"; installPhase = '' - set -x - mkdir -p $out/lib $out/bin - mv ${untarDir} $out/lib + mkdir -p $out/{lib/${untarDir}/conf,bin} + mv * $out/lib/${untarDir} - cat > $out/bin/spark-class < []" >&2 - exit 1 - fi - - export SPARK_MEM=\''${SPARK_MEM:-1024m} - - JAVA_OPTS="" - JAVA_OPTS="\$JAVA_OPTS -Djava.library.path=\"\$SPARK_LIBRARY_PATH\"" - JAVA_OPTS="\$JAVA_OPTS -Xms\$SPARK_MEM -Xmx\$SPARK_MEM" - export JAVA_OPTS - - CLASSPATH=\`$out/lib/${untarDir}/bin/compute-classpath.sh\` - export CLASSPATH - - exec ${jre}/bin/java -cp "\$CLASSPATH" \$JAVA_OPTS "\$@" + cat > $out/lib/${untarDir}/conf/spark-env.sh <<- EOF + export JAVA_HOME="${jre}" + export SPARK_HOME="$out/lib/${untarDir}" + export PYSPARK_PYTHON="${pythonPackages.python}/bin/${pythonPackages.python.executable}" + export PYTHONPATH="\$PYTHONPATH:$PYTHONPATH" + ${optionalString mesosSupport + ''export MESOS_NATIVE_LIBRARY="$MESOS_NATIVE_LIBRARY"''} EOF - chmod +x $out/bin/spark-class - cat > $out/bin/spark-shell </dev/null) - if [[ ! \$? ]]; then - saved_stty="" - fi - - $out/bin/spark-class \$OPTIONS org.apache.spark.repl.Main "\$@" - - exit_status=\$? - onExit - EOF - chmod +x $out/bin/spark-shell - - cat > $out/bin/pyspark < $out/bin/spark-upload-scala < $out/bin/spark-upload-python < Date: Fri, 5 Dec 2014 01:50:55 +0300 Subject: [PATCH 083/937] yunocommit-vim: update plugin --- pkgs/misc/vim-plugins/default.nix | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/pkgs/misc/vim-plugins/default.nix b/pkgs/misc/vim-plugins/default.nix index 21d289b8f5ab..957bc7d69743 100644 --- a/pkgs/misc/vim-plugins/default.nix +++ b/pkgs/misc/vim-plugins/default.nix @@ -562,8 +562,9 @@ rec { name = "YUNOcommit"; src = fetchgit { url = "git://github.com/esneide/YUNOcommit.vim"; - rev = "10e0d674bfba05e88359dbe0ded4eb1d806b1342"; - sha256 = "8efe7129ccc1cd13a09ffd4b5f8abe1fca12c434768ff57b865844cf40d49b41"; + rev = "981082055a73ef076d7e27477874d2303153a448"; + sha256 = "4bfd80720c353884e5c373b5457397a63e5e2e4ab4a97d6ce86c1740ac3b4c56"; + }; dependencies = []; }; From d2a2c776433d523704855acb862c70d28c5a0855 Mon Sep 17 00:00:00 2001 From: "William A. Kennington III" Date: Thu, 4 Dec 2014 15:17:32 -0800 Subject: [PATCH 084/937] ceph: 0.88 -> 0.89 --- pkgs/tools/filesystems/ceph/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/tools/filesystems/ceph/default.nix b/pkgs/tools/filesystems/ceph/default.nix index 76e7b8eaea0a..f316c8343165 100644 --- a/pkgs/tools/filesystems/ceph/default.nix +++ b/pkgs/tools/filesystems/ceph/default.nix @@ -14,12 +14,12 @@ let in stdenv.mkDerivation rec { name="ceph-${version}"; - version="0.88"; + version="0.89"; src = fetchgit { url = "git://github.com/ceph/ceph.git"; rev = "refs/tags/v${version}"; - sha256 = "1wf77mlx94h2mn75qqgb37xbdagl7zh0b579qh7gc1z4wcb8b8h0"; + sha256 = "1ky1j8qb2nz3qzlhdcb6ppdjx7wb3icq7n0l5mm9x3q2ijbwvhlz"; }; patches = [ From 4fcbe096b6eebb9b38d457a9afdb2950ae93df4c Mon Sep 17 00:00:00 2001 From: "William A. Kennington III" Date: Thu, 4 Dec 2014 15:17:52 -0800 Subject: [PATCH 085/937] fetchgit: Simplify submodule url discovery --- pkgs/build-support/fetchgit/nix-prefetch-git | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/pkgs/build-support/fetchgit/nix-prefetch-git b/pkgs/build-support/fetchgit/nix-prefetch-git index 8a427d56ba36..01605b35ef32 100755 --- a/pkgs/build-support/fetchgit/nix-prefetch-git +++ b/pkgs/build-support/fetchgit/nix-prefetch-git @@ -151,12 +151,7 @@ init_submodules(){ local name=$( git config -f .gitmodules --get-regexp submodule\..*\.path | sed -n "s,^\(.*\)\.path $dir\$,\\1,p") - local url=$(git config -f .gitmodules --get ${name}.url) - - # Get Absolute URL if we have a relative URL - if ! echo "$url" | grep '^[a-zA-Z]\+://' >/dev/null 2>&1; then - url="$(git config --get remote.origin.url)/$url" - fi + local url=$(git config --get ${name}.url) clone "$dir" "$url" "$hash" "" done From 2fa60c311284dcb75e6a303b0311a0a58a9f1903 Mon Sep 17 00:00:00 2001 From: "William A. Kennington III" Date: Thu, 4 Dec 2014 14:43:44 -0800 Subject: [PATCH 086/937] ldb: 1.1.17 -> 1.1.18 --- pkgs/development/libraries/ldb/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/ldb/default.nix b/pkgs/development/libraries/ldb/default.nix index 26748d50479a..41b44c4b7311 100644 --- a/pkgs/development/libraries/ldb/default.nix +++ b/pkgs/development/libraries/ldb/default.nix @@ -5,11 +5,11 @@ }: stdenv.mkDerivation rec { - name = "ldb-1.1.17"; + name = "ldb-1.1.18"; src = fetchurl { url = "http://samba.org/ftp/ldb/${name}.tar.gz"; - sha256 = "1rmnppbk06aa1kfdrxi4xyjw2zzx54jqyz95dmqn754ys6m158xr"; + sha256 = "1j69sla6shzcm5lmsb79c4igsjnx2ggygqmf9yyim9mkl8z9ksig"; }; buildInputs = [ From aecdd1e0a45bace7d927fc237364398d0f7ded1f Mon Sep 17 00:00:00 2001 From: "William A. Kennington III" Date: Thu, 4 Dec 2014 14:43:56 -0800 Subject: [PATCH 087/937] tdb: 1.3.1 -> 1.3.3 --- pkgs/development/libraries/tdb/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/tdb/default.nix b/pkgs/development/libraries/tdb/default.nix index ce43202ee438..18bb73e707bc 100644 --- a/pkgs/development/libraries/tdb/default.nix +++ b/pkgs/development/libraries/tdb/default.nix @@ -5,11 +5,11 @@ }: stdenv.mkDerivation rec { - name = "tdb-1.3.1"; + name = "tdb-1.3.3"; src = fetchurl { url = "http://samba.org/ftp/tdb/${name}.tar.gz"; - sha256 = "1qzcl8n57vpxwd8048djna3zwjy6ji56c2bnvmnr1hw0x1d9hagz"; + sha256 = "03jg7gvyi5ljj93zwvqw1d1p7a9gqy0v4rxwn7ypw4ipxyiavpjl"; }; buildInputs = [ From aadb556e296da7a585f110f31ada0b8d9e9f031d Mon Sep 17 00:00:00 2001 From: Charles Strahan Date: Thu, 4 Dec 2014 18:00:46 -0500 Subject: [PATCH 088/937] lastpass-cli: new package This adds the official lastpass CLI, a utility for manipulating lastpass logins. --- pkgs/tools/security/lastpass-cli/default.nix | 34 ++++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 ++ 2 files changed, 36 insertions(+) create mode 100644 pkgs/tools/security/lastpass-cli/default.nix diff --git a/pkgs/tools/security/lastpass-cli/default.nix b/pkgs/tools/security/lastpass-cli/default.nix new file mode 100644 index 000000000000..a3652f62232f --- /dev/null +++ b/pkgs/tools/security/lastpass-cli/default.nix @@ -0,0 +1,34 @@ +{ stdenv, lib, fetchFromGitHub, pkgconfig, openssl, curl, libxml2, libxslt, asciidoc, docbook_xsl }: + +stdenv.mkDerivation rec { + name = "lastpass-cli-${version}"; + + version = "0.4.0"; + + src = fetchFromGitHub { + owner = "lastpass"; + repo = "lastpass-cli"; + rev = "v${version}"; + sha256 = "1r06lifjc28sm88d6x3xwn76l9fjwjmd1wbmvr9j8rna889q0wl9"; + }; + + buildInputs = [ + openssl curl libxml2 pkgconfig asciidoc docbook_xsl libxslt + ]; + + prePatch = '' + substituteInPlace version.h --replace "0.3.0" "0.4.0" + ''; + + makeFlags = "PREFIX=$(out)"; + + installTargets = "install install-doc"; + + meta = with lib; { + description = "Stores, retrieves, generates, and synchronizes passwords securely"; + homepage = "https://github.com/lastpass/lastpass-cli"; + license = licenses.gpl2Plus; + platforms = platforms.linux; + maintainers = with maintainers; [ cstrahan ]; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index a30e4571ad5d..00972f908379 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -540,6 +540,8 @@ let grc = callPackage ../tools/misc/grc { }; + lastpass-cli = callPackage ../tools/security/lastpass-cli { }; + otool = callPackage ../os-specific/darwin/otool { }; pass = callPackage ../tools/security/pass { From 12a3db89ba68ff8f142477e729694fb91fed85c5 Mon Sep 17 00:00:00 2001 From: Austin Seipp Date: Thu, 4 Dec 2014 17:24:04 -0600 Subject: [PATCH 089/937] rr: bump version, 64bit support The git version of `rr` recently got 64bit support; bump version and pick out a working git revision for the new builds. Signed-off-by: Austin Seipp --- .../development/tools/analysis/rr/default.nix | 28 +++++++++++-------- 1 file changed, 16 insertions(+), 12 deletions(-) diff --git a/pkgs/development/tools/analysis/rr/default.nix b/pkgs/development/tools/analysis/rr/default.nix index c2ab7a334fe8..f297d0951027 100644 --- a/pkgs/development/tools/analysis/rr/default.nix +++ b/pkgs/development/tools/analysis/rr/default.nix @@ -1,18 +1,22 @@ -{ stdenv, fetchFromGitHub, cmake, libpfm, zlib }: +{ stdenv, fetchFromGitHub, cmake, libpfm, zlib, python }: + +with stdenv.lib; stdenv.mkDerivation rec { - version = "2.0.0"; - name = "rr-${version}"; + name = "rr-${version}"; + version = "2.0.0-f2b02c4"; src = fetchFromGitHub { - owner = "mozilla"; - repo = "rr"; - rev = version; - sha256 = "0mlxkj35zmm15dgnc7rfynnh2s2hpym01147vwc8pwv8qgab903s"; + owner = "mozilla"; + repo = "rr"; + rev = "f2b02c4144584dec092d10eb42be2396069ea546"; + sha256 = "1vdhgh3bp287z21lxfj3rb9r3fbar18n9pl0v31h8axjn57l70h7"; }; - buildInputs = [ cmake libpfm zlib ]; - cmakeFlags = "-DCMAKE_C_FLAGS_RELEASE:STRING= -DCMAKE_CXX_FLAGS_RELEASE:STRING="; + buildInputs = [ cmake libpfm zlib python ]; + cmakeFlags = + "-DCMAKE_C_FLAGS_RELEASE:STRING= -DCMAKE_CXX_FLAGS_RELEASE:STRING=" + + (optionalString (stdenv.system == "x86_64-linux") " -Dforce64bit=ON"); meta = { homepage = http://rr-project.org/; @@ -24,8 +28,8 @@ stdenv.mkDerivation rec { time the same execution is replayed. ''; - license = "custom"; - maintainers = [ stdenv.lib.maintainers.pierron ]; - platforms = [ "i686-linux" ]; + license = "custom"; + maintainers = with stdenv.lib.maintainers; [ pierron thoughtpolice ]; + platforms = stdenv.lib.platforms.linux; }; } \ No newline at end of file From e33a65aeca7dc1a0bb938ca255dc16b4b1b2b681 Mon Sep 17 00:00:00 2001 From: Arseniy Seroka Date: Fri, 5 Dec 2014 02:32:01 +0300 Subject: [PATCH 090/937] racer: nightlycompat --- pkgs/development/tools/rust/racer/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/development/tools/rust/racer/default.nix b/pkgs/development/tools/rust/racer/default.nix index 2847db3ec5aa..b6b0f6f63537 100644 --- a/pkgs/development/tools/rust/racer/default.nix +++ b/pkgs/development/tools/rust/racer/default.nix @@ -6,11 +6,11 @@ in stdenv.mkDerivation rec { #TODO add emacs support - name = "racer-git-2014-11-24"; + name = "racer-git-2014-12-04"; src = fetchgit { url = https://github.com/phildawes/racer; - rev = "50655ffd509bea09ea9b310970dedfeaf5a33cf3"; - sha256 = "0bd456i4nz12z39ljnw1kjg8mcflvm7rjql2r80fb038c7rd6xi1"; + rev = "cc633ad2477cb064ba6e4d23b58c124c8521410c"; + sha256 = "1nqlgdqnqhzbnbxvhs60gk5hjzrxfq8blyh1riiknxdlq5kqaky7"; }; buildInputs = [ rust makeWrapper ]; From 22dfaefea570be75a7ab591abb245debd4cff96c Mon Sep 17 00:00:00 2001 From: Arseniy Seroka Date: Fri, 5 Dec 2014 02:32:36 +0300 Subject: [PATCH 091/937] yunocommit-vim: fix link --- pkgs/misc/vim-plugins/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/misc/vim-plugins/default.nix b/pkgs/misc/vim-plugins/default.nix index 957bc7d69743..2ca31d523feb 100644 --- a/pkgs/misc/vim-plugins/default.nix +++ b/pkgs/misc/vim-plugins/default.nix @@ -561,7 +561,7 @@ rec { YUNOcommit = buildVimPlugin { name = "YUNOcommit"; src = fetchgit { - url = "git://github.com/esneide/YUNOcommit.vim"; + url = "https://github.com/esneider/YUNOcommit.vim"; rev = "981082055a73ef076d7e27477874d2303153a448"; sha256 = "4bfd80720c353884e5c373b5457397a63e5e2e4ab4a97d6ce86c1740ac3b4c56"; From 73651e6c017c371b44346acf46d3e8586c3d2e39 Mon Sep 17 00:00:00 2001 From: Austin Seipp Date: Thu, 4 Dec 2014 17:49:13 -0600 Subject: [PATCH 092/937] Revert "rr: bump version, 64bit support" This reverts commit 12a3db89ba68ff8f142477e729694fb91fed85c5. The prior commit was broken a bit; rr will take a little more work to support a 64bit build. --- .../development/tools/analysis/rr/default.nix | 28 ++++++++----------- 1 file changed, 12 insertions(+), 16 deletions(-) diff --git a/pkgs/development/tools/analysis/rr/default.nix b/pkgs/development/tools/analysis/rr/default.nix index f297d0951027..c2ab7a334fe8 100644 --- a/pkgs/development/tools/analysis/rr/default.nix +++ b/pkgs/development/tools/analysis/rr/default.nix @@ -1,22 +1,18 @@ -{ stdenv, fetchFromGitHub, cmake, libpfm, zlib, python }: - -with stdenv.lib; +{ stdenv, fetchFromGitHub, cmake, libpfm, zlib }: stdenv.mkDerivation rec { - name = "rr-${version}"; - version = "2.0.0-f2b02c4"; + version = "2.0.0"; + name = "rr-${version}"; src = fetchFromGitHub { - owner = "mozilla"; - repo = "rr"; - rev = "f2b02c4144584dec092d10eb42be2396069ea546"; - sha256 = "1vdhgh3bp287z21lxfj3rb9r3fbar18n9pl0v31h8axjn57l70h7"; + owner = "mozilla"; + repo = "rr"; + rev = version; + sha256 = "0mlxkj35zmm15dgnc7rfynnh2s2hpym01147vwc8pwv8qgab903s"; }; - buildInputs = [ cmake libpfm zlib python ]; - cmakeFlags = - "-DCMAKE_C_FLAGS_RELEASE:STRING= -DCMAKE_CXX_FLAGS_RELEASE:STRING=" - + (optionalString (stdenv.system == "x86_64-linux") " -Dforce64bit=ON"); + buildInputs = [ cmake libpfm zlib ]; + cmakeFlags = "-DCMAKE_C_FLAGS_RELEASE:STRING= -DCMAKE_CXX_FLAGS_RELEASE:STRING="; meta = { homepage = http://rr-project.org/; @@ -28,8 +24,8 @@ stdenv.mkDerivation rec { time the same execution is replayed. ''; - license = "custom"; - maintainers = with stdenv.lib.maintainers; [ pierron thoughtpolice ]; - platforms = stdenv.lib.platforms.linux; + license = "custom"; + maintainers = [ stdenv.lib.maintainers.pierron ]; + platforms = [ "i686-linux" ]; }; } \ No newline at end of file From 761e5309b51511db1509fdfd548eeb6429e012f7 Mon Sep 17 00:00:00 2001 From: Michael Raskin <7c6f434c@mail.ru> Date: Fri, 5 Dec 2014 09:38:06 +0300 Subject: [PATCH 093/937] Set c++11 standard for LibreOffice build - needed by glm --- pkgs/applications/office/libreoffice/default.nix | 2 ++ 1 file changed, 2 insertions(+) diff --git a/pkgs/applications/office/libreoffice/default.nix b/pkgs/applications/office/libreoffice/default.nix index ceb1a9eab865..1286c863dfd5 100644 --- a/pkgs/applications/office/libreoffice/default.nix +++ b/pkgs/applications/office/libreoffice/default.nix @@ -104,6 +104,8 @@ stdenv.mkDerivation rec { # to make its dlopen work. NIX_LDFLAGS = "-lcups"; + NIX_CFLAGS_COMPILE="-std=c++11"; # glm 0.9.6.0 insists on this + # If we call 'configure', 'make' will then call configure again without parameters. # It's their system. configureScript = "./autogen.sh"; From b4084d4913a8700e439c8c9d512770c569027720 Mon Sep 17 00:00:00 2001 From: Michael Raskin <7c6f434c@mail.ru> Date: Fri, 5 Dec 2014 10:51:40 +0300 Subject: [PATCH 094/937] Just use old glm for LO, the rest of LO is not keen on using C++ git add -A 1 --- .../office/libreoffice/default.nix | 2 -- pkgs/development/libraries/glm/0954.nix | 35 +++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 ++ 3 files changed, 37 insertions(+), 2 deletions(-) create mode 100644 pkgs/development/libraries/glm/0954.nix diff --git a/pkgs/applications/office/libreoffice/default.nix b/pkgs/applications/office/libreoffice/default.nix index 1286c863dfd5..ceb1a9eab865 100644 --- a/pkgs/applications/office/libreoffice/default.nix +++ b/pkgs/applications/office/libreoffice/default.nix @@ -104,8 +104,6 @@ stdenv.mkDerivation rec { # to make its dlopen work. NIX_LDFLAGS = "-lcups"; - NIX_CFLAGS_COMPILE="-std=c++11"; # glm 0.9.6.0 insists on this - # If we call 'configure', 'make' will then call configure again without parameters. # It's their system. configureScript = "./autogen.sh"; diff --git a/pkgs/development/libraries/glm/0954.nix b/pkgs/development/libraries/glm/0954.nix new file mode 100644 index 000000000000..a5b62c6b04ef --- /dev/null +++ b/pkgs/development/libraries/glm/0954.nix @@ -0,0 +1,35 @@ +{ stdenv, fetchurl, unzip }: + +stdenv.mkDerivation rec { + name = "glm-0.9.5.4"; + + src = fetchurl { + url = "mirror://sourceforge/project/ogl-math/${name}/${name}.zip"; + sha256 = "0v14xssysy3q1h2mga6rqlz722mwbis4rrx76zmvhjqh17qh4l62"; + }; + + buildInputs = [ unzip ]; + + outputs = [ "out" "doc" ]; + + installPhase = '' + mkdir -p "$out/include" + cp -r glm "$out/include" + + mkdir -p "$doc/share/doc/glm" + cp -r doc/* "$doc/share/doc/glm" + ''; + + meta = with stdenv.lib; { + description = "OpenGL Mathematics library for C++"; + longDescription = '' + OpenGL Mathematics (GLM) is a header only C++ mathematics library for + graphics software based on the OpenGL Shading Language (GLSL) + specification and released under the MIT license. + ''; + homepage = http://glm.g-truc.net/; + license = licenses.mit; + platforms = platforms.unix; + maintainers = with stdenv.lib.maintainers; [ fuuzetsu ]; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 00972f908379..a24063ac0ed1 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -5285,6 +5285,7 @@ let }; glm = callPackage ../development/libraries/glm { }; + glm_0954 = callPackage ../development/libraries/glm/0954.nix { }; glog = callPackage ../development/libraries/glog { }; @@ -10063,6 +10064,7 @@ let zip = zip.override { enableNLS = false; }; jdk = openjdk; boost = boost155; + glm = glm_0954; fontsConf = makeFontsConf { fontDirectories = [ freefont_ttf xorg.fontmiscmisc xorg.fontbhttf From 581fcc2ad208a05a464e87b0bb639821e43e5085 Mon Sep 17 00:00:00 2001 From: Luke Clifton Date: Fri, 5 Dec 2014 16:08:39 +0800 Subject: [PATCH 095/937] Added linear-opengl --- .../haskell/linear-opengl/default.nix | 18 ++++++++++++++++++ pkgs/top-level/haskell-packages.nix | 2 ++ 2 files changed, 20 insertions(+) create mode 100644 pkgs/development/libraries/haskell/linear-opengl/default.nix diff --git a/pkgs/development/libraries/haskell/linear-opengl/default.nix b/pkgs/development/libraries/haskell/linear-opengl/default.nix new file mode 100644 index 000000000000..0c36155687e0 --- /dev/null +++ b/pkgs/development/libraries/haskell/linear-opengl/default.nix @@ -0,0 +1,18 @@ +# This file was auto-generated by cabal2nix. Please do NOT edit manually! + +{ cabal, distributive, lens, linear, OpenGL, OpenGLRaw, tagged }: + +cabal.mkDerivation (self: { + pname = "linear-opengl"; + version = "0.2.0.3"; + sha256 = "1fkx5qbimkw2z6nv1jrqb1s0pixlb7l54wxvlhx0nx1kw299dbnd"; + buildDepends = [ + distributive lens linear OpenGL OpenGLRaw tagged + ]; + meta = { + homepage = "http://www.github.com/bgamari/linear-opengl"; + description = "Isomorphisms between linear and OpenGL types"; + license = self.stdenv.lib.licenses.bsd3; + platforms = self.ghc.meta.platforms; + }; +}) diff --git a/pkgs/top-level/haskell-packages.nix b/pkgs/top-level/haskell-packages.nix index 748bb8336438..1c2502d0dd1c 100644 --- a/pkgs/top-level/haskell-packages.nix +++ b/pkgs/top-level/haskell-packages.nix @@ -1538,6 +1538,8 @@ self : let callPackage = x : y : modifyPrio (newScope self x y); in linear = callPackage ../development/libraries/haskell/linear {}; + linearOpenGL = callPackage ../development/libraries/haskell/linear-opengl {}; + linuxInotify = callPackage ../development/libraries/haskell/linux-inotify {}; List = callPackage ../development/libraries/haskell/List {}; From d779ff5d5c3feaef915babf6da9d237c7a250b60 Mon Sep 17 00:00:00 2001 From: Luke Clifton Date: Fri, 5 Dec 2014 16:17:03 +0800 Subject: [PATCH 096/937] Jailbreak --- pkgs/development/libraries/haskell/linear-opengl/default.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/pkgs/development/libraries/haskell/linear-opengl/default.nix b/pkgs/development/libraries/haskell/linear-opengl/default.nix index 0c36155687e0..0d2da3445a6f 100644 --- a/pkgs/development/libraries/haskell/linear-opengl/default.nix +++ b/pkgs/development/libraries/haskell/linear-opengl/default.nix @@ -9,6 +9,7 @@ cabal.mkDerivation (self: { buildDepends = [ distributive lens linear OpenGL OpenGLRaw tagged ]; + jailbreak = true; meta = { homepage = "http://www.github.com/bgamari/linear-opengl"; description = "Isomorphisms between linear and OpenGL types"; From 52ce239786b390da37420f1b69cf7c3e549bb939 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Cillian=20de=20R=C3=B3iste?= Date: Fri, 5 Dec 2014 09:08:09 +0000 Subject: [PATCH 097/937] guitarix: update from 0.32.0 to 0.32.1 --- pkgs/applications/audio/guitarix/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/audio/guitarix/default.nix b/pkgs/applications/audio/guitarix/default.nix index c4ba88c87edf..8ffc760a88fb 100644 --- a/pkgs/applications/audio/guitarix/default.nix +++ b/pkgs/applications/audio/guitarix/default.nix @@ -4,11 +4,11 @@ stdenv.mkDerivation rec { name = "guitarix-${version}"; - version = "0.32.0"; + version = "0.32.1"; src = fetchurl { url = "mirror://sourceforge/guitarix/guitarix2-${version}.tar.bz2"; - sha256 = "06qxydcba1ga1l19kyqy0mk141mv6pa4wbkyh75xbwhyr65bwkc4"; + sha256 = "1sl7ca1lj0wchh3xq7qw3zqrbyyh4r8cwljb9i3yplpsn90d1i3k"; }; buildInputs = [ From b79bf417f0a5cfb71d0bc3fd73895915f9cc0d20 Mon Sep 17 00:00:00 2001 From: Pavan Rikhi Date: Fri, 5 Dec 2014 00:54:59 -0500 Subject: [PATCH 098/937] Add the Clearlooks-Phenix GTK3 Theme --- lib/maintainers.nix | 1 + .../themes/gtk3/clearlooks-phenix/default.nix | 36 +++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 ++ 3 files changed, 39 insertions(+) create mode 100644 pkgs/misc/themes/gtk3/clearlooks-phenix/default.nix diff --git a/lib/maintainers.nix b/lib/maintainers.nix index bb9f2c89ad29..82986faaa260 100644 --- a/lib/maintainers.nix +++ b/lib/maintainers.nix @@ -124,6 +124,7 @@ piotr = "Piotr Pietraszkiewicz "; pkmx = "Chih-Mao Chen "; plcplc = "Philip Lykke Carlsen "; + prikhi = "Pavan Rikhi "; pSub = "Pascal Wittmann "; puffnfresh = "Brian McKenna "; qknight = "Joachim Schiele "; diff --git a/pkgs/misc/themes/gtk3/clearlooks-phenix/default.nix b/pkgs/misc/themes/gtk3/clearlooks-phenix/default.nix new file mode 100644 index 000000000000..ae5b2a3544d5 --- /dev/null +++ b/pkgs/misc/themes/gtk3/clearlooks-phenix/default.nix @@ -0,0 +1,36 @@ +{ stdenv, fetchurl, gtk }: + +stdenv.mkDerivation rec { + version = "5.0.7"; + name = "clearlooks-phenix-${version}"; + + src = fetchurl { + url = "http://github.com/jpfleury/clearlooks-phenix/archive/${version}.tar.gz"; + sha256 = "107jx3p3zwzy8xy0m8hwzs1kp8j60xgc3dja27r3vwhb3x3y1i8k"; + }; + + dontBuild = true; + installPhase = '' + mkdir -p $out/share/themes/Clearlooks-Phenix + cp -r . $out/share/themes/Clearlooks-Phenix/ + ''; + + preferLocalBuild = true; + + meta = with stdenv.lib; { + descriptioon = "GTK3 port of the Clearlooks theme"; + longDescription = '' + The Clearlooks-Phénix project aims at creating a GTK3 port of Clearlooks, + the default theme for Gnome 2. Style is also included for GTK2, Unity and + for Metacity, Openbox and Xfwm4 window managers. + + You should install this theme into your user profile and then set + GTK_DATA_PREFIX to `~/.nix-profile`. + ''; + homepage = https://github.com/jpfleury/clearlooks-phenix; + downloadPage = https://github.com/jpfleury/clearlooks-phenix/releases; + license = licenses.gpl3; + maintainers = [ maintainers.prikhi ]; + platforms = platforms.linux; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index a24063ac0ed1..a74a6462da34 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -11800,6 +11800,8 @@ let cjs = callPackage ../desktops/cinnamon/cjs.nix { }; }; + clearlooks-phenix = callPackage ../misc/themes/gtk3/clearlooks-phenix { }; + enlightenment = callPackage ../desktops/enlightenment { }; e19 = recurseIntoAttrs ( From 24848992bcc3ec2b244e634a350f03604e1bcac6 Mon Sep 17 00:00:00 2001 From: Rok Garbas Date: Fri, 5 Dec 2014 11:30:25 +0100 Subject: [PATCH 099/937] goaccess: update to 0.8.5 --- pkgs/tools/misc/goaccess/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/tools/misc/goaccess/default.nix b/pkgs/tools/misc/goaccess/default.nix index 0f8f82acaed0..7aea9870b844 100644 --- a/pkgs/tools/misc/goaccess/default.nix +++ b/pkgs/tools/misc/goaccess/default.nix @@ -1,10 +1,10 @@ { stdenv, fetchurl, pkgconfig, geoip, ncurses, glib }: let - version = "0.8"; + version = "0.8.5"; mainSrc = fetchurl { - url = "http://tar.goaccess.prosoftcorp.com/goaccess-${version}.tar.gz"; - sha256 = "a61215b1f3e82bdb50c892e843f1a85d6d85f882915d694a5672911fab955eea"; + url = "http://tar.goaccess.io/goaccess-${version}.tar.gz"; + sha256 = "121s1hva33nq0g5n354ln68nalv2frg8slm7n84r81bmi2wvdim4"; }; in From 66d234917a76da3a8eaf5a1b60f1ef7b0749c64d Mon Sep 17 00:00:00 2001 From: Oliver Charles Date: Fri, 5 Dec 2014 11:36:48 +0000 Subject: [PATCH 100/937] bosun: Update to 2014120422265 --- pkgs/servers/monitoring/bosun/default.nix | 24 +++++++---------------- 1 file changed, 7 insertions(+), 17 deletions(-) diff --git a/pkgs/servers/monitoring/bosun/default.nix b/pkgs/servers/monitoring/bosun/default.nix index dfbf8d1b9272..e22e071201af 100644 --- a/pkgs/servers/monitoring/bosun/default.nix +++ b/pkgs/servers/monitoring/bosun/default.nix @@ -1,31 +1,21 @@ -{ stdenv, fetchgit, fetchurl, go }: -let - go-fs = fetchgit { - url = git://github.com/rakyll/statik.git; - rev = "f19d7c21cd036701d42ec176b13e0946cc9591b0"; - sha256 = "0vaa8xzkmj1dgiayg7ccrniapz4f4rhsizx2hybyc5rgmalfj9ac"; - }; - -in stdenv.mkDerivation rec { +{ stdenv, fetchurl, go }: +stdenv.mkDerivation rec { name = "bosun-${version}"; - version = "20141119233013"; + version = "20141204222654"; src = fetchurl { url = "https://github.com/bosun-monitor/bosun/archive/${version}.tar.gz"; - sha256 = "0l16g073ixk42g3jz1r0lhmvssc0k8s1vnr9pvgxs897rzpdjjm1"; + sha256 = "1jwhfwf24zhncrirna3q1vhap4f955bqx3sws3ryk5gp1w99l36n"; }; buildInputs = [ go ]; sourceRoot = "."; buildPhase = '' - mkdir -p src/github.com/bosun-monitor - mv bosun-${version} src/github.com/bosun-monitor/bosun - - mkdir -p src/github.com/rakyll - ln -s ${go-fs} src/github.com/rakyll/statik + mkdir -p src + mv bosun-${version} src/bosun.org export GOPATH=$PWD - go build -v -o bosun src/github.com/bosun-monitor/bosun/main.go + go build -v -o bosun src/bosun.org/cmd/bosun/main.go ''; installPhase = '' From e56a8df827ddb7ce6711128de0cc6868b11a2931 Mon Sep 17 00:00:00 2001 From: Oliver Charles Date: Fri, 5 Dec 2014 11:39:56 +0000 Subject: [PATCH 101/937] scollector: Update to 20141204222654 --- pkgs/servers/monitoring/bosun/scollector.nix | 19 +++++++++---------- 1 file changed, 9 insertions(+), 10 deletions(-) diff --git a/pkgs/servers/monitoring/bosun/scollector.nix b/pkgs/servers/monitoring/bosun/scollector.nix index 137b59714c1b..176d42d382a2 100644 --- a/pkgs/servers/monitoring/bosun/scollector.nix +++ b/pkgs/servers/monitoring/bosun/scollector.nix @@ -1,22 +1,21 @@ -{ stdenv, fetchgit, fetchurl, go }: -let - -in stdenv.mkDerivation rec { - name = "scollector-20141119233025"; +{ stdenv, fetchurl, go }: +stdenv.mkDerivation rec { + name = "scollector-${version}"; + version = "20141204222654"; src = fetchurl { - url = https://github.com/bosun-monitor/scollector/archive/20141119233025.tar.gz; - sha256 = "13f7hg4mswcdl76ksx8ds3297rslsswb1hq327b3xm1wyr42k6wa"; + url = "https://github.com/bosun-monitor/bosun/archive/${version}.tar.gz"; + sha256 = "1jwhfwf24zhncrirna3q1vhap4f955bqx3sws3ryk5gp1w99l36n"; }; buildInputs = [ go ]; sourceRoot = "."; buildPhase = '' - mkdir -p src/github.com/bosun-monitor - mv scollector-20141119233025 src/github.com/bosun-monitor/scollector + mkdir -p src + mv bosun-${version} src/bosun.org export GOPATH=$PWD - go build -v -o scollector src/github.com/bosun-monitor/scollector/main.go + go build -v -o scollector src/bosun.org/cmd/scollector/main.go ''; installPhase = '' From bcb9f0853cf9fc294daa41090900ece5e0105012 Mon Sep 17 00:00:00 2001 From: Oliver Charles Date: Fri, 5 Dec 2014 11:43:27 +0000 Subject: [PATCH 102/937] bosun: Now builds on all Unix platforms --- pkgs/servers/monitoring/bosun/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/servers/monitoring/bosun/default.nix b/pkgs/servers/monitoring/bosun/default.nix index e22e071201af..5c3938c1b6e8 100644 --- a/pkgs/servers/monitoring/bosun/default.nix +++ b/pkgs/servers/monitoring/bosun/default.nix @@ -30,6 +30,6 @@ stdenv.mkDerivation rec { ''; homepage = http://bosun.org; license = licenses.mit; - platforms = ["x86_64-linux"]; + platforms = platforms.unix; }; } From bf3fd50e143c74ad6d2745c82b321e107efa85a5 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Fri, 5 Dec 2014 12:57:00 +0100 Subject: [PATCH 103/937] upower: Fix lib/systemd/system-sleep/system-sleep --- pkgs/os-specific/linux/upower/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/os-specific/linux/upower/default.nix b/pkgs/os-specific/linux/upower/default.nix index 605d3d7adc5e..90914284773f 100644 --- a/pkgs/os-specific/linux/upower/default.nix +++ b/pkgs/os-specific/linux/upower/default.nix @@ -49,7 +49,7 @@ stdenv.mkDerivation rec { ++ stdenv.lib.optional useSystemd [ "--enable-systemd" "--with-systemdsystemunitdir=$(out)/etc/systemd/system" - "--with-systemdutildir=$(out)/lib/systemd/system-sleep" + "--with-systemdutildir=$(out)/lib/systemd" "--with-udevrulesdir=$(out)/lib/udev/rules.d" ]; From effaa51680de618d656c906b33d9619c4a3166f9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Benno=20F=C3=BCnfst=C3=BCck?= Date: Fri, 5 Dec 2014 13:59:02 +0100 Subject: [PATCH 104/937] firefox-wrapper: add missing gstreamer plugins These GStreamer plugins are required for H264