From 5a9ac9fed70b63b7ec27e11ba7f4b5673c25a946 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Tue, 12 May 2015 17:28:06 +0200 Subject: [PATCH 001/259] Use gcc 4.9 by default --- pkgs/tools/misc/pipelight/default.nix | 4 +-- pkgs/top-level/all-packages.nix | 36 +++++++++++---------------- 2 files changed, 17 insertions(+), 23 deletions(-) diff --git a/pkgs/tools/misc/pipelight/default.nix b/pkgs/tools/misc/pipelight/default.nix index cb130c8e9178..89459eb281bc 100644 --- a/pkgs/tools/misc/pipelight/default.nix +++ b/pkgs/tools/misc/pipelight/default.nix @@ -1,5 +1,5 @@ { stdenv, fetchurl, fetchgit, autoconf, automake, wineStaging, perl, xlibs - , gnupg, gcc48_multi, mesa, curl, bash, cacert, cabextract, utillinux, attr + , gnupg, gcc_multi, mesa, curl, bash, cacert, cabextract, utillinux, attr }: let @@ -19,7 +19,7 @@ in stdenv.mkDerivation rec { sha256 = "1i440rf22fmd2w86dlm1mpi3nb7410rfczc0yldnhgsvp5p3sm5f"; }; - buildInputs = [ wine_custom xlibs.libX11 gcc48_multi mesa curl ]; + buildInputs = [ wine_custom xlibs.libX11 gcc_multi mesa curl ]; propagatedbuildInputs = [ curl cabextract ]; patches = [ ./pipelight.patch ]; diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index d6fcb1c0f95f..0711b41d529e 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -239,7 +239,7 @@ let # just the plain stdenv. stdenv_32bit = lowPrio ( if system == "x86_64-linux" then - overrideCC stdenv gcc48_multi + overrideCC stdenv gcc_multi else stdenv); @@ -3469,8 +3469,20 @@ let gambit = callPackage ../development/compilers/gambit { }; - gcc = gcc48; - gcc_multi = gcc48_multi; + gcc = gcc49; + + gcc_multi = + if system == "x86_64-linux" then lowPrio ( + wrapCCWith (import ../build-support/cc-wrapper) glibc_multi (gcc.cc.override { + stdenv = overrideCC stdenv (wrapCCWith (import ../build-support/cc-wrapper) glibc_multi gcc.cc); + profiledCompiler = false; + enableMultilib = true; + })) + else throw "Multilib gcc not supported on ‘${system}’"; + + gcc_debug = lowPrio (wrapCC (gcc.cc.override { + stripped = false; + })); gccApple = throw "gccApple is no longer supported"; @@ -3601,24 +3613,6 @@ let else null; })); - gcc48_multi = - if system == "x86_64-linux" then lowPrio ( - wrapCCWith (import ../build-support/cc-wrapper) glibc_multi (gcc48.cc.override { - stdenv = overrideCC stdenv (wrapCCWith (import ../build-support/cc-wrapper) glibc_multi gcc.cc); - profiledCompiler = false; - enableMultilib = true; - })) - else throw "Multilib gcc not supported on ‘${system}’"; - - gcc48_debug = lowPrio (wrapCC (callPackage ../development/compilers/gcc/4.8 { - stripped = false; - - inherit noSysDirs; - cross = null; - libcCross = null; - binutilsCross = null; - })); - gcc49 = lowPrio (wrapCC (callPackage ../development/compilers/gcc/4.9 { inherit noSysDirs; From 6671bb8be4744cc15c9da2871766ce6e16886488 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Tue, 12 May 2015 17:35:23 +0200 Subject: [PATCH 002/259] Remove gccStdInc This reverts d927da8dae1c4ff0c492d41e00835cfd08ff84d7. Having a copy of gcc-wrapper/setup-hook.sh is bad for maintainability - it had already started to diverge. Also, gccStdInc gave a nix-env conflict with the standard gcc. And it wasn't actually used in Nixpkgs. Instead, if you really need to change "-isystem" to "-I", you can now set ccIncludeFlag to "-I". --- pkgs/build-support/cc-wrapper/default.nix | 3 +- .../cc-wrapper/setup-hook-stdinc.sh | 44 ------------------- pkgs/build-support/cc-wrapper/setup-hook.sh | 2 +- pkgs/top-level/all-packages.nix | 21 --------- 4 files changed, 2 insertions(+), 68 deletions(-) delete mode 100644 pkgs/build-support/cc-wrapper/setup-hook-stdinc.sh diff --git a/pkgs/build-support/cc-wrapper/default.nix b/pkgs/build-support/cc-wrapper/default.nix index f6826c837ca1..8f930eb4dc4f 100644 --- a/pkgs/build-support/cc-wrapper/default.nix +++ b/pkgs/build-support/cc-wrapper/default.nix @@ -9,7 +9,6 @@ , cc ? null, libc ? null, binutils ? null, coreutils ? null, shell ? stdenv.shell , zlib ? null, extraPackages ? [] , dyld ? null # TODO: should this be a setup-hook on dyld? -, setupHook ? ./setup-hook.sh }: with stdenv.lib; @@ -226,7 +225,7 @@ stdenv.mkDerivation { '' + '' - substituteAll ${setupHook} $out/nix-support/setup-hook.tmp + substituteAll ${./setup-hook.sh} $out/nix-support/setup-hook.tmp cat $out/nix-support/setup-hook.tmp >> $out/nix-support/setup-hook rm $out/nix-support/setup-hook.tmp diff --git a/pkgs/build-support/cc-wrapper/setup-hook-stdinc.sh b/pkgs/build-support/cc-wrapper/setup-hook-stdinc.sh deleted file mode 100644 index 22e778b06904..000000000000 --- a/pkgs/build-support/cc-wrapper/setup-hook-stdinc.sh +++ /dev/null @@ -1,44 +0,0 @@ -# This is an alternate setup hook for gcc-wrapper that uses the -I flag to -# add include search paths instead of -isystem. We need this for some packages -# because -isystem can change the search order specified by prior -I flags. -# Changing the search order can point gcc to the wrong package's headers. -# The -I flag will never change the order of prior flags. - -export NIX_CC=@out@ - -addCVars () { - if [ -d $1/include ]; then - export NIX_CFLAGS_COMPILE+=" -I $1/include" - fi - - if [ -d $1/lib64 -a ! -L $1/lib64 ]; then - export NIX_LDFLAGS+=" -L$1/lib64" - fi - - if [ -d $1/lib ]; then - export NIX_LDFLAGS+=" -L$1/lib" - fi -} - -envHooks+=(addCVars) - -# Note: these come *after* $out in the PATH (see setup.sh). - -if [ -n "@gcc@" ]; then - addToSearchPath PATH @gcc@/bin -fi - -if [ -n "@binutils@" ]; then - addToSearchPath PATH @binutils@/bin -fi - -if [ -n "@libc@" ]; then - addToSearchPath PATH @libc@/bin -fi - -if [ -n "@coreutils@" ]; then - addToSearchPath PATH @coreutils@/bin -fi - -export CC=gcc -export CXX=g++ diff --git a/pkgs/build-support/cc-wrapper/setup-hook.sh b/pkgs/build-support/cc-wrapper/setup-hook.sh index 648afda6ebb9..3d0b2fdfe8ae 100644 --- a/pkgs/build-support/cc-wrapper/setup-hook.sh +++ b/pkgs/build-support/cc-wrapper/setup-hook.sh @@ -2,7 +2,7 @@ export NIX_CC=@out@ addCVars () { if [ -d $1/include ]; then - export NIX_CFLAGS_COMPILE+=" -isystem $1/include" + export NIX_CFLAGS_COMPILE+=" ${ccIncludeFlag:--isystem} $1/include" fi if [ -d $1/lib64 -a ! -L $1/lib64 ]; then diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 0711b41d529e..e3f616ad74f2 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -4511,27 +4511,6 @@ let inherit stdenv gcc binutils libc shell name cross; }); - /* Alternative GCC wrapper that uses the standard -I include flag instead of - * -isystem. The -isystem flag can change the search order specified by prior - * -I flags. For KDE 5 packages, we don't want to interfere with the include - * search path order specified by the build system. Some packages depend on - * Qt 4 and Qt 5 simultaneously; because the two Qt versions provide headers - * with the same filenames, we must respect the search order specified by the - * build system so that the Qt 4 components find the Qt 4 headers and the Qt 5 - * components find the Qt 5 headers. - */ - wrapGCCStdInc = glibc: baseGCC: (import ../build-support/cc-wrapper) { - nativeTools = stdenv.cc.nativeTools or false; - nativeLibc = stdenv.cc.nativeLibc or false; - nativePrefix = stdenv.cc.nativePrefix or ""; - cc = baseGCC; - libc = glibc; - inherit stdenv binutils coreutils zlib; - setupHook = ../build-support/cc-wrapper/setup-hook-stdinc.sh; - }; - - gccStdInc = wrapGCCStdInc glibc gcc.cc; - # prolog yap = callPackage ../development/compilers/yap { }; From 9ae86dc3fc9db623dbed81c74e7ab37bce785715 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Tue, 12 May 2015 18:41:02 +0200 Subject: [PATCH 003/259] Ensure that errexit is honoured in hooks Partial fix for #7524. --- 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 75be719c2b95..47e330562708 100644 --- a/pkgs/stdenv/generic/setup.sh +++ b/pkgs/stdenv/generic/setup.sh @@ -19,7 +19,7 @@ runHook() { if [[ "$hookName" =~ Hook$ ]]; then var+=s; else var+=Hooks; fi eval "local -a dummy=(\"\${$var[@]}\")" for hook in "_callImplicitHook 0 $hookName" "${dummy[@]}"; do - if ! _eval "$hook" "$@"; then return 1; fi + _eval "$hook" "$@" done return 0 } From 90fd9a55d9346d39948a690b4209c57940e79120 Mon Sep 17 00:00:00 2001 From: Shea Levy Date: Tue, 12 May 2015 06:40:31 -0400 Subject: [PATCH 004/259] binutils: don't build with Werror --- pkgs/development/tools/misc/binutils/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/development/tools/misc/binutils/default.nix b/pkgs/development/tools/misc/binutils/default.nix index f740c60c4877..767edcd79842 100644 --- a/pkgs/development/tools/misc/binutils/default.nix +++ b/pkgs/development/tools/misc/binutils/default.nix @@ -59,7 +59,7 @@ stdenv.mkDerivation rec { NIX_CFLAGS_COMPILE = "-static-libgcc"; configureFlags = - [ "--enable-shared" "--enable-deterministic-archives" ] + [ "--enable-shared" "--enable-deterministic-archives" "--disable-werror" ] ++ optional (stdenv.system == "mips64el-linux") "--enable-fix-loongson2f-nop" ++ optional (cross != null) "--target=${cross.config}" ++ optionals gold [ "--enable-gold" "--enable-plugins" ] From 110b671c13747aeda5cc3b3f64f17d0599a262d6 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Wed, 13 May 2015 13:09:17 +0200 Subject: [PATCH 005/259] gcc: Put info in a separate output --- pkgs/development/compilers/gcc/4.8/default.nix | 2 ++ pkgs/development/compilers/gcc/4.9/default.nix | 2 ++ 2 files changed, 4 insertions(+) diff --git a/pkgs/development/compilers/gcc/4.8/default.nix b/pkgs/development/compilers/gcc/4.8/default.nix index 6d5627c34d68..69f9a8df0257 100644 --- a/pkgs/development/compilers/gcc/4.8/default.nix +++ b/pkgs/development/compilers/gcc/4.8/default.nix @@ -209,6 +209,8 @@ stdenv.mkDerivation ({ builder = ../builder.sh; + outputs = [ "out" "info" ]; + src = fetchurl { url = "mirror://gnu/gcc/gcc-${version}/gcc-${version}.tar.bz2"; sha256 = "15c6gwm6dzsaagamxkak5smdkf1rdfbqqjs9jdbrp3lbg4ism02a"; diff --git a/pkgs/development/compilers/gcc/4.9/default.nix b/pkgs/development/compilers/gcc/4.9/default.nix index 16737ffc8963..1cc894b9dcf3 100644 --- a/pkgs/development/compilers/gcc/4.9/default.nix +++ b/pkgs/development/compilers/gcc/4.9/default.nix @@ -208,6 +208,8 @@ stdenv.mkDerivation ({ builder = ../builder.sh; + outputs = [ "out" "info" ]; + src = fetchurl { url = "mirror://gnu/gcc/gcc-${version}/gcc-${version}.tar.bz2"; sha256 = "1pbjp4blk2ycaa6r3jmw4ky5f1s9ji3klbqgv8zs2sl5jn1cj810"; From 24aa3551b0e68c05b8291e61075e612b38586069 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Wed, 13 May 2015 13:17:25 +0200 Subject: [PATCH 006/259] Fix stdenv build --- pkgs/stdenv/linux/default.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/pkgs/stdenv/linux/default.nix b/pkgs/stdenv/linux/default.nix index d432206a9e13..e4d79fce7448 100644 --- a/pkgs/stdenv/linux/default.nix +++ b/pkgs/stdenv/linux/default.nix @@ -285,6 +285,7 @@ rec { [ gzip bzip2 xz bash binutils coreutils diffutils findutils gawk glibc gnumake gnused gnutar gnugrep gnupatch patchelf attr acl paxctl zlib pcre linuxHeaders ed gcc gcc.cc libsigsegv + stage3.pkgs.isl_0_11 stage3.pkgs.cloog_0_18_0 ]; overrides = pkgs: { From 0cc883f2ee12b8454bfff63d0d26c99bc8da2ca7 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Wed, 13 May 2015 13:47:41 +0200 Subject: [PATCH 007/259] groff: Mark as unsafe for parallel building --- pkgs/tools/text/groff/default.nix | 2 ++ 1 file changed, 2 insertions(+) diff --git a/pkgs/tools/text/groff/default.nix b/pkgs/tools/text/groff/default.nix index 90beca862c03..b0421a8ed0d4 100644 --- a/pkgs/tools/text/groff/default.nix +++ b/pkgs/tools/text/groff/default.nix @@ -8,6 +8,8 @@ stdenv.mkDerivation rec { sha256 = "1998v2kcs288d3y7kfxpvl369nqi06zbbvjzafyvyl3pr7bajj1s"; }; + enableParallelBuilding = false; + buildInputs = [ ghostscript ]; nativeBuildInputs = [ perl ]; From e8e0995bd04c4342d0683f235299f7f72c3a940d Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Wed, 13 May 2015 13:53:40 +0200 Subject: [PATCH 008/259] Fix inputproto and probably other packages "grep Requires" failed on *.pc files that had no Requires fields, due to pipefail. But this error was previously masked by #7524. --- pkgs/servers/x11/xorg/builder.sh | 2 ++ 1 file changed, 2 insertions(+) diff --git a/pkgs/servers/x11/xorg/builder.sh b/pkgs/servers/x11/xorg/builder.sh index 6ba50d245075..f5b8803a98a3 100644 --- a/pkgs/servers/x11/xorg/builder.sh +++ b/pkgs/servers/x11/xorg/builder.sh @@ -9,8 +9,10 @@ postInstall() { if test -n "$origPostInstall"; then eval "$origPostInstall"; fi local r p requires + set +o pipefail requires=$(grep "Requires:" $out/lib/pkgconfig/*.pc | \ sed "s/Requires://" | sed "s/,/ /g") + set -o pipefail echo "propagating requisites $requires" From e7feb89158e0e4330d0221e1c48483a94ba5a6ce Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Wed, 13 May 2015 15:29:29 +0200 Subject: [PATCH 009/259] systemd: Fix another build failure hidden by #7524 --- pkgs/os-specific/linux/systemd/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/os-specific/linux/systemd/default.nix b/pkgs/os-specific/linux/systemd/default.nix index f18cc6fa6130..bde6686ff0a9 100644 --- a/pkgs/os-specific/linux/systemd/default.nix +++ b/pkgs/os-specific/linux/systemd/default.nix @@ -66,7 +66,7 @@ stdenv.mkDerivation rec { '' # FIXME: patch this in systemd properly (and send upstream). # FIXME: use sulogin from util-linux once updated. - for i in src/remount-fs/remount-fs.c src/core/mount.c src/core/swap.c src/fsck/fsck.c units/emergency.service.in units/rescue.service.m4.in src/journal/cat.c src/core/shutdown.c src/nspawn/nspawn.c; do + for i in src/remount-fs/remount-fs.c src/core/mount.c src/core/swap.c src/fsck/fsck.c units/emergency.service.in units/rescue.service.in src/journal/cat.c src/core/shutdown.c src/nspawn/nspawn.c; do test -e $i substituteInPlace $i \ --replace /usr/bin/getent ${stdenv.glibc}/bin/getent \ From f40c885a34ce7b2644e5d450566806da1a7ac6f5 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Wed, 13 May 2015 15:31:26 +0200 Subject: [PATCH 010/259] libtiff: Update to 4.0.4beta --- .../development/libraries/libtiff/default.nix | 22 ++----------------- 1 file changed, 2 insertions(+), 20 deletions(-) diff --git a/pkgs/development/libraries/libtiff/default.nix b/pkgs/development/libraries/libtiff/default.nix index 7ed9794011cd..739148cb9a69 100644 --- a/pkgs/development/libraries/libtiff/default.nix +++ b/pkgs/development/libraries/libtiff/default.nix @@ -1,12 +1,7 @@ -{ stdenv, fetchurl, fetchsvn, pkgconfig, zlib, libjpeg, xz }: +{ stdenv, fetchurl, pkgconfig, zlib, libjpeg, xz }: let - version = "4.0.3"; - patchDir = fetchsvn { - url = svn://svn.archlinux.org/packages/libtiff/trunk; - rev = "198247"; - sha256 = "0a47l0zkc1zz7wxg64cyjv9z1djdvfyxgmwd03znlsac4zijkcy4"; - }; + version = "4.0.4beta"; in stdenv.mkDerivation rec { name = "libtiff-${version}"; @@ -19,19 +14,6 @@ stdenv.mkDerivation rec { sha256 = "0wj8d1iwk9vnpax2h29xqc2hwknxg3s0ay2d5pxkg59ihbifn6pa"; }; - patchPhase = '' - for p in ${patchDir}/*-{2013-4244,2012-4447,2012-4564,2013-1960,2013-1961,libjpeg-turbo}.patch; do - patch -p1 < "$p" - done - ( - cd tools - for p in ${patchDir}/*-CVE-{2013-4231,2013-4232}.patch; do - patch -p0 < "$p" - done - ) - patch -p0 < ${patchDir}/${if stdenv.isDarwin then "tiff-4.0.3" else "*"}-tiff2pdf-colors.patch - ''; # ^ sh on darwin seems not to expand globs in redirects, and I don't want to rebuild all again elsewhere - nativeBuildInputs = [ pkgconfig ]; propagatedBuildInputs = [ zlib libjpeg xz ]; #TODO: opengl support (bogus configure detection) From 94389cb8c6a0cf79bb68dd6c6f60318efa1c9ffb Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Wed, 13 May 2015 15:32:32 +0200 Subject: [PATCH 011/259] xdg-utils, libclc: Use fetchzip --- pkgs/development/libraries/libclc/default.nix | 13 +++++++------ pkgs/tools/X11/xdg-utils/default.nix | 12 +++++++----- 2 files changed, 14 insertions(+), 11 deletions(-) diff --git a/pkgs/development/libraries/libclc/default.nix b/pkgs/development/libraries/libclc/default.nix index c41e2e0a70b5..16d9d8c75a46 100644 --- a/pkgs/development/libraries/libclc/default.nix +++ b/pkgs/development/libraries/libclc/default.nix @@ -1,12 +1,13 @@ -{ stdenv, fetchsvn, python, llvm, clang }: +{ stdenv, fetchFromGitHub, python, llvm, clang }: stdenv.mkDerivation { name = "libclc-2015-03-27"; - src = fetchsvn { - url = "http://llvm.org/svn/llvm-project/libclc/trunk"; - rev = "233456"; - sha256 = "0g56kgffc1qr9rzhcjr4w8kljcicg0q828s9b4bmfzjvywd7hhr0"; + src = fetchFromGitHub { + owner = "llvm-mirror"; + repo = "libclc"; + rev = "0a2d1619921545b52303be5608b64dc46f381e97"; + sha256 = "0hgm013c0vlfqfbbf4cdajl01hhk1mhsfk4h4bfza1san97l0vcc"; }; buildInputs = [ python llvm clang ]; @@ -22,7 +23,7 @@ stdenv.mkDerivation { meta = with stdenv.lib; { homepage = http://libclc.llvm.org/; - description = "implementation of the library requirements of the OpenCL C programming language"; + description = "Implementation of the library requirements of the OpenCL C programming language"; license = licenses.mit; platforms = platforms.all; maintainers = with maintainers; [ wkennington ]; diff --git a/pkgs/tools/X11/xdg-utils/default.nix b/pkgs/tools/X11/xdg-utils/default.nix index 53b3531b685c..4d7ead019ce6 100644 --- a/pkgs/tools/X11/xdg-utils/default.nix +++ b/pkgs/tools/X11/xdg-utils/default.nix @@ -1,12 +1,14 @@ -{ stdenv, fetchgit, file, libxslt, docbook_xml_dtd_412, docbook_xsl, xmlto, w3m }: +{ stdenv, fetchzip, file, libxslt, docbook_xml_dtd_412, docbook_xsl, xmlto, w3m }: + +let rev = "e8ee3b18d16e41b95148111b920a0c8beed3ac6c"; in stdenv.mkDerivation rec { name = "xdg-utils-1.1.0-rc3p7"; - src = fetchgit { - url = "http://anongit.freedesktop.org/git/xdg/xdg-utils.git"; - rev = "e8ee3b18d16e41b95148111b920a0c8beed3ac6c"; - sha256 = "0qy9h7vh6sw7wmadjvasw4sdhb9fvv7bn32ifgasdx7ag3r3939w"; + src = fetchzip { + name = "xdg-utils-${rev}.tar.gz"; + url = "http://cgit.freedesktop.org/xdg/xdg-utils/snapshot/${rev}.tar.gz"; + sha256 = "1hz6rv45blcii1a8n1j45rg8vzm98vh4fvlca3zmay1kp57yr4jl"; }; # just needed when built from git From 1fc19adf2c9d360aac3af63f901c3315ddf20dfd Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Wed, 13 May 2015 18:14:27 +0200 Subject: [PATCH 012/259] mesa: Remove gallium references These files no longer exist. The resulting failures were hidden by @vcunat --- pkgs/development/libraries/mesa/default.nix | 15 --------------- 1 file changed, 15 deletions(-) diff --git a/pkgs/development/libraries/mesa/default.nix b/pkgs/development/libraries/mesa/default.nix index 2e94626411e3..d5838308b399 100644 --- a/pkgs/development/libraries/mesa/default.nix +++ b/pkgs/development/libraries/mesa/default.nix @@ -132,9 +132,6 @@ stdenv.mkDerivation { `#$out/lib/libXvMC*` \ $out/lib/gbm $out/lib/libgbm* \ '' + '' - $out/lib/gallium-pipe \ - $out/lib/libdricore* \ - $out/lib/libgallium* \ $out/lib/vdpau \ $out/lib/libxatracker* @@ -149,18 +146,6 @@ stdenv.mkDerivation { $out/lib/pkgconfig/osmesa.pc '' + /* now fix references in .la files */ '' - sed "/^libdir=/s,$out,$drivers," -i \ - '' + optionalString enableExtraFeatures '' - `#$drivers/lib/libXvMC*.la` \ - '' + '' - $drivers/lib/gallium-pipe/*.la \ - $drivers/lib/libgallium.la \ - $drivers/lib/vdpau/*.la \ - $drivers/lib/libdricore*.la - - sed "s,$out\(/lib/\(libdricore[0-9\.]*\|libgallium\).la\),$drivers\1,g" \ - -i $drivers/lib/*.la $drivers/lib/*/*.la - sed "/^libdir=/s,$out,$osmesa," -i \ $osmesa/lib/libOSMesa*.la From 279aca0f4b18aa8157762a26e78c53b3eb074acc Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Wed, 13 May 2015 18:15:25 +0200 Subject: [PATCH 013/259] llvm: Don't depend on valgrind/gdb See a4619673b50bb424371b3fbfa52b202db767313d. --- pkgs/development/compilers/llvm/3.6/llvm.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/development/compilers/llvm/3.6/llvm.nix b/pkgs/development/compilers/llvm/3.6/llvm.nix index 736ffca295f2..05772ebb3180 100644 --- a/pkgs/development/compilers/llvm/3.6/llvm.nix +++ b/pkgs/development/compilers/llvm/3.6/llvm.nix @@ -27,7 +27,7 @@ in stdenv.mkDerivation rec { mv compiler-rt-* $sourceRoot/projects/compiler-rt ''; - buildInputs = [ perl groff cmake libxml2 python libffi ] ++ stdenv.lib.optional stdenv.isLinux valgrind; + buildInputs = [ perl groff cmake libxml2 python libffi ] /* ++ stdenv.lib.optional stdenv.isLinux valgrind */; propagatedBuildInputs = [ ncurses zlib ]; From eb5c1616401ff78509ee707a060efe738f5378b1 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Wed, 13 May 2015 18:16:07 +0200 Subject: [PATCH 014/259] wayland: Fewer build-time dependencies --- pkgs/development/libraries/wayland/default.nix | 14 ++++---------- 1 file changed, 4 insertions(+), 10 deletions(-) diff --git a/pkgs/development/libraries/wayland/default.nix b/pkgs/development/libraries/wayland/default.nix index cdd663bf191f..e5a01c5d843d 100644 --- a/pkgs/development/libraries/wayland/default.nix +++ b/pkgs/development/libraries/wayland/default.nix @@ -1,16 +1,12 @@ { stdenv, fetchurl, pkgconfig -, libffi, docbook_xsl, doxygen, graphviz, libxslt, xmlto -, expat ? null # Build wayland-scanner (currently cannot be disabled as of 1.7.0) +, libffi, docbook_xsl, doxygen, graphviz, libxslt, xmlto, expat }: # Require the optional to be enabled until upstream fixes or removes the configure flag assert expat != null; -let - mkFlag = optSet: flag: if optSet then "--enable-${flag}" else "--disable-${flag}"; -in - with stdenv.lib; + stdenv.mkDerivation rec { name = "wayland-${version}"; version = "1.7.0"; @@ -20,13 +16,11 @@ stdenv.mkDerivation rec { sha256 = "173w0pqzk2m7hjlg15bymrx7ynxgq1ciadg03hzybxwnvfi4gsmx"; }; - configureFlags = [ - (mkFlag (expat != null) "scanner") - ]; + configureFlags = "--with-scanner --disable-documentation"; nativeBuildInputs = [ pkgconfig ]; - buildInputs = [ libffi docbook_xsl doxygen graphviz libxslt xmlto expat ]; + buildInputs = [ libffi /* docbook_xsl doxygen graphviz libxslt xmlto */ expat ]; meta = { description = "Reference implementation of the wayland protocol"; From 26f17ee091248b4ead62f78a969f94e1230f4588 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Wed, 13 May 2015 18:16:22 +0200 Subject: [PATCH 015/259] cmake: Get rid of circular dependency Also, don't install static libraries in jsoncpp. --- pkgs/development/libraries/jsoncpp/default.nix | 10 +++------- .../development/tools/build-managers/cmake/default.nix | 5 ++--- 2 files changed, 5 insertions(+), 10 deletions(-) diff --git a/pkgs/development/libraries/jsoncpp/default.nix b/pkgs/development/libraries/jsoncpp/default.nix index 07563364e340..357ba257c244 100644 --- a/pkgs/development/libraries/jsoncpp/default.nix +++ b/pkgs/development/libraries/jsoncpp/default.nix @@ -20,18 +20,14 @@ stdenv.mkDerivation rec { export sourceRoot=${src.name} ''; - nativeBuildInputs = [ - # cmake can be built with the system jsoncpp, or its own bundled version. - # Obviously we cannot build it against the system jsoncpp that doesn't yet exist, so - # we make a bootstrapping build with the bundled version. - (cmake.override { jsoncpp = null; }) - python - ]; + nativeBuildInputs = [ cmake python ]; cmakeFlags = [ "-DJSONCPP_WITH_CMAKE_PACKAGE=1" ]; + postInstall = "rm $out/lib/*.a"; + meta = { inherit version; homepage = https://github.com/open-source-parsers/jsoncpp; diff --git a/pkgs/development/tools/build-managers/cmake/default.nix b/pkgs/development/tools/build-managers/cmake/default.nix index 72ecb10b0990..77863c4532d0 100644 --- a/pkgs/development/tools/build-managers/cmake/default.nix +++ b/pkgs/development/tools/build-managers/cmake/default.nix @@ -1,5 +1,5 @@ { stdenv, fetchurl -, bzip2, curl, expat, jsoncpp, libarchive, xz, zlib +, bzip2, curl, expat, libarchive, xz, zlib , useNcurses ? false, ncurses, useQt4 ? false, qt4 , wantPS ? false, ps ? null }: @@ -40,7 +40,6 @@ stdenv.mkDerivation rec { buildInputs = [ bzip2 curl expat libarchive xz zlib ] - ++ optional (jsoncpp != null) jsoncpp ++ optional useNcurses ncurses ++ optional useQt4 qt4; @@ -53,8 +52,8 @@ stdenv.mkDerivation rec { "--docdir=/share/doc/${name}" "--mandir=/share/man" "--system-libs" + "--no-system-jsoncpp" ] - ++ optional (jsoncpp == null) "--no-system-jsoncpp" ++ optional useQt4 "--qt-gui"; setupHook = ./setup-hook.sh; From 81dfb2c948334372f138d19625409af62fea182a Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Fri, 15 May 2015 10:58:07 +0200 Subject: [PATCH 016/259] Fix usbutils More #7524. http://hydra.nixos.org/build/22211118 --- pkgs/os-specific/linux/usbutils/default.nix | 1 - 1 file changed, 1 deletion(-) diff --git a/pkgs/os-specific/linux/usbutils/default.nix b/pkgs/os-specific/linux/usbutils/default.nix index 710a01ed03d2..158ff2299b18 100644 --- a/pkgs/os-specific/linux/usbutils/default.nix +++ b/pkgs/os-specific/linux/usbutils/default.nix @@ -12,7 +12,6 @@ stdenv.mkDerivation rec { postInstall = '' - rm $out/sbin/update-usbids.sh substituteInPlace $out/bin/lsusb.py \ --replace /usr/share/usb.ids ${hwdata}/data/hwdata/usb.ids ''; From 592d4af9cf0e81907919cf954c1d0ad3089ae772 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Fri, 15 May 2015 11:08:22 +0200 Subject: [PATCH 017/259] wpa_supplicant: Fix build There is no wpa_priv. Another case of #7524. http://hydra.nixos.org/build/22211118 --- pkgs/os-specific/linux/wpa_supplicant/default.nix | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/pkgs/os-specific/linux/wpa_supplicant/default.nix b/pkgs/os-specific/linux/wpa_supplicant/default.nix index c709880af2dc..baa0d1c6b549 100644 --- a/pkgs/os-specific/linux/wpa_supplicant/default.nix +++ b/pkgs/os-specific/linux/wpa_supplicant/default.nix @@ -87,10 +87,6 @@ stdenv.mkDerivation rec { ]; postInstall = '' - # Copy the wpa_priv binary which is not installed - mkdir -p $out/bin - cp -v wpa_priv $out/bin - mkdir -p $out/share/man/man5 $out/share/man/man8 cp -v "doc/docbook/"*.5 $out/share/man/man5/ cp -v "doc/docbook/"*.8 $out/share/man/man8/ @@ -99,6 +95,7 @@ stdenv.mkDerivation rec { sed -e "s@/sbin/wpa_supplicant@$out&@" -i "$out/share/dbus-1/system-services/"* cp -v dbus/dbus-wpa_supplicant.conf $out/etc/dbus-1/system.d cp -v "systemd/"*.service $out/etc/systemd/system + rm $out/share/man/man8/wpa_priv.8 ''; meta = with stdenv.lib; { From 3115d18c533d685460288cedceb797b563c3347d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Sun, 24 May 2015 23:10:52 +0200 Subject: [PATCH 018/259] xorg: update drivers that seem useless --- pkgs/servers/x11/xorg/default.nix | 48 ++++++++++++------------- pkgs/servers/x11/xorg/tarballs-7.7.list | 16 ++++----- 2 files changed, 32 insertions(+), 32 deletions(-) diff --git a/pkgs/servers/x11/xorg/default.nix b/pkgs/servers/x11/xorg/default.nix index b7e5eef6d56b..4d13e0a1709c 100644 --- a/pkgs/servers/x11/xorg/default.nix +++ b/pkgs/servers/x11/xorg/default.nix @@ -1405,11 +1405,11 @@ let }) // {inherit inputproto kbproto xorgserver xproto ;}; xf86inputkeyboard = (mkDerivation "xf86inputkeyboard" { - name = "xf86-input-keyboard-1.8.0"; + name = "xf86-input-keyboard-1.8.1"; builder = ./builder.sh; src = fetchurl { - url = mirror://xorg/individual/driver/xf86-input-keyboard-1.8.0.tar.bz2; - sha256 = "0nyb61w30z32djrllgr2s1i13di3vsl6hg4pqjhxdal71971ria1"; + url = mirror://xorg/individual/driver/xf86-input-keyboard-1.8.1.tar.bz2; + sha256 = "04d27kwqq03fc26an6051hs3i0bff8albhnngzyd59wxpwwzzj0s"; }; buildInputs = [pkgconfig inputproto xorgserver xproto ]; }) // {inherit inputproto xorgserver xproto ;}; @@ -1455,11 +1455,11 @@ let }) // {inherit inputproto randrproto xorgserver xproto ;}; xf86inputvoid = (mkDerivation "xf86inputvoid" { - name = "xf86-input-void-1.4.0"; + name = "xf86-input-void-1.4.1"; builder = ./builder.sh; src = fetchurl { - url = mirror://xorg/individual/driver/xf86-input-void-1.4.0.tar.bz2; - sha256 = "01bmk324fq48wydvy1qrnxbw6qz0fjd0i80g0n4cqr1c4mjmif9a"; + url = mirror://xorg/individual/driver/xf86-input-void-1.4.1.tar.bz2; + sha256 = "171k8b8s42s3w73l7ln9jqwk88w4l7r1km2blx1vy898c854yvpr"; }; buildInputs = [pkgconfig xorgserver xproto ]; }) // {inherit xorgserver xproto ;}; @@ -1535,11 +1535,11 @@ let }) // {inherit fontsproto libpciaccess randrproto renderproto videoproto xorgserver xproto ;}; xf86videogeode = (mkDerivation "xf86videogeode" { - name = "xf86-video-geode-2.11.16"; + name = "xf86-video-geode-2.11.17"; builder = ./builder.sh; src = fetchurl { - url = mirror://xorg/individual/driver/xf86-video-geode-2.11.16.tar.bz2; - sha256 = "19y13xl7yfrgyis92rmxi0ld95ajgr5il0n9j1dridwzw9aizz1q"; + url = mirror://xorg/individual/driver/xf86-video-geode-2.11.17.tar.bz2; + sha256 = "0h9w6cfj7s86rg72c6qci8f733hg4g7paan5fwmmj7p74ckd9d07"; }; buildInputs = [pkgconfig fontsproto libpciaccess randrproto renderproto videoproto xextproto xorgserver xproto ]; }) // {inherit fontsproto libpciaccess randrproto renderproto videoproto xextproto xorgserver xproto ;}; @@ -1595,11 +1595,11 @@ let }) // {inherit dri2proto dri3proto fontsproto libdrm libpng udev libpciaccess presentproto randrproto renderproto libX11 xcbutil libxcb libXcursor libXdamage libXext xextproto xf86driproto libXfixes xorgserver xproto libXrandr libXrender libxshmfence libXtst libXvMC ;}; xf86videomach64 = (mkDerivation "xf86videomach64" { - name = "xf86-video-mach64-6.9.4"; + name = "xf86-video-mach64-6.9.5"; builder = ./builder.sh; src = fetchurl { - url = mirror://xorg/individual/driver/xf86-video-mach64-6.9.4.tar.bz2; - sha256 = "0pl582vnc6hdxqhf5c0qdyanjqxb4crnhqlmxxml5a60syw0iwcp"; + url = mirror://xorg/individual/driver/xf86-video-mach64-6.9.5.tar.bz2; + sha256 = "07xlf5nsjm0x18ij5gyy4lf8hwpl10i8chi3skpqjh84drdri61y"; }; buildInputs = [pkgconfig fontsproto libdrm libpciaccess randrproto renderproto videoproto xextproto xf86driproto xorgserver xproto ]; }) // {inherit fontsproto libdrm libpciaccess randrproto renderproto videoproto xextproto xf86driproto xorgserver xproto ;}; @@ -1625,11 +1625,11 @@ let }) // {inherit fontsproto libdrm udev libpciaccess randrproto libX11 xextproto xorgserver xproto ;}; xf86videoneomagic = (mkDerivation "xf86videoneomagic" { - name = "xf86-video-neomagic-1.2.8"; + name = "xf86-video-neomagic-1.2.9"; builder = ./builder.sh; src = fetchurl { - url = mirror://xorg/individual/driver/xf86-video-neomagic-1.2.8.tar.bz2; - sha256 = "0x48sxs1p3kmwk3pq1j7vl93y59gdmgkq1x5xbnh0yal0angdash"; + url = mirror://xorg/individual/driver/xf86-video-neomagic-1.2.9.tar.bz2; + sha256 = "1whb2kgyqaxdjim27ya404acz50izgmafwnb6y9m89q5n6b97y3j"; }; buildInputs = [pkgconfig fontsproto libpciaccess xorgserver xproto ]; }) // {inherit fontsproto libpciaccess xorgserver xproto ;}; @@ -1685,31 +1685,31 @@ let }) // {inherit fontsproto libdrm udev libpciaccess randrproto renderproto videoproto xf86dgaproto xorgserver xproto ;}; xf86videor128 = (mkDerivation "xf86videor128" { - name = "xf86-video-r128-6.9.2"; + name = "xf86-video-r128-6.10.0"; builder = ./builder.sh; src = fetchurl { - url = mirror://xorg/individual/driver/xf86-video-r128-6.9.2.tar.bz2; - sha256 = "1q3fsc603k2yinphx5rrcl5356qkpywwz8axlw277l2231gjjbcb"; + url = mirror://xorg/individual/driver/xf86-video-r128-6.10.0.tar.bz2; + sha256 = "0g9m1n5184h05mq14vb6k288zm6g81a9m048id00l8v8f6h33mc0"; }; buildInputs = [pkgconfig fontsproto libdrm libpciaccess randrproto renderproto videoproto xextproto xf86driproto xf86miscproto xorgserver xproto ]; }) // {inherit fontsproto libdrm libpciaccess randrproto renderproto videoproto xextproto xf86driproto xf86miscproto xorgserver xproto ;}; xf86videosavage = (mkDerivation "xf86videosavage" { - name = "xf86-video-savage-2.3.7"; + name = "xf86-video-savage-2.3.8"; builder = ./builder.sh; src = fetchurl { - url = mirror://xorg/individual/driver/xf86-video-savage-2.3.7.tar.bz2; - sha256 = "0i2aqp68rfkrz9c1p6d7ny9x7bjrlnby7q56zf01fb12r42l4784"; + url = mirror://xorg/individual/driver/xf86-video-savage-2.3.8.tar.bz2; + sha256 = "0qzshncynjdmyhavhqw4x5ha3gwbygi0zbsy158fpg1jcnla9kpx"; }; buildInputs = [pkgconfig fontsproto libdrm libpciaccess randrproto renderproto videoproto xextproto xf86driproto xorgserver xproto ]; }) // {inherit fontsproto libdrm libpciaccess randrproto renderproto videoproto xextproto xf86driproto xorgserver xproto ;}; xf86videosiliconmotion = (mkDerivation "xf86videosiliconmotion" { - name = "xf86-video-siliconmotion-1.7.7"; + name = "xf86-video-siliconmotion-1.7.8"; builder = ./builder.sh; src = fetchurl { - url = mirror://xorg/individual/driver/xf86-video-siliconmotion-1.7.7.tar.bz2; - sha256 = "1an321kqvsxq0z35acwl99lc8hpdkayw0q180744ypcl8ffvbf47"; + url = mirror://xorg/individual/driver/xf86-video-siliconmotion-1.7.8.tar.bz2; + sha256 = "1sqv0y31mi4zmh9yaxqpzg7p8y2z01j6qys433hb8n4yznllkm79"; }; buildInputs = [pkgconfig fontsproto libpciaccess videoproto xextproto xorgserver xproto ]; }) // {inherit fontsproto libpciaccess videoproto xextproto xorgserver xproto ;}; diff --git a/pkgs/servers/x11/xorg/tarballs-7.7.list b/pkgs/servers/x11/xorg/tarballs-7.7.list index f02dd1e89f03..72e960d5c72f 100644 --- a/pkgs/servers/x11/xorg/tarballs-7.7.list +++ b/pkgs/servers/x11/xorg/tarballs-7.7.list @@ -117,12 +117,12 @@ 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.2.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-keyboard-1.8.1.tar.bz2 mirror://xorg/individual/driver/xf86-input-libinput-0.8.0.tar.bz2 mirror://xorg/individual/driver/xf86-input-mouse-1.9.1.tar.bz2 mirror://xorg/individual/driver/xf86-input-synaptics-1.8.2.tar.bz2 mirror://xorg/individual/driver/xf86-input-vmmouse-13.0.0.tar.bz2 -mirror://xorg/individual/driver/xf86-input-void-1.4.0.tar.bz2 +mirror://xorg/individual/driver/xf86-input-void-1.4.1.tar.bz2 mirror://xorg/individual/driver/xf86-video-ark-0.7.5.tar.bz2 mirror://xorg/individual/driver/xf86-video-ast-0.98.0.tar.bz2 mirror://xorg/individual/driver/xf86-video-ati-7.5.0.tar.bz2 @@ -131,23 +131,23 @@ mirror://xorg/individual/driver/xf86-video-nouveau-1.0.11.tar.bz2 mirror://xorg/individual/driver/xf86-video-cirrus-1.5.2.tar.bz2 mirror://xorg/individual/driver/xf86-video-dummy-0.3.7.tar.bz2 mirror://xorg/individual/driver/xf86-video-fbdev-0.4.4.tar.bz2 -mirror://xorg/individual/driver/xf86-video-geode-2.11.16.tar.bz2 +mirror://xorg/individual/driver/xf86-video-geode-2.11.17.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-i740-1.3.5.tar.bz2 mirror://xorg/individual/driver/xf86-video-intel-2.99.917.tar.bz2 -mirror://xorg/individual/driver/xf86-video-mach64-6.9.4.tar.bz2 +mirror://xorg/individual/driver/xf86-video-mach64-6.9.5.tar.bz2 mirror://xorg/individual/driver/xf86-video-mga-1.6.4.tar.bz2 mirror://xorg/individual/driver/xf86-video-modesetting-0.9.0.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/individual/driver/xf86-video-neomagic-1.2.9.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 mirror://xorg/individual/driver/xf86-video-openchrome-0.3.3.tar.bz2 -mirror://xorg/individual/driver/xf86-video-r128-6.9.2.tar.bz2 -mirror://xorg/individual/driver/xf86-video-savage-2.3.7.tar.bz2 -mirror://xorg/individual/driver/xf86-video-siliconmotion-1.7.7.tar.bz2 +mirror://xorg/individual/driver/xf86-video-r128-6.10.0.tar.bz2 +mirror://xorg/individual/driver/xf86-video-savage-2.3.8.tar.bz2 +mirror://xorg/individual/driver/xf86-video-siliconmotion-1.7.8.tar.bz2 mirror://xorg/individual/driver/xf86-video-sis-0.10.7.tar.bz2 mirror://xorg/individual/driver/xf86-video-suncg6-1.1.2.tar.bz2 mirror://xorg/individual/driver/xf86-video-sunffb-1.2.2.tar.bz2 From 3c5b83262bc397db53cde5a153c78eda4fe268fd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Sun, 24 May 2015 23:26:07 +0200 Subject: [PATCH 019/259] xorg: update cirrus and libinput drivers --- pkgs/servers/x11/xorg/default.nix | 12 ++++++------ pkgs/servers/x11/xorg/tarballs-7.7.list | 4 ++-- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/pkgs/servers/x11/xorg/default.nix b/pkgs/servers/x11/xorg/default.nix index 4d13e0a1709c..7b4a49d40778 100644 --- a/pkgs/servers/x11/xorg/default.nix +++ b/pkgs/servers/x11/xorg/default.nix @@ -1415,11 +1415,11 @@ let }) // {inherit inputproto xorgserver xproto ;}; xf86inputlibinput = (mkDerivation "xf86inputlibinput" { - name = "xf86-input-libinput-0.8.0"; + name = "xf86-input-libinput-0.10.0"; builder = ./builder.sh; src = fetchurl { - url = mirror://xorg/individual/driver/xf86-input-libinput-0.8.0.tar.bz2; - sha256 = "0fm4vrkw7azipbnwvc2l18g65z77pllsznaajd8q3zpg9ycb0li1"; + url = mirror://xorg/individual/driver/xf86-input-libinput-0.10.0.tar.bz2; + sha256 = "1w1v83qlr7n4iqgd7grmhx0gbz1fhsnpk88j4a136dk4xmc069x4"; }; buildInputs = [pkgconfig inputproto xorgserver xproto ]; }) // {inherit inputproto xorgserver xproto ;}; @@ -1505,11 +1505,11 @@ let }) // {inherit fontsproto glamoregl libdrm udev libpciaccess randrproto renderproto videoproto xextproto xf86driproto xorgserver xproto ;}; xf86videocirrus = (mkDerivation "xf86videocirrus" { - name = "xf86-video-cirrus-1.5.2"; + name = "xf86-video-cirrus-1.5.3"; builder = ./builder.sh; src = fetchurl { - url = mirror://xorg/individual/driver/xf86-video-cirrus-1.5.2.tar.bz2; - sha256 = "1mycqgjp18b6adqj2h90vp324xh8ysyi5migfmjc914vbnkf2q9k"; + url = mirror://xorg/individual/driver/xf86-video-cirrus-1.5.3.tar.bz2; + sha256 = "1asifc6ld2g9kap15vfhvsvyl69lj7pw3d9ra9mi4najllh7pj7d"; }; buildInputs = [pkgconfig fontsproto libpciaccess randrproto renderproto videoproto xextproto xorgserver xproto ]; }) // {inherit fontsproto libpciaccess randrproto renderproto videoproto xextproto xorgserver xproto ;}; diff --git a/pkgs/servers/x11/xorg/tarballs-7.7.list b/pkgs/servers/x11/xorg/tarballs-7.7.list index 72e960d5c72f..9913371542b9 100644 --- a/pkgs/servers/x11/xorg/tarballs-7.7.list +++ b/pkgs/servers/x11/xorg/tarballs-7.7.list @@ -118,7 +118,7 @@ mirror://xorg/X11R7.7/src/everything/xf86driproto-2.1.1.tar.bz2 mirror://xorg/individual/driver/xf86-input-evdev-2.9.2.tar.bz2 mirror://xorg/individual/driver/xf86-input-joystick-1.6.2.tar.bz2 mirror://xorg/individual/driver/xf86-input-keyboard-1.8.1.tar.bz2 -mirror://xorg/individual/driver/xf86-input-libinput-0.8.0.tar.bz2 +mirror://xorg/individual/driver/xf86-input-libinput-0.10.0.tar.bz2 mirror://xorg/individual/driver/xf86-input-mouse-1.9.1.tar.bz2 mirror://xorg/individual/driver/xf86-input-synaptics-1.8.2.tar.bz2 mirror://xorg/individual/driver/xf86-input-vmmouse-13.0.0.tar.bz2 @@ -128,7 +128,7 @@ mirror://xorg/individual/driver/xf86-video-ast-0.98.0.tar.bz2 mirror://xorg/individual/driver/xf86-video-ati-7.5.0.tar.bz2 mirror://xorg/individual/driver/glamor-egl-0.6.0.tar.bz2 mirror://xorg/individual/driver/xf86-video-nouveau-1.0.11.tar.bz2 -mirror://xorg/individual/driver/xf86-video-cirrus-1.5.2.tar.bz2 +mirror://xorg/individual/driver/xf86-video-cirrus-1.5.3.tar.bz2 mirror://xorg/individual/driver/xf86-video-dummy-0.3.7.tar.bz2 mirror://xorg/individual/driver/xf86-video-fbdev-0.4.4.tar.bz2 mirror://xorg/individual/driver/xf86-video-geode-2.11.17.tar.bz2 From 34c9d898dad1fcead5d9f1f0593ef3f13219dd70 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Sun, 24 May 2015 23:28:41 +0200 Subject: [PATCH 020/259] xorg: update randr --- pkgs/servers/x11/xorg/default.nix | 12 ++++++------ pkgs/servers/x11/xorg/tarballs-7.7.list | 4 ++-- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/pkgs/servers/x11/xorg/default.nix b/pkgs/servers/x11/xorg/default.nix index 7b4a49d40778..d5c1abe3f362 100644 --- a/pkgs/servers/x11/xorg/default.nix +++ b/pkgs/servers/x11/xorg/default.nix @@ -775,11 +775,11 @@ let }) // {inherit libX11 libXext xextproto xproto libXt ;}; libXrandr = (mkDerivation "libXrandr" { - name = "libXrandr-1.4.2"; + name = "libXrandr-1.5.0"; builder = ./builder.sh; src = fetchurl { - url = mirror://xorg/individual/lib/libXrandr-1.4.2.tar.bz2; - sha256 = "1b95p3l84ppv6j7dbbmg0zrz6k8xdwvnag1l6ajm3gk9qwdb79ya"; + url = mirror://xorg/individual/lib/libXrandr-1.5.0.tar.bz2; + sha256 = "0n6ycs1arf4wb1cal9il6v7vbxbf21qhs9sbfl8xndgwnxclk1kg"; }; buildInputs = [pkgconfig randrproto renderproto libX11 libXext xextproto xproto libXrender ]; }) // {inherit randrproto renderproto libX11 libXext xextproto xproto libXrender ;}; @@ -1015,11 +1015,11 @@ let }) // {inherit libXau ;}; randrproto = (mkDerivation "randrproto" { - name = "randrproto-1.4.1"; + name = "randrproto-1.5.0"; builder = ./builder.sh; src = fetchurl { - url = mirror://xorg/individual/proto/randrproto-1.4.1.tar.bz2; - sha256 = "1p7155hsp48b0sjm4rc67wz6y1nxqrq69vyw0sjxh8h6pcpcngal"; + url = mirror://xorg/individual/proto/randrproto-1.5.0.tar.bz2; + sha256 = "0s4496z61y5q45q20gldwpf788b9nsa8hb13gnck1mwwwwrmarsc"; }; buildInputs = [pkgconfig ]; }) // {inherit ;}; diff --git a/pkgs/servers/x11/xorg/tarballs-7.7.list b/pkgs/servers/x11/xorg/tarballs-7.7.list index 9913371542b9..5382dc0b765c 100644 --- a/pkgs/servers/x11/xorg/tarballs-7.7.list +++ b/pkgs/servers/x11/xorg/tarballs-7.7.list @@ -75,7 +75,7 @@ mirror://xorg/individual/lib/libXinerama-1.1.3.tar.bz2 mirror://xorg/X11R7.7/src/everything/libxkbfile-1.0.8.tar.bz2 mirror://xorg/individual/lib/libXmu-1.1.2.tar.bz2 mirror://xorg/individual/lib/libXpm-3.5.11.tar.bz2 -mirror://xorg/individual/lib/libXrandr-1.4.2.tar.bz2 +mirror://xorg/individual/lib/libXrandr-1.5.0.tar.bz2 mirror://xorg/individual/lib/libXrender-0.9.8.tar.bz2 mirror://xorg/individual/lib/libXres-1.0.7.tar.bz2 mirror://xorg/X11R7.7/src/everything/libXScrnSaver-1.2.2.tar.bz2 @@ -89,7 +89,7 @@ mirror://xorg/X11R7.7/src/everything/luit-1.1.1.tar.bz2 mirror://xorg/individual/util/makedepend-1.0.5.tar.bz2 mirror://xorg/X11R7.7/src/everything/mkfontdir-1.0.7.tar.bz2 mirror://xorg/individual/app/mkfontscale-1.1.2.tar.bz2 -mirror://xorg/individual/proto/randrproto-1.4.1.tar.bz2 +mirror://xorg/individual/proto/randrproto-1.5.0.tar.bz2 mirror://xorg/X11R7.7/src/everything/recordproto-1.14.2.tar.bz2 mirror://xorg/X11R7.7/src/everything/renderproto-0.11.1.tar.bz2 mirror://xorg/X11R7.7/src/everything/resourceproto-1.2.0.tar.bz2 From 3287103b006e03dbe10c0d8c1b94e0f1429992a1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Sun, 24 May 2015 23:46:56 +0200 Subject: [PATCH 021/259] xorg: add libXpresent and xcb-util-errors --- pkgs/servers/x11/xorg/default.nix | 20 ++++++++++++++++++++ pkgs/servers/x11/xorg/extra.list | 1 + pkgs/servers/x11/xorg/overrides.nix | 3 +++ pkgs/servers/x11/xorg/tarballs-7.7.list | 1 + 4 files changed, 25 insertions(+) diff --git a/pkgs/servers/x11/xorg/default.nix b/pkgs/servers/x11/xorg/default.nix index d5c1abe3f362..33eedd9b84f6 100644 --- a/pkgs/servers/x11/xorg/default.nix +++ b/pkgs/servers/x11/xorg/default.nix @@ -774,6 +774,16 @@ let buildInputs = [pkgconfig libX11 libXext xextproto xproto libXt ]; }) // {inherit libX11 libXext xextproto xproto libXt ;}; + libXpresent = (mkDerivation "libXpresent" { + name = "libXpresent-1.0.0"; + builder = ./builder.sh; + src = fetchurl { + url = mirror://xorg/individual/lib/libXpresent-1.0.0.tar.bz2; + sha256 = "12kvvar3ihf6sw49h6ywfdiwmb8i1gh8wasg1zhzp6hs2hay06n1"; + }; + buildInputs = [pkgconfig presentproto libX11 xextproto xproto ]; + }) // {inherit presentproto libX11 xextproto xproto ;}; + libXrandr = (mkDerivation "libXrandr" { name = "libXrandr-1.5.0"; builder = ./builder.sh; @@ -1204,6 +1214,16 @@ let buildInputs = [pkgconfig gperf m4 libxcb xcbutilimage xcbutilrenderutil xproto ]; }) // {inherit gperf m4 libxcb xcbutilimage xcbutilrenderutil xproto ;}; + xcbutilerrors = (mkDerivation "xcbutilerrors" { + name = "xcb-util-errors-1.0"; + builder = ./builder.sh; + src = fetchurl { + url = http://xcb.freedesktop.org/dist/xcb-util-errors-1.0.tar.bz2; + sha256 = "158rm913dg3hxrrhyvvxr8bcm0pjy5jws70dhy2s12w1krv829k8"; + }; + buildInputs = [pkgconfig gperf m4 libxcb xcbproto xproto ]; + }) // {inherit gperf m4 libxcb xcbproto xproto ;}; + xcbutilimage = (mkDerivation "xcbutilimage" { name = "xcb-util-image-0.4.0"; builder = ./builder.sh; diff --git a/pkgs/servers/x11/xorg/extra.list b/pkgs/servers/x11/xorg/extra.list index f0bf8bf73782..8a445a69c69c 100644 --- a/pkgs/servers/x11/xorg/extra.list +++ b/pkgs/servers/x11/xorg/extra.list @@ -7,3 +7,4 @@ http://xcb.freedesktop.org/dist/xcb-util-image-0.4.0.tar.bz2 http://xcb.freedesktop.org/dist/xcb-util-keysyms-0.4.0.tar.bz2 http://xcb.freedesktop.org/dist/xcb-util-renderutil-0.3.9.tar.bz2 http://xcb.freedesktop.org/dist/xcb-util-wm-0.4.1.tar.bz2 +http://xcb.freedesktop.org/dist/xcb-util-errors-1.0.tar.bz2 diff --git a/pkgs/servers/x11/xorg/overrides.nix b/pkgs/servers/x11/xorg/overrides.nix index e7a5bdb1018a..1ef0d88ce3a2 100644 --- a/pkgs/servers/x11/xorg/overrides.nix +++ b/pkgs/servers/x11/xorg/overrides.nix @@ -173,6 +173,9 @@ in patchPhase = "sed -i '/USE_GETTEXT_TRUE/d' sxpm/Makefile.in cxpm/Makefile.in"; }; + libXpresent = attrs: attrs + // { buildInputs = with xorg; attrs.buildInputs ++ [ libXext libXfixes libXrandr ]; }; + setxkbmap = attrs: attrs // { postInstall = '' diff --git a/pkgs/servers/x11/xorg/tarballs-7.7.list b/pkgs/servers/x11/xorg/tarballs-7.7.list index 5382dc0b765c..e33269c590c5 100644 --- a/pkgs/servers/x11/xorg/tarballs-7.7.list +++ b/pkgs/servers/x11/xorg/tarballs-7.7.list @@ -75,6 +75,7 @@ mirror://xorg/individual/lib/libXinerama-1.1.3.tar.bz2 mirror://xorg/X11R7.7/src/everything/libxkbfile-1.0.8.tar.bz2 mirror://xorg/individual/lib/libXmu-1.1.2.tar.bz2 mirror://xorg/individual/lib/libXpm-3.5.11.tar.bz2 +mirror://xorg/individual/lib/libXpresent-1.0.0.tar.bz2 mirror://xorg/individual/lib/libXrandr-1.5.0.tar.bz2 mirror://xorg/individual/lib/libXrender-0.9.8.tar.bz2 mirror://xorg/individual/lib/libXres-1.0.7.tar.bz2 From d35bd55ab7919841fa2f0777e9225ac77908db16 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Mon, 25 May 2015 09:34:05 +0200 Subject: [PATCH 022/259] libdrm: small update --- pkgs/development/libraries/libdrm/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/libdrm/default.nix b/pkgs/development/libraries/libdrm/default.nix index 5ffdd9303e0c..b223bd962e7e 100644 --- a/pkgs/development/libraries/libdrm/default.nix +++ b/pkgs/development/libraries/libdrm/default.nix @@ -1,11 +1,11 @@ { stdenv, fetchurl, pkgconfig, libpthreadstubs, libpciaccess, udev }: stdenv.mkDerivation rec { - name = "libdrm-2.4.60"; + name = "libdrm-2.4.61"; src = fetchurl { url = "http://dri.freedesktop.org/libdrm/${name}.tar.bz2"; - sha256 = "12cqnmssi6mbr93n29mm84k8wix5nx6zs82k7wcmj7z3r335ymwr"; + sha256 = "8b549092c8961a393a7e1d9a1bccddcea8e2af67c0d7d7c67babb9fc3b47699c"; }; nativeBuildInputs = [ pkgconfig ]; From cbb365f722b493091dea522925529df5088608bc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Mon, 25 May 2015 09:34:32 +0200 Subject: [PATCH 023/259] mesa: maintenance update --- 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 1e84276ec00d..e5626c3d263f 100644 --- a/pkgs/development/libraries/mesa/default.nix +++ b/pkgs/development/libraries/mesa/default.nix @@ -23,7 +23,7 @@ else */ let - version = "10.5.4"; + version = "10.5.6"; # this is the default search path for DRI drivers driverLink = "/run/opengl-driver" + stdenv.lib.optionalString stdenv.isi686 "-32"; clang = if llvmPackages ? clang-unwrapped then llvmPackages.clang-unwrapped else llvmPackages.clang; @@ -38,7 +38,7 @@ stdenv.mkDerivation { "https://launchpad.net/mesa/trunk/${version}/+download/mesa-${version}.tar.xz" "ftp://ftp.freedesktop.org/pub/mesa/${version}/mesa-${version}.tar.xz" ]; - sha256 = "00v89jna7m6r2w1yrnx09isc97r2bd1hkn4jib445n1078zp47mm"; + sha256 = "66017853bde5f7a6647db3eede30512a091a3491daa1708e0ad8027c328ba595"; }; prePatch = "patchShebangs ."; From 6bddcbda8a72e55b93801523104e106717eb0856 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Mon, 25 May 2015 09:42:59 +0200 Subject: [PATCH 024/259] xorg: maintenance updates of libs --- pkgs/servers/x11/xorg/default.nix | 42 ++++++++++++------------- pkgs/servers/x11/xorg/tarballs-7.7.list | 14 ++++----- 2 files changed, 28 insertions(+), 28 deletions(-) diff --git a/pkgs/servers/x11/xorg/default.nix b/pkgs/servers/x11/xorg/default.nix index 33eedd9b84f6..5b2a05941ec2 100644 --- a/pkgs/servers/x11/xorg/default.nix +++ b/pkgs/servers/x11/xorg/default.nix @@ -565,11 +565,11 @@ let }) // {inherit applewmproto libX11 libXext xextproto ;}; libFS = (mkDerivation "libFS" { - name = "libFS-1.0.6"; + name = "libFS-1.0.7"; builder = ./builder.sh; src = fetchurl { - url = mirror://xorg/individual/lib/libFS-1.0.6.tar.bz2; - sha256 = "1mxfsvj9m3pn8cdkcn4kg190zp665mf4pv0083g6xykvsgxzq1wh"; + url = mirror://xorg/individual/lib/libFS-1.0.7.tar.bz2; + sha256 = "1wy4km3qwwajbyl8y9pka0zwizn7d9pfiyjgzba02x3a083lr79f"; }; buildInputs = [pkgconfig fontsproto xproto xtrans ]; }) // {inherit fontsproto xproto xtrans ;}; @@ -635,11 +635,11 @@ let }) // {inherit xproto ;}; libXaw = (mkDerivation "libXaw" { - name = "libXaw-1.0.12"; + name = "libXaw-1.0.13"; builder = ./builder.sh; src = fetchurl { - url = mirror://xorg/individual/lib/libXaw-1.0.12.tar.bz2; - sha256 = "1xnv7jy86j9vhmw74frkzcraynqbw1p1s79jasargsgwfi433z4n"; + url = mirror://xorg/individual/lib/libXaw-1.0.13.tar.bz2; + sha256 = "1kdhxplwrn43d9jp3v54llp05kwx210lrsdvqb6944jp29rhdy4f"; }; buildInputs = [pkgconfig libX11 libXext xextproto libXmu libXpm xproto libXt ]; }) // {inherit libX11 libXext xextproto libXmu libXpm xproto libXt ;}; @@ -795,11 +795,11 @@ let }) // {inherit randrproto renderproto libX11 libXext xextproto xproto libXrender ;}; libXrender = (mkDerivation "libXrender" { - name = "libXrender-0.9.8"; + name = "libXrender-0.9.9"; builder = ./builder.sh; src = fetchurl { - url = mirror://xorg/individual/lib/libXrender-0.9.8.tar.bz2; - sha256 = "0qpwyjhbpp734vnhca992pjh4w7ijslidkzx1pcwbbk000pv050x"; + url = mirror://xorg/individual/lib/libXrender-0.9.9.tar.bz2; + sha256 = "06myx7044qqdswxndsmd82fpp670klnizkgzdm194h51h1wyabzw"; }; buildInputs = [pkgconfig renderproto libX11 xproto ]; }) // {inherit renderproto libX11 xproto ;}; @@ -815,11 +815,11 @@ let }) // {inherit resourceproto libX11 libXext xextproto xproto ;}; libXt = (mkDerivation "libXt" { - name = "libXt-1.1.4"; + name = "libXt-1.1.5"; builder = ./builder.sh; src = fetchurl { - url = mirror://xorg/individual/lib/libXt-1.1.4.tar.bz2; - sha256 = "0myxwbx9ylam5x3ia5b5f4x8azcqdm420h9ad1r4hrgmi2lrffl4"; + url = mirror://xorg/individual/lib/libXt-1.1.5.tar.bz2; + sha256 = "06lz6i7rbrp19kgikpaz4c97fw7n31k2h2aiikczs482g2zbdvj6"; }; buildInputs = [pkgconfig libICE kbproto libSM libX11 xproto ]; }) // {inherit libICE kbproto libSM libX11 xproto ;}; @@ -895,21 +895,21 @@ let }) // {inherit dmxproto libX11 libXext xextproto ;}; libfontenc = (mkDerivation "libfontenc" { - name = "libfontenc-1.1.2"; + name = "libfontenc-1.1.3"; builder = ./builder.sh; src = fetchurl { - url = mirror://xorg/individual/lib/libfontenc-1.1.2.tar.bz2; - sha256 = "0qign0ivqk166l9yfd51gw9lbhgs718bcrmvc40yicjr6gnyz959"; + url = mirror://xorg/individual/lib/libfontenc-1.1.3.tar.bz2; + sha256 = "08gxmrhgw97mv0pvkfmd46zzxrn6zdw4g27073zl55gwwqq8jn3h"; }; buildInputs = [pkgconfig xproto zlib ]; }) // {inherit xproto zlib ;}; libpciaccess = (mkDerivation "libpciaccess" { - name = "libpciaccess-0.13.3"; + name = "libpciaccess-0.13.4"; builder = ./builder.sh; src = fetchurl { - url = mirror://xorg/individual/lib/libpciaccess-0.13.3.tar.bz2; - sha256 = "1qy2i776jb7912dxqylv59p41sa0hw8lmn7asd3ywvp0wk56rmvc"; + url = mirror://xorg/individual/lib/libpciaccess-0.13.4.tar.bz2; + sha256 = "1krgryi9ngjr66242v0v5mczihgv0y7rrvx0563arr318mjn9y07"; }; buildInputs = [pkgconfig zlib ]; }) // {inherit zlib ;}; @@ -935,11 +935,11 @@ let }) // {inherit libxslt libpthreadstubs python libXau xcbproto libXdmcp ;}; libxkbfile = (mkDerivation "libxkbfile" { - name = "libxkbfile-1.0.8"; + name = "libxkbfile-1.0.9"; builder = ./builder.sh; src = fetchurl { - url = mirror://xorg/X11R7.7/src/everything/libxkbfile-1.0.8.tar.bz2; - sha256 = "0flg5arw6n3njagmsi4i4l0zl5bfx866a1h9ydc3bi1pqlclxaca"; + url = mirror://xorg/individual/lib/libxkbfile-1.0.9.tar.bz2; + sha256 = "0smimr14zvail7ar68n7spvpblpdnih3jxrva7cpa6cn602px0ai"; }; buildInputs = [pkgconfig kbproto libX11 ]; }) // {inherit kbproto libX11 ;}; diff --git a/pkgs/servers/x11/xorg/tarballs-7.7.list b/pkgs/servers/x11/xorg/tarballs-7.7.list index e33269c590c5..11f617421e09 100644 --- a/pkgs/servers/x11/xorg/tarballs-7.7.list +++ b/pkgs/servers/x11/xorg/tarballs-7.7.list @@ -53,15 +53,15 @@ mirror://xorg/X11R7.7/src/everything/kbproto-1.0.6.tar.bz2 mirror://xorg/X11R7.7/src/everything/libAppleWM-1.4.1.tar.bz2 mirror://xorg/individual/lib/libdmx-1.1.3.tar.bz2 mirror://xorg/individual/lib/libxshmfence-1.2.tar.bz2 -mirror://xorg/individual/lib/libfontenc-1.1.2.tar.bz2 -mirror://xorg/individual/lib/libFS-1.0.6.tar.bz2 +mirror://xorg/individual/lib/libfontenc-1.1.3.tar.bz2 +mirror://xorg/individual/lib/libFS-1.0.7.tar.bz2 mirror://xorg/individual/lib/libICE-1.0.9.tar.bz2 -mirror://xorg/individual/lib/libpciaccess-0.13.3.tar.bz2 +mirror://xorg/individual/lib/libpciaccess-0.13.4.tar.bz2 mirror://xorg/individual/lib/libSM-1.2.2.tar.bz2 mirror://xorg/X11R7.7/src/everything/libWindowsWM-1.0.1.tar.bz2 mirror://xorg/individual/lib/libX11-1.6.3.tar.bz2 mirror://xorg/individual/lib/libXau-1.0.8.tar.bz2 -mirror://xorg/individual/lib/libXaw-1.0.12.tar.bz2 +mirror://xorg/individual/lib/libXaw-1.0.13.tar.bz2 mirror://xorg/individual/lib/libXcomposite-0.4.4.tar.bz2 mirror://xorg/individual/lib/libXcursor-1.1.14.tar.bz2 mirror://xorg/individual/lib/libXdamage-1.1.4.tar.bz2 @@ -72,15 +72,15 @@ mirror://xorg/individual/lib/libXfont-1.5.1.tar.bz2 mirror://xorg/individual/lib/libXft-2.3.2.tar.bz2 mirror://xorg/individual/lib/libXi-1.7.4.tar.bz2 mirror://xorg/individual/lib/libXinerama-1.1.3.tar.bz2 -mirror://xorg/X11R7.7/src/everything/libxkbfile-1.0.8.tar.bz2 +mirror://xorg/individual/lib/libxkbfile-1.0.9.tar.bz2 mirror://xorg/individual/lib/libXmu-1.1.2.tar.bz2 mirror://xorg/individual/lib/libXpm-3.5.11.tar.bz2 mirror://xorg/individual/lib/libXpresent-1.0.0.tar.bz2 mirror://xorg/individual/lib/libXrandr-1.5.0.tar.bz2 -mirror://xorg/individual/lib/libXrender-0.9.8.tar.bz2 +mirror://xorg/individual/lib/libXrender-0.9.9.tar.bz2 mirror://xorg/individual/lib/libXres-1.0.7.tar.bz2 mirror://xorg/X11R7.7/src/everything/libXScrnSaver-1.2.2.tar.bz2 -mirror://xorg/individual/lib/libXt-1.1.4.tar.bz2 +mirror://xorg/individual/lib/libXt-1.1.5.tar.bz2 mirror://xorg/individual/lib/libXtst-1.2.2.tar.bz2 mirror://xorg/individual/lib/libXv-1.0.10.tar.bz2 mirror://xorg/individual/lib/libXvMC-1.0.9.tar.bz2 From 1a13909173ce9ec56bc9ebfb77ba4e40a081357f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Mon, 25 May 2015 10:44:29 +0200 Subject: [PATCH 025/259] xorg: minor updates of apps --- pkgs/servers/x11/xorg/default.nix | 92 ++++++++++++------------- pkgs/servers/x11/xorg/tarballs-7.7.list | 27 ++++---- 2 files changed, 60 insertions(+), 59 deletions(-) diff --git a/pkgs/servers/x11/xorg/default.nix b/pkgs/servers/x11/xorg/default.nix index 5b2a05941ec2..5c9e6483672b 100644 --- a/pkgs/servers/x11/xorg/default.nix +++ b/pkgs/servers/x11/xorg/default.nix @@ -1085,31 +1085,31 @@ let }) // {inherit xproto ;}; setxkbmap = (mkDerivation "setxkbmap" { - name = "setxkbmap-1.3.0"; + name = "setxkbmap-1.3.1"; builder = ./builder.sh; src = fetchurl { - url = mirror://xorg/X11R7.7/src/everything/setxkbmap-1.3.0.tar.bz2; - sha256 = "1inygpvlgc6vr5h9laxw9lnvafnccl3fy0g5n9ll28iq3yfmqc1x"; + url = mirror://xorg/individual/app/setxkbmap-1.3.1.tar.bz2; + sha256 = "1qfk097vjysqb72pq89h0la3462kbb2dh1d11qzs2fr67ybb7pd9"; }; buildInputs = [pkgconfig libX11 libxkbfile ]; }) // {inherit libX11 libxkbfile ;}; smproxy = (mkDerivation "smproxy" { - name = "smproxy-1.0.5"; + name = "smproxy-1.0.6"; builder = ./builder.sh; src = fetchurl { - url = mirror://xorg/X11R7.7/src/everything/smproxy-1.0.5.tar.bz2; - sha256 = "02fn5wa1gs2jap6sr9j9yk6zsvz82j8l61pf74iyqwa99q4wnb67"; + url = mirror://xorg/individual/app/smproxy-1.0.6.tar.bz2; + sha256 = "0rkjyzmsdqmlrkx8gy2j4q6iksk58hcc92xzdprkf8kml9ar3wbc"; }; buildInputs = [pkgconfig libICE libSM libXmu libXt ]; }) // {inherit libICE libSM libXmu libXt ;}; twm = (mkDerivation "twm" { - name = "twm-1.0.8"; + name = "twm-1.0.9"; builder = ./builder.sh; src = fetchurl { - url = mirror://xorg/individual/app/twm-1.0.8.tar.bz2; - sha256 = "0i1ff8h2gh1ab311da5dlhl0nrma0qbrk403ymzi4cnnacikaq3n"; + url = mirror://xorg/individual/app/twm-1.0.9.tar.bz2; + sha256 = "02iicvhkp3i7q5rliyymiq9bppjr0pzfs6rgb78kppryqdx1cxf5"; }; buildInputs = [pkgconfig libICE libSM libX11 libXext libXmu xproto libXt ]; }) // {inherit libICE libSM libX11 libXext libXmu xproto libXt ;}; @@ -1285,11 +1285,11 @@ let }) // {inherit ;}; xcmsdb = (mkDerivation "xcmsdb" { - name = "xcmsdb-1.0.4"; + name = "xcmsdb-1.0.5"; builder = ./builder.sh; src = fetchurl { - url = mirror://xorg/X11R7.7/src/everything/xcmsdb-1.0.4.tar.bz2; - sha256 = "03ms731l3kvaldq7ycbd30j6134b61i3gbll4b2gl022wyzbjq74"; + url = mirror://xorg/individual/app/xcmsdb-1.0.5.tar.bz2; + sha256 = "1ik7gzlp2igz183x70883000ygp99r20x3aah6xhaslbpdhm6n75"; }; buildInputs = [pkgconfig libX11 ]; }) // {inherit libX11 ;}; @@ -1325,31 +1325,31 @@ let }) // {inherit libX11 libXau libXaw libXdmcp libXext libXft libXinerama libXmu libXpm libXt ;}; xdpyinfo = (mkDerivation "xdpyinfo" { - name = "xdpyinfo-1.3.1"; + name = "xdpyinfo-1.3.2"; builder = ./builder.sh; src = fetchurl { - url = mirror://xorg/individual/app/xdpyinfo-1.3.1.tar.bz2; - sha256 = "154b29zlrq33lmni883jgwyrb2kx7z8h52jx1s3ys5x5d582iydf"; + url = mirror://xorg/individual/app/xdpyinfo-1.3.2.tar.bz2; + sha256 = "0ldgrj4w2fa8jng4b3f3biaj0wyn8zvya88pnk70d7k12pcqw8rh"; }; buildInputs = [pkgconfig libdmx libX11 libxcb libXcomposite libXext libXi libXinerama xproto libXrender libXtst libXxf86dga libXxf86misc libXxf86vm ]; }) // {inherit libdmx libX11 libxcb libXcomposite libXext libXi libXinerama xproto libXrender libXtst libXxf86dga libXxf86misc libXxf86vm ;}; xdriinfo = (mkDerivation "xdriinfo" { - name = "xdriinfo-1.0.4"; + name = "xdriinfo-1.0.5"; builder = ./builder.sh; src = fetchurl { - url = mirror://xorg/X11R7.7/src/everything/xdriinfo-1.0.4.tar.bz2; - sha256 = "076bjix941znyjmh3j5jjsnhp2gv2iq53d0ks29mvvv87cyy9iim"; + url = mirror://xorg/individual/app/xdriinfo-1.0.5.tar.bz2; + sha256 = "0681d0y8liqakkpz7mmsf689jcxrvs5291r20qi78mc9xxk3gfjc"; }; buildInputs = [pkgconfig glproto libX11 ]; }) // {inherit glproto libX11 ;}; xev = (mkDerivation "xev" { - name = "xev-1.2.1"; + name = "xev-1.2.2"; builder = ./builder.sh; src = fetchurl { - url = mirror://xorg/individual/app/xev-1.2.1.tar.bz2; - sha256 = "0hv296mysglcgkx6lj1wxc23kshb2kix1a8yqppxj5vz16mpzw8i"; + url = mirror://xorg/individual/app/xev-1.2.2.tar.bz2; + sha256 = "0krivhrxpq6719103r541xpi3i3a0y15f7ypc4lnrx8sdhmfcjnr"; }; buildInputs = [pkgconfig libX11 xproto libXrandr ]; }) // {inherit libX11 xproto libXrandr ;}; @@ -1865,21 +1865,21 @@ let }) // {inherit libXfont xproto xtrans ;}; xgamma = (mkDerivation "xgamma" { - name = "xgamma-1.0.5"; + name = "xgamma-1.0.6"; builder = ./builder.sh; src = fetchurl { - url = mirror://xorg/X11R7.7/src/everything/xgamma-1.0.5.tar.bz2; - sha256 = "0463sawps86jnxn121ramsz4sicy3az5wa5wsq4rqm8dm3za48p3"; + url = mirror://xorg/individual/app/xgamma-1.0.6.tar.bz2; + sha256 = "1lr2nb1fhg5fk2fchqxdxyl739602ggwhmgl2wiv5c8qbidw7w8f"; }; - buildInputs = [pkgconfig libX11 libXxf86vm ]; - }) // {inherit libX11 libXxf86vm ;}; + buildInputs = [pkgconfig libX11 xproto libXxf86vm ]; + }) // {inherit libX11 xproto libXxf86vm ;}; xhost = (mkDerivation "xhost" { - name = "xhost-1.0.6"; + name = "xhost-1.0.7"; builder = ./builder.sh; src = fetchurl { - url = mirror://xorg/individual/app/xhost-1.0.6.tar.bz2; - sha256 = "1hlxm0is9nks1cx033s1733kkib9ivx2bxa3pb9yayqavwibkxd6"; + url = mirror://xorg/individual/app/xhost-1.0.7.tar.bz2; + sha256 = "16n26xw6l01zq31d4qvsaz50misvizhn7iihzdn5f7s72pp1krlk"; }; buildInputs = [pkgconfig libX11 libXau libXmu xproto ]; }) // {inherit libX11 libXau libXmu xproto ;}; @@ -1925,24 +1925,24 @@ let }) // {inherit libX11 libxkbfile xproto ;}; xkbevd = (mkDerivation "xkbevd" { - name = "xkbevd-1.1.3"; + name = "xkbevd-1.1.4"; builder = ./builder.sh; src = fetchurl { - url = mirror://xorg/X11R7.7/src/everything/xkbevd-1.1.3.tar.bz2; - sha256 = "05h1xcnbalndbrryyqs8wzy9h3wz655vc0ymhlk2q4aik17licjm"; + url = mirror://xorg/individual/app/xkbevd-1.1.4.tar.bz2; + sha256 = "0sprjx8i86ljk0l7ldzbz2xlk8916z5zh78cafjv8k1a63js4c14"; }; buildInputs = [pkgconfig libX11 libxkbfile ]; }) // {inherit libX11 libxkbfile ;}; xkbprint = (mkDerivation "xkbprint" { - name = "xkbprint-1.0.3"; + name = "xkbprint-1.0.4"; builder = ./builder.sh; src = fetchurl { - url = mirror://xorg/individual/app/xkbprint-1.0.3.tar.bz2; - sha256 = "1h4jb3gjrbjp79h5gcgkjvdxykcy2bmq03smpls820c8wnw6v17s"; + url = mirror://xorg/individual/app/xkbprint-1.0.4.tar.bz2; + sha256 = "04iyv5z8aqhabv7wcpvbvq0ji0jrz1666vw6gvxkvl7szswalgqb"; }; - buildInputs = [pkgconfig libX11 libxkbfile ]; - }) // {inherit libX11 libxkbfile ;}; + buildInputs = [pkgconfig libX11 libxkbfile xproto ]; + }) // {inherit libX11 libxkbfile xproto ;}; xkbutils = (mkDerivation "xkbutils" { name = "xkbutils-1.0.4"; @@ -1975,11 +1975,11 @@ let }) // {inherit libX11 libXmu xproto ;}; xlsatoms = (mkDerivation "xlsatoms" { - name = "xlsatoms-1.1.1"; + name = "xlsatoms-1.1.2"; builder = ./builder.sh; src = fetchurl { - url = mirror://xorg/X11R7.7/src/everything/xlsatoms-1.1.1.tar.bz2; - sha256 = "1y9nfl8s7njxbnci8c20j986xixharasgg40vdw92y593j6dk2rv"; + url = mirror://xorg/individual/app/xlsatoms-1.1.2.tar.bz2; + sha256 = "196yjik910xsr7dwy8daa0amr0r22ynfs360z0ndp9mx7mydrra7"; }; buildInputs = [pkgconfig libxcb ]; }) // {inherit libxcb ;}; @@ -2005,11 +2005,11 @@ let }) // {inherit libXaw libXt ;}; xmodmap = (mkDerivation "xmodmap" { - name = "xmodmap-1.0.8"; + name = "xmodmap-1.0.9"; builder = ./builder.sh; src = fetchurl { - url = mirror://xorg/individual/app/xmodmap-1.0.8.tar.bz2; - sha256 = "1hwzm54m4ng09ls9i4bq0x84zbyhamgzasgrvhxxp8jqk34f7qpg"; + url = mirror://xorg/individual/app/xmodmap-1.0.9.tar.bz2; + sha256 = "0y649an3jqfq9klkp9y5gj20xb78fw6g193f5mnzpl0hbz6fbc5p"; }; buildInputs = [pkgconfig libX11 xproto ]; }) // {inherit libX11 xproto ;}; @@ -2145,11 +2145,11 @@ let }) // {inherit ;}; xvinfo = (mkDerivation "xvinfo" { - name = "xvinfo-1.1.2"; + name = "xvinfo-1.1.3"; builder = ./builder.sh; src = fetchurl { - url = mirror://xorg/individual/app/xvinfo-1.1.2.tar.bz2; - sha256 = "1qsh7fszi727l3vwlaf9pb7bpikdv15smrx5qhlgg3kqzl7xklzf"; + url = mirror://xorg/individual/app/xvinfo-1.1.3.tar.bz2; + sha256 = "1sz5wqhxd1fqsfi1w5advdlwzkizf2fgl12hdpk66f7mv9l8pflz"; }; buildInputs = [pkgconfig libX11 xproto libXv ]; }) // {inherit libX11 xproto libXv ;}; diff --git a/pkgs/servers/x11/xorg/tarballs-7.7.list b/pkgs/servers/x11/xorg/tarballs-7.7.list index 11f617421e09..6f8fcf53c76a 100644 --- a/pkgs/servers/x11/xorg/tarballs-7.7.list +++ b/pkgs/servers/x11/xorg/tarballs-7.7.list @@ -96,8 +96,9 @@ mirror://xorg/X11R7.7/src/everything/renderproto-0.11.1.tar.bz2 mirror://xorg/X11R7.7/src/everything/resourceproto-1.2.0.tar.bz2 mirror://xorg/X11R7.7/src/everything/scrnsaverproto-1.2.2.tar.bz2 mirror://xorg/individual/app/sessreg-1.1.0.tar.bz2 -mirror://xorg/X11R7.7/src/everything/setxkbmap-1.3.0.tar.bz2 -mirror://xorg/X11R7.7/src/everything/smproxy-1.0.5.tar.bz2 +mirror://xorg/individual/app/setxkbmap-1.3.1.tar.bz2 +mirror://xorg/individual/app/smproxy-1.0.6.tar.bz2 +mirror://xorg/individual/app/twm-1.0.9.tar.bz2 mirror://xorg/individual/util/util-macros-1.19.0.tar.bz2 mirror://xorg/individual/proto/videoproto-2.3.2.tar.bz2 mirror://xorg/X11R7.7/src/everything/windowswmproto-1.0.4.tar.bz2 @@ -106,12 +107,12 @@ mirror://xorg/individual/app/xauth-1.0.9.tar.bz2 mirror://xorg/individual/app/xbacklight-1.2.1.tar.bz2 mirror://xorg/X11R7.7/src/everything/xbitmaps-1.1.1.tar.bz2 mirror://xorg/X11R7.7/src/everything/xcmiscproto-1.2.2.tar.bz2 -mirror://xorg/X11R7.7/src/everything/xcmsdb-1.0.4.tar.bz2 +mirror://xorg/individual/app/xcmsdb-1.0.5.tar.bz2 mirror://xorg/individual/app/xcursorgen-1.0.6.tar.bz2 mirror://xorg/individual/data/xcursor-themes-1.0.4.tar.bz2 -mirror://xorg/individual/app/xdpyinfo-1.3.1.tar.bz2 -mirror://xorg/X11R7.7/src/everything/xdriinfo-1.0.4.tar.bz2 -mirror://xorg/individual/app/xev-1.2.1.tar.bz2 +mirror://xorg/individual/app/xdpyinfo-1.3.2.tar.bz2 +mirror://xorg/individual/app/xdriinfo-1.0.5.tar.bz2 +mirror://xorg/individual/app/xev-1.2.2.tar.bz2 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 @@ -161,18 +162,18 @@ mirror://xorg/individual/driver/xf86-video-vmware-13.1.0.tar.bz2 mirror://xorg/individual/driver/xf86-video-voodoo-1.2.5.tar.bz2 mirror://xorg/X11R7.7/src/everything/xf86-video-wsfb-0.4.0.tar.bz2 mirror://xorg/X11R7.7/src/everything/xf86vidmodeproto-2.3.1.tar.bz2 -mirror://xorg/X11R7.7/src/everything/xgamma-1.0.5.tar.bz2 -mirror://xorg/individual/app/xhost-1.0.6.tar.bz2 +mirror://xorg/individual/app/xgamma-1.0.6.tar.bz2 +mirror://xorg/individual/app/xhost-1.0.7.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/individual/app/xkbcomp-1.3.0.tar.bz2 -mirror://xorg/X11R7.7/src/everything/xkbevd-1.1.3.tar.bz2 +mirror://xorg/individual/app/xkbevd-1.1.4.tar.bz2 mirror://xorg/individual/app/xkbutils-1.0.4.tar.bz2 mirror://xorg/individual/data/xkeyboard-config/xkeyboard-config-2.11.tar.bz2 mirror://xorg/individual/app/xkill-1.0.4.tar.bz2 -mirror://xorg/X11R7.7/src/everything/xlsatoms-1.1.1.tar.bz2 +mirror://xorg/individual/app/xlsatoms-1.1.2.tar.bz2 mirror://xorg/individual/app/xlsclients-1.1.3.tar.bz2 -mirror://xorg/individual/app/xmodmap-1.0.8.tar.bz2 +mirror://xorg/individual/app/xmodmap-1.0.9.tar.bz2 mirror://xorg/X11R7.7/src/everything/xorg-docs-1.7.tar.bz2 mirror://xorg/individual/xserver/xorg-server-1.16.4.tar.bz2 mirror://xorg/X11R7.7/src/everything/xorg-sgml-doctools-1.11.tar.bz2 @@ -185,8 +186,8 @@ mirror://xorg/individual/app/xrefresh-1.0.5.tar.bz2 mirror://xorg/individual/app/xset-1.2.3.tar.bz2 mirror://xorg/X11R7.7/src/everything/xsetroot-1.1.0.tar.bz2 mirror://xorg/individual/lib/xtrans-1.3.5.tar.bz2 -mirror://xorg/individual/app/xvinfo-1.1.2.tar.bz2 +mirror://xorg/individual/app/xvinfo-1.1.3.tar.bz2 mirror://xorg/individual/app/xwd-1.0.6.tar.bz2 mirror://xorg/individual/app/xwininfo-1.1.3.tar.bz2 mirror://xorg/X11R7.7/src/everything/xwud-1.0.4.tar.bz2 -mirror://xorg/individual/app/xkbprint-1.0.3.tar.bz2 +mirror://xorg/individual/app/xkbprint-1.0.4.tar.bz2 From 688b4ca5dbec29f126632187f5f726d11e3f5f74 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Mon, 25 May 2015 11:11:05 +0200 Subject: [PATCH 026/259] xorg: add xmag and xgc apps Tested very briefly. --- pkgs/servers/x11/xorg/default.nix | 20 ++++++++++++++++++++ pkgs/servers/x11/xorg/tarballs-7.7.list | 2 ++ 2 files changed, 22 insertions(+) diff --git a/pkgs/servers/x11/xorg/default.nix b/pkgs/servers/x11/xorg/default.nix index 5c9e6483672b..d01caddd7109 100644 --- a/pkgs/servers/x11/xorg/default.nix +++ b/pkgs/servers/x11/xorg/default.nix @@ -1874,6 +1874,16 @@ let buildInputs = [pkgconfig libX11 xproto libXxf86vm ]; }) // {inherit libX11 xproto libXxf86vm ;}; + xgc = (mkDerivation "xgc" { + name = "xgc-1.0.5"; + builder = ./builder.sh; + src = fetchurl { + url = mirror://xorg/individual/app/xgc-1.0.5.tar.bz2; + sha256 = "0pigvjd3i9fchmj1inqy151aafz3dr0vq1h2zizdb2imvadqv0hl"; + }; + buildInputs = [pkgconfig libXaw libXt ]; + }) // {inherit libXaw libXt ;}; + xhost = (mkDerivation "xhost" { name = "xhost-1.0.7"; builder = ./builder.sh; @@ -1994,6 +2004,16 @@ let buildInputs = [pkgconfig libxcb ]; }) // {inherit libxcb ;}; + xmag = (mkDerivation "xmag" { + name = "xmag-1.0.6"; + builder = ./builder.sh; + src = fetchurl { + url = mirror://xorg/individual/app/xmag-1.0.6.tar.bz2; + sha256 = "0qg12ifbbk9n8fh4jmyb625cknn8ssj86chd6zwdiqjin8ivr8l7"; + }; + buildInputs = [pkgconfig libX11 libXaw libXmu libXt ]; + }) // {inherit libX11 libXaw libXmu libXt ;}; + xmessage = (mkDerivation "xmessage" { name = "xmessage-1.0.4"; builder = ./builder.sh; diff --git a/pkgs/servers/x11/xorg/tarballs-7.7.list b/pkgs/servers/x11/xorg/tarballs-7.7.list index 6f8fcf53c76a..15568733cbec 100644 --- a/pkgs/servers/x11/xorg/tarballs-7.7.list +++ b/pkgs/servers/x11/xorg/tarballs-7.7.list @@ -163,6 +163,7 @@ mirror://xorg/individual/driver/xf86-video-voodoo-1.2.5.tar.bz2 mirror://xorg/X11R7.7/src/everything/xf86-video-wsfb-0.4.0.tar.bz2 mirror://xorg/X11R7.7/src/everything/xf86vidmodeproto-2.3.1.tar.bz2 mirror://xorg/individual/app/xgamma-1.0.6.tar.bz2 +mirror://xorg/individual/app/xgc-1.0.5.tar.bz2 mirror://xorg/individual/app/xhost-1.0.7.tar.bz2 mirror://xorg/X11R7.7/src/everything/xineramaproto-1.2.1.tar.bz2 mirror://xorg/individual/app/xinput-1.6.1.tar.bz2 @@ -173,6 +174,7 @@ mirror://xorg/individual/data/xkeyboard-config/xkeyboard-config-2.11.tar.bz2 mirror://xorg/individual/app/xkill-1.0.4.tar.bz2 mirror://xorg/individual/app/xlsatoms-1.1.2.tar.bz2 mirror://xorg/individual/app/xlsclients-1.1.3.tar.bz2 +mirror://xorg/individual/app/xmag-1.0.6.tar.bz2 mirror://xorg/individual/app/xmodmap-1.0.9.tar.bz2 mirror://xorg/X11R7.7/src/everything/xorg-docs-1.7.tar.bz2 mirror://xorg/individual/xserver/xorg-server-1.16.4.tar.bz2 From e5fa9ab0fd432f661ba1bbb13bee461ca95038b4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Tue, 26 May 2015 18:52:32 +0200 Subject: [PATCH 027/259] xlsfonts: generate along with xorg stuff Also a minor update. /cc maintainer @viric. --- pkgs/applications/misc/xlsfonts/default.nix | 23 --------------------- pkgs/servers/x11/xorg/default.nix | 10 +++++++++ pkgs/servers/x11/xorg/tarballs-7.7.list | 1 + pkgs/top-level/all-packages.nix | 2 +- 4 files changed, 12 insertions(+), 24 deletions(-) delete mode 100644 pkgs/applications/misc/xlsfonts/default.nix diff --git a/pkgs/applications/misc/xlsfonts/default.nix b/pkgs/applications/misc/xlsfonts/default.nix deleted file mode 100644 index 7584ebf72fb1..000000000000 --- a/pkgs/applications/misc/xlsfonts/default.nix +++ /dev/null @@ -1,23 +0,0 @@ -# This program used to come with xorg releases, but now I could only find it -# at http://www.x.org/releases/individual/. -# That is why this expression is not inside pkgs.xorg - -{stdenv, fetchurl, libX11, pkgconfig}: -stdenv.mkDerivation rec { - name = "xlsfonts-1.0.4"; - - src = fetchurl { - url = "mirror://xorg/individual/app/${name}.tar.bz2"; - sha256 = "1lhcx600z9v65nk93xaxfzi79bm4naynabb52gz1vy1bxj2r25r8"; - }; - - buildInputs = [libX11 pkgconfig]; - - meta = { - homepage = http://www.x.org/; - description = "Lists the fonts available in the X server"; - license = stdenv.lib.licenses.free; - maintainers = with stdenv.lib.maintainers; [viric]; - platforms = with stdenv.lib.platforms; linux ++ darwin; - }; -} diff --git a/pkgs/servers/x11/xorg/default.nix b/pkgs/servers/x11/xorg/default.nix index d01caddd7109..f16bc23d76a7 100644 --- a/pkgs/servers/x11/xorg/default.nix +++ b/pkgs/servers/x11/xorg/default.nix @@ -2004,6 +2004,16 @@ let buildInputs = [pkgconfig libxcb ]; }) // {inherit libxcb ;}; + xlsfonts = (mkDerivation "xlsfonts" { + name = "xlsfonts-1.0.5"; + builder = ./builder.sh; + src = fetchurl { + url = mirror://xorg/individual/app/xlsfonts-1.0.5.tar.bz2; + sha256 = "1yi774g6r1kafsbnxbkrwyndd3i60362ck1fps9ywz076pn5naa0"; + }; + buildInputs = [pkgconfig libX11 xproto ]; + }) // {inherit libX11 xproto ;}; + xmag = (mkDerivation "xmag" { name = "xmag-1.0.6"; builder = ./builder.sh; diff --git a/pkgs/servers/x11/xorg/tarballs-7.7.list b/pkgs/servers/x11/xorg/tarballs-7.7.list index 15568733cbec..5821390110e9 100644 --- a/pkgs/servers/x11/xorg/tarballs-7.7.list +++ b/pkgs/servers/x11/xorg/tarballs-7.7.list @@ -174,6 +174,7 @@ mirror://xorg/individual/data/xkeyboard-config/xkeyboard-config-2.11.tar.bz2 mirror://xorg/individual/app/xkill-1.0.4.tar.bz2 mirror://xorg/individual/app/xlsatoms-1.1.2.tar.bz2 mirror://xorg/individual/app/xlsclients-1.1.3.tar.bz2 +mirror://xorg/individual/app/xlsfonts-1.0.5.tar.bz2 mirror://xorg/individual/app/xmag-1.0.6.tar.bz2 mirror://xorg/individual/app/xmodmap-1.0.9.tar.bz2 mirror://xorg/X11R7.7/src/everything/xorg-docs-1.7.tar.bz2 diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 339563fddf19..72158197107b 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -11049,7 +11049,7 @@ let freepv = callPackage ../applications/graphics/freepv { }; xfontsel = callPackage ../applications/misc/xfontsel { }; - xlsfonts = callPackage ../applications/misc/xlsfonts { }; + inherit (xorg) xlsfonts; freerdp = callPackage ../applications/networking/remote/freerdp { ffmpeg = ffmpeg_1; From 471a2a7ee7cfdaba691471acf2556a5bc48b105a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Tue, 26 May 2015 18:54:17 +0200 Subject: [PATCH 028/259] xorg {xorg-docs,kbproto}: minor updates --- pkgs/servers/x11/xorg/default.nix | 12 ++++++------ pkgs/servers/x11/xorg/tarballs-7.7.list | 4 ++-- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/pkgs/servers/x11/xorg/default.nix b/pkgs/servers/x11/xorg/default.nix index f16bc23d76a7..f996db7f9afe 100644 --- a/pkgs/servers/x11/xorg/default.nix +++ b/pkgs/servers/x11/xorg/default.nix @@ -545,11 +545,11 @@ let }) // {inherit ;}; kbproto = (mkDerivation "kbproto" { - name = "kbproto-1.0.6"; + name = "kbproto-1.0.7"; builder = ./builder.sh; src = fetchurl { - url = mirror://xorg/X11R7.7/src/everything/kbproto-1.0.6.tar.bz2; - sha256 = "0yal11hhpiisy3w8wmacsdzzzcnc3xwnswxz8k7zri40xc5aqz03"; + url = mirror://xorg/individual/proto/kbproto-1.0.7.tar.bz2; + sha256 = "0mxqj1pzhjpz9495vrjnpi10kv2n1s4vs7di0sh3yvipfq5j30pq"; }; buildInputs = [pkgconfig ]; }) // {inherit ;}; @@ -2055,11 +2055,11 @@ let }) // {inherit ;}; xorgdocs = (mkDerivation "xorgdocs" { - name = "xorg-docs-1.7"; + name = "xorg-docs-1.7.1"; builder = ./builder.sh; src = fetchurl { - url = mirror://xorg/X11R7.7/src/everything/xorg-docs-1.7.tar.bz2; - sha256 = "0prphdba6kgr1bxk7r07wxxx6x6pqjw6prr5qclypsb5sf5r3cdr"; + url = mirror://xorg/individual/doc/xorg-docs-1.7.1.tar.bz2; + sha256 = "0jrc4jmb4raqawx0j9jmhgasr0k6sxv0bm2hrxjh9hb26iy6gf14"; }; buildInputs = [pkgconfig ]; }) // {inherit ;}; diff --git a/pkgs/servers/x11/xorg/tarballs-7.7.list b/pkgs/servers/x11/xorg/tarballs-7.7.list index 5821390110e9..39ea8caa60a6 100644 --- a/pkgs/servers/x11/xorg/tarballs-7.7.list +++ b/pkgs/servers/x11/xorg/tarballs-7.7.list @@ -49,7 +49,7 @@ mirror://xorg/X11R7.7/src/everything/font-xfree86-type1-1.0.4.tar.bz2 mirror://xorg/individual/proto/glproto-1.4.17.tar.bz2 mirror://xorg/individual/app/iceauth-1.0.7.tar.bz2 mirror://xorg/individual/proto/inputproto-2.3.1.tar.bz2 -mirror://xorg/X11R7.7/src/everything/kbproto-1.0.6.tar.bz2 +mirror://xorg/individual/proto/kbproto-1.0.7.tar.bz2 mirror://xorg/X11R7.7/src/everything/libAppleWM-1.4.1.tar.bz2 mirror://xorg/individual/lib/libdmx-1.1.3.tar.bz2 mirror://xorg/individual/lib/libxshmfence-1.2.tar.bz2 @@ -177,7 +177,7 @@ mirror://xorg/individual/app/xlsclients-1.1.3.tar.bz2 mirror://xorg/individual/app/xlsfonts-1.0.5.tar.bz2 mirror://xorg/individual/app/xmag-1.0.6.tar.bz2 mirror://xorg/individual/app/xmodmap-1.0.9.tar.bz2 -mirror://xorg/X11R7.7/src/everything/xorg-docs-1.7.tar.bz2 +mirror://xorg/individual/doc/xorg-docs-1.7.1.tar.bz2 mirror://xorg/individual/xserver/xorg-server-1.16.4.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 From 0e270def52fe334c271a339a1004d3569542a320 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Tue, 26 May 2015 18:59:40 +0200 Subject: [PATCH 029/259] xorg.x11perf: larger update Seems to run fine. --- pkgs/servers/x11/xorg/default.nix | 10 +++++----- pkgs/servers/x11/xorg/tarballs-7.7.list | 2 +- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/pkgs/servers/x11/xorg/default.nix b/pkgs/servers/x11/xorg/default.nix index f996db7f9afe..8834a5e59fb6 100644 --- a/pkgs/servers/x11/xorg/default.nix +++ b/pkgs/servers/x11/xorg/default.nix @@ -1145,14 +1145,14 @@ let }) // {inherit ;}; x11perf = (mkDerivation "x11perf" { - name = "x11perf-1.5.4"; + name = "x11perf-1.6.0"; builder = ./builder.sh; src = fetchurl { - url = mirror://xorg/X11R7.7/src/everything/x11perf-1.5.4.tar.bz2; - sha256 = "111iwpxhnxjiq44w96zf0kszg5zpgv1g3ayx18v4nhdzl9bqivi4"; + url = mirror://xorg/individual/app/x11perf-1.6.0.tar.bz2; + sha256 = "0lb716yfdb8f11h4cz93d1bapqdxf1xplsb21kbp4xclq7g9hw78"; }; - buildInputs = [pkgconfig libX11 libXext libXft libXmu libXrender ]; - }) // {inherit libX11 libXext libXft libXmu libXrender ;}; + buildInputs = [pkgconfig libX11 libXext libXft libXmu xproto libXrender ]; + }) // {inherit libX11 libXext libXft libXmu xproto libXrender ;}; xauth = (mkDerivation "xauth" { name = "xauth-1.0.9"; diff --git a/pkgs/servers/x11/xorg/tarballs-7.7.list b/pkgs/servers/x11/xorg/tarballs-7.7.list index 39ea8caa60a6..baded542cab3 100644 --- a/pkgs/servers/x11/xorg/tarballs-7.7.list +++ b/pkgs/servers/x11/xorg/tarballs-7.7.list @@ -102,7 +102,7 @@ mirror://xorg/individual/app/twm-1.0.9.tar.bz2 mirror://xorg/individual/util/util-macros-1.19.0.tar.bz2 mirror://xorg/individual/proto/videoproto-2.3.2.tar.bz2 mirror://xorg/X11R7.7/src/everything/windowswmproto-1.0.4.tar.bz2 -mirror://xorg/X11R7.7/src/everything/x11perf-1.5.4.tar.bz2 +mirror://xorg/individual/app/x11perf-1.6.0.tar.bz2 mirror://xorg/individual/app/xauth-1.0.9.tar.bz2 mirror://xorg/individual/app/xbacklight-1.2.1.tar.bz2 mirror://xorg/X11R7.7/src/everything/xbitmaps-1.1.1.tar.bz2 From edeab759130b1ac213e2b744ac30e941b1a423f5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Tue, 26 May 2015 19:03:14 +0200 Subject: [PATCH 030/259] xcompmgr: generate along with xorg stuff Also a minor update. /cc maintainer @astsmtl. --- .../window-managers/xcompmgr/default.nix | 22 ------------------- pkgs/servers/x11/xorg/default.nix | 10 +++++++++ pkgs/servers/x11/xorg/tarballs-7.7.list | 1 + pkgs/top-level/all-packages.nix | 2 +- 4 files changed, 12 insertions(+), 23 deletions(-) delete mode 100644 pkgs/applications/window-managers/xcompmgr/default.nix diff --git a/pkgs/applications/window-managers/xcompmgr/default.nix b/pkgs/applications/window-managers/xcompmgr/default.nix deleted file mode 100644 index 930b612f6914..000000000000 --- a/pkgs/applications/window-managers/xcompmgr/default.nix +++ /dev/null @@ -1,22 +0,0 @@ -{ stdenv, fetchurl, pkgconfig, libXcomposite, libXfixes, libXdamage -, libXrender, libXext }: -stdenv.mkDerivation rec { - name = "xcompmgr-1.1.6"; - src = fetchurl { - url = "mirror://xorg/individual/app/${name}.tar.bz2"; - sha256 = "c98949d36793b30ed1ed47495c87a05fa245ac0fc2857d2abc54979124687c02"; - }; - buildInputs = [ pkgconfig libXcomposite libXfixes libXdamage libXrender libXext ]; - meta = { - homepage = http://www.x.org/; - description = "A sample compositing manager for X servers"; - longDescription = '' - A sample compositing manager for X servers supporting the XFIXES, - DAMAGE, RENDER, and COMPOSITE extensions. It enables basic eye-candy - effects. - ''; - license = "bsd"; - maintainers = with stdenv.lib.maintainers; [ astsmtl ]; - platforms = with stdenv.lib.platforms; linux; - }; -} diff --git a/pkgs/servers/x11/xorg/default.nix b/pkgs/servers/x11/xorg/default.nix index 8834a5e59fb6..1d8997e3c1db 100644 --- a/pkgs/servers/x11/xorg/default.nix +++ b/pkgs/servers/x11/xorg/default.nix @@ -1294,6 +1294,16 @@ let buildInputs = [pkgconfig libX11 ]; }) // {inherit libX11 ;}; + xcompmgr = (mkDerivation "xcompmgr" { + name = "xcompmgr-1.1.7"; + builder = ./builder.sh; + src = fetchurl { + url = mirror://xorg/individual/app/xcompmgr-1.1.7.tar.bz2; + sha256 = "14k89mz13jxgp4h2pz0yq0fbkw1lsfcb3acv8vkknc9i4ld9n168"; + }; + buildInputs = [pkgconfig libXcomposite libXdamage libXext libXfixes libXrender ]; + }) // {inherit libXcomposite libXdamage libXext libXfixes libXrender ;}; + xcursorgen = (mkDerivation "xcursorgen" { name = "xcursorgen-1.0.6"; builder = ./builder.sh; diff --git a/pkgs/servers/x11/xorg/tarballs-7.7.list b/pkgs/servers/x11/xorg/tarballs-7.7.list index baded542cab3..932d4f1236f2 100644 --- a/pkgs/servers/x11/xorg/tarballs-7.7.list +++ b/pkgs/servers/x11/xorg/tarballs-7.7.list @@ -108,6 +108,7 @@ mirror://xorg/individual/app/xbacklight-1.2.1.tar.bz2 mirror://xorg/X11R7.7/src/everything/xbitmaps-1.1.1.tar.bz2 mirror://xorg/X11R7.7/src/everything/xcmiscproto-1.2.2.tar.bz2 mirror://xorg/individual/app/xcmsdb-1.0.5.tar.bz2 +mirror://xorg/individual/app/xcompmgr-1.1.7.tar.bz2 mirror://xorg/individual/app/xcursorgen-1.0.6.tar.bz2 mirror://xorg/individual/data/xcursor-themes-1.0.4.tar.bz2 mirror://xorg/individual/app/xdpyinfo-1.3.2.tar.bz2 diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 72158197107b..7e6f0b8f18bc 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -12807,7 +12807,7 @@ let xchm = callPackage ../applications/misc/xchm { }; - xcompmgr = callPackage ../applications/window-managers/xcompmgr { }; + inherit (xorg) xcompmgr; compton = callPackage ../applications/window-managers/compton { }; From 16b40c7b1fa0610e204f62484bbcf748b59ce52f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Tue, 26 May 2015 20:00:23 +0200 Subject: [PATCH 031/259] qt48: maintenance update, try enableParallelBuilding I successfully built it with 8 free cores; hopefully it won't give problems. /cc maintainers: @lovek323, @phreedom, @sander. I wonder that the build reports no support for gstreamer and pulseaudio. I checked it was so before this commit, but it might still be useful to enable those. No more 4.8.x releases are planned. End of support is scheduled to Dec'15. --- pkgs/development/libraries/qt-4.x/4.8/default.nix | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/pkgs/development/libraries/qt-4.x/4.8/default.nix b/pkgs/development/libraries/qt-4.x/4.8/default.nix index a65cbeed3fd3..8715af062c77 100644 --- a/pkgs/development/libraries/qt-4.x/4.8/default.nix +++ b/pkgs/development/libraries/qt-4.x/4.8/default.nix @@ -17,7 +17,7 @@ with stdenv.lib; let v_maj = "4.8"; - v_min = "6"; + v_min = "7"; vers = "${v_maj}.${v_min}"; in @@ -31,7 +31,7 @@ stdenv.mkDerivation rec { src = fetchurl { url = "http://download.qt-project.org/official_releases/qt/" + "${v_maj}/${vers}/qt-everywhere-opensource-src-${vers}.tar.gz"; - sha256 = "0b036iqgmbbv37dgwwfihw3mihjbnw3kb5kaisdy0qi8nn8xs54b"; + sha256 = "183fca7n7439nlhxyg1z7aky0izgbyll3iwakw4gwivy16aj5272"; }; # The version property must be kept because it will be included into the QtSDK package name @@ -126,9 +126,7 @@ stdenv.mkDerivation rec { nativeBuildInputs = [ perl pkgconfig which ]; - # occasional build problems if one has too many cores (like on Hydra) - # @vcunat has been unable to find a *reliable* fix - enableParallelBuilding = false; + enableParallelBuilding = true; NIX_CFLAGS_COMPILE = optionalString stdenv.isDarwin "-I${glib}/include/glib-2.0 -I${glib}/lib/glib-2.0/include"; From 6f67b91db3c8c9e2c4688b1c45445cb8d2e94729 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Tue, 26 May 2015 20:47:10 +0200 Subject: [PATCH 032/259] xfce: maint. updates of exo, thunar, xfdesktop, xfwm4 --- pkgs/desktops/xfce/core/exo.nix | 4 ++-- pkgs/desktops/xfce/core/thunar.nix | 4 ++-- pkgs/desktops/xfce/core/xfdesktop.nix | 4 ++-- pkgs/desktops/xfce/core/xfwm4.nix | 4 ++-- 4 files changed, 8 insertions(+), 8 deletions(-) diff --git a/pkgs/desktops/xfce/core/exo.nix b/pkgs/desktops/xfce/core/exo.nix index e4c7c3183521..f48a3e3808bd 100644 --- a/pkgs/desktops/xfce/core/exo.nix +++ b/pkgs/desktops/xfce/core/exo.nix @@ -3,11 +3,11 @@ stdenv.mkDerivation rec { p_name = "exo"; ver_maj = "0.10"; - ver_min = "4"; + ver_min = "6"; src = fetchurl { url = "mirror://xfce/src/xfce/${p_name}/${ver_maj}/${name}.tar.bz2"; - sha256 = "cced5fdbc0b61a5d976210ff71ecdd81b89fcd15e5860a44f50da7b83fb2deaa"; + sha256 = "1cc0e5a432e050a5e5aa64d126b988f4440da4f27474aaf42a4d8e13651d0752"; }; name = "${p_name}-${ver_maj}.${ver_min}"; diff --git a/pkgs/desktops/xfce/core/thunar.nix b/pkgs/desktops/xfce/core/thunar.nix index abcfd656c502..6e4794544596 100644 --- a/pkgs/desktops/xfce/core/thunar.nix +++ b/pkgs/desktops/xfce/core/thunar.nix @@ -6,11 +6,11 @@ stdenv.mkDerivation rec { p_name = "thunar"; ver_maj = "1.6"; - ver_min = "6"; + ver_min = "10"; src = fetchurl { url = "mirror://xfce/src/xfce/${p_name}/${ver_maj}/Thunar-${ver_maj}.${ver_min}.tar.bz2"; - sha256 = "1cl9v3rdzipyyxml3pyrzspxfmmssz5h5snpj18irq4an42539dr"; + sha256 = "7e9d24067268900e5e44d3325e60a1a2b2f8f556ec238ec12574fbea15fdee8a"; }; name = "${p_name}-${ver_maj}.${ver_min}"; diff --git a/pkgs/desktops/xfce/core/xfdesktop.nix b/pkgs/desktops/xfce/core/xfdesktop.nix index 45a89b93748d..4402e61a2fb6 100644 --- a/pkgs/desktops/xfce/core/xfdesktop.nix +++ b/pkgs/desktops/xfce/core/xfdesktop.nix @@ -4,11 +4,11 @@ stdenv.mkDerivation rec { p_name = "xfdesktop"; ver_maj = "4.12"; - ver_min = "0"; + ver_min = "2"; src = fetchurl { url = "mirror://xfce/src/xfce/${p_name}/${ver_maj}/${name}.tar.bz2"; - sha256 = "1ivzgg4792nid6wcgd1nq5vc3z0y5ip6ymq7ci5j2qkp663qnykf"; + sha256 = "c9788883163b57bac39d12e5f8310c869d176454879defb78b67f8e9f1ad5225"; }; name = "${p_name}-${ver_maj}.${ver_min}"; diff --git a/pkgs/desktops/xfce/core/xfwm4.nix b/pkgs/desktops/xfce/core/xfwm4.nix index cedf36d43ae1..dd18b1355f79 100644 --- a/pkgs/desktops/xfce/core/xfwm4.nix +++ b/pkgs/desktops/xfce/core/xfwm4.nix @@ -4,11 +4,11 @@ stdenv.mkDerivation rec { p_name = "xfwm4"; ver_maj = "4.12"; - ver_min = "2"; + ver_min = "3"; src = fetchurl { url = "mirror://xfce/src/xfce/${p_name}/${ver_maj}/${name}.tar.bz2"; - sha256 = "5bb5f72b41060d10bd3823f8b69abcd462bbd8853fdf9c82041450ae68e7d75a"; + sha256 = "f4a988fbc4e0df7e8583c781d271559e56fd28696092f94ae052e9e6edb09eac"; }; name = "${p_name}-${ver_maj}.${ver_min}"; From c4f1011cabb904e8830c77105321f30055c254af Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Wed, 27 May 2015 22:05:04 +0200 Subject: [PATCH 033/259] gtk+ stack: maintenance updates --- pkgs/development/libraries/gdk-pixbuf/default.nix | 4 ++-- pkgs/development/libraries/glib/default.nix | 4 ++-- pkgs/development/libraries/gtk+/2.x.nix | 4 ++-- pkgs/development/libraries/gtk+/3.x.nix | 4 ++-- 4 files changed, 8 insertions(+), 8 deletions(-) diff --git a/pkgs/development/libraries/gdk-pixbuf/default.nix b/pkgs/development/libraries/gdk-pixbuf/default.nix index da6a3ad1dffc..1fa57b5adb58 100644 --- a/pkgs/development/libraries/gdk-pixbuf/default.nix +++ b/pkgs/development/libraries/gdk-pixbuf/default.nix @@ -3,14 +3,14 @@ let ver_maj = "2.31"; - ver_min = "3"; + ver_min = "4"; in stdenv.mkDerivation rec { name = "gdk-pixbuf-${ver_maj}.${ver_min}"; src = fetchurl { url = "mirror://gnome/sources/gdk-pixbuf/${ver_maj}/${name}.tar.xz"; - sha256 = "ddd861747bb7c580acce7cfa3ce38c3f52a9516e66a6477988fd100c8fb9eabc"; + sha256 = "05bslhk33qpssg66n2wys9khyzwkr4am0b23dym8n67qjds9gng5"; }; setupHook = ./setup-hook.sh; diff --git a/pkgs/development/libraries/glib/default.nix b/pkgs/development/libraries/glib/default.nix index 7d61bea64e11..5c76bc3186ba 100644 --- a/pkgs/development/libraries/glib/default.nix +++ b/pkgs/development/libraries/glib/default.nix @@ -40,7 +40,7 @@ let ''; ver_maj = "2.44"; - ver_min = "0"; + ver_min = "1"; in stdenv.mkDerivation rec { @@ -48,7 +48,7 @@ stdenv.mkDerivation rec { src = fetchurl { url = "mirror://gnome/sources/glib/${ver_maj}/${name}.tar.xz"; - sha256 = "1fgmjv3yzxgbks31h42201x2izpw0sd84h8dfw0si3x00sqn5lzj"; + sha256 = "01yabrfp64i11mrks3p1gcks99lw0zm7f5vhkc53sl4amyndw4c8"; }; patches = optional stdenv.isDarwin ./darwin-compilation.patch ++ optional doCheck ./skip-timer-test.patch; diff --git a/pkgs/development/libraries/gtk+/2.x.nix b/pkgs/development/libraries/gtk+/2.x.nix index 774193cc06c8..fec9d16cf959 100644 --- a/pkgs/development/libraries/gtk+/2.x.nix +++ b/pkgs/development/libraries/gtk+/2.x.nix @@ -8,11 +8,11 @@ assert xineramaSupport -> xlibs.libXinerama != null; assert cupsSupport -> cups != null; stdenv.mkDerivation rec { - name = "gtk+-2.24.27"; + name = "gtk+-2.24.28"; src = fetchurl { url = "mirror://gnome/sources/gtk+/2.24/${name}.tar.xz"; - sha256 = "1x14rnjvqslpa1q19fp1qalz5sxds72amsgjk8m7769rwk511jr0"; + sha256 = "0mj6xn40py9r9lvzg633fal81xfwfm89d9mvz7jk4lmwk0g49imj"; }; enableParallelBuilding = true; diff --git a/pkgs/development/libraries/gtk+/3.x.nix b/pkgs/development/libraries/gtk+/3.x.nix index 252e52ee3b98..4bc31b99e828 100644 --- a/pkgs/development/libraries/gtk+/3.x.nix +++ b/pkgs/development/libraries/gtk+/3.x.nix @@ -10,7 +10,7 @@ assert cupsSupport -> cups != null; let ver_maj = "3.16"; - ver_min = "2"; + ver_min = "3"; version = "${ver_maj}.${ver_min}"; in stdenv.mkDerivation rec { @@ -18,7 +18,7 @@ stdenv.mkDerivation rec { src = fetchurl { url = "mirror://gnome/sources/gtk+/${ver_maj}/gtk+-${version}.tar.xz"; - sha256 = "1yhwg2l72l3khfkprydcjlpxjrg11ccqfc80sjl56llz3jk66fd0"; + sha256 = "195ykv53sl2gsc847wcnd79zilm1yzcc2cfjxnrakhh2dd5gshr9"; }; nativeBuildInputs = [ pkgconfig gettext gobjectIntrospection perl ]; From 539a954955a452a90cb14f8fbf08a359c1730b16 Mon Sep 17 00:00:00 2001 From: "William A. Kennington III" Date: Wed, 27 May 2015 13:23:23 -0700 Subject: [PATCH 034/259] bdb: Build with dbm --- pkgs/development/libraries/db/generic.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/pkgs/development/libraries/db/generic.nix b/pkgs/development/libraries/db/generic.nix index 013a7fd35b9d..077bd4e03a32 100644 --- a/pkgs/development/libraries/db/generic.nix +++ b/pkgs/development/libraries/db/generic.nix @@ -22,6 +22,7 @@ stdenv.mkDerivation rec { configureFlags = [ (if cxxSupport then "--enable-cxx" else "--disable-cxx") (if compat185 then "--enable-compat185" else "--disable-compat185") + "--enable-dbm" ]; preConfigure = '' From 89d9a6079cfd88b27295aeac3da355d44620548f Mon Sep 17 00:00:00 2001 From: "William A. Kennington III" Date: Tue, 26 May 2015 17:52:17 -0700 Subject: [PATCH 035/259] libmicrohttpd: 0.9.41 -> 0.9.42 --- pkgs/development/libraries/libmicrohttpd/default.nix | 5 +++-- pkgs/top-level/all-packages.nix | 5 +++-- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/pkgs/development/libraries/libmicrohttpd/default.nix b/pkgs/development/libraries/libmicrohttpd/default.nix index c7892716c9d6..d88b75440bc2 100644 --- a/pkgs/development/libraries/libmicrohttpd/default.nix +++ b/pkgs/development/libraries/libmicrohttpd/default.nix @@ -17,11 +17,11 @@ let in with stdenv.lib; stdenv.mkDerivation rec { - name = "libmicrohttpd-0.9.41"; + name = "libmicrohttpd-0.9.42"; src = fetchurl { url = "mirror://gnu/libmicrohttpd/${name}.tar.gz"; - sha256 = "0z3s3aplgxj8cj947i4rxk9wzvg68b8hbn71fyipc7aagmivx64p"; + sha256 = "0nvxmm6z6wcq1vl6l92rids0i0va184y86bkc10dl0vh6rrj0d80"; }; nativeBuildInputs = [ pkgconfig ]; @@ -33,6 +33,7 @@ stdenv.mkDerivation rec { (mkWith true "threads" "posix") (mkEnable true "doc" null) (mkEnable false "examples" null) + (mkEnable true "poll" "auto") (mkEnable true "epoll" "auto") (mkEnable doCheck "curl" null) (mkEnable hasSpdy "spdy" null) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 05d773ade45f..6c93d103f59f 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -6919,8 +6919,9 @@ let libmemcached = callPackage ../development/libraries/libmemcached { }; - libmicrohttpd = callPackage ../development/libraries/libmicrohttpd { - openssl = null; + libmicrohttpd-full = callPackage ../development/libraries/libmicrohttpd { }; + + libmicrohttpd = libmicrohttpd-full.override { gnutls = null; }; From 7141d96bde218141ed73bd82cc806d075e0d07f4 Mon Sep 17 00:00:00 2001 From: "William A. Kennington III" Date: Tue, 26 May 2015 18:00:04 -0700 Subject: [PATCH 036/259] pam: Factor out dependencies --- pkgs/os-specific/linux/pam/default.nix | 63 +++++++++++++++++--------- 1 file changed, 41 insertions(+), 22 deletions(-) diff --git a/pkgs/os-specific/linux/pam/default.nix b/pkgs/os-specific/linux/pam/default.nix index 29cfa64b22d8..96debd66e5b1 100644 --- a/pkgs/os-specific/linux/pam/default.nix +++ b/pkgs/os-specific/linux/pam/default.nix @@ -1,5 +1,16 @@ -{ stdenv, fetchurl, flex, cracklib }: +{ stdenv, fetchurl, pkgconfig +# Optional Depdencies +, cracklib ? null, libaudit ? null, db ? null +}: + +with stdenv; +let + optCracklib = shouldUsePkg cracklib; + optLibaudit = shouldUsePkg libaudit; + optDb = shouldUsePkg db; +in +with stdenv.lib; stdenv.mkDerivation rec { name = "linux-pam-${version}"; version = "1.2.0"; @@ -9,37 +20,45 @@ stdenv.mkDerivation rec { sha256 = "192y2fgf24a5qsg7rl1mzgw5axs5lg8kqamkfff2x50yjv2ym2yd"; }; - nativeBuildInputs = [ flex ]; + nativeBuildInputs = [ pkgconfig ]; + buildInputs = [ optCracklib optLibaudit optDb ]; - buildInputs = [ cracklib ]; + configureFlags = [ + (mkOther "sysconfdir" "/etc") + (mkOther "localstatedir" "/var") + (mkOther "includedir" "\${out}/include/security") + (mkEnable false "static-modules" null) + (mkEnable true "pie" null) + (mkEnable false "prelude" null) + (mkEnable false "debug" null) + (mkEnable false "pamlocking" null) + (mkEnable true "read-both-confs" null) + (mkEnable true "lckpwdf" null) + (mkWith true "xauth" "/run/current-system/sw/bin/xauth") + (mkEnable (optCracklib != null) "cracklib" null) + (mkEnable (optLibaudit != null) "audit" null) + (mkEnable (optDb != null) "db" "db") + (mkEnable true "nis" null) # TODO: Consider tirpc support here + (mkEnable false "selinux" null) + (mkEnable false "regenerate-docu" null) + ]; - crossAttrs = { - propagatedBuildInputs = [ flex.crossDrv cracklib.crossDrv ]; - preConfigure = preConfigure + '' - ar x ${flex.crossDrv}/lib/libfl.a - mv libyywrap.o libyywrap-target.o - ar x ${flex}/lib/libfl.a - mv libyywrap.o libyywrap-host.o - export LDFLAGS="$LDFLAGS $PWD/libyywrap-target.o" - sed -e 's/@CC@/gcc/' -i doc/specs/Makefile.in - ''; - postConfigure = '' - sed -e "s@ $PWD/libyywrap-target.o@ $PWD/libyywrap-host.o@" -i doc/specs/Makefile - ''; - }; + installFlags = [ + "sysconfdir=\${out}/etc" + "SCONFIGDIR=\${out}/etc/security" + ]; postInstall = '' + # Prepare unix_chkpwd for setuid wrapping mv -v $out/sbin/unix_chkpwd{,.orig} ln -sv /var/setuid-wrappers/unix_chkpwd $out/sbin/unix_chkpwd ''; - preConfigure = '' - configureFlags="$configureFlags --includedir=$out/include/security" - ''; - meta = { homepage = http://ftp.kernel.org/pub/linux/libs/pam/; description = "Pluggable Authentication Modules, a flexible mechanism for authenticating user"; - platforms = stdenv.lib.platforms.linux; + license = licenses.bsd3; + platforms = platforms.linux; + maintainers = with maintainers; [ wkennington ]; }; } From 80648d7e242bcb9e9ed544a2561c433ee22fb5aa Mon Sep 17 00:00:00 2001 From: "William A. Kennington III" Date: Thu, 28 May 2015 17:47:04 -0700 Subject: [PATCH 037/259] Use mit5 as kerberos since it is better supported --- pkgs/top-level/all-packages.nix | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 6c93d103f59f..b307a54c85ce 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -6328,9 +6328,9 @@ let hamlib = callPackage ../development/libraries/hamlib { }; - # TODO : Add MIT Kerberos and let admin choose. - # TODO : Fix kerberos on Darwin - kerberos = if stdenv.isDarwin then null else heimdal; + # TODO : Add Heimdal Kerberos and let admin choose. + # Modularize heimdal into a library first + kerberos = libkrb5; heimdal = callPackage ../development/libraries/kerberos/heimdal.nix { openldap = openldap.override { @@ -6464,9 +6464,6 @@ let kinetic-cpp-client = callPackage ../development/libraries/kinetic-cpp-client { }; krb5 = callPackage ../development/libraries/kerberos/krb5.nix { - openldap = openldap.override { - cyrus_sasl = cyrus_sasl.override { kerberos = null; }; - }; inherit (darwin) bootstrap_cmds; }; libkrb5 = krb5.override { From 4fa5cc71f2d5c5b8f6b5d71cd321d9ba6805d5cd Mon Sep 17 00:00:00 2001 From: "William A. Kennington III" Date: Thu, 28 May 2015 20:51:36 -0700 Subject: [PATCH 038/259] heimdal: No need to override openldap anymore --- pkgs/top-level/all-packages.nix | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index b307a54c85ce..8bee00851e62 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -6332,11 +6332,7 @@ let # Modularize heimdal into a library first kerberos = libkrb5; - heimdal = callPackage ../development/libraries/kerberos/heimdal.nix { - openldap = openldap.override { - cyrus_sasl = cyrus_sasl.override { kerberos = null; }; - }; - }; + heimdal = callPackage ../development/libraries/kerberos/heimdal.nix { }; harfbuzz = callPackage ../development/libraries/harfbuzz { }; harfbuzz-icu = callPackage ../development/libraries/harfbuzz { From 1e14f0a055d987ab2beb0fc943b3aab02e9dc7cb Mon Sep 17 00:00:00 2001 From: "William A. Kennington III" Date: Fri, 29 May 2015 00:36:05 -0700 Subject: [PATCH 039/259] heimdal: 1.5.3 -> 2015-05-26 --- .../libraries/kerberos/heimdal.nix | 141 +++++++++++------- pkgs/top-level/all-packages.nix | 3 + 2 files changed, 89 insertions(+), 55 deletions(-) diff --git a/pkgs/development/libraries/kerberos/heimdal.nix b/pkgs/development/libraries/kerberos/heimdal.nix index 6050891ba272..dd1f7afdf237 100644 --- a/pkgs/development/libraries/kerberos/heimdal.nix +++ b/pkgs/development/libraries/kerberos/heimdal.nix @@ -1,95 +1,126 @@ -{ stdenv, fetchurl, pkgconfig, flex, yacc +{ stdenv, fetchFromGitHub, autoreconfHook, pkgconfig, python, perl, yacc, flex +, texinfo ? null, perlPackages # Optional Dependencies , openldap ? null, libcap_ng ? null, sqlite ? null, openssl ? null, db ? null , readline ? null, libedit ? null, pam ? null -#, readline, openldap, libcap_ng -#, sqlite, db, ncurses, openssl, cyrus_sasl +# Extra Args +, prefix ? "" }: with stdenv; -with stdenv.lib; let - optOpenldap = shouldUsePkg openldap; + libOnly = prefix == "lib"; + + optTexinfo = if libOnly then null else shouldUsePkg texinfo; + optOpenldap = if libOnly then null else shouldUsePkg openldap; optLibcap_ng = shouldUsePkg libcap_ng; optSqlite = shouldUsePkg sqlite; optOpenssl = shouldUsePkg openssl; optDb = shouldUsePkg db; optReadline = shouldUsePkg readline; optLibedit = shouldUsePkg libedit; - optPam = shouldUsePkg pam; -in -stdenv.mkDerivation rec { - name = "heimdal-1.5.3"; + optPam = if libOnly then null else shouldUsePkg pam; - src = fetchurl { - urls = [ - "http://www.h5l.org/dist/src/${name}.tar.gz" - "http://ftp.pdc.kth.se/pub/heimdal/src/${name}.tar.gz" - ]; - sha256 = "19gypf9vzfrs2bw231qljfl4cqc1riyg0ai0xmm1nd1wngnpphma"; + lineParserStr = if optLibedit != null then "libedit" + else if optReadline != null then "readline" + else "no"; + + lineParserInputs = { + "libedit" = [ optLibedit ]; + "readline" = [ optReadline ]; + "no" = [ ]; + }.${lineParserStr}; +in +with stdenv.lib; +stdenv.mkDerivation rec { + name = "${prefix}heimdal-${version}"; + version = "2015-05-26"; + + src = fetchFromGitHub { + owner = "heimdal"; + repo = "heimdal"; + rev = "50e2a5ce95f42d4963d359c27a832e61991a12b1"; + sha256 = "10104vm192r1i7ccs1fan16h9n31saaswsmywmrb0cxc7jv3rj8x"; }; - nativeBuildInputs = [ pkgconfig flex yacc ]; + nativeBuildInputs = [ autoreconfHook pkgconfig python perl yacc flex optTexinfo ] + ++ (with perlPackages; [ JSON ]); buildInputs = [ - optOpenldap optLibcap_ng optSqlite optOpenssl optDb optReadline optLibedit - optPam - ]; + optOpenldap optLibcap_ng optSqlite optOpenssl optDb optPam + ] ++ lineParserInputs; configureFlags = [ - (mkOther "sysconfdir" "/etc") - (mkOther "localstatedir" "/var") - (mkWith (optOpenldap != null) "openldap" optOpenldap) - (mkEnable (optOpenldap != null) "hdb-openldap-module" null) - (mkEnable true "pk-init" null) - (mkEnable true "digest" null) - (mkEnable true "kx509" null) - (mkWith (optLibcap_ng != null) "capng" null) - (mkWith (optSqlite != null) "sqlite3" sqlite) - (mkEnable (optSqlite != null) "sqlite-cache" null) - (mkWith false "libintl" null) # TODO libintl fix - (mkWith true "hdbdir" "/var/lib/heimdal") - (mkWith (optOpenssl != null) "openssl" optOpenssl) - (mkEnable true "pthread-support" null) - (mkEnable false "dce" null) # TODO: Add support - (mkEnable true "afs-support" null) - (mkWith (optDb != null) "berkeley-db" optDb) - (mkEnable false "nmdb" null) - (mkEnable false "developer" null) - (mkWith true "ipv6" null) - (mkEnable false "socket-wrapper" null) - (mkEnable true "otp" null) - (mkEnable false "osfc2" null) - (mkEnable true "mmap" null) - (mkEnable true "afs-string-to-key" null) - (mkWith (optReadline != null) "readline" optReadline) - (mkWith (optLibedit != null) "libedit" optLibedit) - (mkWith false "x" null) - (mkEnable true "kcm" null) - (mkEnable true "heimdal-documentation" null) + (mkOther "sysconfdir" "/etc") + (mkOther "localstatedir" "/var") + (mkWith (optOpenldap != null) "openldap" optOpenldap) + (mkEnable (optOpenldap != null) "hdb-openldap-module" null) + (mkEnable true "pk-init" null) + (mkEnable true "digest" null) + (mkEnable true "kx509" null) + (mkWith (optLibcap_ng != null) "capng" null) + (mkWith (optSqlite != null) "sqlite3" sqlite) + (mkEnable (optSqlite != null) "sqlite-cache" null) + (mkWith false "libintl" null) # TODO libintl fix + (mkWith true "hdbdir" "/var/lib/heimdal") + (mkEnable false "dce" null) # TODO: Add support + (mkEnable (!libOnly) "afs-support" null) + (mkEnable true "mmap" null) + (mkEnable (!libOnly) "afs-string-to-key" null) + (mkWith (lineParserStr == "readline") "readline" optReadline) + (mkWith (lineParserStr == "libedit") "libedit" optLibedit) + (mkWith false "hesiod" null) + (mkEnable (!libOnly) "kcm" null) + (mkEnable (optTexinfo != null) "heimdal-documentation" null) + (mkWith true "ipv6" null) + (mkEnable true "pthread-support" null) + (mkEnable false "osfc2" null) + (mkEnable false "socket-wrapper" null) + (mkEnable (!libOnly) "otp" null) + (mkEnable false "developer" null) + (mkWith (optDb != null) "berkeley-db" optDb) + (mkEnable true "ndbm-db" null) + (mkEnable false "mdb-db" null) + (mkWith (optOpenssl != null) "openssl" optOpenssl) ]; - preConfigure = '' - export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -pthread" + buildPhase = optionalString libOnly '' + (cd include; make -j $NIX_BUILD_CORES) + (cd lib; make -j $NIX_BUILD_CORES) + (cd tools; make -j $NIX_BUILD_CORES) + (cd include/hcrypto; make -j $NIX_BUILD_CORES) + (cd lib/hcrypto; make -j $NIX_BUILD_CORES) + ''; + + installPhase = optionalString libOnly '' + (cd include; make -j $NIX_BUILD_CORES install) + (cd lib; make -j $NIX_BUILD_CORES install) + (cd tools; make -j $NIX_BUILD_CORES install) + (cd include/hcrypto; make -j $NIX_BUILD_CORES install) + (cd lib/hcrypto; make -j $NIX_BUILD_CORES install) + rm -rf $out/{libexec,sbin,share} + find $out/bin -type f | grep -v 'krb5-config' | xargs rm ''; # We need to build hcrypt for applications like samba postBuild = '' - (cd lib/hcrypto; make) - (cd include/hcrypto; make) + (cd include/hcrypto; make -j $NIX_BUILD_CORES) + (cd lib/hcrypto; make -j $NIX_BUILD_CORES) ''; postInstall = '' # Install hcrypto - (cd lib/hcrypto; make install) - (cd include/hcrypto; make install) + (cd include/hcrypto; make -j $NIX_BUILD_CORES install) + (cd lib/hcrypto; make -j $NIX_BUILD_CORES install) # Doesn't succeed with --libexec=$out/sbin, so mv "$out/libexec/"* $out/sbin/ rmdir $out/libexec ''; + enableParallelBuilding = true; + meta = { description = "an implementation of Kerberos 5 (and some more stuff) largely written in Sweden"; license = licenses.bsd3; diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 8bee00851e62..cbac4657cf2a 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -6333,6 +6333,9 @@ let kerberos = libkrb5; heimdal = callPackage ../development/libraries/kerberos/heimdal.nix { }; + libheimdal = heimdal.override { + prefix = "lib"; + }; harfbuzz = callPackage ../development/libraries/harfbuzz { }; harfbuzz-icu = callPackage ../development/libraries/harfbuzz { From 06c9915ed1db6ab505b869d240f75a6d53f2fcc9 Mon Sep 17 00:00:00 2001 From: "William A. Kennington III" Date: Fri, 29 May 2015 00:46:32 -0700 Subject: [PATCH 040/259] Use libheimdal instead of heimdal --- pkgs/development/libraries/libssh/default.nix | 8 ++++---- pkgs/top-level/all-packages.nix | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/pkgs/development/libraries/libssh/default.nix b/pkgs/development/libraries/libssh/default.nix index 8ea2ac72da0b..a9117556a7f4 100644 --- a/pkgs/development/libraries/libssh/default.nix +++ b/pkgs/development/libraries/libssh/default.nix @@ -1,7 +1,7 @@ { stdenv, fetchurl, pkgconfig, cmake # Optional Dependencies -, heimdal ? null, zlib ? null, libsodium ? null +, libheimdal ? null, zlib ? null, libsodium ? null # Crypto Dependencies , openssl ? null, libgcrypt ? null @@ -19,7 +19,7 @@ let none = null; }.${cryptoStr}; - optHeimdal = shouldUsePkg heimdal; + optLibheimdal = shouldUsePkg libheimdal; optZlib = shouldUsePkg zlib; optLibsodium = shouldUsePkg libsodium; in @@ -42,7 +42,7 @@ stdenv.mkDerivation rec { ''; cmakeFlags = [ - "-DWITH_GSSAPI=${if optHeimdal != null then "ON" else "OFF"}" + "-DWITH_GSSAPI=${if optLibheimdal != null then "ON" else "OFF"}" "-DWITH_ZLIB=${if optZlib != null then "ON" else "OFF"}" "-DWITH_SSH1=OFF" "-DWITH_SFTP=ON" @@ -64,7 +64,7 @@ stdenv.mkDerivation rec { ]; nativeBuildInputs = [ pkgconfig cmake ]; - buildInputs = [ optHeimdal optZlib optLibsodium crypto ]; + buildInputs = [ optLibheimdal optZlib optLibsodium crypto ]; meta = with stdenv.lib; { description = "SSH client library"; diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index cbac4657cf2a..afe7947e4f13 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -8973,7 +8973,7 @@ let samba4 = callPackage ../servers/samba/4.x.nix { python = python2; - kerberos = heimdal; + kerberos = libheimdal; gnutls = gnutls33; cups = if stdenv.isDarwin then null else cups; pam = if stdenv.isDarwin then null else pam; From 6b17264e08eaa96d0a1b24f635769ea80d4e8b16 Mon Sep 17 00:00:00 2001 From: "William A. Kennington III" Date: Fri, 29 May 2015 10:53:57 -0700 Subject: [PATCH 041/259] samba: Use built in kerberos --- pkgs/top-level/all-packages.nix | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index afe7947e4f13..4f6b49902864 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -8973,7 +8973,8 @@ let samba4 = callPackage ../servers/samba/4.x.nix { python = python2; - kerberos = libheimdal; + # Samba is tightly coupled to kerberos so let it provide its own + kerberos = null; gnutls = gnutls33; cups = if stdenv.isDarwin then null else cups; pam = if stdenv.isDarwin then null else pam; From 7b1336d2f122dc67c27786eb8122afb4a185f839 Mon Sep 17 00:00:00 2001 From: "William A. Kennington III" Date: Fri, 29 May 2015 15:21:22 -0700 Subject: [PATCH 042/259] heimdal: Remove more references --- pkgs/applications/networking/browsers/firefox-bin/default.nix | 4 ++-- pkgs/applications/office/zotero/firefox-bin/default.nix | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/pkgs/applications/networking/browsers/firefox-bin/default.nix b/pkgs/applications/networking/browsers/firefox-bin/default.nix index 998ea95e8da6..4da970528d5a 100644 --- a/pkgs/applications/networking/browsers/firefox-bin/default.nix +++ b/pkgs/applications/networking/browsers/firefox-bin/default.nix @@ -30,7 +30,7 @@ , nspr , nss , pango -, heimdal +, libheimdal , libpulseaudio , systemd }: @@ -102,7 +102,7 @@ stdenv.mkDerivation { nspr nss pango - heimdal + libheimdal libpulseaudio systemd ] + ":" + stdenv.lib.makeSearchPath "lib64" [ diff --git a/pkgs/applications/office/zotero/firefox-bin/default.nix b/pkgs/applications/office/zotero/firefox-bin/default.nix index 52751908fa71..edf56c3eb4db 100644 --- a/pkgs/applications/office/zotero/firefox-bin/default.nix +++ b/pkgs/applications/office/zotero/firefox-bin/default.nix @@ -30,7 +30,7 @@ , nspr , nss , pango -, heimdal +, libheimdal , libpulseaudio , systemd }: @@ -102,7 +102,7 @@ stdenv.mkDerivation { nspr nss pango - heimdal + libheimdal libpulseaudio systemd ] + ":" + stdenv.lib.makeSearchPath "lib64" [ From afa5859716914cce8e3d8b13a6692c100bd96723 Mon Sep 17 00:00:00 2001 From: "William A. Kennington III" Date: Fri, 29 May 2015 16:08:27 -0700 Subject: [PATCH 043/259] openssl: Cleanup some old, untested patches --- .../openssl/cert-file-path-max.patch | 34 ---------------- .../libraries/openssl/cert-file.patch | 39 ------------------- .../development/libraries/openssl/default.nix | 25 +----------- pkgs/development/libraries/openssl/gnu.patch | 25 ------------ .../libraries/openssl/hurd-target.patch | 12 ------ .../libraries/openssl/kfreebsd-gnu.patch | 36 ----------------- 6 files changed, 1 insertion(+), 170 deletions(-) delete mode 100644 pkgs/development/libraries/openssl/cert-file-path-max.patch delete mode 100644 pkgs/development/libraries/openssl/cert-file.patch delete mode 100644 pkgs/development/libraries/openssl/gnu.patch delete mode 100644 pkgs/development/libraries/openssl/hurd-target.patch delete mode 100644 pkgs/development/libraries/openssl/kfreebsd-gnu.patch diff --git a/pkgs/development/libraries/openssl/cert-file-path-max.patch b/pkgs/development/libraries/openssl/cert-file-path-max.patch deleted file mode 100644 index 50621c5cb820..000000000000 --- a/pkgs/development/libraries/openssl/cert-file-path-max.patch +++ /dev/null @@ -1,34 +0,0 @@ -This patch, to be applied after `cert-file.patch', fixes compilation -on GNU/Hurd where `PATH_MAX' is not defined. - -diff -ubB --show-c-function openssl-1.0.0e/crypto/x509/x509_def.c.orig openssl-1.0.0e/crypto/x509/x509_def.c ---- openssl-1.0.0e/crypto/x509/x509_def.c.orig 2012-01-06 00:08:48.000000000 +0100 -+++ openssl-1.0.0e/crypto/x509/x509_def.c 2012-01-06 00:11:29.000000000 +0100 -@@ -58,6 +58,7 @@ - - #include - #include -+#include - #include - #include - #include -@@ -76,14 +77,16 @@ const char *X509_get_default_cert_dir(vo - - const char *X509_get_default_cert_file(void) - { -- static char buf[PATH_MAX] = X509_CERT_FILE; -+ static char *buf; - static int init = 0; - if (!init) { - init = 1; - char * s = getenv("OPENSSL_X509_CERT_FILE"); - if (s && getuid() == geteuid()) { -- strncpy(buf, s, sizeof(buf)); -- buf[sizeof(buf) - 1] = 0; -+ buf = strdup(s); -+ } -+ if (!s) { -+ buf = strdup(X509_CERT_FILE); - } - } - return buf; diff --git a/pkgs/development/libraries/openssl/cert-file.patch b/pkgs/development/libraries/openssl/cert-file.patch deleted file mode 100644 index e6e661112015..000000000000 --- a/pkgs/development/libraries/openssl/cert-file.patch +++ /dev/null @@ -1,39 +0,0 @@ -diff -ru openssl-1.0.1m-orig/crypto/x509/x509_def.c openssl-1.0.1m/crypto/x509/x509_def.c ---- openssl-1.0.1m-orig/crypto/x509/x509_def.c 2015-03-19 14:19:00.000000000 +0100 -+++ openssl-1.0.1m/crypto/x509/x509_def.c 2015-03-19 15:50:44.676683616 +0100 -@@ -57,6 +57,10 @@ - */ - - #include -+#include -+#include -+#include -+#include - #include "cryptlib.h" - #include - #include -@@ -78,7 +82,23 @@ - - const char *X509_get_default_cert_file(void) - { -- return (X509_CERT_FILE); -+ static char buf[PATH_MAX] = X509_CERT_FILE; -+ static int init = 0; -+ if (!init) { -+ init = 1; -+ char * s = getenv("OPENSSL_X509_CERT_FILE"); -+ if (s) { -+#ifndef OPENSSL_SYS_WINDOWS -+ if (getuid() == geteuid()) { -+#endif -+ strncpy(buf, s, sizeof(buf)); -+ buf[sizeof(buf) - 1] = 0; -+#ifndef OPENSSL_SYS_WINDOWS -+ } -+#endif -+ } -+ } -+ return buf; - } - - const char *X509_get_default_cert_dir_env(void) diff --git a/pkgs/development/libraries/openssl/default.nix b/pkgs/development/libraries/openssl/default.nix index 7f428fd584b9..68ddcb68f475 100644 --- a/pkgs/development/libraries/openssl/default.nix +++ b/pkgs/development/libraries/openssl/default.nix @@ -10,30 +10,7 @@ let patchesCross = isCross: let isDarwin = stdenv.isDarwin || (isCross && stdenv.cross.libc == "libSystem"); - in - [ # Allow the location of the X509 certificate file (the CA - # bundle) to be set through the environment variable - # ‘OPENSSL_X509_CERT_FILE’. This is necessary because the - # default location ($out/ssl/cert.pem) doesn't exist, and - # hardcoding something like /etc/ssl/cert.pem is impure and - # cannot be overriden per-process. For security, the - # environment variable is ignored for setuid binaries. - # FIXME: drop this patch; it really isn't necessary, because - # OpenSSL already supports a ‘SSL_CERT_FILE’ variable. - ./cert-file.patch - ] - - ++ stdenv.lib.optionals (isCross && opensslCrossSystem == "hurd-x86") - [ ./cert-file-path-max.patch # merge with `cert-file.patch' eventually - ./gnu.patch # submitted upstream - ] - - ++ stdenv.lib.optionals (stdenv.system == "x86_64-kfreebsd-gnu") - [ ./gnu.patch - ./kfreebsd-gnu.patch - ] - - ++ stdenv.lib.optional isDarwin ./darwin-arch.patch; + in stdenv.lib.optional isDarwin ./darwin-arch.patch; extraPatches = stdenv.lib.optional stdenv.isCygwin ./1.0.1-cygwin64.patch; in diff --git a/pkgs/development/libraries/openssl/gnu.patch b/pkgs/development/libraries/openssl/gnu.patch deleted file mode 100644 index 3cc6d049c944..000000000000 --- a/pkgs/development/libraries/openssl/gnu.patch +++ /dev/null @@ -1,25 +0,0 @@ -Patch to fix compilation on GNU/Hurd and GNU/kFreeBSD. - ---- openssl-1.0.0e/Configure 2012-01-06 00:39:49.000000000 +0100 -+++ openssl-1.0.0e/Configure 2012-01-06 00:39:51.000000000 +0100 -@@ -563,7 +563,7 @@ my %table=( - "newsos4-gcc","gcc:-O -DB_ENDIAN::(unknown):NEWS4:-lmld -liberty:BN_LLONG RC4_CHAR RC4_CHUNK DES_PTR DES_RISC1 DES_UNROLL BF_PTR::::", - - ##### GNU Hurd --"hurd-x86", "gcc:-DL_ENDIAN -DTERMIOS -O3 -fomit-frame-pointer -march=i486 -Wall::-D_REENTRANT::-ldl:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}:dlfcn:linux-shared:-fPIC", -+"hurd-x86", "gcc:-DL_ENDIAN -DTERMIOS -O3 -fomit-frame-pointer -march=i486 -Wall::-D_REENTRANT::-ldl:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", - - ##### OS/2 EMX - "OS2-EMX", "gcc::::::::", - ---- openssl-1.0.0e/crypto/dso/dso_dlfcn.c 2012-01-06 00:05:47.000000000 +0100 -+++ openssl-1.0.0e/crypto/dso/dso_dlfcn.c 2012-01-06 00:21:05.000000000 +0100 -@@ -60,7 +60,7 @@ - that handle _GNU_SOURCE and other similar macros. Defining it later - is simply too late, because those headers are protected from re- - inclusion. */ --#ifdef __linux -+#if defined __linux || defined __GNU__ || defined __GLIBC__ - # ifndef _GNU_SOURCE - # define _GNU_SOURCE /* make sure dladdr is declared */ - # endif diff --git a/pkgs/development/libraries/openssl/hurd-target.patch b/pkgs/development/libraries/openssl/hurd-target.patch deleted file mode 100644 index 399a37a69ed9..000000000000 --- a/pkgs/development/libraries/openssl/hurd-target.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -Naur openssl-1.0.0d-orig/Configure openssl-1.0.0d/Configure ---- openssl-1.0.0d-orig/Configure 2010-11-30 17:19:26.000000000 -0500 -+++ openssl-1.0.0d/Configure 2011-11-16 13:52:57.614416683 -0500 -@@ -563,7 +563,7 @@ - "newsos4-gcc","gcc:-O -DB_ENDIAN::(unknown):NEWS4:-lmld -liberty:BN_LLONG RC4_CHAR RC4_CHUNK DES_PTR DES_RISC1 DES_UNROLL BF_PTR::::", - - ##### GNU Hurd --"hurd-x86", "gcc:-DL_ENDIAN -DTERMIOS -O3 -fomit-frame-pointer -march=i486 -Wall::-D_REENTRANT::-ldl:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}:dlfcn:linux-shared:-fPIC", -+"hurd-x86","gcc:-DL_ENDIAN -DTERMIOS -O3 -Wa,--noexecstack -g -mtune=i486 -Wall::-D_REENTRANT::-ldl:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", - - ##### OS/2 EMX - "OS2-EMX", "gcc::::::::", diff --git a/pkgs/development/libraries/openssl/kfreebsd-gnu.patch b/pkgs/development/libraries/openssl/kfreebsd-gnu.patch deleted file mode 100644 index 66cedf746ba5..000000000000 --- a/pkgs/development/libraries/openssl/kfreebsd-gnu.patch +++ /dev/null @@ -1,36 +0,0 @@ -Allow compilation on GNU/kFreeBSD. Ideally, there'd be a single way to process -all glibc-based system, but the build system is soooo broken. - ---- openssl-1.0.0i/config -+++ openssl-1.0.0i/config -@@ -170,6 +170,10 @@ case "${SYSTEM}:${RELEASE}:${VERSION}:${ - echo "${MACHINE}-whatever-linux1"; exit 0 - ;; - -+ GNU/kFreeBSD*) -+ echo "kfreebsd-gnu"; exit 0; -+ ;; -+ - GNU*) - echo "hurd-x86"; exit 0; - ;; -@@ -810,6 +814,7 @@ case "$GUESSOS" in - beos-*) OUT="$GUESSOS" ;; - x86pc-*-qnx6) OUT="QNX6-i386" ;; - *-*-qnx6) OUT="QNX6" ;; -+ kfreebsd-gnu) OUT="kfreebsd-gnu";; - *) OUT=`echo $GUESSOS | awk -F- '{print $3}'`;; - esac - - ---- openssl-1.0.0i/Configure -+++ openssl-1.0.0i/Configure -@@ -565,6 +565,9 @@ my %table=( - ##### GNU Hurd - "hurd-x86", "gcc:-DL_ENDIAN -DTERMIOS -O3 -fomit-frame-pointer -march=i486 -Wall::-D_REENTRANT::-ldl:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}:dlfcn:linux-shared:-fPIC", - -+##### GNU/kFreeBSD on x86_64, copied from "linux-x86_64" -+"kfreebsd-gnu", "gcc:-m64 -DL_ENDIAN -DTERMIOS -O3 -Wall -DMD32_REG_T=int::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHUNK DES_INT DES_UNROLL:${x86_64_asm}:elf:dlfcn:linux-shared:-fPIC:-m64:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR):::64", -+ - ##### OS/2 EMX - "OS2-EMX", "gcc::::::::", From 867d2c5c464fd87268f71942beded17d7e1e5b9c Mon Sep 17 00:00:00 2001 From: "William A. Kennington III" Date: Sun, 31 May 2015 15:48:17 -0700 Subject: [PATCH 044/259] openssl: Remove References to OPENSSL_X509_CERT_FILE --- nixos/modules/programs/venus.nix | 2 +- nixos/modules/security/ca.nix | 2 -- .../cluster/panamax/api/default.nix | 1 - .../instant-messengers/tkabber/default.nix | 2 +- .../git-and-tools/git/cert-path.patch | 2 +- .../development/libraries/openssl/1.0.2.x.nix | 25 +------------------ .../lwp-protocol-https-cert-file.patch | 6 ++--- 7 files changed, 7 insertions(+), 33 deletions(-) diff --git a/nixos/modules/programs/venus.nix b/nixos/modules/programs/venus.nix index 2b70a795f4fd..3b5ae07e82f7 100644 --- a/nixos/modules/programs/venus.nix +++ b/nixos/modules/programs/venus.nix @@ -166,7 +166,7 @@ in script = "exec venus-planet ${configFile}"; serviceConfig.User = "${cfg.user}"; serviceConfig.Group = "${cfg.group}"; - environment.OPENSSL_X509_CERT_FILE = "/etc/ssl/certs/ca-bundle.crt"; + environment.SSL_CERT_FILE = "/etc/ssl/certs/ca-bundle.crt"; startAt = cfg.dates; }; diff --git a/nixos/modules/security/ca.nix b/nixos/modules/security/ca.nix index 595b9476fa5f..dec5a62dcf04 100644 --- a/nixos/modules/security/ca.nix +++ b/nixos/modules/security/ca.nix @@ -66,8 +66,6 @@ in environment.sessionVariables = { SSL_CERT_FILE = "/etc/ssl/certs/ca-certificates.crt"; - # FIXME: unneeded - remove eventually. - OPENSSL_X509_CERT_FILE = "/etc/ssl/certs/ca-certificates.crt"; # FIXME: unneeded - remove eventually. GIT_SSL_CAINFO = "/etc/ssl/certs/ca-certificates.crt"; }; diff --git a/pkgs/applications/networking/cluster/panamax/api/default.nix b/pkgs/applications/networking/cluster/panamax/api/default.nix index dae0315a31b2..8bb19cb3eb89 100644 --- a/pkgs/applications/networking/cluster/panamax/api/default.nix +++ b/pkgs/applications/networking/cluster/panamax/api/default.nix @@ -62,7 +62,6 @@ stdenv.mkDerivation rec { --prefix "PATH" : "$out/share/panamax-api/bin:${env.ruby}/bin:$PATH" \ --prefix "HOME" : "$out/share/panamax-api" \ --prefix "GEM_HOME" : "${env}/${env.ruby.gemPath}" \ - --prefix "OPENSSL_X509_CERT_FILE" : "${cacert}/ca-bundle.crt" \ --prefix "SSL_CERT_FILE" : "${cacert}/ca-bundle.crt" \ --prefix "GEM_PATH" : "$out/share/panamax-api:${bundler}/${env.ruby.gemPath}" ''; diff --git a/pkgs/applications/networking/instant-messengers/tkabber/default.nix b/pkgs/applications/networking/instant-messengers/tkabber/default.nix index 2b3703bc2799..d0cc333c71b6 100644 --- a/pkgs/applications/networking/instant-messengers/tkabber/default.nix +++ b/pkgs/applications/networking/instant-messengers/tkabber/default.nix @@ -43,7 +43,7 @@ in mkTkabber (main // { postPatch = '' substituteInPlace login.tcl --replace \ "custom::defvar loginconf(sslcacertstore) \"\"" \ - "custom::defvar loginconf(sslcacertstore) \$env(OPENSSL_X509_CERT_FILE)" + "custom::defvar loginconf(sslcacertstore) \$env(SSL_CERT_FILE)" '' + optionalString (theme != null) '' themePath="$out/share/doc/tkabber/examples/xrdb/${theme}.xrdb" sed -i '/^if.*load_default_xrdb/,/^}$/ { diff --git a/pkgs/applications/version-management/git-and-tools/git/cert-path.patch b/pkgs/applications/version-management/git-and-tools/git/cert-path.patch index 846752f5bfe3..7d5dca9abfeb 100644 --- a/pkgs/applications/version-management/git-and-tools/git/cert-path.patch +++ b/pkgs/applications/version-management/git-and-tools/git/cert-path.patch @@ -5,7 +5,7 @@ diff -ru -x '*~' git-1.9.2-orig/git-send-email.perl git-1.9.2/git-send-email.per return; } -+ $smtp_ssl_cert_path //= $ENV{'OPENSSL_X509_CERT_FILE'}; ++ $smtp_ssl_cert_path //= $ENV{'SSL_CERT_FILE'}; + if (!defined $smtp_ssl_cert_path) { # use the OpenSSL defaults diff --git a/pkgs/development/libraries/openssl/1.0.2.x.nix b/pkgs/development/libraries/openssl/1.0.2.x.nix index 18c533ea1886..a1645189161a 100644 --- a/pkgs/development/libraries/openssl/1.0.2.x.nix +++ b/pkgs/development/libraries/openssl/1.0.2.x.nix @@ -10,30 +10,7 @@ let patchesCross = isCross: let isDarwin = stdenv.isDarwin || (isCross && stdenv.cross.libc == "libSystem"); - in - [ # Allow the location of the X509 certificate file (the CA - # bundle) to be set through the environment variable - # ‘OPENSSL_X509_CERT_FILE’. This is necessary because the - # default location ($out/ssl/cert.pem) doesn't exist, and - # hardcoding something like /etc/ssl/cert.pem is impure and - # cannot be overriden per-process. For security, the - # environment variable is ignored for setuid binaries. - # FIXME: drop this patch; it really isn't necessary, because - # OpenSSL already supports a ‘SSL_CERT_FILE’ variable. - ./cert-file.patch - ] - - ++ stdenv.lib.optionals (isCross && opensslCrossSystem == "hurd-x86") - [ ./cert-file-path-max.patch # merge with `cert-file.patch' eventually - ./gnu.patch # submitted upstream - ] - - ++ stdenv.lib.optionals (stdenv.system == "x86_64-kfreebsd-gnu") - [ ./gnu.patch - ./kfreebsd-gnu.patch - ] - - ++ stdenv.lib.optional isDarwin ./darwin-arch.patch; + in stdenv.lib.optional isDarwin ./darwin-arch.patch; extraPatches = stdenv.lib.optional stdenv.isCygwin ./1.0.1-cygwin64.patch; in diff --git a/pkgs/development/perl-modules/lwp-protocol-https-cert-file.patch b/pkgs/development/perl-modules/lwp-protocol-https-cert-file.patch index c0fa85ecce87..4a4b49a829d2 100644 --- a/pkgs/development/perl-modules/lwp-protocol-https-cert-file.patch +++ b/pkgs/development/perl-modules/lwp-protocol-https-cert-file.patch @@ -1,4 +1,4 @@ -Use $OPENSSL_X509_CERT_FILE to get the CA certificates. +Use $SSL_CERT_FILE to get the CA certificates. diff -ru -x '*~' LWP-Protocol-https-6.02-orig/lib/LWP/Protocol/https.pm LWP-Protocol-https-6.02/lib/LWP/Protocol/https.pm --- LWP-Protocol-https-6.02-orig/lib/LWP/Protocol/https.pm 2011-03-27 13:54:01.000000000 +0200 @@ -7,8 +7,8 @@ diff -ru -x '*~' LWP-Protocol-https-6.02-orig/lib/LWP/Protocol/https.pm LWP-Prot } if ($ssl_opts{SSL_verify_mode}) { unless (exists $ssl_opts{SSL_ca_file} || exists $ssl_opts{SSL_ca_path}) { -+ if (defined $ENV{'OPENSSL_X509_CERT_FILE'}) { -+ $ssl_opts{SSL_ca_file} = $ENV{'OPENSSL_X509_CERT_FILE'}; ++ if (defined $ENV{'SSL_CERT_FILE'}) { ++ $ssl_opts{SSL_ca_file} = $ENV{'SSL_CERT_FILE'}; + } + } + unless (exists $ssl_opts{SSL_ca_file} || exists $ssl_opts{SSL_ca_path}) { From 3aee39bb83337b586d0be702eb5dababc5f7ef29 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Tue, 11 Jun 2013 12:39:32 +0200 Subject: [PATCH 045/259] openssl: Fix removal of the ssl/misc scripts MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This drops the dependency of $out on Perl. (cherry picked from commit a5fb18473e4178221e6a7a2264308678bd8234e3) Signed-off-by: Domen Kožar Conflicts: pkgs/development/libraries/openssl/default.nix --- pkgs/development/libraries/openssl/default.nix | 3 +++ 1 file changed, 3 insertions(+) diff --git a/pkgs/development/libraries/openssl/default.nix b/pkgs/development/libraries/openssl/default.nix index 68ddcb68f475..d475f7ae8331 100644 --- a/pkgs/development/libraries/openssl/default.nix +++ b/pkgs/development/libraries/openssl/default.nix @@ -58,6 +58,9 @@ stdenv.mkDerivation { if [ -n "$(echo $out/lib/*.so $out/lib/*.dylib)" ]; then rm $out/lib/*.a fi + + # remove dependency on Perl at runtime + rm -rf $out/etc/ssl/misc ''; # */ crossAttrs = { From e7f1038798d99beeda326aee016e2f84dca15fd8 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Mon, 1 Jun 2015 20:09:31 +0200 Subject: [PATCH 046/259] Fix typo in last merge --- pkgs/development/tools/build-managers/cmake/default.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/pkgs/development/tools/build-managers/cmake/default.nix b/pkgs/development/tools/build-managers/cmake/default.nix index 02847c749bff..27e7a884eaf7 100644 --- a/pkgs/development/tools/build-managers/cmake/default.nix +++ b/pkgs/development/tools/build-managers/cmake/default.nix @@ -51,6 +51,7 @@ stdenv.mkDerivation rec { [ "--docdir=/share/doc/${name}" "--mandir=/share/man" "--no-system-jsoncpp" + ] ++ optional (!stdenv.isCygwin) "--system-libs" ++ optional useQt4 "--qt-gui" ++ ["--"] From 779ab6bfc79680d8d94c9685ae9f0f3fb42585bd Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Mon, 1 Jun 2015 20:38:19 +0200 Subject: [PATCH 047/259] ncurses: Revert to normal style Also re-enable building shared libraries on Mac OS X as these worked fine in the past. --- .../development/libraries/ncurses/default.nix | 63 +++++-------------- 1 file changed, 14 insertions(+), 49 deletions(-) diff --git a/pkgs/development/libraries/ncurses/default.nix b/pkgs/development/libraries/ncurses/default.nix index f0519fa981df..19f0ecb122dc 100644 --- a/pkgs/development/libraries/ncurses/default.nix +++ b/pkgs/development/libraries/ncurses/default.nix @@ -1,19 +1,14 @@ -{ stdenv, fetchurl +{ lib, stdenv, fetchurl -# Optional Dependencies -, gpm ? null +, mouseSupport ? false +, unicode ? true + +, gpm # Extra Options , abiVersion ? "5" -, unicode ? true }: -with stdenv.lib; -let - buildShared = !stdenv.isDarwin; - - optGpm = stdenv.shouldUsePkg gpm; -in stdenv.mkDerivation rec { name = "ncurses-5.9"; @@ -24,41 +19,11 @@ stdenv.mkDerivation rec { patches = [ ./clang.patch ]; - buildInputs = [ optGpm ]; + configureFlags = + [ "--with-shared" "--without-debug" "--enable-pc-files" "--enable-symlinks" ] + ++ lib.optional unicode "--enable-widec"; - configureFlags = [ - (mkWith true "abi-version" abiVersion) - (mkWith true "cxx" null) - (mkWith true "cxx-binding" null) - (mkWith false "ada" null) - (mkWith true "manpages" null) - (mkWith true "progs" null) - (mkWith doCheck "tests" null) - (mkWith true "curses-h" null) - (mkEnable true "pc-files" null) - (mkWith buildShared "shared" null) - (mkWith true "normal" null) - (mkWith false "debug" null) - (mkWith false "termlib" null) - (mkWith false "ticlib" null) - (mkWith optGpm "gpm" null) - (mkEnable true "overwrite" null) - (mkEnable true "database" null) - (mkWith true "xterm-new" null) - (mkEnable true "symlinks" null) - (mkEnable unicode "widec" null) - (mkEnable true "ext-colors" null) - (mkEnable true "ext-mouse" null) - ] ++ stdenv.lib.optionals stdenv.isCygwin [ - "--enable-sp-funcs" - "--enable-term-driver" - "--enable-const" - "--enable-ext-colors" - "--enable-ext-mouse" - "--enable-reentrant" - "--enable-colorfgbg" - "--enable-tcap-names" - ]; + buildInputs = lib.optional (mouseSupport && stdenv.isLinux) gpm; # PKG_CONFIG_LIBDIR is where the *.pc files will be installed. If this # directory doesn't exist, the configure script will disable installation of @@ -69,7 +34,7 @@ stdenv.mkDerivation rec { preConfigure = '' export PKG_CONFIG_LIBDIR="$out/lib/pkgconfig" mkdir -p "$PKG_CONFIG_LIBDIR" - '' + stdenv.lib.optionalString stdenv.isCygwin '' + '' + lib.optionalString stdenv.isCygwin '' sed -i -e 's,LIB_SUFFIX="t,LIB_SUFFIX=",' configure ''; @@ -106,7 +71,7 @@ stdenv.mkDerivation rec { # Create curses compatability ln -svf libncursesw.so $out/lib/libcursesw.so ln -svf libncursesw.so $out/lib/libcurses.so - '' + stdenv.lib.optionalString stdenv.isCygwin '' + '' + lib.optionalString stdenv.isCygwin '' for lib in $libs; do if test -e $out/lib/lib''${lib}w.dll.a; then ln -svf lib''${lib}w.dll.a $out/lib/lib$lib.dll.a @@ -143,9 +108,9 @@ stdenv.mkDerivation rec { homepage = http://www.gnu.org/software/ncurses/; - license = licenses.mit; - platforms = platforms.all; - maintainers = with maintainers; [ wkennington ]; + license = lib.licenses.mit; + platforms = lib.platforms.all; + maintainers = [ lib.maintainers.wkennington ]; }; passthru.ldflags = if unicode then "-lncursesw" else "-lncurses"; From cb9429bd3126e762f519bf408f56747f7ca50dba Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Mon, 1 Jun 2015 20:45:48 +0200 Subject: [PATCH 048/259] ncurses: Don't install static libraries Nixpkgs convention is not to install static libraries. --- pkgs/development/libraries/ncurses/default.nix | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/pkgs/development/libraries/ncurses/default.nix b/pkgs/development/libraries/ncurses/default.nix index 19f0ecb122dc..d6c2ee4faded 100644 --- a/pkgs/development/libraries/ncurses/default.nix +++ b/pkgs/development/libraries/ncurses/default.nix @@ -89,6 +89,10 @@ stdenv.mkDerivation rec { ln -svf libncurses.so $out/lib/libcurses.so ''; + preFixup = '' + rm $out/lib/*.a + ''; + meta = { description = "Free software emulation of curses in SVR4 and more"; From aaaa9f0041c28c465dcd0f5e524062025663b6f9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Thu, 4 Jun 2015 15:32:19 +0200 Subject: [PATCH 049/259] lame: fix build on 32-bit with gcc 4.9 --- pkgs/development/libraries/lame/default.nix | 2 ++ pkgs/development/libraries/lame/gcc-4.9.patch | 33 +++++++++++++++++++ 2 files changed, 35 insertions(+) create mode 100644 pkgs/development/libraries/lame/gcc-4.9.patch diff --git a/pkgs/development/libraries/lame/default.nix b/pkgs/development/libraries/lame/default.nix index 4a61d188ef69..1f8ad2e67c9b 100644 --- a/pkgs/development/libraries/lame/default.nix +++ b/pkgs/development/libraries/lame/default.nix @@ -30,6 +30,8 @@ stdenv.mkDerivation rec { sha256 = "1zr3kadv35ii6liia0bpfgxpag27xcivp571ybckpbz4b10nnd14"; }; + patches = [ ./gcc-4.9.patch ]; + nativeBuildInputs = [ ] ++ optional nasmSupport nasm; diff --git a/pkgs/development/libraries/lame/gcc-4.9.patch b/pkgs/development/libraries/lame/gcc-4.9.patch new file mode 100644 index 000000000000..59f8e00e4a8e --- /dev/null +++ b/pkgs/development/libraries/lame/gcc-4.9.patch @@ -0,0 +1,33 @@ +fix sse optimizations build on 32-bit with gcc 4.9 +http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=351af417bae0d09bd5a3753d1237f03adf591933 + +xmm_quantize_sub.c: In function 'init_xrpow_core_sse': +xmm_quantize_sub.c:65:18: warning: SSE vector return without SSE enabled changes the ABI [-W +psabi] + const __m128 vec_fabs_mask = _mm_loadu_ps(&fabs_mask._float[0]); + ^ +In file included from xmm_quantize_sub.c:37:0: +/usr/lib/gcc/i686-w64-mingw32/4.9.0/include/xmmintrin.h:933:1: error: inlining failed in call to always_inline '_mm_loadu_ps': target specific option mismatch + _mm_loadu_ps (float const *__P) + ^ +xmm_quantize_sub.c:65:18: error: called from here + const __m128 vec_fabs_mask = _mm_loadu_ps(&fabs_mask._float[0]); + ^ +--- lame/libmp3lame/vector/xmm_quantize_sub.c.orig 2014-06-08 12:16:19.455468042 -0700 ++++ lame/libmp3lame/vector/xmm_quantize_sub.c 2014-06-08 12:16:09.592356980 -0700 +@@ -35,6 +35,7 @@ + #ifdef HAVE_XMMINTRIN_H + + #include ++#pragma GCC target("sse") + + typedef union { + int32_t _i_32[4]; /* unions are initialized by its first member */ +@@ -124,6 +125,7 @@ + } + + ++#pragma GCC target("sse2") + void + fht_SSE2(FLOAT * fz, int n) + { From 646ee283e803ca2daa90b2ba507928ec661f58f6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Thu, 4 Jun 2015 16:15:35 +0200 Subject: [PATCH 050/259] gst-plugins-base-0.10: fix 32-bit build with gcc-4.9 --- .../legacy/gst-plugins-base/default.nix | 3 +- .../legacy/gst-plugins-base/gcc-4.9.patch | 38 +++++++++++++++++++ 2 files changed, 40 insertions(+), 1 deletion(-) create mode 100644 pkgs/development/libraries/gstreamer/legacy/gst-plugins-base/gcc-4.9.patch diff --git a/pkgs/development/libraries/gstreamer/legacy/gst-plugins-base/default.nix b/pkgs/development/libraries/gstreamer/legacy/gst-plugins-base/default.nix index 59ee86da86d4..040cf20c4ea4 100644 --- a/pkgs/development/libraries/gstreamer/legacy/gst-plugins-base/default.nix +++ b/pkgs/development/libraries/gstreamer/legacy/gst-plugins-base/default.nix @@ -18,9 +18,10 @@ stdenv.mkDerivation rec { }; patchPhase = '' - sed -i 's@/bin/echo@echo@g' configure sed -i -e 's/^ /\t/' docs/{libs,plugins}/Makefile.in + + patch -p1 < ${./gcc-4.9.patch} ''; # TODO : v4l, libvisual diff --git a/pkgs/development/libraries/gstreamer/legacy/gst-plugins-base/gcc-4.9.patch b/pkgs/development/libraries/gstreamer/legacy/gst-plugins-base/gcc-4.9.patch new file mode 100644 index 000000000000..fd9f6ea240d2 --- /dev/null +++ b/pkgs/development/libraries/gstreamer/legacy/gst-plugins-base/gcc-4.9.patch @@ -0,0 +1,38 @@ +https://bugzilla.gnome.org/show_bug.cgi?id=670690 + +From 9bd5a7ae5435469c3557a3d70e762791cb3dc5c7 Mon Sep 17 00:00:00 2001 +From: Antoine Jacoutot +Date: Mon, 20 Jan 2014 15:44:09 +0100 +Subject: [PATCH] audioresample: fix build on BSD + +On i386, EMMINTRIN is defined but not usable without sse so check for +__SSE__ and __SSE2__ as well. + +https://bugzilla.gnome.org/show_bug.cgi?id=670690 +--- + gst/audioresample/resample.c | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/gst/audioresample/resample.c b/gst/audioresample/resample.c +index 98d006c..481fa01 100644 +--- a/gst/audioresample/resample.c ++++ b/gst/audioresample/resample.c +@@ -77,13 +77,13 @@ + #define EXPORT G_GNUC_INTERNAL + + #ifdef _USE_SSE +-#ifndef HAVE_XMMINTRIN_H ++#if !defined(__SSE__) || !defined(HAVE_XMMINTRIN_H) + #undef _USE_SSE + #endif + #endif + + #ifdef _USE_SSE2 +-#ifndef HAVE_EMMINTRIN_H ++#if !defined(__SSE2__) || !defined(HAVE_XMMINTRIN_H) + #undef _USE_SSE2 + #endif + #endif +-- +1.8.5.3 + From 3ede0a64a2a1997e0eb327885d29db1760ad5ecc Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Thu, 4 Jun 2015 19:47:34 +0200 Subject: [PATCH 051/259] make: Don't segfault if we can't get a tty name This happened in VM builds: make flags: SHELL=/nix/store/dbxpkswwc7rh6g1iy6dwqklzw39hihb1-bash-4.3-p33/bin/bash /nix/store/jm26xg0h3jcrg4bbrwiqx3jpirscdk0p-stdenv/setup: line 658: 5957 Segmentation fault make ${makefile:+-f $makefile} ${enableParallelBuilding:+-j${NIX_BUILD_CORES} -l${NIX_BUILD_CORES}} $makeFlags "${makeFlagsArray[@]}" $buildFlags "${buildFlagsArray[@]}" --- .../build-managers/gnumake/4.1/default.nix | 3 ++ .../gnumake/4.1/no-tty-name.patch | 53 +++++++++++++++++++ 2 files changed, 56 insertions(+) create mode 100644 pkgs/development/tools/build-managers/gnumake/4.1/no-tty-name.patch diff --git a/pkgs/development/tools/build-managers/gnumake/4.1/default.nix b/pkgs/development/tools/build-managers/gnumake/4.1/default.nix index 600f6f5759d9..9ac201070182 100644 --- a/pkgs/development/tools/build-managers/gnumake/4.1/default.nix +++ b/pkgs/development/tools/build-managers/gnumake/4.1/default.nix @@ -17,6 +17,9 @@ stdenv.mkDerivation { # and /usr/lib. It's a stupid feature anyway. Likewise, when searching for # included Makefiles, don't look in /usr/include and friends. ./impure-dirs.patch + + # Don't segfault if we can't get a tty name. + ./no-tty-name.patch ]; meta = { diff --git a/pkgs/development/tools/build-managers/gnumake/4.1/no-tty-name.patch b/pkgs/development/tools/build-managers/gnumake/4.1/no-tty-name.patch new file mode 100644 index 000000000000..a84d7ab49d04 --- /dev/null +++ b/pkgs/development/tools/build-managers/gnumake/4.1/no-tty-name.patch @@ -0,0 +1,53 @@ +From 292da6f6867b75a5af7ddbb639a1feae022f438f Mon Sep 17 00:00:00 2001 +From: Paul Smith +Date: Mon, 20 Oct 2014 05:54:56 +0000 +Subject: * main.c (main): [SV 43434] Handle NULL returns from ttyname(). + +--- +diff --git main.c main.c +index b2d169c..0cdb8a8 100644 +--- main.c ++++ main.c +@@ -1429,13 +1429,18 @@ main (int argc, char **argv, char **envp) + #ifdef HAVE_ISATTY + if (isatty (fileno (stdout))) + if (! lookup_variable (STRING_SIZE_TUPLE ("MAKE_TERMOUT"))) +- define_variable_cname ("MAKE_TERMOUT", TTYNAME (fileno (stdout)), +- o_default, 0)->export = v_export; +- ++ { ++ const char *tty = TTYNAME (fileno (stdout)); ++ define_variable_cname ("MAKE_TERMOUT", tty ? tty : DEFAULT_TTYNAME, ++ o_default, 0)->export = v_export; ++ } + if (isatty (fileno (stderr))) + if (! lookup_variable (STRING_SIZE_TUPLE ("MAKE_TERMERR"))) +- define_variable_cname ("MAKE_TERMERR", TTYNAME (fileno (stderr)), +- o_default, 0)->export = v_export; ++ { ++ const char *tty = TTYNAME (fileno (stderr)); ++ define_variable_cname ("MAKE_TERMERR", tty ? tty : DEFAULT_TTYNAME, ++ o_default, 0)->export = v_export; ++ } + #endif + + /* Reset in case the switches changed our minds. */ +diff --git makeint.h makeint.h +index 6223936..2009f41 100644 +--- makeint.h ++++ makeint.h +@@ -436,10 +436,11 @@ extern struct rlimit stack_limit; + /* The number of bytes needed to represent the largest integer as a string. */ + #define INTSTR_LENGTH CSTRLEN ("18446744073709551616") + ++#define DEFAULT_TTYNAME "true" + #ifdef HAVE_TTYNAME + # define TTYNAME(_f) ttyname (_f) + #else +-# define TTYNAME(_f) "true" ++# define TTYNAME(_f) DEFAULT_TTYNAME + #endif + + +-- +cgit v0.9.0.2 From c6175f8161068bf48c221074d5c17419efcf290a Mon Sep 17 00:00:00 2001 From: "William A. Kennington III" Date: Sat, 6 Jun 2015 12:01:42 -0700 Subject: [PATCH 052/259] Revert "heimdal: Remove more references" This reverts commit 7b1336d2f122dc67c27786eb8122afb4a185f839. --- pkgs/applications/networking/browsers/firefox-bin/default.nix | 4 ++-- pkgs/applications/office/zotero/firefox-bin/default.nix | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/pkgs/applications/networking/browsers/firefox-bin/default.nix b/pkgs/applications/networking/browsers/firefox-bin/default.nix index 4da970528d5a..998ea95e8da6 100644 --- a/pkgs/applications/networking/browsers/firefox-bin/default.nix +++ b/pkgs/applications/networking/browsers/firefox-bin/default.nix @@ -30,7 +30,7 @@ , nspr , nss , pango -, libheimdal +, heimdal , libpulseaudio , systemd }: @@ -102,7 +102,7 @@ stdenv.mkDerivation { nspr nss pango - libheimdal + heimdal libpulseaudio systemd ] + ":" + stdenv.lib.makeSearchPath "lib64" [ diff --git a/pkgs/applications/office/zotero/firefox-bin/default.nix b/pkgs/applications/office/zotero/firefox-bin/default.nix index edf56c3eb4db..52751908fa71 100644 --- a/pkgs/applications/office/zotero/firefox-bin/default.nix +++ b/pkgs/applications/office/zotero/firefox-bin/default.nix @@ -30,7 +30,7 @@ , nspr , nss , pango -, libheimdal +, heimdal , libpulseaudio , systemd }: @@ -102,7 +102,7 @@ stdenv.mkDerivation { nspr nss pango - libheimdal + heimdal libpulseaudio systemd ] + ":" + stdenv.lib.makeSearchPath "lib64" [ From cfd831a40a2c101c6faa5aca4361518c391516a2 Mon Sep 17 00:00:00 2001 From: "William A. Kennington III" Date: Sat, 6 Jun 2015 12:01:50 -0700 Subject: [PATCH 053/259] Revert "samba: Use built in kerberos" This reverts commit 6b17264e08eaa96d0a1b24f635769ea80d4e8b16. --- pkgs/top-level/all-packages.nix | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 87c4267e7642..8aac40f07237 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -8981,8 +8981,7 @@ let samba4 = callPackage ../servers/samba/4.x.nix { python = python2; - # Samba is tightly coupled to kerberos so let it provide its own - kerberos = null; + kerberos = libheimdal; gnutls = gnutls33; cups = if stdenv.isDarwin then null else cups; pam = if stdenv.isDarwin then null else pam; From b073b563251fc6fc0d055812f049621801808313 Mon Sep 17 00:00:00 2001 From: "William A. Kennington III" Date: Sat, 6 Jun 2015 12:01:59 -0700 Subject: [PATCH 054/259] Revert "Use libheimdal instead of heimdal" This reverts commit 06c9915ed1db6ab505b869d240f75a6d53f2fcc9. --- pkgs/development/libraries/libssh/default.nix | 8 ++++---- pkgs/top-level/all-packages.nix | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/pkgs/development/libraries/libssh/default.nix b/pkgs/development/libraries/libssh/default.nix index a9117556a7f4..8ea2ac72da0b 100644 --- a/pkgs/development/libraries/libssh/default.nix +++ b/pkgs/development/libraries/libssh/default.nix @@ -1,7 +1,7 @@ { stdenv, fetchurl, pkgconfig, cmake # Optional Dependencies -, libheimdal ? null, zlib ? null, libsodium ? null +, heimdal ? null, zlib ? null, libsodium ? null # Crypto Dependencies , openssl ? null, libgcrypt ? null @@ -19,7 +19,7 @@ let none = null; }.${cryptoStr}; - optLibheimdal = shouldUsePkg libheimdal; + optHeimdal = shouldUsePkg heimdal; optZlib = shouldUsePkg zlib; optLibsodium = shouldUsePkg libsodium; in @@ -42,7 +42,7 @@ stdenv.mkDerivation rec { ''; cmakeFlags = [ - "-DWITH_GSSAPI=${if optLibheimdal != null then "ON" else "OFF"}" + "-DWITH_GSSAPI=${if optHeimdal != null then "ON" else "OFF"}" "-DWITH_ZLIB=${if optZlib != null then "ON" else "OFF"}" "-DWITH_SSH1=OFF" "-DWITH_SFTP=ON" @@ -64,7 +64,7 @@ stdenv.mkDerivation rec { ]; nativeBuildInputs = [ pkgconfig cmake ]; - buildInputs = [ optLibheimdal optZlib optLibsodium crypto ]; + buildInputs = [ optHeimdal optZlib optLibsodium crypto ]; meta = with stdenv.lib; { description = "SSH client library"; diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 8aac40f07237..af5d0f586d11 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -8981,7 +8981,7 @@ let samba4 = callPackage ../servers/samba/4.x.nix { python = python2; - kerberos = libheimdal; + kerberos = heimdal; gnutls = gnutls33; cups = if stdenv.isDarwin then null else cups; pam = if stdenv.isDarwin then null else pam; From d5ac5c00d8e7356048b10d7f28da13974cfb44f9 Mon Sep 17 00:00:00 2001 From: "William A. Kennington III" Date: Sat, 6 Jun 2015 12:02:06 -0700 Subject: [PATCH 055/259] Revert "heimdal: 1.5.3 -> 2015-05-26" This reverts commit 1e14f0a055d987ab2beb0fc943b3aab02e9dc7cb. --- .../libraries/kerberos/heimdal.nix | 139 +++++++----------- pkgs/top-level/all-packages.nix | 3 - 2 files changed, 54 insertions(+), 88 deletions(-) diff --git a/pkgs/development/libraries/kerberos/heimdal.nix b/pkgs/development/libraries/kerberos/heimdal.nix index dd1f7afdf237..6050891ba272 100644 --- a/pkgs/development/libraries/kerberos/heimdal.nix +++ b/pkgs/development/libraries/kerberos/heimdal.nix @@ -1,126 +1,95 @@ -{ stdenv, fetchFromGitHub, autoreconfHook, pkgconfig, python, perl, yacc, flex -, texinfo ? null, perlPackages +{ stdenv, fetchurl, pkgconfig, flex, yacc # Optional Dependencies , openldap ? null, libcap_ng ? null, sqlite ? null, openssl ? null, db ? null , readline ? null, libedit ? null, pam ? null -# Extra Args -, prefix ? "" +#, readline, openldap, libcap_ng +#, sqlite, db, ncurses, openssl, cyrus_sasl }: with stdenv; +with stdenv.lib; let - libOnly = prefix == "lib"; - - optTexinfo = if libOnly then null else shouldUsePkg texinfo; - optOpenldap = if libOnly then null else shouldUsePkg openldap; + optOpenldap = shouldUsePkg openldap; optLibcap_ng = shouldUsePkg libcap_ng; optSqlite = shouldUsePkg sqlite; optOpenssl = shouldUsePkg openssl; optDb = shouldUsePkg db; optReadline = shouldUsePkg readline; optLibedit = shouldUsePkg libedit; - optPam = if libOnly then null else shouldUsePkg pam; - - lineParserStr = if optLibedit != null then "libedit" - else if optReadline != null then "readline" - else "no"; - - lineParserInputs = { - "libedit" = [ optLibedit ]; - "readline" = [ optReadline ]; - "no" = [ ]; - }.${lineParserStr}; + optPam = shouldUsePkg pam; in -with stdenv.lib; stdenv.mkDerivation rec { - name = "${prefix}heimdal-${version}"; - version = "2015-05-26"; + name = "heimdal-1.5.3"; - src = fetchFromGitHub { - owner = "heimdal"; - repo = "heimdal"; - rev = "50e2a5ce95f42d4963d359c27a832e61991a12b1"; - sha256 = "10104vm192r1i7ccs1fan16h9n31saaswsmywmrb0cxc7jv3rj8x"; + src = fetchurl { + urls = [ + "http://www.h5l.org/dist/src/${name}.tar.gz" + "http://ftp.pdc.kth.se/pub/heimdal/src/${name}.tar.gz" + ]; + sha256 = "19gypf9vzfrs2bw231qljfl4cqc1riyg0ai0xmm1nd1wngnpphma"; }; - nativeBuildInputs = [ autoreconfHook pkgconfig python perl yacc flex optTexinfo ] - ++ (with perlPackages; [ JSON ]); + nativeBuildInputs = [ pkgconfig flex yacc ]; buildInputs = [ - optOpenldap optLibcap_ng optSqlite optOpenssl optDb optPam - ] ++ lineParserInputs; - - configureFlags = [ - (mkOther "sysconfdir" "/etc") - (mkOther "localstatedir" "/var") - (mkWith (optOpenldap != null) "openldap" optOpenldap) - (mkEnable (optOpenldap != null) "hdb-openldap-module" null) - (mkEnable true "pk-init" null) - (mkEnable true "digest" null) - (mkEnable true "kx509" null) - (mkWith (optLibcap_ng != null) "capng" null) - (mkWith (optSqlite != null) "sqlite3" sqlite) - (mkEnable (optSqlite != null) "sqlite-cache" null) - (mkWith false "libintl" null) # TODO libintl fix - (mkWith true "hdbdir" "/var/lib/heimdal") - (mkEnable false "dce" null) # TODO: Add support - (mkEnable (!libOnly) "afs-support" null) - (mkEnable true "mmap" null) - (mkEnable (!libOnly) "afs-string-to-key" null) - (mkWith (lineParserStr == "readline") "readline" optReadline) - (mkWith (lineParserStr == "libedit") "libedit" optLibedit) - (mkWith false "hesiod" null) - (mkEnable (!libOnly) "kcm" null) - (mkEnable (optTexinfo != null) "heimdal-documentation" null) - (mkWith true "ipv6" null) - (mkEnable true "pthread-support" null) - (mkEnable false "osfc2" null) - (mkEnable false "socket-wrapper" null) - (mkEnable (!libOnly) "otp" null) - (mkEnable false "developer" null) - (mkWith (optDb != null) "berkeley-db" optDb) - (mkEnable true "ndbm-db" null) - (mkEnable false "mdb-db" null) - (mkWith (optOpenssl != null) "openssl" optOpenssl) + optOpenldap optLibcap_ng optSqlite optOpenssl optDb optReadline optLibedit + optPam ]; - buildPhase = optionalString libOnly '' - (cd include; make -j $NIX_BUILD_CORES) - (cd lib; make -j $NIX_BUILD_CORES) - (cd tools; make -j $NIX_BUILD_CORES) - (cd include/hcrypto; make -j $NIX_BUILD_CORES) - (cd lib/hcrypto; make -j $NIX_BUILD_CORES) - ''; + configureFlags = [ + (mkOther "sysconfdir" "/etc") + (mkOther "localstatedir" "/var") + (mkWith (optOpenldap != null) "openldap" optOpenldap) + (mkEnable (optOpenldap != null) "hdb-openldap-module" null) + (mkEnable true "pk-init" null) + (mkEnable true "digest" null) + (mkEnable true "kx509" null) + (mkWith (optLibcap_ng != null) "capng" null) + (mkWith (optSqlite != null) "sqlite3" sqlite) + (mkEnable (optSqlite != null) "sqlite-cache" null) + (mkWith false "libintl" null) # TODO libintl fix + (mkWith true "hdbdir" "/var/lib/heimdal") + (mkWith (optOpenssl != null) "openssl" optOpenssl) + (mkEnable true "pthread-support" null) + (mkEnable false "dce" null) # TODO: Add support + (mkEnable true "afs-support" null) + (mkWith (optDb != null) "berkeley-db" optDb) + (mkEnable false "nmdb" null) + (mkEnable false "developer" null) + (mkWith true "ipv6" null) + (mkEnable false "socket-wrapper" null) + (mkEnable true "otp" null) + (mkEnable false "osfc2" null) + (mkEnable true "mmap" null) + (mkEnable true "afs-string-to-key" null) + (mkWith (optReadline != null) "readline" optReadline) + (mkWith (optLibedit != null) "libedit" optLibedit) + (mkWith false "x" null) + (mkEnable true "kcm" null) + (mkEnable true "heimdal-documentation" null) + ]; - installPhase = optionalString libOnly '' - (cd include; make -j $NIX_BUILD_CORES install) - (cd lib; make -j $NIX_BUILD_CORES install) - (cd tools; make -j $NIX_BUILD_CORES install) - (cd include/hcrypto; make -j $NIX_BUILD_CORES install) - (cd lib/hcrypto; make -j $NIX_BUILD_CORES install) - rm -rf $out/{libexec,sbin,share} - find $out/bin -type f | grep -v 'krb5-config' | xargs rm + preConfigure = '' + export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -pthread" ''; # We need to build hcrypt for applications like samba postBuild = '' - (cd include/hcrypto; make -j $NIX_BUILD_CORES) - (cd lib/hcrypto; make -j $NIX_BUILD_CORES) + (cd lib/hcrypto; make) + (cd include/hcrypto; make) ''; postInstall = '' # Install hcrypto - (cd include/hcrypto; make -j $NIX_BUILD_CORES install) - (cd lib/hcrypto; make -j $NIX_BUILD_CORES install) + (cd lib/hcrypto; make install) + (cd include/hcrypto; make install) # Doesn't succeed with --libexec=$out/sbin, so mv "$out/libexec/"* $out/sbin/ rmdir $out/libexec ''; - enableParallelBuilding = true; - meta = { description = "an implementation of Kerberos 5 (and some more stuff) largely written in Sweden"; license = licenses.bsd3; diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index af5d0f586d11..d345e72d5888 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -6341,9 +6341,6 @@ let kerberos = libkrb5; heimdal = callPackage ../development/libraries/kerberos/heimdal.nix { }; - libheimdal = heimdal.override { - prefix = "lib"; - }; harfbuzz = callPackage ../development/libraries/harfbuzz { }; harfbuzz-icu = callPackage ../development/libraries/harfbuzz { From 3d92654e137637be2c5c8907e1d6164849ce2ece Mon Sep 17 00:00:00 2001 From: "William A. Kennington III" Date: Sat, 6 Jun 2015 12:02:18 -0700 Subject: [PATCH 056/259] Revert "heimdal: No need to override openldap anymore" This reverts commit 4fa5cc71f2d5c5b8f6b5d71cd321d9ba6805d5cd. --- pkgs/top-level/all-packages.nix | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index d345e72d5888..412e4be2295a 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -6340,7 +6340,11 @@ let # Modularize heimdal into a library first kerberos = libkrb5; - heimdal = callPackage ../development/libraries/kerberos/heimdal.nix { }; + heimdal = callPackage ../development/libraries/kerberos/heimdal.nix { + openldap = openldap.override { + cyrus_sasl = cyrus_sasl.override { kerberos = null; }; + }; + }; harfbuzz = callPackage ../development/libraries/harfbuzz { }; harfbuzz-icu = callPackage ../development/libraries/harfbuzz { From 9882cecb10bd570b4cd33d34ba4ababbe4c0fc83 Mon Sep 17 00:00:00 2001 From: "William A. Kennington III" Date: Sat, 6 Jun 2015 12:02:26 -0700 Subject: [PATCH 057/259] Revert "Use mit5 as kerberos since it is better supported" This reverts commit 80648d7e242bcb9e9ed544a2561c433ee22fb5aa. --- pkgs/top-level/all-packages.nix | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 412e4be2295a..97b79530fa68 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -6336,9 +6336,9 @@ let hamlib = callPackage ../development/libraries/hamlib { }; - # TODO : Add Heimdal Kerberos and let admin choose. - # Modularize heimdal into a library first - kerberos = libkrb5; + # TODO : Add MIT Kerberos and let admin choose. + # TODO : Fix kerberos on Darwin + kerberos = if stdenv.isDarwin then null else heimdal; heimdal = callPackage ../development/libraries/kerberos/heimdal.nix { openldap = openldap.override { @@ -6472,6 +6472,9 @@ let kinetic-cpp-client = callPackage ../development/libraries/kinetic-cpp-client { }; krb5 = callPackage ../development/libraries/kerberos/krb5.nix { + openldap = openldap.override { + cyrus_sasl = cyrus_sasl.override { kerberos = null; }; + }; inherit (darwin) bootstrap_cmds; }; libkrb5 = krb5.override { From d30d0c783d7b403efe547a5420316d611a180135 Mon Sep 17 00:00:00 2001 From: "William A. Kennington III" Date: Sat, 6 Jun 2015 12:02:38 -0700 Subject: [PATCH 058/259] Revert "pam: Factor out dependencies" This reverts commit 7141d96bde218141ed73bd82cc806d075e0d07f4. --- pkgs/os-specific/linux/pam/default.nix | 63 +++++++++----------------- 1 file changed, 22 insertions(+), 41 deletions(-) diff --git a/pkgs/os-specific/linux/pam/default.nix b/pkgs/os-specific/linux/pam/default.nix index 96debd66e5b1..29cfa64b22d8 100644 --- a/pkgs/os-specific/linux/pam/default.nix +++ b/pkgs/os-specific/linux/pam/default.nix @@ -1,16 +1,5 @@ -{ stdenv, fetchurl, pkgconfig +{ stdenv, fetchurl, flex, cracklib }: -# Optional Depdencies -, cracklib ? null, libaudit ? null, db ? null -}: - -with stdenv; -let - optCracklib = shouldUsePkg cracklib; - optLibaudit = shouldUsePkg libaudit; - optDb = shouldUsePkg db; -in -with stdenv.lib; stdenv.mkDerivation rec { name = "linux-pam-${version}"; version = "1.2.0"; @@ -20,45 +9,37 @@ stdenv.mkDerivation rec { sha256 = "192y2fgf24a5qsg7rl1mzgw5axs5lg8kqamkfff2x50yjv2ym2yd"; }; - nativeBuildInputs = [ pkgconfig ]; - buildInputs = [ optCracklib optLibaudit optDb ]; + nativeBuildInputs = [ flex ]; - configureFlags = [ - (mkOther "sysconfdir" "/etc") - (mkOther "localstatedir" "/var") - (mkOther "includedir" "\${out}/include/security") - (mkEnable false "static-modules" null) - (mkEnable true "pie" null) - (mkEnable false "prelude" null) - (mkEnable false "debug" null) - (mkEnable false "pamlocking" null) - (mkEnable true "read-both-confs" null) - (mkEnable true "lckpwdf" null) - (mkWith true "xauth" "/run/current-system/sw/bin/xauth") - (mkEnable (optCracklib != null) "cracklib" null) - (mkEnable (optLibaudit != null) "audit" null) - (mkEnable (optDb != null) "db" "db") - (mkEnable true "nis" null) # TODO: Consider tirpc support here - (mkEnable false "selinux" null) - (mkEnable false "regenerate-docu" null) - ]; + buildInputs = [ cracklib ]; - installFlags = [ - "sysconfdir=\${out}/etc" - "SCONFIGDIR=\${out}/etc/security" - ]; + crossAttrs = { + propagatedBuildInputs = [ flex.crossDrv cracklib.crossDrv ]; + preConfigure = preConfigure + '' + ar x ${flex.crossDrv}/lib/libfl.a + mv libyywrap.o libyywrap-target.o + ar x ${flex}/lib/libfl.a + mv libyywrap.o libyywrap-host.o + export LDFLAGS="$LDFLAGS $PWD/libyywrap-target.o" + sed -e 's/@CC@/gcc/' -i doc/specs/Makefile.in + ''; + postConfigure = '' + sed -e "s@ $PWD/libyywrap-target.o@ $PWD/libyywrap-host.o@" -i doc/specs/Makefile + ''; + }; postInstall = '' - # Prepare unix_chkpwd for setuid wrapping mv -v $out/sbin/unix_chkpwd{,.orig} ln -sv /var/setuid-wrappers/unix_chkpwd $out/sbin/unix_chkpwd ''; + preConfigure = '' + configureFlags="$configureFlags --includedir=$out/include/security" + ''; + meta = { homepage = http://ftp.kernel.org/pub/linux/libs/pam/; description = "Pluggable Authentication Modules, a flexible mechanism for authenticating user"; - license = licenses.bsd3; - platforms = platforms.linux; - maintainers = with maintainers; [ wkennington ]; + platforms = stdenv.lib.platforms.linux; }; } From 40b66f613181844dc48a8ef4b0d958687c2cfa31 Mon Sep 17 00:00:00 2001 From: "William A. Kennington III" Date: Sat, 6 Jun 2015 12:02:49 -0700 Subject: [PATCH 059/259] Revert "libmicrohttpd: 0.9.41 -> 0.9.42" This reverts commit 89d9a6079cfd88b27295aeac3da355d44620548f. --- pkgs/development/libraries/libmicrohttpd/default.nix | 5 ++--- pkgs/top-level/all-packages.nix | 5 ++--- 2 files changed, 4 insertions(+), 6 deletions(-) diff --git a/pkgs/development/libraries/libmicrohttpd/default.nix b/pkgs/development/libraries/libmicrohttpd/default.nix index d88b75440bc2..c7892716c9d6 100644 --- a/pkgs/development/libraries/libmicrohttpd/default.nix +++ b/pkgs/development/libraries/libmicrohttpd/default.nix @@ -17,11 +17,11 @@ let in with stdenv.lib; stdenv.mkDerivation rec { - name = "libmicrohttpd-0.9.42"; + name = "libmicrohttpd-0.9.41"; src = fetchurl { url = "mirror://gnu/libmicrohttpd/${name}.tar.gz"; - sha256 = "0nvxmm6z6wcq1vl6l92rids0i0va184y86bkc10dl0vh6rrj0d80"; + sha256 = "0z3s3aplgxj8cj947i4rxk9wzvg68b8hbn71fyipc7aagmivx64p"; }; nativeBuildInputs = [ pkgconfig ]; @@ -33,7 +33,6 @@ stdenv.mkDerivation rec { (mkWith true "threads" "posix") (mkEnable true "doc" null) (mkEnable false "examples" null) - (mkEnable true "poll" "auto") (mkEnable true "epoll" "auto") (mkEnable doCheck "curl" null) (mkEnable hasSpdy "spdy" null) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 97b79530fa68..7d87d2ac7d3c 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -6927,9 +6927,8 @@ let libmemcached = callPackage ../development/libraries/libmemcached { }; - libmicrohttpd-full = callPackage ../development/libraries/libmicrohttpd { }; - - libmicrohttpd = libmicrohttpd-full.override { + libmicrohttpd = callPackage ../development/libraries/libmicrohttpd { + openssl = null; gnutls = null; }; From d57ef6b523838cf161dbc9fb01173caf3e84954b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Sun, 7 Jun 2015 09:21:20 +0200 Subject: [PATCH 060/259] liferea: fix build problem hidden by #7524 --- pkgs/applications/networking/newsreaders/liferea/default.nix | 2 -- 1 file changed, 2 deletions(-) diff --git a/pkgs/applications/networking/newsreaders/liferea/default.nix b/pkgs/applications/networking/newsreaders/liferea/default.nix index 26078c8e5830..b260be42d5b5 100644 --- a/pkgs/applications/networking/newsreaders/liferea/default.nix +++ b/pkgs/applications/networking/newsreaders/liferea/default.nix @@ -28,8 +28,6 @@ stdenv.mkDerivation rec { ]; preFixup = '' - rm $out/share/icons/hicolor/icon-theme.cache - for f in "$out"/bin/*; do wrapProgram "$f" \ --prefix PYTHONPATH : "$(toPythonPath $out):$(toPythonPath ${pygobject3})" \ From deb33d513fd8053d59eeff2a76724247776de8af Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Wed, 27 May 2015 23:09:13 +0200 Subject: [PATCH 061/259] dbus: small update --- 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 84a18f2a0b54..d114cf17c4ef 100644 --- a/pkgs/development/libraries/dbus/default.nix +++ b/pkgs/development/libraries/dbus/default.nix @@ -7,8 +7,8 @@ assert x11Support -> libX11 != null && libSM != null; let - version = "1.8.16"; - sha256 = "01rba8mp8kqvmy6ibdmi806kjr3m14swnskqk02gyhykxxl54ybz"; + version = "1.8.18"; + sha256 = "1wn4k142m68d8yqd4i6dmx1ac0798yhkdnkk4mb72g3sfyffpwin"; inherit (stdenv) lib; From 0b216645bd4d9b5460a51476c2e709191f582c6b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Wed, 27 May 2015 23:10:59 +0200 Subject: [PATCH 062/259] gtk+ stack: leftover "major" updates --- pkgs/development/libraries/at-spi2-atk/default.nix | 6 +++--- pkgs/development/libraries/at-spi2-core/default.nix | 4 ++-- .../development/libraries/gobject-introspection/default.nix | 4 ++-- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/pkgs/development/libraries/at-spi2-atk/default.nix b/pkgs/development/libraries/at-spi2-atk/default.nix index b562a2e5d3d2..940fc2bb6cc6 100644 --- a/pkgs/development/libraries/at-spi2-atk/default.nix +++ b/pkgs/development/libraries/at-spi2-atk/default.nix @@ -2,14 +2,14 @@ , intltool, dbus_glib, at_spi2_core, libSM }: stdenv.mkDerivation rec { - versionMajor = "2.12"; - versionMinor = "1"; + versionMajor = "2.16"; + versionMinor = "0"; moduleName = "at-spi2-atk"; name = "${moduleName}-${versionMajor}.${versionMinor}"; src = fetchurl { url = "mirror://gnome/sources/${moduleName}/${versionMajor}/${name}.tar.xz"; - sha256 = "5fa9c527bdec028e06797563cd52d49bcf06f638549df983424d88db89bb1336"; + sha256 = "1y9gfz1iz3wpja7s000f0bmyyvc6im5fcdl6bxwbz0v3qdgc9vvq"; }; buildInputs = [ python pkgconfig popt atk libX11 libICE xlibs.libXtst libXi diff --git a/pkgs/development/libraries/at-spi2-core/default.nix b/pkgs/development/libraries/at-spi2-core/default.nix index 7128e4d3f2b8..a3632bc13fdf 100644 --- a/pkgs/development/libraries/at-spi2-core/default.nix +++ b/pkgs/development/libraries/at-spi2-core/default.nix @@ -2,14 +2,14 @@ , libX11, xextproto, libSM, libICE, libXtst, libXi, gobjectIntrospection }: stdenv.mkDerivation rec { - versionMajor = "2.12"; + versionMajor = "2.16"; versionMinor = "0"; moduleName = "at-spi2-core"; name = "${moduleName}-${versionMajor}.${versionMinor}"; src = fetchurl { url = "mirror://gnome/sources/${moduleName}/${versionMajor}/${name}.tar.xz"; - sha256 = "12gvsgdaxnxskndlhlmdkc50cfqgmzfc4n8la9944fz5k3fhwmfv"; + sha256 = "1l3l39mw23zyjlcqidvkyqlr4gwbhplzw2hcv3qvn6p8ikxpf2qw"; }; buildInputs = [ diff --git a/pkgs/development/libraries/gobject-introspection/default.nix b/pkgs/development/libraries/gobject-introspection/default.nix index 200c0d4e01de..50fddd9da9fd 100644 --- a/pkgs/development/libraries/gobject-introspection/default.nix +++ b/pkgs/development/libraries/gobject-introspection/default.nix @@ -5,7 +5,7 @@ # In that case its about 6MB which could be separated let - ver_maj = "1.42"; + ver_maj = "1.44"; ver_min = "0"; in stdenv.mkDerivation rec { @@ -13,7 +13,7 @@ stdenv.mkDerivation rec { src = fetchurl { url = "mirror://gnome/sources/gobject-introspection/${ver_maj}/${name}.tar.xz"; - sha256 = "3ba2edfad4f71d4f0de16960b5d5f2511335fa646b2c49bbb93ce5942b3f95f7"; + sha256 = "1b972qg2yb51sdavfvb6kc19akwc15c1bwnbg81vadxamql2q33g"; }; buildInputs = [ flex bison pkgconfig python ] From 5df1aadd68a157997c5ff419a8f4e1db23e5a5ae Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Tue, 14 Apr 2015 21:20:54 +0200 Subject: [PATCH 063/259] glib hooks: move gsettings-schemas if on wrong place Fixes #7325. --- pkgs/development/libraries/glib/setup-hook.sh | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/pkgs/development/libraries/glib/setup-hook.sh b/pkgs/development/libraries/glib/setup-hook.sh index f173744e5ca6..8d63af6b9b42 100644 --- a/pkgs/development/libraries/glib/setup-hook.sh +++ b/pkgs/development/libraries/glib/setup-hook.sh @@ -10,8 +10,15 @@ make_glib_find_gsettings_schemas() { envHooks+=(make_glib_find_gsettings_schemas) -glibPreFixupPhase() { - addToSearchPath GSETTINGS_SCHEMAS_PATH "$out/share/gsettings-schemas/$name" +glibFixupPhase() { + # Move gschemas in case the install flag didn't help + if [ -d "$prefix/share/glib-2.0/schemas" ]; then + mkdir -p "$prefix/share/gsettings-schemas/$name/glib-2.0" + mv "$prefix/share/glib-2.0/schemas" "$prefix/share/gsettings-schemas/$name/glib-2.0/" + fi + + addToSearchPath GSETTINGS_SCHEMAS_PATH "$prefix/share/gsettings-schemas/$name" } -preFixupPhases="$preFixupPhases glibPreFixupPhase" +fixupOutputHooks+=(glibFixupPhase) + From 4c475520d9561242fdaf403129b0226010677169 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Wed, 3 Jun 2015 08:44:12 +0200 Subject: [PATCH 064/259] spidermonkey_17: remove *.a to save 8 MB The sole user (polkit) still builds fine. Inspired by #8147. --- pkgs/development/interpreters/spidermonkey/17.0.nix | 2 ++ 1 file changed, 2 insertions(+) diff --git a/pkgs/development/interpreters/spidermonkey/17.0.nix b/pkgs/development/interpreters/spidermonkey/17.0.nix index 74f0fe2b83a4..41757244c004 100644 --- a/pkgs/development/interpreters/spidermonkey/17.0.nix +++ b/pkgs/development/interpreters/spidermonkey/17.0.nix @@ -39,6 +39,8 @@ stdenv.mkDerivation rec { paxmark mr jsapi-tests/jsapi-tests ''; + postInstall = ''rm "$out"/lib/*.a''; # halve the output size + meta = with stdenv.lib; { description = "Mozilla's JavaScript engine written in C/C++"; homepage = https://developer.mozilla.org/en/SpiderMonkey; From 317f4ea72df6f4ec07ef9967a8d286f0ba3de04b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Wed, 3 Jun 2015 20:02:03 +0200 Subject: [PATCH 065/259] ncurses: header location fixes - move headers directly to $out/include and set up symlinks. Some packages were failing to find them (e.g. mariadb). - postInstall was failing, only it was ignored due to a bug; now it succeeds. --- pkgs/development/libraries/ncurses/default.nix | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/pkgs/development/libraries/ncurses/default.nix b/pkgs/development/libraries/ncurses/default.nix index d6c2ee4faded..19b1b5fe33b0 100644 --- a/pkgs/development/libraries/ncurses/default.nix +++ b/pkgs/development/libraries/ncurses/default.nix @@ -54,6 +54,8 @@ stdenv.mkDerivation rec { ln -svf $cfg $out/bin/ncurses-config # Allow for end users who #include + mv "$out"/include/ncursesw/* "$out"/include/ + rmdir "$out"/include/ncursesw ln -svf . $out/include/ncursesw ln -svf . $out/include/ncurses @@ -83,6 +85,8 @@ stdenv.mkDerivation rec { ln -svf $cfg $out/bin/ncurses-config # Allow for end users who #include + mv "$out"/include/ncurses/* "$out"/include/ + rmdir "$out"/include/ncurses ln -svf . $out/include/ncurses # Create curses compatability From 043a8478c35e5bf1ba53448aa7652b333f8e8ee6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Mon, 8 Jun 2015 11:13:46 +0200 Subject: [PATCH 066/259] SDL: propagate libcap and fixup native inputs Close #8205. All inputs except pkgconfig shouldn't be native but rather disabled on cygwin, I suppose. --- pkgs/development/libraries/SDL/default.nix | 21 ++++++++++++--------- pkgs/development/libraries/SDL2/default.nix | 2 +- pkgs/top-level/all-packages.nix | 10 +++++----- 3 files changed, 18 insertions(+), 15 deletions(-) diff --git a/pkgs/development/libraries/SDL/default.nix b/pkgs/development/libraries/SDL/default.nix index 3e00b21ad43e..a62fc837dd0f 100644 --- a/pkgs/development/libraries/SDL/default.nix +++ b/pkgs/development/libraries/SDL/default.nix @@ -14,6 +14,9 @@ assert x11Support -> (x11 != null && libXrandr != null); assert alsaSupport -> alsaLib != null; assert pulseaudioSupport -> libpulseaudio != null; +let + inherit (stdenv.lib) optional optionals; +in stdenv.mkDerivation rec { version = "1.2.15"; name = "SDL-${version}"; @@ -23,19 +26,19 @@ stdenv.mkDerivation rec { sha256 = "005d993xcac8236fpvd1iawkz4wqjybkpn8dbwaliqz5jfkidlyn"; }; + nativeBuildInputs = [ pkgconfig ]; + # Since `libpulse*.la' contain `-lgdbm', PulseAudio must be propagated. - propagatedNativeBuildInputs = - stdenv.lib.optionals x11Support [ x11 libXrandr ] ++ - stdenv.lib.optional alsaSupport alsaLib ++ - stdenv.lib.optional pulseaudioSupport libpulseaudio; + propagatedBuildInputs = + optionals x11Support [ x11 libXrandr ] ++ + optional alsaSupport alsaLib ++ + optional stdenv.isLinux libcap ++ + optional openglSupport mesa ++ + optional pulseaudioSupport libpulseaudio; buildInputs = let notMingw = !(stdenv ? cross) || stdenv.cross.libc != "msvcrt"; - in stdenv.lib.optional stdenv.isLinux libcap - ++ (stdenv.lib.optional notMingw audiofile); - - nativeBuildInputs = [ pkgconfig ] ++ - stdenv.lib.optional openglSupport [ mesa ]; + in optional notMingw audiofile; # XXX: By default, SDL wants to dlopen() PulseAudio, in which case # we must arrange to add it to its RPATH; however, `patchelf' seems diff --git a/pkgs/development/libraries/SDL2/default.nix b/pkgs/development/libraries/SDL2/default.nix index bfd5ff65563c..f5bd144a7172 100644 --- a/pkgs/development/libraries/SDL2/default.nix +++ b/pkgs/development/libraries/SDL2/default.nix @@ -35,7 +35,7 @@ stdenv.mkDerivation rec { stdenv.lib.optional pulseaudioSupport libpulseaudio; buildInputs = [ pkgconfig audiofile ] ++ - stdenv.lib.optional openglSupport [ mesa ] ++ + stdenv.lib.optional openglSupport mesa ++ stdenv.lib.optional alsaSupport alsaLib; # https://bugzilla.libsdl.org/show_bug.cgi?id=1431 diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 5be85900fecc..a95784353b4b 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -7841,9 +7841,9 @@ let SDL = callPackage ../development/libraries/SDL { openglSupport = mesaSupported; - alsaSupport = (!stdenv.isDarwin); - x11Support = true; - pulseaudioSupport = (!stdenv.isDarwin); + alsaSupport = stdenv.isLinux; + x11Support = !stdenv.isCygwin; + pulseaudioSupport = stdenv.isLinux; }; SDL_gfx = callPackage ../development/libraries/SDL_gfx { }; @@ -7862,8 +7862,8 @@ let SDL2 = callPackage ../development/libraries/SDL2 { openglSupport = mesaSupported; - alsaSupport = (!stdenv.isDarwin); - x11Support = (!stdenv.isDarwin); + alsaSupport = stdenv.isLinux; + x11Support = !stdenv.isCygwin; pulseaudioSupport = false; # better go through ALSA }; From 92725618b2f859b27037fd4ef14bf56b4d9fb924 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Mon, 8 Jun 2015 13:12:18 +0200 Subject: [PATCH 067/259] Revert "glib hooks: move gsettings-schemas if on wrong place" This reverts commit 5df1aadd68a157997c5ff419a8f4e1db23e5a5ae. It introduced some problems. --- pkgs/development/libraries/glib/setup-hook.sh | 13 +++---------- 1 file changed, 3 insertions(+), 10 deletions(-) diff --git a/pkgs/development/libraries/glib/setup-hook.sh b/pkgs/development/libraries/glib/setup-hook.sh index 8d63af6b9b42..f173744e5ca6 100644 --- a/pkgs/development/libraries/glib/setup-hook.sh +++ b/pkgs/development/libraries/glib/setup-hook.sh @@ -10,15 +10,8 @@ make_glib_find_gsettings_schemas() { envHooks+=(make_glib_find_gsettings_schemas) -glibFixupPhase() { - # Move gschemas in case the install flag didn't help - if [ -d "$prefix/share/glib-2.0/schemas" ]; then - mkdir -p "$prefix/share/gsettings-schemas/$name/glib-2.0" - mv "$prefix/share/glib-2.0/schemas" "$prefix/share/gsettings-schemas/$name/glib-2.0/" - fi - - addToSearchPath GSETTINGS_SCHEMAS_PATH "$prefix/share/gsettings-schemas/$name" +glibPreFixupPhase() { + addToSearchPath GSETTINGS_SCHEMAS_PATH "$out/share/gsettings-schemas/$name" } -fixupOutputHooks+=(glibFixupPhase) - +preFixupPhases="$preFixupPhases glibPreFixupPhase" From 651e83ac1049e16e8311be3796a315d907e740cf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Mon, 1 Jun 2015 21:33:47 +0200 Subject: [PATCH 068/259] gnutls: set certificate location (close #8121) This is a fast fix; it might be best to use $SSL_CERT_FILE. Tested on vlc with youtube https URLs. Discussed also on #8118. Feel free to discuss further improvements on #8247. --- pkgs/development/libraries/gnutls/generic.nix | 2 ++ 1 file changed, 2 insertions(+) diff --git a/pkgs/development/libraries/gnutls/generic.nix b/pkgs/development/libraries/gnutls/generic.nix index 6f2361f1658a..8c169153a666 100644 --- a/pkgs/development/libraries/gnutls/generic.nix +++ b/pkgs/development/libraries/gnutls/generic.nix @@ -13,6 +13,8 @@ stdenv.mkDerivation rec { inherit src patches; configureFlags = [ + # FIXME: perhaps use $SSL_CERT_FILE instead + "--with-default-trust-store-file=/etc/ssl/certs/ca-certificates.crt" "--disable-dependency-tracking" "--enable-fast-install" ] ++ stdenv.lib.optional guileBindings From cae833255f6e1d95fed6fb162764aba81cb7b84e Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Mon, 1 Jun 2015 16:17:02 +0200 Subject: [PATCH 069/259] add minitube: stand-alone Youtube video player Close #8118. --- pkgs/applications/video/minitube/default.nix | 43 ++++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 + 2 files changed, 45 insertions(+) create mode 100644 pkgs/applications/video/minitube/default.nix diff --git a/pkgs/applications/video/minitube/default.nix b/pkgs/applications/video/minitube/default.nix new file mode 100644 index 000000000000..b9c4de0811de --- /dev/null +++ b/pkgs/applications/video/minitube/default.nix @@ -0,0 +1,43 @@ +{ stdenv, fetchFromGitHub, makeWrapper, phonon, phonon_backend_vlc, qt4 +# "Free" API key generated by nckx +, withAPIKey ? "AIzaSyBtFgbln3bu1swQC-naMxMtKh384D3xJZE" }: + +let version = "2.4"; in +stdenv.mkDerivation { + name = "minitube-${version}"; + + src = fetchFromGitHub { + sha256 = "0mm8v2vpspwxh2fqaykb381v6r9apywc1b0x8jkcbp7s43w10lp5"; + rev = version; + repo = "minitube"; + owner = "flaviotordini"; + }; + + meta = with stdenv.lib; { + inherit version; + description = "Stand-alone YouTube video player"; + longDescription = '' + Watch YouTube videos in a new way: you type a keyword, Minitube gives + you an endless video stream. Minitube is not about cloning the YouTube + website, it aims to create a new TV-like experience. + ''; + homepage = http://flavio.tordini.org/minitube; + license = licenses.gpl3Plus; + platforms = with platforms; linux; + maintainers = with maintainers; [ nckx ]; + }; + + buildInputs = [ phonon phonon_backend_vlc qt4 ]; + nativeBuildInputs = [ makeWrapper ]; + + configurePhase = '' + qmake PREFIX=$out "DEFINES += APP_GOOGLE_API_KEY=${withAPIKey}" + ''; + + enableParallelBuilding = true; + + postInstall = '' + wrapProgram $out/bin/minitube \ + --prefix QT_PLUGIN_PATH : "${phonon_backend_vlc}/lib/kde4/plugins" + ''; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index a95784353b4b..37045d696e5a 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -11732,6 +11732,8 @@ let minidjvu = callPackage ../applications/graphics/minidjvu { }; + minitube = callPackage ../applications/video/minitube { }; + mimms = callPackage ../applications/audio/mimms {}; mirage = callPackage ../applications/graphics/mirage {}; From da9115128cd5a200a82fc1d30c6ae1849fae2fb6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Wed, 10 Jun 2015 09:16:04 +0200 Subject: [PATCH 070/259] qt4: disable parallel building again There are still occasional problems on Hydra. --- pkgs/development/libraries/qt-4.x/4.8/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/development/libraries/qt-4.x/4.8/default.nix b/pkgs/development/libraries/qt-4.x/4.8/default.nix index 8715af062c77..e4d1bae636cf 100644 --- a/pkgs/development/libraries/qt-4.x/4.8/default.nix +++ b/pkgs/development/libraries/qt-4.x/4.8/default.nix @@ -126,7 +126,7 @@ stdenv.mkDerivation rec { nativeBuildInputs = [ perl pkgconfig which ]; - enableParallelBuilding = true; + enableParallelBuilding = false; NIX_CFLAGS_COMPILE = optionalString stdenv.isDarwin "-I${glib}/include/glib-2.0 -I${glib}/lib/glib-2.0/include"; From fcf99efcd226dd75f40452ee6dcdaeab67627123 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Thu, 11 Jun 2015 00:26:24 +0200 Subject: [PATCH 071/259] Reduce dependency bloat --- pkgs/development/libraries/libffi/default.nix | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/pkgs/development/libraries/libffi/default.nix b/pkgs/development/libraries/libffi/default.nix index 668ac138be83..824b909f1d91 100644 --- a/pkgs/development/libraries/libffi/default.nix +++ b/pkgs/development/libraries/libffi/default.nix @@ -1,4 +1,4 @@ -{ fetchurl, stdenv, dejagnu }: +{ fetchurl, stdenv }: stdenv.mkDerivation rec { name = "libffi-3.2.1"; @@ -10,15 +10,11 @@ stdenv.mkDerivation rec { patches = if stdenv.isCygwin then [ ./3.2.1-cygwin.patch ] else null; - buildInputs = stdenv.lib.optional doCheck dejagnu; - configureFlags = [ "--with-gcc-arch=generic" # no detection of -march= or -mtune= "--enable-pax_emutramp" ]; - doCheck = stdenv.isLinux; # until we solve dejagnu problems on darwin and expect on BSD - dontStrip = stdenv ? cross; # Don't run the native `strip' when cross-compiling. # Install headers in the right place. From 8b2f226a96b90f4040af8235d158a87ada49687e Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Thu, 11 Jun 2015 01:22:37 +0200 Subject: [PATCH 072/259] Fix Samba build --- pkgs/servers/samba/4.x.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/servers/samba/4.x.nix b/pkgs/servers/samba/4.x.nix index 269ba2ec186f..aa28a3fca787 100644 --- a/pkgs/servers/samba/4.x.nix +++ b/pkgs/servers/samba/4.x.nix @@ -75,7 +75,7 @@ stdenv.mkDerivation rec { postFixup = '' export SAMBA_LIBS="$(find $out -type f -name \*.so -exec dirname {} \; | sort | uniq)" - read -r -d "" SCRIPT << EOF + read -r -d "" SCRIPT << EOF || true [ -z "\$SAMBA_LIBS" ] && exit 1; BIN='{}'; OLD_LIBS="\$(patchelf --print-rpath "\$BIN" 2>/dev/null | tr ':' '\n')"; From d21b6702a3fae4c0c5003b08741f1a1d4d6c815a Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Thu, 11 Jun 2015 02:17:00 +0200 Subject: [PATCH 073/259] mesa: Reduce dependency bloat In particular, don't depend on clang. It's really bad to have a core package like Mesa pull in multiple C compilers. --- pkgs/development/libraries/mesa/default.nix | 13 ++++--------- pkgs/top-level/all-packages.nix | 1 - 2 files changed, 4 insertions(+), 10 deletions(-) diff --git a/pkgs/development/libraries/mesa/default.nix b/pkgs/development/libraries/mesa/default.nix index 6fe65ca25df7..f2b36dd8c3e3 100644 --- a/pkgs/development/libraries/mesa/default.nix +++ b/pkgs/development/libraries/mesa/default.nix @@ -1,7 +1,7 @@ { stdenv, fetchurl, fetchpatch, pkgconfig, intltool, flex, bison, autoreconfHook, substituteAll , python, libxml2Python, file, expat, makedepend, pythonPackages , libdrm, xorg, wayland, udev, llvmPackages, libffi, libomxil-bellagio -, libvdpau, libelf, libva, libclc +, libvdpau, libelf, libva , grsecEnabled , enableTextureFloats ? false # Texture floats are patented, see docs/patents.txt , enableExtraFeatures ? false # not maintained @@ -26,7 +26,6 @@ let version = "10.5.6"; # this is the default search path for DRI drivers driverLink = "/run/opengl-driver" + stdenv.lib.optionalString stdenv.isi686 "-32"; - clang = if llvmPackages ? clang-unwrapped then llvmPackages.clang-unwrapped else llvmPackages.clang; in with { inherit (stdenv.lib) optional optionals optionalString; }; @@ -63,7 +62,6 @@ stdenv.mkDerivation { configureFlags = [ "--sysconfdir=/etc" "--localstatedir=/var" - "--with-clang-libdir=${clang}/lib" "--with-dri-driverdir=$(drivers)/lib/dri" "--with-dri-searchpath=${driverLink}/lib/dri" @@ -81,13 +79,11 @@ stdenv.mkDerivation { ++ [ "--enable-xvmc" "--enable-vdpau" - "--enable-omx" - "--enable-va" + #"--enable-omx" + #"--enable-va" # TODO: Figure out how to enable opencl without having a runtime dependency on clang "--disable-opencl" - #"--enable-opencl" - #"--enable-opencl-icd" "--with-gallium-drivers=svga,i915,ilo,r300,r600,radeonsi,nouveau,freedreno,swrast" "--enable-shared-glapi" @@ -111,8 +107,7 @@ stdenv.mkDerivation { autoreconfHook intltool expat libxml2Python llvmPackages.llvm glproto dri2proto dri3proto presentproto libX11 libXext libxcb libXt libXfixes libxshmfence - libffi wayland libvdpau libelf libXvMC libomxil-bellagio libva - libclc clang + libffi wayland libvdpau libelf libXvMC /* libomxil-bellagio libva */ ] ++ optional stdenv.isLinux udev; enableParallelBuilding = true; diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 5f3c48eba32d..f1e8d9e37f03 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -7340,7 +7340,6 @@ let # makes it slower, but during runtime we link against just mesa_drivers # through /run/opengl-driver*, which is overriden according to config.grsecurity grsecEnabled = true; - libva = libva.override { mesa = null; }; llvmPackages = llvmPackages_36; }); mesa_glu = mesaDarwinOr (callPackage ../development/libraries/mesa-glu { }); From 2b99951f995a0c110197137b131c68a62eb57f83 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Thu, 11 Jun 2015 09:02:56 +0200 Subject: [PATCH 074/259] gnutls: don't set cert location except on Linux Also refactor lib.optional*. Preserves .drv hashes on Linux. --- pkgs/development/libraries/gnutls/generic.nix | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/pkgs/development/libraries/gnutls/generic.nix b/pkgs/development/libraries/gnutls/generic.nix index 8c169153a666..07760933935a 100644 --- a/pkgs/development/libraries/gnutls/generic.nix +++ b/pkgs/development/libraries/gnutls/generic.nix @@ -7,17 +7,21 @@ assert guileBindings -> guile != null; +let + inherit (stdenv.lib) optional optionals optionalString; +in stdenv.mkDerivation rec { name = "gnutls-${version}"; inherit src patches; - configureFlags = [ + configureFlags = # FIXME: perhaps use $SSL_CERT_FILE instead - "--with-default-trust-store-file=/etc/ssl/certs/ca-certificates.crt" + optional stdenv.isLinux "--with-default-trust-store-file=/etc/ssl/certs/ca-certificates.crt" + ++ [ "--disable-dependency-tracking" "--enable-fast-install" - ] ++ stdenv.lib.optional guileBindings + ] ++ optionals guileBindings [ "--enable-guile" "--with-guile-site-dir=\${out}/share/guile/site" ]; # Build of the Guile bindings is not parallel-safe. See @@ -26,9 +30,9 @@ stdenv.mkDerivation rec { enableParallelBuilding = !guileBindings; buildInputs = [ lzo lzip nettle libtasn1 libidn p11_kit zlib gmp ] - ++ stdenv.lib.optional stdenv.isLinux trousers + ++ optional stdenv.isLinux trousers ++ [ unbound ] - ++ stdenv.lib.optional guileBindings guile; + ++ optional guileBindings guile; nativeBuildInputs = [ perl pkgconfig autoreconfHook ]; @@ -37,7 +41,7 @@ stdenv.mkDerivation rec { doCheck = (!stdenv.isFreeBSD && !stdenv.isDarwin); # Fixup broken libtool and pkgconfig files - preFixup = stdenv.lib.optionalString (!stdenv.isDarwin) '' + preFixup = optionalString (!stdenv.isDarwin) '' sed -e 's,-ltspi,-L${trousers}/lib -ltspi,' \ -e 's,-lz,-L${zlib}/lib -lz,' \ -e 's,-lgmp,-L${gmp}/lib -lgmp,' \ From 623401788df6b9f2c91fb43f4d569ea4c0c66116 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Thu, 11 Jun 2015 12:32:31 +0200 Subject: [PATCH 075/259] Net::HTTP: Disable tests https://github.com/NixOS/nixpkgs/commit/4970574409ea15bcd769c4e999e8d272ae629b1b#commitcomment-11626433 --- pkgs/top-level/perl-packages.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix index c166457add24..a9168e3bdd2b 100644 --- a/pkgs/top-level/perl-packages.nix +++ b/pkgs/top-level/perl-packages.nix @@ -6967,6 +6967,7 @@ let self = _self // overrides; _self = with self; { url = mirror://cpan/authors/id/G/GA/GAAS/Net-HTTP-6.06.tar.gz; sha256 = "1m1rvniffadq99gsy25298ia3lixwymr6kan64jd3ylyi7nkqkhx"; }; + doCheck = false; # binds to TCP ports meta = { description = "Low-level HTTP connection (client)"; license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ]; From 415407bd9328f9685d5abe5f0ff841af42dec017 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Thu, 11 Jun 2015 18:32:13 +0200 Subject: [PATCH 076/259] openssl: Update to 1.0.1n CVE-2015-4000, CVE-2015-1788, CVE-2015-1789, CVE-2015-1790, CVE-2015-1792, CVE-2015-1791, CVE-2014-8176 --- pkgs/development/libraries/openssl/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/openssl/default.nix b/pkgs/development/libraries/openssl/default.nix index d475f7ae8331..e8ecb5a57753 100644 --- a/pkgs/development/libraries/openssl/default.nix +++ b/pkgs/development/libraries/openssl/default.nix @@ -2,7 +2,7 @@ , withCryptodev ? false, cryptodevHeaders }: let - name = "openssl-1.0.1m"; + name = "openssl-1.0.1n"; opensslCrossSystem = stdenv.lib.attrByPath [ "openssl" "system" ] (throw "openssl needs its platform name cross building" null) @@ -23,7 +23,7 @@ stdenv.mkDerivation { "http://www.openssl.org/source/${name}.tar.gz" "http://openssl.linux-mirror.org/source/${name}.tar.gz" ]; - sha256 = "0x7gvyybmqm4lv62mlhlm80f1rn7il2qh8224rahqv0i15xhnpq9"; + sha1 = "2f6ea1e0f2724aca1805392e4387df8361442ace"; }; patches = (patchesCross false) ++ extraPatches; From 2e0373ee660bb51882ee3d0eaf87a1304773a404 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Thu, 11 Jun 2015 22:12:33 +0200 Subject: [PATCH 077/259] gtk3: maintenance update --- pkgs/development/libraries/gtk+/3.x.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/gtk+/3.x.nix b/pkgs/development/libraries/gtk+/3.x.nix index 4bc31b99e828..ac0fc53e755f 100644 --- a/pkgs/development/libraries/gtk+/3.x.nix +++ b/pkgs/development/libraries/gtk+/3.x.nix @@ -10,7 +10,7 @@ assert cupsSupport -> cups != null; let ver_maj = "3.16"; - ver_min = "3"; + ver_min = "4"; version = "${ver_maj}.${ver_min}"; in stdenv.mkDerivation rec { @@ -18,7 +18,7 @@ stdenv.mkDerivation rec { src = fetchurl { url = "mirror://gnome/sources/gtk+/${ver_maj}/gtk+-${version}.tar.xz"; - sha256 = "195ykv53sl2gsc847wcnd79zilm1yzcc2cfjxnrakhh2dd5gshr9"; + sha256 = "13pwj12m55mbhdaiar57q2ivdsm3lm5ycyhvm8gak0fblkbxpr8y"; }; nativeBuildInputs = [ pkgconfig gettext gobjectIntrospection perl ]; From 99a7bc241df79c791fbf0f17ffdfd19572680b91 Mon Sep 17 00:00:00 2001 From: Tuomas Tynkkynen Date: Thu, 11 Jun 2015 19:52:19 +0300 Subject: [PATCH 078/259] stdenv/linux: Link statically against isl & cloog MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Otherwise this fails on ARM: /nix/store/jipqp9739n7wrjz40igbk85pqk13s0ad-binutils-2.23.1/bin/ld: /nix/store/92pdpqrqkdf8wjciq1cisvsp8kdz8p2i-gmp-5.1.3/lib/libgmp.a(mp_get_fns.o): relocation R_ARM_MOVW_ABS_NC against `__gmp_allocate_func' can not be used when making a shared object; recompile with -fPIC /nix/store/92pdpqrqkdf8wjciq1cisvsp8kdz8p2i-gmp-5.1.3/lib/libgmp.a: could not read symbols: Bad value collect2: error: ld returned 1 exit status make[2]: *** [libisl.la] Error 1 make[2]: *** Waiting for unfinished jobs.... make[2]: Leaving directory `/tmp/nix-build-isl-0.11.1.drv-3/isl-0.11.1' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/tmp/nix-build-isl-0.11.1.drv-3/isl-0.11.1' make: *** [all] Error 2 builder for ‘/nix/store/a8ghniifd8d8agqx0cqsh41daa08v11c-isl-0.11.1.drv’ failed with exit code 2 --- pkgs/stdenv/linux/default.nix | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/pkgs/stdenv/linux/default.nix b/pkgs/stdenv/linux/default.nix index 861b7930b71e..1bcf74afa328 100644 --- a/pkgs/stdenv/linux/default.nix +++ b/pkgs/stdenv/linux/default.nix @@ -202,7 +202,7 @@ rec { coreutils = bootstrapTools; name = "bootstrap-gcc-wrapper"; - overrides = pkgs: { + overrides = pkgs: rec { inherit (stage2.pkgs) binutils glibc perl patchelf linuxHeaders; # Link GCC statically against GMP etc. This makes sense because # these builds of the libraries are only used by GCC, so it @@ -210,9 +210,15 @@ rec { gmp = pkgs.gmp.override { stdenv = pkgs.makeStaticLibraries pkgs.stdenv; }; mpfr = pkgs.mpfr.override { stdenv = pkgs.makeStaticLibraries pkgs.stdenv; }; libmpc = pkgs.libmpc.override { stdenv = pkgs.makeStaticLibraries pkgs.stdenv; }; - isl = pkgs.isl.override { stdenv = pkgs.makeStaticLibraries pkgs.stdenv; }; - cloog = pkgs.cloog.override { stdenv = pkgs.makeStaticLibraries pkgs.stdenv; }; - gccPlain = pkgs.gcc.cc; + isl_0_11 = pkgs.isl_0_11.override { stdenv = pkgs.makeStaticLibraries pkgs.stdenv; }; + cloog_0_18_0 = pkgs.cloog_0_18_0.override { + stdenv = pkgs.makeStaticLibraries pkgs.stdenv; + isl = isl_0_11; + }; + gccPlain = pkgs.gcc.cc.override { + isl = isl_0_11; + cloog = cloog_0_18_0; + }; }; extraBuildInputs = [ stage2.pkgs.patchelf stage2.pkgs.paxctl ]; }; @@ -287,7 +293,6 @@ rec { [ gzip bzip2 xz bash binutils coreutils diffutils findutils gawk glibc gnumake gnused gnutar gnugrep gnupatch patchelf attr acl paxctl zlib pcre linuxHeaders ed gcc gcc.cc libsigsegv - stage3.pkgs.isl_0_11 stage3.pkgs.cloog_0_18_0 ]; overrides = pkgs: { From db1054b61639b00b853d04a4a8b61120bc95ee4c Mon Sep 17 00:00:00 2001 From: "William A. Kennington III" Date: Thu, 11 Jun 2015 17:34:51 -0700 Subject: [PATCH 079/259] isl: Remove the default version to keep it in sync --- pkgs/development/libraries/isl/default.nix | 24 ---------------------- pkgs/top-level/all-packages.nix | 2 +- 2 files changed, 1 insertion(+), 25 deletions(-) delete mode 100644 pkgs/development/libraries/isl/default.nix diff --git a/pkgs/development/libraries/isl/default.nix b/pkgs/development/libraries/isl/default.nix deleted file mode 100644 index 5fa009277e15..000000000000 --- a/pkgs/development/libraries/isl/default.nix +++ /dev/null @@ -1,24 +0,0 @@ -{ stdenv, fetchurl, gmp }: - -stdenv.mkDerivation rec { - name = "isl-0.14"; - - src = fetchurl { - url = "http://isl.gforge.inria.fr/${name}.tar.bz2"; - sha256 = "0dlg4b85nw4w534525h0fvb7yhb8i4am8kskhmm0ym7qabzh4g3y"; - }; - - buildInputs = [ gmp ]; - - enableParallelBuilding = true; - - doCheck = true; - - meta = { - homepage = http://www.kotnet.org/~skimo/isl/; - license = stdenv.lib.licenses.lgpl21; - description = "A library for manipulating sets and relations of integer points bounded by linear constraints"; - maintainers = [ stdenv.lib.maintainers.shlevy ]; - platforms = stdenv.lib.platforms.all; - }; -} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index f1e8d9e37f03..59d463a90d5b 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -1846,7 +1846,7 @@ let ised = callPackage ../tools/misc/ised {}; - isl = callPackage ../development/libraries/isl { }; + isl = isl_0_14; isl_0_11 = callPackage ../development/libraries/isl/0.11.1.nix { }; isl_0_12 = callPackage ../development/libraries/isl/0.12.2.nix { }; isl_0_14 = callPackage ../development/libraries/isl/0.14.1.nix { }; From 370fc79b948438694dc4767570afe43c5b1fb7c4 Mon Sep 17 00:00:00 2001 From: "William A. Kennington III" Date: Thu, 11 Jun 2015 17:35:53 -0700 Subject: [PATCH 080/259] gmp: Use version 6 as the default --- pkgs/top-level/all-packages.nix | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 59d463a90d5b..0d3804c8c2b0 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -6191,7 +6191,8 @@ let gmp4 = callPackage ../development/libraries/gmp/4.3.2.nix { }; # required by older GHC versions gmp5 = callPackage ../development/libraries/gmp/5.1.x.nix { }; - gmp = gmp5; + gmp6 = callPackage ../development/libraries/gmp/6.x.nix { }; + gmp = gmp6; gmpxx = appendToName "with-cxx" (gmp.override { cxx = true; }); #GMP ex-satellite, so better keep it near gmp From 33e70ad68a13efc14187a0657d447c26cf765cb7 Mon Sep 17 00:00:00 2001 From: "William A. Kennington III" Date: Thu, 11 Jun 2015 17:59:51 -0700 Subject: [PATCH 081/259] ncurses: Add gcc-5 patch --- .../development/libraries/ncurses/default.nix | 3 +- .../development/libraries/ncurses/gcc-5.patch | 46 +++++++++++++++++++ 2 files changed, 48 insertions(+), 1 deletion(-) create mode 100644 pkgs/development/libraries/ncurses/gcc-5.patch diff --git a/pkgs/development/libraries/ncurses/default.nix b/pkgs/development/libraries/ncurses/default.nix index 19b1b5fe33b0..0c789fc4460c 100644 --- a/pkgs/development/libraries/ncurses/default.nix +++ b/pkgs/development/libraries/ncurses/default.nix @@ -17,7 +17,8 @@ stdenv.mkDerivation rec { sha256 = "0fsn7xis81za62afan0vvm38bvgzg5wfmv1m86flqcj0nj7jjilh"; }; - patches = [ ./clang.patch ]; + # gcc-5.patch should be removed after 5.9 + patches = [ ./clang.patch ./gcc-5.patch ]; configureFlags = [ "--with-shared" "--without-debug" "--enable-pc-files" "--enable-symlinks" ] diff --git a/pkgs/development/libraries/ncurses/gcc-5.patch b/pkgs/development/libraries/ncurses/gcc-5.patch new file mode 100644 index 000000000000..2448229b88e1 --- /dev/null +++ b/pkgs/development/libraries/ncurses/gcc-5.patch @@ -0,0 +1,46 @@ +https://bugs.gentoo.org/545114 + +extracted from the upstream change (which had many unrelated commits in one) + +From 97bb4678dc03e753290b39bbff30ba2825df9517 Mon Sep 17 00:00:00 2001 +From: "Thomas E. Dickey" +Date: Sun, 7 Dec 2014 03:10:09 +0000 +Subject: [PATCH] ncurses 5.9 - patch 20141206 + ++ modify MKlib_gen.sh to work around change in development version of + gcc introduced here: + https://gcc.gnu.org/ml/gcc-patches/2014-06/msg02185.html + https://gcc.gnu.org/ml/gcc-patches/2014-07/msg00236.html + (reports by Marcus Shawcroft, Maohui Lei). + +diff --git a/ncurses/base/MKlib_gen.sh b/ncurses/base/MKlib_gen.sh +index d8cc3c9..b91398c 100755 +--- a/ncurses/base/MKlib_gen.sh ++++ b/ncurses/base/MKlib_gen.sh +@@ -474,11 +474,22 @@ sed -n -f $ED1 \ + -e 's/gen_$//' \ + -e 's/ / /g' >>$TMP + ++cat >$ED1 < $ED2 ++cat $ED2 >$TMP ++ + $preprocessor $TMP 2>/dev/null \ +-| sed \ +- -e 's/ / /g' \ +- -e 's/^ //' \ +- -e 's/_Bool/NCURSES_BOOL/g' \ ++| sed -f $ED1 \ + | $AWK -f $AW2 \ + | sed -f $ED3 \ + | sed \ From 85ae0cb070628bcb98e63e6166fd6f52045f385a Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Fri, 12 Jun 2015 10:54:02 +0200 Subject: [PATCH 082/259] ghc: move gcc-clang-wrapper.sh script into the ghc directory tree since it's the only user of that script --- pkgs/development/compilers/ghc/7.0.4-binary.nix | 2 +- pkgs/development/compilers/ghc/7.0.4.nix | 2 +- pkgs/development/compilers/ghc/7.2.2.nix | 2 +- pkgs/development/compilers/ghc/7.4.2-binary.nix | 2 +- pkgs/development/compilers/ghc/7.4.2.nix | 2 +- pkgs/development/compilers/ghc/7.6.3.nix | 2 +- .../{haskell-modules => compilers/ghc}/gcc-clang-wrapper.sh | 0 7 files changed, 6 insertions(+), 6 deletions(-) rename pkgs/development/{haskell-modules => compilers/ghc}/gcc-clang-wrapper.sh (100%) diff --git a/pkgs/development/compilers/ghc/7.0.4-binary.nix b/pkgs/development/compilers/ghc/7.0.4-binary.nix index a1cdd6171eee..7a6f1b78fa49 100644 --- a/pkgs/development/compilers/ghc/7.0.4-binary.nix +++ b/pkgs/development/compilers/ghc/7.0.4-binary.nix @@ -90,7 +90,7 @@ stdenv.mkDerivation rec { configurePhase = '' ./configure --prefix=$out \ --with-gmp-libraries=${gmp}/lib --with-gmp-includes=${gmp}/include \ - ${stdenv.lib.optionalString stdenv.isDarwin "--with-gcc=${../../haskell-modules/gcc-clang-wrapper.sh}"} + ${stdenv.lib.optionalString stdenv.isDarwin "--with-gcc=${./gcc-clang-wrapper.sh}"} ''; # Stripping combined with patchelf breaks the executables (they die diff --git a/pkgs/development/compilers/ghc/7.0.4.nix b/pkgs/development/compilers/ghc/7.0.4.nix index c28359af16fa..281e5ca66a2c 100644 --- a/pkgs/development/compilers/ghc/7.0.4.nix +++ b/pkgs/development/compilers/ghc/7.0.4.nix @@ -33,7 +33,7 @@ stdenv.mkDerivation rec { export NIX_LDFLAGS+=" -no_dtrace_dof" ''; - configureFlags = if stdenv.isDarwin then "--with-gcc=${../../haskell-modules/gcc-clang-wrapper.sh}" + configureFlags = if stdenv.isDarwin then "--with-gcc=${./gcc-clang-wrapper.sh}" else "--with-gcc=${stdenv.cc}/bin/gcc"; NIX_CFLAGS_COMPILE = "-fomit-frame-pointer"; diff --git a/pkgs/development/compilers/ghc/7.2.2.nix b/pkgs/development/compilers/ghc/7.2.2.nix index 651cf200a8d0..7276f413967f 100644 --- a/pkgs/development/compilers/ghc/7.2.2.nix +++ b/pkgs/development/compilers/ghc/7.2.2.nix @@ -33,7 +33,7 @@ stdenv.mkDerivation rec { export NIX_LDFLAGS+=" -no_dtrace_dof" ''; - configureFlags = if stdenv.isDarwin then "--with-gcc=${../../haskell-modules/gcc-clang-wrapper.sh}" + configureFlags = if stdenv.isDarwin then "--with-gcc=${./gcc-clang-wrapper.sh}" else "--with-gcc=${stdenv.cc}/bin/gcc"; NIX_CFLAGS_COMPILE = "-fomit-frame-pointer"; diff --git a/pkgs/development/compilers/ghc/7.4.2-binary.nix b/pkgs/development/compilers/ghc/7.4.2-binary.nix index 2b8d403701f6..25c9dd0a65a9 100644 --- a/pkgs/development/compilers/ghc/7.4.2-binary.nix +++ b/pkgs/development/compilers/ghc/7.4.2-binary.nix @@ -90,7 +90,7 @@ stdenv.mkDerivation rec { configurePhase = '' ./configure --prefix=$out \ --with-gmp-libraries=${gmp}/lib --with-gmp-includes=${gmp}/include \ - ${stdenv.lib.optionalString stdenv.isDarwin "--with-gcc=${../../haskell-modules/gcc-clang-wrapper.sh}"} + ${stdenv.lib.optionalString stdenv.isDarwin "--with-gcc=${./gcc-clang-wrapper.sh}"} ''; # Stripping combined with patchelf breaks the executables (they die diff --git a/pkgs/development/compilers/ghc/7.4.2.nix b/pkgs/development/compilers/ghc/7.4.2.nix index 4e4a5f6024ea..b2abcb08ec3a 100644 --- a/pkgs/development/compilers/ghc/7.4.2.nix +++ b/pkgs/development/compilers/ghc/7.4.2.nix @@ -36,7 +36,7 @@ stdenv.mkDerivation rec { export NIX_LDFLAGS+=" -no_dtrace_dof" ''; - configureFlags = if stdenv.isDarwin then "--with-gcc=${../../haskell-modules/gcc-clang-wrapper.sh}" + configureFlags = if stdenv.isDarwin then "--with-gcc=${./gcc-clang-wrapper.sh}" else "--with-gcc=${stdenv.cc}/bin/gcc"; # required, because otherwise all symbols from HSffi.o are stripped, and diff --git a/pkgs/development/compilers/ghc/7.6.3.nix b/pkgs/development/compilers/ghc/7.6.3.nix index 4eb6e425f354..366c0044a67a 100644 --- a/pkgs/development/compilers/ghc/7.6.3.nix +++ b/pkgs/development/compilers/ghc/7.6.3.nix @@ -52,7 +52,7 @@ in stdenv.mkDerivation rec { export NIX_LDFLAGS+=" -no_dtrace_dof" ''; - configureFlags = if stdenv.isDarwin then "--with-gcc=${../../haskell-modules/gcc-clang-wrapper.sh}" + configureFlags = if stdenv.isDarwin then "--with-gcc=${./gcc-clang-wrapper.sh}" else "--with-gcc=${stdenv.cc}/bin/gcc"; postInstall = '' diff --git a/pkgs/development/haskell-modules/gcc-clang-wrapper.sh b/pkgs/development/compilers/ghc/gcc-clang-wrapper.sh similarity index 100% rename from pkgs/development/haskell-modules/gcc-clang-wrapper.sh rename to pkgs/development/compilers/ghc/gcc-clang-wrapper.sh From 86f9f5d128306a37649cf13a687b231df18a03ca Mon Sep 17 00:00:00 2001 From: "William A. Kennington III" Date: Fri, 12 Jun 2015 13:53:53 -0700 Subject: [PATCH 083/259] perl: Don't use builtin zlib and bzip2 --- pkgs/development/interpreters/perl/5.20/default.nix | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/pkgs/development/interpreters/perl/5.20/default.nix b/pkgs/development/interpreters/perl/5.20/default.nix index 0ad955d03630..053f9730f45d 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 ? stdenv ? glibc }: +{ stdenv, fetchurl, bzip2, zlib, enableThreading ? stdenv ? glibc }: # We can only compile perl with threading on platforms where we have a # real glibc in the stdenv. @@ -33,7 +33,12 @@ stdenv.mkDerivation rec { ./no-sys-dirs.patch ] ++ optional stdenv.isSunOS ./ld-shared.patch - ++ stdenv.lib.optional stdenv.isDarwin [ ./cpp-precomp.patch ./no-libutil.patch ] ; + ++ stdenv.lib.optional stdenv.isDarwin [ ./cpp-precomp.patch ./no-libutil.patch ]; + + buildInputs = [ zlib bzip2 ]; + + BUILD_ZLIB = "false"; + BUILD_BZIP2 = "0"; # Build a thread-safe Perl with a dynamic libperls.o. We need the # "installstyle" option to ensure that modules are put under From 4c536065b7f1b349472689a51dc423c2efb2ed88 Mon Sep 17 00:00:00 2001 From: "William A. Kennington III" Date: Fri, 12 Jun 2015 13:54:15 -0700 Subject: [PATCH 084/259] perl: Add gcc5 compat patch --- .../interpreters/perl/5.20/default.nix | 2 + .../perl/5.20/perl-5.20.2-gcc5_fixes-1.patch | 127 ++++++++++++++++++ 2 files changed, 129 insertions(+) create mode 100644 pkgs/development/interpreters/perl/5.20/perl-5.20.2-gcc5_fixes-1.patch diff --git a/pkgs/development/interpreters/perl/5.20/default.nix b/pkgs/development/interpreters/perl/5.20/default.nix index 053f9730f45d..700616dd4ebf 100644 --- a/pkgs/development/interpreters/perl/5.20/default.nix +++ b/pkgs/development/interpreters/perl/5.20/default.nix @@ -31,6 +31,8 @@ stdenv.mkDerivation rec { patches = [ # Do not look in /usr etc. for dependencies. ./no-sys-dirs.patch + # Remove in 5.20.3 + ./perl-5.20.2-gcc5_fixes-1.patch ] ++ optional stdenv.isSunOS ./ld-shared.patch ++ stdenv.lib.optional stdenv.isDarwin [ ./cpp-precomp.patch ./no-libutil.patch ]; diff --git a/pkgs/development/interpreters/perl/5.20/perl-5.20.2-gcc5_fixes-1.patch b/pkgs/development/interpreters/perl/5.20/perl-5.20.2-gcc5_fixes-1.patch new file mode 100644 index 000000000000..21f3ca8d7a54 --- /dev/null +++ b/pkgs/development/interpreters/perl/5.20/perl-5.20.2-gcc5_fixes-1.patch @@ -0,0 +1,127 @@ +Submitted By: Ken Moffat +Date: 2015-04-17 +Initial Package Version: 5.20.2 +Upstream Status: Committed +Origin: Petr Pisař and Tony Cook +Description: Fixes Errno.pm and h2ph with gcc-5. + +1. cherry-picked because the change to $version will not apply, from +commit 816b056ffb99ae54642320e20dc30a59fd1effef +Author: Petr Písař +Date: Wed Feb 11 15:46:37 2015 +0100 + + Fix Errno.pm generation for gcc-5.0 + + gcc-5.0 -E interleaves now line numbers with expended macros, so that + the generated errno.c will be preprocessed to + + EBFONT => [[ + 59 + ]] + + which is hard to parse in in line-based reader. + + So use -P option with gcc >= 5.0. Global -P usage would break makedepend, + global -ftrack-macro-expansion=0 would break lib/h2ph.t. + + RT#123784 + +diff --git a/ext/Errno/Errno_pm.PL b/ext/Errno/Errno_pm.PL +index 3dadfce..c6bfa06 100644 +--- a/ext/Errno/Errno_pm.PL ++++ b/ext/Errno/Errno_pm.PL +@@ -215,20 +215,31 @@ sub write_errno_pm { + { # BeOS (support now removed) did not enter this block + # invoke CPP and read the output + ++ my $inhibit_linemarkers = ''; ++ if ($Config{gccversion} =~ /\A(\d+)\./ and $1 >= 5) { ++ # GCC 5.0 interleaves expanded macros with line numbers breaking ++ # each line into multiple lines. RT#123784 ++ $inhibit_linemarkers = ' -P'; ++ } ++ + if ($^O eq 'VMS') { +- my $cpp = "$Config{cppstdin} $Config{cppflags} $Config{cppminus}"; ++ my $cpp = "$Config{cppstdin} $Config{cppflags}" . ++ $inhibit_linemarkers . " $Config{cppminus}"; + $cpp =~ s/sys\$input//i; + open(CPPO,"$cpp errno.c |") or + die "Cannot exec $Config{cppstdin}"; + } elsif ($IsMSWin32 || $^O eq 'NetWare') { +- open(CPPO,"$Config{cpprun} $Config{cppflags} errno.c |") or +- die "Cannot run '$Config{cpprun} $Config{cppflags} errno.c'"; ++ my $cpp = "$Config{cpprun} $Config{cppflags}" . ++ $inhibit_linemarkers; ++ open(CPPO,"$cpp errno.c |") or ++ die "Cannot run '$cpp errno.c'"; + } elsif ($IsSymbian) { +- my $cpp = "gcc -E -I$ENV{SDK}\\epoc32\\include\\libc -"; ++ my $cpp = "gcc -E -I$ENV{SDK}\\epoc32\\include\\libc" . ++ $inhibit_linemarkers ." -"; + open(CPPO,"$cpp < errno.c |") + or die "Cannot exec $cpp"; + } else { +- my $cpp = default_cpp(); ++ my $cpp = default_cpp() . $inhibit_linemarkers; + open(CPPO,"$cpp < errno.c |") + or die "Cannot exec $cpp"; + } + +commit 3bea78d24634e630b610f59957e7a019205a67b2 +Author: Tony Cook +Date: Mon Feb 16 15:57:00 2015 +1100 + + h2ph: correct handling of hex constants for the preamble + + Previously they were treated as identifiers resulting in code + generated like C< &0xFFF >. + + We also try to prevent compile-time warnings from large hex integers, + the user isn't responsible for the generated code, so we delay those + warnings to run-time. + +diff --git a/utils/h2ph.PL b/utils/h2ph.PL +index 9a8b14d..d082f22 100644 +--- a/utils/h2ph.PL ++++ b/utils/h2ph.PL +@@ -769,7 +769,7 @@ sub inc_dirs + sub build_preamble_if_necessary + { + # Increment $VERSION every time this function is modified: +- my $VERSION = 3; ++ my $VERSION = 4; + my $preamble = "$Dest_dir/_h2ph_pre.ph"; + + # Can we skip building the preamble file? +@@ -788,6 +788,11 @@ sub build_preamble_if_necessary + + open PREAMBLE, ">$preamble" or die "Cannot open $preamble: $!"; + print PREAMBLE "# This file was created by h2ph version $VERSION\n"; ++ # Prevent non-portable hex constants from warning. ++ # ++ # We still produce an overflow warning if we can't represent ++ # a hex constant as an integer. ++ print PREAMBLE "no warnings qw(portable);\n"; + + foreach (sort keys %define) { + if ($opt_D) { +@@ -814,6 +819,18 @@ DEFINE + # integer: + print PREAMBLE + "unless (defined &$_) { sub $_() { $1 } }\n\n"; ++ } elsif ($define{$_} =~ /^([+-]?0x[\da-f]+)U?L{0,2}$/i) { ++ # hex integer ++ # Special cased, since perl warns on hex integers ++ # that can't be represented in a UV. ++ # ++ # This way we get the warning at time of use, so the user ++ # only gets the warning if they happen to use this ++ # platform-specific definition. ++ my $code = $1; ++ $code = "hex('$code')" if length $code > 10; ++ print PREAMBLE ++ "unless (defined &$_) { sub $_() { $code } }\n\n"; + } elsif ($define{$_} =~ /^\w+$/) { + my $def = $define{$_}; + if ($isatype{$def}) { From 03efddef759f1f8d7906445be8b9795674b7c622 Mon Sep 17 00:00:00 2001 From: "William A. Kennington III" Date: Fri, 12 Jun 2015 13:55:34 -0700 Subject: [PATCH 085/259] perl: Add version 5.22.0 --- .../interpreters/perl/5.22/cpp-precomp.patch | 11 + .../interpreters/perl/5.22/default.nix | 110 ++++++++ .../interpreters/perl/5.22/ld-shared.patch | 11 + .../interpreters/perl/5.22/no-libutil.patch | 12 + .../interpreters/perl/5.22/no-sys-dirs.patch | 250 ++++++++++++++++++ .../interpreters/perl/5.22/setup-hook.sh | 5 + pkgs/top-level/all-packages.nix | 5 + 7 files changed, 404 insertions(+) create mode 100644 pkgs/development/interpreters/perl/5.22/cpp-precomp.patch create mode 100644 pkgs/development/interpreters/perl/5.22/default.nix create mode 100644 pkgs/development/interpreters/perl/5.22/ld-shared.patch create mode 100644 pkgs/development/interpreters/perl/5.22/no-libutil.patch create mode 100644 pkgs/development/interpreters/perl/5.22/no-sys-dirs.patch create mode 100644 pkgs/development/interpreters/perl/5.22/setup-hook.sh diff --git a/pkgs/development/interpreters/perl/5.22/cpp-precomp.patch b/pkgs/development/interpreters/perl/5.22/cpp-precomp.patch new file mode 100644 index 000000000000..231853fe51a6 --- /dev/null +++ b/pkgs/development/interpreters/perl/5.22/cpp-precomp.patch @@ -0,0 +1,11 @@ +--- a/hints/darwin.sh 2013-05-08 11:13:45.000000000 -0600 ++++ b/hints/darwin.sh 2013-05-08 11:15:04.000000000 -0600 +@@ -129,7 +129,7 @@ + + # Avoid Apple's cpp precompiler, better for extensions + if [ "X`echo | ${cc} -no-cpp-precomp -E - 2>&1 >/dev/null`" = "X" ]; then +- cppflags="${cppflags} -no-cpp-precomp" ++ #cppflags="${cppflags} -no-cpp-precomp" + + # This is necessary because perl's build system doesn't + # apply cppflags to cc compile lines as it should. diff --git a/pkgs/development/interpreters/perl/5.22/default.nix b/pkgs/development/interpreters/perl/5.22/default.nix new file mode 100644 index 000000000000..b7aad858ccfb --- /dev/null +++ b/pkgs/development/interpreters/perl/5.22/default.nix @@ -0,0 +1,110 @@ +{ stdenv, fetchurl, bzip2, zlib, enableThreading ? stdenv ? glibc }: + +# We can only compile perl with threading on platforms where we have a +# real glibc in the stdenv. +# +# Instead of silently building an unthreaded perl if this is not the +# case, we force callers to disableThreading explicitly, therefore +# documenting the platforms where the perl is not threaded. +# +# In the case of stdenv linux boot stage1 it's not possible to use +# threading because of the simpleness of the bootstrap glibc, so we +# use enableThreading = false there. +assert enableThreading -> (stdenv ? glibc); + +let + + libc = if stdenv.cc.libc or null != null then stdenv.cc.libc else "/usr"; + +in + +with stdenv.lib; + +stdenv.mkDerivation rec { + name = "perl-5.22.0"; + + src = fetchurl { + url = "mirror://cpan/src/5.0/${name}.tar.gz"; + sha256 = "0g5bl8sdpzx9gx2g5jq3py4bj07z2ylk7s1qn0fvsss2yl3hhs8c"; + }; + + patches = + [ # Do not look in /usr etc. for dependencies. + ./no-sys-dirs.patch + ] + ++ optional stdenv.isSunOS ./ld-shared.patch + ++ stdenv.lib.optional stdenv.isDarwin [ ./cpp-precomp.patch ./no-libutil.patch ]; + + buildInputs = [ zlib bzip2 ]; + + BUILD_ZLIB = "false"; + BUILD_BZIP2 = "0"; + + # 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=cc" + "-Uinstallusrbinperl" + "-Dinstallstyle=lib/perl5" + "-Duseshrplib" + "-Dlocincpth=${libc}/include" + "-Dloclibpth=${libc}/lib" + ] + ++ optional enableThreading "-Dusethreads"; + + configureScript = "${stdenv.shell} ./Configure"; + + dontAddPrefix = true; + + enableParallelBuilding = true; + + preConfigure = + '' + + configureFlags="$configureFlags -Dprefix=$out -Dman1dir=$out/share/man/man1 -Dman3dir=$out/share/man/man3" + + ${optionalString stdenv.isArm '' + configureFlagsArray=(-Dldflags="-lm -lrt") + ''} + '' + optionalString stdenv.isDarwin '' + substituteInPlace hints/darwin.sh --replace "env MACOSX_DEPLOYMENT_TARGET=10.3" "" + '' + optionalString (!enableThreading) '' + # We need to do this because the bootstrap doesn't have a static libpthread + sed -i 's,\(libswanted.*\)pthread,\1,g' Configure + ''; + + preBuild = optionalString (!(stdenv ? cc && stdenv.cc.nativeTools)) + '' + # Make Cwd work on NixOS (where we don't have a /bin/pwd). + substituteInPlace dist/PathTools/Cwd.pm --replace "'/bin/pwd'" "'$(type -tP pwd)'" + ''; + + setupHook = ./setup-hook.sh; + + passthru.libPrefix = "lib/perl5/site_perl"; + + preCheck = '' + # Try and setup a local hosts file + if [ -f "${libc}/lib/libnss_files.so" ]; then + mkdir $TMPDIR/fakelib + cp "${libc}/lib/libnss_files.so" $TMPDIR/fakelib + sed -i 's,/etc/hosts,/dev/fd/3,g' $TMPDIR/fakelib/libnss_files.so + export LD_LIBRARY_PATH=$TMPDIR/fakelib + fi + ''; + + postCheck = '' + unset LD_LIBRARY_PATH + ''; + + meta = { + homepage = https://www.perl.org/; + description = "The standard implementation of the Perl 5 programmming language"; + maintainers = [ maintainers.eelco ]; + platforms = platforms.all; + }; +} diff --git a/pkgs/development/interpreters/perl/5.22/ld-shared.patch b/pkgs/development/interpreters/perl/5.22/ld-shared.patch new file mode 100644 index 000000000000..be45230c8a73 --- /dev/null +++ b/pkgs/development/interpreters/perl/5.22/ld-shared.patch @@ -0,0 +1,11 @@ +--- perl-5.16.2/hints/solaris_2.sh.orig 2013-02-14 19:29:49.453988140 +0000 ++++ perl-5.16.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.22/no-libutil.patch b/pkgs/development/interpreters/perl/5.22/no-libutil.patch new file mode 100644 index 000000000000..68d44612bfe6 --- /dev/null +++ b/pkgs/development/interpreters/perl/5.22/no-libutil.patch @@ -0,0 +1,12 @@ +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="socket bind inet nsl nm ndbm gdbm dbm db malloc dl 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.22/no-sys-dirs.patch b/pkgs/development/interpreters/perl/5.22/no-sys-dirs.patch new file mode 100644 index 000000000000..1793273a76f9 --- /dev/null +++ b/pkgs/development/interpreters/perl/5.22/no-sys-dirs.patch @@ -0,0 +1,250 @@ +diff -ru -x '*~' -x '*.rej' perl-5.20.0-orig/Configure perl-5.20.0/Configure +--- perl-5.20.0-orig/Configure 2014-05-26 15:34:18.000000000 +0200 ++++ perl-5.20.0/Configure 2014-06-25 10:43:35.368285986 +0200 +@@ -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 +@@ -1337,8 +1329,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='' +@@ -1349,17 +1340,12 @@ + + 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 +@@ -1391,8 +1377,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 + +@@ -2446,7 +2430,6 @@ + zip + " + pth=`echo $PATH | sed -e "s/$p_/ /g"` +-pth="$pth $sysroot/lib $sysroot/usr/lib" + for file in $loclist; do + eval xxx=\$$file + case "$xxx" in +@@ -4936,7 +4919,7 @@ + : Set private lib path + case "$plibpth" in + '') if ./mips; then +- plibpth="$incpath/usr/lib $sysroot/usr/local/lib $sysroot/usr/ccs/lib" ++ plibpth="$incpath/usr/lib" + fi;; + esac + case "$libpth" in +@@ -8600,13 +8583,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 +@@ -19900,9 +19878,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 " " +Only in perl-5.20.0/: Configure.orig +diff -ru -x '*~' -x '*.rej' perl-5.20.0-orig/ext/Errno/Errno_pm.PL perl-5.20.0/ext/Errno/Errno_pm.PL +--- perl-5.20.0-orig/ext/Errno/Errno_pm.PL 2014-05-26 15:34:20.000000000 +0200 ++++ perl-5.20.0/ext/Errno/Errno_pm.PL 2014-06-25 10:31:24.317970047 +0200 +@@ -126,11 +126,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) { + # When cross-compiling we may store a path for gcc's "sysroot" option: + my $sysroot = $Config{sysroot} || ''; + # Some Linuxes have weird errno.hs which generate +Only in perl-5.20.0/ext/Errno: Errno_pm.PL.orig +diff -ru -x '*~' -x '*.rej' perl-5.20.0-orig/hints/freebsd.sh perl-5.20.0/hints/freebsd.sh +--- perl-5.20.0-orig/hints/freebsd.sh 2014-01-31 22:55:51.000000000 +0100 ++++ perl-5.20.0/hints/freebsd.sh 2014-06-25 10:25:53.263964680 +0200 +@@ -119,21 +119,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 -ru -x '*~' -x '*.rej' perl-5.20.0-orig/hints/linux.sh perl-5.20.0/hints/linux.sh +--- perl-5.20.0-orig/hints/linux.sh 2014-05-26 15:34:20.000000000 +0200 ++++ perl-5.20.0/hints/linux.sh 2014-06-25 10:33:47.354883843 +0200 +@@ -150,25 +150,6 @@ + ;; + esac + +-# Ubuntu 11.04 (and later, presumably) doesn't keep most libraries +-# (such as -lm) in /lib or /usr/lib. So we have to ask gcc to tell us +-# where to look. We don't want gcc's own libraries, however, so we +-# filter those out. +-# This could be conditional on Unbuntu, but other distributions may +-# follow suit, and this scheme seems to work even on rather old gcc's. +-# This unconditionally uses gcc because even if the user is using another +-# compiler, we still need to find the math library and friends, and I don't +-# know how other compilers will cope with that situation. +-# Morever, if the user has their own gcc earlier in $PATH than the system gcc, +-# we don't want its libraries. So we try to prefer the system gcc +-# Still, as an escape hatch, allow Configure command line overrides to +-# plibpth to bypass this check. +-if [ -x /usr/bin/gcc ] ; then +- gcc=/usr/bin/gcc +-else +- gcc=gcc +-fi +- + case "$plibpth" in + '') plibpth=`LANG=C LC_ALL=C $gcc $ccflags $ldflags -print-search-dirs | grep libraries | + cut -f2- -d= | tr ':' $trnl | grep -v 'gcc' | sed -e 's:/$::'` +@@ -178,32 +159,6 @@ + ;; + esac + +-case "$libc" in +-'') +-# If you have glibc, then report the version for ./myconfig bug reporting. +-# (Configure doesn't need to know the specific version since it just uses +-# gcc to load the library for all tests.) +-# We don't use __GLIBC__ and __GLIBC_MINOR__ because they +-# are insufficiently precise to distinguish things like +-# libc-2.0.6 and libc-2.0.7. +- for p in $plibpth +- do +- for trylib in libc.so.6 libc.so +- do +- if $test -e $p/$trylib; then +- libc=`ls -l $p/$trylib | awk '{print $NF}'` +- if $test "X$libc" != X; then +- break +- fi +- fi +- done +- if $test "X$libc" != X; then +- break +- fi +- done +- ;; +-esac +- + # Are we using ELF? Thanks to Kenneth Albanowski + # for this test. + cat >try.c <<'EOM' +@@ -367,33 +322,6 @@ + ;; + esac + +-# SuSE8.2 has /usr/lib/libndbm* which are ld scripts rather than +-# true libraries. The scripts cause binding against static +-# version of -lgdbm which is a bad idea. So if we have 'nm' +-# make sure it can read the file +-# NI-S 2003/08/07 +-case "$nm" in +- '') ;; +- *) +- for p in $plibpth +- do +- if $test -r $p/libndbm.so; then +- if $nm $p/libndbm.so >/dev/null 2>&1 ; then +- echo 'Your shared -lndbm seems to be a real library.' +- _libndbm_real=1 +- break +- fi +- fi +- done +- if $test "X$_libndbm_real" = X; then +- echo 'Your shared -lndbm is not a real library.' +- set `echo X "$libswanted "| sed -e 's/ ndbm / /'` +- shift +- libswanted="$*" +- fi +- ;; +-esac +- + # Linux on Synology. + if [ -f /etc/synoinfo.conf -a -d /usr/syno ]; then + # Tested on Synology DS213 and DS413 diff --git a/pkgs/development/interpreters/perl/5.22/setup-hook.sh b/pkgs/development/interpreters/perl/5.22/setup-hook.sh new file mode 100644 index 000000000000..a8656b8531db --- /dev/null +++ b/pkgs/development/interpreters/perl/5.22/setup-hook.sh @@ -0,0 +1,5 @@ +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 f3669f3cf118..82f23b713ddd 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -4842,6 +4842,11 @@ let fetchurl = fetchurlBoot; }; + perl522 = callPackage ../development/interpreters/perl/5.22 { + fetchurl = fetchurlBoot; + }; + + # Make perl522 the default once gnulib is updated to support it. perl = perl520; php = php56; From 458552f614676a338272ca064a3207305345d4f9 Mon Sep 17 00:00:00 2001 From: "William A. Kennington III" Date: Fri, 12 Jun 2015 13:56:19 -0700 Subject: [PATCH 086/259] Revert "Net::HTTP: Disable tests" This should work with a well built version of perl that has correctly generated Errno information. This reverts commit 623401788df6b9f2c91fb43f4d569ea4c0c66116. --- pkgs/top-level/perl-packages.nix | 1 - 1 file changed, 1 deletion(-) diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix index a9168e3bdd2b..c166457add24 100644 --- a/pkgs/top-level/perl-packages.nix +++ b/pkgs/top-level/perl-packages.nix @@ -6967,7 +6967,6 @@ let self = _self // overrides; _self = with self; { url = mirror://cpan/authors/id/G/GA/GAAS/Net-HTTP-6.06.tar.gz; sha256 = "1m1rvniffadq99gsy25298ia3lixwymr6kan64jd3ylyi7nkqkhx"; }; - doCheck = false; # binds to TCP ports meta = { description = "Low-level HTTP connection (client)"; license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ]; From dce591e0b8f99322b2063940c39c892cb03e6d27 Mon Sep 17 00:00:00 2001 From: "William A. Kennington III" Date: Fri, 12 Jun 2015 13:57:05 -0700 Subject: [PATCH 087/259] bcache-tools: Add gcc5 compatability patch --- .../filesystems/bcache-tools/default.nix | 5 ++++- .../filesystems/bcache-tools/fix-static.patch | 22 +++++++++++++++++++ 2 files changed, 26 insertions(+), 1 deletion(-) create mode 100644 pkgs/tools/filesystems/bcache-tools/fix-static.patch diff --git a/pkgs/tools/filesystems/bcache-tools/default.nix b/pkgs/tools/filesystems/bcache-tools/default.nix index a4b1363d841d..14d8d282c81c 100644 --- a/pkgs/tools/filesystems/bcache-tools/default.nix +++ b/pkgs/tools/filesystems/bcache-tools/default.nix @@ -21,7 +21,10 @@ stdenv.mkDerivation rec { -i Makefile ''; - patches = [ ./bcache-udev-modern.patch ]; + patches = [ + ./bcache-udev-modern.patch + ./fix-static.patch + ]; preBuild = '' export makeFlags="$makeFlags PREFIX=\"$out\" UDEVLIBDIR=\"$out/lib/udev/\""; diff --git a/pkgs/tools/filesystems/bcache-tools/fix-static.patch b/pkgs/tools/filesystems/bcache-tools/fix-static.patch new file mode 100644 index 000000000000..e5dd2df5299d --- /dev/null +++ b/pkgs/tools/filesystems/bcache-tools/fix-static.patch @@ -0,0 +1,22 @@ +diff --git a/bcache.c b/bcache.c +index 8f37445..79806d8 100644 +--- a/bcache.c ++++ b/bcache.c +@@ -26,7 +26,7 @@ + * x^7 + x^4 + x + 1 + */ + +-static const uint64_t crc_table[256] = { ++const uint64_t crc_table[256] = { + 0x0000000000000000ULL, 0x42F0E1EBA9EA3693ULL, 0x85E1C3D753D46D26ULL, + 0xC711223CFA3E5BB5ULL, 0x493366450E42ECDFULL, 0x0BC387AEA7A8DA4CULL, + 0xCCD2A5925D9681F9ULL, 0x8E224479F47CB76AULL, 0x9266CC8A1C85D9BEULL, +@@ -115,7 +115,7 @@ static const uint64_t crc_table[256] = { + 0x9AFCE626CE85B507ULL + }; + +-inline uint64_t crc64(const void *_data, size_t len) ++uint64_t crc64(const void *_data, size_t len) + { + uint64_t crc = 0xFFFFFFFFFFFFFFFFULL; + const unsigned char *data = _data; From c240556a24f6e358992a0c7169592c2ccc3c4e60 Mon Sep 17 00:00:00 2001 From: Tuomas Tynkkynen Date: Fri, 12 Jun 2015 10:33:59 +0300 Subject: [PATCH 088/259] gmp: Fix build on ARM MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The config.guess script tries to detect various ARM optimization flags via /proc/cpuinfo. This is not only impure, but the detection is also broken on multicore machines; on my quad-core system the machine type is autodetected as 'neon neon neon neon-unknown-linux-gnueabihf': checking build system type... Invalid configuration `neon': machine `neon' not recognized configure: error: /nix/store/bafimhdj1yaxj6m1hvq7wvhwwizc939x-bootstrap-tools/bin/sh ./config.sub neon neon neon neon-unknown-linux-gnueabihf failed builder for ‘/nix/store/1npm2358bpvclj5w7fqjjwg72vbb0d79-gmp-6.0.0a.drv’ failed with exit code 1 Override the system type with the output of GNU config.guess to avoid the autodetection. --- pkgs/development/libraries/gmp/5.1.x.nix | 9 ++++++++- pkgs/development/libraries/gmp/6.x.nix | 9 ++++++++- 2 files changed, 16 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/gmp/5.1.x.nix b/pkgs/development/libraries/gmp/5.1.x.nix index 0df1a4f8cd83..7b393067ff52 100644 --- a/pkgs/development/libraries/gmp/5.1.x.nix +++ b/pkgs/development/libraries/gmp/5.1.x.nix @@ -1,6 +1,6 @@ { stdenv, fetchurl, m4, cxx ? true, withStatic ? true }: -with { inherit (stdenv.lib) optional; }; +with { inherit (stdenv.lib) optional optionalString; }; stdenv.mkDerivation rec { name = "gmp-5.1.3"; @@ -28,6 +28,13 @@ stdenv.mkDerivation rec { ++ optional stdenv.is64bit "--with-pic" ; + # The config.guess in GMP tries to runtime-detect various + # ARM optimization flags via /proc/cpuinfo (and is also + # broken on multicore CPUs). Avoid this impurity. + preConfigure = optionalString stdenv.isArm '' + configureFlagsArray+=("--build=$(./configfsf.guess)") + ''; + doCheck = true; dontDisableStatic = withStatic; diff --git a/pkgs/development/libraries/gmp/6.x.nix b/pkgs/development/libraries/gmp/6.x.nix index b7350c19960a..171611e12498 100644 --- a/pkgs/development/libraries/gmp/6.x.nix +++ b/pkgs/development/libraries/gmp/6.x.nix @@ -1,6 +1,6 @@ { stdenv, fetchurl, m4, cxx ? true, withStatic ? true }: -with { inherit (stdenv.lib) optional; }; +with { inherit (stdenv.lib) optional optionalString; }; stdenv.mkDerivation rec { name = "gmp-6.0.0a"; @@ -26,6 +26,13 @@ stdenv.mkDerivation rec { ++ optional stdenv.is64bit "--with-pic" ; + # The config.guess in GMP tries to runtime-detect various + # ARM optimization flags via /proc/cpuinfo (and is also + # broken on multicore CPUs). Avoid this impurity. + preConfigure = optionalString stdenv.isArm '' + configureFlagsArray+=("--build=$(./configfsf.guess)") + ''; + doCheck = true; dontDisableStatic = withStatic; From 354e5af036826e89732399929a3d53e4a69642f7 Mon Sep 17 00:00:00 2001 From: "William A. Kennington III" Date: Sat, 13 Jun 2015 10:28:42 -0700 Subject: [PATCH 089/259] Revert "perl: Don't use builtin zlib and bzip2" This reverts commit 86f9f5d128306a37649cf13a687b231df18a03ca. --- pkgs/development/interpreters/perl/5.20/default.nix | 9 ++------- pkgs/development/interpreters/perl/5.22/default.nix | 7 +------ 2 files changed, 3 insertions(+), 13 deletions(-) diff --git a/pkgs/development/interpreters/perl/5.20/default.nix b/pkgs/development/interpreters/perl/5.20/default.nix index 700616dd4ebf..7651bc15f469 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, bzip2, zlib, enableThreading ? stdenv ? glibc }: +{ stdenv, fetchurl, enableThreading ? stdenv ? glibc }: # We can only compile perl with threading on platforms where we have a # real glibc in the stdenv. @@ -35,12 +35,7 @@ stdenv.mkDerivation rec { ./perl-5.20.2-gcc5_fixes-1.patch ] ++ optional stdenv.isSunOS ./ld-shared.patch - ++ stdenv.lib.optional stdenv.isDarwin [ ./cpp-precomp.patch ./no-libutil.patch ]; - - buildInputs = [ zlib bzip2 ]; - - BUILD_ZLIB = "false"; - BUILD_BZIP2 = "0"; + ++ stdenv.lib.optional stdenv.isDarwin [ ./cpp-precomp.patch ./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 diff --git a/pkgs/development/interpreters/perl/5.22/default.nix b/pkgs/development/interpreters/perl/5.22/default.nix index b7aad858ccfb..f9068de1c2cf 100644 --- a/pkgs/development/interpreters/perl/5.22/default.nix +++ b/pkgs/development/interpreters/perl/5.22/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchurl, bzip2, zlib, enableThreading ? stdenv ? glibc }: +{ stdenv, fetchurl, enableThreading ? stdenv ? glibc }: # We can only compile perl with threading on platforms where we have a # real glibc in the stdenv. @@ -35,11 +35,6 @@ stdenv.mkDerivation rec { ++ optional stdenv.isSunOS ./ld-shared.patch ++ stdenv.lib.optional stdenv.isDarwin [ ./cpp-precomp.patch ./no-libutil.patch ]; - buildInputs = [ zlib bzip2 ]; - - BUILD_ZLIB = "false"; - BUILD_BZIP2 = "0"; - # 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 From 653cdac274ef2ccb46712eea5e0b7dba6c30eb7e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Tue, 14 Apr 2015 21:20:54 +0200 Subject: [PATCH 090/259] glib hooks: move gsettings-schemas if on wrong place Fixes #7325. --- pkgs/development/libraries/glib/setup-hook.sh | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/pkgs/development/libraries/glib/setup-hook.sh b/pkgs/development/libraries/glib/setup-hook.sh index f173744e5ca6..ca7e326bd02e 100644 --- a/pkgs/development/libraries/glib/setup-hook.sh +++ b/pkgs/development/libraries/glib/setup-hook.sh @@ -11,6 +11,12 @@ make_glib_find_gsettings_schemas() { envHooks+=(make_glib_find_gsettings_schemas) glibPreFixupPhase() { + # Move gschemas in case the install flag didn't help + if [ -d "$out/share/glib-2.0/schemas" ]; then + mkdir -p "$out/share/gsettings-schemas/$name/glib-2.0" + mv "$out/share/glib-2.0/schemas" "$out/share/gsettings-schemas/$name/glib-2.0/" + fi + addToSearchPath GSETTINGS_SCHEMAS_PATH "$out/share/gsettings-schemas/$name" } From cba76fa500423d70699ea8686976d8197c8daf7b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Sun, 14 Jun 2015 16:15:30 +0200 Subject: [PATCH 091/259] redshift: disable a failing phase (hidden by #7524) The wrapped file $out/bin/redshift-gtk doesn't exist. /cc maintainer @mornfall and #7655. --- pkgs/applications/misc/redshift/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/misc/redshift/default.nix b/pkgs/applications/misc/redshift/default.nix index 6070c560815d..c5095d9f9eea 100644 --- a/pkgs/applications/misc/redshift/default.nix +++ b/pkgs/applications/misc/redshift/default.nix @@ -23,11 +23,11 @@ stdenv.mkDerivation rec { preInstall = '' substituteInPlace src/redshift-gtk/redshift-gtk python --replace "/usr/bin/env python" "${python}/bin/${python.executable}" ''; - +/* postInstall = '' wrapProgram "$out/bin/redshift-gtk" --prefix PYTHONPATH : $PYTHONPATH:${pygtk}/lib/${python.libPrefix}/site-packages/gtk-2.0:${pyxdg}/lib/${python.libPrefix}/site-packages/pyxdg:$out/lib/${python.libPrefix}/site-packages ''; - +*/ meta = with stdenv.lib; { description = "changes the color temperature of your screen gradually"; longDescription = '' From 49821433242c4f44cff038a039ead3bc9741fbf1 Mon Sep 17 00:00:00 2001 From: Luca Bruno Date: Sun, 14 Jun 2015 15:59:52 +0200 Subject: [PATCH 092/259] gdkpixbuf: simplify setup hook, don't create per-package loaders.cache --- .../libraries/gdk-pixbuf/setup-hook.sh | 26 +++++++------------ .../development/libraries/librsvg/default.nix | 9 ++++++- 2 files changed, 17 insertions(+), 18 deletions(-) diff --git a/pkgs/development/libraries/gdk-pixbuf/setup-hook.sh b/pkgs/development/libraries/gdk-pixbuf/setup-hook.sh index 06e820633b84..ba7ab82f50b4 100644 --- a/pkgs/development/libraries/gdk-pixbuf/setup-hook.sh +++ b/pkgs/development/libraries/gdk-pixbuf/setup-hook.sh @@ -1,23 +1,15 @@ findGdkPixbufLoaders() { - if [ -n "$out" ] && [ -z "$IN_NIX_SHELL" ]; then - - # set pixbuf loaders.cache for this package - - local loadersDir="$out/lib/gdk-pixbuf-loaders-2.0/$name" - mkdir -p "$loadersDir" - - if [ -f "$1/lib/gdk-pixbuf-2.0/2.10.0/loaders.cache" ]; then - cat "$1/lib/gdk-pixbuf-2.0/2.10.0/loaders.cache" >> "$loadersDir/loaders.cache" + # choose the longest loaders.cache + local loadersCache="$1/lib/gdk-pixbuf-2.0/2.10.0/loaders.cache" + if [ -f "$loadersCache" ]; then + if [ -f "$GDK_PIXBUF_MODULE_FILE" ]; then + if [ $(cat "$loadersCache"|wc -l) -gt $(cat "$GDK_PIXBUF_MODULE_FILE"|wc -l) ]; then + export GDK_PIXBUF_MODULE_FILE="$loadersCache" + fi + else + export GDK_PIXBUF_MODULE_FILE="$loadersCache" fi - - if [ -f "$1/lib/gdk-pixbuf/loaders.cache" ]; then - cat "$1/lib/gdk-pixbuf/loaders.cache" >> "$loadersDir/loaders.cache" - fi - - # note, this is not a search path - export GDK_PIXBUF_MODULE_FILE=$(readlink -e "$loadersDir/loaders.cache") - fi } diff --git a/pkgs/development/libraries/librsvg/default.nix b/pkgs/development/libraries/librsvg/default.nix index 9589298ecd50..4c22c988c790 100644 --- a/pkgs/development/libraries/librsvg/default.nix +++ b/pkgs/development/libraries/librsvg/default.nix @@ -34,7 +34,7 @@ stdenv.mkDerivation rec { # The loaders.cache can be used by setting GDK_PIXBUF_MODULE_FILE to # point to this file in a wrapper. postConfigure = '' - GDK_PIXBUF=$out/lib/gdk-pixbuf + GDK_PIXBUF=$out/lib/gdk-pixbuf-2.0/2.10.0 mkdir -p $GDK_PIXBUF/loaders sed -e "s#gdk_pixbuf_moduledir = .*#gdk_pixbuf_moduledir = $GDK_PIXBUF/loaders#" \ -i gdk-pixbuf-loader/Makefile @@ -43,4 +43,11 @@ stdenv.mkDerivation rec { sed -e "s#\$(GDK_PIXBUF_QUERYLOADERS)#GDK_PIXBUF_MODULEDIR=$GDK_PIXBUF/loaders \$(GDK_PIXBUF_QUERYLOADERS)#" \ -i gdk-pixbuf-loader/Makefile ''; + + # Merge gdkpixbuf and librsvg loaders + postInstall = '' + mv $GDK_PIXBUF/loaders.cache $GDK_PIXBUF/loaders.cache.tmp + cat ${gdk_pixbuf}/lib/gdk-pixbuf-2.0/2.10.0/loaders.cache $GDK_PIXBUF/loaders.cache.tmp > $GDK_PIXBUF/loaders.cache + rm $GDK_PIXBUF/loaders.cache.tmp + ''; } From 41e1900ea1a6323918596a17434b2011b5915b40 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Mon, 15 Jun 2015 11:24:11 +0200 Subject: [PATCH 093/259] Define closeNest before exitHandler This prevents "closeNest: command not found" messages if setup fails early. --- pkgs/stdenv/generic/setup.sh | 55 +++++++++++++++++++----------------- 1 file changed, 29 insertions(+), 26 deletions(-) diff --git a/pkgs/stdenv/generic/setup.sh b/pkgs/stdenv/generic/setup.sh index 47e330562708..fb79d8832886 100644 --- a/pkgs/stdenv/generic/setup.sh +++ b/pkgs/stdenv/generic/setup.sh @@ -72,6 +72,35 @@ _eval() { } +###################################################################### +# Logging. + +nestingLevel=0 + +startNest() { + nestingLevel=$(($nestingLevel + 1)) + echo -en "\033[$1p" +} + +stopNest() { + nestingLevel=$(($nestingLevel - 1)) + echo -en "\033[q" +} + +header() { + startNest "$2" + echo "$1" +} + +# Make sure that even when we exit abnormally, the original nesting +# level is properly restored. +closeNest() { + while [ $nestingLevel -gt 0 ]; do + stopNest + done +} + + ###################################################################### # Error handling. @@ -409,32 +438,6 @@ substituteAllInPlace() { # What follows is the generic builder. -nestingLevel=0 - -startNest() { - nestingLevel=$(($nestingLevel + 1)) - echo -en "\033[$1p" -} - -stopNest() { - nestingLevel=$(($nestingLevel - 1)) - echo -en "\033[q" -} - -header() { - startNest "$2" - echo "$1" -} - -# Make sure that even when we exit abnormally, the original nesting -# level is properly restored. -closeNest() { - while [ $nestingLevel -gt 0 ]; do - stopNest - done -} - - # This function is useful for debugging broken Nix builds. It dumps # all environment variables to a file `env-vars' in the build # directory. If the build fails and the `-K' option is used, you can From 42d94b6f15987ecaae03c639300d38e0b5c4afd4 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Mon, 15 Jun 2015 11:24:55 +0200 Subject: [PATCH 094/259] Barf on non-existant build inputs Previously saying buildInputs = [ "bla" ]; was quietly ignored. Now it's a fatal error. --- pkgs/stdenv/generic/setup.sh | 21 +++++++++++++-------- 1 file changed, 13 insertions(+), 8 deletions(-) diff --git a/pkgs/stdenv/generic/setup.sh b/pkgs/stdenv/generic/setup.sh index fb79d8832886..75cc86934806 100644 --- a/pkgs/stdenv/generic/setup.sh +++ b/pkgs/stdenv/generic/setup.sh @@ -222,7 +222,7 @@ runHook addInputsHook # Recursively find all build inputs. findInputs() { - local pkg=$1 + local pkg="$1" local var=$2 local propagatedBuildInputsFile=$3 @@ -234,17 +234,22 @@ findInputs() { eval $var="'${!var} $pkg '" - if [ -f $pkg ]; then - source $pkg + if ! [ -e "$pkg" ]; then + echo "build input $pkg does not exist" >&2 + exit 1 fi - if [ -f $pkg/nix-support/setup-hook ]; then - source $pkg/nix-support/setup-hook + if [ -f "$pkg" ]; then + source "$pkg" fi - if [ -f $pkg/nix-support/$propagatedBuildInputsFile ]; then - for i in $(cat $pkg/nix-support/$propagatedBuildInputsFile); do - findInputs $i $var $propagatedBuildInputsFile + if [ -f "$pkg/nix-support/setup-hook" ]; then + source "$pkg/nix-support/setup-hook" + fi + + if [ -f "$pkg/nix-support/$propagatedBuildInputsFile" ]; then + for i in $(cat "$pkg/nix-support/$propagatedBuildInputsFile"); do + findInputs "$i" $var $propagatedBuildInputsFile done fi } From d72538be8d4fbe0efea43e81d63216410417c322 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Mon, 15 Jun 2015 19:26:52 +0200 Subject: [PATCH 095/259] Don't include /no-such-path in buildInputs --- pkgs/stdenv/darwin/default.nix | 2 +- pkgs/stdenv/linux/default.nix | 2 +- pkgs/stdenv/native/default.nix | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/stdenv/darwin/default.nix b/pkgs/stdenv/darwin/default.nix index ac396ecdf12b..98fc35074c2e 100644 --- a/pkgs/stdenv/darwin/default.nix +++ b/pkgs/stdenv/darwin/default.nix @@ -31,7 +31,7 @@ rec { shell = "/bin/bash"; initialPath = [ bootstrapTools ]; fetchurlBoot = fetchurl; - cc = "/no-such-path"; + cc = null; }; }; diff --git a/pkgs/stdenv/linux/default.nix b/pkgs/stdenv/linux/default.nix index 1bcf74afa328..12fc3fed5a5a 100644 --- a/pkgs/stdenv/linux/default.nix +++ b/pkgs/stdenv/linux/default.nix @@ -86,7 +86,7 @@ rec { }; cc = if isNull gccPlain - then "/no-such-path" + then null else lib.makeOverridable (import ../../build-support/cc-wrapper) { nativeTools = false; nativeLibc = false; diff --git a/pkgs/stdenv/native/default.nix b/pkgs/stdenv/native/default.nix index 5390907928de..bd90d580d3f5 100644 --- a/pkgs/stdenv/native/default.nix +++ b/pkgs/stdenv/native/default.nix @@ -98,7 +98,7 @@ rec { stdenvBoot0 = makeStdenv { - cc = "/no-such-path"; + cc = null; fetchurl = null; }; From 4c8f84e8afe4b782909981e23f245b7c310ff2a5 Mon Sep 17 00:00:00 2001 From: "William A. Kennington III" Date: Mon, 15 Jun 2015 17:55:27 -0700 Subject: [PATCH 096/259] python: Correctly detect ncurses opaque api --- .../interpreters/python/2.7/default.nix | 2 + .../python/2.7/properly-detect-curses.patch | 116 ++++++++++++++++++ 2 files changed, 118 insertions(+) create mode 100644 pkgs/development/interpreters/python/2.7/properly-detect-curses.patch diff --git a/pkgs/development/interpreters/python/2.7/default.nix b/pkgs/development/interpreters/python/2.7/default.nix index 4ad4679bd6ea..813c10897e73 100644 --- a/pkgs/development/interpreters/python/2.7/default.nix +++ b/pkgs/development/interpreters/python/2.7/default.nix @@ -40,6 +40,8 @@ let # patch python to put zero timestamp into pyc # if DETERMINISTIC_BUILD env var is set ./deterministic-build.patch + + ./properly-detect-curses.patch ] ++ optionals stdenv.isCygwin [ ./2.5.2-ctypes-util-find_library.patch ./2.5.2-tkinter-x11.patch diff --git a/pkgs/development/interpreters/python/2.7/properly-detect-curses.patch b/pkgs/development/interpreters/python/2.7/properly-detect-curses.patch new file mode 100644 index 000000000000..e2640bab0e9a --- /dev/null +++ b/pkgs/development/interpreters/python/2.7/properly-detect-curses.patch @@ -0,0 +1,116 @@ +From 6dc83db69b5e29d25ba6d73646ea2e9a1097848a Mon Sep 17 00:00:00 2001 +From: Roumen Petrov +Date: Sun, 19 Feb 2012 16:13:24 +0200 +Subject: [PATCH] CROSS-properly detect WINDOW _flags for different ncurses versions + +--- + Include/py_curses.h | 5 +++++ + configure.ac | 40 ++++++++++++++++++++++++++++++++++++++-- + pyconfig.h.in | 6 ++++++ + 3 files changed, 49 insertions(+), 2 deletions(-) + +diff --git a/Include/py_curses.h b/Include/py_curses.h +index f2c08f6..a9b5260 100644 +--- a/Include/py_curses.h ++++ b/Include/py_curses.h +@@ -14,7 +14,9 @@ + /* the following define is necessary for OS X 10.6; without it, the + Apple-supplied ncurses.h sets NCURSES_OPAQUE to 1, and then Python + can't get at the WINDOW flags field. */ ++/* NOTE configure check if ncurses require such definition + #define NCURSES_OPAQUE 0 ++*/ + #endif /* __APPLE__ */ + + #ifdef __FreeBSD__ +@@ -57,9 +59,12 @@ + #ifdef HAVE_NCURSES_H + /* configure was checking , but we will + use , which has all these features. */ ++/* NOTE configure check for existence of flags ++ * Also flags are visible only if WINDOW structure is not opaque + #ifndef WINDOW_HAS_FLAGS + #define WINDOW_HAS_FLAGS 1 + #endif ++*/ + #ifndef MVWDELCH_IS_EXPRESSION + #define MVWDELCH_IS_EXPRESSION 1 + #endif +diff --git a/configure.ac b/configure.ac +index 0a3a186..75f5142 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -4150,15 +4150,51 @@ then + fi + + AC_MSG_CHECKING(whether WINDOW has _flags) +-AC_CACHE_VAL(ac_cv_window_has_flags, + AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include ]], [[ + WINDOW *w; + w->_flags = 0; + ]])], + [ac_cv_window_has_flags=yes], +-[ac_cv_window_has_flags=no])) ++[ac_cv_window_has_flags=no]) + AC_MSG_RESULT($ac_cv_window_has_flags) + ++py_curses_window_is_opaque=no ++if test no = $ac_cv_window_has_flags; then ++ AC_MSG_CHECKING([whether WINDOW has _flags in non-opaque structure]) ++ AC_COMPILE_IFELSE([ ++ AC_LANG_PROGRAM([[ ++ #define NCURSES_OPAQUE 0 ++ #include ++ ]],[[ ++ WINDOW *w; ++ w->_flags = 0; ++ ]])], ++ [py_curses_window_is_opaque=yes]) ++ AC_MSG_RESULT([$py_curses_window_is_opaque]) ++fi ++if test yes = $py_curses_window_is_opaque; then ++ ac_cv_window_has_flags=yes ++ AC_DEFINE([NCURSES_OPAQUE], [0], [Define to 0 if you have WINDOW _flags in non-opaque structure.]) ++fi ++ ++py_curses_window_is_internal=no ++if test no = $ac_cv_window_has_flags; then ++ AC_MSG_CHECKING([whether WINDOW has _flags as internal structure]) ++ AC_COMPILE_IFELSE([ ++ AC_LANG_PROGRAM([[ ++ #define NCURSES_INTERNALS 1 ++ #include ++ ]],[[ ++ WINDOW *w; ++ w->_flags = 0; ++ ]])], ++ [py_curses_window_is_internal=yes]) ++ AC_MSG_RESULT([$py_curses_window_is_internal]) ++fi ++if test yes = $py_curses_window_is_internal; then ++ ac_cv_window_has_flags=yes ++ AC_DEFINE([NCURSES_INTERNALS], [1], [Define to 1 if you have WINDOW _flags as internal structure.]) ++fi + + if test "$ac_cv_window_has_flags" = yes + then +diff --git a/pyconfig.h.in b/pyconfig.h.in +index 3ca3a4f..484c817 100644 +--- a/pyconfig.h.in ++++ b/pyconfig.h.in +@@ -1130,6 +1130,12 @@ + /* Define if mvwdelch in curses.h is an expression. */ + #undef MVWDELCH_IS_EXPRESSION + ++/* Define to 1 if you have WINDOW _flags as internal structure. */ ++#undef NCURSES_INTERNALS ++ ++/* Define to 0 if you have WINDOW _flags in non-opaque structure. */ ++#undef NCURSES_OPAQUE ++ + /* Define to the address where bug reports for this package should be sent. */ + #undef PACKAGE_BUGREPORT + +-- +1.6.4 + From 8437f039e3a07b47ce504a7c96f62300c9bc8d82 Mon Sep 17 00:00:00 2001 From: Pascal Wittmann Date: Tue, 16 Jun 2015 12:02:00 +0200 Subject: [PATCH 097/259] help2man: update from 1.46.6 to 1.47.1 --- pkgs/development/tools/misc/help2man/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/tools/misc/help2man/default.nix b/pkgs/development/tools/misc/help2man/default.nix index 79dbb533d034..2f811d9ae82f 100644 --- a/pkgs/development/tools/misc/help2man/default.nix +++ b/pkgs/development/tools/misc/help2man/default.nix @@ -1,11 +1,11 @@ { stdenv, fetchurl, perl, gettext, LocaleGettext, makeWrapper }: stdenv.mkDerivation rec { - name = "help2man-1.46.6"; + name = "help2man-1.47.1"; src = fetchurl { url = "mirror://gnu/help2man/${name}.tar.xz"; - sha256 = "1brccgnjf09f2zg70s6gv6gn68mi59kp3zf50wvxp79n72ngapv1"; + sha256 = "01ib718afwc28bmh1n0p5h7245vs3rrfm7bj1sq4avmh1kv2d6y5"; }; buildInputs = [ makeWrapper perl gettext LocaleGettext ]; From a4178b1b8a8bfced7fb08f0220313625bf18d2d9 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Tue, 16 Jun 2015 14:16:08 +0200 Subject: [PATCH 098/259] openssl: Update to 1.0.1o From https://www.openssl.org/news/openssl-1.0.1-notes.html: "Fix HMAC ABI incompatibility" --- pkgs/development/libraries/openssl/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/openssl/default.nix b/pkgs/development/libraries/openssl/default.nix index e8ecb5a57753..6aa0b28b238f 100644 --- a/pkgs/development/libraries/openssl/default.nix +++ b/pkgs/development/libraries/openssl/default.nix @@ -2,7 +2,7 @@ , withCryptodev ? false, cryptodevHeaders }: let - name = "openssl-1.0.1n"; + name = "openssl-1.0.1o"; opensslCrossSystem = stdenv.lib.attrByPath [ "openssl" "system" ] (throw "openssl needs its platform name cross building" null) @@ -23,7 +23,7 @@ stdenv.mkDerivation { "http://www.openssl.org/source/${name}.tar.gz" "http://openssl.linux-mirror.org/source/${name}.tar.gz" ]; - sha1 = "2f6ea1e0f2724aca1805392e4387df8361442ace"; + sha1 = "b003e3382607ef2c6d85b51e4ed7a4c0a76b8d5a"; }; patches = (patchesCross false) ++ extraPatches; From b333a2cb19fd9115bf6f24f9260eeb7727b88598 Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Tue, 16 Jun 2015 14:17:25 +0200 Subject: [PATCH 099/259] openssl: remove some cruft --- pkgs/development/libraries/openssl/default.nix | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/pkgs/development/libraries/openssl/default.nix b/pkgs/development/libraries/openssl/default.nix index 6aa0b28b238f..f0212aeabee2 100644 --- a/pkgs/development/libraries/openssl/default.nix +++ b/pkgs/development/libraries/openssl/default.nix @@ -42,10 +42,6 @@ stdenv.mkDerivation { configureFlags = "shared --libdir=lib --openssldir=etc/ssl" + stdenv.lib.optionalString withCryptodev " -DHAVE_CRYPTODEV -DUSE_CRYPTODEV_DIGESTS"; - # CYGXXX: used to be set for cygwin with optionalString. Not needed - # anymore but kept to prevent rebuild. - preBuild = ""; - makeFlags = "MANDIR=$(out)/share/man"; # Parallel building is broken in OpenSSL. @@ -56,12 +52,12 @@ stdenv.mkDerivation { # If we're building dynamic libraries, then don't install static # libraries. if [ -n "$(echo $out/lib/*.so $out/lib/*.dylib)" ]; then - rm $out/lib/*.a + rm "$out/lib/"*.a fi # remove dependency on Perl at runtime rm -rf $out/etc/ssl/misc - ''; # */ + ''; crossAttrs = { patches = patchesCross true; From f2c84ffeb28e2681ef00bd339d4b92a681c082a0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Tue, 16 Jun 2015 18:34:18 +0200 Subject: [PATCH 100/259] libarchive: fix CVE-2015-1197 by upstream patch Fixes #6799. --- .../libraries/libarchive/CVE-2015-1197.patch | 143 ++++++++++++++++++ .../libraries/libarchive/default.nix | 1 + 2 files changed, 144 insertions(+) create mode 100644 pkgs/development/libraries/libarchive/CVE-2015-1197.patch diff --git a/pkgs/development/libraries/libarchive/CVE-2015-1197.patch b/pkgs/development/libraries/libarchive/CVE-2015-1197.patch new file mode 100644 index 000000000000..cb7be5f18cdb --- /dev/null +++ b/pkgs/development/libraries/libarchive/CVE-2015-1197.patch @@ -0,0 +1,143 @@ +From 59357157706d47c365b2227739e17daba3607526 Mon Sep 17 00:00:00 2001 +From: Alessandro Ghedini +Date: Sun, 1 Mar 2015 12:07:45 +0100 +Subject: [PATCH] Add ARCHIVE_EXTRACT_SECURE_NOABSOLUTEPATHS option + +This fixes a directory traversal in the cpio tool. +--- + cpio/bsdcpio.1 | 3 ++- + cpio/cpio.c | 2 ++ + libarchive/archive.h | 2 ++ + libarchive/archive_write_disk.3 | 3 +++ + libarchive/archive_write_disk_posix.c | 14 +++++++++++--- + libarchive/test/test_write_disk_secure.c | 23 +++++++++++++++++++++++ + 6 files changed, 43 insertions(+), 4 deletions(-) + +diff --git a/cpio/bsdcpio.1 b/cpio/bsdcpio.1 +index f966aa0..e52546e 100644 +--- a/cpio/bsdcpio.1 ++++ b/cpio/bsdcpio.1 +@@ -156,7 +156,8 @@ See above for description. + .It Fl Fl insecure + (i and p mode only) + Disable security checks during extraction or copying. +-This allows extraction via symbolic links and path names containing ++This allows extraction via symbolic links, absolute paths, ++and path names containing + .Sq .. + in the name. + .It Fl J , Fl Fl xz +diff --git a/cpio/cpio.c b/cpio/cpio.c +index 0acde11..b267e9b 100644 +--- a/cpio/cpio.c ++++ b/cpio/cpio.c +@@ -171,6 +171,7 @@ main(int argc, char *argv[]) + cpio->extract_flags |= ARCHIVE_EXTRACT_NO_OVERWRITE_NEWER; + cpio->extract_flags |= ARCHIVE_EXTRACT_SECURE_SYMLINKS; + cpio->extract_flags |= ARCHIVE_EXTRACT_SECURE_NODOTDOT; ++ cpio->extract_flags |= ARCHIVE_EXTRACT_SECURE_NOABSOLUTEPATHS; + cpio->extract_flags |= ARCHIVE_EXTRACT_PERM; + cpio->extract_flags |= ARCHIVE_EXTRACT_FFLAGS; + cpio->extract_flags |= ARCHIVE_EXTRACT_ACL; +@@ -256,6 +257,7 @@ main(int argc, char *argv[]) + case OPTION_INSECURE: + cpio->extract_flags &= ~ARCHIVE_EXTRACT_SECURE_SYMLINKS; + cpio->extract_flags &= ~ARCHIVE_EXTRACT_SECURE_NODOTDOT; ++ cpio->extract_flags &= ~ARCHIVE_EXTRACT_SECURE_NOABSOLUTEPATHS; + break; + case 'L': /* GNU cpio */ + cpio->option_follow_links = 1; +diff --git a/libarchive/archive.h b/libarchive/archive.h +index 1f0fc38..ef635ac 100644 +--- a/libarchive/archive.h ++++ b/libarchive/archive.h +@@ -649,6 +649,8 @@ __LA_DECL int archive_read_set_passphrase_callback(struct archive *, + /* Default: Do not use HFS+ compression if it was not compressed. */ + /* This has no effect except on Mac OS v10.6 or later. */ + #define ARCHIVE_EXTRACT_HFS_COMPRESSION_FORCED (0x8000) ++/* Default: Do not reject entries with absolute paths */ ++#define ARCHIVE_EXTRACT_SECURE_NOABSOLUTEPATHS (0x10000) + + __LA_DECL int archive_read_extract(struct archive *, struct archive_entry *, + int flags); +diff --git a/libarchive/archive_write_disk.3 b/libarchive/archive_write_disk.3 +index fa925cc..a2e7afa 100644 +--- a/libarchive/archive_write_disk.3 ++++ b/libarchive/archive_write_disk.3 +@@ -177,6 +177,9 @@ The default is to not refuse such paths. + Note that paths ending in + .Pa .. + always cause an error, regardless of this flag. ++.It Cm ARCHIVE_EXTRACT_SECURE_NOABSOLUTEPATHS ++Refuse to extract an absolute path. ++The default is to not refuse such paths. + .It Cm ARCHIVE_EXTRACT_SPARSE + Scan data for blocks of NUL bytes and try to recreate them with holes. + This results in sparse files, independent of whether the archive format +diff --git a/libarchive/archive_write_disk_posix.c b/libarchive/archive_write_disk_posix.c +index ab3bdac..c1290eb 100644 +--- a/libarchive/archive_write_disk_posix.c ++++ b/libarchive/archive_write_disk_posix.c +@@ -2509,8 +2509,9 @@ cleanup_pathname_win(struct archive_write_disk *a) + /* + * Canonicalize the pathname. In particular, this strips duplicate + * '/' characters, '.' elements, and trailing '/'. It also raises an +- * error for an empty path, a trailing '..' or (if _SECURE_NODOTDOT is +- * set) any '..' in the path. ++ * error for an empty path, a trailing '..', (if _SECURE_NODOTDOT is ++ * set) any '..' in the path or (if ARCHIVE_EXTRACT_SECURE_NOABSOLUTEPATHS ++ * is set) if the path is absolute. + */ + static int + cleanup_pathname(struct archive_write_disk *a) +@@ -2529,8 +2530,15 @@ cleanup_pathname(struct archive_write_disk *a) + cleanup_pathname_win(a); + #endif + /* Skip leading '/'. */ +- if (*src == '/') ++ if (*src == '/') { ++ if (a->flags & ARCHIVE_EXTRACT_SECURE_NOABSOLUTEPATHS) { ++ archive_set_error(&a->archive, ARCHIVE_ERRNO_MISC, ++ "Path is absolute"); ++ return (ARCHIVE_FAILED); ++ } ++ + separator = *src++; ++ } + + /* Scan the pathname one element at a time. */ + for (;;) { +diff --git a/libarchive/test/test_write_disk_secure.c b/libarchive/test/test_write_disk_secure.c +index 31c5bfd..2c94206 100644 +--- a/libarchive/test/test_write_disk_secure.c ++++ b/libarchive/test/test_write_disk_secure.c +@@ -178,6 +178,29 @@ DEFINE_TEST(test_write_disk_secure) + assert(S_ISDIR(st.st_mode)); + archive_entry_free(ae); + ++ /* ++ * Without security checks, we should be able to ++ * extract an absolute path. ++ */ ++ assert((ae = archive_entry_new()) != NULL); ++ archive_entry_copy_pathname(ae, "/tmp/libarchive_test-test_write_disk_secure-absolute_path.tmp"); ++ archive_entry_set_mode(ae, S_IFREG | 0777); ++ assert(0 == archive_write_header(a, ae)); ++ assert(0 == archive_write_finish_entry(a)); ++ assertFileExists("/tmp/libarchive_test-test_write_disk_secure-absolute_path.tmp"); ++ assert(0 == unlink("/tmp/libarchive_test-test_write_disk_secure-absolute_path.tmp")); ++ ++ /* But with security checks enabled, this should fail. */ ++ assert(archive_entry_clear(ae) != NULL); ++ archive_entry_copy_pathname(ae, "/tmp/libarchive_test-test_write_disk_secure-absolute_path.tmp"); ++ archive_entry_set_mode(ae, S_IFREG | 0777); ++ archive_write_disk_set_options(a, ARCHIVE_EXTRACT_SECURE_NOABSOLUTEPATHS); ++ failure("Extracting an absolute path should fail here."); ++ assertEqualInt(ARCHIVE_FAILED, archive_write_header(a, ae)); ++ archive_entry_free(ae); ++ assert(0 == archive_write_finish_entry(a)); ++ assertFileNotExists("/tmp/libarchive_test-test_write_disk_secure-absolute_path.tmp"); ++ + assertEqualInt(ARCHIVE_OK, archive_write_free(a)); + + /* Test the entries on disk. */ diff --git a/pkgs/development/libraries/libarchive/default.nix b/pkgs/development/libraries/libarchive/default.nix index 076d22402772..60777614881d 100644 --- a/pkgs/development/libraries/libarchive/default.nix +++ b/pkgs/development/libraries/libarchive/default.nix @@ -14,6 +14,7 @@ stdenv.mkDerivation rec { patches = [ ./CVE-2013-0211.patch # https://github.com/libarchive/libarchive/commit/22531545 + ./CVE-2015-1197.patch # https://github.com/NixOS/nixpkgs/issues/6799 ]; buildInputs = [ sharutils libxml2 zlib bzip2 openssl xz ] ++ From 57ee8d6131fa4f44f5bdd93a95fb103cf504ae58 Mon Sep 17 00:00:00 2001 From: "William A. Kennington III" Date: Tue, 16 Jun 2015 14:08:46 -0700 Subject: [PATCH 101/259] xorgserver: Add gcc5 compat patch --- pkgs/servers/x11/xorg/overrides.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/servers/x11/xorg/overrides.nix b/pkgs/servers/x11/xorg/overrides.nix index 1ef0d88ce3a2..eaa3055827f4 100644 --- a/pkgs/servers/x11/xorg/overrides.nix +++ b/pkgs/servers/x11/xorg/overrides.nix @@ -294,7 +294,7 @@ in libpciaccess inputproto xextproto randrproto renderproto presentproto dri2proto dri3proto kbproto xineramaproto resourceproto scrnsaverproto videoproto ]; - commonPatches = [ ./xorgserver-xkbcomp-path.patch ] + commonPatches = [ ./xorgserver-xkbcomp-path.patch ./xorgserver-gcc5.patch ] ++ lib.optional isDarwin ./fix-clang.patch; # XQuartz requires two compilations: the first to get X / XQuartz, # and the second to get Xvfb, Xnest, etc. From 7d299447ae584bd064ef175fa889607cb387d0c9 Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Tue, 16 Jun 2015 23:59:56 +0200 Subject: [PATCH 102/259] Revert "gmp: Use version 6 as the default" This reverts commit 370fc79b948438694dc4767570afe43c5b1fb7c4, because it causes trouble on both Linux and Darwin, and we probably shouldn't have to worry about that kind of stuff right now with the 15.06 release being late'ish already. --- pkgs/top-level/all-packages.nix | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 1f7422cb1256..4df6e675d681 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -6206,8 +6206,7 @@ let gmp4 = callPackage ../development/libraries/gmp/4.3.2.nix { }; # required by older GHC versions gmp5 = callPackage ../development/libraries/gmp/5.1.x.nix { }; - gmp6 = callPackage ../development/libraries/gmp/6.x.nix { }; - gmp = gmp6; + gmp = gmp5; gmpxx = appendToName "with-cxx" (gmp.override { cxx = true; }); #GMP ex-satellite, so better keep it near gmp From e4316b8c17121042fd258df6df2fdbc5618c2b72 Mon Sep 17 00:00:00 2001 From: "William A. Kennington III" Date: Tue, 16 Jun 2015 23:36:02 -0700 Subject: [PATCH 103/259] xorg-server: 1.16.4 -> 1.17.2 --- pkgs/servers/x11/xorg/default.nix | 10 +++++----- pkgs/servers/x11/xorg/overrides.nix | 2 +- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/pkgs/servers/x11/xorg/default.nix b/pkgs/servers/x11/xorg/default.nix index 1d8997e3c1db..f0fdb67f30e2 100644 --- a/pkgs/servers/x11/xorg/default.nix +++ b/pkgs/servers/x11/xorg/default.nix @@ -2075,14 +2075,14 @@ let }) // {inherit ;}; xorgserver = (mkDerivation "xorgserver" { - name = "xorg-server-1.16.4"; + name = "xorg-server-1.17.2"; builder = ./builder.sh; src = fetchurl { - url = mirror://xorg/individual/xserver/xorg-server-1.16.4.tar.bz2; - sha256 = "0wf8xykcjhvpk9ppjcixvf60p6kkyrpmfj0z29d93a8kjb6f3dmb"; + url = mirror://xorg/individual/xserver/xorg-server-1.17.2.tar.bz2; + sha256 = "14vr4mm0x94a9bd3sfx9mdh8qhvk48zcml3i8q1wbwi84xhj04gn"; }; - buildInputs = [pkgconfig dri2proto dri3proto renderproto libdrm openssl libX11 libXau libXaw libxcb xcbutil xcbutilwm xcbutilimage xcbutilkeysyms libXdmcp libXfixes libxkbfile libXmu libXpm libXrender libXres libxshmfence libXt ]; - }) // {inherit dri2proto dri3proto renderproto libdrm openssl libX11 libXau libXaw libxcb xcbutil xcbutilwm xcbutilimage xcbutilkeysyms libXdmcp libXfixes libxkbfile libXmu libXpm libXrender libXres libxshmfence libXt ;}; + buildInputs = [pkgconfig dri2proto dri3proto renderproto libdrm openssl libX11 libXau libXaw libxcb xcbutil xcbutilwm xcbutilimage xcbutilkeysyms libXdmcp libXfixes libxkbfile libXmu libXpm libXrender libXres libxshmfence libXt xcbutilrenderutil]; + }) // {inherit dri2proto dri3proto renderproto libdrm openssl libX11 libXau libXaw libxcb xcbutil xcbutilwm xcbutilimage xcbutilkeysyms libXdmcp libXfixes libxkbfile libXmu libXpm libXrender libXres libxshmfence libXt xcbutilrenderutil;}; xorgsgmldoctools = (mkDerivation "xorgsgmldoctools" { name = "xorg-sgml-doctools-1.11"; diff --git a/pkgs/servers/x11/xorg/overrides.nix b/pkgs/servers/x11/xorg/overrides.nix index eaa3055827f4..1ef0d88ce3a2 100644 --- a/pkgs/servers/x11/xorg/overrides.nix +++ b/pkgs/servers/x11/xorg/overrides.nix @@ -294,7 +294,7 @@ in libpciaccess inputproto xextproto randrproto renderproto presentproto dri2proto dri3proto kbproto xineramaproto resourceproto scrnsaverproto videoproto ]; - commonPatches = [ ./xorgserver-xkbcomp-path.patch ./xorgserver-gcc5.patch ] + commonPatches = [ ./xorgserver-xkbcomp-path.patch ] ++ lib.optional isDarwin ./fix-clang.patch; # XQuartz requires two compilations: the first to get X / XQuartz, # and the second to get Xvfb, Xnest, etc. From fa9c81f69468098e0dd0ca79ea4d2ef74ec6bc0c Mon Sep 17 00:00:00 2001 From: Jude Taylor Date: Thu, 11 Jun 2015 17:58:26 -0700 Subject: [PATCH 104/259] pure darwin stdenv --- .../compilers/llvm/3.6/default.nix | 2 +- .../interpreters/perl/5.16/default.nix | 11 + .../interpreters/perl/5.20/default.nix | 11 + .../interpreters/python/2.7/default.nix | 4 + .../development/libraries/gettext/default.nix | 7 +- pkgs/development/libraries/icu/default.nix | 5 + .../development/libraries/libedit/default.nix | 2 +- pkgs/development/libraries/zlib/default.nix | 7 + .../tools/misc/binutils/default.nix | 6 +- pkgs/os-specific/darwin/adv_cmds/locale.nix | 29 ++ pkgs/os-specific/darwin/binutils/default.nix | 39 ++ pkgs/stdenv/darwin/default.nix | 362 +++++++++++++----- pkgs/stdenv/darwin/make-bootstrap-tools.nix | 10 +- pkgs/stdenv/default.nix | 2 +- pkgs/stdenv/generic/default.nix | 27 +- pkgs/tools/archivers/gnutar/default.nix | 6 + pkgs/tools/archivers/sharutils/default.nix | 2 +- pkgs/tools/text/gawk/default.nix | 11 +- pkgs/top-level/all-packages.nix | 24 +- 19 files changed, 435 insertions(+), 132 deletions(-) create mode 100644 pkgs/os-specific/darwin/adv_cmds/locale.nix create mode 100644 pkgs/os-specific/darwin/binutils/default.nix diff --git a/pkgs/development/compilers/llvm/3.6/default.nix b/pkgs/development/compilers/llvm/3.6/default.nix index 3321e38949f1..d95ffe473262 100644 --- a/pkgs/development/compilers/llvm/3.6/default.nix +++ b/pkgs/development/compilers/llvm/3.6/default.nix @@ -1,6 +1,6 @@ { pkgs, newScope, stdenv, isl, fetchurl, overrideCC, wrapCC }: let - callPackage = newScope (self // { inherit isl version fetch; }); + callPackage = newScope (self // { inherit stdenv isl version fetch; }); version = "3.6.1"; diff --git a/pkgs/development/interpreters/perl/5.16/default.nix b/pkgs/development/interpreters/perl/5.16/default.nix index 9ed3aa54f517..568025edfd4c 100644 --- a/pkgs/development/interpreters/perl/5.16/default.nix +++ b/pkgs/development/interpreters/perl/5.16/default.nix @@ -24,6 +24,17 @@ stdenv.mkDerivation rec { ++ lib.optional stdenv.isSunOS ./ld-shared.patch ++ lib.optional stdenv.isDarwin [ ./cpp-precomp.patch ./no-libutil.patch ] ; + # There's an annoying bug on sandboxed Darwin in Perl's Cwd.pm where it looks for pwd + # in /bin/pwd and /usr/bin/pwd and then falls back on just "pwd" if it can't get them + # while at the same time erasing the PATH environment variable so it unconditionally + # fails. The code in question is guarded by a check for Mac OS, but the patch below + # doesn't have any runtime effect on other platforms. + postPatch = '' + pwd="$(type -P pwd)" + substituteInPlace dist/Cwd/Cwd.pm \ + --replace "pwd_cmd = 'pwd'" "pwd_cmd = '$pwd'" + ''; + # 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 diff --git a/pkgs/development/interpreters/perl/5.20/default.nix b/pkgs/development/interpreters/perl/5.20/default.nix index 0ad955d03630..bfdb09e779a1 100644 --- a/pkgs/development/interpreters/perl/5.20/default.nix +++ b/pkgs/development/interpreters/perl/5.20/default.nix @@ -35,6 +35,17 @@ stdenv.mkDerivation rec { ++ optional stdenv.isSunOS ./ld-shared.patch ++ stdenv.lib.optional stdenv.isDarwin [ ./cpp-precomp.patch ./no-libutil.patch ] ; + # There's an annoying bug on sandboxed Darwin in Perl's Cwd.pm where it looks for pwd + # in /bin/pwd and /usr/bin/pwd and then falls back on just "pwd" if it can't get them + # while at the same time erasing the PATH environment variable so it unconditionally + # fails. The code in question is guarded by a check for Mac OS, but the patch below + # doesn't have any runtime effect on other platforms. + postPatch = '' + pwd="$(type -P pwd)" + substituteInPlace dist/PathTools/Cwd.pm \ + --replace "pwd_cmd = 'pwd'" "pwd_cmd = '$pwd'" + ''; + # 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 diff --git a/pkgs/development/interpreters/python/2.7/default.nix b/pkgs/development/interpreters/python/2.7/default.nix index 4ad4679bd6ea..9e1f0e61744a 100644 --- a/pkgs/development/interpreters/python/2.7/default.nix +++ b/pkgs/development/interpreters/python/2.7/default.nix @@ -62,6 +62,8 @@ let for i in Lib/plat-*/regen; do substituteInPlace $i --replace /usr/include/ ${stdenv.cc.libc}/include/ done + '' + optionalString stdenv.isDarwin '' + substituteInPlace configure --replace '`/usr/bin/arch`' '"i386"' ''; configureFlags = [ @@ -72,6 +74,8 @@ let "--with-system-ffi" "--with-system-expat" "ac_cv_func_bind_textdomain_codeset=yes" + ] ++ optionals stdenv.isDarwin [ + "--disable-toolbox-glue" ]; postConfigure = if stdenv.isCygwin then '' diff --git a/pkgs/development/libraries/gettext/default.nix b/pkgs/development/libraries/gettext/default.nix index 15f11f8a133d..f86a15cb0d61 100644 --- a/pkgs/development/libraries/gettext/default.nix +++ b/pkgs/development/libraries/gettext/default.nix @@ -19,7 +19,12 @@ stdenv.mkDerivation (rec { "--with-included-gettext" "--with-included-glib" "--with-included-libcroco" - ]); + ]) + # avoid retaining reference to CF during stdenv bootstrap + ++ (stdenv.lib.optionals stdenv.isDarwin [ + "gt_cv_func_CFPreferencesCopyAppValue=no" + "gt_cv_func_CFLocaleCopyCurrent=no" + ]); # On cross building, gettext supposes that the wchar.h from libc # does not fulfill gettext needs, so it tries to work with its diff --git a/pkgs/development/libraries/icu/default.nix b/pkgs/development/libraries/icu/default.nix index e95cb7ad0974..909f4e936a94 100644 --- a/pkgs/development/libraries/icu/default.nix +++ b/pkgs/development/libraries/icu/default.nix @@ -32,6 +32,11 @@ stdenv.mkDerivation { configureFlags = "--disable-debug" + stdenv.lib.optionalString stdenv.isDarwin " --enable-rpath"; + # remove dependency on bootstrap-tools in early stdenv build + postInstall = stdenv.lib.optionalString stdenv.isDarwin '' + sed -i 's/INSTALL_CMD=.*install/INSTALL_CMD=install/' $out/lib/icu/${version}/pkgdata.inc + ''; + enableParallelBuilding = true; meta = with stdenv.lib; { diff --git a/pkgs/development/libraries/libedit/default.nix b/pkgs/development/libraries/libedit/default.nix index dc2f5842b285..5adef716eb0f 100644 --- a/pkgs/development/libraries/libedit/default.nix +++ b/pkgs/development/libraries/libedit/default.nix @@ -16,7 +16,7 @@ stdenv.mkDerivation rec { ] else null; postInstall = '' - sed -i ${stdenv.lib.optionalString (stdenv.isDarwin && stdenv.cc.nativeTools) "''"} s/-lncurses/-lncursesw/g $out/lib/pkgconfig/libedit.pc + sed -i s/-lncurses/-lncursesw/g $out/lib/pkgconfig/libedit.pc ''; configureFlags = [ "--enable-widec" ]; diff --git a/pkgs/development/libraries/zlib/default.nix b/pkgs/development/libraries/zlib/default.nix index 419a2584ca84..93474d14344e 100644 --- a/pkgs/development/libraries/zlib/default.nix +++ b/pkgs/development/libraries/zlib/default.nix @@ -13,6 +13,13 @@ stdenv.mkDerivation (rec { sha256 = "039agw5rqvqny92cpkrfn243x2gd4xn13hs3xi6isk55d2vqqr9n"; }; + postPatch = stdenv.lib.optionalString stdenv.isDarwin '' + substituteInPlace configure \ + --replace '/usr/bin/libtool' 'ar' \ + --replace 'AR="libtool"' 'AR="ar"' \ + --replace 'ARFLAGS="-o"' 'ARFLAGS="-r"' + ''; + configureFlags = if static then "" else "--shared"; preConfigure = '' diff --git a/pkgs/development/tools/misc/binutils/default.nix b/pkgs/development/tools/misc/binutils/default.nix index f740c60c4877..4b2a55c1d906 100644 --- a/pkgs/development/tools/misc/binutils/default.nix +++ b/pkgs/development/tools/misc/binutils/default.nix @@ -2,8 +2,6 @@ , cross ? null, gold ? true, bison ? null }: -assert !stdenv.isDarwin; - let basename = "binutils-2.23.1"; in with { inherit (stdenv.lib) optional optionals optionalString; }; @@ -56,7 +54,9 @@ stdenv.mkDerivation rec { # As binutils takes part in the stdenv building, we don't want references # to the bootstrap-tools libgcc (as uses to happen on arm/mips) - NIX_CFLAGS_COMPILE = "-static-libgcc"; + NIX_CFLAGS_COMPILE = if stdenv.isDarwin + then "-Wno-string-plus-int -Wno-deprecated-declarations" + else "-static-libgcc"; configureFlags = [ "--enable-shared" "--enable-deterministic-archives" ] diff --git a/pkgs/os-specific/darwin/adv_cmds/locale.nix b/pkgs/os-specific/darwin/adv_cmds/locale.nix new file mode 100644 index 000000000000..92de8a242e2a --- /dev/null +++ b/pkgs/os-specific/darwin/adv_cmds/locale.nix @@ -0,0 +1,29 @@ +{ stdenv, fetchurl }: + +stdenv.mkDerivation rec { + name = "locale-${version}"; + version = "153"; + + src = fetchurl { + url = "http://opensource.apple.com/tarballs/adv_cmds/adv_cmds-${version}.tar.gz"; + sha256 = "174v6a4zkcm2pafzgdm6kvs48z5f911zl7k49hv7kjq6gm58w99v"; + }; + + buildPhase = '' + cd locale + c++ -Os -Wall -o locale locale.cc + ''; + + installPhase = '' + mkdir -p $out/bin $out/share/man/man1 + + cp locale $out/bin/locale + cp locale.1 $out/share/man/man1 + ''; + + + meta = { + platforms = stdenv.lib.platforms.darwin; + maintainers = with stdenv.lib.maintainers; [ gridaphobe ]; + }; +} diff --git a/pkgs/os-specific/darwin/binutils/default.nix b/pkgs/os-specific/darwin/binutils/default.nix new file mode 100644 index 000000000000..abe4aa67b143 --- /dev/null +++ b/pkgs/os-specific/darwin/binutils/default.nix @@ -0,0 +1,39 @@ +{ stdenv, binutils-raw, cctools }: + +stdenv.mkDerivation { + name = "cctools-binutils-darwin"; + buildCommand = '' + mkdir -p $out/bin $out/include + + ln -s ${binutils-raw}/bin/c++filt $out/bin/c++filt + + # We specifically need: + # - ld: binutils doesn't provide it on darwin + # - as: as above + # - ar: the binutils one prodices .a files that the cctools ld doesn't like + # - ranlib: for compatibility with ar + # - dsymutil: soon going away once it goes into LLVM (this one is fake anyway) + # - otool: we use it for some of our name mangling + # - install_name_tool: we use it to rewrite stuff in our bootstrap tools + # - strip: the binutils one seems to break mach-o files + # - lipo: gcc build assumes it exists + # - nm: the gnu one doesn't understand many new load commands + for i in ar ranlib as dsymutil install_name_tool ld strip otool lipo nm strings size; do + ln -sf "${cctools}/bin/$i" "$out/bin/$i" + done + + for i in ${binutils-raw}/include/*.h; do + ln -s "$i" "$out/include/$(basename $i)" + done + + for i in ${cctools}/include/*; do + ln -s "$i" "$out/include/$(basename $i)" + done + + # FIXME: this will give us incorrect man pages for bits of cctools + ln -s ${binutils-raw}/share $out/share + ln -s ${binutils-raw}/lib $out/lib + + ln -s ${cctools}/libexec $out/libexec + ''; +} diff --git a/pkgs/stdenv/darwin/default.nix b/pkgs/stdenv/darwin/default.nix index ac396ecdf12b..d4b17a7909c7 100644 --- a/pkgs/stdenv/darwin/default.nix +++ b/pkgs/stdenv/darwin/default.nix @@ -4,144 +4,294 @@ , config ? {} }: -rec { +let + fetch = { file, sha256 }: import { + url = "https://dl.dropboxusercontent.com/u/2857322/${file}"; + inherit sha256; + executable = true; + }; + + bootstrapFiles = { + sh = fetch { file = "sh"; sha256 = "1qakpg37vl61jnkplz13m3g1csqr85cg8ybp6jwiv6apmg26isnm"; }; + bzip2 = fetch { file = "bzip2"; sha256 = "1gxa67255q9v00j1vn1mzyrnbwys2g1102cx02vpcyvvrl4vqxr0"; }; + mkdir = fetch { file = "mkdir"; sha256 = "1yfl8w65ksji7fggrbvqxw8lp0gm02qilk11n9axj2jxay53ngvg"; }; + cpio = fetch { file = "cpio"; sha256 = "0nssyg19smgcblwq1mfcw4djbd85md84d2f093qcqkbigdjg484b"; }; + }; + tarball = fetch { file = "bootstrap-tools.9.cpio.bz2"; sha256 = "0fd79k7gy3z3sba5w4f4lnrcpiwff31vw02480x1pdry8bbgbf2j"; }; +in rec { allPackages = import ../../top-level/all-packages.nix; - bootstrapTools = derivation { - inherit system; - - name = "trivial-bootstrap-tools"; - builder = "/bin/sh"; - args = [ ./trivial-bootstrap.sh ]; - - mkdir = "/bin/mkdir"; - ln = "/bin/ln"; - }; - - # The simplest stdenv possible to run fetchadc and get the Apple command-line tools - stage0 = rec { - fetchurl = import ../../build-support/fetchurl { - inherit stdenv; - curl = bootstrapTools; - }; - - stdenv = import ../generic { - inherit system config; - name = "stdenv-darwin-boot-0"; - shell = "/bin/bash"; - initialPath = [ bootstrapTools ]; - fetchurlBoot = fetchurl; - cc = "/no-such-path"; - }; - }; - - buildTools = import ../../os-specific/darwin/command-line-tools { - inherit (stage0) stdenv fetchurl; - xar = bootstrapTools; - gzip = bootstrapTools; - cpio = bootstrapTools; - }; - - preHook = '' + commonPreHook = '' + export NIX_ENFORCE_PURITY=1 export NIX_IGNORE_LD_THROUGH_GCC=1 - export NIX_DONT_SET_RPATH=1 - export NIX_NO_SELF_RPATH=1 - dontFixLibtool=1 stripAllFlags=" " # the Darwin "strip" command doesn't know "-s" - xargsFlags=" " export MACOSX_DEPLOYMENT_TARGET=10.7 - # Use the 10.9 SDK if we're running on 10.9, and 10.10 if we're - # running on 10.10. We need to use the 10.10 headers for functions - # like readlinkat() that are dynamically detected by configure - # scripts. Very impure, obviously. - export SDKROOT=$(/usr/bin/xcrun --sdk macosx"$(/usr/bin/sw_vers -productVersion | /usr/bin/cut -d. -f1,2)" --show-sdk-path 2> /dev/null || echo /) - export NIX_CFLAGS_COMPILE+=" --sysroot=/var/empty -idirafter $SDKROOT/usr/include -F$SDKROOT/System/Library/Frameworks -Wno-multichar -Wno-deprecated-declarations" - export NIX_LDFLAGS_AFTER+=" -L$SDKROOT/usr/lib" + export SDKROOT= export CMAKE_OSX_ARCHITECTURES=x86_64 ''; - # A stdenv that wraps the Apple command-line tools and our other trivial symlinked bootstrap tools - stage1 = rec { - nativePrefix = "${buildTools.tools}/Library/Developer/CommandLineTools/usr"; + # libSystem and its transitive dependencies. Get used to this; it's a recurring theme in darwin land + libSystemClosure = [ + "/usr/lib/libSystem.dylib" + "/usr/lib/libSystem.B.dylib" + "/usr/lib/libobjc.A.dylib" + "/usr/lib/libobjc.dylib" + "/usr/lib/libauto.dylib" + "/usr/lib/libc++abi.dylib" + "/usr/lib/libc++.1.dylib" + "/usr/lib/libDiagnosticMessagesClient.dylib" + "/usr/lib/system" + ]; - stdenv = import ../generic { - name = "stdenv-darwin-boot-1"; + # The one dependency of /bin/sh :( + binShClosure = [ "/usr/lib/libncurses.5.4.dylib" ]; - inherit system config; - inherit (stage0.stdenv) shell fetchurlBoot; + bootstrapTools = derivation rec { + inherit system tarball; - initialPath = stage0.stdenv.initialPath ++ [ nativePrefix ]; + name = "bootstrap-tools"; + builder = bootstrapFiles.sh; # Not a filename! Attribute 'sh' on bootstrapFiles + args = [ ./unpack-bootstrap-tools.sh ]; - preHook = preHook + "\n" + '' - export NIX_LDFLAGS_AFTER+=" -L/usr/lib" - export NIX_ENFORCE_PURITY= - export NIX_CFLAGS_COMPILE+=" -isystem ${nativePrefix}/include/c++/v1 -stdlib=libc++" - export NIX_CFLAGS_LINK+=" -stdlib=libc++ -Wl,-rpath,${nativePrefix}/lib" - ''; + inherit (bootstrapFiles) mkdir bzip2 cpio; - cc = import ../../build-support/cc-wrapper { - nativeTools = true; - nativePrefix = nativePrefix; - nativeLibc = true; - stdenv = stage0.stdenv; - shell = "/bin/bash"; - cc = { - name = "clang-9.9.9"; - cc = "/usr"; - outPath = nativePrefix; + __impureHostDeps = binShClosure ++ libSystemClosure; + }; + + stageFun = step: last: {shell ? "${bootstrapTools}/bin/sh", + overrides ? (pkgs: {}), + extraPreHook ? "", + extraBuildInputs ? with last.pkgs; [ xz darwin.CF libcxx ], + extraInitialPath ? [], + allowedRequisites ? null}: + let + thisStdenv = import ../generic { + inherit system config shell extraBuildInputs allowedRequisites; + + name = "stdenv-darwin-boot-${toString step}"; + + cc = if isNull last then "/no-such-path" else import ../../build-support/cc-wrapper { + inherit shell; + inherit (last) stdenv; + inherit (last.pkgs.darwin) dyld; + + nativeTools = true; + nativePrefix = bootstrapTools; + nativeLibc = false; + libc = last.pkgs.darwin.Libsystem; + cc = { name = "clang-9.9.9"; outPath = bootstrapTools; }; }; - isClang = true; + + preHook = stage0.stdenv.lib.optionalString (shell == "${bootstrapTools}/bin/sh") '' + # Don't patch #!/interpreter because it leads to retained + # dependencies on the bootstrapTools in the final stdenv. + dontPatchShebangs=1 + '' + '' + ${commonPreHook} + ${extraPreHook} + ''; + initialPath = extraInitialPath ++ [ bootstrapTools ]; + fetchurlBoot = import ../../build-support/fetchurl { + stdenv = stage0.stdenv; + curl = bootstrapTools; + }; + + # The stdenvs themselves don't use mkDerivation, so I need to specify this here + __stdenvImpureHostDeps = binShClosure ++ libSystemClosure; + __extraImpureHostDeps = binShClosure ++ libSystemClosure; + + extraAttrs = { inherit platform; }; + overrides = pkgs: (overrides pkgs) // { fetchurl = thisStdenv.fetchurlBoot; }; }; + + thisPkgs = allPackages { + inherit system platform; + bootStdenv = thisStdenv; + }; + in { stdenv = thisStdenv; pkgs = thisPkgs; }; + + stage0 = stageFun 0 null { + overrides = orig: with stage0; rec { + darwin = orig.darwin // { + Libsystem = stdenv.mkDerivation { + name = "bootstrap-Libsystem"; + buildCommand = '' + mkdir -p $out + ln -s ${bootstrapTools}/lib $out/lib + ln -s ${bootstrapTools}/include-Libsystem $out/include + ''; + }; + dyld = bootstrapTools; + }; + + libcxx = stdenv.mkDerivation { + name = "bootstrap-libcxx"; + phases = [ "installPhase" "fixupPhase" ]; + installPhase = '' + mkdir -p $out/lib $out/include + ln -s ${bootstrapTools}/lib/libc++.dylib $out/lib/libc++.dylib + ln -s ${bootstrapTools}/include/c++ $out/include/c++ + ''; + setupHook = ../../development/compilers/llvm/3.5/libc++/setup-hook.sh; + }; + + libcxxabi = stdenv.mkDerivation { + name = "bootstrap-libcxxabi"; + buildCommand = '' + mkdir -p $out/lib + ln -s ${bootstrapTools}/lib/libc++abi.dylib $out/lib/libc++abi.dylib + ''; + }; + }; - pkgs = allPackages { - inherit system platform; - bootStdenv = stdenv; + + extraBuildInputs = []; + }; + + persistent0 = _: {}; + + stage1 = with stage0; stageFun 1 stage0 { + extraPreHook = "export NIX_CFLAGS_COMPILE+=\" -F${bootstrapTools}/Library/Frameworks\""; + extraBuildInputs = [ pkgs.libcxx ]; + + allowedRequisites = + [ bootstrapTools ] ++ (with pkgs; [ libcxx libcxxabi ]) ++ [ pkgs.darwin.Libsystem ]; + + overrides = persistent0; + }; + + persistent1 = orig: with stage1.pkgs; { + inherit + zlib patchutils m4 scons flex perl bison unifdef unzip openssl icu python + libxml2 gettext sharutils gmp libarchive ncurses pkg-config libedit groff + openssh sqlite sed serf openldap db cyrus-sasl expat apr-util subversion xz + findfreetype libssh curl cmake autoconf automake libtool ed cpio coreutils; + + darwin = orig.darwin // { + inherit (darwin) + dyld Libsystem xnu configd libdispatch libclosure launchd; }; }; - stage2 = rec { - stdenv = import ../generic { - name = "stdenv-darwin-boot-2"; + stage2 = with stage1; stageFun 2 stage1 { + allowedRequisites = + [ bootstrapTools ] ++ + (with pkgs; [ xz libcxx libcxxabi icu ]) ++ + (with pkgs.darwin; [ dyld Libsystem CF ]); - inherit system config; - inherit (stage1.stdenv) shell fetchurlBoot preHook cc; + overrides = persistent1; + }; - initialPath = [ stage1.pkgs.xz ] ++ stage1.stdenv.initialPath; - }; - pkgs = allPackages { - inherit system platform; - bootStdenv = stdenv; + persistent2 = orig: with stage2.pkgs; { + inherit + patchutils m4 scons flex perl bison unifdef unzip openssl python + gettext sharutils libarchive pkg-config groff bash subversion + openssh sqlite sed serf openldap db cyrus-sasl expat apr-util + findfreetype libssh curl cmake autoconf automake libtool cpio + libcxx libcxxabi; + + darwin = orig.darwin // { + inherit (darwin) + dyld Libsystem xnu configd libdispatch libclosure launchd libiconv; }; }; - # Use stage1 to build a whole set of actual tools so we don't have to rely on the Apple prebuilt ones or - # the ugly symlinked bootstrap tools anymore. - stage3 = with stage2; import ../generic { - name = "stdenv-darwin-boot-3"; + stage3 = with stage2; stageFun 3 stage2 { + shell = "${pkgs.bash}/bin/bash"; + # We have a valid shell here (this one has no bootstrap-tools runtime deps) so stageFun + # enables patchShebangs above. Unfortunately, patchShebangs ignores our $SHELL setting + # and instead goes by $PATH, which happens to contain bootstrapTools. So it goes and + # patches our shebangs back to point at bootstrapTools. This makes sure bash comes first. + extraInitialPath = [ pkgs.bash ]; + + allowedRequisites = + [ bootstrapTools ] ++ + (with pkgs; [ icu bash libcxx libcxxabi ]) ++ + (with pkgs.darwin; [ dyld Libsystem ]); + + overrides = persistent2; + }; + + persistent3 = orig: with stage3.pkgs; { + inherit + gnumake gzip gnused bzip2 gawk ed xz patch bash + libcxxabi libcxx ncurses libffi zlib llvm gmp pcre gnugrep + coreutils findutils diffutils patchutils; + + llvmPackages = orig.llvmPackages // { + inherit (llvmPackages) llvm clang-unwrapped; + }; + + darwin = orig.darwin // { + inherit (darwin) dyld Libsystem libiconv; + }; + }; + + stage4 = with stage3; stageFun 4 stage3 { + shell = "${pkgs.bash}/bin/bash"; + extraInitialPath = [ pkgs.bash ]; + overrides = persistent3; + }; + + persistent4 = orig: with stage4.pkgs; { + inherit + gnumake gzip gnused bzip2 gawk ed xz patch bash + libcxxabi libcxx ncurses libffi zlib icu llvm gmp pcre gnugrep + coreutils findutils diffutils patchutils binutils binutils-raw; + + llvmPackages = orig.llvmPackages // { + inherit (llvmPackages) llvm clang-unwrapped; + }; + + darwin = orig.darwin // { + inherit (darwin) dyld Libsystem cctools CF libiconv; + }; + }; + + stage5 = with stage4; import ../generic rec { inherit system config; inherit (stdenv) fetchurlBoot; - initialPath = (import ../common-path.nix) { inherit pkgs; }; + name = "stdenv-darwin"; - preHook = preHook + "\n" + '' - export NIX_ENFORCE_PURITY=1 - ''; + preHook = commonPreHook; + + __stdenvImpureHostDeps = binShClosure ++ libSystemClosure; + __extraImpureHostDeps = binShClosure ++ libSystemClosure; + + initialPath = import ../common-path.nix { inherit pkgs; }; + shell = "${pkgs.bash}/bin/bash"; cc = import ../../build-support/cc-wrapper { - inherit stdenv; - nativeTools = false; - nativeLibc = true; - binutils = pkgs.darwin.cctools; - cc = pkgs.llvmPackages.clang-unwrapped; - coreutils = pkgs.coreutils; - shell = "${pkgs.bash}/bin/bash"; - extraPackages = [ pkgs.libcxx ]; - isClang = true; + inherit stdenv shell; + nativeTools = false; + nativeLibc = false; + inherit (pkgs) coreutils binutils; + inherit (pkgs.darwin) dyld; + cc = pkgs.llvmPackages.clang-unwrapped; + libc = pkgs.darwin.Libsystem; }; - shell = "${pkgs.bash}/bin/bash"; - }; + extraBuildInputs = with pkgs; [ darwin.CF libcxx ]; - stdenvDarwin = stage3; + extraAttrs = { + inherit platform bootstrapTools; + libc = pkgs.darwin.Libsystem; + shellPackage = pkgs.bash; + }; + + allowedRequisites = (with pkgs; [ + xz libcxx libcxxabi icu gmp gnumake findutils bzip2 llvm zlib libffi + coreutils ed diffutils gnutar gzip ncurses gnused bash gawk + gnugrep llvmPackages.clang-unwrapped patch pcre binutils-raw binutils gettext + ]) ++ (with pkgs.darwin; [ + dyld Libsystem CF cctools libiconv + ]); + + overrides = orig: persistent4 orig // { + clang = cc; + inherit cc; + }; + }; } diff --git a/pkgs/stdenv/darwin/make-bootstrap-tools.nix b/pkgs/stdenv/darwin/make-bootstrap-tools.nix index 636410fdd788..433638dd1bde 100644 --- a/pkgs/stdenv/darwin/make-bootstrap-tools.nix +++ b/pkgs/stdenv/darwin/make-bootstrap-tools.nix @@ -63,13 +63,15 @@ rec { cp -d ${gnugrep.pcre}/lib/libpcre*.dylib $out/lib cp -d ${libiconv}/lib/libiconv*.dylib $out/lib + cp -d ${gettext}/lib/libintl*.dylib $out/lib + chmod +x $out/lib/libintl*.dylib # Copy what we need of clang - cp -d ${llvmPackages.clang}/bin/clang $out/bin - cp -d ${llvmPackages.clang}/bin/clang++ $out/bin - cp -d ${llvmPackages.clang}/bin/clang-3.5 $out/bin + cp -d ${llvmPackages.clang-unwrapped}/bin/clang $out/bin + cp -d ${llvmPackages.clang-unwrapped}/bin/clang++ $out/bin + cp -d ${llvmPackages.clang-unwrapped}/bin/clang-3.6 $out/bin - cp -rL ${llvmPackages.clang}/lib/clang $out/lib + cp -rL ${llvmPackages.clang-unwrapped}/lib/clang $out/lib cp -d ${libcxx}/lib/libc++*.dylib $out/lib cp -d ${libcxxabi}/lib/libc++abi*.dylib $out/lib diff --git a/pkgs/stdenv/default.nix b/pkgs/stdenv/default.nix index 545a3d748eb1..28ba80014717 100644 --- a/pkgs/stdenv/default.nix +++ b/pkgs/stdenv/default.nix @@ -37,7 +37,7 @@ rec { stdenvLinux = (import ./linux { inherit system allPackages platform config lib; }).stdenvLinux; # Darwin standard environment. - stdenvDarwin = (import ./darwin { inherit system allPackages platform config;}).stdenvDarwin; + stdenvDarwin = (import ./darwin { inherit system allPackages platform config;}).stage5; # Select the appropriate stdenv for the platform `system'. stdenv = diff --git a/pkgs/stdenv/generic/default.nix b/pkgs/stdenv/generic/default.nix index 863acc31a615..67adaf42a8d1 100644 --- a/pkgs/stdenv/generic/default.nix +++ b/pkgs/stdenv/generic/default.nix @@ -10,6 +10,8 @@ let lib = import ../../../lib; in lib.makeOverridable ( , setupScript ? ./setup.sh , extraBuildInputs ? [] +, __stdenvImpureHostDeps ? [] +, __extraImpureHostDeps ? [] }: let @@ -131,7 +133,19 @@ let lib.addPassthru (derivation ( (removeAttrs attrs ["meta" "passthru" "crossAttrs" "pos"]) - // + // (let + buildInputs = attrs.buildInputs or []; + nativeBuildInputs = attrs.nativeBuildInputs or []; + propagatedBuildInputs = attrs.propagatedBuildInputs or []; + propagatedNativeBuildInputs = attrs.propagatedNativeBuildInputs or []; + crossConfig = attrs.crossConfig or null; + + __impureHostDeps = attrs.__impureHostDeps or []; + __propagatedImpureHostDeps = attrs.__propagatedImpureHostDeps or []; + + computedImpureHostDeps = lib.concatMap (input: input.__propagatedImpureHostDeps or []) (extraBuildInputs ++ buildInputs ++ nativeBuildInputs); + computedPropagatedImpureHostDeps = lib.concatMap (input: input.__propagatedImpureHostDeps or []) (propagatedBuildInputs ++ propagatedNativeBuildInputs); + in { builder = attrs.realBuilder or shell; args = attrs.args or ["-e" (attrs.builder or ./default-builder.sh)]; @@ -147,7 +161,15 @@ let nativeBuildInputs = nativeBuildInputs ++ (if crossConfig == null then buildInputs else []); propagatedNativeBuildInputs = propagatedNativeBuildInputs ++ (if crossConfig == null then propagatedBuildInputs else []); - })) ( + + __impureHostDeps = lib.unique (lib.sort (x: y: x < y) (computedImpureHostDeps ++ computedPropagatedImpureHostDeps ++ __propagatedImpureHostDeps ++ __impureHostDeps ++ __extraImpureHostDeps ++ [ + "/dev/zero" + "/dev/random" + "/dev/urandom" + "/bin/sh" + ])); + __propagatedImpureHostDeps = lib.unique (lib.sort (x: y: x < y) (computedPropagatedImpureHostDeps ++ __propagatedImpureHostDeps)); + }))) ( { # The meta attribute is passed in the resulting attribute set, # but it's not part of the actual derivation, i.e., it's not @@ -171,6 +193,7 @@ let (if isNull allowedRequisites then {} else { allowedRequisites = allowedRequisites ++ defaultNativeBuildInputs; }) // { inherit system name; + __impureHostDeps = __stdenvImpureHostDeps; builder = shell; diff --git a/pkgs/tools/archivers/gnutar/default.nix b/pkgs/tools/archivers/gnutar/default.nix index 00be39677689..71b43bf2de9a 100644 --- a/pkgs/tools/archivers/gnutar/default.nix +++ b/pkgs/tools/archivers/gnutar/default.nix @@ -11,6 +11,12 @@ stdenv.mkDerivation rec { patches = stdenv.lib.optional stdenv.isDarwin ./gnutar-1.28-darwin.patch; + # avoid retaining reference to CF during stdenv bootstrap + configureFlags = stdenv.lib.optionals stdenv.isDarwin [ + "gt_cv_func_CFPreferencesCopyAppValue=no" + "gt_cv_func_CFLocaleCopyCurrent=no" + ]; + # gnutar tries to call into gettext between `fork` and `exec`, # which is not safe on darwin. # see http://article.gmane.org/gmane.os.macosx.fink.devel/21882 diff --git a/pkgs/tools/archivers/sharutils/default.nix b/pkgs/tools/archivers/sharutils/default.nix index 146f9bea87a0..bfeda5085b68 100644 --- a/pkgs/tools/archivers/sharutils/default.nix +++ b/pkgs/tools/archivers/sharutils/default.nix @@ -12,7 +12,7 @@ stdenv.mkDerivation rec { '' # Fix for building on Glibc 2.16. Won't be needed once the # gnulib in sharutils is updated. - sed -i ${stdenv.lib.optionalString ((stdenv.isFreeBSD || stdenv.isOpenBSD || stdenv.isDarwin) && stdenv.cc.nativeTools) "''"} '/gets is a security hole/d' lib/stdio.in.h + sed -i ${stdenv.lib.optionalString ((stdenv.isFreeBSD || stdenv.isOpenBSD) && stdenv.cc.nativeTools) "''"} '/gets is a security hole/d' lib/stdio.in.h ''; # GNU Gettext is needed on non-GNU platforms. diff --git a/pkgs/tools/text/gawk/default.nix b/pkgs/tools/text/gawk/default.nix index c6eb7ba11019..001a50458e29 100644 --- a/pkgs/tools/text/gawk/default.nix +++ b/pkgs/tools/text/gawk/default.nix @@ -1,4 +1,5 @@ -{ stdenv, fetchurl, libsigsegv, readline, readlineSupport ? false }: +{ stdenv, fetchurl, libsigsegv, readline, readlineSupport ? false +, locale ? null }: stdenv.mkDerivation rec { name = "gawk-4.1.3"; @@ -8,10 +9,14 @@ stdenv.mkDerivation rec { sha256 = "09d6pmx6h3i2glafm0jd1v1iyrs03vcyv2rkz12jisii3vlmbkz3"; }; - doCheck = !stdenv.isCygwin; # XXX: `test-dup2' segfaults on Cygwin 6.1 + doCheck = !( + stdenv.isCygwin # XXX: `test-dup2' segfaults on Cygwin 6.1 + || stdenv.isDarwin # XXX: `locale' segfaults + ); buildInputs = stdenv.lib.optional (stdenv.system != "x86_64-cygwin") libsigsegv - ++ stdenv.lib.optional readlineSupport readline; + ++ stdenv.lib.optional readlineSupport readline + ++ stdenv.lib.optional stdenv.isDarwin locale; configureFlags = stdenv.lib.optional (stdenv.system != "x86_64-cygwin") "--with-libsigsegv-prefix=${libsigsegv}" ++ stdenv.lib.optional readlineSupport "--with-readline=${readline}" diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 1e2dd6ad2206..e903f6395b9b 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -1512,7 +1512,7 @@ let garmintools = callPackage ../development/libraries/garmintools {}; - gawk = callPackage ../tools/text/gawk { }; + gawk = callPackage ../tools/text/gawk { inherit (darwin) locale; }; gawkInteractive = appendToName "interactive" (gawk.override { readlineSupport = true; }); @@ -4670,12 +4670,13 @@ let nativePrefix = stdenv.cc.nativePrefix or ""; cc = baseCC; libc = libc; + dyld = if stdenv.isDarwin then darwin.dyld else null; isGNU = baseCC.isGNU or false; isClang = baseCC.isClang or false; inherit stdenv binutils coreutils zlib; }; - wrapCC = wrapCCWith (makeOverridable (import ../build-support/cc-wrapper)) glibc; + wrapCC = wrapCCWith (makeOverridable (import ../build-support/cc-wrapper)) stdenv.cc.libc; # legacy version, used for gnat bootstrapping wrapGCC-old = baseGCC: (makeOverridable (import ../build-support/gcc-wrapper-old)) { nativeTools = stdenv.cc.nativeTools or false; @@ -5182,11 +5183,9 @@ let bin_replace_string = callPackage ../development/tools/misc/bin_replace_string { }; - binutils = if stdenv.isDarwin - then import ../build-support/native-darwin-cctools-wrapper {inherit stdenv;} - else callPackage ../development/tools/misc/binutils { - inherit noSysDirs; - }; + binutils = if stdenv.isDarwin then darwin.binutils else binutils-raw; + + binutils-raw = callPackage ../development/tools/misc/binutils { inherit noSysDirs; }; binutils_nogold = lowPrio (callPackage ../development/tools/misc/binutils { inherit noSysDirs; @@ -6942,7 +6941,10 @@ let # glibc provides libiconv so systems with glibc don't need to build libiconv # separately, but we also provide libiconvReal, which will always be a # standalone libiconv, just in case you want it - libiconv = if stdenv.isGlibc then stdenv.cc.libc else libiconvReal; + libiconv = + if stdenv.isGlibc then stdenv.cc.libc + else if stdenv.isDarwin then darwin.libiconv + else libiconvReal; libiconvReal = callPackage ../development/libraries/libiconv { fetchurl = fetchurlBoot; @@ -9279,7 +9281,7 @@ let xctoolchain = xcode.toolchain; }; - cctools = (callPackage ../os-specific/darwin/cctools/port.nix {}).native; + cctools = (callPackage ../os-specific/darwin/cctools/port.nix { inherit libobjc; }).native; maloader = callPackage ../os-specific/darwin/maloader { inherit opencflite; @@ -9294,8 +9296,12 @@ let ps = callPackage ../os-specific/darwin/adv_cmds/ps.nix {}; + locale = callPackage ../os-specific/darwin/adv_cmds/locale.nix {}; + security_tool = callPackage ../os-specific/darwin/security-tool { inherit osx_private_sdk; }; + binutils = callPackage ../os-specific/darwin/binutils { inherit cctools; }; + cmdline_sdk = cmdline.sdk; cmdline_tools = cmdline.tools; From ee951a92d346e5147001bcb290b3923b0fdcb607 Mon Sep 17 00:00:00 2001 From: Jude Taylor Date: Wed, 17 Jun 2015 20:52:27 -0700 Subject: [PATCH 105/259] relocate adv_cmds --- pkgs/os-specific/darwin/adv_cmds/locale.nix | 29 --------------- pkgs/os-specific/darwin/adv_cmds/ps.nix | 35 ------------------- .../adv_cmds/default.nix | 15 +++++--- pkgs/top-level/all-packages.nix | 12 +++---- 4 files changed, 15 insertions(+), 76 deletions(-) delete mode 100644 pkgs/os-specific/darwin/adv_cmds/locale.nix delete mode 100644 pkgs/os-specific/darwin/adv_cmds/ps.nix diff --git a/pkgs/os-specific/darwin/adv_cmds/locale.nix b/pkgs/os-specific/darwin/adv_cmds/locale.nix deleted file mode 100644 index 92de8a242e2a..000000000000 --- a/pkgs/os-specific/darwin/adv_cmds/locale.nix +++ /dev/null @@ -1,29 +0,0 @@ -{ stdenv, fetchurl }: - -stdenv.mkDerivation rec { - name = "locale-${version}"; - version = "153"; - - src = fetchurl { - url = "http://opensource.apple.com/tarballs/adv_cmds/adv_cmds-${version}.tar.gz"; - sha256 = "174v6a4zkcm2pafzgdm6kvs48z5f911zl7k49hv7kjq6gm58w99v"; - }; - - buildPhase = '' - cd locale - c++ -Os -Wall -o locale locale.cc - ''; - - installPhase = '' - mkdir -p $out/bin $out/share/man/man1 - - cp locale $out/bin/locale - cp locale.1 $out/share/man/man1 - ''; - - - meta = { - platforms = stdenv.lib.platforms.darwin; - maintainers = with stdenv.lib.maintainers; [ gridaphobe ]; - }; -} diff --git a/pkgs/os-specific/darwin/adv_cmds/ps.nix b/pkgs/os-specific/darwin/adv_cmds/ps.nix deleted file mode 100644 index c3d3d1588627..000000000000 --- a/pkgs/os-specific/darwin/adv_cmds/ps.nix +++ /dev/null @@ -1,35 +0,0 @@ -{ stdenv, fetchurl }: - -stdenv.mkDerivation rec { - name = "ps-${version}"; - version = "153"; - - src = fetchurl { - url = "http://opensource.apple.com/tarballs/adv_cmds/adv_cmds-${version}.tar.gz"; - sha256 = "174v6a4zkcm2pafzgdm6kvs48z5f911zl7k49hv7kjq6gm58w99v"; - }; - - buildPhase = '' - cd ps - cc -Os -Wall -I. -c -o fmt.o fmt.c - cc -Os -Wall -I. -c -o keyword.o keyword.c - cc -Os -Wall -I. -c -o nlist.o nlist.c - cc -Os -Wall -I. -c -o print.o print.c - cc -Os -Wall -I. -c -o ps.o ps.c - cc -Os -Wall -I. -c -o tasks.o tasks.c - cc -o ps fmt.o keyword.o nlist.o print.o ps.o tasks.o - ''; - - installPhase = '' - mkdir -p $out/bin $out/share/man/man1 - - cp ps $out/bin/ps - cp ps.1 $out/share/man/man1 - ''; - - - meta = { - platforms = stdenv.lib.platforms.darwin; - maintainers = with stdenv.lib.maintainers; [ gridaphobe ]; - }; -} diff --git a/pkgs/os-specific/darwin/apple-source-releases/adv_cmds/default.nix b/pkgs/os-specific/darwin/apple-source-releases/adv_cmds/default.nix index db467254f171..4bc3a7a7fa42 100644 --- a/pkgs/os-specific/darwin/apple-source-releases/adv_cmds/default.nix +++ b/pkgs/os-specific/darwin/apple-source-releases/adv_cmds/default.nix @@ -2,10 +2,8 @@ appleDerivation { # Will override the name until we provide all of adv_cmds - name = "ps-${version}"; - buildPhase = '' - cd ps + pushd ps cc -Os -Wall -I. -c -o fmt.o fmt.c cc -Os -Wall -I. -c -o keyword.o keyword.c cc -Os -Wall -I. -c -o nlist.o nlist.c @@ -13,13 +11,20 @@ appleDerivation { cc -Os -Wall -I. -c -o ps.o ps.c cc -Os -Wall -I. -c -o tasks.o tasks.c cc -o ps fmt.o keyword.o nlist.o print.o ps.o tasks.o + popd + + pushd locale + c++ -o locale locale.cc + popd ''; installPhase = '' mkdir -p $out/bin $out/share/man/man1 - cp ps $out/bin/ps - cp ps.1 $out/share/man/man1 + cp ps/ps $out/bin/ps + cp ps/ps.1 $out/share/man/man1 + cp locale/locale $out/bin/locale + cp locale/locale.1 $out/share/man/man1 ''; diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index e903f6395b9b..dc41bf4064db 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -1512,7 +1512,9 @@ let garmintools = callPackage ../development/libraries/garmintools {}; - gawk = callPackage ../tools/text/gawk { inherit (darwin) locale; }; + gawk = callPackage ../tools/text/gawk { + locale = darwin.adv_cmds; + }; gawkInteractive = appendToName "interactive" (gawk.override { readlineSupport = true; }); @@ -5282,12 +5284,12 @@ let cmake-2_8 = callPackage ../development/tools/build-managers/cmake/2.8.nix { wantPS = stdenv.isDarwin; - ps = if stdenv.isDarwin then darwin.ps else null; + ps = if stdenv.isDarwin then darwin.adv_cmds else null; }; cmake = callPackage ../development/tools/build-managers/cmake { wantPS = stdenv.isDarwin; - ps = if stdenv.isDarwin then darwin.ps else null; + ps = if stdenv.isDarwin then darwin.adv_cmds else null; }; cmakeCurses = cmake.override { useNcurses = true; }; @@ -9294,10 +9296,6 @@ let osx_sdk = callPackage ../os-specific/darwin/osx-sdk {}; osx_private_sdk = callPackage ../os-specific/darwin/osx-private-sdk { inherit osx_sdk; }; - ps = callPackage ../os-specific/darwin/adv_cmds/ps.nix {}; - - locale = callPackage ../os-specific/darwin/adv_cmds/locale.nix {}; - security_tool = callPackage ../os-specific/darwin/security-tool { inherit osx_private_sdk; }; binutils = callPackage ../os-specific/darwin/binutils { inherit cctools; }; From 87bca3698a753199a234fca9ca9c64ab60c99983 Mon Sep 17 00:00:00 2001 From: Jude Taylor Date: Wed, 17 Jun 2015 21:54:29 -0700 Subject: [PATCH 106/259] remove sort and unique from stdenv --- pkgs/stdenv/generic/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/stdenv/generic/default.nix b/pkgs/stdenv/generic/default.nix index 67adaf42a8d1..bdad51949308 100644 --- a/pkgs/stdenv/generic/default.nix +++ b/pkgs/stdenv/generic/default.nix @@ -162,12 +162,12 @@ let propagatedNativeBuildInputs = propagatedNativeBuildInputs ++ (if crossConfig == null then propagatedBuildInputs else []); - __impureHostDeps = lib.unique (lib.sort (x: y: x < y) (computedImpureHostDeps ++ computedPropagatedImpureHostDeps ++ __propagatedImpureHostDeps ++ __impureHostDeps ++ __extraImpureHostDeps ++ [ + __impureHostDeps = computedImpureHostDeps ++ computedPropagatedImpureHostDeps ++ __propagatedImpureHostDeps ++ __impureHostDeps ++ __extraImpureHostDeps ++ [ "/dev/zero" "/dev/random" "/dev/urandom" "/bin/sh" - ])); + ]; __propagatedImpureHostDeps = lib.unique (lib.sort (x: y: x < y) (computedPropagatedImpureHostDeps ++ __propagatedImpureHostDeps)); }))) ( { From fe75f160324672d639469dc2da69f70d4eb466a4 Mon Sep 17 00:00:00 2001 From: Jude Taylor Date: Thu, 18 Jun 2015 10:03:32 -0700 Subject: [PATCH 107/259] move pure stdenv into a new directory, bring back the old one remove __impure from non-darwin OSes --- pkgs/stdenv/darwin/default.nix | 362 +++++------------- pkgs/stdenv/darwin/make-bootstrap-tools.nix | 10 +- pkgs/stdenv/default.nix | 8 +- pkgs/stdenv/generic/default.nix | 14 +- pkgs/stdenv/pure-darwin/default.nix | 297 ++++++++++++++ .../pure-darwin/make-bootstrap-tools.nix | 286 ++++++++++++++ pkgs/stdenv/pure-darwin/trivial-bootstrap.sh | 66 ++++ .../pure-darwin/unpack-bootstrap-tools.sh | 54 +++ 8 files changed, 830 insertions(+), 267 deletions(-) create mode 100644 pkgs/stdenv/pure-darwin/default.nix create mode 100644 pkgs/stdenv/pure-darwin/make-bootstrap-tools.nix create mode 100644 pkgs/stdenv/pure-darwin/trivial-bootstrap.sh create mode 100644 pkgs/stdenv/pure-darwin/unpack-bootstrap-tools.sh diff --git a/pkgs/stdenv/darwin/default.nix b/pkgs/stdenv/darwin/default.nix index d4b17a7909c7..ac396ecdf12b 100644 --- a/pkgs/stdenv/darwin/default.nix +++ b/pkgs/stdenv/darwin/default.nix @@ -4,294 +4,144 @@ , config ? {} }: -let - fetch = { file, sha256 }: import { - url = "https://dl.dropboxusercontent.com/u/2857322/${file}"; - inherit sha256; - executable = true; - }; - - bootstrapFiles = { - sh = fetch { file = "sh"; sha256 = "1qakpg37vl61jnkplz13m3g1csqr85cg8ybp6jwiv6apmg26isnm"; }; - bzip2 = fetch { file = "bzip2"; sha256 = "1gxa67255q9v00j1vn1mzyrnbwys2g1102cx02vpcyvvrl4vqxr0"; }; - mkdir = fetch { file = "mkdir"; sha256 = "1yfl8w65ksji7fggrbvqxw8lp0gm02qilk11n9axj2jxay53ngvg"; }; - cpio = fetch { file = "cpio"; sha256 = "0nssyg19smgcblwq1mfcw4djbd85md84d2f093qcqkbigdjg484b"; }; - }; - tarball = fetch { file = "bootstrap-tools.9.cpio.bz2"; sha256 = "0fd79k7gy3z3sba5w4f4lnrcpiwff31vw02480x1pdry8bbgbf2j"; }; -in rec { +rec { allPackages = import ../../top-level/all-packages.nix; - commonPreHook = '' - export NIX_ENFORCE_PURITY=1 + bootstrapTools = derivation { + inherit system; + + name = "trivial-bootstrap-tools"; + builder = "/bin/sh"; + args = [ ./trivial-bootstrap.sh ]; + + mkdir = "/bin/mkdir"; + ln = "/bin/ln"; + }; + + # The simplest stdenv possible to run fetchadc and get the Apple command-line tools + stage0 = rec { + fetchurl = import ../../build-support/fetchurl { + inherit stdenv; + curl = bootstrapTools; + }; + + stdenv = import ../generic { + inherit system config; + name = "stdenv-darwin-boot-0"; + shell = "/bin/bash"; + initialPath = [ bootstrapTools ]; + fetchurlBoot = fetchurl; + cc = "/no-such-path"; + }; + }; + + buildTools = import ../../os-specific/darwin/command-line-tools { + inherit (stage0) stdenv fetchurl; + xar = bootstrapTools; + gzip = bootstrapTools; + cpio = bootstrapTools; + }; + + preHook = '' export NIX_IGNORE_LD_THROUGH_GCC=1 + export NIX_DONT_SET_RPATH=1 + export NIX_NO_SELF_RPATH=1 + dontFixLibtool=1 stripAllFlags=" " # the Darwin "strip" command doesn't know "-s" + xargsFlags=" " export MACOSX_DEPLOYMENT_TARGET=10.7 - export SDKROOT= + # Use the 10.9 SDK if we're running on 10.9, and 10.10 if we're + # running on 10.10. We need to use the 10.10 headers for functions + # like readlinkat() that are dynamically detected by configure + # scripts. Very impure, obviously. + export SDKROOT=$(/usr/bin/xcrun --sdk macosx"$(/usr/bin/sw_vers -productVersion | /usr/bin/cut -d. -f1,2)" --show-sdk-path 2> /dev/null || echo /) + export NIX_CFLAGS_COMPILE+=" --sysroot=/var/empty -idirafter $SDKROOT/usr/include -F$SDKROOT/System/Library/Frameworks -Wno-multichar -Wno-deprecated-declarations" + export NIX_LDFLAGS_AFTER+=" -L$SDKROOT/usr/lib" export CMAKE_OSX_ARCHITECTURES=x86_64 ''; - # libSystem and its transitive dependencies. Get used to this; it's a recurring theme in darwin land - libSystemClosure = [ - "/usr/lib/libSystem.dylib" - "/usr/lib/libSystem.B.dylib" - "/usr/lib/libobjc.A.dylib" - "/usr/lib/libobjc.dylib" - "/usr/lib/libauto.dylib" - "/usr/lib/libc++abi.dylib" - "/usr/lib/libc++.1.dylib" - "/usr/lib/libDiagnosticMessagesClient.dylib" - "/usr/lib/system" - ]; + # A stdenv that wraps the Apple command-line tools and our other trivial symlinked bootstrap tools + stage1 = rec { + nativePrefix = "${buildTools.tools}/Library/Developer/CommandLineTools/usr"; - # The one dependency of /bin/sh :( - binShClosure = [ "/usr/lib/libncurses.5.4.dylib" ]; + stdenv = import ../generic { + name = "stdenv-darwin-boot-1"; - bootstrapTools = derivation rec { - inherit system tarball; + inherit system config; + inherit (stage0.stdenv) shell fetchurlBoot; - name = "bootstrap-tools"; - builder = bootstrapFiles.sh; # Not a filename! Attribute 'sh' on bootstrapFiles - args = [ ./unpack-bootstrap-tools.sh ]; + initialPath = stage0.stdenv.initialPath ++ [ nativePrefix ]; - inherit (bootstrapFiles) mkdir bzip2 cpio; + preHook = preHook + "\n" + '' + export NIX_LDFLAGS_AFTER+=" -L/usr/lib" + export NIX_ENFORCE_PURITY= + export NIX_CFLAGS_COMPILE+=" -isystem ${nativePrefix}/include/c++/v1 -stdlib=libc++" + export NIX_CFLAGS_LINK+=" -stdlib=libc++ -Wl,-rpath,${nativePrefix}/lib" + ''; - __impureHostDeps = binShClosure ++ libSystemClosure; - }; - - stageFun = step: last: {shell ? "${bootstrapTools}/bin/sh", - overrides ? (pkgs: {}), - extraPreHook ? "", - extraBuildInputs ? with last.pkgs; [ xz darwin.CF libcxx ], - extraInitialPath ? [], - allowedRequisites ? null}: - let - thisStdenv = import ../generic { - inherit system config shell extraBuildInputs allowedRequisites; - - name = "stdenv-darwin-boot-${toString step}"; - - cc = if isNull last then "/no-such-path" else import ../../build-support/cc-wrapper { - inherit shell; - inherit (last) stdenv; - inherit (last.pkgs.darwin) dyld; - - nativeTools = true; - nativePrefix = bootstrapTools; - nativeLibc = false; - libc = last.pkgs.darwin.Libsystem; - cc = { name = "clang-9.9.9"; outPath = bootstrapTools; }; + cc = import ../../build-support/cc-wrapper { + nativeTools = true; + nativePrefix = nativePrefix; + nativeLibc = true; + stdenv = stage0.stdenv; + shell = "/bin/bash"; + cc = { + name = "clang-9.9.9"; + cc = "/usr"; + outPath = nativePrefix; }; - - preHook = stage0.stdenv.lib.optionalString (shell == "${bootstrapTools}/bin/sh") '' - # Don't patch #!/interpreter because it leads to retained - # dependencies on the bootstrapTools in the final stdenv. - dontPatchShebangs=1 - '' + '' - ${commonPreHook} - ${extraPreHook} - ''; - initialPath = extraInitialPath ++ [ bootstrapTools ]; - fetchurlBoot = import ../../build-support/fetchurl { - stdenv = stage0.stdenv; - curl = bootstrapTools; - }; - - # The stdenvs themselves don't use mkDerivation, so I need to specify this here - __stdenvImpureHostDeps = binShClosure ++ libSystemClosure; - __extraImpureHostDeps = binShClosure ++ libSystemClosure; - - extraAttrs = { inherit platform; }; - overrides = pkgs: (overrides pkgs) // { fetchurl = thisStdenv.fetchurlBoot; }; + isClang = true; }; - - thisPkgs = allPackages { - inherit system platform; - bootStdenv = thisStdenv; - }; - in { stdenv = thisStdenv; pkgs = thisPkgs; }; - - stage0 = stageFun 0 null { - overrides = orig: with stage0; rec { - darwin = orig.darwin // { - Libsystem = stdenv.mkDerivation { - name = "bootstrap-Libsystem"; - buildCommand = '' - mkdir -p $out - ln -s ${bootstrapTools}/lib $out/lib - ln -s ${bootstrapTools}/include-Libsystem $out/include - ''; - }; - dyld = bootstrapTools; - }; - - libcxx = stdenv.mkDerivation { - name = "bootstrap-libcxx"; - phases = [ "installPhase" "fixupPhase" ]; - installPhase = '' - mkdir -p $out/lib $out/include - ln -s ${bootstrapTools}/lib/libc++.dylib $out/lib/libc++.dylib - ln -s ${bootstrapTools}/include/c++ $out/include/c++ - ''; - setupHook = ../../development/compilers/llvm/3.5/libc++/setup-hook.sh; - }; - - libcxxabi = stdenv.mkDerivation { - name = "bootstrap-libcxxabi"; - buildCommand = '' - mkdir -p $out/lib - ln -s ${bootstrapTools}/lib/libc++abi.dylib $out/lib/libc++abi.dylib - ''; - }; - }; - - extraBuildInputs = []; - }; - - persistent0 = _: {}; - - stage1 = with stage0; stageFun 1 stage0 { - extraPreHook = "export NIX_CFLAGS_COMPILE+=\" -F${bootstrapTools}/Library/Frameworks\""; - extraBuildInputs = [ pkgs.libcxx ]; - - allowedRequisites = - [ bootstrapTools ] ++ (with pkgs; [ libcxx libcxxabi ]) ++ [ pkgs.darwin.Libsystem ]; - - overrides = persistent0; - }; - - persistent1 = orig: with stage1.pkgs; { - inherit - zlib patchutils m4 scons flex perl bison unifdef unzip openssl icu python - libxml2 gettext sharutils gmp libarchive ncurses pkg-config libedit groff - openssh sqlite sed serf openldap db cyrus-sasl expat apr-util subversion xz - findfreetype libssh curl cmake autoconf automake libtool ed cpio coreutils; - - darwin = orig.darwin // { - inherit (darwin) - dyld Libsystem xnu configd libdispatch libclosure launchd; + pkgs = allPackages { + inherit system platform; + bootStdenv = stdenv; }; }; - stage2 = with stage1; stageFun 2 stage1 { - allowedRequisites = - [ bootstrapTools ] ++ - (with pkgs; [ xz libcxx libcxxabi icu ]) ++ - (with pkgs.darwin; [ dyld Libsystem CF ]); + stage2 = rec { + stdenv = import ../generic { + name = "stdenv-darwin-boot-2"; - overrides = persistent1; - }; + inherit system config; + inherit (stage1.stdenv) shell fetchurlBoot preHook cc; - persistent2 = orig: with stage2.pkgs; { - inherit - patchutils m4 scons flex perl bison unifdef unzip openssl python - gettext sharutils libarchive pkg-config groff bash subversion - openssh sqlite sed serf openldap db cyrus-sasl expat apr-util - findfreetype libssh curl cmake autoconf automake libtool cpio - libcxx libcxxabi; - - darwin = orig.darwin // { - inherit (darwin) - dyld Libsystem xnu configd libdispatch libclosure launchd libiconv; + initialPath = [ stage1.pkgs.xz ] ++ stage1.stdenv.initialPath; + }; + pkgs = allPackages { + inherit system platform; + bootStdenv = stdenv; }; }; - stage3 = with stage2; stageFun 3 stage2 { - shell = "${pkgs.bash}/bin/bash"; + # Use stage1 to build a whole set of actual tools so we don't have to rely on the Apple prebuilt ones or + # the ugly symlinked bootstrap tools anymore. + stage3 = with stage2; import ../generic { + name = "stdenv-darwin-boot-3"; - # We have a valid shell here (this one has no bootstrap-tools runtime deps) so stageFun - # enables patchShebangs above. Unfortunately, patchShebangs ignores our $SHELL setting - # and instead goes by $PATH, which happens to contain bootstrapTools. So it goes and - # patches our shebangs back to point at bootstrapTools. This makes sure bash comes first. - extraInitialPath = [ pkgs.bash ]; - - allowedRequisites = - [ bootstrapTools ] ++ - (with pkgs; [ icu bash libcxx libcxxabi ]) ++ - (with pkgs.darwin; [ dyld Libsystem ]); - - overrides = persistent2; - }; - - persistent3 = orig: with stage3.pkgs; { - inherit - gnumake gzip gnused bzip2 gawk ed xz patch bash - libcxxabi libcxx ncurses libffi zlib llvm gmp pcre gnugrep - coreutils findutils diffutils patchutils; - - llvmPackages = orig.llvmPackages // { - inherit (llvmPackages) llvm clang-unwrapped; - }; - - darwin = orig.darwin // { - inherit (darwin) dyld Libsystem libiconv; - }; - }; - - stage4 = with stage3; stageFun 4 stage3 { - shell = "${pkgs.bash}/bin/bash"; - extraInitialPath = [ pkgs.bash ]; - overrides = persistent3; - }; - - persistent4 = orig: with stage4.pkgs; { - inherit - gnumake gzip gnused bzip2 gawk ed xz patch bash - libcxxabi libcxx ncurses libffi zlib icu llvm gmp pcre gnugrep - coreutils findutils diffutils patchutils binutils binutils-raw; - - llvmPackages = orig.llvmPackages // { - inherit (llvmPackages) llvm clang-unwrapped; - }; - - darwin = orig.darwin // { - inherit (darwin) dyld Libsystem cctools CF libiconv; - }; - }; - - stage5 = with stage4; import ../generic rec { inherit system config; inherit (stdenv) fetchurlBoot; - name = "stdenv-darwin"; + initialPath = (import ../common-path.nix) { inherit pkgs; }; - preHook = commonPreHook; - - __stdenvImpureHostDeps = binShClosure ++ libSystemClosure; - __extraImpureHostDeps = binShClosure ++ libSystemClosure; - - initialPath = import ../common-path.nix { inherit pkgs; }; - shell = "${pkgs.bash}/bin/bash"; + preHook = preHook + "\n" + '' + export NIX_ENFORCE_PURITY=1 + ''; cc = import ../../build-support/cc-wrapper { - inherit stdenv shell; - nativeTools = false; - nativeLibc = false; - inherit (pkgs) coreutils binutils; - inherit (pkgs.darwin) dyld; - cc = pkgs.llvmPackages.clang-unwrapped; - libc = pkgs.darwin.Libsystem; + inherit stdenv; + nativeTools = false; + nativeLibc = true; + binutils = pkgs.darwin.cctools; + cc = pkgs.llvmPackages.clang-unwrapped; + coreutils = pkgs.coreutils; + shell = "${pkgs.bash}/bin/bash"; + extraPackages = [ pkgs.libcxx ]; + isClang = true; }; - extraBuildInputs = with pkgs; [ darwin.CF libcxx ]; - - extraAttrs = { - inherit platform bootstrapTools; - libc = pkgs.darwin.Libsystem; - shellPackage = pkgs.bash; - }; - - allowedRequisites = (with pkgs; [ - xz libcxx libcxxabi icu gmp gnumake findutils bzip2 llvm zlib libffi - coreutils ed diffutils gnutar gzip ncurses gnused bash gawk - gnugrep llvmPackages.clang-unwrapped patch pcre binutils-raw binutils gettext - ]) ++ (with pkgs.darwin; [ - dyld Libsystem CF cctools libiconv - ]); - - overrides = orig: persistent4 orig // { - clang = cc; - inherit cc; - }; + shell = "${pkgs.bash}/bin/bash"; }; + + stdenvDarwin = stage3; } diff --git a/pkgs/stdenv/darwin/make-bootstrap-tools.nix b/pkgs/stdenv/darwin/make-bootstrap-tools.nix index 433638dd1bde..636410fdd788 100644 --- a/pkgs/stdenv/darwin/make-bootstrap-tools.nix +++ b/pkgs/stdenv/darwin/make-bootstrap-tools.nix @@ -63,15 +63,13 @@ rec { cp -d ${gnugrep.pcre}/lib/libpcre*.dylib $out/lib cp -d ${libiconv}/lib/libiconv*.dylib $out/lib - cp -d ${gettext}/lib/libintl*.dylib $out/lib - chmod +x $out/lib/libintl*.dylib # Copy what we need of clang - cp -d ${llvmPackages.clang-unwrapped}/bin/clang $out/bin - cp -d ${llvmPackages.clang-unwrapped}/bin/clang++ $out/bin - cp -d ${llvmPackages.clang-unwrapped}/bin/clang-3.6 $out/bin + cp -d ${llvmPackages.clang}/bin/clang $out/bin + cp -d ${llvmPackages.clang}/bin/clang++ $out/bin + cp -d ${llvmPackages.clang}/bin/clang-3.5 $out/bin - cp -rL ${llvmPackages.clang-unwrapped}/lib/clang $out/lib + cp -rL ${llvmPackages.clang}/lib/clang $out/lib cp -d ${libcxx}/lib/libc++*.dylib $out/lib cp -d ${libcxxabi}/lib/libc++abi*.dylib $out/lib diff --git a/pkgs/stdenv/default.nix b/pkgs/stdenv/default.nix index 28ba80014717..71bdc3e8f829 100644 --- a/pkgs/stdenv/default.nix +++ b/pkgs/stdenv/default.nix @@ -37,7 +37,13 @@ rec { stdenvLinux = (import ./linux { inherit system allPackages platform config lib; }).stdenvLinux; # Darwin standard environment. - stdenvDarwin = (import ./darwin { inherit system allPackages platform config;}).stage5; + stdenvDarwin = (import ./darwin { inherit system allPackages platform config;}).stdenvDarwin; + + # Pure Darwin standard environment. Allows building with the sandbox enabled. To use, + # you can add this to your nixpkgs config: + # + # replaceStdenv = {pkgs}: pkgs.allStdenvs.stdenvDarwinPure + stdenvDarwinPure = (import ./pure-darwin { inherit system allPackages platform config;}).stage5; # Select the appropriate stdenv for the platform `system'. stdenv = diff --git a/pkgs/stdenv/generic/default.nix b/pkgs/stdenv/generic/default.nix index bdad51949308..07486093da83 100644 --- a/pkgs/stdenv/generic/default.nix +++ b/pkgs/stdenv/generic/default.nix @@ -21,6 +21,8 @@ let whitelist = config.whitelistedLicenses or []; blacklist = config.blacklistedLicenses or []; + ifDarwin = attrs: if system == "x86_64-darwin" then attrs else {}; + onlyLicenses = list: lib.lists.all (license: let l = lib.licenses.${license.shortName or "BROKEN"} or false; in @@ -132,7 +134,9 @@ let assert licenseAllowed attrs; lib.addPassthru (derivation ( - (removeAttrs attrs ["meta" "passthru" "crossAttrs" "pos"]) + (removeAttrs attrs + ["meta" "passthru" "crossAttrs" "pos" + "__impureHostDeps" "__propagatedImpureHostDeps"]) // (let buildInputs = attrs.buildInputs or []; nativeBuildInputs = attrs.nativeBuildInputs or []; @@ -161,14 +165,14 @@ let nativeBuildInputs = nativeBuildInputs ++ (if crossConfig == null then buildInputs else []); propagatedNativeBuildInputs = propagatedNativeBuildInputs ++ (if crossConfig == null then propagatedBuildInputs else []); - + } // ifDarwin { __impureHostDeps = computedImpureHostDeps ++ computedPropagatedImpureHostDeps ++ __propagatedImpureHostDeps ++ __impureHostDeps ++ __extraImpureHostDeps ++ [ "/dev/zero" "/dev/random" "/dev/urandom" "/bin/sh" ]; - __propagatedImpureHostDeps = lib.unique (lib.sort (x: y: x < y) (computedPropagatedImpureHostDeps ++ __propagatedImpureHostDeps)); + __propagatedImpureHostDeps = computedPropagatedImpureHostDeps ++ __propagatedImpureHostDeps; }))) ( { # The meta attribute is passed in the resulting attribute set, @@ -193,7 +197,6 @@ let (if isNull allowedRequisites then {} else { allowedRequisites = allowedRequisites ++ defaultNativeBuildInputs; }) // { inherit system name; - __impureHostDeps = __stdenvImpureHostDeps; builder = shell; @@ -202,6 +205,9 @@ let setup = setupScript; inherit preHook initialPath shell defaultNativeBuildInputs; + } + // ifDarwin { + __impureHostDeps = __stdenvImpureHostDeps; }) // rec { diff --git a/pkgs/stdenv/pure-darwin/default.nix b/pkgs/stdenv/pure-darwin/default.nix new file mode 100644 index 000000000000..d4b17a7909c7 --- /dev/null +++ b/pkgs/stdenv/pure-darwin/default.nix @@ -0,0 +1,297 @@ +{ system ? builtins.currentSystem +, allPackages ? import ../../top-level/all-packages.nix +, platform ? null +, config ? {} +}: + +let + fetch = { file, sha256 }: import { + url = "https://dl.dropboxusercontent.com/u/2857322/${file}"; + inherit sha256; + executable = true; + }; + + bootstrapFiles = { + sh = fetch { file = "sh"; sha256 = "1qakpg37vl61jnkplz13m3g1csqr85cg8ybp6jwiv6apmg26isnm"; }; + bzip2 = fetch { file = "bzip2"; sha256 = "1gxa67255q9v00j1vn1mzyrnbwys2g1102cx02vpcyvvrl4vqxr0"; }; + mkdir = fetch { file = "mkdir"; sha256 = "1yfl8w65ksji7fggrbvqxw8lp0gm02qilk11n9axj2jxay53ngvg"; }; + cpio = fetch { file = "cpio"; sha256 = "0nssyg19smgcblwq1mfcw4djbd85md84d2f093qcqkbigdjg484b"; }; + }; + tarball = fetch { file = "bootstrap-tools.9.cpio.bz2"; sha256 = "0fd79k7gy3z3sba5w4f4lnrcpiwff31vw02480x1pdry8bbgbf2j"; }; +in rec { + allPackages = import ../../top-level/all-packages.nix; + + commonPreHook = '' + export NIX_ENFORCE_PURITY=1 + export NIX_IGNORE_LD_THROUGH_GCC=1 + stripAllFlags=" " # the Darwin "strip" command doesn't know "-s" + export MACOSX_DEPLOYMENT_TARGET=10.7 + export SDKROOT= + export CMAKE_OSX_ARCHITECTURES=x86_64 + ''; + + # libSystem and its transitive dependencies. Get used to this; it's a recurring theme in darwin land + libSystemClosure = [ + "/usr/lib/libSystem.dylib" + "/usr/lib/libSystem.B.dylib" + "/usr/lib/libobjc.A.dylib" + "/usr/lib/libobjc.dylib" + "/usr/lib/libauto.dylib" + "/usr/lib/libc++abi.dylib" + "/usr/lib/libc++.1.dylib" + "/usr/lib/libDiagnosticMessagesClient.dylib" + "/usr/lib/system" + ]; + + # The one dependency of /bin/sh :( + binShClosure = [ "/usr/lib/libncurses.5.4.dylib" ]; + + bootstrapTools = derivation rec { + inherit system tarball; + + name = "bootstrap-tools"; + builder = bootstrapFiles.sh; # Not a filename! Attribute 'sh' on bootstrapFiles + args = [ ./unpack-bootstrap-tools.sh ]; + + inherit (bootstrapFiles) mkdir bzip2 cpio; + + __impureHostDeps = binShClosure ++ libSystemClosure; + }; + + stageFun = step: last: {shell ? "${bootstrapTools}/bin/sh", + overrides ? (pkgs: {}), + extraPreHook ? "", + extraBuildInputs ? with last.pkgs; [ xz darwin.CF libcxx ], + extraInitialPath ? [], + allowedRequisites ? null}: + let + thisStdenv = import ../generic { + inherit system config shell extraBuildInputs allowedRequisites; + + name = "stdenv-darwin-boot-${toString step}"; + + cc = if isNull last then "/no-such-path" else import ../../build-support/cc-wrapper { + inherit shell; + inherit (last) stdenv; + inherit (last.pkgs.darwin) dyld; + + nativeTools = true; + nativePrefix = bootstrapTools; + nativeLibc = false; + libc = last.pkgs.darwin.Libsystem; + cc = { name = "clang-9.9.9"; outPath = bootstrapTools; }; + }; + + preHook = stage0.stdenv.lib.optionalString (shell == "${bootstrapTools}/bin/sh") '' + # Don't patch #!/interpreter because it leads to retained + # dependencies on the bootstrapTools in the final stdenv. + dontPatchShebangs=1 + '' + '' + ${commonPreHook} + ${extraPreHook} + ''; + initialPath = extraInitialPath ++ [ bootstrapTools ]; + fetchurlBoot = import ../../build-support/fetchurl { + stdenv = stage0.stdenv; + curl = bootstrapTools; + }; + + # The stdenvs themselves don't use mkDerivation, so I need to specify this here + __stdenvImpureHostDeps = binShClosure ++ libSystemClosure; + __extraImpureHostDeps = binShClosure ++ libSystemClosure; + + extraAttrs = { inherit platform; }; + overrides = pkgs: (overrides pkgs) // { fetchurl = thisStdenv.fetchurlBoot; }; + }; + + thisPkgs = allPackages { + inherit system platform; + bootStdenv = thisStdenv; + }; + in { stdenv = thisStdenv; pkgs = thisPkgs; }; + + stage0 = stageFun 0 null { + overrides = orig: with stage0; rec { + darwin = orig.darwin // { + Libsystem = stdenv.mkDerivation { + name = "bootstrap-Libsystem"; + buildCommand = '' + mkdir -p $out + ln -s ${bootstrapTools}/lib $out/lib + ln -s ${bootstrapTools}/include-Libsystem $out/include + ''; + }; + dyld = bootstrapTools; + }; + + libcxx = stdenv.mkDerivation { + name = "bootstrap-libcxx"; + phases = [ "installPhase" "fixupPhase" ]; + installPhase = '' + mkdir -p $out/lib $out/include + ln -s ${bootstrapTools}/lib/libc++.dylib $out/lib/libc++.dylib + ln -s ${bootstrapTools}/include/c++ $out/include/c++ + ''; + setupHook = ../../development/compilers/llvm/3.5/libc++/setup-hook.sh; + }; + + libcxxabi = stdenv.mkDerivation { + name = "bootstrap-libcxxabi"; + buildCommand = '' + mkdir -p $out/lib + ln -s ${bootstrapTools}/lib/libc++abi.dylib $out/lib/libc++abi.dylib + ''; + }; + + }; + + extraBuildInputs = []; + }; + + persistent0 = _: {}; + + stage1 = with stage0; stageFun 1 stage0 { + extraPreHook = "export NIX_CFLAGS_COMPILE+=\" -F${bootstrapTools}/Library/Frameworks\""; + extraBuildInputs = [ pkgs.libcxx ]; + + allowedRequisites = + [ bootstrapTools ] ++ (with pkgs; [ libcxx libcxxabi ]) ++ [ pkgs.darwin.Libsystem ]; + + overrides = persistent0; + }; + + persistent1 = orig: with stage1.pkgs; { + inherit + zlib patchutils m4 scons flex perl bison unifdef unzip openssl icu python + libxml2 gettext sharutils gmp libarchive ncurses pkg-config libedit groff + openssh sqlite sed serf openldap db cyrus-sasl expat apr-util subversion xz + findfreetype libssh curl cmake autoconf automake libtool ed cpio coreutils; + + darwin = orig.darwin // { + inherit (darwin) + dyld Libsystem xnu configd libdispatch libclosure launchd; + }; + }; + + stage2 = with stage1; stageFun 2 stage1 { + allowedRequisites = + [ bootstrapTools ] ++ + (with pkgs; [ xz libcxx libcxxabi icu ]) ++ + (with pkgs.darwin; [ dyld Libsystem CF ]); + + overrides = persistent1; + }; + + persistent2 = orig: with stage2.pkgs; { + inherit + patchutils m4 scons flex perl bison unifdef unzip openssl python + gettext sharutils libarchive pkg-config groff bash subversion + openssh sqlite sed serf openldap db cyrus-sasl expat apr-util + findfreetype libssh curl cmake autoconf automake libtool cpio + libcxx libcxxabi; + + darwin = orig.darwin // { + inherit (darwin) + dyld Libsystem xnu configd libdispatch libclosure launchd libiconv; + }; + }; + + stage3 = with stage2; stageFun 3 stage2 { + shell = "${pkgs.bash}/bin/bash"; + + # We have a valid shell here (this one has no bootstrap-tools runtime deps) so stageFun + # enables patchShebangs above. Unfortunately, patchShebangs ignores our $SHELL setting + # and instead goes by $PATH, which happens to contain bootstrapTools. So it goes and + # patches our shebangs back to point at bootstrapTools. This makes sure bash comes first. + extraInitialPath = [ pkgs.bash ]; + + allowedRequisites = + [ bootstrapTools ] ++ + (with pkgs; [ icu bash libcxx libcxxabi ]) ++ + (with pkgs.darwin; [ dyld Libsystem ]); + + overrides = persistent2; + }; + + persistent3 = orig: with stage3.pkgs; { + inherit + gnumake gzip gnused bzip2 gawk ed xz patch bash + libcxxabi libcxx ncurses libffi zlib llvm gmp pcre gnugrep + coreutils findutils diffutils patchutils; + + llvmPackages = orig.llvmPackages // { + inherit (llvmPackages) llvm clang-unwrapped; + }; + + darwin = orig.darwin // { + inherit (darwin) dyld Libsystem libiconv; + }; + }; + + stage4 = with stage3; stageFun 4 stage3 { + shell = "${pkgs.bash}/bin/bash"; + extraInitialPath = [ pkgs.bash ]; + overrides = persistent3; + }; + + persistent4 = orig: with stage4.pkgs; { + inherit + gnumake gzip gnused bzip2 gawk ed xz patch bash + libcxxabi libcxx ncurses libffi zlib icu llvm gmp pcre gnugrep + coreutils findutils diffutils patchutils binutils binutils-raw; + + llvmPackages = orig.llvmPackages // { + inherit (llvmPackages) llvm clang-unwrapped; + }; + + darwin = orig.darwin // { + inherit (darwin) dyld Libsystem cctools CF libiconv; + }; + }; + + stage5 = with stage4; import ../generic rec { + inherit system config; + inherit (stdenv) fetchurlBoot; + + name = "stdenv-darwin"; + + preHook = commonPreHook; + + __stdenvImpureHostDeps = binShClosure ++ libSystemClosure; + __extraImpureHostDeps = binShClosure ++ libSystemClosure; + + initialPath = import ../common-path.nix { inherit pkgs; }; + shell = "${pkgs.bash}/bin/bash"; + + cc = import ../../build-support/cc-wrapper { + inherit stdenv shell; + nativeTools = false; + nativeLibc = false; + inherit (pkgs) coreutils binutils; + inherit (pkgs.darwin) dyld; + cc = pkgs.llvmPackages.clang-unwrapped; + libc = pkgs.darwin.Libsystem; + }; + + extraBuildInputs = with pkgs; [ darwin.CF libcxx ]; + + extraAttrs = { + inherit platform bootstrapTools; + libc = pkgs.darwin.Libsystem; + shellPackage = pkgs.bash; + }; + + allowedRequisites = (with pkgs; [ + xz libcxx libcxxabi icu gmp gnumake findutils bzip2 llvm zlib libffi + coreutils ed diffutils gnutar gzip ncurses gnused bash gawk + gnugrep llvmPackages.clang-unwrapped patch pcre binutils-raw binutils gettext + ]) ++ (with pkgs.darwin; [ + dyld Libsystem CF cctools libiconv + ]); + + overrides = orig: persistent4 orig // { + clang = cc; + inherit cc; + }; + }; +} diff --git a/pkgs/stdenv/pure-darwin/make-bootstrap-tools.nix b/pkgs/stdenv/pure-darwin/make-bootstrap-tools.nix new file mode 100644 index 000000000000..433638dd1bde --- /dev/null +++ b/pkgs/stdenv/pure-darwin/make-bootstrap-tools.nix @@ -0,0 +1,286 @@ +{system ? builtins.currentSystem}: + +with import ../../top-level/all-packages.nix {inherit system;}; + +rec { + # We want coreutils without ACL support. + coreutils_ = coreutils.override (orig: { + aclSupport = false; + }); + + build = stdenv.mkDerivation { + name = "build"; + + buildInputs = [nukeReferences cpio]; + + buildCommand = '' + mkdir -p $out/bin $out/lib + + # Our (fake) loader + cp -d ${darwin.dyld}/lib/dyld $out/lib/ + + # C standard library stuff + cp -d ${darwin.Libsystem}/lib/*.o $out/lib/ + cp -d ${darwin.Libsystem}/lib/*.dylib $out/lib/ + cp -d ${darwin.Libsystem}/lib/system/*.dylib $out/lib/ + + # Resolv is actually a link to another package, so let's copy it properly + rm $out/lib/libresolv.9.dylib + cp -L ${darwin.Libsystem}/lib/libresolv.9.dylib $out/lib + + cp -rL ${darwin.Libsystem}/include $out + chmod -R u+w $out/include + cp -rL ${icu}/include* $out/include + cp -rL ${libiconv}/include/* $out/include + cp -rL ${gnugrep.pcre}/include/* $out/include + mv $out/include $out/include-Libsystem + + # 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 + cp -d ${diffutils}/bin/* $out/bin + cp -d ${gnused}/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 + cp ${gzip}/bin/gzip $out/bin + cp ${bzip2}/bin/bzip2 $out/bin + cp -d ${gnumake}/bin/* $out/bin + cp -d ${patch}/bin/* $out/bin + cp -d ${xz}/bin/xz $out/bin + + # This used to be in-nixpkgs, but now is in the bundle + # because I can't be bothered to make it partially static + cp ${curl}/bin/curl $out/bin + cp -d ${curl}/lib/libcurl*.dylib $out/lib + cp -d ${libssh2}/lib/libssh*.dylib $out/lib + cp -d ${openssl}/lib/*.dylib $out/lib + + cp -d ${gnugrep.pcre}/lib/libpcre*.dylib $out/lib + cp -d ${libiconv}/lib/libiconv*.dylib $out/lib + cp -d ${gettext}/lib/libintl*.dylib $out/lib + chmod +x $out/lib/libintl*.dylib + + # Copy what we need of clang + cp -d ${llvmPackages.clang-unwrapped}/bin/clang $out/bin + cp -d ${llvmPackages.clang-unwrapped}/bin/clang++ $out/bin + cp -d ${llvmPackages.clang-unwrapped}/bin/clang-3.6 $out/bin + + cp -rL ${llvmPackages.clang-unwrapped}/lib/clang $out/lib + + cp -d ${libcxx}/lib/libc++*.dylib $out/lib + cp -d ${libcxxabi}/lib/libc++abi*.dylib $out/lib + + mkdir $out/include + cp -rd ${libcxx}/include/c++ $out/include + + cp -d ${icu}/lib/libicu*.dylib $out/lib + cp -d ${zlib}/lib/libz.* $out/lib + cp -d ${gmpxx}/lib/libgmp*.* $out/lib + cp -d ${xz}/lib/liblzma*.* $out/lib + + # Copy binutils. + for i in as ld ar ranlib nm strip otool install_name_tool dsymutil; do + cp ${darwin.cctools}/bin/$i $out/bin + done + + cp -rd ${pkgs.darwin.CF}/Library $out + + chmod -R u+w $out + + nuke-refs $out/bin/* + + rpathify() { + local libs=$(${darwin.cctools}/bin/otool -L "$1" | tail -n +2 | grep -o "$NIX_STORE.*-\S*") || true + for lib in $libs; do + ${darwin.cctools}/bin/install_name_tool -change $lib "@rpath/$(basename $lib)" "$1" + done + } + + fix_dyld() { + # This is clearly a hack. Once we have an install_name_tool-alike that can patch dyld, this will be nicer. + ${perl}/bin/perl -i -0777 -pe 's/\/nix\/store\/eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee-dyld-239\.4\/lib\/dyld/\/usr\/lib\/dyld\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00/sg' "$1" + } + + # Strip executables even further + for i in $out/bin/*; do + if test -x $i -a ! -L $i; then + chmod +w $i + + fix_dyld $i + strip $i || true + fi + done + + for i in $out/bin/* $out/lib/*.dylib $out/lib/clang/3.5.0/lib/darwin/*.dylib $out/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation; do + if test -x $i -a ! -L $i; then + echo "Adding rpath to $i" + rpathify $i + fi + done + + nuke-refs $out/lib/* + nuke-refs $out/lib/clang/3.5.0/lib/darwin/* + nuke-refs $out/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation + + mkdir $out/.pack + mv $out/* $out/.pack + 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 ${stdenv.shell} $out/in-nixpkgs/sh + cp ${cpio}/bin/cpio $out/in-nixpkgs + cp ${coreutils_}/bin/mkdir $out/in-nixpkgs + cp ${bzip2}/bin/bzip2 $out/in-nixpkgs + + chmod u+w $out/in-nixpkgs/* + strip $out/in-nixpkgs/* + nuke-refs $out/in-nixpkgs/* + + for i in $out/in-nixpkgs/*; do + fix_dyld $i + done + ''; + + allowedReferences = []; + }; + + host = stdenv.mkDerivation { + name = "host"; + + buildCommand = '' + mkdir -p $out/nix-support + + for i in "${build}/on-server/"*; do + echo "file binary-dist $i" >> $out/nix-support/hydra-build-products + done + + echo "darwin-bootstrap-tools-$(date +%Y.%m.%d)" >> $out/nix-support/hydra-release-name + ''; + + allowedReferences = [ build ]; + }; + + unpack = stdenv.mkDerivation { + name = "unpack"; + + # This is by necessity a near-duplicate of unpack-bootstrap-tools.sh. If we refer to it directly, + # we can't make any changes to it due to our testing stdenv depending on it. Think of this as the + # unpack-bootstrap-tools.sh for the next round of bootstrap tools. + # TODO: think through alternate designs, such as hosting this script as an output of the process. + buildCommand = '' + # Unpack the bootstrap tools tarball. + echo Unpacking the bootstrap tools... + $mkdir $out + $bzip2 -d < $tarball | (cd $out && $cpio -i) + + # Set the ELF interpreter / RPATH in the bootstrap binaries. + echo Patching the tools... + + export PATH=$out/bin + + for i in $out/bin/*; do + if ! test -L $i; then + echo patching $i + install_name_tool -add_rpath $out/lib $i || true + fi + done + + for i in $out/lib/*.dylib $out/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation; do + if ! test -L $i; then + echo patching $i + + id=$(otool -D "$i" | tail -n 1) + install_name_tool -id "$(dirname $i)/$(basename $id)" $i + + libs=$(otool -L "$i" | tail -n +2 | grep -v Libsystem | cat) + if [ -n "$libs" ]; then + install_name_tool -add_rpath $out/lib $i + fi + fi + done + + ln -s bash $out/bin/sh + ln -s bzip2 $out/bin/bunzip2 + + cat >$out/bin/dsymutil << EOF + #!$out/bin/sh + EOF + ''; + + tarball = "${build}/on-server/bootstrap-tools.cpio.bz2"; + + mkdir = "${build}/in-nixpkgs/mkdir"; + bzip2 = "${build}/in-nixpkgs/bzip2"; + cpio = "${build}/in-nixpkgs/cpio"; + + allowedReferences = [ "out" ]; + }; + + test = stdenv.mkDerivation { + name = "test"; + + realBuilder = "${unpack}/bin/bash"; + + buildCommand = '' + export PATH=${unpack}/bin + ls -l + mkdir $out + mkdir $out/bin + sed --version + find --version + diff --version + patch --version + make --version + awk --version + grep --version + clang --version + xz --version + + # The grep will return a nonzero exit code if there is no match, and we want to assert that we have + # an SSL-capable curl + curl --version | grep SSL + + ${build}/in-nixpkgs/sh -c 'echo Hello World' + + export flags="-idirafter ${unpack}/include-Libsystem --sysroot=${unpack} -L${unpack}/lib" + + export CPP="clang -E $flags" + export CC="clang $flags -Wl,-rpath,${unpack}/lib -Wl,-v" + export CXX="clang++ $flags --stdlib=libc++ -lc++abi -isystem${unpack}/include/c++/v1 -Wl,-rpath,${unpack}/lib -Wl,-v" + + echo '#include ' >> foo.c + echo '#include ' >> foo.c + echo '#include ' >> 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.c + echo 'int main() { CFShow(CFSTR("Hullo")); return 0; }' >> bar.c + $CC -F${unpack}/Library/Frameworks -framework CoreFoundation -o $out/bin/bar bar.c + $out/bin/bar + + echo '#include ' >> bar.cc + echo 'int main() { std::cout << "Hello World\n"; }' >> bar.cc + $CXX -v -o $out/bin/bar bar.cc + $out/bin/bar + + tar xvf ${hello.src} + cd hello-* + ./configure --prefix=$out + make + make install + + $out/bin/hello + ''; + }; +} diff --git a/pkgs/stdenv/pure-darwin/trivial-bootstrap.sh b/pkgs/stdenv/pure-darwin/trivial-bootstrap.sh new file mode 100644 index 000000000000..0915b378d4f0 --- /dev/null +++ b/pkgs/stdenv/pure-darwin/trivial-bootstrap.sh @@ -0,0 +1,66 @@ + +# Building bootstrap tools +echo Building the trivial bootstrap environment... +$mkdir -p $out/bin + +$ln -s $ln $out/bin/ln + +PATH=$out/bin/ + +cd $out/bin + +ln -s $mkdir +ln -s /bin/sh +ln -s /bin/cp +ln -s /bin/mv +ln -s /bin/rm +ln -s /bin/ls +ln -s /bin/ps +ln -s /bin/cat +ln -s /bin/bash +ln -s /bin/echo +ln -s /bin/expr +ln -s /bin/test +ln -s /bin/date +ln -s /bin/chmod +ln -s /bin/rmdir +ln -s /bin/sleep +ln -s /bin/hostname + +ln -s /usr/bin/id +ln -s /usr/bin/od +ln -s /usr/bin/tr +ln -s /usr/bin/wc +ln -s /usr/bin/cut +ln -s /usr/bin/cmp +ln -s /usr/bin/sed +ln -s /usr/bin/tar +ln -s /usr/bin/xar +ln -s /usr/bin/awk +ln -s /usr/bin/env +ln -s /usr/bin/tee +ln -s /usr/bin/comm +ln -s /usr/bin/cpio +ln -s /usr/bin/curl +ln -s /usr/bin/find +ln -s /usr/bin/grep +ln -s /usr/bin/gzip +ln -s /usr/bin/head +ln -s /usr/bin/tail +ln -s /usr/bin/sort +ln -s /usr/bin/uniq +ln -s /usr/bin/less +ln -s /usr/bin/true +ln -s /usr/bin/diff +ln -s /usr/bin/egrep +ln -s /usr/bin/fgrep +ln -s /usr/bin/patch +ln -s /usr/bin/uname +ln -s /usr/bin/touch +ln -s /usr/bin/split +ln -s /usr/bin/xargs +ln -s /usr/bin/which +ln -s /usr/bin/install +ln -s /usr/bin/basename +ln -s /usr/bin/dirname +ln -s /usr/bin/readlink \ No newline at end of file diff --git a/pkgs/stdenv/pure-darwin/unpack-bootstrap-tools.sh b/pkgs/stdenv/pure-darwin/unpack-bootstrap-tools.sh new file mode 100644 index 000000000000..8033c7004d93 --- /dev/null +++ b/pkgs/stdenv/pure-darwin/unpack-bootstrap-tools.sh @@ -0,0 +1,54 @@ +set -e + +# Unpack the bootstrap tools tarball. +echo Unpacking the bootstrap tools... +$mkdir $out +$bzip2 -d < $tarball | (cd $out && $cpio -i) + +# Set the ELF interpreter / RPATH in the bootstrap binaries. +echo Patching the tools... + +export PATH=$out/bin + +for i in $out/bin/*; do + if ! test -L $i; then + echo patching $i + install_name_tool -add_rpath $out/lib $i || true + fi +done + +for i in $out/lib/*.dylib $out/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation; do + if ! test -L $i; then + echo patching $i + + id=$(otool -D "$i" | tail -n 1) + install_name_tool -id "$(dirname $i)/$(basename $id)" $i + + libs=$(otool -L "$i" | tail -n +2 | grep -v libSystem | cat) + if [ -n "$libs" ]; then + install_name_tool -add_rpath $out/lib $i + fi + fi +done + +ln -s bash $out/bin/sh +ln -s bzip2 $out/bin/bunzip2 + +# Provide a gunzip script. +cat > $out/bin/gunzip < $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 + +cat >$out/bin/dsymutil << EOF +#!$out/bin/sh +EOF + +chmod +x $out/bin/egrep $out/bin/fgrep $out/bin/dsymutil From e26b421b71d442949839c4fc65090219f7c491ab Mon Sep 17 00:00:00 2001 From: Jude Taylor Date: Thu, 18 Jun 2015 13:40:17 -0700 Subject: [PATCH 108/259] fix conditionals for bootstrap sed calls --- pkgs/development/libraries/libedit/default.nix | 2 +- pkgs/tools/archivers/sharutils/default.nix | 6 ++++-- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/pkgs/development/libraries/libedit/default.nix b/pkgs/development/libraries/libedit/default.nix index 5adef716eb0f..167aa2068655 100644 --- a/pkgs/development/libraries/libedit/default.nix +++ b/pkgs/development/libraries/libedit/default.nix @@ -16,7 +16,7 @@ stdenv.mkDerivation rec { ] else null; postInstall = '' - sed -i s/-lncurses/-lncursesw/g $out/lib/pkgconfig/libedit.pc + sed -i ${stdenv.lib.optionalString (stdenv.isDarwin && stdenv.cc.nativeLibc) "''"} s/-lncurses/-lncursesw/g $out/lib/pkgconfig/libedit.pc ''; configureFlags = [ "--enable-widec" ]; diff --git a/pkgs/tools/archivers/sharutils/default.nix b/pkgs/tools/archivers/sharutils/default.nix index bfeda5085b68..cc9618c4dcc4 100644 --- a/pkgs/tools/archivers/sharutils/default.nix +++ b/pkgs/tools/archivers/sharutils/default.nix @@ -9,10 +9,12 @@ stdenv.mkDerivation rec { }; preConfigure = - '' + let needSedSpace = ((stdenv.isFreeBSD || stdenv.isOpenBSD) && stdenv.cc.nativeTools) + || (stdenv.isDarwin && stdenv.cc.nativeLibc); + in '' # Fix for building on Glibc 2.16. Won't be needed once the # gnulib in sharutils is updated. - sed -i ${stdenv.lib.optionalString ((stdenv.isFreeBSD || stdenv.isOpenBSD) && stdenv.cc.nativeTools) "''"} '/gets is a security hole/d' lib/stdio.in.h + sed -i ${stdenv.lib.optionalString needSedSpace "''"} '/gets is a security hole/d' lib/stdio.in.h ''; # GNU Gettext is needed on non-GNU platforms. From 3790cb7d439c71ee4e5bddcda1f32d44ad4aa6d3 Mon Sep 17 00:00:00 2001 From: Jude Taylor Date: Thu, 18 Jun 2015 13:44:40 -0700 Subject: [PATCH 109/259] fix nonexistent cc path in bootstrap stdenv --- pkgs/stdenv/pure-darwin/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/stdenv/pure-darwin/default.nix b/pkgs/stdenv/pure-darwin/default.nix index d4b17a7909c7..79925a2edfdd 100644 --- a/pkgs/stdenv/pure-darwin/default.nix +++ b/pkgs/stdenv/pure-darwin/default.nix @@ -70,7 +70,7 @@ in rec { name = "stdenv-darwin-boot-${toString step}"; - cc = if isNull last then "/no-such-path" else import ../../build-support/cc-wrapper { + cc = if isNull last then "/dev/null" else import ../../build-support/cc-wrapper { inherit shell; inherit (last) stdenv; inherit (last.pkgs.darwin) dyld; From 9fd1920d8fdfaede3cf15773dd4a794d1abea4df Mon Sep 17 00:00:00 2001 From: Jude Taylor Date: Thu, 18 Jun 2015 17:04:09 -0700 Subject: [PATCH 110/259] fix ncurses renames on darwin --- pkgs/development/libraries/ncurses/default.nix | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/pkgs/development/libraries/ncurses/default.nix b/pkgs/development/libraries/ncurses/default.nix index 0c789fc4460c..6da81faf47ab 100644 --- a/pkgs/development/libraries/ncurses/default.nix +++ b/pkgs/development/libraries/ncurses/default.nix @@ -9,7 +9,9 @@ , abiVersion ? "5" }: -stdenv.mkDerivation rec { +let libSuffix = if stdenv.isDarwin then "dylib" else "so"; + +in stdenv.mkDerivation rec { name = "ncurses-5.9"; src = fetchurl { @@ -63,9 +65,9 @@ stdenv.mkDerivation rec { # Create non-unicode compatability libs="$(find $out/lib -name \*w.a | sed 's,.*lib\(.*\)w.a.*,\1,g')" for lib in $libs; do - if [ -e "$out/lib/lib''${lib}w.so" ]; then - ln -svf lib''${lib}w.so $out/lib/lib$lib.so - ln -svf lib''${lib}w.so.${abiVersion} $out/lib/lib$lib.so.${abiVersion} + if [ -e "$out/lib/lib''${lib}w.${libSuffix}" ]; then + ln -svf lib''${lib}w.${libSuffix} $out/lib/lib$lib.${libSuffix} + ln -svf lib''${lib}w.${libSuffix}.${abiVersion} $out/lib/lib$lib.${libSuffix}.${abiVersion} fi ln -svf lib''${lib}w.a $out/lib/lib$lib.a ln -svf ''${lib}w.pc $out/lib/pkgconfig/$lib.pc From 10d06f4252fdda6c3faac97828ad8ef06bf2d61f Mon Sep 17 00:00:00 2001 From: Jude Taylor Date: Thu, 18 Jun 2015 17:54:12 -0700 Subject: [PATCH 111/259] darwin purity: gmp-4.3.2 --- pkgs/development/libraries/gmp/4.3.2.nix | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/pkgs/development/libraries/gmp/4.3.2.nix b/pkgs/development/libraries/gmp/4.3.2.nix index 39d84c4f6fec..02d24d21900b 100644 --- a/pkgs/development/libraries/gmp/4.3.2.nix +++ b/pkgs/development/libraries/gmp/4.3.2.nix @@ -21,7 +21,8 @@ stdenv.mkDerivation rec { then "ln -sf configfsf.guess config.guess" else ''echo "Darwin host is `./config.guess`."''; - configureFlags = if cxx then "--enable-cxx" else "--disable-cxx"; + configureFlags = (if cxx then "--enable-cxx" else "--disable-cxx") + + stdenv.lib.optionalString stdenv.isDarwin " ac_cv_build=x86_64-apple-darwin13.4.0 ac_cv_host=x86_64-apple-darwin13.4.0"; # The test t-lucnum_ui fails (on Linux/x86_64) when built with GCC 4.8. # Newer versions of GMP don't have that issue anymore. From 5191f5be2e2e34365a7da313913fefd7f0bc9a4c Mon Sep 17 00:00:00 2001 From: "William A. Kennington III" Date: Thu, 18 Jun 2015 20:00:18 -0700 Subject: [PATCH 112/259] ncurses: Fix up library linking --- .../development/libraries/ncurses/default.nix | 73 ++++++++----------- 1 file changed, 29 insertions(+), 44 deletions(-) diff --git a/pkgs/development/libraries/ncurses/default.nix b/pkgs/development/libraries/ncurses/default.nix index 6da81faf47ab..7697aa1a9ac3 100644 --- a/pkgs/development/libraries/ncurses/default.nix +++ b/pkgs/development/libraries/ncurses/default.nix @@ -9,9 +9,7 @@ , abiVersion ? "5" }: -let libSuffix = if stdenv.isDarwin then "dylib" else "so"; - -in stdenv.mkDerivation rec { +stdenv.mkDerivation rec { name = "ncurses-5.9"; src = fetchurl { @@ -50,50 +48,37 @@ in stdenv.mkDerivation rec { # When building a wide-character (Unicode) build, create backward # compatibility links from the the "normal" libraries to the # wide-character libraries (e.g. libncurses.so to libncursesw.so). - postInstall = if unicode then ('' - # Create a non-abi versioned config + postInstall = '' + # Determine what suffixes our libraries have + suffix="$(awk -F': ' 'f{print $3; f=0} /default library suffix/{f=1}' config.log)" + libs="$(ls $out/lib/pkgconfig | tr ' ' '\n' | sed "s,\(.*\)$suffix\.pc,\1,g")" + suffixes="$(echo "$suffix" | awk '{for (i=1; i < length($0); i++) {x=substr($0, i+1, length($0)-i); print x}}')" + + # Get the path to the config util cfg=$(basename $out/bin/ncurses*-config) - ln -svf $cfg $out/bin/ncursesw-config - ln -svf $cfg $out/bin/ncurses-config - # Allow for end users who #include - mv "$out"/include/ncursesw/* "$out"/include/ - rmdir "$out"/include/ncursesw - ln -svf . $out/include/ncursesw - ln -svf . $out/include/ncurses + for newsuffix in $suffixes ""; do + # Create a non-abi versioned config util links + ln -svf $cfg $out/bin/ncurses$newsuffix-config - # Create non-unicode compatability - libs="$(find $out/lib -name \*w.a | sed 's,.*lib\(.*\)w.a.*,\1,g')" - for lib in $libs; do - if [ -e "$out/lib/lib''${lib}w.${libSuffix}" ]; then - ln -svf lib''${lib}w.${libSuffix} $out/lib/lib$lib.${libSuffix} - ln -svf lib''${lib}w.${libSuffix}.${abiVersion} $out/lib/lib$lib.${libSuffix}.${abiVersion} - fi - ln -svf lib''${lib}w.a $out/lib/lib$lib.a - ln -svf ''${lib}w.pc $out/lib/pkgconfig/$lib.pc + # Allow for end users who #include + ln -svf . $out/include/ncurses$newsuffix + + for lib in $libs; do + for dylibtype in so dll dylib; do + if [ -e "$out/lib/lib''${lib}$suffix.$dylibtype" ]; then + ln -svf lib''${lib}$suffix.$dylibtype $out/lib/lib$lib$newsuffix.$dylibtype + ln -svf lib''${lib}$suffix.$dylibtype.${abiVersion} $out/lib/lib$lib$newsuffix.$dylibtype.${abiVersion} + fi + done + for statictype in a dll.a la; do + if [ -e "$out/lib/lib''${lib}$suffix.$statictype" ]; then + ln -svf lib''${lib}$suffix.$statictype $out/lib/lib$lib$newsuffix.$statictype + fi + done + ln -svf ''${lib}$suffix.pc $out/lib/pkgconfig/$lib$newsuffix.pc + done done - - # Create curses compatability - ln -svf libncursesw.so $out/lib/libcursesw.so - ln -svf libncursesw.so $out/lib/libcurses.so - '' + lib.optionalString stdenv.isCygwin '' - for lib in $libs; do - if test -e $out/lib/lib''${lib}w.dll.a; then - ln -svf lib''${lib}w.dll.a $out/lib/lib$lib.dll.a - fi - done - '') else '' - # Create a non-abi versioned config - cfg=$(basename $out/bin/ncurses*-config) - ln -svf $cfg $out/bin/ncurses-config - - # Allow for end users who #include - mv "$out"/include/ncurses/* "$out"/include/ - rmdir "$out"/include/ncurses - ln -svf . $out/include/ncurses - - # Create curses compatability - ln -svf libncurses.so $out/lib/libcurses.so ''; preFixup = '' @@ -124,5 +109,5 @@ in stdenv.mkDerivation rec { maintainers = [ lib.maintainers.wkennington ]; }; - passthru.ldflags = if unicode then "-lncursesw" else "-lncurses"; + passthru.ldflags = "-lncurses"; } From 663b6f2eaa5b72cafca29ac545ca9d141a537a35 Mon Sep 17 00:00:00 2001 From: "William A. Kennington III" Date: Thu, 18 Jun 2015 20:50:30 -0700 Subject: [PATCH 113/259] nghttp2: 0.7.14 -> 1.0.2 --- pkgs/development/libraries/nghttp2/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/nghttp2/default.nix b/pkgs/development/libraries/nghttp2/default.nix index bc8c599a901f..e5e4f1cfff33 100644 --- a/pkgs/development/libraries/nghttp2/default.nix +++ b/pkgs/development/libraries/nghttp2/default.nix @@ -34,12 +34,12 @@ let in stdenv.mkDerivation rec { name = "${prefix}nghttp2-${version}"; - version = "0.7.14"; + version = "1.0.2"; # Don't use fetchFromGitHub since this needs a bootstrap curl src = fetchurl { url = "http://pub.wak.io/nixos/tarballs/nghttp2-${version}.tar.bz2"; - sha256 = "000d50yzyysbr9ldhvnbpzn35vplqm08dnmh55wc5zk273gy383f"; + sha256 = "633dd6d5d1f29a4d802d6c9e5b9eeb0b9104f35652396f26999a27515b6c1c14"; }; # Configure script searches for a symbol which does not exist in jemalloc on Darwin From 3d9be37df731e471f18d22d78ffba5fb1e4377e3 Mon Sep 17 00:00:00 2001 From: "William A. Kennington III" Date: Thu, 18 Jun 2015 20:55:19 -0700 Subject: [PATCH 114/259] curl: 7.42.1 -> 7.43.0 --- pkgs/tools/networking/curl/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/tools/networking/curl/default.nix b/pkgs/tools/networking/curl/default.nix index 28f28c9a4f93..6901c74cc48a 100644 --- a/pkgs/tools/networking/curl/default.nix +++ b/pkgs/tools/networking/curl/default.nix @@ -16,11 +16,11 @@ assert scpSupport -> libssh2 != null; assert c-aresSupport -> c-ares != null; stdenv.mkDerivation rec { - name = "curl-7.42.1"; + name = "curl-7.43.0"; src = fetchurl { url = "http://curl.haxx.se/download/${name}.tar.bz2"; - sha256 = "11y8racpj6m4j9w7wa9sifmqvdgf22nk901sfkbxzhhy75rmk472"; + sha256 = "1ycdhp47v8z6y64s7ihi5jl28dzc5w8wqn0wrhy4hc152ahm99ms"; }; # Zlib and OpenSSL must be propagated because `libcurl.la' contains From 0967c0fcdbe5716207f6c25d1a2b7c5703d83999 Mon Sep 17 00:00:00 2001 From: "William A. Kennington III" Date: Thu, 18 Jun 2015 21:58:45 -0700 Subject: [PATCH 115/259] wayland: 1.7.0 -> 1.8.1 --- pkgs/development/libraries/wayland/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/wayland/default.nix b/pkgs/development/libraries/wayland/default.nix index 11cf77668d74..9736d6514047 100644 --- a/pkgs/development/libraries/wayland/default.nix +++ b/pkgs/development/libraries/wayland/default.nix @@ -8,11 +8,11 @@ assert expat != null; stdenv.mkDerivation rec { name = "wayland-${version}"; - version = "1.7.0"; + version = "1.8.1"; src = fetchurl { url = "http://wayland.freedesktop.org/releases/${name}.tar.xz"; - sha256 = "173w0pqzk2m7hjlg15bymrx7ynxgq1ciadg03hzybxwnvfi4gsmx"; + sha256 = "1j3gfzn8i0xhk3j34mwb2srrscjxfyi279jhyq80mz943j6r6z7i"; }; configureFlags = "--with-scanner --disable-documentation"; From d12cc767bdf66948e2838664a6d2e39971289fba Mon Sep 17 00:00:00 2001 From: "William A. Kennington III" Date: Thu, 18 Jun 2015 23:33:29 -0700 Subject: [PATCH 116/259] file: 5.22 -> 5.23 --- pkgs/tools/misc/file/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/tools/misc/file/default.nix b/pkgs/tools/misc/file/default.nix index 2cf8d50bbe54..f4e89b197e66 100644 --- a/pkgs/tools/misc/file/default.nix +++ b/pkgs/tools/misc/file/default.nix @@ -1,13 +1,13 @@ { stdenv, fetchurl, zlib }: stdenv.mkDerivation rec { - name = "file-5.22"; + name = "file-5.23"; buildInputs = [ zlib ]; src = fetchurl { url = "ftp://ftp.astron.com/pub/file/${name}.tar.gz"; - sha256 = "02zw14hw3gqlw91w2f2snbirvyrp7r83irvnnkjcb25q9kjaiqy4"; + sha256 = "0z0mwqayrrf3w734rjp9rysf0y8az191ff7fxjsxyb1y2kzv72ic"; }; meta = { From 31cedc7ee73b8c0c1dc92894e21c7c6ad11460f0 Mon Sep 17 00:00:00 2001 From: "William A. Kennington III" Date: Thu, 18 Jun 2015 23:47:08 -0700 Subject: [PATCH 117/259] mariadb: Fix for darwin --- pkgs/servers/sql/mariadb/default.nix | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/pkgs/servers/sql/mariadb/default.nix b/pkgs/servers/sql/mariadb/default.nix index 21ccd50e3ef5..ab93c3499dc3 100644 --- a/pkgs/servers/sql/mariadb/default.nix +++ b/pkgs/servers/sql/mariadb/default.nix @@ -49,9 +49,10 @@ stdenv.mkDerivation rec { "-DWITH_PARTITION_STORAGE_ENGINE=1" "-DWITHOUT_EXAMPLE_STORAGE_ENGINE=1" "-DWITHOUT_FEDERATED_STORAGE_ENGINE=1" - ] ++ stdenv.lib.optional stdenv.isDarwin "-DWITHOUT_OQGRAPH_STORAGE_ENGINE=1"; - - NIX_CFLAGS_COMPILE = "-Wno-error=cpp"; + ] ++ stdenv.lib.optionals stdenv.isDarwin [ + "-DWITHOUT_OQGRAPH_STORAGE_ENGINE=1" + "-DWITHOUT_TOKUDB=1" + ]; enableParallelBuilding = true; From e837e025ea3cecab35b38c6f8b3792fbe579dadd Mon Sep 17 00:00:00 2001 From: Eduard Bachmakov Date: Fri, 12 Jun 2015 19:51:05 -0400 Subject: [PATCH 118/259] mesa: minor update to 10.5.7 Picked from #8369. --- 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 f2b36dd8c3e3..0279bfd51bac 100644 --- a/pkgs/development/libraries/mesa/default.nix +++ b/pkgs/development/libraries/mesa/default.nix @@ -23,7 +23,7 @@ else */ let - version = "10.5.6"; + version = "10.5.7"; # this is the default search path for DRI drivers driverLink = "/run/opengl-driver" + stdenv.lib.optionalString stdenv.isi686 "-32"; in @@ -37,7 +37,7 @@ stdenv.mkDerivation { "https://launchpad.net/mesa/trunk/${version}/+download/mesa-${version}.tar.xz" "ftp://ftp.freedesktop.org/pub/mesa/${version}/mesa-${version}.tar.xz" ]; - sha256 = "66017853bde5f7a6647db3eede30512a091a3491daa1708e0ad8027c328ba595"; + sha256 = "0648cga781b2pqr8ny59wk7wmyfw8q7g8xnass4q1bv9rn86il04"; }; prePatch = "patchShebangs ."; From c96d269ad73ad22045507c548b0fef7722ae1a47 Mon Sep 17 00:00:00 2001 From: "William A. Kennington III" Date: Fri, 19 Jun 2015 11:23:43 -0700 Subject: [PATCH 119/259] coreutils: Fix gmp in cross build --- pkgs/tools/misc/coreutils/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/tools/misc/coreutils/default.nix b/pkgs/tools/misc/coreutils/default.nix index c65ed30dd71b..e2d0670a8266 100644 --- a/pkgs/tools/misc/coreutils/default.nix +++ b/pkgs/tools/misc/coreutils/default.nix @@ -33,7 +33,7 @@ let ++ optionals selinuxSupport [ libselinux libsepol ]; crossAttrs = { - buildInputs = [ gmp ] + buildInputs = [ gmp.crossDrv ] ++ optional aclSupport acl.crossDrv ++ optionals selinuxSupport [ libselinux.crossDrv libsepol.crossDrv ] ++ optional (stdenv.ccCross.libc ? libiconv) From e039794e5bfbbf4720337194c88f34eb4af9c300 Mon Sep 17 00:00:00 2001 From: Jude Taylor Date: Fri, 19 Jun 2015 12:55:48 -0700 Subject: [PATCH 120/259] apply perl-5.20 fix to pure darwin only --- 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 8cb07621ef16..e8eb3a70e374 100644 --- a/pkgs/development/interpreters/perl/5.20/default.nix +++ b/pkgs/development/interpreters/perl/5.20/default.nix @@ -42,7 +42,7 @@ stdenv.mkDerivation rec { # while at the same time erasing the PATH environment variable so it unconditionally # fails. The code in question is guarded by a check for Mac OS, but the patch below # doesn't have any runtime effect on other platforms. - postPatch = '' + postPatch = stdenv.lib.optional (stdenv.isDarwin && !stdenv.cc.nativeLibc) '' pwd="$(type -P pwd)" substituteInPlace dist/PathTools/Cwd.pm \ --replace "pwd_cmd = 'pwd'" "pwd_cmd = '$pwd'" From f048ff3969abf7528f3569f7214995ecd5e0e619 Mon Sep 17 00:00:00 2001 From: Jude Taylor Date: Fri, 19 Jun 2015 12:56:00 -0700 Subject: [PATCH 121/259] darwin purity: python-2.7 --- pkgs/development/interpreters/python/2.7/default.nix | 5 ++++- pkgs/top-level/all-packages.nix | 1 + 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/pkgs/development/interpreters/python/2.7/default.nix b/pkgs/development/interpreters/python/2.7/default.nix index 792e2a679745..a24135ed83bd 100644 --- a/pkgs/development/interpreters/python/2.7/default.nix +++ b/pkgs/development/interpreters/python/2.7/default.nix @@ -8,6 +8,8 @@ , tcl ? null, tk ? null, x11 ? null, libX11 ? null, x11Support ? !stdenv.isCygwin , zlib ? null, zlibSupport ? true , expat, libffi + +, CF, configd }: assert zlibSupport -> zlib != null; @@ -92,7 +94,8 @@ let [ db gdbm ncurses sqlite readline ] ++ optionals x11Support [ tcl tk x11 libX11 ] ) - ++ optional zlibSupport zlib; + ++ optional zlibSupport zlib + ++ optionals stdenv.isDarwin [ CF configd ]; # Build the basic Python interpreter without modules that have # external dependencies. diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 4ee30b3d3a6b..52f4b6a7538f 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -4910,6 +4910,7 @@ let }; python27 = callPackage ../development/interpreters/python/2.7 { self = python27; + inherit (darwin) CF configd; }; python32 = callPackage ../development/interpreters/python/3.2 { self = python32; From d3ef216c54ad47bc7c96b3d82c1308e90d5c5fc3 Mon Sep 17 00:00:00 2001 From: Jude Taylor Date: Fri, 19 Jun 2015 12:56:12 -0700 Subject: [PATCH 122/259] darwin purity: libusb1 --- pkgs/development/libraries/libusb1/default.nix | 6 ++++-- pkgs/top-level/all-packages.nix | 4 +++- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/pkgs/development/libraries/libusb1/default.nix b/pkgs/development/libraries/libusb1/default.nix index 884db2b3b25a..82e10eba331d 100644 --- a/pkgs/development/libraries/libusb1/default.nix +++ b/pkgs/development/libraries/libusb1/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchurl, pkgconfig, udev ? null }: +{ stdenv, fetchurl, pkgconfig, udev ? null, libobjc, IOKit }: stdenv.mkDerivation rec { name = "libusb-1.0.19"; @@ -9,7 +9,9 @@ stdenv.mkDerivation rec { }; buildInputs = [ pkgconfig ]; - propagatedBuildInputs = stdenv.lib.optional stdenv.isLinux udev; + propagatedBuildInputs = + stdenv.lib.optional stdenv.isLinux udev ++ + stdenv.lib.optionals stdenv.isDarwin [ libobjc IOKit ]; NIX_LDFLAGS = stdenv.lib.optionalString stdenv.isLinux "-lgcc_s"; diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 52f4b6a7538f..1bcca87b6787 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -7210,7 +7210,9 @@ let libusb = callPackage ../development/libraries/libusb {}; - libusb1 = callPackage ../development/libraries/libusb1 { }; + libusb1 = callPackage ../development/libraries/libusb1 { + inherit (darwin) libobjc IOKit; + }; libusbmuxd = callPackage ../development/libraries/libusbmuxd { }; From 2c79dcd5ceb0023bf2b06e2190ab71a1d6e4ec87 Mon Sep 17 00:00:00 2001 From: Jude Taylor Date: Fri, 19 Jun 2015 12:56:20 -0700 Subject: [PATCH 123/259] darwin purity: pkgconfig --- pkgs/development/tools/misc/pkgconfig/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/development/tools/misc/pkgconfig/default.nix b/pkgs/development/tools/misc/pkgconfig/default.nix index f01b52cbba71..f1471d51e1fa 100644 --- a/pkgs/development/tools/misc/pkgconfig/default.nix +++ b/pkgs/development/tools/misc/pkgconfig/default.nix @@ -10,7 +10,7 @@ stdenv.mkDerivation (rec { sha256 = "0igqq5m204w71m11y0nipbdf5apx87hwfll6axs12hn4dqfb6vkb"; }; - buildInputs = stdenv.lib.optional stdenv.isCygwin libiconv; + buildInputs = stdenv.lib.optional (stdenv.isCygwin || stdenv.isDarwin) libiconv; configureFlags = [ "--with-internal-glib" ]; From 099f85465c344e49875385dd35bbba9fa72b5aa7 Mon Sep 17 00:00:00 2001 From: Jude Taylor Date: Fri, 19 Jun 2015 12:56:29 -0700 Subject: [PATCH 124/259] darwin purity: tetex-3.0 --- pkgs/tools/typesetting/tex/tetex/default.nix | 2 ++ 1 file changed, 2 insertions(+) diff --git a/pkgs/tools/typesetting/tex/tetex/default.nix b/pkgs/tools/typesetting/tex/tetex/default.nix index 24ab02e97d75..ab3d49c6b117 100644 --- a/pkgs/tools/typesetting/tex/tetex/default.nix +++ b/pkgs/tools/typesetting/tex/tetex/default.nix @@ -39,6 +39,8 @@ stdenv.mkDerivation { mkdir -p $out/share/texmf mkdir -p $out/share/texmf-dist gunzip < $texmf | (cd $out/share/texmf-dist && tar xvf -) + + substituteInPlace ./tetex-src-3.0/configure --replace /usr/bin/install $(type -P install) ''; meta = with stdenv.lib; { From 14d83e9565ea6179c07999fde0be1f516889d005 Mon Sep 17 00:00:00 2001 From: Jude Taylor Date: Fri, 19 Jun 2015 22:08:01 -0700 Subject: [PATCH 125/259] add gnused to impure darwin stdenv --- pkgs/development/libraries/libedit/default.nix | 2 +- pkgs/stdenv/darwin/default.nix | 2 +- pkgs/stdenv/darwin/trivial-bootstrap.sh | 3 ++- pkgs/tools/archivers/sharutils/default.nix | 13 +++++-------- 4 files changed, 9 insertions(+), 11 deletions(-) diff --git a/pkgs/development/libraries/libedit/default.nix b/pkgs/development/libraries/libedit/default.nix index 167aa2068655..5adef716eb0f 100644 --- a/pkgs/development/libraries/libedit/default.nix +++ b/pkgs/development/libraries/libedit/default.nix @@ -16,7 +16,7 @@ stdenv.mkDerivation rec { ] else null; postInstall = '' - sed -i ${stdenv.lib.optionalString (stdenv.isDarwin && stdenv.cc.nativeLibc) "''"} s/-lncurses/-lncursesw/g $out/lib/pkgconfig/libedit.pc + sed -i s/-lncurses/-lncursesw/g $out/lib/pkgconfig/libedit.pc ''; configureFlags = [ "--enable-widec" ]; diff --git a/pkgs/stdenv/darwin/default.nix b/pkgs/stdenv/darwin/default.nix index 98fc35074c2e..9ad2c8504d1a 100644 --- a/pkgs/stdenv/darwin/default.nix +++ b/pkgs/stdenv/darwin/default.nix @@ -106,7 +106,7 @@ rec { inherit system config; inherit (stage1.stdenv) shell fetchurlBoot preHook cc; - initialPath = [ stage1.pkgs.xz ] ++ stage1.stdenv.initialPath; + initialPath = [ stage1.pkgs.xz stage1.pkgs.gnused ] ++ stage1.stdenv.initialPath; }; pkgs = allPackages { inherit system platform; diff --git a/pkgs/stdenv/darwin/trivial-bootstrap.sh b/pkgs/stdenv/darwin/trivial-bootstrap.sh index 0915b378d4f0..487f14886587 100644 --- a/pkgs/stdenv/darwin/trivial-bootstrap.sh +++ b/pkgs/stdenv/darwin/trivial-bootstrap.sh @@ -12,6 +12,7 @@ cd $out/bin ln -s $mkdir ln -s /bin/sh ln -s /bin/cp +ln -s /bin/dd ln -s /bin/mv ln -s /bin/rm ln -s /bin/ls @@ -63,4 +64,4 @@ ln -s /usr/bin/which ln -s /usr/bin/install ln -s /usr/bin/basename ln -s /usr/bin/dirname -ln -s /usr/bin/readlink \ No newline at end of file +ln -s /usr/bin/readlink diff --git a/pkgs/tools/archivers/sharutils/default.nix b/pkgs/tools/archivers/sharutils/default.nix index cc9618c4dcc4..a7135346d2fc 100644 --- a/pkgs/tools/archivers/sharutils/default.nix +++ b/pkgs/tools/archivers/sharutils/default.nix @@ -8,14 +8,11 @@ stdenv.mkDerivation rec { sha256 = "1mallg1gprimlggdisfzdmh1xi676jsfdlfyvanlcw72ny8fsj3g"; }; - preConfigure = - let needSedSpace = ((stdenv.isFreeBSD || stdenv.isOpenBSD) && stdenv.cc.nativeTools) - || (stdenv.isDarwin && stdenv.cc.nativeLibc); - in '' - # Fix for building on Glibc 2.16. Won't be needed once the - # gnulib in sharutils is updated. - sed -i ${stdenv.lib.optionalString needSedSpace "''"} '/gets is a security hole/d' lib/stdio.in.h - ''; + preConfigure = '' + # Fix for building on Glibc 2.16. Won't be needed once the + # gnulib in sharutils is updated. + sed -i ${stdenv.lib.optionalString ((stdenv.isFreeBSD || stdenv.isOpenBSD) && stdenv.cc.nativeTools) "''"} '/gets is a security hole/d' lib/stdio.in.h + ''; # GNU Gettext is needed on non-GNU platforms. buildInputs = [ gettext coreutils ]; From e3927f6b928952921296754804c90ed554b941ac Mon Sep 17 00:00:00 2001 From: Jude Taylor Date: Fri, 19 Jun 2015 22:08:11 -0700 Subject: [PATCH 126/259] remove unbuildables from impure darwin stdenv --- pkgs/development/interpreters/python/2.7/default.nix | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/pkgs/development/interpreters/python/2.7/default.nix b/pkgs/development/interpreters/python/2.7/default.nix index a24135ed83bd..195caa583ad4 100644 --- a/pkgs/development/interpreters/python/2.7/default.nix +++ b/pkgs/development/interpreters/python/2.7/default.nix @@ -95,7 +95,11 @@ let ] ++ optionals x11Support [ tcl tk x11 libX11 ] ) ++ optional zlibSupport zlib - ++ optionals stdenv.isDarwin [ CF configd ]; + + # depend on CF and configd only if purity is an issue + # the impure bootstrap compiler can't build CoreFoundation currently. it requires + # which is in our pure bootstrapTools, but not in the system headers. + ++ optionals (stdenv.isDarwin && !stdenv.cc.nativeLibc) [ CF configd ]; # Build the basic Python interpreter without modules that have # external dependencies. From 105feaa9f4efe0b0dae348b007702e7fd8691460 Mon Sep 17 00:00:00 2001 From: "William A. Kennington III" Date: Sat, 20 Jun 2015 12:59:30 -0700 Subject: [PATCH 127/259] Cleanup some top-level cross compiling toolchain things Also, switch the cross gcc to use the default gcc. --- pkgs/top-level/all-packages.nix | 114 +++++++++----------------------- 1 file changed, 32 insertions(+), 82 deletions(-) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 1bcca87b6787..1609c6fac7e4 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -1127,11 +1127,9 @@ let cool-retro-term = callPackage ../applications/misc/cool-retro-term { }; - coreutils = callPackage ../tools/misc/coreutils - { - # TODO: Add ACL support for cross-Linux. - aclSupport = crossSystem == null && stdenv.isLinux; - }; + coreutils = callPackage ../tools/misc/coreutils { + aclSupport = stdenv.isLinux; + }; cpio = callPackage ../tools/archivers/cpio { }; @@ -3602,36 +3600,22 @@ let gccApple = throw "gccApple is no longer supported"; - gcc48_realCross = lib.addMetaAttrs { hydraPlatforms = []; } - (callPackage ../development/compilers/gcc/4.8 { - inherit noSysDirs; - binutilsCross = binutilsCross; - libcCross = libcCross; - profiledCompiler = false; - enableMultilib = false; - crossStageStatic = false; - cross = assert crossSystem != null; crossSystem; - }); - - gcc_realCross = gcc48_realCross; - gccCrossStageStatic = let - libcCross1 = - if stdenv.cross.libc == "msvcrt" then windows.mingw_w64_headers - else if stdenv.cross.libc == "libSystem" then darwin.xcode - else null; - in - wrapGCCCross { - gcc = forceNativeDrv (lib.addMetaAttrs { hydraPlatforms = []; } ( - gcc_realCross.override { - crossStageStatic = true; - langCC = false; - libcCross = libcCross1; - enableShared = false; - })); + libcCross1 = + if stdenv.cross.libc == "msvcrt" then windows.mingw_w64_headers + else if stdenv.cross.libc == "libSystem" then darwin.xcode + else null; + in wrapGCCCross { + gcc = forceNativeDrv (gcc.cc.override { + cross = crossSystem; + crossStageStatic = true; + langCC = false; + libcCross = libcCross1; + enableShared = false; + }); libc = libcCross1; binutils = binutilsCross; - cross = assert crossSystem != null; crossSystem; + cross = crossSystem; }; # Only needed for mingw builds @@ -3643,21 +3627,17 @@ let }; gccCrossStageFinal = wrapGCCCross { - gcc = forceNativeDrv (gcc_realCross.override { - libpthreadCross = - # FIXME: Don't explicitly refer to `i586-pc-gnu'. - if crossSystem != null && crossSystem.config == "i586-pc-gnu" - then gnu.libpthreadCross - else null; + gcc = forceNativeDrv (gcc.cc.override { + cross = crossSystem; + crossStageStatic = false; # XXX: We have troubles cross-compiling libstdc++ on MinGW (see # ), so don't even try. - langCC = (crossSystem == null - || crossSystem.config != "i686-pc-mingw32"); - }); + langCC = crossSystem.config != "i686-pc-mingw32"; + }); libc = libcCross; binutils = binutilsCross; - cross = assert crossSystem != null; crossSystem; + cross = crossSystem; }; gcc44 = lowPrio (wrapCC (makeOverridable (import ../development/compilers/gcc/4.4) { @@ -3684,10 +3664,6 @@ let # be passed. cross = null; libcCross = if crossSystem != null then libcCross else null; - libpthreadCross = - if crossSystem != null && crossSystem.config == "i586-pc-gnu" - then gnu.libpthreadCross - else null; })); gcc46 = lowPrio (wrapCC (callPackage ../development/compilers/gcc/4.6 { @@ -3705,10 +3681,6 @@ let # be passed. cross = null; libcCross = if crossSystem != null then libcCross else null; - libpthreadCross = - if crossSystem != null && crossSystem.config == "i586-pc-gnu" - then gnu.libpthreadCross - else null; texinfo = texinfo413; })); @@ -3723,10 +3695,6 @@ let # be passed. cross = null; libcCross = if crossSystem != null then libcCross else null; - libpthreadCross = - if crossSystem != null && crossSystem.config == "i586-pc-gnu" - then gnu.libpthreadCross - else null; })); gcc49 = lowPrio (wrapCC (callPackage ../development/compilers/gcc/4.9 { @@ -3740,10 +3708,6 @@ let # be passed. cross = null; libcCross = if crossSystem != null then libcCross else null; - libpthreadCross = - if crossSystem != null && crossSystem.config == "i586-pc-gnu" - then gnu.libpthreadCross - else null; isl = isl_0_11; @@ -3761,10 +3725,6 @@ let # be passed. cross = null; libcCross = if crossSystem != null then libcCross else null; - libpthreadCross = - if crossSystem != null && crossSystem.config == "i586-pc-gnu" - then gnu.libpthreadCross - else null; isl = isl_0_14; })); @@ -5172,12 +5132,11 @@ let gold = false; }); - binutilsCross = - if crossSystem != null && crossSystem.libc == "libSystem" then darwin.cctools_cross - else lowPrio (forceNativeDrv (import ../development/tools/misc/binutils { - inherit stdenv fetchurl zlib bison; + binutilsCross = lowPrio (forceNativeDrv ( + if crossSystem.libc == "libSystem" then darwin.cctools_cross + else binutils.override { noSysDirs = true; - cross = assert crossSystem != null; crossSystem; + cross = crossSystem; })); bison2 = callPackage ../development/tools/parsing/bison/2.x.nix { }; @@ -6158,28 +6117,19 @@ let withGd = true; }; - glibcCross = forceNativeDrv (makeOverridable (import ../development/libraries/glibc) - (let crossGNU = crossSystem != null && crossSystem.config == "i586-pc-gnu"; - in { - inherit stdenv fetchurl; - gccCross = gccCrossStageStatic; - kernelHeaders = if crossGNU then gnu.hurdHeaders else linuxHeadersCross; - installLocales = config.glibc.locales or false; - } - // lib.optionalAttrs crossGNU { - inherit (gnu) machHeaders hurdHeaders libpthreadHeaders mig; - inherit fetchgit; - })); - + glibcCross = forceNativeDrv (glibc.override { + gccCross = gccCrossStageStatic; + kernelHeaders = linuxHeadersCross; + }); # We can choose: - libcCrossChooser = name : if name == "glibc" then glibcCross + libcCrossChooser = name: if name == "glibc" then glibcCross else if name == "uclibc" then uclibcCross else if name == "msvcrt" then windows.mingw_w64 else if name == "libSystem" then darwin.xcode else throw "Unknown libc"; - libcCross = assert crossSystem != null; libcCrossChooser crossSystem.libc; + libcCross = libcCrossChooser crossSystem.libc; # Only supported on Linux glibcLocales = if stdenv.isLinux then callPackage ../development/libraries/glibc/locales.nix { } else null; From faf33749ce53f859c7bcb3d4e25ad101fbad0c26 Mon Sep 17 00:00:00 2001 From: Jude Taylor Date: Sat, 20 Jun 2015 13:13:33 -0700 Subject: [PATCH 128/259] install ncurses headers in the correct place --- pkgs/development/libraries/ncurses/default.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/pkgs/development/libraries/ncurses/default.nix b/pkgs/development/libraries/ncurses/default.nix index 7697aa1a9ac3..abfa184daf0f 100644 --- a/pkgs/development/libraries/ncurses/default.nix +++ b/pkgs/development/libraries/ncurses/default.nix @@ -33,6 +33,7 @@ stdenv.mkDerivation rec { # the place we want to put *.pc files from other packages anyway. So we must # tell it explicitly where to install with PKG_CONFIG_LIBDIR. preConfigure = '' + export configureFlags="$configureFlags --includedir=$out/include" export PKG_CONFIG_LIBDIR="$out/lib/pkgconfig" mkdir -p "$PKG_CONFIG_LIBDIR" '' + lib.optionalString stdenv.isCygwin '' From d4f176f70dedf0671a5d24514fefa8c8986a501c Mon Sep 17 00:00:00 2001 From: "William A. Kennington III" Date: Sun, 31 May 2015 18:00:33 -0700 Subject: [PATCH 129/259] Fix libiconv handling when using a crossSystem --- pkgs/top-level/all-packages.nix | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 1609c6fac7e4..2cd659a5e75f 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -6871,8 +6871,11 @@ let # glibc provides libiconv so systems with glibc don't need to build libiconv # separately, but we also provide libiconvReal, which will always be a # standalone libiconv, just in case you want it - libiconv = - if stdenv.isGlibc then stdenv.cc.libc + libiconv = if crossSystem != null then + (if crossSystem.libc == "glibc" then libcCross + else if crossSystem.libc == "libSystem" then darwin.libiconv + else libiconvReal) + else if stdenv.isGlibc then stdenv.cc.libc else if stdenv.isDarwin then darwin.libiconv else libiconvReal; From c49301b2f76c4de1261089c6fa761dae5116c22a Mon Sep 17 00:00:00 2001 From: "William A. Kennington III" Date: Sat, 20 Jun 2015 13:59:11 -0700 Subject: [PATCH 130/259] ncurses: Cleanup some old hacks --- .../development/libraries/ncurses/default.nix | 27 +++++++++---------- 1 file changed, 13 insertions(+), 14 deletions(-) diff --git a/pkgs/development/libraries/ncurses/default.nix b/pkgs/development/libraries/ncurses/default.nix index abfa184daf0f..7315d0679bb5 100644 --- a/pkgs/development/libraries/ncurses/default.nix +++ b/pkgs/development/libraries/ncurses/default.nix @@ -20,23 +20,17 @@ stdenv.mkDerivation rec { # gcc-5.patch should be removed after 5.9 patches = [ ./clang.patch ./gcc-5.patch ]; - configureFlags = - [ "--with-shared" "--without-debug" "--enable-pc-files" "--enable-symlinks" ] - ++ lib.optional unicode "--enable-widec"; + configureFlags = [ + "--with-shared" + "--without-debug" + "--enable-pc-files" + "--enable-symlinks" + "--includedir=\${out}/include" + ] ++ lib.optional unicode "--enable-widec"; buildInputs = lib.optional (mouseSupport && stdenv.isLinux) gpm; - # PKG_CONFIG_LIBDIR is where the *.pc files will be installed. If this - # directory doesn't exist, the configure script will disable installation of - # *.pc files. The configure script usually (on LSB distros) pick $(path of - # pkg-config)/../lib/pkgconfig. On NixOS that path doesn't exist and is not - # the place we want to put *.pc files from other packages anyway. So we must - # tell it explicitly where to install with PKG_CONFIG_LIBDIR. - preConfigure = '' - export configureFlags="$configureFlags --includedir=$out/include" - export PKG_CONFIG_LIBDIR="$out/lib/pkgconfig" - mkdir -p "$PKG_CONFIG_LIBDIR" - '' + lib.optionalString stdenv.isCygwin '' + preConfigure = lib.optionalString stdenv.isCygwin '' sed -i -e 's,LIB_SUFFIX="t,LIB_SUFFIX=",' configure ''; @@ -46,6 +40,11 @@ stdenv.mkDerivation rec { doCheck = false; + # The install expects the pkgconfig directory to exist in 5.9 + preInstall = '' + mkdir -p "$out/lib/pkgconfig" + ''; + # When building a wide-character (Unicode) build, create backward # compatibility links from the the "normal" libraries to the # wide-character libraries (e.g. libncurses.so to libncursesw.so). From 507bb016cc1acb39f1a913b60a5c5241157ce45b Mon Sep 17 00:00:00 2001 From: "William A. Kennington III" Date: Sat, 20 Jun 2015 14:26:47 -0700 Subject: [PATCH 131/259] openssl: Clean up the cross compile arguments Also add a check to make sure we don't depend on perl in the output --- .../development/libraries/openssl/default.nix | 77 +++++++++---------- 1 file changed, 36 insertions(+), 41 deletions(-) diff --git a/pkgs/development/libraries/openssl/default.nix b/pkgs/development/libraries/openssl/default.nix index f0212aeabee2..d05e3f21e8a0 100644 --- a/pkgs/development/libraries/openssl/default.nix +++ b/pkgs/development/libraries/openssl/default.nix @@ -1,22 +1,14 @@ { stdenv, fetchurl, perl , withCryptodev ? false, cryptodevHeaders }: +with stdenv.lib; let - name = "openssl-1.0.1o"; - - opensslCrossSystem = stdenv.lib.attrByPath [ "openssl" "system" ] + opensslCrossSystem = attrByPath [ "openssl" "system" ] (throw "openssl needs its platform name cross building" null) stdenv.cross; - - patchesCross = isCross: let - isDarwin = stdenv.isDarwin || (isCross && stdenv.cross.libc == "libSystem"); - in stdenv.lib.optional isDarwin ./darwin-arch.patch; - - extraPatches = stdenv.lib.optional stdenv.isCygwin ./1.0.1-cygwin64.patch; in - -stdenv.mkDerivation { - inherit name; +stdenv.mkDerivation rec { + name = "openssl-1.0.1o"; src = fetchurl { urls = [ @@ -26,11 +18,11 @@ stdenv.mkDerivation { sha1 = "b003e3382607ef2c6d85b51e4ed7a4c0a76b8d5a"; }; - patches = (patchesCross false) ++ extraPatches; - - buildInputs = stdenv.lib.optional withCryptodev cryptodevHeaders; + patches = optional stdenv.isCygwin ./1.0.1-cygwin64.patch + ++ optional (stdenv.isDarwin || (stdenv ? cross && stdenv.cross.libc == "libSystem")) ./darwin-arch.patch; nativeBuildInputs = [ perl ]; + buildInputs = stdenv.lib.optional withCryptodev cryptodevHeaders; # On x86_64-darwin, "./config" misdetects the system as # "darwin-i386-cc". So specify the system type explicitly. @@ -39,45 +31,48 @@ stdenv.mkDerivation { else if stdenv.system == "x86_64-solaris" then "./Configure solaris64-x86_64-gcc" else "./config"; - configureFlags = "shared --libdir=lib --openssldir=etc/ssl" + - stdenv.lib.optionalString withCryptodev " -DHAVE_CRYPTODEV -DUSE_CRYPTODEV_DIGESTS"; + configureFlags = [ + "shared" + "--libdir=lib" + "--openssldir=etc/ssl" + ] ++ stdenv.lib.optionals withCryptodev [ + "-DHAVE_CRYPTODEV" + "-DUSE_CRYPTODEV_DIGESTS" + ]; - makeFlags = "MANDIR=$(out)/share/man"; + makeFlags = [ + "MANDIR=$(out)/share/man" + ]; # Parallel building is broken in OpenSSL. enableParallelBuilding = false; - postInstall = - '' - # If we're building dynamic libraries, then don't install static - # libraries. - if [ -n "$(echo $out/lib/*.so $out/lib/*.dylib)" ]; then - rm "$out/lib/"*.a - fi + postInstall = '' + # If we're building dynamic libraries, then don't install static + # libraries. + if [ -n "$(echo $out/lib/*.so $out/lib/*.dylib $out/lib/*.dll)" ]; then + rm "$out/lib/"*.a + fi - # remove dependency on Perl at runtime - rm -rf $out/etc/ssl/misc - ''; + # remove dependency on Perl at runtime + rm -r $out/etc/ssl/misc $out/bin/c_rehash + ''; + + postFixup = '' + # Check to make sure we don't depend on perl + if grep -r '${perl}' $out; then + echo "Found an erroneous dependency on perl ^^^" >&2 + exit 1 + fi + ''; crossAttrs = { - patches = patchesCross true; - preConfigure='' # It's configure does not like --build or --host - export configureFlags="--libdir=lib --cross-compile-prefix=${stdenv.cross.config}- shared ${opensslCrossSystem}" + export configureFlags="${concatStringsSep " " (configureFlags ++ [ opensslCrossSystem ])}" ''; - postInstall = '' - # Openssl installs readonly files, which otherwise we can't strip. - # This could at some stdenv hash change be put out of crossAttrs, too - chmod -R +w $out - - # Remove references to perl, to avoid depending on it at runtime - rm $out/bin/c_rehash $out/ssl/misc/CA.pl $out/ssl/misc/tsget - ''; configureScript = "./Configure"; - } // stdenv.lib.optionalAttrs (opensslCrossSystem == "darwin64-x86_64-cc") { - CC = "gcc"; }; meta = { From a4fbe26ec808c139c1cba8676095645dcbdde5f7 Mon Sep 17 00:00:00 2001 From: Jude Taylor Date: Sat, 20 Jun 2015 15:29:42 -0700 Subject: [PATCH 132/259] darwin purity: haskell-hfsevents --- .../haskell-modules/configuration-common.nix | 6 +- pkgs/os-specific/darwin/apple-sdk/default.nix | 150 ++++++++++++++++++ .../darwin/apple-sdk/frameworks.nix | 119 ++++++++++++++ pkgs/top-level/all-packages.nix | 2 + 4 files changed, 276 insertions(+), 1 deletion(-) create mode 100644 pkgs/os-specific/darwin/apple-sdk/default.nix create mode 100644 pkgs/os-specific/darwin/apple-sdk/frameworks.nix diff --git a/pkgs/development/haskell-modules/configuration-common.nix b/pkgs/development/haskell-modules/configuration-common.nix index 751e0fb4825b..32098b0c7dbe 100644 --- a/pkgs/development/haskell-modules/configuration-common.nix +++ b/pkgs/development/haskell-modules/configuration-common.nix @@ -192,7 +192,11 @@ self: super: { # cabal2nix likes to generate dependencies on hinotify when hfsevents is really required # on darwin: https://github.com/NixOS/cabal2nix/issues/146 - hinotify = if pkgs.stdenv.isDarwin then super.hfsevents else super.hinotify; + hinotify = if pkgs.stdenv.isDarwin then self.hfsevents else super.hinotify; + + hfsevents = if pkgs.stdenv.isDarwin + then addBuildTool super.hfsevents pkgs.darwin.apple_sdk.frameworks.CoreServices + else super.hfsevents; # FSEvents API is very buggy and tests are unreliable. See # http://openradar.appspot.com/10207999 and similar issues diff --git a/pkgs/os-specific/darwin/apple-sdk/default.nix b/pkgs/os-specific/darwin/apple-sdk/default.nix new file mode 100644 index 000000000000..520158b30add --- /dev/null +++ b/pkgs/os-specific/darwin/apple-sdk/default.nix @@ -0,0 +1,150 @@ +{ stdenv, fetchurl, xar, gzip, cpio }: + +let + # I'd rather not "export" this, since they're somewhat monolithic and encourage bad habits. + # Also, the include directory inside here should be captured (almost?) entirely by our more + # precise Apple package structure, so with any luck it's unnecessary. + sdk = stdenv.mkDerivation rec { + version = "10.9"; + name = "MacOS_SDK-${version}"; + + src = fetchurl { + url = "http://swcdn.apple.com/content/downloads/27/02/031-06182/xxog8vxu8i6af781ivf4uhy6yt1lslex34/DevSDK_OSX109.pkg"; + sha256 = "16b7aplha5573yl1d44nl2yxzp0w2hafihbyh7930wrcvba69iy4"; + }; + + buildInputs = [ xar gzip cpio ]; + + phases = [ "unpackPhase" "installPhase" "fixupPhase" ]; + + unpackPhase = '' + xar -x -f $src + ''; + + installPhase = '' + start="$(pwd)" + mkdir -p $out + cd $out + cat $start/Payload | gzip -d | cpio -idm + + mv usr/* . + rmdir usr + + mv System/* . + rmdir System + + cd Library/Frameworks/QuartzCore.framework/Versions/A/Headers + for file in CI*.h; do + rm $file + ln -s ../Frameworks/CoreImage.framework/Versions/A/Headers/$file + done + ''; + + meta = with stdenv.lib; { + description = "Apple SDK ${version}"; + maintainers = with maintainers; [ copumpkin ]; + platforms = platforms.darwin; + }; + }; + + framework = name: deps: stdenv.mkDerivation { + name = "apple-framework-${name}"; + + phases = [ "installPhase" "fixupPhase" ]; + + installPhase = '' + linkFramework() { + local path="$1" + local dest="$out/Library/Frameworks/$path" + local name="$(basename "$path" .framework)" + local current="$(readlink "/System/Library/Frameworks/$path/Versions/Current")" + + mkdir -p "$dest" + pushd "$dest" >/dev/null + + ln -s "${sdk}/Library/Frameworks/$path/Versions/$current/Headers" + ln -s -L "/System/Library/Frameworks/$path/Versions/$current/$name" + ln -s -L "/System/Library/Frameworks/$path/Versions/$current/Resources" + + if [ -f "/System/Library/Frameworks/$path/module.map" ]; then + ln -s "/System/Library/Frameworks/$path/module.map" + fi + + pushd "${sdk}/Library/Frameworks/$path/Versions/$current" >/dev/null + local children=$(echo Frameworks/*.framework) + popd >/dev/null + + for child in $children; do + childpath="$path/Versions/$current/$child" + linkFramework "$childpath" + done + + if [ -d "$dest/Versions/$current" ]; then + mv $dest/Versions/$current/* . + fi + + popd >/dev/null + } + + linkFramework "${name}.framework" + ''; + + propagatedBuildInputs = deps; + + # Not going to bother being more precise than this... + __propagatedImpureHostDeps = [ "/System/Library/Frameworks/${name}.framework/Versions" ]; + + meta = with stdenv.lib; { + description = "Apple SDK framework ${name}"; + maintainers = with maintainers; [ copumpkin ]; + platforms = platforms.darwin; + }; + }; +in rec { + libs = { + xpc = stdenv.mkDerivation { + name = "apple-lib-xpc"; + phases = [ "installPhase" "fixupPhase" ]; + + installPhase = '' + mkdir -p $out/include + pushd $out/include >/dev/null + ln -s "${sdk}/include/xpc" + popd >/dev/null + ''; + }; + + Xplugin = stdenv.mkDerivation { + name = "apple-lib-Xplugin"; + phases = [ "installPhase" "fixupPhase" ]; + + # Not enough + __propagatedImpureHostDeps = [ "/usr/lib/libXplugin.1.dylib" ]; + + propagatedBuildInputs = with frameworks; [ + OpenGL ApplicationServices Carbon IOKit CoreFoundation CoreGraphics CoreServices CoreText + ]; + + installPhase = '' + mkdir -p $out/include $out/lib + ln -s "${sdk}/include/Xplugin.h" $out/include/Xplugin.h + ln -s "/usr/lib/libXplugin.1.dylib" $out/lib/libXplugin.dylib + ''; + }; + + utmp = stdenv.mkDerivation { + name = "apple-lib-utmp"; + phases = [ "installPhase" "fixupPhase" ]; + + installPhase = '' + mkdir -p $out/include + pushd $out/include >/dev/null + ln -s "${sdk}/include/utmp.h" + ln -s "${sdk}/include/utmpx.h" + popd >/dev/null + ''; + }; + }; + + frameworks = stdenv.lib.mapAttrs framework (import ./frameworks.nix { inherit frameworks libs; }); +} diff --git a/pkgs/os-specific/darwin/apple-sdk/frameworks.nix b/pkgs/os-specific/darwin/apple-sdk/frameworks.nix new file mode 100644 index 000000000000..60ed091a1e41 --- /dev/null +++ b/pkgs/os-specific/darwin/apple-sdk/frameworks.nix @@ -0,0 +1,119 @@ +# Current as of 10.9 +# Epic weird knot-tying happening here. +# TODO: clean up the process for generating this and include it + +{ frameworks, libs }: + +with frameworks; with libs; { + AGL = [ Carbon OpenGL ]; + AVFoundation = [ ApplicationServices CoreGraphics ]; + AVKit = []; + Accounts = []; + AddressBook = [ Carbon CoreFoundation ]; + AppKit = [ QuartzCore ]; + AppKitScripting = []; + AppleScriptKit = []; + AppleScriptObjC = []; + AppleShareClientCore = [ CoreServices ]; + AudioToolbox = [ AudioUnit CoreAudio CoreFoundation CoreMIDI ]; + AudioUnit = [ Carbon CoreAudio CoreFoundation ]; + AudioVideoBridging = [ Foundation ]; + Automator = []; + CFNetwork = [ CoreFoundation ]; + CalendarStore = []; + Cocoa = []; + Collaboration = []; + CoreAudio = [ CoreFoundation IOKit ]; + CoreAudioKit = [ AudioUnit ]; + CoreData = []; + CoreFoundation = []; + CoreGraphics = [ CoreFoundation IOKit IOSurface ]; + CoreLocation = []; + CoreMIDI = [ CoreFoundation ]; + CoreMIDIServer = []; + CoreMedia = [ ApplicationServices AudioToolbox CoreAudio CoreFoundation CoreGraphics CoreVideo ]; + CoreMediaIO = [ CoreFoundation CoreMedia ]; + CoreText = [ CoreFoundation CoreGraphics ]; + CoreVideo = [ ApplicationServices CoreFoundation CoreGraphics IOSurface OpenGL ]; + CoreWLAN = []; + DVComponentGlue = [ CoreServices QuickTime ]; + DVDPlayback = []; + DirectoryService = [ CoreFoundation ]; + DiscRecording = [ CoreFoundation CoreServices IOKit ]; + DiscRecordingUI = []; + DiskArbitration = [ CoreFoundation IOKit ]; + DrawSprocket = [ Carbon ]; + EventKit = []; + ExceptionHandling = []; + FWAUserLib = []; + ForceFeedback = [ CoreFoundation IOKit ]; + Foundation = [ CoreFoundation Security ApplicationServices AppKit ]; + GLKit = [ CoreFoundation ]; + GLUT = [ GL OpenGL ]; + GSS = []; + GameController = []; + GameKit = [ Foundation ]; + ICADevices = [ Carbon CoreFoundation IOBluetooth ]; + IMServicePlugIn = []; + IOBluetoothUI = [ IOBluetooth ]; + IOKit = [ CoreFoundation ]; + IOSurface = [ CoreFoundation IOKit xpc ]; + ImageCaptureCore = []; + ImageIO = [ CoreFoundation CoreGraphics ]; + InputMethodKit = [ Carbon ]; + InstallerPlugins = []; + InstantMessage = []; + JavaFrameEmbedding = []; + JavaScriptCore = [ CoreFoundation ]; + Kerberos = []; + Kernel = [ CoreFoundation IOKit ]; + LDAP = []; + LatentSemanticMapping = [ Carbon CoreFoundation ]; + MapKit = []; + MediaAccessibility = [ CoreFoundation CoreGraphics CoreText QuartzCore ]; + MediaToolbox = [ AudioToolbox CoreFoundation CoreMedia ]; + NetFS = [ CoreFoundation ]; + OSAKit = [ Carbon ]; + OpenAL = []; + OpenCL = [ CL IOSurface OpenGL ]; + OpenGL = []; + PCSC = []; + PreferencePanes = []; + PubSub = []; + Python = [ ApplicationServices ]; + QTKit = [ QuickTime ]; + QuickLook = [ ApplicationServices CoreFoundation ]; + QuickTime = [ ApplicationServices AudioUnit Carbon CoreAudio CoreServices OpenGL QuartzCore ]; + Ruby = []; + RubyCocoa = []; + SceneKit = []; + ScreenSaver = []; + Scripting = []; + ScriptingBridge = []; + Security = [ CoreFoundation ]; + SecurityFoundation = []; + SecurityInterface = [ Security ]; + ServiceManagement = [ CoreFoundation Security ]; + Social = []; + SpriteKit = []; + StoreKit = []; + SyncServices = []; + SystemConfiguration = [ CoreFoundation Security ]; + TWAIN = [ Carbon ]; + Tcl = []; + Tk = [ ApplicationServices Carbon X11 ]; + VideoDecodeAcceleration = [ CoreFoundation CoreVideo ]; + VideoToolbox = [ CoreFoundation CoreMedia CoreVideo ]; + WebKit = [ ApplicationServices Carbon JavaScriptCore OpenGL X11 ]; + + # Umbrellas + Accelerate = [ CoreGraphics ]; + ApplicationServices = [ CoreFoundation CoreServices CoreText ImageIO ]; + Carbon = [ ApplicationServices CoreFoundation CoreServices IOKit Security ]; + CoreServices = [ CFNetwork CoreFoundation DiskArbitration Security ]; + IOBluetooth = [ IOKit ]; + JavaVM = []; + OpenDirectory = [ CoreFoundation Foundation ]; + Quartz = [ QuickLook ]; + QuartzCore = [ ApplicationServices CoreFoundation CoreVideo ]; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 2cd659a5e75f..8daac14761f5 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -9235,6 +9235,8 @@ let cmdline_sdk = cmdline.sdk; cmdline_tools = cmdline.tools; + apple_sdk = callPackage ../os-specific/darwin/apple-sdk {}; + libobjc = apple-source-releases.objc4; }; From 72737118fd1bee5ea05987725e46f0aefdd10503 Mon Sep 17 00:00:00 2001 From: Jude Taylor Date: Sat, 20 Jun 2015 15:29:49 -0700 Subject: [PATCH 133/259] darwin purity: libuv --- pkgs/development/libraries/libuv/default.nix | 5 +++-- pkgs/top-level/all-packages.nix | 1 + 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/libuv/default.nix b/pkgs/development/libraries/libuv/default.nix index 08a969033db8..fc61b79bb28c 100644 --- a/pkgs/development/libraries/libuv/default.nix +++ b/pkgs/development/libraries/libuv/default.nix @@ -1,4 +1,4 @@ -{ stdenv, lib, fetchFromGitHub, autoconf, automake, libtool, pkgconfig }: +{ stdenv, lib, fetchFromGitHub, autoconf, automake, libtool, pkgconfig, CoreServices }: let stable = "stable"; @@ -59,7 +59,8 @@ let mkWithAutotools = stability: version: sha256: stdenv.mkDerivation { name = mkName stability version; src = mkSrc version sha256; - buildInputs = [ automake autoconf libtool pkgconfig ]; + buildInputs = [ automake autoconf libtool pkgconfig ] + ++ stdenv.lib.optional stdenv.isDarwin CoreServices; preConfigure = '' LIBTOOLIZE=libtoolize ./autogen.sh ''; diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 8daac14761f5..d7bc21e38d8f 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -7177,6 +7177,7 @@ let libuvVersions = recurseIntoAttrs (callPackage ../development/libraries/libuv { automake = automake113x; # fails with 14 + inherit (darwin.apple_sdk.frameworks) CoreServices; }); libuv = libuvVersions.v1_6_1; From 6f3729e3b31a16c3c8d8ecde78bf0a715675e24f Mon Sep 17 00:00:00 2001 From: Jude Taylor Date: Sun, 21 Jun 2015 00:56:26 -0700 Subject: [PATCH 134/259] darwin purity: nodejs --- pkgs/development/web/nodejs/default.nix | 17 +++++++++-------- pkgs/top-level/all-packages.nix | 5 ++++- 2 files changed, 13 insertions(+), 9 deletions(-) diff --git a/pkgs/development/web/nodejs/default.nix b/pkgs/development/web/nodejs/default.nix index f91a7c3b41db..8162dc4a8c51 100644 --- a/pkgs/development/web/nodejs/default.nix +++ b/pkgs/development/web/nodejs/default.nix @@ -1,5 +1,5 @@ { stdenv, fetchurl, openssl, python, zlib, libuv, v8, utillinux, http-parser -, pkgconfig, runCommand, which, unstableVersion ? false +, pkgconfig, runCommand, which, libtool, unstableVersion ? false }: # nodejs 0.12 can't be built on armv5tel. Armv6 with FPU, minimum I think. @@ -7,11 +7,6 @@ assert stdenv.system != "armv5tel-linux"; let - dtrace = runCommand "dtrace-native" {} '' - mkdir -p $out/bin - ln -sv /usr/sbin/dtrace $out/bin - ''; - version = "0.12.0"; deps = { @@ -39,7 +34,7 @@ in stdenv.mkDerivation { sha256 = "0cifd2qhpyrbxx71a4hsagzk24qas8m5zvwcyhx69cz9yhxf404p"; }; - configureFlags = concatMap sharedConfigureFlags (builtins.attrNames deps); + configureFlags = concatMap sharedConfigureFlags (builtins.attrNames deps) ++ [ "--without-dtrace" ]; prePatch = '' sed -e 's|^#!/usr/bin/env python$|#!${python}/bin/python|g' -i configure @@ -51,11 +46,17 @@ in stdenv.mkDerivation { (cd tools/gyp; patch -Np1 -i ${../../python-modules/gyp/no-darwin-cflags.patch}) '' else null; + preBuild = if stdenv.isDarwin then '' + patchShebangs . + '' else null; + buildInputs = [ python which ] ++ (optional stdenv.isLinux utillinux) - ++ optionals stdenv.isDarwin [ pkgconfig openssl dtrace ]; + ++ optionals stdenv.isDarwin [ pkgconfig openssl libtool ]; setupHook = ./setup-hook.sh; + enableParallelBuilding = true; + passthru.interpreterName = "nodejs"; meta = { diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index d7bc21e38d8f..ea8e18f77f43 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -1952,7 +1952,10 @@ let ninka = callPackage ../development/tools/misc/ninka { }; - nodejs-0_12 = callPackage ../development/web/nodejs { libuv = libuvVersions.v1_2_0; }; + nodejs-0_12 = callPackage ../development/web/nodejs { + libuv = libuvVersions.v1_2_0; + libtool = darwin.cctools; + }; nodejs-unstable = callPackage ../development/web/nodejs { libuv = libuvVersions.v1_2_0; unstableVersion = true; }; nodejs-0_10 = callPackage ../development/web/nodejs/v0_10.nix { }; From 26da697f73d6c459c9558be1e4267b8c51a8e35e Mon Sep 17 00:00:00 2001 From: Jude Taylor Date: Sun, 21 Jun 2015 00:56:48 -0700 Subject: [PATCH 135/259] darwin purity: libuv, again --- pkgs/development/libraries/libuv/default.nix | 6 ++++-- pkgs/top-level/all-packages.nix | 2 +- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/pkgs/development/libraries/libuv/default.nix b/pkgs/development/libraries/libuv/default.nix index fc61b79bb28c..5ef7b3e6a276 100644 --- a/pkgs/development/libraries/libuv/default.nix +++ b/pkgs/development/libraries/libuv/default.nix @@ -1,4 +1,6 @@ -{ stdenv, lib, fetchFromGitHub, autoconf, automake, libtool, pkgconfig, CoreServices }: +{ stdenv, lib, fetchFromGitHub, autoconf, automake, libtool, pkgconfig + +, ApplicationServices, CoreServices }: let stable = "stable"; @@ -60,7 +62,7 @@ let name = mkName stability version; src = mkSrc version sha256; buildInputs = [ automake autoconf libtool pkgconfig ] - ++ stdenv.lib.optional stdenv.isDarwin CoreServices; + ++ stdenv.lib.optionals stdenv.isDarwin [ ApplicationServices CoreServices ]; preConfigure = '' LIBTOOLIZE=libtoolize ./autogen.sh ''; diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index ea8e18f77f43..68bfd571ce4c 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -7180,7 +7180,7 @@ let libuvVersions = recurseIntoAttrs (callPackage ../development/libraries/libuv { automake = automake113x; # fails with 14 - inherit (darwin.apple_sdk.frameworks) CoreServices; + inherit (darwin.apple_sdk.frameworks) ApplicationServices CoreServices; }); libuv = libuvVersions.v1_6_1; From d28e5f1c61e160ddc8bcdc93b11c4cda0f7a9a91 Mon Sep 17 00:00:00 2001 From: Jude Taylor Date: Sun, 21 Jun 2015 00:57:17 -0700 Subject: [PATCH 136/259] fix ncurses pkgconfig path a final time --- pkgs/development/libraries/ncurses/default.nix | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/pkgs/development/libraries/ncurses/default.nix b/pkgs/development/libraries/ncurses/default.nix index 7315d0679bb5..15e711b096bb 100644 --- a/pkgs/development/libraries/ncurses/default.nix +++ b/pkgs/development/libraries/ncurses/default.nix @@ -30,7 +30,10 @@ stdenv.mkDerivation rec { buildInputs = lib.optional (mouseSupport && stdenv.isLinux) gpm; - preConfigure = lib.optionalString stdenv.isCygwin '' + preConfigure = '' + export PKG_CONFIG_LIBDIR="$out/lib/pkgconfig" + mkdir -p "$PKG_CONFIG_LIBDIR" + '' + lib.optionalString stdenv.isCygwin '' sed -i -e 's,LIB_SUFFIX="t,LIB_SUFFIX=",' configure ''; @@ -40,11 +43,6 @@ stdenv.mkDerivation rec { doCheck = false; - # The install expects the pkgconfig directory to exist in 5.9 - preInstall = '' - mkdir -p "$out/lib/pkgconfig" - ''; - # When building a wide-character (Unicode) build, create backward # compatibility links from the the "normal" libraries to the # wide-character libraries (e.g. libncurses.so to libncursesw.so). From 3af62f18f2e78ae312486862e20959086e10f5ce Mon Sep 17 00:00:00 2001 From: Jude Taylor Date: Sun, 21 Jun 2015 00:57:41 -0700 Subject: [PATCH 137/259] darwin purity: haskell-system-fileio --- pkgs/development/haskell-modules/configuration-common.nix | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/pkgs/development/haskell-modules/configuration-common.nix b/pkgs/development/haskell-modules/configuration-common.nix index 32098b0c7dbe..0ea34e55cb89 100644 --- a/pkgs/development/haskell-modules/configuration-common.nix +++ b/pkgs/development/haskell-modules/configuration-common.nix @@ -194,6 +194,7 @@ self: super: { # on darwin: https://github.com/NixOS/cabal2nix/issues/146 hinotify = if pkgs.stdenv.isDarwin then self.hfsevents else super.hinotify; + # hfsevents needs CoreServices in scope hfsevents = if pkgs.stdenv.isDarwin then addBuildTool super.hfsevents pkgs.darwin.apple_sdk.frameworks.CoreServices else super.hfsevents; @@ -202,6 +203,9 @@ self: super: { # http://openradar.appspot.com/10207999 and similar issues fsnotify = if pkgs.stdenv.isDarwin then dontCheck super.fsnotify else super.fsnotify; + # the system-fileio tests use canonicalizePath, which fails in the sandbox + system-fileio = if pkgs.stdenv.isDarwin then dontCheck super.system-fileio else super.system-fileio; + # Prevents needing to add security_tool as a build tool to all of x509-system's # dependencies. # TODO: use pkgs.darwin.security_tool once we can build it From c779fe98043ee2123fa36187837423469d0cbc50 Mon Sep 17 00:00:00 2001 From: Jude Taylor Date: Sun, 21 Jun 2015 00:57:50 -0700 Subject: [PATCH 138/259] darwin purity: haskell-double-conversion --- .../development/haskell-modules/configuration-common.nix | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/pkgs/development/haskell-modules/configuration-common.nix b/pkgs/development/haskell-modules/configuration-common.nix index 0ea34e55cb89..bc9cfe8173b6 100644 --- a/pkgs/development/haskell-modules/configuration-common.nix +++ b/pkgs/development/haskell-modules/configuration-common.nix @@ -216,6 +216,15 @@ self: super: { ''; }); + double-conversion = if !pkgs.stdenv.isDarwin + then super.double-conversion + else overrideCabal super.double-conversion (drv: + { + patchPhase = '' + substituteInPlace double-conversion.cabal --replace stdc++ c++ + ''; + }); + # Does not compile: "fatal error: ieee-flpt.h: No such file or directory" base_4_8_0_0 = markBroken super.base_4_8_0_0; From 7c3bf186a6b5ca41f66f4edc72dd7c3187a69bb5 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Mon, 22 Jun 2015 14:40:29 +0200 Subject: [PATCH 139/259] bash: Update to 4.3-p39 --- pkgs/shells/bash/bash-4.3-patches.nix | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/pkgs/shells/bash/bash-4.3-patches.nix b/pkgs/shells/bash/bash-4.3-patches.nix index 49360bd9a026..cd085f787006 100644 --- a/pkgs/shells/bash/bash-4.3-patches.nix +++ b/pkgs/shells/bash/bash-4.3-patches.nix @@ -34,4 +34,10 @@ patch: [ (patch "031" "07d62bl3z7qa8v6kgk47vzzazw563mlk9zhrsr4xsbqgvmcrylnd") (patch "032" "0jjgapfq4qhmndfrw8c3q3lva8xjdhlbd9cc631v41b0kb95g4w8") (patch "033" "05ma5rlxiadnfh925p4y7s0vvk917kmsdb1mfdx05gizl63pfapv") +(patch "034" "12gq9whkq3naa3iy7c7x5pfpvrg7d0kwqld8609zxphhy424ysgi") +(patch "035" "1qy1jflmbazjykq766gwabkaiswnx7pwa66whqiny0w02zjqa39p") +(patch "036" "0z6jbyy70lfdm6d3x0sbazbqdxb3xnpn9bmz7madpvrnbd284pxc") +(patch "037" "04sqr8zkl6s5fccfvb775ppn3ldij5imria9swc39aq0fkfp1w9k") +(patch "038" "0rv3g14mpgv8br267bf7rmgqlgwnc4v6g3g8y0sjba571i8amgmd") +(patch "039" "1v3l3vkc3g2b6fjycqwlakr8xhiw6bmw6q0zd6bi0m0m4bnxr55b") ] From d8c91a6d27976bd27cb9e7ce63e0d1710559c7aa Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Mon, 22 Jun 2015 18:04:09 +0200 Subject: [PATCH 140/259] mesa: maintenance update --- 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 0279bfd51bac..ed6ba30626cb 100644 --- a/pkgs/development/libraries/mesa/default.nix +++ b/pkgs/development/libraries/mesa/default.nix @@ -23,7 +23,7 @@ else */ let - version = "10.5.7"; + version = "10.5.8"; # this is the default search path for DRI drivers driverLink = "/run/opengl-driver" + stdenv.lib.optionalString stdenv.isi686 "-32"; in @@ -37,7 +37,7 @@ stdenv.mkDerivation { "https://launchpad.net/mesa/trunk/${version}/+download/mesa-${version}.tar.xz" "ftp://ftp.freedesktop.org/pub/mesa/${version}/mesa-${version}.tar.xz" ]; - sha256 = "0648cga781b2pqr8ny59wk7wmyfw8q7g8xnass4q1bv9rn86il04"; + sha256 = "2866b855c5299a4aed066338c77ff6467c389b2c30ada7647be8758663da2b54"; }; prePatch = "patchShebangs ."; From ad779acd3be0a29bcda55f760eee6de35cfedef5 Mon Sep 17 00:00:00 2001 From: Robert Scott Date: Sun, 14 Jun 2015 11:20:43 +0000 Subject: [PATCH 141/259] findutils: disable test_canonicalize (close #8324) It fails when user doesn't have permission to list all TMPDIR's parent directories. --- pkgs/tools/misc/findutils/default.nix | 2 +- .../misc/findutils/disable-test-canonicalize.patch | 12 ++++++++++++ 2 files changed, 13 insertions(+), 1 deletion(-) create mode 100644 pkgs/tools/misc/findutils/disable-test-canonicalize.patch diff --git a/pkgs/tools/misc/findutils/default.nix b/pkgs/tools/misc/findutils/default.nix index 188b573efeca..16d53c9f436a 100644 --- a/pkgs/tools/misc/findutils/default.nix +++ b/pkgs/tools/misc/findutils/default.nix @@ -10,7 +10,7 @@ stdenv.mkDerivation rec { nativeBuildInputs = [coreutils]; - patches = [ ./findutils-path.patch ./change_echo_path.patch ]; + patches = [ ./findutils-path.patch ./change_echo_path.patch ./disable-test-canonicalize.patch ]; doCheck = true; diff --git a/pkgs/tools/misc/findutils/disable-test-canonicalize.patch b/pkgs/tools/misc/findutils/disable-test-canonicalize.patch new file mode 100644 index 000000000000..3a8d42eb5607 --- /dev/null +++ b/pkgs/tools/misc/findutils/disable-test-canonicalize.patch @@ -0,0 +1,12 @@ +diff -ruN findutils-4.4.2/tests/test-canonicalize.sh findutils-4.4.2_edited/tests/test-canonicalize.sh +--- findutils-4.4.2/tests/test-canonicalize.sh 2008-12-23 12:50:15.000000000 +0000 ++++ findutils-4.4.2_edited/tests/test-canonicalize.sh 2015-06-14 10:51:19.000000000 +0000 +@@ -1,5 +1,8 @@ + #!/bin/sh + ++# skipped because user might not have directory listing permission for all parents of TMPDIR ++exit 77 ++ + tmpfiles="" + trap 'rm -fr $tmpfiles' 1 2 3 15 + From 094bf83b26f396e9d7171fe770303eda0f14187d Mon Sep 17 00:00:00 2001 From: "William A. Kennington III" Date: Mon, 22 Jun 2015 12:25:53 -0700 Subject: [PATCH 142/259] Fix the usage of cross packages during nix-env listings --- pkgs/top-level/all-packages.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 0c436808c785..d71e3c4393e3 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -5155,7 +5155,7 @@ let gold = false; }); - binutilsCross = lowPrio (forceNativeDrv ( + binutilsCross = assert crossSystem != null; lowPrio (forceNativeDrv ( if crossSystem.libc == "libSystem" then darwin.cctools_cross else binutils.override { noSysDirs = true; @@ -6152,7 +6152,7 @@ let else if name == "libSystem" then darwin.xcode else throw "Unknown libc"; - libcCross = libcCrossChooser crossSystem.libc; + libcCross = assert crossSystem != null; libcCrossChooser crossSystem.libc; # Only supported on Linux glibcLocales = if stdenv.isLinux then callPackage ../development/libraries/glibc/locales.nix { } else null; From b92905e0979167f01084d8f586e2dbdda2907d5a Mon Sep 17 00:00:00 2001 From: Pascal Wittmann Date: Mon, 22 Jun 2015 22:42:40 +0200 Subject: [PATCH 143/259] dejavu_fonts: update from 2.34 to 2.35 --- pkgs/data/fonts/dejavu-fonts/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/data/fonts/dejavu-fonts/default.nix b/pkgs/data/fonts/dejavu-fonts/default.nix index 88596bb4fd9b..21028ee0b32a 100644 --- a/pkgs/data/fonts/dejavu-fonts/default.nix +++ b/pkgs/data/fonts/dejavu-fonts/default.nix @@ -1,6 +1,6 @@ {fetchurl, stdenv, fontforge, perl, fontconfig, FontTTF}: -let version = "2.34" ; in +let version = "2.35" ; in stdenv.mkDerivation rec { name = "dejavu-fonts-${version}"; @@ -18,7 +18,7 @@ stdenv.mkDerivation rec { src = fetchurl { url = "mirror://sourceforge/dejavu/dejavu-fonts-${version}.tar.bz2"; - sha256 = "09wh9c9kk82i4kwy73fcqa0779bvf0ncikciqw2gxa9m2rkrxjmm"; + sha256 = "1xdbi4llrq1qbkd73352ibrfqcbz93dww8hab216qz5szd95yvv4"; }; buildFlags = "full-ttf"; preBuild = '' From 7f9a4957eec02bf979e9505d8733246c53aa7cc2 Mon Sep 17 00:00:00 2001 From: "William A. Kennington III" Date: Mon, 22 Jun 2015 20:00:02 -0700 Subject: [PATCH 144/259] openssl: Make 1.0.2 conform to the 1.0.1 derivation --- .../development/libraries/openssl/1.0.2.x.nix | 75 +++++++++---------- 1 file changed, 37 insertions(+), 38 deletions(-) diff --git a/pkgs/development/libraries/openssl/1.0.2.x.nix b/pkgs/development/libraries/openssl/1.0.2.x.nix index 637f5d30cb2f..2320d7c8a45c 100644 --- a/pkgs/development/libraries/openssl/1.0.2.x.nix +++ b/pkgs/development/libraries/openssl/1.0.2.x.nix @@ -1,32 +1,27 @@ { stdenv, fetchurl, perl , withCryptodev ? false, cryptodevHeaders }: +with stdenv.lib; let - name = "openssl-1.0.2c"; - - opensslCrossSystem = stdenv.lib.attrByPath [ "openssl" "system" ] + opensslCrossSystem = attrByPath [ "openssl" "system" ] (throw "openssl needs its platform name cross building" null) stdenv.cross; - - extraPatches = stdenv.lib.optional stdenv.isCygwin ./1.0.1-cygwin64.patch; in - -stdenv.mkDerivation { - inherit name; +stdenv.mkDerivation rec { + name = "openssl-1.0.2c"; src = fetchurl { urls = [ "http://www.openssl.org/source/${name}.tar.gz" "http://openssl.linux-mirror.org/source/${name}.tar.gz" ]; - sha256 = "10vasdg52qiyqvgbp14n9z7ghglmhzvag9qpiz2nfqssycvvlf00"; + sha1 = "6e4a5e91159eb32383296c7c83ac0e59b83a0a44"; }; - patches = extraPatches; - - buildInputs = stdenv.lib.optional withCryptodev cryptodevHeaders; + patches = optional stdenv.isCygwin ./1.0.1-cygwin64.patch; nativeBuildInputs = [ perl ]; + buildInputs = stdenv.lib.optional withCryptodev cryptodevHeaders; # On x86_64-darwin, "./config" misdetects the system as # "darwin-i386-cc". So specify the system type explicitly. @@ -35,44 +30,48 @@ stdenv.mkDerivation { else if stdenv.system == "x86_64-solaris" then "./Configure solaris64-x86_64-gcc" else "./config"; - configureFlags = "shared --libdir=lib --openssldir=etc/ssl" + - stdenv.lib.optionalString withCryptodev " -DHAVE_CRYPTODEV -DUSE_CRYPTODEV_DIGESTS"; + configureFlags = [ + "shared" + "--libdir=lib" + "--openssldir=etc/ssl" + ] ++ stdenv.lib.optionals withCryptodev [ + "-DHAVE_CRYPTODEV" + "-DUSE_CRYPTODEV_DIGESTS" + ]; - # CYGXXX: used to be set for cygwin with optionalString. Not needed - # anymore but kept to prevent rebuild. - preBuild = ""; - - makeFlags = "MANDIR=$(out)/share/man"; + makeFlags = [ + "MANDIR=$(out)/share/man" + ]; # Parallel building is broken in OpenSSL. enableParallelBuilding = false; - postInstall = - '' - # If we're building dynamic libraries, then don't install static - # libraries. - if [ -n "$(echo $out/lib/*.so $out/lib/*.dylib)" ]; then - rm $out/lib/*.a - fi - ''; # */ + postInstall = '' + # If we're building dynamic libraries, then don't install static + # libraries. + if [ -n "$(echo $out/lib/*.so $out/lib/*.dylib $out/lib/*.dll)" ]; then + rm "$out/lib/"*.a + fi + + # remove dependency on Perl at runtime + rm -r $out/etc/ssl/misc $out/bin/c_rehash + ''; + + postFixup = '' + # Check to make sure we don't depend on perl + if grep -r '${perl}' $out; then + echo "Found an erroneous dependency on perl ^^^" >&2 + exit 1 + fi + ''; crossAttrs = { preConfigure='' # It's configure does not like --build or --host - export configureFlags="--libdir=lib --cross-compile-prefix=${stdenv.cross.config}- shared ${opensslCrossSystem}" + export configureFlags="${concatStringsSep " " (configureFlags ++ [ opensslCrossSystem ])}" ''; - postInstall = '' - # Openssl installs readonly files, which otherwise we can't strip. - # This could at some stdenv hash change be put out of crossAttrs, too - chmod -R +w $out - - # Remove references to perl, to avoid depending on it at runtime - rm $out/bin/c_rehash $out/ssl/misc/CA.pl $out/ssl/misc/tsget - ''; configureScript = "./Configure"; - } // stdenv.lib.optionalAttrs (opensslCrossSystem == "darwin64-x86_64-cc") { - CC = "gcc"; }; meta = { From bdd88582e37f0b11830899bd4cba3058934ac5a1 Mon Sep 17 00:00:00 2001 From: "William A. Kennington III" Date: Mon, 22 Jun 2015 20:25:26 -0700 Subject: [PATCH 145/259] ncurses: Add a symlink to the fully suffixed directory which was incorrectly skipped when this code was modified --- pkgs/development/libraries/ncurses/default.nix | 3 +++ 1 file changed, 3 insertions(+) diff --git a/pkgs/development/libraries/ncurses/default.nix b/pkgs/development/libraries/ncurses/default.nix index 36cc4d55933d..de3b42027f2d 100644 --- a/pkgs/development/libraries/ncurses/default.nix +++ b/pkgs/development/libraries/ncurses/default.nix @@ -55,6 +55,9 @@ stdenv.mkDerivation rec { # Get the path to the config util cfg=$(basename $out/bin/ncurses*-config) + # symlink the full suffixed include directory + ln -svf . $out/include/ncurses$suffix + for newsuffix in $suffixes ""; do # Create a non-abi versioned config util links ln -svf $cfg $out/bin/ncurses$newsuffix-config From fb0bc10de49124fddb60b9ec4b4d052af718e8a4 Mon Sep 17 00:00:00 2001 From: "William A. Kennington III" Date: Mon, 22 Jun 2015 23:45:10 -0700 Subject: [PATCH 146/259] ncurses: Fix includedir in the pkgconfig referencing ${out} --- pkgs/development/libraries/ncurses/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/development/libraries/ncurses/default.nix b/pkgs/development/libraries/ncurses/default.nix index de3b42027f2d..c505d89a6d8f 100644 --- a/pkgs/development/libraries/ncurses/default.nix +++ b/pkgs/development/libraries/ncurses/default.nix @@ -25,12 +25,12 @@ stdenv.mkDerivation rec { "--without-debug" "--enable-pc-files" "--enable-symlinks" - "--includedir=\${out}/include" ] ++ lib.optional unicode "--enable-widec"; buildInputs = lib.optional (mouseSupport && stdenv.isLinux) gpm; preConfigure = '' + configureFlagsArray+=("--includedir=$out/include") export PKG_CONFIG_LIBDIR="$out/lib/pkgconfig" mkdir -p "$PKG_CONFIG_LIBDIR" '' + lib.optionalString stdenv.isCygwin '' From 3dd96b1a2ca5c7ac8ce9e1613852aa9ded43e6c1 Mon Sep 17 00:00:00 2001 From: Richard Wallace Date: Sat, 20 Jun 2015 22:33:08 -0700 Subject: [PATCH 147/259] hoogle files are generated correctly with ghc 7.10.1, hipbot builds correctly. --- .../haskell-modules/configuration-ghc-7.10.x.nix | 7 ------- 1 file changed, 7 deletions(-) diff --git a/pkgs/development/haskell-modules/configuration-ghc-7.10.x.nix b/pkgs/development/haskell-modules/configuration-ghc-7.10.x.nix index f2e0fb056e71..92417e5e6813 100644 --- a/pkgs/development/haskell-modules/configuration-ghc-7.10.x.nix +++ b/pkgs/development/haskell-modules/configuration-ghc-7.10.x.nix @@ -44,10 +44,6 @@ self: super: { # Don't use jailbreak built with Cabal 1.22.x because of https://github.com/peti/jailbreak-cabal/issues/9. jailbreak-cabal = pkgs.haskell.packages.ghc784.jailbreak-cabal; - # GHC 7.10.x's Haddock binary cannot generate hoogle files. - # https://ghc.haskell.org/trac/ghc/ticket/9921 - mkDerivation = drv: super.mkDerivation (drv // { doHoogle = false; }); - idris = let idris' = overrideCabal super.idris (drv: { # "idris" binary cannot find Idris library otherwise while building. @@ -231,9 +227,6 @@ self: super: { seqid-streams_0_1_0 = markBroken super.seqid-streams_0_1_0; vector_0_10_9_3 = markBroken super.vector_0_10_9_3; - # https://github.com/purefn/hipbot/issues/1 - hipbot = dontDistribute super.hipbot; - # https://github.com/HugoDaniel/RFC3339/issues/14 timerep = dontCheck super.timerep; From c0e1f2e34f56f4179672199d9e6141005c1cd4bd Mon Sep 17 00:00:00 2001 From: Jude Taylor Date: Mon, 22 Jun 2015 14:10:41 -0700 Subject: [PATCH 148/259] darwin purity: weechat --- pkgs/applications/networking/irc/weechat/default.nix | 3 ++- pkgs/top-level/all-packages.nix | 4 +++- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/networking/irc/weechat/default.nix b/pkgs/applications/networking/irc/weechat/default.nix index 8825e16b90f9..c39c5be1d4ca 100644 --- a/pkgs/applications/networking/irc/weechat/default.nix +++ b/pkgs/applications/networking/irc/weechat/default.nix @@ -1,6 +1,6 @@ { stdenv, fetchurl, ncurses, openssl, perl, python, aspell, gnutls , zlib, curl , pkgconfig, libgcrypt, ruby, lua5, tcl, guile -, pythonPackages, cacert, cmake, makeWrapper +, pythonPackages, cacert, cmake, makeWrapper, libobjc , extraBuildInputs ? [] }: stdenv.mkDerivation rec { @@ -16,6 +16,7 @@ stdenv.mkDerivation rec { [ ncurses perl python openssl aspell gnutls zlib curl pkgconfig libgcrypt ruby lua5 tcl guile pythonPackages.pycrypto makeWrapper cacert cmake ] + ++ stdenv.lib.optionals stdenv.isDarwin [ pythonPackages.pync libobjc ] ++ extraBuildInputs; NIX_CFLAGS_COMPILE = "-I${python}/include/${python.libPrefix} -DCA_FILE=${cacert}/etc/ssl/certs/ca-bundle.crt"; diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index ad90e54ccbca..dadca8f68610 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -12834,7 +12834,9 @@ let graphicsSupport = false; }; - weechat = callPackage ../applications/networking/irc/weechat { }; + weechat = callPackage ../applications/networking/irc/weechat { + inherit (darwin) libobjc; + }; westonLite = callPackage ../applications/window-managers/weston { pango = null; From a8c98bc0135b223de97d293aeeea6bc617523d9d Mon Sep 17 00:00:00 2001 From: Jude Taylor Date: Mon, 22 Jun 2015 14:10:56 -0700 Subject: [PATCH 149/259] darwin purity: mercurial --- pkgs/applications/version-management/mercurial/default.nix | 7 +++++-- pkgs/top-level/all-packages.nix | 1 + 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/version-management/mercurial/default.nix b/pkgs/applications/version-management/mercurial/default.nix index 2db8cf72350a..6c58fbd3689a 100644 --- a/pkgs/applications/version-management/mercurial/default.nix +++ b/pkgs/applications/version-management/mercurial/default.nix @@ -1,5 +1,7 @@ { stdenv, fetchurl, python, makeWrapper, docutils, unzip, hg-git, dulwich -, guiSupport ? false, tk ? null, curses, cacert }: +, guiSupport ? false, tk ? null, curses, cacert + +, ApplicationServices }: let version = "3.3.3"; @@ -17,7 +19,8 @@ stdenv.mkDerivation { inherit python; # pass it so that the same version can be used in hg2git pythonPackages = [ curses ]; - buildInputs = [ python makeWrapper docutils unzip ]; + buildInputs = [ python makeWrapper docutils unzip ] + ++ stdenv.lib.optional stdenv.isDarwin ApplicationServices; makeFlags = "PREFIX=$(out)"; diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index dadca8f68610..6df02e2aa893 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -11776,6 +11776,7 @@ let mercurial = callPackage ../applications/version-management/mercurial { inherit (pythonPackages) curses docutils hg-git dulwich; + inherit (darwin.apple_sdk.frameworks) ApplicationServices; guiSupport = false; # use mercurialFull to get hgk GUI }; From 80c62d132588f0fe7609118226617d7cd72faa43 Mon Sep 17 00:00:00 2001 From: Jude Taylor Date: Mon, 22 Jun 2015 14:11:21 -0700 Subject: [PATCH 150/259] darwin purity: ruby-1.9.3 --- pkgs/development/interpreters/ruby/ruby-1.9.3.nix | 4 +++- pkgs/top-level/all-packages.nix | 4 +++- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/pkgs/development/interpreters/ruby/ruby-1.9.3.nix b/pkgs/development/interpreters/ruby/ruby-1.9.3.nix index c53a012d7537..f0da9173bac3 100644 --- a/pkgs/development/interpreters/ruby/ruby-1.9.3.nix +++ b/pkgs/development/interpreters/ruby/ruby-1.9.3.nix @@ -6,6 +6,7 @@ , groff, docSupport ? false , libyaml, yamlSupport ? true , ruby_1_9_3, autoreconfHook, bison, useRailsExpress ? true +, libiconv, libobjc }: let @@ -44,7 +45,8 @@ stdenv.mkDerivation rec { # support is not enabled, so add readline to the build inputs if curses # support is disabled (if it's enabled, we already have it) and we're # running on darwin - ++ (op (!cursesSupport && stdenv.isDarwin) readline); + ++ (op (!cursesSupport && stdenv.isDarwin) readline) + ++ (ops stdenv.isDarwin [ libiconv libobjc ]); enableParallelBuilding = true; diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 6df02e2aa893..4a7384b587b7 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -4965,7 +4965,9 @@ let bundlerEnv = callPackage ../development/interpreters/ruby/bundler-env { }; ruby_1_8_7 = callPackage ../development/interpreters/ruby/ruby-1.8.7.nix { }; - ruby_1_9_3 = callPackage ../development/interpreters/ruby/ruby-1.9.3.nix { }; + ruby_1_9_3 = callPackage ../development/interpreters/ruby/ruby-1.9.3.nix { + inherit (darwin) libobjc; + }; ruby_2_0_0 = lowPrio (callPackage ../development/interpreters/ruby/ruby-2.0.0.nix { }); ruby_2_1_0 = lowPrio (callPackage ../development/interpreters/ruby/ruby-2.1.0.nix { }); ruby_2_1_1 = lowPrio (callPackage ../development/interpreters/ruby/ruby-2.1.1.nix { }); From d2167b3f5de8c3e09446b1506f37da19022dcd4c Mon Sep 17 00:00:00 2001 From: Jude Taylor Date: Mon, 22 Jun 2015 14:11:40 -0700 Subject: [PATCH 151/259] darwin purity: libnatspec --- pkgs/development/libraries/libnatspec/default.nix | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/pkgs/development/libraries/libnatspec/default.nix b/pkgs/development/libraries/libnatspec/default.nix index 985745c38986..7dafe3434f9f 100644 --- a/pkgs/development/libraries/libnatspec/default.nix +++ b/pkgs/development/libraries/libnatspec/default.nix @@ -17,7 +17,6 @@ stdenv.mkDerivation (rec { maintainers = [ stdenv.lib.maintainers.urkud ]; }; } // stdenv.lib.optionalAttrs (!stdenv.isLinux) { - NIX_CFLAGS_COMPILE = "-I${libiconv}/include"; - - NIX_CFLAGS_LINK = "-L${libiconv}/lib -liconv"; + NIX_LDFLAGS = "-liconv"; + propagatedBuildInputs = [ libiconv ]; }) From bf95812c995fba710c51c2147ff66758bdaff5ed Mon Sep 17 00:00:00 2001 From: Jude Taylor Date: Mon, 22 Jun 2015 14:11:48 -0700 Subject: [PATCH 152/259] darwin purity: pixman --- pkgs/development/libraries/pixman/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/development/libraries/pixman/default.nix b/pkgs/development/libraries/pixman/default.nix index d50c0c5d69c5..74d7706ec59f 100644 --- a/pkgs/development/libraries/pixman/default.nix +++ b/pkgs/development/libraries/pixman/default.nix @@ -14,7 +14,7 @@ stdenv.mkDerivation rec { postInstall = glib.flattenInclude; - patches = stdenv.lib.optional stdenv.cc.isClang ./fix-clang36.patch; + patches = stdenv.lib.optional stdenv.isDarwin ./fix-clang36.patch; meta = { homepage = http://pixman.org; From 9f6f29944888696554e313a885a833e914208f69 Mon Sep 17 00:00:00 2001 From: Jude Taylor Date: Mon, 22 Jun 2015 17:00:15 -0700 Subject: [PATCH 153/259] darwin purity: subversion --- pkgs/applications/version-management/subversion/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/applications/version-management/subversion/default.nix b/pkgs/applications/version-management/subversion/default.nix index ef400af73089..c28459018cae 100644 --- a/pkgs/applications/version-management/subversion/default.nix +++ b/pkgs/applications/version-management/subversion/default.nix @@ -37,7 +37,7 @@ stdenv.mkDerivation (rec { ${if httpServer then "--with-apxs=${apacheHttpd}/bin/apxs" else "--without-apxs"} ${if pythonBindings || perlBindings then "--with-swig=${swig}" else "--without-swig"} ${if javahlBindings then "--enable-javahl --with-jdk=${jdk}" else ""} - ${if stdenv.isDarwin then "--enable-keychain" else "--disable-keychain"} + --disable-keychain ${if saslSupport then "--with-sasl=${sasl}" else "--without-sasl"} ${if httpSupport then "--with-serf=${serf}" else "--without-serf"} --with-zlib=${zlib} From 4fd74930ce41757d5994e1d6db073950ca7313a5 Mon Sep 17 00:00:00 2001 From: Jude Taylor Date: Mon, 22 Jun 2015 17:00:28 -0700 Subject: [PATCH 154/259] darwin purity: gdk-pixbuf --- pkgs/development/libraries/gdk-pixbuf/default.nix | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/pkgs/development/libraries/gdk-pixbuf/default.nix b/pkgs/development/libraries/gdk-pixbuf/default.nix index 1fa57b5adb58..fafff05a032c 100644 --- a/pkgs/development/libraries/gdk-pixbuf/default.nix +++ b/pkgs/development/libraries/gdk-pixbuf/default.nix @@ -26,7 +26,8 @@ stdenv.mkDerivation rec { + stdenv.lib.optionalString (gobjectIntrospection != null) " --enable-introspection=yes" ; - doCheck = true; + # Seems to randomly fail sometimes with a bus error. FIXME + doCheck = !stdenv.isDarwin; postInstall = "rm -rf $out/share/gtk-doc"; From d0951cb68dae675269232464ee1a46bd614b5036 Mon Sep 17 00:00:00 2001 From: Jude Taylor Date: Mon, 22 Jun 2015 17:00:44 -0700 Subject: [PATCH 155/259] darwin purity: recode --- pkgs/tools/text/recode/default.nix | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/pkgs/tools/text/recode/default.nix b/pkgs/tools/text/recode/default.nix index bf95125b208a..004a93f6ebdd 100644 --- a/pkgs/tools/text/recode/default.nix +++ b/pkgs/tools/text/recode/default.nix @@ -1,6 +1,5 @@ -# XXX: this may need -liconv on non-glibc systems.. - -{ stdenv, fetchFromGitHub, python, perl, autoconf, automake, libtool, intltool, flex, texinfo }: +{ stdenv, fetchFromGitHub, python, perl, autoconf, automake, libtool, intltool, flex, +texinfo, libiconv }: stdenv.mkDerivation rec { name = "recode-3.7-2fd838565"; @@ -12,7 +11,8 @@ stdenv.mkDerivation rec { sha256 = "06vyjqaraamcc5vka66mlvxj27ihccqc74aymv2wn8nphr2rhh03"; }; - nativeBuildInputs = [ python perl autoconf automake libtool intltool flex texinfo ]; + nativeBuildInputs = [ python perl autoconf automake libtool intltool flex texinfo + libiconv ]; preConfigure = '' # fix build with new automake, https://bugs.gentoo.org/show_bug.cgi?id=419455 From 33de26c029b4472bdb71adcae92d0dcc76ce76c2 Mon Sep 17 00:00:00 2001 From: Jude Taylor Date: Mon, 22 Jun 2015 17:00:57 -0700 Subject: [PATCH 156/259] darwin purity: wget --- pkgs/tools/networking/wget/default.nix | 27 +++++++++++++------------- 1 file changed, 13 insertions(+), 14 deletions(-) diff --git a/pkgs/tools/networking/wget/default.nix b/pkgs/tools/networking/wget/default.nix index 7277b2a1fe72..196bcd024d95 100644 --- a/pkgs/tools/networking/wget/default.nix +++ b/pkgs/tools/networking/wget/default.nix @@ -10,20 +10,19 @@ stdenv.mkDerivation rec { sha256 = "0dzv5xf9qxc2bp4cyifmaghh3h464wbm73xiwcrvckf1ynqbgxv7"; }; - preConfigure = stdenv.lib.optionalString doCheck - '' for i in "doc/texi2pod.pl" "util/rmold.pl" - do - sed -i "$i" -e 's|/usr/bin.*perl|${perl}/bin/perl|g' - done - - # Work around lack of DNS resolution in chroots. - for i in "tests/"*.pm "tests/"*.px - do - sed -i "$i" -e's/localhost/127.0.0.1/g' - done - '' + stdenv.lib.optionalString stdenv.isDarwin '' - export LIBS="-liconv -lintl" - ''; + preConfigure = '' + for i in "doc/texi2pod.pl" "util/rmold.pl"; do + sed -i "$i" -e 's|/usr/bin.*perl|${perl}/bin/perl|g' + done + '' + stdenv.lib.optionalString doCheck '' + # Work around lack of DNS resolution in chroots. + for i in "tests/"*.pm "tests/"*.px + do + sed -i "$i" -e's/localhost/127.0.0.1/g' + done + '' + stdenv.lib.optionalString stdenv.isDarwin '' + export LIBS="-liconv -lintl" + ''; nativeBuildInputs = [ gettext pkgconfig ]; buildInputs = [ libidn libiconv libpsl ] From 7e4f41b16f275f57546d8e0e23a20c7d650630a9 Mon Sep 17 00:00:00 2001 From: Jude Taylor Date: Wed, 24 Jun 2015 17:13:40 -0700 Subject: [PATCH 157/259] patch pinentry to work with ncurses --- pkgs/tools/security/pinentry/default.nix | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/pkgs/tools/security/pinentry/default.nix b/pkgs/tools/security/pinentry/default.nix index 6c87d8062eca..7b8e2fe27616 100644 --- a/pkgs/tools/security/pinentry/default.nix +++ b/pkgs/tools/security/pinentry/default.nix @@ -19,6 +19,10 @@ stdenv.mkDerivation rec { buildInputs = [ libcap gtk2 ncurses qt4 ]; + prePatch = '' + substituteInPlace pinentry/pinentry-curses.c --replace ncursesw ncurses + ''; + # configure cannot find moc on its own preConfigure = stdenv.lib.optionalString (qt4 != null) '' export QTDIR="${qt4}" From 942cde614bb1ff13d8fa94598aaa69d38942e98e Mon Sep 17 00:00:00 2001 From: Jude Taylor Date: Wed, 24 Jun 2015 17:16:09 -0700 Subject: [PATCH 158/259] darwin purity: rustc --- pkgs/development/compilers/rustc/generic.nix | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/pkgs/development/compilers/rustc/generic.nix b/pkgs/development/compilers/rustc/generic.nix index d1091643f779..25504dadf418 100644 --- a/pkgs/development/compilers/rustc/generic.nix +++ b/pkgs/development/compilers/rustc/generic.nix @@ -84,6 +84,8 @@ stdenv.mkDerivation { inherit version; inherit meta; + __impureHostDeps = [ "/usr/lib/libedit.3.dylib" ]; + src = if isRelease then fetchzip { url = "http://static.rust-lang.org/dist/rustc-${version}-src.tar.gz"; @@ -107,16 +109,16 @@ stdenv.mkDerivation { installPhase = '' mkdir -p "$out" cp -r bin "$out/bin" - '' + (if stdenv.isLinux then '' + '' + stdenv.lib.optionalString stdenv.isLinux '' patchelf --interpreter "${stdenv.glibc}/lib/${stdenv.cc.dynamicLinker}" \ --set-rpath "${stdenv.cc.cc}/lib/:${stdenv.cc.cc}/lib64/" \ "$out/bin/rustc" - '' else ""); + ''; }; configureFlags = configureFlags - ++ [ "--enable-local-rust" "--local-rust-root=$snapshot" ] - ++ stdenv.lib.optional (stdenv.cc ? clang) "--enable-clang"; + ++ [ "--enable-local-rust" "--local-rust-root=$snapshot" "--enable-rpath" ] + ++ stdenv.lib.optional (stdenv.cc.cc ? isClang) "--enable-clang"; inherit patches; @@ -132,7 +134,8 @@ stdenv.mkDerivation { --replace /bin/echo "${coreutils}/bin/echo" ''; - buildInputs = [ which file perl curl python27 makeWrapper git valgrind procps ]; + buildInputs = [ which file perl curl python27 makeWrapper git ] + ++ stdenv.lib.optionals (!stdenv.isDarwin) [ procps valgrind ]; enableParallelBuilding = true; From 616ed6ee152ac16dd617fbbab2ee275e2e36d401 Mon Sep 17 00:00:00 2001 From: Jude Taylor Date: Fri, 26 Jun 2015 09:53:10 -0700 Subject: [PATCH 159/259] darwin purity: libev --- pkgs/development/libraries/libev/default.nix | 4 +++- pkgs/development/libraries/libev/noreturn.patch | 13 +++++++++++++ pkgs/top-level/python-packages.nix | 6 ++++++ 3 files changed, 22 insertions(+), 1 deletion(-) create mode 100644 pkgs/development/libraries/libev/noreturn.patch diff --git a/pkgs/development/libraries/libev/default.nix b/pkgs/development/libraries/libev/default.nix index ce7d7b9e2759..d27df16eb944 100644 --- a/pkgs/development/libraries/libev/default.nix +++ b/pkgs/development/libraries/libev/default.nix @@ -4,10 +4,12 @@ stdenv.mkDerivation rec { name = "libev-${version}"; version="4.19"; src = fetchurl { - url = "http://dist.schmorp.de/libev/${name}.tar.gz"; + url = "http://dist.schmorp.de/libev/Attic/${name}.tar.gz"; sha256 = "1jyw7qbl0spxqa0dccj9x1jsw7cj7szff43cq4acmklnra4mzz48"; }; + patches = [ ./noreturn.patch ]; + # Version 4.19 is not valid C11 (which Clang default to) # Check if this is still necessary on upgrade NIX_CFLAGS_COMPILE = if stdenv.cc.isClang then "-std=c99" else null; diff --git a/pkgs/development/libraries/libev/noreturn.patch b/pkgs/development/libraries/libev/noreturn.patch new file mode 100644 index 000000000000..85e2eaee6b47 --- /dev/null +++ b/pkgs/development/libraries/libev/noreturn.patch @@ -0,0 +1,13 @@ +diff --git a/ev.c b/ev.c +index 6f36c6d..b8a1c5f 100644 +--- a/ev.c ++++ b/ev.c +@@ -1026,7 +1026,7 @@ ecb_inline uint64_t ecb_rotr64 (uint64_t x, unsigned int count) { return (x << ( + #define ecb_unreachable() __builtin_unreachable () + #else + /* this seems to work fine, but gcc always emits a warning for it :/ */ +- ecb_inline void ecb_unreachable (void) ecb_noreturn; ++ ecb_inline ecb_noreturn void ecb_unreachable (void); + ecb_inline void ecb_unreachable (void) { } + #endif + diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index f315b2e24abe..87acf28cef9a 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -5743,6 +5743,12 @@ let sha256 = "0cds7yvwdlqmd590i59vzxaviwxk4js6dkhnmdxb3p1xac7wmq9s"; }; + patchPhase = '' + pushd libev + patch -p1 < ${../development/libraries/libev/noreturn.patch} + popd + ''; + buildInputs = with self; [ pkgs.libev ]; propagatedBuildInputs = optionals (!isPyPy) [ self.greenlet ]; From 20268f6382dccc77bc9aba0e9b067c3fdf03613e Mon Sep 17 00:00:00 2001 From: Jude Taylor Date: Fri, 26 Jun 2015 09:53:28 -0700 Subject: [PATCH 160/259] darwin purity: libusb1 (depend on udev on linux only) --- pkgs/development/libraries/libusb1/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/development/libraries/libusb1/default.nix b/pkgs/development/libraries/libusb1/default.nix index b2d75e155540..75d6bdb4cc6a 100644 --- a/pkgs/development/libraries/libusb1/default.nix +++ b/pkgs/development/libraries/libusb1/default.nix @@ -15,7 +15,7 @@ stdenv.mkDerivation rec { NIX_LDFLAGS = stdenv.lib.optionalString stdenv.isLinux "-lgcc_s"; - preFixup = '' + preFixup = stdenv.lib.optionalString stdenv.isLinux '' sed 's,-ludev,-L${udev}/lib -ludev,' -i $out/lib/libusb-1.0.la ''; From 363d1bf07a8d3bf067b9e7691ea58d29ca40eb97 Mon Sep 17 00:00:00 2001 From: Jude Taylor Date: Fri, 26 Jun 2015 09:53:44 -0700 Subject: [PATCH 161/259] darwin purity: vim --- pkgs/applications/editors/vim/default.nix | 10 +- pkgs/applications/editors/vim/impure-deps.nix | 129 ++++++++++++++++++ pkgs/top-level/all-packages.nix | 5 +- 3 files changed, 141 insertions(+), 3 deletions(-) create mode 100644 pkgs/applications/editors/vim/impure-deps.nix diff --git a/pkgs/applications/editors/vim/default.nix b/pkgs/applications/editors/vim/default.nix index 7a1ce7aa1f24..4d1840ab8957 100644 --- a/pkgs/applications/editors/vim/default.nix +++ b/pkgs/applications/editors/vim/default.nix @@ -1,4 +1,7 @@ -{ stdenv, fetchhg, ncurses, gettext, pkgconfig }: +{ stdenv, fetchhg, ncurses, gettext, pkgconfig + +# apple frameworks +, CoreServices, CoreData, Cocoa, Foundation, libobjc }: stdenv.mkDerivation rec { name = "vim-${version}"; @@ -13,9 +16,12 @@ stdenv.mkDerivation rec { enableParallelBuilding = true; - buildInputs = [ ncurses pkgconfig ]; + buildInputs = [ ncurses pkgconfig ] + ++ stdenv.lib.optional stdenv.isDarwin [ CoreData CoreServices Cocoa Foundation libobjc ]; nativeBuildInputs = [ gettext ]; + __impureHostDeps = import ./impure-deps.nix; + configureFlags = [ "--enable-multibyte" "--enable-nls" diff --git a/pkgs/applications/editors/vim/impure-deps.nix b/pkgs/applications/editors/vim/impure-deps.nix new file mode 100644 index 000000000000..d6dc3a086278 --- /dev/null +++ b/pkgs/applications/editors/vim/impure-deps.nix @@ -0,0 +1,129 @@ +[ + "/System/Library/Frameworks/Accelerate.framework/Versions/A/Accelerate" + "/System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vImage.framework/Versions/A/vImage" + "/System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libBLAS.dylib" + "/System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libLAPACK.dylib" + "/System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libLinearAlgebra.dylib" + "/System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libvDSP.dylib" + "/System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libvMisc.dylib" + "/System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/vecLib" + "/System/Library/Frameworks/AppKit.framework/Versions/C/AppKit" + "/System/Library/Frameworks/ApplicationServices.framework/Versions/A/ApplicationServices" + "/System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ATS.framework/Versions/A/ATS" + "/System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ATS.framework/Versions/A/Resources/libFontParser.dylib" + "/System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ATS.framework/Versions/A/Resources/libFontRegistry.dylib" + "/System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ColorSync.framework/Versions/A/ColorSync" + "/System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/HIServices.framework/Versions/A/HIServices" + "/System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/LangAnalysis.framework/Versions/A/LangAnalysis" + "/System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/PrintCore.framework/Versions/A/PrintCore" + "/System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/QD.framework/Versions/A/QD" + "/System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/SpeechSynthesis.framework/Versions/A/SpeechSynthesis" + "/System/Library/Frameworks/AudioToolbox.framework/Versions/A/AudioToolbox" + "/System/Library/Frameworks/AudioUnit.framework/Versions/A/AudioUnit" + "/System/Library/Frameworks/CFNetwork.framework/Versions/A/CFNetwork" + "/System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/CarbonSound.framework/Versions/A/CarbonSound" + "/System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/HIToolbox.framework/Versions/A/HIToolbox" + "/System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/Ink.framework/Versions/A/Ink" + "/System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/SpeechRecognition.framework/Versions/A/SpeechRecognition" + "/System/Library/Frameworks/Cocoa.framework/Versions/A/Cocoa" + "/System/Library/Frameworks/CoreAudio.framework/Versions/A/CoreAudio" + "/System/Library/Frameworks/CoreBluetooth.framework/Versions/A/CoreBluetooth" + "/System/Library/Frameworks/CoreData.framework/Versions/A/CoreData" + "/System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation" + "/System/Library/Frameworks/CoreGraphics.framework/Versions/A/CoreGraphics" + "/System/Library/Frameworks/CoreServices.framework/Versions/A/CoreServices" + "/System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/AE.framework/Versions/A/AE" + "/System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/CarbonCore.framework/Versions/A/CarbonCore" + "/System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/DictionaryServices.framework/Versions/A/DictionaryServices" + "/System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/FSEvents.framework/Versions/A/FSEvents" + "/System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/LaunchServices.framework/Versions/A/LaunchServices" + "/System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/Metadata.framework/Versions/A/Metadata" + "/System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/OSServices.framework/Versions/A/OSServices" + "/System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/SearchKit.framework/Versions/A/SearchKit" + "/System/Library/Frameworks/CoreText.framework/Versions/A/CoreText" + "/System/Library/Frameworks/CoreVideo.framework/Versions/A/CoreVideo" + "/System/Library/Frameworks/CoreWLAN.framework/Versions/A/CoreWLAN" + "/System/Library/Frameworks/DiskArbitration.framework/Versions/A/DiskArbitration" + "/System/Library/Frameworks/Foundation.framework/Versions/C/Foundation" + "/System/Library/Frameworks/GSS.framework/Versions/A/GSS" + "/System/Library/Frameworks/IOBluetooth.framework/Versions/A/IOBluetooth" + "/System/Library/Frameworks/IOKit.framework/Versions/A/IOKit" + "/System/Library/Frameworks/IOSurface.framework/Versions/A/IOSurface" + "/System/Library/Frameworks/ImageIO.framework/Versions/A/ImageIO" + "/System/Library/Frameworks/ImageIO.framework/Versions/A/Resources/libGIF.dylib" + "/System/Library/Frameworks/ImageIO.framework/Versions/A/Resources/libJP2.dylib" + "/System/Library/Frameworks/ImageIO.framework/Versions/A/Resources/libJPEG.dylib" + "/System/Library/Frameworks/ImageIO.framework/Versions/A/Resources/libPng.dylib" + "/System/Library/Frameworks/ImageIO.framework/Versions/A/Resources/libRadiance.dylib" + "/System/Library/Frameworks/ImageIO.framework/Versions/A/Resources/libTIFF.dylib" + "/System/Library/Frameworks/Kerberos.framework/Versions/A/Kerberos" + "/System/Library/Frameworks/NetFS.framework/Versions/A/NetFS" + "/System/Library/Frameworks/OpenCL.framework/Versions/A/OpenCL" + "/System/Library/Frameworks/OpenDirectory.framework/Versions/A/Frameworks/CFOpenDirectory.framework/Versions/A/CFOpenDirectory" + "/System/Library/Frameworks/OpenDirectory.framework/Versions/A/OpenDirectory" + "/System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libCVMSPluginSupport.dylib" + "/System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libCoreVMClient.dylib" + "/System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGFXShared.dylib" + "/System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGL.dylib" + "/System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGLImage.dylib" + "/System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGLU.dylib" + "/System/Library/Frameworks/OpenGL.framework/Versions/A/OpenGL" + "/System/Library/Frameworks/QuartzCore.framework/Versions/A/Frameworks/CoreImage.framework/Versions/A/CoreImage" + "/System/Library/Frameworks/QuartzCore.framework/Versions/A/QuartzCore" + "/System/Library/Frameworks/Security.framework/Versions/A/Security" + "/System/Library/Frameworks/SecurityFoundation.framework/Versions/A/SecurityFoundation" + "/System/Library/Frameworks/ServiceManagement.framework/Versions/A/ServiceManagement" + "/System/Library/Frameworks/SystemConfiguration.framework/Versions/A/SystemConfiguration" + "/System/Library/PrivateFrameworks/Apple80211.framework/Versions/A/Apple80211" + "/System/Library/PrivateFrameworks/AppleJPEG.framework/Versions/A/AppleJPEG" + "/System/Library/PrivateFrameworks/AppleVPA.framework/Versions/A/AppleVPA" + "/System/Library/PrivateFrameworks/Backup.framework/Versions/A/Backup" + "/System/Library/PrivateFrameworks/ChunkingLibrary.framework/Versions/A/ChunkingLibrary" + "/System/Library/PrivateFrameworks/CommonAuth.framework/Versions/A/CommonAuth" + "/System/Library/PrivateFrameworks/CoreSymbolication.framework/Versions/A/CoreSymbolication" + "/System/Library/PrivateFrameworks/CoreUI.framework/Versions/A/CoreUI" + "/System/Library/PrivateFrameworks/CoreWiFi.framework/Versions/A/CoreWiFi" + "/System/Library/PrivateFrameworks/CrashReporterSupport.framework/Versions/A/CrashReporterSupport" + "/System/Library/PrivateFrameworks/DataDetectorsCore.framework/Versions/A/DataDetectorsCore" + "/System/Library/PrivateFrameworks/DebugSymbols.framework/Versions/A/DebugSymbols" + "/System/Library/PrivateFrameworks/DesktopServicesPriv.framework/Versions/A/DesktopServicesPriv" + "/System/Library/PrivateFrameworks/FaceCore.framework/Versions/A/FaceCore" + "/System/Library/PrivateFrameworks/GenerationalStorage.framework/Versions/A/GenerationalStorage" + "/System/Library/PrivateFrameworks/Heimdal.framework/Versions/A/Heimdal" + "/System/Library/PrivateFrameworks/IconServices.framework/Versions/A/IconServices" + "/System/Library/PrivateFrameworks/LanguageModeling.framework/Versions/A/LanguageModeling" + "/System/Library/PrivateFrameworks/MultitouchSupport.framework/Versions/A/MultitouchSupport" + "/System/Library/PrivateFrameworks/NetAuth.framework/Versions/A/NetAuth" + "/System/Library/PrivateFrameworks/PerformanceAnalysis.framework/Versions/A/PerformanceAnalysis" + "/System/Library/PrivateFrameworks/RemoteViewServices.framework/Versions/A/RemoteViewServices" + "/System/Library/PrivateFrameworks/Sharing.framework/Versions/A/Sharing" + "/System/Library/PrivateFrameworks/SpeechRecognitionCore.framework/Versions/A/SpeechRecognitionCore" + "/System/Library/PrivateFrameworks/Symbolication.framework/Versions/A/Symbolication" + "/System/Library/PrivateFrameworks/TCC.framework/Versions/A/TCC" + "/System/Library/PrivateFrameworks/UIFoundation.framework/Versions/A/UIFoundation" + "/System/Library/PrivateFrameworks/Ubiquity.framework/Versions/A/Ubiquity" + "/System/Library/PrivateFrameworks/login.framework/Versions/A/Frameworks/loginsupport.framework/Versions/A/loginsupport" + "/usr/lib/libCRFSuite.dylib" + "/usr/lib/libOpenScriptingUtil.dylib" + "/usr/lib/libarchive.2.dylib" + "/usr/lib/libbsm.0.dylib" + "/usr/lib/libbz2.1.0.dylib" + "/usr/lib/libc++.1.dylib" + "/usr/lib/libc++abi.dylib" + "/usr/lib/libcmph.dylib" + "/usr/lib/libcups.2.dylib" + "/usr/lib/libextension.dylib" + "/usr/lib/libheimdal-asn1.dylib" + "/usr/lib/libiconv.2.dylib" + "/usr/lib/libicucore.A.dylib" + "/usr/lib/liblangid.dylib" + "/usr/lib/liblzma.5.dylib" + "/usr/lib/libmecabra.dylib" + "/usr/lib/libpam.2.dylib" + "/usr/lib/libresolv.9.dylib" + "/usr/lib/libsqlite3.dylib" + "/usr/lib/libxar.1.dylib" + "/usr/lib/libxml2.2.dylib" + "/usr/lib/libxslt.1.dylib" + "/usr/lib/libz.1.dylib" +] diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 4a7384b587b7..4c68386b17cb 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -12718,7 +12718,10 @@ let flup = pythonPackages.flup; }; - vim = callPackage ../applications/editors/vim { }; + vim = callPackage ../applications/editors/vim { + inherit (darwin.apple_sdk.frameworks) CoreServices Cocoa Foundation CoreData; + inherit (darwin) libobjc; + }; macvim = callPackage ../applications/editors/vim/macvim.nix { stdenv = clangStdenv; }; From 05fe0da05950b57b15555da876038f8c5321f3b7 Mon Sep 17 00:00:00 2001 From: Jude Taylor Date: Fri, 26 Jun 2015 09:53:58 -0700 Subject: [PATCH 162/259] remove obsolete part of gyp patch --- .../python-modules/gyp/no-darwin-cflags.patch | 13 ------------- 1 file changed, 13 deletions(-) diff --git a/pkgs/development/python-modules/gyp/no-darwin-cflags.patch b/pkgs/development/python-modules/gyp/no-darwin-cflags.patch index 353cc133b537..798d0f0b16d0 100644 --- a/pkgs/development/python-modules/gyp/no-darwin-cflags.patch +++ b/pkgs/development/python-modules/gyp/no-darwin-cflags.patch @@ -22,19 +22,6 @@ Index: gyp/pylib/gyp/xcode_emulation.py self._Appendf(cflags, 'GCC_OPTIMIZATION_LEVEL', '-O%s', default='s') if self._Test('GCC_GENERATE_DEBUGGING_SYMBOLS', 'YES', default='YES'): -@@ -519,12 +513,6 @@ - if self._Test('GCC_SYMBOLS_PRIVATE_EXTERN', 'YES', default='NO'): - cflags.append('-fvisibility=hidden') - -- if self._Test('GCC_TREAT_WARNINGS_AS_ERRORS', 'YES', default='NO'): -- cflags.append('-Werror') -- -- if self._Test('GCC_WARN_ABOUT_MISSING_NEWLINE', 'YES', default='NO'): -- cflags.append('-Wnewline-eof') -- - # In Xcode, this is only activated when GCC_COMPILER_VERSION is clang or - # llvm-gcc. It also requires a fairly recent libtool, and - # if the system clang isn't used, DYLD_LIBRARY_PATH needs to contain the @@ -553,7 +541,6 @@ # TODO: Supporting fat binaries will be annoying. self._WarnUnimplemented('ARCHS') From e130e9d3a3225622194b4edbd9073547d6acb984 Mon Sep 17 00:00:00 2001 From: Jude Taylor Date: Fri, 26 Jun 2015 09:54:29 -0700 Subject: [PATCH 163/259] fix bundler hash --- pkgs/development/interpreters/ruby/bundler-head.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/development/interpreters/ruby/bundler-head.nix b/pkgs/development/interpreters/ruby/bundler-head.nix index 6edc01041f23..2087485e3ef3 100644 --- a/pkgs/development/interpreters/ruby/bundler-head.nix +++ b/pkgs/development/interpreters/ruby/bundler-head.nix @@ -5,7 +5,7 @@ buildRubyGem { src = fetchgit { url = "https://github.com/bundler/bundler.git"; rev = "a2343c9eabf5403d8ffcbca4dea33d18a60fc157"; - sha256 = "11pbg71bhp66nyhwk0cpbcn1fhp4amv8sr2vx8dw83dcnqqafn92"; + sha256 = "1vzm21fc37w89psxfk2fzi64zyb3gyhzr9smd6jk2r2kvgp6d38b"; leaveDotGit = true; }; dontPatchShebangs = true; From b6322e121583f8d31d6514e7dfd1195906b928e3 Mon Sep 17 00:00:00 2001 From: "William A. Kennington III" Date: Fri, 26 Jun 2015 22:04:45 -0700 Subject: [PATCH 164/259] krb5: Break out into a lib and not lib version --- nixos/modules/config/krb5.nix | 2 +- pkgs/development/libraries/kerberos/krb5.nix | 54 ++++++++++++++------ pkgs/top-level/all-packages.nix | 7 +-- 3 files changed, 40 insertions(+), 23 deletions(-) diff --git a/nixos/modules/config/krb5.nix b/nixos/modules/config/krb5.nix index 991b5b16cc68..d2198e4ac1ae 100644 --- a/nixos/modules/config/krb5.nix +++ b/nixos/modules/config/krb5.nix @@ -48,7 +48,7 @@ in config = mkIf config.krb5.enable { - environment.systemPackages = [ pkgs.krb5 ]; + environment.systemPackages = [ pkgs.krb5Full ]; environment.etc."krb5.conf".text = '' diff --git a/pkgs/development/libraries/kerberos/krb5.nix b/pkgs/development/libraries/kerberos/krb5.nix index 41c570ee554e..4a97ab8fb547 100644 --- a/pkgs/development/libraries/kerberos/krb5.nix +++ b/pkgs/development/libraries/kerberos/krb5.nix @@ -1,41 +1,61 @@ -{ stdenv, fetchurl, pkgconfig, perl, ncurses, yacc, openssl, openldap, bootstrap_cmds }: +{ stdenv, fetchurl, pkgconfig, perl, yacc, bootstrap_cmds +, openssl, openldap, libedit + +# Extra Arguments +, type ? "" +}: let - pname = "krb5"; - version = "1.13.1"; - name = "${pname}-${version}"; - webpage = http://web.mit.edu/kerberos/; + libOnly = type == "lib"; in - -stdenv.mkDerivation (rec { - inherit name; +with stdenv.lib; +stdenv.mkDerivation rec { + name = "${type}krb5-${version}"; + version = "1.13.1"; src = fetchurl { - url = "${webpage}dist/krb5/1.13/${name}-signed.tar"; + url = "${meta.homepage}dist/krb5/1.13/krb5-${version}-signed.tar"; sha256 = "0gk6jvr64rf6l4xcyxn8i3fr5d1j7dhqvwyv3vw2qdkzz7yjkxjd"; }; - buildInputs = [ pkgconfig perl ncurses yacc openssl openldap ] + nativeBuildInputs = [ pkgconfig perl yacc ] # Provides the mig command used by the build scripts - ++ stdenv.lib.optional stdenv.isDarwin bootstrap_cmds ; + ++ stdenv.lib.optional stdenv.isDarwin bootstrap_cmds; + buildInputs = [ openssl ] + ++ optionals (!libOnly) [ openldap libedit ]; unpackPhase = '' tar -xf $src - tar -xzf ${name}.tar.gz - cd ${name}/src + tar -xzf krb5-${version}.tar.gz + cd krb5-${version}/src ''; - configureFlags = [ "--with-tcl=no" ]; + buildPhase = optionalString libOnly '' + (cd util; make -j $NIX_BUILD_CORES) + (cd include; make -j $NIX_BUILD_CORES) + (cd lib; make -j $NIX_BUILD_CORES) + (cd build-tools; make -j $NIX_BUILD_CORES) + ''; + + installPhase = optionalString libOnly '' + mkdir -p $out/{bin,include/{gssapi,gssrpc,kadm5,krb5},lib/pkgconfig,sbin,share/{et,man/man1}} + (cd util; make -j $NIX_BUILD_CORES install) + (cd include; make -j $NIX_BUILD_CORES install) + (cd lib; make -j $NIX_BUILD_CORES install) + (cd build-tools; make -j $NIX_BUILD_CORES install) + rm -rf $out/{sbin,share} + find $out/bin -type f | grep -v 'krb5-config' | xargs rm + ''; enableParallelBuilding = true; meta = with stdenv.lib; { description = "MIT Kerberos 5"; - homepage = webpage; - license = "MPL"; + homepage = http://web.mit.edu/kerberos/; + license = licenses.mit; platforms = platforms.unix; maintainers = with maintainers; [ wkennington ]; }; passthru.implementation = "krb5"; -}) +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 1d86ca00d6cf..33424e100efa 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -6526,13 +6526,10 @@ let kinetic-cpp-client = callPackage ../development/libraries/kinetic-cpp-client { }; - krb5 = callPackage ../development/libraries/kerberos/krb5.nix { - openldap = openldap.override { - cyrus_sasl = cyrus_sasl.override { kerberos = null; }; - }; + krb5Full = callPackage ../development/libraries/kerberos/krb5.nix { inherit (darwin) bootstrap_cmds; }; - libkrb5 = krb5; + libkrb5 = krb5Full.override { type = "lib"; }; LASzip = callPackage ../development/libraries/LASzip { }; From ccc47a6a420f5d7f3ee7c677c994505444b88234 Mon Sep 17 00:00:00 2001 From: "William A. Kennington III" Date: Fri, 26 Jun 2015 22:06:16 -0700 Subject: [PATCH 165/259] kerberos: Use mit by default as it is has more upstream support / bugfixes --- pkgs/top-level/all-packages.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 33424e100efa..247ff38acd77 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -6385,9 +6385,9 @@ let hamlib = callPackage ../development/libraries/hamlib { }; - # TODO : Add MIT Kerberos and let admin choose. - # TODO : Fix kerberos on Darwin - kerberos = if stdenv.isDarwin then null else libheimdal; + # TODO : Let admin choose. + # We are using mit-krb5 because it is better maintained + kerberos = libkrb5; heimdal = callPackage ../development/libraries/kerberos/heimdal.nix { openldap = openldap.override { From 769ea09360b8bbc8e5410dfac1d05206ee38b2eb Mon Sep 17 00:00:00 2001 From: "William A. Kennington III" Date: Fri, 26 Jun 2015 22:41:25 -0700 Subject: [PATCH 166/259] heimdal: Use the git version and breakout into a library --- .../libraries/kerberos/heimdal.nix | 71 +++++++++++++------ pkgs/top-level/all-packages.nix | 9 +-- 2 files changed, 50 insertions(+), 30 deletions(-) diff --git a/pkgs/development/libraries/kerberos/heimdal.nix b/pkgs/development/libraries/kerberos/heimdal.nix index 320e161d3da8..f61af50088b8 100644 --- a/pkgs/development/libraries/kerberos/heimdal.nix +++ b/pkgs/development/libraries/kerberos/heimdal.nix @@ -1,54 +1,79 @@ -{ stdenv, fetchurl, pkgconfig, flex, yacc, readline, openldap, libcap_ng -, sqlite, db, ncurses, openssl, cyrus_sasl +{ stdenv, fetchFromGitHub, autoreconfHook, pkgconfig, python, perl, yacc, flex +, texinfo, perlPackages +, openldap, libcap_ng, sqlite, openssl, db, libedit, pam + +# Extra Args +, type ? "" }: +let + libOnly = type == "lib"; +in +with stdenv.lib; stdenv.mkDerivation rec { - name = "heimdal-1.5.3"; + name = "${type}heimdal-2015-06-17"; - src = fetchurl { - urls = [ - "http://www.h5l.org/dist/src/${name}.tar.gz" - "http://ftp.pdc.kth.se/pub/heimdal/src/${name}.tar.gz" - ]; - sha256 = "19gypf9vzfrs2bw231qljfl4cqc1riyg0ai0xmm1nd1wngnpphma"; + src = fetchFromGitHub { + owner = "heimdal"; + repo = "heimdal"; + rev = "be63a2914adcbea7d42d56e674ee6edb4883ebaf"; + sha256 = "147gv49gmy94y6f0x1vx523qni0frgcp3r7fill0r06rkfgfzc0j"; }; + nativeBuildInputs = [ autoreconfHook pkgconfig python perl yacc flex ] + ++ (with perlPackages; [ JSON ]) + ++ optional (!libOnly) texinfo; + buildInputs = [ libcap_ng sqlite openssl db libedit ] + ++ optionals (!libOnly) [ openldap pam ]; + ## ugly, X should be made an option configureFlags = [ + "--sysconfdir=/etc" + "--localstatedir=/var" "--enable-hdb-openldap-module" "--with-capng" - "--with-openldap=${openldap}" "--with-sqlite3=${sqlite}" - "--with-openssl-lib=${openssl}/lib" + "--with-berkeley-db=${db}" + "--with-libedit=${libedit}" + "--with-openssl=${openssl}" "--without-x" + ] ++ optionals (!libOnly) [ + "--with-openldap=${openldap}" ]; - preConfigure = '' - export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -pthread" + buildPhase = optionalString libOnly '' + (cd include; make -j $NIX_BUILD_CORES) + (cd lib; make -j $NIX_BUILD_CORES) + (cd tools; make -j $NIX_BUILD_CORES) + ''; + + installPhase = optionalString libOnly '' + (cd include; make -j $NIX_BUILD_CORES install) + (cd lib; make -j $NIX_BUILD_CORES install) + (cd tools; make -j $NIX_BUILD_CORES install) + rm -rf $out/{libexec,sbin,share} + find $out/bin -type f | grep -v 'krb5-config' | xargs rm ''; # We need to build hcrypt for applications like samba postBuild = '' - (cd lib/hcrypto; make) - (cd include/hcrypto; make) + (cd include/hcrypto; make -j $NIX_BUILD_CORES) + (cd lib/hcrypto; make -j $NIX_BUILD_CORES) ''; postInstall = '' # Install hcrypto - (cd lib/hcrypto; make install) - (cd include/hcrypto; make install) + (cd include/hcrypto; make -j $NIX_BUILD_CORES install) + (cd lib/hcrypto; make -j $NIX_BUILD_CORES install) - # dont succeed with --libexec=$out/sbin, so + # Doesn't succeed with --libexec=$out/sbin, so mv "$out/libexec/"* $out/sbin/ rmdir $out/libexec ''; - buildInputs = [ - pkgconfig flex yacc readline openldap libcap_ng sqlite db ncurses - cyrus_sasl openssl - ]; + enableParallelBuilding = true; - meta = with stdenv.lib; { + meta = { description = "an implementation of Kerberos 5 (and some more stuff) largely written in Sweden"; license = licenses.bsd3; platforms = platforms.linux; diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 247ff38acd77..a7f70abcee29 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -6389,13 +6389,8 @@ let # We are using mit-krb5 because it is better maintained kerberos = libkrb5; - heimdal = callPackage ../development/libraries/kerberos/heimdal.nix { - openldap = openldap.override { - cyrus_sasl = cyrus_sasl.override { kerberos = null; }; - }; - cyrus_sasl = cyrus_sasl.override { kerberos = null; }; - }; - libheimdal = heimdal; + heimdal = callPackage ../development/libraries/kerberos/heimdal.nix { }; + libheimdal = heimdal.override { type = "lib"; }; harfbuzz = callPackage ../development/libraries/harfbuzz { }; harfbuzz-icu = callPackage ../development/libraries/harfbuzz { From a13fe2db47fe10e9aeaec0b8a7b476ef9d865016 Mon Sep 17 00:00:00 2001 From: "William A. Kennington III" Date: Fri, 26 Jun 2015 22:41:58 -0700 Subject: [PATCH 167/259] Fix redundancy --- pkgs/development/libraries/kerberos/krb5.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/development/libraries/kerberos/krb5.nix b/pkgs/development/libraries/kerberos/krb5.nix index 4a97ab8fb547..dacd454111bb 100644 --- a/pkgs/development/libraries/kerberos/krb5.nix +++ b/pkgs/development/libraries/kerberos/krb5.nix @@ -49,7 +49,7 @@ stdenv.mkDerivation rec { enableParallelBuilding = true; - meta = with stdenv.lib; { + meta = { description = "MIT Kerberos 5"; homepage = http://web.mit.edu/kerberos/; license = licenses.mit; From 943b282800994bf09c4fb91c4b5ccd0cdbae4f3a Mon Sep 17 00:00:00 2001 From: "William A. Kennington III" Date: Fri, 26 Jun 2015 22:45:20 -0700 Subject: [PATCH 168/259] heimdal: Always install hcrypto --- pkgs/development/libraries/kerberos/heimdal.nix | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/pkgs/development/libraries/kerberos/heimdal.nix b/pkgs/development/libraries/kerberos/heimdal.nix index f61af50088b8..159b53b76500 100644 --- a/pkgs/development/libraries/kerberos/heimdal.nix +++ b/pkgs/development/libraries/kerberos/heimdal.nix @@ -45,12 +45,16 @@ stdenv.mkDerivation rec { (cd include; make -j $NIX_BUILD_CORES) (cd lib; make -j $NIX_BUILD_CORES) (cd tools; make -j $NIX_BUILD_CORES) + (cd include/hcrypto; make -j $NIX_BUILD_CORES) + (cd lib/hcrypto; make -j $NIX_BUILD_CORES) ''; installPhase = optionalString libOnly '' (cd include; make -j $NIX_BUILD_CORES install) (cd lib; make -j $NIX_BUILD_CORES install) (cd tools; make -j $NIX_BUILD_CORES install) + (cd include/hcrypto; make -j $NIX_BUILD_CORES install) + (cd lib/hcrypto; make -j $NIX_BUILD_CORES install) rm -rf $out/{libexec,sbin,share} find $out/bin -type f | grep -v 'krb5-config' | xargs rm ''; From 9c5ef0469c82839d66ba39d7b971e521d15f5bf8 Mon Sep 17 00:00:00 2001 From: "William A. Kennington III" Date: Fri, 26 Jun 2015 23:02:20 -0700 Subject: [PATCH 169/259] krb5: 1.13.1 -> 1.13.2 --- pkgs/development/libraries/kerberos/krb5.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/kerberos/krb5.nix b/pkgs/development/libraries/kerberos/krb5.nix index dacd454111bb..2e5e48891b82 100644 --- a/pkgs/development/libraries/kerberos/krb5.nix +++ b/pkgs/development/libraries/kerberos/krb5.nix @@ -11,11 +11,11 @@ in with stdenv.lib; stdenv.mkDerivation rec { name = "${type}krb5-${version}"; - version = "1.13.1"; + version = "1.13.2"; src = fetchurl { url = "${meta.homepage}dist/krb5/1.13/krb5-${version}-signed.tar"; - sha256 = "0gk6jvr64rf6l4xcyxn8i3fr5d1j7dhqvwyv3vw2qdkzz7yjkxjd"; + sha256 = "1qbdzyrws7d0q4filsibh28z54pd5l987jr0ygv43iq9085w6a75"; }; nativeBuildInputs = [ pkgconfig perl yacc ] From 559cbdaab74e69361cbd688b6ccf1789b7e30ef1 Mon Sep 17 00:00:00 2001 From: "William A. Kennington III" Date: Fri, 26 Jun 2015 23:07:10 -0700 Subject: [PATCH 170/259] heimdal: Rename to heimdalFull --- pkgs/top-level/all-packages.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index a7f70abcee29..e702f32a1fcf 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -6389,7 +6389,7 @@ let # We are using mit-krb5 because it is better maintained kerberos = libkrb5; - heimdal = callPackage ../development/libraries/kerberos/heimdal.nix { }; + heimdalFull = callPackage ../development/libraries/kerberos/heimdal.nix { }; libheimdal = heimdal.override { type = "lib"; }; harfbuzz = callPackage ../development/libraries/harfbuzz { }; From 637873d8fb4c49cd90813379f6ca7b54c9c97f14 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Sat, 27 Jun 2015 10:28:31 +0200 Subject: [PATCH 171/259] crypto++: fix tests by not using -O3, refactor Tests were segfaulting due to compilation with -O3, most likely since building with gcc-4.9. AFAIK it isn't generally safe/advisable to use -O3 anyway. Also do some cleanup and expression refactoring, mostly. --- .../libraries/crypto++/default.nix | 56 +++++++++---------- 1 file changed, 25 insertions(+), 31 deletions(-) diff --git a/pkgs/development/libraries/crypto++/default.nix b/pkgs/development/libraries/crypto++/default.nix index 053937f1c56d..788d488659af 100644 --- a/pkgs/development/libraries/crypto++/default.nix +++ b/pkgs/development/libraries/crypto++/default.nix @@ -1,4 +1,4 @@ -{ fetchurl, stdenv, unzip, libtool }: +{ fetchurl, stdenv, unzip }: stdenv.mkDerivation rec { name = "crypto++-5.6.2"; @@ -8,45 +8,38 @@ stdenv.mkDerivation rec { sha256 = "0x1mqpz1v071cfrw4grbw7z734cxnpry1qh2b6rsmcx6nkyd5gsw"; }; - patches = (stdenv.lib.optional (stdenv.system != "i686-cygwin") ./dll.patch) - ++ (stdenv.lib.optional stdenv.isDarwin ./GNUmakefile.patch); + patches = with stdenv; + lib.optional (system != "i686-cygwin") ./dll.patch + ++ lib.optional isDarwin ./GNUmakefile.patch; - buildInputs = [ unzip libtool ]; + buildInputs = [ unzip ]; - # Unpack the thing in a subdirectory. - unpackPhase = '' - echo "unpacking Crypto++ to \`${name}' from \`$PWD'..." - mkdir "${name}" && (cd "${name}" && unzip "$src") - sourceRoot="$PWD/${name}" - ''; + sourceRoot = "."; - cxxflags = if stdenv.isi686 then "-march=i686" else - if stdenv.isx86_64 then "-march=nocona -fPIC" else - ""; + configurePhase = let + marchflags = + if stdenv.isi686 then "-march=i686" else + if stdenv.isx86_64 then "-march=nocona -mtune=generic" else + ""; + in + '' + sed -i GNUmakefile \ + -e 's|-march=native|${marchflags} -fPIC|g' \ + -e 's|-mtune=native||g' \ + -e '/^CXXFLAGS =/s|-g ||' + ''; - configurePhase = '' - sed -i GNUmakefile \ - -e 's|-march=native|${cxxflags}|g' \ - -e 's|-mtune=native||g' \ - -e '/^CXXFLAGS =/s|-g -O2|-O3|' - ''; + enableParallelBuilding = true; - # I add what 'enableParallelBuilding' would add to the make call, - # if we were using the generic build phase. - buildPhase = '' - make PREFIX="$out" all libcryptopp.so -j$NIX_BUILD_CORES -l$NIX_BUILD_CORES - ''; - - # TODO: Installing cryptotest.exe doesn't seem to be necessary. We run - # that binary during this build anyway to verify everything works. - installPhase = '' - mkdir "$out" - make install PREFIX="$out" - ''; + makeFlags = "PREFIX=$(out)"; + buildFlags = "libcryptopp.so"; doCheck = true; checkPhase = "LD_LIBRARY_PATH=`pwd` make test"; + # prefer -fPIC and .so to .a; cryptotest.exe seems superfluous + postInstall = ''rm "$out"/lib/*.a -r "$out/bin" ''; + meta = with stdenv.lib; { description = "Crypto++, a free C++ class library of cryptographic schemes"; homepage = http://cryptopp.com/; @@ -55,3 +48,4 @@ stdenv.mkDerivation rec { maintainers = [ ]; }; } + From 9c5f76bc0ff4e7b0d0c48b809809117e9d538e99 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Sat, 27 Jun 2015 10:47:58 +0200 Subject: [PATCH 172/259] gnome-menus: fix build by dropping wrong patchShebangs Strange error, probably hidden by #7524 until recently. /cc @lethalman. --- pkgs/desktops/gnome-3/3.16/core/gnome-menus/default.nix | 2 -- 1 file changed, 2 deletions(-) diff --git a/pkgs/desktops/gnome-3/3.16/core/gnome-menus/default.nix b/pkgs/desktops/gnome-3/3.16/core/gnome-menus/default.nix index 37d2ea1c0863..90209634fbf1 100644 --- a/pkgs/desktops/gnome-3/3.16/core/gnome-menus/default.nix +++ b/pkgs/desktops/gnome-3/3.16/core/gnome-menus/default.nix @@ -11,8 +11,6 @@ stdenv.mkDerivation rec { makeFlags = "INTROSPECTION_GIRDIR=$(out)/share/gir-1.0/ INTROSPECTION_TYPELIBDIR=$(out)/lib/girepository-1.0"; - preBuild = "patchShebangs ./scripts"; - buildInputs = [ intltool pkgconfig glib gobjectIntrospection ]; meta = { From 58f7bf5b684a77f9a7debf0b0adaf050271cd5f5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Sat, 27 Jun 2015 11:28:21 +0200 Subject: [PATCH 173/259] gsl: fix i686 tests by upstream patch --- pkgs/development/libraries/gsl/default.nix | 15 +++++++++++---- pkgs/development/libraries/gsl/disable-fma.patch | 4 ++-- 2 files changed, 13 insertions(+), 6 deletions(-) diff --git a/pkgs/development/libraries/gsl/default.nix b/pkgs/development/libraries/gsl/default.nix index da4796fba896..011e4ecd48e3 100644 --- a/pkgs/development/libraries/gsl/default.nix +++ b/pkgs/development/libraries/gsl/default.nix @@ -1,4 +1,4 @@ -{ fetchurl, stdenv }: +{ fetchurl, fetchpatch, stdenv }: stdenv.mkDerivation rec { name = "gsl-1.16"; @@ -8,9 +8,16 @@ stdenv.mkDerivation rec { sha256 = "0lrgipi0z6559jqh82yx8n4xgnxkhzj46v96dl77hahdp58jzg3k"; }; - # ToDo: there might be more impurities than FMA support check - patches = [ ./disable-fma.patch ]; # http://lists.gnu.org/archive/html/bug-gsl/2011-11/msg00019.html - patchFlags = "-p0"; + patches = [ + # ToDo: there might be more impurities than FMA support check + ./disable-fma.patch # http://lists.gnu.org/archive/html/bug-gsl/2011-11/msg00019.html + + (fetchpatch { + name = "bug-39055.patch"; + url = "http://git.savannah.gnu.org/cgit/gsl.git/patch/?id=9cc12d0377"; + sha256 = "1bmrmihi28cly9g9pq54kkix2jy59y7cd7h5fw4v1c7h5rc2qvs8"; + }) + ]; doCheck = true; diff --git a/pkgs/development/libraries/gsl/disable-fma.patch b/pkgs/development/libraries/gsl/disable-fma.patch index d5c0d620863e..bb1eda9ccccd 100644 --- a/pkgs/development/libraries/gsl/disable-fma.patch +++ b/pkgs/development/libraries/gsl/disable-fma.patch @@ -1,5 +1,5 @@ ---- configure.ac 2011-09-22 16:13:22 +0000 -+++ configure.ac 2011-11-26 23:55:24 +0000 +--- a/configure.ac 2011-09-22 16:13:22 +0000 ++++ b/configure.ac 2011-11-26 23:55:24 +0000 @@ -381,6 +381,28 @@ AC_SUBST(HAVE_DARWIN_IEEE_INTERFACE) AC_SUBST(HAVE_DARWIN86_IEEE_INTERFACE) From e6ca18e9bfd50cc4340b716cae752742b4f9461d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Sat, 27 Jun 2015 11:40:04 +0200 Subject: [PATCH 174/259] xwayland: fix build Maybe it was just covered by #7524 until now. /cc #5061 and @echo-oddly. --- pkgs/servers/x11/xorg/xwayland.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/servers/x11/xorg/xwayland.nix b/pkgs/servers/x11/xorg/xwayland.nix index f43a9c671604..729fcc2e3447 100644 --- a/pkgs/servers/x11/xorg/xwayland.nix +++ b/pkgs/servers/x11/xorg/xwayland.nix @@ -20,7 +20,7 @@ overrideDerivation xorgserver (oldAttrs: { "--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" + "--with-xkb-output=$(out)/share/X11/xkb/compiled" ]; postInstall = '' From 3dafe7a46645ecf5e6a09e7cda0e00b112c26533 Mon Sep 17 00:00:00 2001 From: Tuomas Tynkkynen Date: Sat, 27 Jun 2015 18:44:06 +0300 Subject: [PATCH 175/259] xfig: Fix build failure now visible due to #7524 The first 'find' command in postUnpack that attempts to add +x permissions fails, because the +x permission is needed by the find itself, and with the xargs method it's added too late. --- pkgs/applications/graphics/xfig/builder.sh | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/pkgs/applications/graphics/xfig/builder.sh b/pkgs/applications/graphics/xfig/builder.sh index bb1cd7f49c48..9d95eca01226 100644 --- a/pkgs/applications/graphics/xfig/builder.sh +++ b/pkgs/applications/graphics/xfig/builder.sh @@ -5,8 +5,7 @@ makeFlags="XAWLIB=-lXaw3d BINDIR=$out/bin XAPPLOADDIR=$out/etc/X11/app-defaults # We need chmod +wx on dirs, not just chmod +w dontMakeSourcesWritable=1 postUnpack() { - find . -type d | xargs -n1 chmod +x - find . -type d | xargs -n1 chmod +x + find . -type d -exec chmod +x '{}' \; } preBuild() { From e080827fdb1727b86390284833245da1d4ab9854 Mon Sep 17 00:00:00 2001 From: "William A. Kennington III" Date: Sat, 27 Jun 2015 10:43:45 -0700 Subject: [PATCH 176/259] Fix heimdal reference --- pkgs/top-level/all-packages.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index d3c52fbb228c..386ee50c2bef 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -6390,7 +6390,7 @@ let kerberos = libkrb5; heimdalFull = callPackage ../development/libraries/kerberos/heimdal.nix { }; - libheimdal = heimdal.override { type = "lib"; }; + libheimdal = heimdalFull.override { type = "lib"; }; harfbuzz = callPackage ../development/libraries/harfbuzz { }; harfbuzz-icu = callPackage ../development/libraries/harfbuzz { From 6b829e73024841fc2bf9cf50b5696b64b261dc8f Mon Sep 17 00:00:00 2001 From: Tuomas Tynkkynen Date: Sat, 27 Jun 2015 23:53:49 +0300 Subject: [PATCH 177/259] libxcomp: Fix build The mkdirs were failing since the 'out' and 'lib' directories are already created by 'make install' (#7524 fallout). And in fact, the entire postInstall script is doing the exact same thing as installPhase, so it can be simply dropped. --- pkgs/development/libraries/libxcomp/default.nix | 7 ------- 1 file changed, 7 deletions(-) diff --git a/pkgs/development/libraries/libxcomp/default.nix b/pkgs/development/libraries/libxcomp/default.nix index ed9e4b269446..3be3598169ed 100644 --- a/pkgs/development/libraries/libxcomp/default.nix +++ b/pkgs/development/libraries/libxcomp/default.nix @@ -25,11 +25,4 @@ stdenv.mkDerivation { ''; enableParallelBuilding = true; - - postInstall = '' - mkdir $out/lib - cp libXcomp.so* $out/lib - mkdir $out/include - cp NX.h $out/include - ''; } From 172ed10426df966ee5df76a1ef18f683698fe23f Mon Sep 17 00:00:00 2001 From: Benjamin Saunders Date: Sun, 28 Jun 2015 20:58:31 +0200 Subject: [PATCH 178/259] Fix libcxxStdenv on Linux This corrects linkage failures arising from missing -lc++abi and resolves "unused argument" warnings arising due to -stdlib=libc++ serving no purpose when search paths are being supplied explicitly. --- pkgs/development/compilers/llvm/3.5/libc++/setup-hook.sh | 6 ++---- pkgs/development/compilers/llvm/3.6/libc++/setup-hook.sh | 6 ++---- pkgs/top-level/all-packages.nix | 2 +- 3 files changed, 5 insertions(+), 9 deletions(-) diff --git a/pkgs/development/compilers/llvm/3.5/libc++/setup-hook.sh b/pkgs/development/compilers/llvm/3.5/libc++/setup-hook.sh index 8a45be7e85a2..62ab46ac3100 100644 --- a/pkgs/development/compilers/llvm/3.5/libc++/setup-hook.sh +++ b/pkgs/development/compilers/llvm/3.5/libc++/setup-hook.sh @@ -1,4 +1,2 @@ -export NIX_CFLAGS_COMPILE+=" -isystem @out@/include/c++/v1" - -export NIX_CXXSTDLIB_COMPILE=" -stdlib=libc++" -export NIX_CXXSTDLIB_LINK=" -stdlib=libc++" +export NIX_CXXSTDLIB_COMPILE+=" -isystem @out@/include/c++/v1" +export NIX_CXXSTDLIB_LINK=" -lc++ -lc++abi" diff --git a/pkgs/development/compilers/llvm/3.6/libc++/setup-hook.sh b/pkgs/development/compilers/llvm/3.6/libc++/setup-hook.sh index 8a45be7e85a2..62ab46ac3100 100644 --- a/pkgs/development/compilers/llvm/3.6/libc++/setup-hook.sh +++ b/pkgs/development/compilers/llvm/3.6/libc++/setup-hook.sh @@ -1,4 +1,2 @@ -export NIX_CFLAGS_COMPILE+=" -isystem @out@/include/c++/v1" - -export NIX_CXXSTDLIB_COMPILE=" -stdlib=libc++" -export NIX_CXXSTDLIB_LINK=" -stdlib=libc++" +export NIX_CXXSTDLIB_COMPILE+=" -isystem @out@/include/c++/v1" +export NIX_CXXSTDLIB_LINK=" -lc++ -lc++abi" diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 6cf9fed11ae2..b8ef6fc1c5d4 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -3531,7 +3531,7 @@ let libc = glibc; binutils = binutils; inherit coreutils zlib; - extraPackages = [ libcxx ]; + extraPackages = [ libcxx libcxxabi ]; nativeTools = false; nativeLibc = false; }; From b62baacbc177cf799d88c2b519015a13ef91891c Mon Sep 17 00:00:00 2001 From: Jude Taylor Date: Mon, 29 Jun 2015 13:55:12 -0700 Subject: [PATCH 179/259] Revert "Fix libcxxStdenv on Linux" This reverts commit 172ed10426df966ee5df76a1ef18f683698fe23f. --- pkgs/development/compilers/llvm/3.5/libc++/setup-hook.sh | 6 ++++-- pkgs/development/compilers/llvm/3.6/libc++/setup-hook.sh | 6 ++++-- pkgs/top-level/all-packages.nix | 2 +- 3 files changed, 9 insertions(+), 5 deletions(-) diff --git a/pkgs/development/compilers/llvm/3.5/libc++/setup-hook.sh b/pkgs/development/compilers/llvm/3.5/libc++/setup-hook.sh index 62ab46ac3100..8a45be7e85a2 100644 --- a/pkgs/development/compilers/llvm/3.5/libc++/setup-hook.sh +++ b/pkgs/development/compilers/llvm/3.5/libc++/setup-hook.sh @@ -1,2 +1,4 @@ -export NIX_CXXSTDLIB_COMPILE+=" -isystem @out@/include/c++/v1" -export NIX_CXXSTDLIB_LINK=" -lc++ -lc++abi" +export NIX_CFLAGS_COMPILE+=" -isystem @out@/include/c++/v1" + +export NIX_CXXSTDLIB_COMPILE=" -stdlib=libc++" +export NIX_CXXSTDLIB_LINK=" -stdlib=libc++" diff --git a/pkgs/development/compilers/llvm/3.6/libc++/setup-hook.sh b/pkgs/development/compilers/llvm/3.6/libc++/setup-hook.sh index 62ab46ac3100..8a45be7e85a2 100644 --- a/pkgs/development/compilers/llvm/3.6/libc++/setup-hook.sh +++ b/pkgs/development/compilers/llvm/3.6/libc++/setup-hook.sh @@ -1,2 +1,4 @@ -export NIX_CXXSTDLIB_COMPILE+=" -isystem @out@/include/c++/v1" -export NIX_CXXSTDLIB_LINK=" -lc++ -lc++abi" +export NIX_CFLAGS_COMPILE+=" -isystem @out@/include/c++/v1" + +export NIX_CXXSTDLIB_COMPILE=" -stdlib=libc++" +export NIX_CXXSTDLIB_LINK=" -stdlib=libc++" diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 5875abfaa4b7..afcda331b499 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -3597,7 +3597,7 @@ let libc = glibc; binutils = binutils; inherit coreutils zlib; - extraPackages = [ libcxx libcxxabi ]; + extraPackages = [ libcxx ]; nativeTools = false; nativeLibc = false; }; From 5429e06f58b9a445088b1b89c84de1c6fb2d774a Mon Sep 17 00:00:00 2001 From: Jude Taylor Date: Tue, 30 Jun 2015 16:11:04 -0700 Subject: [PATCH 180/259] move impure deps to a separate file --- pkgs/os-specific/darwin/apple-sdk/default.nix | 2 +- .../darwin/apple-sdk/impure-deps.nix | 48 +++++++++++++++++++ 2 files changed, 49 insertions(+), 1 deletion(-) create mode 100644 pkgs/os-specific/darwin/apple-sdk/impure-deps.nix diff --git a/pkgs/os-specific/darwin/apple-sdk/default.nix b/pkgs/os-specific/darwin/apple-sdk/default.nix index 520158b30add..cc1032fc03d3 100644 --- a/pkgs/os-specific/darwin/apple-sdk/default.nix +++ b/pkgs/os-specific/darwin/apple-sdk/default.nix @@ -92,7 +92,7 @@ let propagatedBuildInputs = deps; # Not going to bother being more precise than this... - __propagatedImpureHostDeps = [ "/System/Library/Frameworks/${name}.framework/Versions" ]; + __propagatedImpureHostDeps = (import ./impure-deps.nix).${name}; meta = with stdenv.lib; { description = "Apple SDK framework ${name}"; diff --git a/pkgs/os-specific/darwin/apple-sdk/impure-deps.nix b/pkgs/os-specific/darwin/apple-sdk/impure-deps.nix new file mode 100644 index 000000000000..77ac47bed4f7 --- /dev/null +++ b/pkgs/os-specific/darwin/apple-sdk/impure-deps.nix @@ -0,0 +1,48 @@ +{ + CoreFoundation = [ + "/System/Library/Frameworks/CoreFoundation.framework" + ]; + CFNetwork = [ + "/System/Library/Frameworks/CFNetwork.framework" + ]; + IOKit = [ + "/System/Library/Frameworks/IOKit.framework" + ]; + DiskArbitration = [ + "/System/Library/Frameworks/DiskArbitration.framework" + ]; + Security = [ + "/System/Library/Frameworks/Security.framework" + ]; + CoreServices = [ + "/System/Library/Frameworks/CoreServices.framework" + ]; + IOSurface = [ + "/System/Library/Frameworks/IOSurface.framework" + ]; + CoreGraphics = [ + "/System/Library/Frameworks/CoreGraphics.framework" + ]; + CoreText = [ + "/System/Library/Frameworks/CoreText.framework" + ]; + ImageIO = [ + "/System/Library/Frameworks/ImageIO.framework" + ]; + ApplicationServices = [ + "/System/Library/Frameworks/ApplicationServices.framework" + ]; + OpenGL = []; + CoreVideo = []; + QuartzCore = []; + PCSC = [ + "/System/Library/Frameworks/PCSC.framework" + ]; + AppKit = [ + "/System/Library/Frameworks/AppKit.framework" + ]; + Foundation = [ + "/System/Library/Frameworks/Foundation.framework" + "/usr/lib/libextension.dylib" + ]; +} From 857efa12fb54a05674406fafcdc43b0576d17eb2 Mon Sep 17 00:00:00 2001 From: Jude Taylor Date: Tue, 30 Jun 2015 17:34:13 -0700 Subject: [PATCH 181/259] make vim frameworks-compliant --- pkgs/applications/editors/vim/default.nix | 4 +- pkgs/applications/editors/vim/impure-deps.nix | 129 ------------------ .../darwin/apple-sdk/frameworks.nix | 18 +-- .../darwin/apple-sdk/impure-deps.nix | 115 +++++++++++++++- 4 files changed, 122 insertions(+), 144 deletions(-) delete mode 100644 pkgs/applications/editors/vim/impure-deps.nix diff --git a/pkgs/applications/editors/vim/default.nix b/pkgs/applications/editors/vim/default.nix index 4d1840ab8957..385611a167a3 100644 --- a/pkgs/applications/editors/vim/default.nix +++ b/pkgs/applications/editors/vim/default.nix @@ -17,11 +17,9 @@ stdenv.mkDerivation rec { enableParallelBuilding = true; buildInputs = [ ncurses pkgconfig ] - ++ stdenv.lib.optional stdenv.isDarwin [ CoreData CoreServices Cocoa Foundation libobjc ]; + ++ stdenv.lib.optionals stdenv.isDarwin [ CoreData CoreServices Cocoa Foundation libobjc ]; nativeBuildInputs = [ gettext ]; - __impureHostDeps = import ./impure-deps.nix; - configureFlags = [ "--enable-multibyte" "--enable-nls" diff --git a/pkgs/applications/editors/vim/impure-deps.nix b/pkgs/applications/editors/vim/impure-deps.nix deleted file mode 100644 index d6dc3a086278..000000000000 --- a/pkgs/applications/editors/vim/impure-deps.nix +++ /dev/null @@ -1,129 +0,0 @@ -[ - "/System/Library/Frameworks/Accelerate.framework/Versions/A/Accelerate" - "/System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vImage.framework/Versions/A/vImage" - "/System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libBLAS.dylib" - "/System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libLAPACK.dylib" - "/System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libLinearAlgebra.dylib" - "/System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libvDSP.dylib" - "/System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libvMisc.dylib" - "/System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/vecLib" - "/System/Library/Frameworks/AppKit.framework/Versions/C/AppKit" - "/System/Library/Frameworks/ApplicationServices.framework/Versions/A/ApplicationServices" - "/System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ATS.framework/Versions/A/ATS" - "/System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ATS.framework/Versions/A/Resources/libFontParser.dylib" - "/System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ATS.framework/Versions/A/Resources/libFontRegistry.dylib" - "/System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ColorSync.framework/Versions/A/ColorSync" - "/System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/HIServices.framework/Versions/A/HIServices" - "/System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/LangAnalysis.framework/Versions/A/LangAnalysis" - "/System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/PrintCore.framework/Versions/A/PrintCore" - "/System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/QD.framework/Versions/A/QD" - "/System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/SpeechSynthesis.framework/Versions/A/SpeechSynthesis" - "/System/Library/Frameworks/AudioToolbox.framework/Versions/A/AudioToolbox" - "/System/Library/Frameworks/AudioUnit.framework/Versions/A/AudioUnit" - "/System/Library/Frameworks/CFNetwork.framework/Versions/A/CFNetwork" - "/System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/CarbonSound.framework/Versions/A/CarbonSound" - "/System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/HIToolbox.framework/Versions/A/HIToolbox" - "/System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/Ink.framework/Versions/A/Ink" - "/System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/SpeechRecognition.framework/Versions/A/SpeechRecognition" - "/System/Library/Frameworks/Cocoa.framework/Versions/A/Cocoa" - "/System/Library/Frameworks/CoreAudio.framework/Versions/A/CoreAudio" - "/System/Library/Frameworks/CoreBluetooth.framework/Versions/A/CoreBluetooth" - "/System/Library/Frameworks/CoreData.framework/Versions/A/CoreData" - "/System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation" - "/System/Library/Frameworks/CoreGraphics.framework/Versions/A/CoreGraphics" - "/System/Library/Frameworks/CoreServices.framework/Versions/A/CoreServices" - "/System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/AE.framework/Versions/A/AE" - "/System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/CarbonCore.framework/Versions/A/CarbonCore" - "/System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/DictionaryServices.framework/Versions/A/DictionaryServices" - "/System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/FSEvents.framework/Versions/A/FSEvents" - "/System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/LaunchServices.framework/Versions/A/LaunchServices" - "/System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/Metadata.framework/Versions/A/Metadata" - "/System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/OSServices.framework/Versions/A/OSServices" - "/System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/SearchKit.framework/Versions/A/SearchKit" - "/System/Library/Frameworks/CoreText.framework/Versions/A/CoreText" - "/System/Library/Frameworks/CoreVideo.framework/Versions/A/CoreVideo" - "/System/Library/Frameworks/CoreWLAN.framework/Versions/A/CoreWLAN" - "/System/Library/Frameworks/DiskArbitration.framework/Versions/A/DiskArbitration" - "/System/Library/Frameworks/Foundation.framework/Versions/C/Foundation" - "/System/Library/Frameworks/GSS.framework/Versions/A/GSS" - "/System/Library/Frameworks/IOBluetooth.framework/Versions/A/IOBluetooth" - "/System/Library/Frameworks/IOKit.framework/Versions/A/IOKit" - "/System/Library/Frameworks/IOSurface.framework/Versions/A/IOSurface" - "/System/Library/Frameworks/ImageIO.framework/Versions/A/ImageIO" - "/System/Library/Frameworks/ImageIO.framework/Versions/A/Resources/libGIF.dylib" - "/System/Library/Frameworks/ImageIO.framework/Versions/A/Resources/libJP2.dylib" - "/System/Library/Frameworks/ImageIO.framework/Versions/A/Resources/libJPEG.dylib" - "/System/Library/Frameworks/ImageIO.framework/Versions/A/Resources/libPng.dylib" - "/System/Library/Frameworks/ImageIO.framework/Versions/A/Resources/libRadiance.dylib" - "/System/Library/Frameworks/ImageIO.framework/Versions/A/Resources/libTIFF.dylib" - "/System/Library/Frameworks/Kerberos.framework/Versions/A/Kerberos" - "/System/Library/Frameworks/NetFS.framework/Versions/A/NetFS" - "/System/Library/Frameworks/OpenCL.framework/Versions/A/OpenCL" - "/System/Library/Frameworks/OpenDirectory.framework/Versions/A/Frameworks/CFOpenDirectory.framework/Versions/A/CFOpenDirectory" - "/System/Library/Frameworks/OpenDirectory.framework/Versions/A/OpenDirectory" - "/System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libCVMSPluginSupport.dylib" - "/System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libCoreVMClient.dylib" - "/System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGFXShared.dylib" - "/System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGL.dylib" - "/System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGLImage.dylib" - "/System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGLU.dylib" - "/System/Library/Frameworks/OpenGL.framework/Versions/A/OpenGL" - "/System/Library/Frameworks/QuartzCore.framework/Versions/A/Frameworks/CoreImage.framework/Versions/A/CoreImage" - "/System/Library/Frameworks/QuartzCore.framework/Versions/A/QuartzCore" - "/System/Library/Frameworks/Security.framework/Versions/A/Security" - "/System/Library/Frameworks/SecurityFoundation.framework/Versions/A/SecurityFoundation" - "/System/Library/Frameworks/ServiceManagement.framework/Versions/A/ServiceManagement" - "/System/Library/Frameworks/SystemConfiguration.framework/Versions/A/SystemConfiguration" - "/System/Library/PrivateFrameworks/Apple80211.framework/Versions/A/Apple80211" - "/System/Library/PrivateFrameworks/AppleJPEG.framework/Versions/A/AppleJPEG" - "/System/Library/PrivateFrameworks/AppleVPA.framework/Versions/A/AppleVPA" - "/System/Library/PrivateFrameworks/Backup.framework/Versions/A/Backup" - "/System/Library/PrivateFrameworks/ChunkingLibrary.framework/Versions/A/ChunkingLibrary" - "/System/Library/PrivateFrameworks/CommonAuth.framework/Versions/A/CommonAuth" - "/System/Library/PrivateFrameworks/CoreSymbolication.framework/Versions/A/CoreSymbolication" - "/System/Library/PrivateFrameworks/CoreUI.framework/Versions/A/CoreUI" - "/System/Library/PrivateFrameworks/CoreWiFi.framework/Versions/A/CoreWiFi" - "/System/Library/PrivateFrameworks/CrashReporterSupport.framework/Versions/A/CrashReporterSupport" - "/System/Library/PrivateFrameworks/DataDetectorsCore.framework/Versions/A/DataDetectorsCore" - "/System/Library/PrivateFrameworks/DebugSymbols.framework/Versions/A/DebugSymbols" - "/System/Library/PrivateFrameworks/DesktopServicesPriv.framework/Versions/A/DesktopServicesPriv" - "/System/Library/PrivateFrameworks/FaceCore.framework/Versions/A/FaceCore" - "/System/Library/PrivateFrameworks/GenerationalStorage.framework/Versions/A/GenerationalStorage" - "/System/Library/PrivateFrameworks/Heimdal.framework/Versions/A/Heimdal" - "/System/Library/PrivateFrameworks/IconServices.framework/Versions/A/IconServices" - "/System/Library/PrivateFrameworks/LanguageModeling.framework/Versions/A/LanguageModeling" - "/System/Library/PrivateFrameworks/MultitouchSupport.framework/Versions/A/MultitouchSupport" - "/System/Library/PrivateFrameworks/NetAuth.framework/Versions/A/NetAuth" - "/System/Library/PrivateFrameworks/PerformanceAnalysis.framework/Versions/A/PerformanceAnalysis" - "/System/Library/PrivateFrameworks/RemoteViewServices.framework/Versions/A/RemoteViewServices" - "/System/Library/PrivateFrameworks/Sharing.framework/Versions/A/Sharing" - "/System/Library/PrivateFrameworks/SpeechRecognitionCore.framework/Versions/A/SpeechRecognitionCore" - "/System/Library/PrivateFrameworks/Symbolication.framework/Versions/A/Symbolication" - "/System/Library/PrivateFrameworks/TCC.framework/Versions/A/TCC" - "/System/Library/PrivateFrameworks/UIFoundation.framework/Versions/A/UIFoundation" - "/System/Library/PrivateFrameworks/Ubiquity.framework/Versions/A/Ubiquity" - "/System/Library/PrivateFrameworks/login.framework/Versions/A/Frameworks/loginsupport.framework/Versions/A/loginsupport" - "/usr/lib/libCRFSuite.dylib" - "/usr/lib/libOpenScriptingUtil.dylib" - "/usr/lib/libarchive.2.dylib" - "/usr/lib/libbsm.0.dylib" - "/usr/lib/libbz2.1.0.dylib" - "/usr/lib/libc++.1.dylib" - "/usr/lib/libc++abi.dylib" - "/usr/lib/libcmph.dylib" - "/usr/lib/libcups.2.dylib" - "/usr/lib/libextension.dylib" - "/usr/lib/libheimdal-asn1.dylib" - "/usr/lib/libiconv.2.dylib" - "/usr/lib/libicucore.A.dylib" - "/usr/lib/liblangid.dylib" - "/usr/lib/liblzma.5.dylib" - "/usr/lib/libmecabra.dylib" - "/usr/lib/libpam.2.dylib" - "/usr/lib/libresolv.9.dylib" - "/usr/lib/libsqlite3.dylib" - "/usr/lib/libxar.1.dylib" - "/usr/lib/libxml2.2.dylib" - "/usr/lib/libxslt.1.dylib" - "/usr/lib/libz.1.dylib" -] diff --git a/pkgs/os-specific/darwin/apple-sdk/frameworks.nix b/pkgs/os-specific/darwin/apple-sdk/frameworks.nix index 60ed091a1e41..bedf39764a9a 100644 --- a/pkgs/os-specific/darwin/apple-sdk/frameworks.nix +++ b/pkgs/os-specific/darwin/apple-sdk/frameworks.nix @@ -10,7 +10,7 @@ with frameworks; with libs; { AVKit = []; Accounts = []; AddressBook = [ Carbon CoreFoundation ]; - AppKit = [ QuartzCore ]; + AppKit = [ AudioToolbox QuartzCore ]; AppKitScripting = []; AppleScriptKit = []; AppleScriptObjC = []; @@ -27,7 +27,7 @@ with frameworks; with libs; { CoreAudioKit = [ AudioUnit ]; CoreData = []; CoreFoundation = []; - CoreGraphics = [ CoreFoundation IOKit IOSurface ]; + CoreGraphics = [ Accelerate CoreFoundation IOKit IOSurface ]; CoreLocation = []; CoreMIDI = [ CoreFoundation ]; CoreMIDIServer = []; @@ -35,7 +35,7 @@ with frameworks; with libs; { CoreMediaIO = [ CoreFoundation CoreMedia ]; CoreText = [ CoreFoundation CoreGraphics ]; CoreVideo = [ ApplicationServices CoreFoundation CoreGraphics IOSurface OpenGL ]; - CoreWLAN = []; + CoreWLAN = [ SecurityFoundation ]; DVComponentGlue = [ CoreServices QuickTime ]; DVDPlayback = []; DirectoryService = [ CoreFoundation ]; @@ -47,7 +47,7 @@ with frameworks; with libs; { ExceptionHandling = []; FWAUserLib = []; ForceFeedback = [ CoreFoundation IOKit ]; - Foundation = [ CoreFoundation Security ApplicationServices AppKit ]; + Foundation = [ CoreFoundation Security ApplicationServices AppKit SystemConfiguration ]; GLKit = [ CoreFoundation ]; GLUT = [ GL OpenGL ]; GSS = []; @@ -75,7 +75,7 @@ with frameworks; with libs; { NetFS = [ CoreFoundation ]; OSAKit = [ Carbon ]; OpenAL = []; - OpenCL = [ CL IOSurface OpenGL ]; + OpenCL = [ IOSurface OpenGL ]; OpenGL = []; PCSC = []; PreferencePanes = []; @@ -107,13 +107,13 @@ with frameworks; with libs; { WebKit = [ ApplicationServices Carbon JavaScriptCore OpenGL X11 ]; # Umbrellas - Accelerate = [ CoreGraphics ]; + Accelerate = [ CoreWLAN IOBluetooth ]; ApplicationServices = [ CoreFoundation CoreServices CoreText ImageIO ]; Carbon = [ ApplicationServices CoreFoundation CoreServices IOKit Security ]; - CoreServices = [ CFNetwork CoreFoundation DiskArbitration Security ]; + CoreServices = [ CFNetwork CoreFoundation DiskArbitration Security NetFS OpenDirectory ServiceManagement ]; IOBluetooth = [ IOKit ]; JavaVM = []; - OpenDirectory = [ CoreFoundation Foundation ]; + OpenDirectory = []; Quartz = [ QuickLook ]; - QuartzCore = [ ApplicationServices CoreFoundation CoreVideo ]; + QuartzCore = [ ApplicationServices CoreFoundation CoreVideo OpenCL ]; } diff --git a/pkgs/os-specific/darwin/apple-sdk/impure-deps.nix b/pkgs/os-specific/darwin/apple-sdk/impure-deps.nix index 77ac47bed4f7..8a9860c9c77b 100644 --- a/pkgs/os-specific/darwin/apple-sdk/impure-deps.nix +++ b/pkgs/os-specific/darwin/apple-sdk/impure-deps.nix @@ -32,17 +32,126 @@ ApplicationServices = [ "/System/Library/Frameworks/ApplicationServices.framework" ]; - OpenGL = []; - CoreVideo = []; - QuartzCore = []; + OpenGL = [ + "/System/Library/Frameworks/OpenGL.framework" + ]; + CoreVideo = [ + "/System/Library/Frameworks/CoreVideo.framework" + ]; + QuartzCore = [ + "/System/Library/Frameworks/QuartzCore.framework" + ]; PCSC = [ "/System/Library/Frameworks/PCSC.framework" ]; AppKit = [ "/System/Library/Frameworks/AppKit.framework" + "/System/Library/PrivateFrameworks/Apple80211.framework/Versions/A/Apple80211" + "/System/Library/PrivateFrameworks/AppleJPEG.framework/Versions/A/AppleJPEG" + "/System/Library/PrivateFrameworks/AppleVPA.framework/Versions/A/AppleVPA" + "/System/Library/PrivateFrameworks/Backup.framework/Versions/A/Backup" + "/System/Library/PrivateFrameworks/ChunkingLibrary.framework/Versions/A/ChunkingLibrary" + "/System/Library/PrivateFrameworks/CommonAuth.framework/Versions/A/CommonAuth" + "/System/Library/PrivateFrameworks/CoreSymbolication.framework/Versions/A/CoreSymbolication" + "/System/Library/PrivateFrameworks/CoreUI.framework/Versions/A/CoreUI" + "/System/Library/PrivateFrameworks/CoreWiFi.framework/Versions/A/CoreWiFi" + "/System/Library/PrivateFrameworks/CrashReporterSupport.framework/Versions/A/CrashReporterSupport" + "/System/Library/PrivateFrameworks/DataDetectorsCore.framework/Versions/A/DataDetectorsCore" + "/System/Library/PrivateFrameworks/DebugSymbols.framework/Versions/A/DebugSymbols" + "/System/Library/PrivateFrameworks/DesktopServicesPriv.framework/Versions/A/DesktopServicesPriv" + "/System/Library/PrivateFrameworks/FaceCore.framework/Versions/A/FaceCore" + "/System/Library/PrivateFrameworks/GenerationalStorage.framework/Versions/A/GenerationalStorage" + "/System/Library/PrivateFrameworks/Heimdal.framework/Versions/A/Heimdal" + "/System/Library/PrivateFrameworks/IconServices.framework/Versions/A/IconServices" + "/System/Library/PrivateFrameworks/LanguageModeling.framework/Versions/A/LanguageModeling" + "/System/Library/PrivateFrameworks/MultitouchSupport.framework/Versions/A/MultitouchSupport" + "/System/Library/PrivateFrameworks/NetAuth.framework/Versions/A/NetAuth" + "/System/Library/PrivateFrameworks/PerformanceAnalysis.framework/Versions/A/PerformanceAnalysis" + "/System/Library/PrivateFrameworks/RemoteViewServices.framework/Versions/A/RemoteViewServices" + "/System/Library/PrivateFrameworks/Sharing.framework/Versions/A/Sharing" + "/System/Library/PrivateFrameworks/SpeechRecognitionCore.framework/Versions/A/SpeechRecognitionCore" + "/System/Library/PrivateFrameworks/Symbolication.framework/Versions/A/Symbolication" + "/System/Library/PrivateFrameworks/TCC.framework/Versions/A/TCC" + "/System/Library/PrivateFrameworks/UIFoundation.framework/Versions/A/UIFoundation" + "/System/Library/PrivateFrameworks/Ubiquity.framework/Versions/A/Ubiquity" + "/System/Library/PrivateFrameworks/login.framework/Versions/A/Frameworks/loginsupport.framework/Versions/A/loginsupport" + "/usr/lib/libCRFSuite.dylib" + "/usr/lib/libOpenScriptingUtil.dylib" + "/usr/lib/libarchive.2.dylib" + "/usr/lib/libbsm.0.dylib" + "/usr/lib/libbz2.1.0.dylib" + "/usr/lib/libc++.1.dylib" + "/usr/lib/libc++abi.dylib" + "/usr/lib/libcmph.dylib" + "/usr/lib/libcups.2.dylib" + "/usr/lib/libextension.dylib" + "/usr/lib/libheimdal-asn1.dylib" + "/usr/lib/libiconv.2.dylib" + "/usr/lib/libicucore.A.dylib" + "/usr/lib/liblangid.dylib" + "/usr/lib/liblzma.5.dylib" + "/usr/lib/libmecabra.dylib" + "/usr/lib/libpam.2.dylib" + "/usr/lib/libresolv.9.dylib" + "/usr/lib/libsqlite3.dylib" + "/usr/lib/libxar.1.dylib" + "/usr/lib/libxml2.2.dylib" + "/usr/lib/libxslt.1.dylib" + "/usr/lib/libz.1.dylib" ]; Foundation = [ "/System/Library/Frameworks/Foundation.framework" "/usr/lib/libextension.dylib" ]; + CoreData = [ + "/System/Library/Frameworks/CoreData.framework" + ]; + Cocoa = [ + "/System/Library/Frameworks/Cocoa.framework" + "/System/Library/PrivateFrameworks/UIFoundation.framework/Versions/A/UIFoundation" + "/System/Library/PrivateFrameworks/UIFoundation.framework/Versions/A" + ]; + Carbon = [ + "/System/Library/Frameworks/Carbon.framework" + ]; + CoreAudio = [ + "/System/Library/Frameworks/CoreAudio.framework" + ]; + AudioUnit = [ + "/System/Library/Frameworks/AudioUnit.framework" + ]; + CoreMIDI = [ + "/System/Library/Frameworks/CoreMIDI.framework" + ]; + AudioToolbox = [ + "/System/Library/Frameworks/AudioToolbox.framework" + ]; + SystemConfiguration = [ + "/System/Library/Frameworks/SystemConfiguration.framework" + ]; + NetFS = [ + "/System/Library/Frameworks/NetFS.framework" + ]; + Accelerate = [ + "/System/Library/Frameworks/Accelerate.framework" + ]; + OpenDirectory = [ + "/System/Library/Frameworks/OpenDirectory.framework" + ]; + ServiceManagement = [ + "/System/Library/Frameworks/ServiceManagement.framework" + ]; + OpenCL = [ + "/System/Library/Frameworks/OpenCL.framework" + ]; + CoreWLAN = [ + "/System/Library/Frameworks/CoreWLAN.framework" + ]; + IOBluetooth = [ + "/System/Library/Frameworks/IOBluetooth.framework" + "/System/Library/Frameworks/CoreBluetooth.framework/Versions/A/CoreBluetooth" + ]; + SecurityFoundation = [ + "/System/Library/Frameworks/SecurityFoundation.framework" + ]; } From feac3e67770f8e4535738690e861e883b590d85b Mon Sep 17 00:00:00 2001 From: Luca Bruno Date: Wed, 1 Jul 2015 11:48:28 +0200 Subject: [PATCH 182/259] mbedtls: fix postInstall (ZHF) --- pkgs/development/libraries/mbedtls/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/development/libraries/mbedtls/default.nix b/pkgs/development/libraries/mbedtls/default.nix index ae8ff907f256..75ce53f8db35 100644 --- a/pkgs/development/libraries/mbedtls/default.nix +++ b/pkgs/development/libraries/mbedtls/default.nix @@ -23,7 +23,7 @@ stdenv.mkDerivation rec { ]; postInstall = '' - rm $out/lib/lib{mbedtls.so.8,polarssl.{a,so}} + rm -f $out/lib/lib{mbedtls.so.8,polarssl.{a,so}} ln -s libmbedtls.so $out/lib/libmbedtls.so.8 ln -s libmbedtls.so $out/lib/libpolarssl.so ln -s libmbedtls.a $out/lib/libpolarssl.a From 22fce483712927c40c491c1204b214db91bb1e14 Mon Sep 17 00:00:00 2001 From: Luca Bruno Date: Wed, 1 Jul 2015 12:31:01 +0200 Subject: [PATCH 183/259] php: fix broken build inputs (ZHF) --- pkgs/development/interpreters/php/generic.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/interpreters/php/generic.nix b/pkgs/development/interpreters/php/generic.nix index 33b5b0f9024b..10f40c4dd2f9 100644 --- a/pkgs/development/interpreters/php/generic.nix +++ b/pkgs/development/interpreters/php/generic.nix @@ -18,7 +18,7 @@ composableDerivation.composableDerivation {} ( fixed : let inherit (fixed.fixed) enableParallelBuilding = true; - buildInputs = ["flex" "bison" "pkgconfig"]; + buildInputs = [ flex bison pkgconfig ]; flags = { @@ -146,7 +146,7 @@ composableDerivation.composableDerivation {} ( fixed : let inherit (fixed.fixed) openssl = { configureFlags = ["--with-openssl=${openssl}"]; - buildInputs = ["openssl"]; + buildInputs = [openssl]; }; mbstring = { From a012ece2f9976072c8d54ca1deadf2fd470b3cb6 Mon Sep 17 00:00:00 2001 From: Luca Bruno Date: Wed, 1 Jul 2015 13:46:27 +0200 Subject: [PATCH 184/259] 2dfsb: fix installation (ZHF) --- pkgs/applications/misc/3dfsb/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/applications/misc/3dfsb/default.nix b/pkgs/applications/misc/3dfsb/default.nix index 96bcfbd6bfe6..fe173b21b571 100644 --- a/pkgs/applications/misc/3dfsb/default.nix +++ b/pkgs/applications/misc/3dfsb/default.nix @@ -23,7 +23,7 @@ stdenv.mkDerivation { buildPhase = "sh ./compile.sh"; dontStrip = true; - installPhase = "mkdir $out/bin/ && cp 3dfsb $out/bin/"; + installPhase = "mkdir -p $out/bin/ && cp 3dfsb $out/bin/"; preFixup = '' wrapProgram $out/bin/3dfsb \ From db5d03c4f1d80039f39c0ddf090801f4036af0af Mon Sep 17 00:00:00 2001 From: Pascal Wittmann Date: Wed, 1 Jul 2015 13:57:56 +0200 Subject: [PATCH 185/259] phpPackages.xdebug: update from 2.2.5 to 2.3.1 and enable tests --- pkgs/top-level/php-packages.nix | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/pkgs/top-level/php-packages.nix b/pkgs/top-level/php-packages.nix index fe06043a8596..6390ff9ad40c 100644 --- a/pkgs/top-level/php-packages.nix +++ b/pkgs/top-level/php-packages.nix @@ -28,9 +28,12 @@ let self = with self; { }; xdebug = buildPecl { - name = "xdebug-2.2.5"; + name = "xdebug-2.3.1"; - sha256 = "0vss35da615709kdvqji8pblckfvmabmj2njjjz6h8zzvj9gximd"; + sha256 = "0k567i6w7cw14m13s7ip0946pvy5ii16cjwjcinnviw9c24na0xm"; + + doCheck = true; + checkTarget = "test"; }; zendopcache = buildPecl { From f41564389b8a6a4ec8d1fc7622304cf799f73d28 Mon Sep 17 00:00:00 2001 From: Pascal Wittmann Date: Wed, 1 Jul 2015 13:53:47 +0200 Subject: [PATCH 186/259] phpPackages.xcache: update from 3.1.0 to 3.2.0 and enable tests --- pkgs/top-level/php-packages.nix | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/pkgs/top-level/php-packages.nix b/pkgs/top-level/php-packages.nix index 6390ff9ad40c..21c935d9aad6 100644 --- a/pkgs/top-level/php-packages.nix +++ b/pkgs/top-level/php-packages.nix @@ -57,13 +57,16 @@ let self = with self; { xcache = buildPecl rec { name = "xcache-${version}"; - version = "3.1.0"; + version = "3.2.0"; src = pkgs.fetchurl { url = "http://xcache.lighttpd.net/pub/Releases/${version}/${name}.tar.bz2"; - sha256 = "1saysvzwkfmcyg53za4j7qnranxd6871spjzfpclhdlqm043xbw6"; + sha256 = "1gbcpw64da9ynjxv70jybwf9y88idm01kb16j87vfagpsp5s64kx"; }; + doCheck = true; + checkTarget = "test"; + configureFlags = [ "--enable-xcache" "--enable-xcache-coverager" From 0cc53d07110ee4cb4600a66b345eb4db4cd3d2e6 Mon Sep 17 00:00:00 2001 From: Pascal Wittmann Date: Wed, 1 Jul 2015 13:47:53 +0200 Subject: [PATCH 187/259] phpPackages.memcached: update from 2.1.0. to 2.2.0 --- pkgs/top-level/php-packages.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/top-level/php-packages.nix b/pkgs/top-level/php-packages.nix index 21c935d9aad6..03259dde82d9 100644 --- a/pkgs/top-level/php-packages.nix +++ b/pkgs/top-level/php-packages.nix @@ -15,16 +15,16 @@ let self = with self; { }; memcached = buildPecl { - name = "memcached-2.1.0"; + name = "memcached-2.2.0"; - sha256 = "1by4zhkq4mbk9ja6s0vlavv5ng8aw5apn3a1in84fkz7bc0l0jdw"; + sha256 = "0n4z2mp4rvrbmxq079zdsrhjxjkmhz6mzi7mlcipz02cdl7n1f8p"; configureFlags = [ "--with-zlib-dir=${pkgs.zlib}" "--with-libmemcached-dir=${pkgs.libmemcached}" ]; - buildInputs = [ pkgs.cyrus_sasl ]; + buildInputs = with pkgs; [ pkgconfig cyrus_sasl ]; }; xdebug = buildPecl { From 8a3a3c7c4bf67bc4812279f53a789e9d8b695c59 Mon Sep 17 00:00:00 2001 From: Pascal Wittmann Date: Wed, 1 Jul 2015 20:38:03 +0200 Subject: [PATCH 188/259] qt54: fix setup-hook.sh, lib/ was not populated in some cases --- pkgs/development/libraries/qt-5/5.4/setup-hook.sh | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/qt-5/5.4/setup-hook.sh b/pkgs/development/libraries/qt-5/5.4/setup-hook.sh index af581f033ba4..8c1a6094dc5e 100644 --- a/pkgs/development/libraries/qt-5/5.4/setup-hook.sh +++ b/pkgs/development/libraries/qt-5/5.4/setup-hook.sh @@ -20,9 +20,11 @@ addQtModule() { fi fi - if [[ -n $qtSubmodule ]] && [[ -d "$1/lib" ]]; then + if [[ -d "$1/lib" ]]; then @lndir@/bin/lndir -silent "$1/lib" "$qtOut/lib" - find "$1/lib" -printf 'lib/%P\n' >> "$qtOut/nix-support/qt-inputs" + if [[ -n $qtSubmodule ]]; then + find "$1/lib" -printf 'lib/%P\n' >> "$qtOut/nix-support/qt-inputs" + fi fi fi } From 5f462f0eae09402cbd06603c0094cbe58c5881e0 Mon Sep 17 00:00:00 2001 From: Pascal Wittmann Date: Wed, 1 Jul 2015 22:06:39 +0200 Subject: [PATCH 189/259] xconq: fix build and refactor --- pkgs/games/xconq/default.nix | 100 +++++++++++++---------------------- 1 file changed, 38 insertions(+), 62 deletions(-) diff --git a/pkgs/games/xconq/default.nix b/pkgs/games/xconq/default.nix index 413ecccc76ef..53c3ec7dec85 100644 --- a/pkgs/games/xconq/default.nix +++ b/pkgs/games/xconq/default.nix @@ -1,55 +1,18 @@ -x@{builderDefsPackage - , rpm, cpio, xproto, libX11, libXmu, libXaw, libXt, tcl, tk, libXext - , fontconfig - , makeWrapper - , ...}: -builderDefsPackage -(a : -let - helperArgNames = ["stdenv" "fetchurl" "builderDefsPackage"] ++ - []; +{ stdenv, fetchurl, cpio, xproto, libX11, libXmu, libXaw, libXt, tcl, tk +, libXext, fontconfig, makeWrapper }: - buildInputs = map (n: builtins.getAttr n x) - (builtins.attrNames (builtins.removeAttrs x helperArgNames)); - sourceInfo = rec { - baseName="xconq"; - version="7.5.0-0pre.0.20050612"; - name="${baseName}-${version}"; - extension="src.rpm"; - project="${baseName}"; - url="mirror://sourceforge/project/${project}/${baseName}/${name}/${baseName}-${version}.${extension}"; - hash="0i41dz95af2pzmmjz0sc1n0wdxy7gjqlfcl503hw1xd5zza2lw2j"; - }; -in -rec { - src = a.fetchurl { - url = sourceInfo.url; - sha256 = sourceInfo.hash; +stdenv.mkDerivation rec { + name = "${baseName}-${version}"; + baseName="xconq"; + version = "7.5.0-0pre.0.20050612"; + + src = fetchurl { + url = "mirror://sourceforge/project/${baseName}/${baseName}/${name}/${name}.tar.gz"; + sha256 = "1za78yx57mgwcmmi33wx3533yz1x093dnqis8q2qmqivxav51lca"; }; - inherit (sourceInfo) name version; - inherit buildInputs; - - /* doConfigure should be removed if not needed */ - phaseNames = ["addInputs" "doUnpack" "fixMakefiles" "fixCfiles" "fixTCLfiles" - "doConfigure" "doMakeInstall" "doWrap"]; - - doWrap = a.makeManyWrappers ''$out/bin/*'' ''--prefix TCLLIBPATH ' ' "${tk}/lib"''; - - fixMakefiles = a.fullDepEntry '' - find . -name 'Makefile.in' -exec sed -re 's@^ ( *)(cd|[&][&])@ \1\2@' -i '{}' ';' - find . -name 'Makefile.in' -exec sed -e '/chown/d; /chgrp/d' -i '{}' ';' - sed -e '/^ * *[$][(]tcltkdir[)]\/[*][.][*]/d' -i tcltk/Makefile.in - '' ["minInit" "doUnpack"]; - - fixCfiles = a.fullDepEntry '' - sed -re 's@[(]int[)]color@(long)color@' -i tcltk/tkmap.c - sed -re '/unitp = view_unit[(]uview[)]/aelse *unitp = NULL\;' -i tcltk/tkmap.c - '' ["minInit" "doUnpack"]; - - fixTCLfiles = a.fullDepEntry '' - sed -re 's@MediumBlue@LightBlue@g' -i tcltk/tkconq.tcl - '' ["minInit" "doUnpack"]; + buildInputs = [ cpio xproto libX11 libXmu libXaw libXt tcl tk libXext + fontconfig makeWrapper ]; configureFlags = [ "--enable-alternate-scoresdir=scores" @@ -57,17 +20,30 @@ rec { "--with-tkconfig=${tk}/lib" ]; - meta = { - description = "A programmable turn-based strategy game"; - maintainers = with a.lib.maintainers; - [ - raskin - ]; - platforms = with a.lib.platforms; - linux; - license = a.lib.licenses.gpl2; - }; - passthru = { - }; -}) x + patchPhase = '' + # Fix Makefiles + find . -name 'Makefile.in' -exec sed -re 's@^ ( *)(cd|[&][&])@ \1\2@' -i '{}' ';' + find . -name 'Makefile.in' -exec sed -e '/chown/d; /chgrp/d' -i '{}' ';' + sed -e '/^ * *[$][(]tcltkdir[)]\/[*][.][*]/d' -i tcltk/Makefile.in + # Fix C files + sed -re 's@[(]int[)]color@(long)color@' -i tcltk/tkmap.c + sed -re '/unitp = view_unit[(]uview[)]/aelse *unitp = NULL\;' -i tcltk/tkmap.c + + # Fix TCL files + sed -re 's@MediumBlue@LightBlue@g' -i tcltk/tkconq.tcl + ''; + + postInstall = '' + for file in $out/bin/*; do + wrapProgram $file --prefix TCLLIBPATH ' ' "${tk}/lib" + done + ''; + + meta = with stdenv.lib; { + description = "A programmable turn-based strategy game"; + maintainers = with maintainers; [ raskin ]; + platforms = platforms.linux; + license = licenses.gpl2; + }; +} From 05aa0c09909c1fafaf95f29f8905ba9002922ba2 Mon Sep 17 00:00:00 2001 From: "William A. Kennington III" Date: Wed, 1 Jul 2015 13:28:55 -0700 Subject: [PATCH 190/259] mbedtls: Remove postInstall workarounds that were fixed upstream Fixed by upstream commit f5203e0bb5a33b65aafdeb35fb6082ea69d700ff. --- pkgs/development/libraries/mbedtls/default.nix | 7 ------- 1 file changed, 7 deletions(-) diff --git a/pkgs/development/libraries/mbedtls/default.nix b/pkgs/development/libraries/mbedtls/default.nix index 75ce53f8db35..c37aea46eed5 100644 --- a/pkgs/development/libraries/mbedtls/default.nix +++ b/pkgs/development/libraries/mbedtls/default.nix @@ -22,13 +22,6 @@ stdenv.mkDerivation rec { "DESTDIR=\${out}" ]; - postInstall = '' - rm -f $out/lib/lib{mbedtls.so.8,polarssl.{a,so}} - ln -s libmbedtls.so $out/lib/libmbedtls.so.8 - ln -s libmbedtls.so $out/lib/libpolarssl.so - ln -s libmbedtls.a $out/lib/libpolarssl.a - ''; - doCheck = true; meta = with stdenv.lib; { From f6edc25af64800cb326b6dcdbb198df9e6fba690 Mon Sep 17 00:00:00 2001 From: Pascal Wittmann Date: Wed, 1 Jul 2015 23:12:03 +0200 Subject: [PATCH 191/259] blitz: fix build --- pkgs/development/libraries/blitz/default.nix | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/pkgs/development/libraries/blitz/default.nix b/pkgs/development/libraries/blitz/default.nix index a64a8bd59437..e6f59ca8efeb 100644 --- a/pkgs/development/libraries/blitz/default.nix +++ b/pkgs/development/libraries/blitz/default.nix @@ -32,8 +32,7 @@ stdenv.mkDerivation rec { patches = [ ./blitz-gcc47.patch ./blitz-testsuite-stencil-et.patch ]; buildInputs = [ pkgconfig gfortran texinfo ] - ++ optional (boost != null) boost - ; + ++ optional (boost != null) [ boost.lib ]; configureFlags = [ "--enable-shared" From 571d878e4090b0985ff44d0ddcd9dda75467823f Mon Sep 17 00:00:00 2001 From: Pascal Wittmann Date: Thu, 2 Jul 2015 00:02:24 +0200 Subject: [PATCH 192/259] botan: fix build --- pkgs/development/libraries/botan/generic.nix | 4 ---- 1 file changed, 4 deletions(-) diff --git a/pkgs/development/libraries/botan/generic.nix b/pkgs/development/libraries/botan/generic.nix index 5880ae772ceb..c4a13b55fd8b 100644 --- a/pkgs/development/libraries/botan/generic.nix +++ b/pkgs/development/libraries/botan/generic.nix @@ -26,10 +26,6 @@ stdenv.mkDerivation rec { enableParallelBuilding = true; - preInstall = '' - patchShebangs src/scripts - ''; - postInstall = '' cd "$out"/lib/pkgconfig ln -s botan-*.pc botan.pc || true From f0c00accd46479a95518fa91f0f1a258a6f74b41 Mon Sep 17 00:00:00 2001 From: Pascal Wittmann Date: Thu, 2 Jul 2015 00:17:58 +0200 Subject: [PATCH 193/259] crackxls: fix build --- pkgs/tools/security/crackxls/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/tools/security/crackxls/default.nix b/pkgs/tools/security/crackxls/default.nix index 37e3e048a767..f4c92ac701f4 100644 --- a/pkgs/tools/security/crackxls/default.nix +++ b/pkgs/tools/security/crackxls/default.nix @@ -15,7 +15,7 @@ stdenv.mkDerivation rec { installPhase = '' - mkdir $out/bin + mkdir -p $out/bin cp crackxls2003 $out/bin/ ''; From 63041a7ecb9404ea2c309c7cd4146d003380727d Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Fri, 3 Jul 2015 04:28:43 +0200 Subject: [PATCH 194/259] kexec-tools: 2.0.9 -> 2.0.10 --- pkgs/os-specific/linux/kexectools/default.nix | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/pkgs/os-specific/linux/kexectools/default.nix b/pkgs/os-specific/linux/kexectools/default.nix index f26c72bd6e5b..483cdef079de 100644 --- a/pkgs/os-specific/linux/kexectools/default.nix +++ b/pkgs/os-specific/linux/kexectools/default.nix @@ -1,16 +1,18 @@ { stdenv, fetchurl, zlib }: +let version = "2.0.10"; in stdenv.mkDerivation rec { - name = "kexec-tools-2.0.9"; + name = "kexec-tools-${version}"; src = fetchurl { url = "http://horms.net/projects/kexec/kexec-tools/${name}.tar.xz"; - sha256 = "0wag8pxn13i0j91x2bszpmi5i88xnndcmqz1w5a0jdbnxff4mqwa"; + sha256 = "18x134nj37j1rshn5hxbyhdcv9kk5sfshs72alkip1icf54l2gp2"; }; buildInputs = [ zlib ]; meta = with stdenv.lib; { + inherit version; homepage = http://horms.net/projects/kexec/kexec-tools; description = "Tools related to the kexec Linux feature"; platforms = with platforms; linux; From 06efb2e937c1335a4c6c8fd509b98ad54d65c1db Mon Sep 17 00:00:00 2001 From: Vincent Laporte Date: Sat, 4 Jul 2015 00:39:44 +0200 Subject: [PATCH 195/259] chefdk: fix build --- pkgs/development/tools/chefdk/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/tools/chefdk/default.nix b/pkgs/development/tools/chefdk/default.nix index ee49423a8b17..043ee8adf421 100644 --- a/pkgs/development/tools/chefdk/default.nix +++ b/pkgs/development/tools/chefdk/default.nix @@ -1,4 +1,4 @@ -{ stdenv, lib, bundlerEnv, ruby, perl }: +{ stdenv, lib, bundlerEnv, ruby, perl, autoconf }: bundlerEnv { name = "chefdk-0.4.0"; @@ -8,7 +8,7 @@ bundlerEnv { lockfile = ./Gemfile.lock; gemset = ./gemset.nix; - buildInputs = [ perl ]; + buildInputs = [ perl autoconf ]; meta = with lib; { description = "A streamlined development and deployment workflow for Chef platform"; From 236366019187b5fbe568764ade67ae034cac796e Mon Sep 17 00:00:00 2001 From: Vincent Laporte Date: Sat, 4 Jul 2015 13:04:55 +0200 Subject: [PATCH 196/259] jedit: fix build --- pkgs/applications/editors/jedit/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/editors/jedit/default.nix b/pkgs/applications/editors/jedit/default.nix index 7dfb651d7d30..f66ce799d26b 100644 --- a/pkgs/applications/editors/jedit/default.nix +++ b/pkgs/applications/editors/jedit/default.nix @@ -3,8 +3,8 @@ let version = "5.2.0"; bsh = fetchurl { - url = http://www.beanshell.org/bsh-2.0b4.jar; - sha256 = "1di7hj2yms1m3wa8k70jpw0wzfnrgibpqnvdk33ahfaqi03mqfci"; + url = http://www.beanshell.org/bsh-2.0b5.jar; + sha256 = "0p2sxrpzd0vsk11zf3kb5h12yl1nq4yypb5mpjrm8ww0cfaijck2"; }; bcpg = fetchurl { url = http://central.maven.org/maven2/org/bouncycastle/bcpg-jdk16/1.46/bcpg-jdk16-1.46.jar; From 642eb4ca0537ce811354988ee2f9a7ac5799e047 Mon Sep 17 00:00:00 2001 From: "William A. Kennington III" Date: Mon, 6 Jul 2015 17:22:06 -0700 Subject: [PATCH 197/259] mesa: 10.5.8 -> 10.6.1 --- 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 ed6ba30626cb..be2544091e26 100644 --- a/pkgs/development/libraries/mesa/default.nix +++ b/pkgs/development/libraries/mesa/default.nix @@ -23,7 +23,7 @@ else */ let - version = "10.5.8"; + version = "10.6.1"; # this is the default search path for DRI drivers driverLink = "/run/opengl-driver" + stdenv.lib.optionalString stdenv.isi686 "-32"; in @@ -37,7 +37,7 @@ stdenv.mkDerivation { "https://launchpad.net/mesa/trunk/${version}/+download/mesa-${version}.tar.xz" "ftp://ftp.freedesktop.org/pub/mesa/${version}/mesa-${version}.tar.xz" ]; - sha256 = "2866b855c5299a4aed066338c77ff6467c389b2c30ada7647be8758663da2b54"; + sha256 = "6c80a2b647e57c85dc36e609d9aed17f878f0d8e0cf9ace86d14cf604101e1eb"; }; prePatch = "patchShebangs ."; From 6aa4714dbad2acf3defe340f0c52dd315a95adf7 Mon Sep 17 00:00:00 2001 From: "William A. Kennington III" Date: Mon, 6 Jul 2015 17:37:18 -0700 Subject: [PATCH 198/259] coreutils: 8.23 -> 8.24 --- pkgs/tools/misc/coreutils/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/tools/misc/coreutils/default.nix b/pkgs/tools/misc/coreutils/default.nix index e2d0670a8266..d72786fa2ff6 100644 --- a/pkgs/tools/misc/coreutils/default.nix +++ b/pkgs/tools/misc/coreutils/default.nix @@ -12,11 +12,11 @@ with { inherit (stdenv.lib) optional optionals optionalString optionalAttrs; }; let self = stdenv.mkDerivation rec { - name = "coreutils-8.23"; + name = "coreutils-8.24"; src = fetchurl { url = "mirror://gnu/coreutils/${name}.tar.xz"; - sha256 = "0bdq6yggyl7nkc2pbl6pxhhyx15nyqhz3ds6rfn448n6rxdwlhzc"; + sha256 = "0w11jw3fb5sslf0f72kxy7llxgk1ia3a6bcw0c9kmvxrlj355mx2"; }; patches = if stdenv.isCygwin then [ ./coreutils-8.23-4.cygwin.patch ] else null; From 7f547126d86fd81cd66bac2c048827b6cb5ee70b Mon Sep 17 00:00:00 2001 From: "William A. Kennington III" Date: Mon, 6 Jul 2015 18:34:11 -0700 Subject: [PATCH 199/259] perl: Make 5.22 the default --- pkgs/top-level/all-packages.nix | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 1d2e8e4fe379..0a3a6c2b8a5d 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -4908,8 +4908,7 @@ let fetchurl = fetchurlBoot; }; - # Make perl522 the default once gnulib is updated to support it. - perl = perl520; + perl = perl522; php = php56; From 731b4a4371639be9003e8b6778536e1441db7872 Mon Sep 17 00:00:00 2001 From: "William A. Kennington III" Date: Mon, 6 Jul 2015 19:21:21 -0700 Subject: [PATCH 200/259] perlPackages: Updates --- .../perl-modules/DBD-SQLite/default.nix | 4 +- pkgs/top-level/perl-packages.nix | 41 ++++++++++--------- 2 files changed, 23 insertions(+), 22 deletions(-) diff --git a/pkgs/development/perl-modules/DBD-SQLite/default.nix b/pkgs/development/perl-modules/DBD-SQLite/default.nix index fbdcec06d0dd..985e7946b6b4 100644 --- a/pkgs/development/perl-modules/DBD-SQLite/default.nix +++ b/pkgs/development/perl-modules/DBD-SQLite/default.nix @@ -1,11 +1,11 @@ { stdenv, fetchurl, buildPerlPackage, DBI, sqlite }: buildPerlPackage rec { - name = "DBD-SQLite-1.44"; + name = "DBD-SQLite-1.48"; src = fetchurl { url = "mirror://cpan/authors/id/I/IS/ISHIGAKI/${name}.tar.gz"; - sha256 = "10r7wv5x4vzn9zbk3c7mhbx6kz76xxd9p357592c0wamj458qlml"; + sha256 = "19hf0fc4dlnpmxsxx3jjbh2z6d2jafgdlqhwz4irkp2cbl7j75xk"; }; propagatedBuildInputs = [ DBI ]; diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix index 362aa821ca6f..8d4f0a624f66 100644 --- a/pkgs/top-level/perl-packages.nix +++ b/pkgs/top-level/perl-packages.nix @@ -2545,11 +2545,11 @@ let self = _self // overrides; _self = with self; { inherit (pkgs) db; }; - DBI = buildPerlPackage { - name = "DBI-1.631"; + DBI = buildPerlPackage rec { + name = "DBI-1.633"; src = fetchurl { - url = mirror://cpan/authors/id/T/TI/TIMB/DBI-1.631.tar.gz; - sha256 = "04fmrnchhwi7jx4niaiv93vmi343hdm3xj04w9zr2m9hhqh782np"; + url = "mirror://cpan/authors/id/T/TI/TIMB/${name}.tar.gz"; + sha256 = "1rsyrzmykl7fxpvxmrjmy3dh9szp639fqdhbccqvywpnr7fbmhg2"; }; meta = { homepage = http://dbi.perl.org/; @@ -4005,12 +4005,13 @@ let self = _self // overrides; _self = with self; { }; }; - FontTTF = buildPerlPackage { - name = "Font-TTF-0.48"; + FontTTF = buildPerlPackage rec { + name = "Font-TTF-1.05"; src = fetchurl { - url = mirror://cpan/authors/id/M/MH/MHOSKEN/Font-TTF-0.48.tar.gz; - sha256 = "0lhz7v8ihaj35y6kr7jb971hgc4iqh1nz3qbfkignb9i8b1dw97r"; + url = "mirror://cpan/authors/id/M/MH/MHOSKEN/${name}.tar.gz"; + sha256 = "0l7vxag0v3hf7w1kjyjv02zqrjzhg6xczcv60z00l3z0fr78xi16"; }; + propagatedBuildInputs = [ IOString ]; }; ForksSuper = buildPerlPackage { @@ -4810,10 +4811,10 @@ let self = _self // overrides; _self = with self; { }; IOTty = buildPerlPackage rec { - name = "IO-Tty-1.10"; + name = "IO-Tty-1.12"; src = fetchurl { url = "mirror://cpan/authors/id/T/TO/TODDR/${name}.tar.gz"; - sha256 = "1cgqyv1zg8857inlnfczrrgpqr0r6mmqv29b7jlmxv47s4df59ii"; + sha256 = "0399anjy3bc0w8xzsc3qx5vcyqryc9gc52lc7wh7i49hsdq8gvx2"; }; }; @@ -5351,11 +5352,11 @@ let self = _self // overrides; _self = with self; { }; }; - LWP = buildPerlPackage { - name = "libwww-perl-6.05"; + LWP = buildPerlPackage rec { + name = "libwww-perl-6.13"; src = fetchurl { - url = mirror://cpan/authors/id/G/GA/GAAS/libwww-perl-6.05.tar.gz; - sha256 = "08wgwyz7748pv5cyngxia0xl6nragfnhrp4p9s78xhgfyygpj9bv"; + url = "mirror://cpan/authors/id/E/ET/ETHER/${name}.tar.gz"; + sha256 = "1cpqjl59viw50bnbdyn8xzrwzg7g54b2rszw0fifacqrppp17gaz"; }; propagatedBuildInputs = [ EncodeLocale FileListing HTMLParser HTTPCookies HTTPDaemon HTTPDate HTTPNegotiate HTTPMessage LWPMediaTypes NetHTTP URI WWWRobotRules ]; doCheck = false; # tries to start a daemon @@ -8973,10 +8974,10 @@ let self = _self // overrides; _self = with self; { }; TermReadLineGnu = buildPerlPackage rec { - name = "Term-ReadLine-Gnu-1.24"; + name = "Term-ReadLine-Gnu-1.26"; src = fetchurl { url = "mirror://cpan/authors/id/H/HA/HAYASHI/${name}.tar.gz"; - sha256 = "0dp18pgn8vl4dh6rgzcp1kzk4j6wjrrxd6sfcrrywy7jg4b7ikfc"; + sha256 = "1s2dvjbh501c04s5hpf17mwirslmhqmsymg3ri4hcvh5yvp7bw7q"; }; buildInputs = [ pkgs.readline pkgs.ncurses ]; NIX_CFLAGS_LINK = "-lreadline"; @@ -10634,10 +10635,10 @@ let self = _self // overrides; _self = with self; { }; XMLLibXML = buildPerlPackage rec { - name = "XML-LibXML-2.0115"; + name = "XML-LibXML-2.0121"; src = fetchurl { url = "mirror://cpan/authors/id/S/SH/SHLOMIF/${name}.tar.gz"; - sha256 = "0d6l6idl2920x9xi097fvzfdn9i0s8qa9ksw4bz2w1wh3zsn07zm"; + sha256 = "1j8d3kmkdlzvyx3khvrcrvp798h50i6zc5i3zm04d81prc8i0hzc"; }; SKIP_SAX_INSTALL = 1; buildInputs = [ pkgs.libxml2 ]; @@ -10772,10 +10773,10 @@ let self = _self // overrides; _self = with self; { }; XMLWriter = buildPerlPackage rec { - name = "XML-Writer-0.624"; + name = "XML-Writer-0.625"; src = fetchurl { url = "mirror://cpan/authors/id/J/JO/JOSEPHW/${name}.tar.gz"; - sha256 = "0yyz0dh9b4clailbxyi90dfrqpyc6py77rmmz6qmkx7ynlpyxk46"; + sha256 = "1gjzs570i67ywbv967g8ylb5sg59clwmyrl2yix3jl70dhn55070"; }; }; From f36a9a798e7b9a54bed2042ca77a75b3debf7645 Mon Sep 17 00:00:00 2001 From: "William A. Kennington III" Date: Tue, 7 Jul 2015 00:01:16 -0700 Subject: [PATCH 201/259] spidermonkey: Use more system dependencies and fix for perl 5.22 --- .../interpreters/spidermonkey/17.0.nix | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/pkgs/development/interpreters/spidermonkey/17.0.nix b/pkgs/development/interpreters/spidermonkey/17.0.nix index 41757244c004..7573b546164b 100644 --- a/pkgs/development/interpreters/spidermonkey/17.0.nix +++ b/pkgs/development/interpreters/spidermonkey/17.0.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchurl, pkgconfig, nspr, perl, python, zip }: +{ stdenv, fetchurl, pkgconfig, nspr, perl, python, zip, libffi, readline }: stdenv.mkDerivation rec { version = "17.0.0"; @@ -11,16 +11,26 @@ stdenv.mkDerivation rec { propagatedBuildInputs = [ nspr ]; - buildInputs = [ pkgconfig perl python zip ]; + buildInputs = [ pkgconfig perl python zip libffi readline ]; postUnpack = "sourceRoot=\${sourceRoot}/js/src"; + postPatch = '' + # Fixes an issue with version detection under perl 5.22.x + sed -i 's/(defined\((@TEMPLATE_FILE)\))/\1/' config/milestone.pl + ''; + preConfigure = '' export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -I${nspr}/include/nspr" export LIBXUL_DIST=$out ''; - configureFlags = [ "--enable-threadsafe" "--with-system-nspr" ]; + configureFlags = [ + "--enable-threadsafe" + "--with-system-nspr" + "--with-system-ffi" + "--enable-readline" + ]; # hack around a make problem, see https://github.com/NixOS/nixpkgs/issues/1279#issuecomment-29547393 preBuild = "touch -- {.,shell,jsapi-tests}/{-lpthread,-ldl}"; From 76483363d128007771673b73a6490cb001816e86 Mon Sep 17 00:00:00 2001 From: "William A. Kennington III" Date: Tue, 7 Jul 2015 00:01:33 -0700 Subject: [PATCH 202/259] polkit: 0.112 -> 0.113 --- pkgs/development/libraries/polkit/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/development/libraries/polkit/default.nix b/pkgs/development/libraries/polkit/default.nix index 7fe16cec56b9..cdeaa0cb1d96 100644 --- a/pkgs/development/libraries/polkit/default.nix +++ b/pkgs/development/libraries/polkit/default.nix @@ -15,11 +15,11 @@ let in stdenv.mkDerivation rec { - name = "polkit-0.112"; + name = "polkit-0.113"; src = fetchurl { url = "http://www.freedesktop.org/software/polkit/releases/${name}.tar.gz"; - sha256 = "1xkary7yirdcjdva950nqyhmsz48qhrdsr78zciahj27p8yg95fn"; + sha256 = "109w86kfqrgz83g9ivggplmgc77rz8kx8646izvm2jb57h4rbh71"; }; buildInputs = @@ -38,7 +38,7 @@ stdenv.mkDerivation rec { preConfigure = '' patchShebangs . '' + stdenv.lib.optionalString useSystemd /* bogus chroot detection */ '' - sed '/libsystemd-login autoconfigured, but system does not appear to use systemd/s/.*/:/' -i configure + sed '/libsystemd autoconfigured/s/.*/:/' -i configure '' # ‘libpolkit-agent-1.so’ should call the setuid wrapper on # NixOS. Hard-coding the path is kinda ugly. Maybe we can just From 9da5943cac189382cb5b3643543eef5308b8515c Mon Sep 17 00:00:00 2001 From: "William A. Kennington III" Date: Tue, 7 Jul 2015 01:50:02 -0700 Subject: [PATCH 203/259] gcc: 4.9.2 -> 4.9.3 --- pkgs/development/compilers/gcc/4.9/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/compilers/gcc/4.9/default.nix b/pkgs/development/compilers/gcc/4.9/default.nix index 5d525e6d50fe..14641faa5fec 100644 --- a/pkgs/development/compilers/gcc/4.9/default.nix +++ b/pkgs/development/compilers/gcc/4.9/default.nix @@ -56,7 +56,7 @@ assert langGo -> langCC; with stdenv.lib; with builtins; -let version = "4.9.2"; +let version = "4.9.3"; # Whether building a cross-compiler for GNU/Hurd. crossGNU = cross != null && cross.config == "i586-pc-gnu"; @@ -212,7 +212,7 @@ stdenv.mkDerivation ({ src = fetchurl { url = "mirror://gnu/gcc/gcc-${version}/gcc-${version}.tar.bz2"; - sha256 = "1pbjp4blk2ycaa6r3jmw4ky5f1s9ji3klbqgv8zs2sl5jn1cj810"; + sha256 = "0zmnm00d2a1hsd41g34bhvxzvxisa2l584q3p447bd91lfjv4ci3"; }; inherit patches; From b7ffacffef2fdf6be1b6e044a1da52efb9d89740 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Tue, 7 Jul 2015 15:13:31 +0200 Subject: [PATCH 204/259] Revert "perl: Make 5.22 the default" This reverts commit 7f547126d86fd81cd66bac2c048827b6cb5ee70b. We're a bit too close to release to make such fundamental changes. --- pkgs/top-level/all-packages.nix | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 0a3a6c2b8a5d..1d2e8e4fe379 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -4908,7 +4908,8 @@ let fetchurl = fetchurlBoot; }; - perl = perl522; + # Make perl522 the default once gnulib is updated to support it. + perl = perl520; php = php56; From 81396388e59b83f1a663cf4789c08f8574d66171 Mon Sep 17 00:00:00 2001 From: "William A. Kennington III" Date: Tue, 7 Jul 2015 09:50:31 -0700 Subject: [PATCH 205/259] spidermonkey: Apply 17 patch to 24 --- .../interpreters/spidermonkey/24.2.nix | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/pkgs/development/interpreters/spidermonkey/24.2.nix b/pkgs/development/interpreters/spidermonkey/24.2.nix index 44fe4f60d53e..3a9bd8ad7a46 100644 --- a/pkgs/development/interpreters/spidermonkey/24.2.nix +++ b/pkgs/development/interpreters/spidermonkey/24.2.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchurl, pkgconfig, nspr, perl, python, zip }: +{ stdenv, fetchurl, pkgconfig, nspr, perl, python, zip, libffi, readline }: stdenv.mkDerivation rec { version = "24.2.0"; @@ -11,7 +11,12 @@ stdenv.mkDerivation rec { propagatedBuildInputs = [ nspr ]; - buildInputs = [ pkgconfig perl python zip ]; + buildInputs = [ pkgconfig perl python zip libffi readline ]; + + postPatch = '' + # Fixes an issue with version detection under perl 5.22.x + sed -i 's/(defined\((@TEMPLATE_FILE)\))/\1/' config/milestone.pl + ''; postUnpack = "sourceRoot=\${sourceRoot}/js/src"; @@ -20,7 +25,12 @@ stdenv.mkDerivation rec { export LIBXUL_DIST=$out ''; - configureFlags = [ "--enable-threadsafe" "--with-system-nspr" ]; + configureFlags = [ + "--enable-threadsafe" + "--with-system-nspr" + "--with-system-ffi" + "--enable-readline" + ]; # hack around a make problem, see https://github.com/NixOS/nixpkgs/issues/1279#issuecomment-29547393 preBuild = "touch -- {.,shell,jsapi-tests}/{-lpthread,-ldl}"; From cb3e282cdacdd1e42c4e62712263f515a5ffd128 Mon Sep 17 00:00:00 2001 From: Jude Taylor Date: Thu, 2 Jul 2015 18:59:10 -0700 Subject: [PATCH 206/259] unique host deps, otherwise we get 600000 char derivations --- pkgs/stdenv/generic/default.nix | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/pkgs/stdenv/generic/default.nix b/pkgs/stdenv/generic/default.nix index 07486093da83..fe7bec54ba02 100644 --- a/pkgs/stdenv/generic/default.nix +++ b/pkgs/stdenv/generic/default.nix @@ -147,8 +147,9 @@ let __impureHostDeps = attrs.__impureHostDeps or []; __propagatedImpureHostDeps = attrs.__propagatedImpureHostDeps or []; - computedImpureHostDeps = lib.concatMap (input: input.__propagatedImpureHostDeps or []) (extraBuildInputs ++ buildInputs ++ nativeBuildInputs); - computedPropagatedImpureHostDeps = lib.concatMap (input: input.__propagatedImpureHostDeps or []) (propagatedBuildInputs ++ propagatedNativeBuildInputs); + # TODO: remove lib.unique once nix has a list canonicalization primitive + computedImpureHostDeps = lib.unique (lib.concatMap (input: input.__propagatedImpureHostDeps or []) (extraBuildInputs ++ buildInputs ++ nativeBuildInputs)); + computedPropagatedImpureHostDeps = lib.unique (lib.concatMap (input: input.__propagatedImpureHostDeps or []) (propagatedBuildInputs ++ propagatedNativeBuildInputs)); in { builder = attrs.realBuilder or shell; From 976d80eb573335e30da57153f959e75b9d76a69b Mon Sep 17 00:00:00 2001 From: Jude Taylor Date: Wed, 8 Jul 2015 14:14:27 -0700 Subject: [PATCH 207/259] map apple sdk frameworks CF to darwin.CF to avoid confusion --- pkgs/applications/editors/vim/default.nix | 6 +++ pkgs/os-specific/darwin/apple-sdk/default.nix | 8 +++- .../darwin/apple-sdk/frameworks.nix | 5 +-- .../darwin/apple-sdk/impure-deps.nix | 32 ++++++++++++--- .../CF/cf-bridging.patch | 39 +++++++++++++++++++ .../apple-source-releases/CF/default.nix | 14 ++++++- pkgs/top-level/all-packages.nix | 4 +- 7 files changed, 95 insertions(+), 13 deletions(-) create mode 100644 pkgs/os-specific/darwin/apple-source-releases/CF/cf-bridging.patch diff --git a/pkgs/applications/editors/vim/default.nix b/pkgs/applications/editors/vim/default.nix index 385611a167a3..e1e920e2c496 100644 --- a/pkgs/applications/editors/vim/default.nix +++ b/pkgs/applications/editors/vim/default.nix @@ -14,6 +14,12 @@ stdenv.mkDerivation rec { sha256 = "1z0qarf6a2smab28g9dnxklhfayn85wx48bnddmyhb9kqzjgqgjc"; }; + # this makes maintainers very sad + # open source CF doesn't have anything NSArray-related, causing linking errors. the + # missing symbol is in system CoreFoundation. + NIX_LDFLAGS = stdenv.lib.optional stdenv.isDarwin + "/System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation"; + enableParallelBuilding = true; buildInputs = [ ncurses pkgconfig ] diff --git a/pkgs/os-specific/darwin/apple-sdk/default.nix b/pkgs/os-specific/darwin/apple-sdk/default.nix index cc1032fc03d3..61cc84ca2be0 100644 --- a/pkgs/os-specific/darwin/apple-sdk/default.nix +++ b/pkgs/os-specific/darwin/apple-sdk/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchurl, xar, gzip, cpio }: +{ stdenv, fetchurl, xar, gzip, cpio, CF }: let # I'd rather not "export" this, since they're somewhat monolithic and encourage bad habits. @@ -146,5 +146,9 @@ in rec { }; }; - frameworks = stdenv.lib.mapAttrs framework (import ./frameworks.nix { inherit frameworks libs; }); + frameworks = (stdenv.lib.mapAttrs framework (import ./frameworks.nix { inherit frameworks libs; })) // { + CoreFoundation = CF; + }; + + inherit sdk; } diff --git a/pkgs/os-specific/darwin/apple-sdk/frameworks.nix b/pkgs/os-specific/darwin/apple-sdk/frameworks.nix index bedf39764a9a..8b4b291fb3fd 100644 --- a/pkgs/os-specific/darwin/apple-sdk/frameworks.nix +++ b/pkgs/os-specific/darwin/apple-sdk/frameworks.nix @@ -26,8 +26,7 @@ with frameworks; with libs; { CoreAudio = [ CoreFoundation IOKit ]; CoreAudioKit = [ AudioUnit ]; CoreData = []; - CoreFoundation = []; - CoreGraphics = [ Accelerate CoreFoundation IOKit IOSurface ]; + CoreGraphics = [ Accelerate CoreFoundation IOKit IOSurface SystemConfiguration ]; CoreLocation = []; CoreMIDI = [ CoreFoundation ]; CoreMIDIServer = []; @@ -110,7 +109,7 @@ with frameworks; with libs; { Accelerate = [ CoreWLAN IOBluetooth ]; ApplicationServices = [ CoreFoundation CoreServices CoreText ImageIO ]; Carbon = [ ApplicationServices CoreFoundation CoreServices IOKit Security ]; - CoreServices = [ CFNetwork CoreFoundation DiskArbitration Security NetFS OpenDirectory ServiceManagement ]; + CoreServices = [ CFNetwork CoreAudio CoreData CoreFoundation DiskArbitration Security NetFS OpenDirectory ServiceManagement ]; IOBluetooth = [ IOKit ]; JavaVM = []; OpenDirectory = []; diff --git a/pkgs/os-specific/darwin/apple-sdk/impure-deps.nix b/pkgs/os-specific/darwin/apple-sdk/impure-deps.nix index 8a9860c9c77b..c43bb4bf90cd 100644 --- a/pkgs/os-specific/darwin/apple-sdk/impure-deps.nix +++ b/pkgs/os-specific/darwin/apple-sdk/impure-deps.nix @@ -1,9 +1,8 @@ -{ - CoreFoundation = [ - "/System/Library/Frameworks/CoreFoundation.framework" - ]; +rec { CFNetwork = [ "/System/Library/Frameworks/CFNetwork.framework" + "/usr/lib/libsqlite3.dylib" + "/usr/lib/libxml2.2.dylib" ]; IOKit = [ "/System/Library/Frameworks/IOKit.framework" @@ -13,15 +12,28 @@ ]; Security = [ "/System/Library/Frameworks/Security.framework" + "/usr/lib/libbz2.1.0.dylib" + "/usr/lib/libpam.2.dylib" + "/usr/lib/libxar.1.dylib" ]; CoreServices = [ "/System/Library/Frameworks/CoreServices.framework" - ]; + "/System/Library/PrivateFrameworks/DataDetectorsCore.framework/Versions/A/DataDetectorsCore" + "/System/Library/PrivateFrameworks/TCC.framework/Versions/A/TCC" + "/System/Library/PrivateFrameworks/LanguageModeling.framework/Versions/A/LanguageModeling" + "/usr/lib/libmecabra.dylib" + "/usr/lib/libcmph.dylib" + "/usr/lib/libiconv.2.dylib" + "/usr/lib/libxslt.1.dylib" + ] ++ Foundation; IOSurface = [ "/System/Library/Frameworks/IOSurface.framework" ]; CoreGraphics = [ "/System/Library/Frameworks/CoreGraphics.framework" + "/System/Library/PrivateFrameworks/MultitouchSupport.framework/Versions/A/MultitouchSupport" + "/usr/lib/libbsm.0.dylib" + "/usr/lib/libz.1.dylib" ]; CoreText = [ "/System/Library/Frameworks/CoreText.framework" @@ -31,7 +43,9 @@ ]; ApplicationServices = [ "/System/Library/Frameworks/ApplicationServices.framework" - ]; + "/usr/lib/libcups.2.dylib" + "/usr/lib/libresolv.9.dylib" + ] ++ AudioToolbox; OpenGL = [ "/System/Library/Frameworks/OpenGL.framework" ]; @@ -102,6 +116,10 @@ Foundation = [ "/System/Library/Frameworks/Foundation.framework" "/usr/lib/libextension.dylib" + "/usr/lib/libarchive.2.dylib" + "/usr/lib/liblzma.5.dylib" + "/usr/lib/liblangid.dylib" + "/usr/lib/libCRFSuite.dylib" ]; CoreData = [ "/System/Library/Frameworks/CoreData.framework" @@ -131,6 +149,8 @@ ]; NetFS = [ "/System/Library/Frameworks/NetFS.framework" + "/System/Library/PrivateFrameworks/NetAuth.framework/Versions/A/NetAuth" + "/System/Library/PrivateFrameworks/login.framework/Versions/A/Frameworks/loginsupport.framework/Versions/A/loginsupport" ]; Accelerate = [ "/System/Library/Frameworks/Accelerate.framework" diff --git a/pkgs/os-specific/darwin/apple-source-releases/CF/cf-bridging.patch b/pkgs/os-specific/darwin/apple-source-releases/CF/cf-bridging.patch new file mode 100644 index 000000000000..068a6311a9cb --- /dev/null +++ b/pkgs/os-specific/darwin/apple-source-releases/CF/cf-bridging.patch @@ -0,0 +1,39 @@ +diff --git a/CFBase.h b/CFBase.h +index ffddd2b..e5a926b 100644 +--- a/CFBase.h ++++ b/CFBase.h +@@ -249,6 +249,33 @@ CF_EXTERN_C_BEGIN + #endif + #endif + ++#if __has_attribute(objc_bridge) && __has_feature(objc_bridge_id) && __has_feature(objc_bridge_id_on_typedefs) ++ ++#ifdef __OBJC__ ++@class NSArray; ++@class NSAttributedString; ++@class NSString; ++@class NSNull; ++@class NSCharacterSet; ++@class NSData; ++@class NSDate; ++@class NSTimeZone; ++@class NSDictionary; ++@class NSError; ++@class NSLocale; ++@class NSNumber; ++@class NSSet; ++@class NSURL; ++#endif ++ ++#define CF_BRIDGED_TYPE(T) __attribute__((objc_bridge(T))) ++#define CF_BRIDGED_MUTABLE_TYPE(T) __attribute__((objc_bridge_mutable(T))) ++#define CF_RELATED_TYPE(T,C,I) __attribute__((objc_bridge_related(T,C,I))) ++#else ++#define CF_BRIDGED_TYPE(T) ++#define CF_BRIDGED_MUTABLE_TYPE(T) ++#define CF_RELATED_TYPE(T,C,I) ++#endif + + CF_EXPORT double kCFCoreFoundationVersionNumber; + + diff --git a/pkgs/os-specific/darwin/apple-source-releases/CF/default.nix b/pkgs/os-specific/darwin/apple-source-releases/CF/default.nix index 3d4ac89e0a7e..f919dde7f69a 100644 --- a/pkgs/os-specific/darwin/apple-source-releases/CF/default.nix +++ b/pkgs/os-specific/darwin/apple-source-releases/CF/default.nix @@ -3,7 +3,16 @@ appleDerivation { buildInputs = [ dyld icu libdispatch launchd libclosure ]; - patches = [ ./add-cf-initialize.patch ./add-cfmachport.patch ]; + patches = [ ./add-cf-initialize.patch ./add-cfmachport.patch ./cf-bridging.patch ]; + + # CFAttributedString.h is in the SDK only, not on opensource.apple.com or github + __propagatedImpureHostDeps = [ + "/System/Library/Frameworks/CoreFoundation.framework" + "/usr/lib/libc++.1.dylib" + "/usr/lib/libc++abi.dylib" + "/usr/lib/libicucore.A.dylib" + "/usr/lib/libz.1.dylib" + ]; preBuild = '' substituteInPlace Makefile \ @@ -35,6 +44,9 @@ appleDerivation { ''; postInstall = '' + # gross! convince apple to release this as part of CF + cp /System/Library/Frameworks/CoreFoundation.framework/Headers/CFAttributedString.h "$out/System/Library/Frameworks/CoreFoundation.framework/Headers" + mv $out/System/* $out rmdir $out/System ''; diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 6afed1980a80..140136492eab 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -9343,7 +9343,9 @@ let cmdline_sdk = cmdline.sdk; cmdline_tools = cmdline.tools; - apple_sdk = callPackage ../os-specific/darwin/apple-sdk {}; + apple_sdk = callPackage ../os-specific/darwin/apple-sdk { + inherit (darwin) CF; + }; libobjc = apple-source-releases.objc4; }; From 6f6d873069835f97c1d99e9b2ae21e3a5666c900 Mon Sep 17 00:00:00 2001 From: Jude Taylor Date: Wed, 8 Jul 2015 14:14:46 -0700 Subject: [PATCH 208/259] darwin purity: mercurial --- pkgs/applications/version-management/mercurial/default.nix | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/version-management/mercurial/default.nix b/pkgs/applications/version-management/mercurial/default.nix index 6c58fbd3689a..4d8b2fe27c60 100644 --- a/pkgs/applications/version-management/mercurial/default.nix +++ b/pkgs/applications/version-management/mercurial/default.nix @@ -19,8 +19,9 @@ stdenv.mkDerivation { inherit python; # pass it so that the same version can be used in hg2git pythonPackages = [ curses ]; - buildInputs = [ python makeWrapper docutils unzip ] - ++ stdenv.lib.optional stdenv.isDarwin ApplicationServices; + buildInputs = [ python makeWrapper docutils unzip ]; + + propagatedBuildInputs = stdenv.lib.optional stdenv.isDarwin ApplicationServices; makeFlags = "PREFIX=$(out)"; From ce5afbbb261d46daded0a2ca6cf773050ac1693d Mon Sep 17 00:00:00 2001 From: Jude Taylor Date: Wed, 8 Jul 2015 14:14:54 -0700 Subject: [PATCH 209/259] update libiconv source hash --- pkgs/os-specific/darwin/apple-source-releases/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/os-specific/darwin/apple-source-releases/default.nix b/pkgs/os-specific/darwin/apple-source-releases/default.nix index 92ee9e527261..1d89577012c9 100644 --- a/pkgs/os-specific/darwin/apple-source-releases/default.nix +++ b/pkgs/os-specific/darwin/apple-source-releases/default.nix @@ -64,7 +64,7 @@ let Libc_old = applePackage "Libc/825_40_1.nix" "825.40.1" "0xsx1im52gwlmcrv4lnhhhn9dyk5ci6g27k6yvibn9vj8fzjxwcf" {}; libclosure = applePackage "libclosure" "63" "083v5xhihkkajj2yvz0dwgbi0jl2qvzk22p7pqq1zp3ry85xagrx" {}; libdispatch = applePackage "libdispatch" "339.92.1" "1lc5033cmkwxy3r26gh9plimxshxfcbgw6i0j7mgjlnpk86iy5bk" {}; - libiconv = applePackage "libiconv" "41" "10q7yd35flr893nysn9i04njgks4m3gis7jivb9ra9dcb77gqdcn" {}; + libiconv = applePackage "libiconv" "41" "0sni1gx6i2h7r4r4hhwbxdir45cp039m4wi74izh4l0pfw7gywad" {}; Libinfo = applePackage "Libinfo" "449.1.3" "1ix6f7xwjnq9bqgv8w27k4j64bqn1mfhh91nc7ciiv55axpdb9hq" {}; Libm = applePackage "Libm" "2026" "02sd82ig2jvvyyfschmb4gpz6psnizri8sh6i982v341x6y4ysl7" {}; Libnotify = applePackage "Libnotify" "121.20.1" "164rx4za5z74s0mk9x0m1815r1m9kfal8dz3bfaw7figyjd6nqad" {}; From af22ac6f34a0f124c98268e7df0d483a327d0c7e Mon Sep 17 00:00:00 2001 From: "William A. Kennington III" Date: Wed, 8 Jul 2015 14:15:13 -0700 Subject: [PATCH 210/259] ruby: Fix 1.9.3 for libobjc --- 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 140136492eab..71bf1126cac9 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -5028,7 +5028,9 @@ let bundlerEnv = callPackage ../development/interpreters/ruby/bundler-env { }; ruby_1_8_7 = callPackage ../development/interpreters/ruby/ruby-1.8.7.nix { }; - ruby_1_9_3 = callPackage ../development/interpreters/ruby/ruby-1.9.3.nix { }; + ruby_1_9_3 = callPackage ../development/interpreters/ruby/ruby-1.9.3.nix { + inherit (darwin) libobjc; + }; ruby_2_0_0 = callPackage ../development/interpreters/ruby/ruby-2.0.0.nix { }; ruby_2_1_0 = callPackage ../development/interpreters/ruby/ruby-2.1.0.nix { }; ruby_2_1_1 = callPackage ../development/interpreters/ruby/ruby-2.1.1.nix { }; From 76674a3c07a52d99d12095af1386a6e4fd1c7946 Mon Sep 17 00:00:00 2001 From: "William A. Kennington III" Date: Wed, 8 Jul 2015 16:17:25 -0700 Subject: [PATCH 211/259] gcc: 4.8.4 -> 4.8.5 --- pkgs/development/compilers/gcc/4.8/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/compilers/gcc/4.8/default.nix b/pkgs/development/compilers/gcc/4.8/default.nix index 2035e0aaff06..ff1d388b6e23 100644 --- a/pkgs/development/compilers/gcc/4.8/default.nix +++ b/pkgs/development/compilers/gcc/4.8/default.nix @@ -56,7 +56,7 @@ assert langGo -> langCC; with stdenv.lib; with builtins; -let version = "4.8.4"; +let version = "4.8.5"; # Whether building a cross-compiler for GNU/Hurd. crossGNU = cross != null && cross.config == "i586-pc-gnu"; @@ -213,7 +213,7 @@ stdenv.mkDerivation ({ src = fetchurl { url = "mirror://gnu/gcc/gcc-${version}/gcc-${version}.tar.bz2"; - sha256 = "15c6gwm6dzsaagamxkak5smdkf1rdfbqqjs9jdbrp3lbg4ism02a"; + sha256 = "08yggr18v373a1ihj0rg2vd6psnic42b518xcgp3r9k81xz1xyr2"; }; inherit patches; From 5ce2cf8a0f7fc213a42a043bbaa740e9b423f91d Mon Sep 17 00:00:00 2001 From: "William A. Kennington III" Date: Wed, 8 Jul 2015 16:18:08 -0700 Subject: [PATCH 212/259] v8_3_16_14: Must be build with gcc <= 4.8 --- 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 71bf1126cac9..44ce810cd070 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -8184,6 +8184,7 @@ let v8_3_16_14 = callPackage ../development/libraries/v8/3.16.14.nix { inherit (pythonPackages) gyp; + stdenv = overrideCC stdenv gcc48; }; v8_3_24_10 = callPackage ../development/libraries/v8/3.24.10.nix { From 906be98e0d6ff4a47800b6ecf76db96f4223a6dc Mon Sep 17 00:00:00 2001 From: "William A. Kennington III" Date: Wed, 8 Jul 2015 16:21:03 -0700 Subject: [PATCH 213/259] isl: Add 0.15.0 And remove the defunct and unused default.nix --- .../development/libraries/isl/{default.nix => 0.15.0.nix} | 8 +++----- pkgs/top-level/all-packages.nix | 3 ++- 2 files changed, 5 insertions(+), 6 deletions(-) rename pkgs/development/libraries/isl/{default.nix => 0.15.0.nix} (71%) diff --git a/pkgs/development/libraries/isl/default.nix b/pkgs/development/libraries/isl/0.15.0.nix similarity index 71% rename from pkgs/development/libraries/isl/default.nix rename to pkgs/development/libraries/isl/0.15.0.nix index 9518a0c0e657..eca3372ad4d0 100644 --- a/pkgs/development/libraries/isl/default.nix +++ b/pkgs/development/libraries/isl/0.15.0.nix @@ -1,19 +1,17 @@ { stdenv, fetchurl, gmp }: stdenv.mkDerivation rec { - name = "isl-0.14"; + name = "isl-0.15"; src = fetchurl { - url = "http://isl.gforge.inria.fr/${name}.tar.bz2"; - sha256 = "0dlg4b85nw4w534525h0fvb7yhb8i4am8kskhmm0ym7qabzh4g3y"; + url = "http://isl.gforge.inria.fr/${name}.tar.xz"; + sha256 = "1m922l5bz69lvkcxrib7lvjqwfqsr8rpbzgmb2aq07bp76460jhh"; }; buildInputs = [ gmp ]; enableParallelBuilding = true; - doCheck = true; - meta = { homepage = http://www.kotnet.org/~skimo/isl/; license = stdenv.lib.licenses.lgpl21; diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 44ce810cd070..770c544da5f0 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -1899,10 +1899,11 @@ let ised = callPackage ../tools/misc/ised {}; - isl = isl_0_14; + isl = isl_0_15; isl_0_11 = callPackage ../development/libraries/isl/0.11.1.nix { }; isl_0_12 = callPackage ../development/libraries/isl/0.12.2.nix { }; isl_0_14 = callPackage ../development/libraries/isl/0.14.1.nix { }; + isl_0_15 = callPackage ../development/libraries/isl/0.15.0.nix { }; isync = callPackage ../tools/networking/isync { }; From 5c57369fc414c634e680ec00b720f67036c5dc4a Mon Sep 17 00:00:00 2001 From: Luca Bruno Date: Thu, 9 Jul 2015 10:38:22 +0200 Subject: [PATCH 214/259] cloog: fix build by using isl_0_14 (ZHF) --- pkgs/top-level/all-packages.nix | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 770c544da5f0..2c9514a47e75 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -1147,7 +1147,10 @@ let inherit (perlPackages) perl AlgorithmDiff RegexpCommon; }; - cloog = callPackage ../development/libraries/cloog { }; + cloog = callPackage ../development/libraries/cloog { + isl = isl_0_14; + }; + cloog_0_18_0 = callPackage ../development/libraries/cloog/0.18.0.nix { isl = isl_0_11; }; From 33da6ac7659a6b2fb628584d52cc0b8bb59f3986 Mon Sep 17 00:00:00 2001 From: Luca Bruno Date: Thu, 9 Jul 2015 11:05:46 +0200 Subject: [PATCH 215/259] go 1.3: fix build on i686 (ZHF) --- pkgs/development/compilers/go/1.3.nix | 2 +- .../compilers/go/R_386_GOT32.patch | 46 +++++++++++++++++++ 2 files changed, 47 insertions(+), 1 deletion(-) create mode 100644 pkgs/development/compilers/go/R_386_GOT32.patch diff --git a/pkgs/development/compilers/go/1.3.nix b/pkgs/development/compilers/go/1.3.nix index 52a388aff1fe..65b80a7f3af2 100644 --- a/pkgs/development/compilers/go/1.3.nix +++ b/pkgs/development/compilers/go/1.3.nix @@ -66,7 +66,7 @@ stdenv.mkDerivation { sed -i 's,/lib/ld-linux.so.2,${loader386},' src/cmd/8l/asm.c ''; - patches = [ ./cacert-1.2.patch ]; + patches = [ ./cacert-1.2.patch ./R_386_GOT32.patch ]; GOOS = if stdenv.isDarwin then "darwin" else "linux"; GOARCH = if stdenv.isDarwin then "amd64" diff --git a/pkgs/development/compilers/go/R_386_GOT32.patch b/pkgs/development/compilers/go/R_386_GOT32.patch new file mode 100644 index 000000000000..c029d50168a3 --- /dev/null +++ b/pkgs/development/compilers/go/R_386_GOT32.patch @@ -0,0 +1,46 @@ +From 609d996fac7f68b34032572b7bde627f658b95f2 Mon Sep 17 00:00:00 2001 +From: Russ Cox +Date: Mon, 6 Oct 2014 14:17:48 -0400 +Subject: [PATCH] cmd/8l: accept R_386_GOT32 in push instruction + +Fixes #8382. + +LGTM=iant +R=iant +CC=golang-codereviews +https://golang.org/cl/149540045 +--- + src/cmd/8l/asm.c | 18 +++++++++++++----- + 1 file changed, 13 insertions(+), 5 deletions(-) + +diff --git a/src/cmd/8l/asm.c b/src/cmd/8l/asm.c +index c135dce..98c0424 100644 +--- a/src/cmd/8l/asm.c ++++ b/src/cmd/8l/asm.c +@@ -117,13 +117,21 @@ adddynrel(LSym *s, Reloc *r) + case 256 + R_386_GOT32: + if(targ->type != SDYNIMPORT) { + // have symbol +- // turn MOVL of GOT entry into LEAL of symbol itself +- if(r->off < 2 || s->p[r->off-2] != 0x8b) { +- diag("unexpected GOT reloc for non-dynamic symbol %s", targ->name); ++ if(r->off >= 2 && s->p[r->off-2] == 0x8b) { ++ // turn MOVL of GOT entry into LEAL of symbol address, relative to GOT. ++ s->p[r->off-2] = 0x8d; ++ r->type = R_GOTOFF; + return; + } +- s->p[r->off-2] = 0x8d; +- r->type = R_GOTOFF; ++ if(r->off >= 2 && s->p[r->off-2] == 0xff && s->p[r->off-1] == 0xb3) { ++ // turn PUSHL of GOT entry into PUSHL of symbol itself. ++ // use unnecessary SS prefix to keep instruction same length. ++ s->p[r->off-2] = 0x36; ++ s->p[r->off-1] = 0x68; ++ r->type = R_ADDR; ++ return; ++ } ++ diag("unexpected GOT reloc for non-dynamic symbol %s", targ->name); + return; + } + addgotsym(ctxt, targ); From 8e56309dd5c7dfc3bf7d82b8b128a2acc2b0532c Mon Sep 17 00:00:00 2001 From: Luca Bruno Date: Thu, 9 Jul 2015 11:48:39 +0200 Subject: [PATCH 216/259] botanUnstable: fix installation (ZHF) --- pkgs/development/libraries/botan/generic.nix | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/pkgs/development/libraries/botan/generic.nix b/pkgs/development/libraries/botan/generic.nix index c4a13b55fd8b..823e50e32272 100644 --- a/pkgs/development/libraries/botan/generic.nix +++ b/pkgs/development/libraries/botan/generic.nix @@ -26,6 +26,12 @@ stdenv.mkDerivation rec { enableParallelBuilding = true; + preInstall = '' + if [ -d src/scripts ]; then + patchShebangs src/scripts + fi + ''; + postInstall = '' cd "$out"/lib/pkgconfig ln -s botan-*.pc botan.pc || true From b847dec4a08799dbac25cc6add5f70b1c519e7e0 Mon Sep 17 00:00:00 2001 From: Pascal Wittmann Date: Thu, 9 Jul 2015 12:27:29 +0200 Subject: [PATCH 217/259] eudev: disable install-exec-hook target (ZHF) --- pkgs/os-specific/linux/eudev/default.nix | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/pkgs/os-specific/linux/eudev/default.nix b/pkgs/os-specific/linux/eudev/default.nix index 1932fc9d11f7..1db5967aab54 100644 --- a/pkgs/os-specific/linux/eudev/default.nix +++ b/pkgs/os-specific/linux/eudev/default.nix @@ -26,6 +26,12 @@ stdenv.mkDerivation { "hwdb_bin=/var/lib/udev/hwdb.bin" "udevrulesdir=/etc/udev/rules.d" ]; + + preInstall = '' + # Disable install-exec-hook target as it conflicts with our move-sbin setup-hook + sed -i 's;$(MAKE) $(AM_MAKEFLAGS) install-exec-hook;$(MAKE) $(AM_MAKEFLAGS);g' src/udev/Makefile + ''; + installFlags = [ "localstatedir=$(TMPDIR)/var" From 6d32ae415aca5bc13ed032094b28a41fba5b4961 Mon Sep 17 00:00:00 2001 From: Pascal Wittmann Date: Thu, 9 Jul 2015 12:57:41 +0200 Subject: [PATCH 218/259] heme: fix build by using -lncurses (ZHF) --- pkgs/applications/editors/heme/default.nix | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/pkgs/applications/editors/heme/default.nix b/pkgs/applications/editors/heme/default.nix index 092b7ef68656..d377e5cb36f6 100644 --- a/pkgs/applications/editors/heme/default.nix +++ b/pkgs/applications/editors/heme/default.nix @@ -11,7 +11,8 @@ stdenv.mkDerivation rec { substituteInPlace Makefile \ --replace "/usr/local" "$out" \ --replace "CFLAGS = " "CFLAGS = -I${ncurses}/include " \ - --replace "LDFLAGS = " "LDFLAGS = -L${ncurses}/lib " + --replace "LDFLAGS = " "LDFLAGS = -L${ncurses}/lib " \ + --replace "-lcurses" "-lncurses" ''; preBuild = '' mkdir -p $out/bin From ad41a600e58a24abf6721d81e9630d4ce3ebd153 Mon Sep 17 00:00:00 2001 From: Pascal Wittmann Date: Thu, 9 Jul 2015 13:18:21 +0200 Subject: [PATCH 219/259] oprofile: update from 0.9.9 to 1.0.0 (ZHF) fixes the build with recent versions of binutils --- .../tools/profiling/oprofile/default.nix | 21 ++++--------------- 1 file changed, 4 insertions(+), 17 deletions(-) diff --git a/pkgs/development/tools/profiling/oprofile/default.nix b/pkgs/development/tools/profiling/oprofile/default.nix index 6c7b2a4d9ae1..561fea6ef7b0 100644 --- a/pkgs/development/tools/profiling/oprofile/default.nix +++ b/pkgs/development/tools/profiling/oprofile/default.nix @@ -1,26 +1,18 @@ -{ stdenv, fetchurl, binutils, popt, makeWrapper, gawk, which, gnugrep, zlib -, pkgconfig +{ stdenv, fetchurl, binutils, popt, zlib, pkgconfig , withGUI ? false , qt4 ? null}: # libX11 is needed because the Qt build stuff automatically adds `-lX11'. assert withGUI -> qt4 != null; stdenv.mkDerivation rec { - name = "oprofile-0.9.9"; + name = "oprofile-1.0.0"; src = fetchurl { url = "mirror://sourceforge/oprofile/${name}.tar.gz"; - sha256 = "15vm24jhw4xfd55pfw1rlpzfsh4bl1vyjsajs78bi9xbv8038lhy"; + sha256 = "0nn4wfvwy4nii25y6lwlrnzx9ah4nz0r93yk7hswiy6wxjs10wc4"; }; - patchPhase = '' - sed -i "utils/opcontrol" \ - -e "s|OPCONTROL=.*$|OPCONTROL=\"$out/bin/opcontrol\"|g ; - s|OPDIR=.*$|OPDIR=\"$out/bin\"|g ; - s|^PATH=.*$||g" - ''; - - buildInputs = [ binutils zlib popt makeWrapper gawk which gnugrep pkgconfig ] + buildInputs = [ binutils zlib popt pkgconfig ] ++ stdenv.lib.optionals withGUI [ qt4 ]; configureFlags = [ @@ -28,11 +20,6 @@ stdenv.mkDerivation rec { ] ++ stdenv.lib.optional withGUI "--with-qt-dir=${qt4} --enable-gui=qt4"; - postInstall = '' - wrapProgram "$out/bin/opcontrol" \ - --prefix PATH : "$out/bin:${gawk}/bin:${which}/bin:${gnugrep}/bin" - ''; - meta = { description = "System-wide profiler for Linux"; longDescription = '' From 03bd9a363a5019516187715e36567358e98c3f1f Mon Sep 17 00:00:00 2001 From: Pascal Wittmann Date: Thu, 9 Jul 2015 13:52:26 +0200 Subject: [PATCH 220/259] pure: fixed build with gcc 4.9 (ZHF) Reported upstream https://bitbucket.org/purelang/pure-lang/issues/37 --- pkgs/development/interpreters/pure/default.nix | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/pkgs/development/interpreters/pure/default.nix b/pkgs/development/interpreters/pure/default.nix index 2860aceb383b..c471a3cdc0fb 100644 --- a/pkgs/development/interpreters/pure/default.nix +++ b/pkgs/development/interpreters/pure/default.nix @@ -16,6 +16,12 @@ stdenv.mkDerivation rec { buildInputs = [ bison flex makeWrapper ]; propagatedBuildInputs = [ llvm gmp mpfr readline ]; + postPatch = '' + for f in expr.cc matcher.cc printer.cc symtable.cc parserdefs.hh; do + sed -i '1i\#include ' $f + done + ''; + configureFlags = [ "--enable-release" ]; doCheck = true; checkPhase = '' From 6782a38364c9699fff39b885708af278d09b3b8b Mon Sep 17 00:00:00 2001 From: Pascal Wittmann Date: Thu, 9 Jul 2015 14:09:10 +0200 Subject: [PATCH 221/259] sdcc: update from 3.4.0 to 3.5.0, fixes build (ZHF) --- pkgs/development/compilers/sdcc/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/compilers/sdcc/default.nix b/pkgs/development/compilers/sdcc/default.nix index 0650fae917a6..a246a413f50d 100644 --- a/pkgs/development/compilers/sdcc/default.nix +++ b/pkgs/development/compilers/sdcc/default.nix @@ -1,12 +1,12 @@ { stdenv, fetchurl, bison, flex, boost, gputils ? null }: stdenv.mkDerivation rec { - version = "3.4.0"; + version = "3.5.0"; name = "sdcc-${version}"; src = fetchurl { url = "mirror://sourceforge/sdcc/sdcc-src-${version}.tar.bz2"; - sha256 = "1yavxffqdfhdyabdza936xxh9wq4cfwa385g26gjapsdp5ighsng"; + sha256 = "1aazz0yynr694q0rich7r03qls0zvsjc00il14pb4i22c78phagq"; }; # TODO: remove this comment when gputils != null is tested From 4d49006a0f8ebdf32416779167bcb783834f9629 Mon Sep 17 00:00:00 2001 From: Pascal Wittmann Date: Thu, 9 Jul 2015 15:00:31 +0200 Subject: [PATCH 222/259] rocksdb: fix build (ZHF) --- pkgs/development/libraries/rocksdb/default.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/pkgs/development/libraries/rocksdb/default.nix b/pkgs/development/libraries/rocksdb/default.nix index 7759aa799815..004e5e57de44 100644 --- a/pkgs/development/libraries/rocksdb/default.nix +++ b/pkgs/development/libraries/rocksdb/default.nix @@ -32,6 +32,7 @@ stdenv.mkDerivation rec { # Environment vars used for building certain configurations PORTABLE = "1"; USE_SSE = "1"; + CMAKE_CXX_FLAGS = "-std=gnu++11"; JEMALLOC_LIB = stdenv.lib.optionalString (malloc == jemalloc) "-ljemalloc"; buildFlags = [ From dc626693352250f21f0d2c6492757e6a916bcfc6 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Tue, 7 Jul 2015 15:01:36 +0200 Subject: [PATCH 223/259] =?UTF-8?q?Set=20=E2=80=98allowSubstitutes=20=3D?= =?UTF-8?q?=20false=E2=80=99=20on=20various=20derivations?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This reduces the number of binary cache requests. See https://github.com/NixOS/nix/commit/b64988bb3585478676585a0f0aecbcf4e11d4432. --- nixos/modules/services/hardware/udev.nix | 3 +++ nixos/modules/services/system/dbus.nix | 3 +++ nixos/modules/system/activation/top-level.nix | 1 + nixos/modules/system/boot/systemd-lib.nix | 16 +++++++++++++--- nixos/modules/system/etc/etc.nix | 1 + pkgs/build-support/trivial-builders.nix | 1 + 6 files changed, 22 insertions(+), 3 deletions(-) diff --git a/nixos/modules/services/hardware/udev.nix b/nixos/modules/services/hardware/udev.nix index 50588e449587..fc89de777e8e 100644 --- a/nixos/modules/services/hardware/udev.nix +++ b/nixos/modules/services/hardware/udev.nix @@ -28,7 +28,10 @@ let # Perform substitutions in all udev rules files. udevRules = stdenv.mkDerivation { name = "udev-rules"; + preferLocalBuild = true; + allowSubstitutes = false; + buildCommand = '' mkdir -p $out shopt -s nullglob diff --git a/nixos/modules/services/system/dbus.nix b/nixos/modules/services/system/dbus.nix index 853b458cf589..5c20901427cb 100644 --- a/nixos/modules/services/system/dbus.nix +++ b/nixos/modules/services/system/dbus.nix @@ -12,7 +12,10 @@ let configDir = pkgs.stdenv.mkDerivation { name = "dbus-conf"; + preferLocalBuild = true; + allowSubstitutes = false; + buildCommand = '' mkdir -p $out diff --git a/nixos/modules/system/activation/top-level.nix b/nixos/modules/system/activation/top-level.nix index b19fea57f6bf..839300798167 100644 --- a/nixos/modules/system/activation/top-level.nix +++ b/nixos/modules/system/activation/top-level.nix @@ -101,6 +101,7 @@ let if [] == failed then pkgs.stdenv.mkDerivation { name = "nixos-${config.system.nixosVersion}"; preferLocalBuild = true; + allowSubstitutes = false; buildCommand = systemBuilder; inherit (pkgs) utillinux coreutils; diff --git a/nixos/modules/system/boot/systemd-lib.nix b/nixos/modules/system/boot/systemd-lib.nix index 873fff15d384..8acaa5212f5f 100644 --- a/nixos/modules/system/boot/systemd-lib.nix +++ b/nixos/modules/system/boot/systemd-lib.nix @@ -13,13 +13,20 @@ rec { pathSafeName = lib.replaceChars ["@" ":" "\\"] ["-" "-" "-"] name; in if unit.enable then - pkgs.runCommand "unit-${pathSafeName}" { preferLocalBuild = true; inherit (unit) text; } + pkgs.runCommand "unit-${pathSafeName}" + { preferLocalBuild = true; + allowSubstitutes = false; + inherit (unit) text; + } '' mkdir -p $out echo -n "$text" > $out/${shellEscape name} '' else - pkgs.runCommand "unit-${pathSafeName}-disabled" { preferLocalBuild = true; } + pkgs.runCommand "unit-${pathSafeName}-disabled" + { preferLocalBuild = true; + allowSubstitutes = false; + } '' mkdir -p $out ln -s /dev/null $out/${shellEscape name} @@ -89,7 +96,10 @@ rec { as)); generateUnits = type: units: upstreamUnits: upstreamWants: - pkgs.runCommand "${type}-units" { preferLocalBuild = true; } '' + pkgs.runCommand "${type}-units" + { preferLocalBuild = true; + allowSubstitutes = false; + } '' mkdir -p $out # Copy the upstream systemd units we're interested in. diff --git a/nixos/modules/system/etc/etc.nix b/nixos/modules/system/etc/etc.nix index b57b03bcf962..300ae0acda53 100644 --- a/nixos/modules/system/etc/etc.nix +++ b/nixos/modules/system/etc/etc.nix @@ -14,6 +14,7 @@ let builder = ./make-etc.sh; preferLocalBuild = true; + allowSubstitutes = false; /* !!! Use toXML. */ sources = map (x: x.source) etc'; diff --git a/pkgs/build-support/trivial-builders.nix b/pkgs/build-support/trivial-builders.nix index d9eeaa31359d..9203425b20ae 100644 --- a/pkgs/build-support/trivial-builders.nix +++ b/pkgs/build-support/trivial-builders.nix @@ -23,6 +23,7 @@ rec { passAsFile = [ "text" ]; # Pointless to do this on a remote machine. preferLocalBuild = true; + allowSubstitutes = false; } '' n=$out${destination} From 9539db1ec3f7482c96b19893bcfad06d6ec6532c Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Thu, 9 Jul 2015 15:15:52 +0200 Subject: [PATCH 224/259] openssl: Update to 1.0.1p --- pkgs/development/libraries/openssl/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/openssl/default.nix b/pkgs/development/libraries/openssl/default.nix index d05e3f21e8a0..b9224dad110a 100644 --- a/pkgs/development/libraries/openssl/default.nix +++ b/pkgs/development/libraries/openssl/default.nix @@ -8,14 +8,14 @@ let stdenv.cross; in stdenv.mkDerivation rec { - name = "openssl-1.0.1o"; + name = "openssl-1.0.1p"; src = fetchurl { urls = [ "http://www.openssl.org/source/${name}.tar.gz" "http://openssl.linux-mirror.org/source/${name}.tar.gz" ]; - sha1 = "b003e3382607ef2c6d85b51e4ed7a4c0a76b8d5a"; + sha1 = "9d1977cc89242cd11471269ece2ed4650947c046"; }; patches = optional stdenv.isCygwin ./1.0.1-cygwin64.patch From 5e156b9db78a7639c7a7de6964b7a9188431f895 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Thu, 9 Jul 2015 15:17:14 +0200 Subject: [PATCH 225/259] openssl: Update to 1.0.2d --- pkgs/development/libraries/openssl/1.0.2.x.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/openssl/1.0.2.x.nix b/pkgs/development/libraries/openssl/1.0.2.x.nix index 2320d7c8a45c..28254cb390d4 100644 --- a/pkgs/development/libraries/openssl/1.0.2.x.nix +++ b/pkgs/development/libraries/openssl/1.0.2.x.nix @@ -8,14 +8,14 @@ let stdenv.cross; in stdenv.mkDerivation rec { - name = "openssl-1.0.2c"; + name = "openssl-1.0.2d"; src = fetchurl { urls = [ "http://www.openssl.org/source/${name}.tar.gz" "http://openssl.linux-mirror.org/source/${name}.tar.gz" ]; - sha1 = "6e4a5e91159eb32383296c7c83ac0e59b83a0a44"; + sha1 = "d01d17b44663e8ffa6a33a5a30053779d9593c3d"; }; patches = optional stdenv.isCygwin ./1.0.1-cygwin64.patch; From ed0d387a6df25b8727a3bd72806ee775bc5d8ac7 Mon Sep 17 00:00:00 2001 From: "William A. Kennington III" Date: Wed, 8 Jul 2015 17:21:47 -0700 Subject: [PATCH 226/259] gtk3: 3.16.4 -> 3.16.5 --- pkgs/development/libraries/gtk+/3.x.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/gtk+/3.x.nix b/pkgs/development/libraries/gtk+/3.x.nix index ac0fc53e755f..60b71f24aff4 100644 --- a/pkgs/development/libraries/gtk+/3.x.nix +++ b/pkgs/development/libraries/gtk+/3.x.nix @@ -10,7 +10,7 @@ assert cupsSupport -> cups != null; let ver_maj = "3.16"; - ver_min = "4"; + ver_min = "5"; version = "${ver_maj}.${ver_min}"; in stdenv.mkDerivation rec { @@ -18,7 +18,7 @@ stdenv.mkDerivation rec { src = fetchurl { url = "mirror://gnome/sources/gtk+/${ver_maj}/gtk+-${version}.tar.xz"; - sha256 = "13pwj12m55mbhdaiar57q2ivdsm3lm5ycyhvm8gak0fblkbxpr8y"; + sha256 = "13pwj12m55mbhdaiar57q2ivdsm3lm5ycyhvm8gak0fblkbxpr8a"; }; nativeBuildInputs = [ pkgconfig gettext gobjectIntrospection perl ]; From b477600cc00622030bbd99279b519b4f8f26847e Mon Sep 17 00:00:00 2001 From: "William A. Kennington III" Date: Thu, 9 Jul 2015 10:30:55 -0700 Subject: [PATCH 227/259] gcc5: Use 5.2 snapshot to fix bugs noticed in syslinux and chromium with gcc5.1 --- pkgs/development/compilers/gcc/5/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/development/compilers/gcc/5/default.nix b/pkgs/development/compilers/gcc/5/default.nix index 323a87bc7746..1cb0662da136 100644 --- a/pkgs/development/compilers/gcc/5/default.nix +++ b/pkgs/development/compilers/gcc/5/default.nix @@ -57,7 +57,7 @@ assert langGo -> langCC; with stdenv.lib; with builtins; -let version = "5.1.0"; +let version = "5.2.0-RC-20150707"; # Whether building a cross-compiler for GNU/Hurd. crossGNU = cross != null && cross.config == "i586-pc-gnu"; @@ -209,8 +209,8 @@ stdenv.mkDerivation ({ builder = ../builder.sh; src = fetchurl { - url = "mirror://gnu/gcc/gcc-${version}/gcc-${version}.tar.bz2"; - sha256 = "1bd5vj4px3s8nlakbgrh38ynxq4s654m6nxz7lrj03mvkkwgvnmp"; + url = "http://mirrors-usa.go-parts.com/gcc/snapshots/${version}/gcc-${version}.tar.bz2"; + sha256 = "1bjdpybw5gk58n737wzy9c0nna9pdqf9177pmb94icyc8qgy0a7z"; }; inherit patches; From 57edfb51334e2bd7438056c0394c7a64c97366ee Mon Sep 17 00:00:00 2001 From: "William A. Kennington III" Date: Thu, 9 Jul 2015 10:45:14 -0700 Subject: [PATCH 228/259] gtk3: Fix hash in ed0d387a6df25b8727a3bd72806ee775bc5d8ac7 --- pkgs/development/libraries/gtk+/3.x.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/development/libraries/gtk+/3.x.nix b/pkgs/development/libraries/gtk+/3.x.nix index 60b71f24aff4..f83986187270 100644 --- a/pkgs/development/libraries/gtk+/3.x.nix +++ b/pkgs/development/libraries/gtk+/3.x.nix @@ -18,7 +18,7 @@ stdenv.mkDerivation rec { src = fetchurl { url = "mirror://gnome/sources/gtk+/${ver_maj}/gtk+-${version}.tar.xz"; - sha256 = "13pwj12m55mbhdaiar57q2ivdsm3lm5ycyhvm8gak0fblkbxpr8a"; + sha256 = "0cdwykh4086f7fl4dkybgpyxyb1jcmxbfin2az42z5pb4z8rjz5q"; }; nativeBuildInputs = [ pkgconfig gettext gobjectIntrospection perl ]; From 710c4b2cb58cfba82633bcaedd7cf50a4d9b591b Mon Sep 17 00:00:00 2001 From: Pascal Wittmann Date: Thu, 9 Jul 2015 22:22:58 +0200 Subject: [PATCH 229/259] calibre: fix build by using qt54 --- pkgs/applications/misc/calibre/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/misc/calibre/default.nix b/pkgs/applications/misc/calibre/default.nix index fe6a3932af9a..787b5e805287 100644 --- a/pkgs/applications/misc/calibre/default.nix +++ b/pkgs/applications/misc/calibre/default.nix @@ -1,5 +1,5 @@ { stdenv, fetchurl, python, pyqt5, sip_4_16, poppler_utils, pkgconfig, libpng -, imagemagick, libjpeg, fontconfig, podofo, qt53, icu, sqlite +, imagemagick, libjpeg, fontconfig, podofo, qt5, icu, sqlite , pil, makeWrapper, unrar, chmlib, pythonPackages, xz, libusb1, libmtp , xdg_utils }: @@ -23,7 +23,7 @@ stdenv.mkDerivation rec { buildInputs = [ python pyqt5 sip_4_16 poppler_utils libpng imagemagick libjpeg - fontconfig podofo qt53 pil chmlib icu sqlite libusb1 libmtp xdg_utils + fontconfig podofo qt5.base pil chmlib icu sqlite libusb1 libmtp xdg_utils pythonPackages.mechanize pythonPackages.lxml pythonPackages.dateutil pythonPackages.cssutils pythonPackages.beautifulsoup pythonPackages.pillow pythonPackages.sqlite3 pythonPackages.netifaces pythonPackages.apsw From 64be54b84fe4ec05b7090244ac28ac91b6610702 Mon Sep 17 00:00:00 2001 From: "William A. Kennington III" Date: Thu, 9 Jul 2015 17:31:36 -0700 Subject: [PATCH 230/259] libidn: 1.30 -> 1.31 --- pkgs/development/libraries/libidn/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/libidn/default.nix b/pkgs/development/libraries/libidn/default.nix index 44aa546fe00d..4c781da63083 100644 --- a/pkgs/development/libraries/libidn/default.nix +++ b/pkgs/development/libraries/libidn/default.nix @@ -1,11 +1,11 @@ { fetchurl, stdenv }: stdenv.mkDerivation rec { - name = "libidn-1.30"; + name = "libidn-1.31"; src = fetchurl { url = "mirror://gnu/libidn/${name}.tar.gz"; - sha256 = "0lxh5r1z8gsk4jxx3rv8aasjv8p53j4y04kvfn2w30a0syagrf9r"; + sha256 = "026z12mczlag443ms9n954h36pi3m7iva9jfw8y4ispsj772zpxg"; }; doCheck = ! stdenv.isDarwin; From 097ffe89cd063d834928b9f135e9adba5982f7d1 Mon Sep 17 00:00:00 2001 From: "William A. Kennington III" Date: Fri, 10 Jul 2015 02:21:05 -0700 Subject: [PATCH 231/259] gcc48: Pin to the latest supported version of isl --- pkgs/top-level/all-packages.nix | 2 ++ 1 file changed, 2 insertions(+) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 2c9514a47e75..9697f543724c 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -3770,6 +3770,8 @@ let # be passed. cross = null; libcCross = if crossSystem != null then libcCross else null; + + isl = isl_0_14; })); gcc49 = lowPrio (wrapCC (callPackage ../development/compilers/gcc/4.9 { From f72beea75e98bb7d38d4481a6765ed0f85fd4e2c Mon Sep 17 00:00:00 2001 From: Jude Taylor Date: Thu, 9 Jul 2015 15:42:31 -0700 Subject: [PATCH 232/259] darwin purity: nodejs-0.10 --- pkgs/development/web/nodejs/v0_10.nix | 24 +++++++++---------- .../darwin/apple-sdk/frameworks.nix | 3 ++- .../darwin/apple-sdk/impure-deps.nix | 13 +++++++++- pkgs/top-level/all-packages.nix | 7 ++++-- 4 files changed, 31 insertions(+), 16 deletions(-) diff --git a/pkgs/development/web/nodejs/v0_10.nix b/pkgs/development/web/nodejs/v0_10.nix index 739a0ff9389b..eaa3c6386cb5 100644 --- a/pkgs/development/web/nodejs/v0_10.nix +++ b/pkgs/development/web/nodejs/v0_10.nix @@ -1,13 +1,11 @@ { stdenv, fetchurl, openssl, python, zlib, v8, utillinux, http-parser, c-ares -, pkgconfig, runCommand, which +, pkgconfig, runCommand, which, libtool + +# apple frameworks +, CoreServices, ApplicationServices, Carbon, Foundation }: let - dtrace = runCommand "dtrace-native" {} '' - mkdir -p $out/bin - ln -sv /usr/sbin/dtrace $out/bin - ''; - version = "0.10.38"; # !!! Should we also do shared libuv? @@ -37,21 +35,23 @@ in stdenv.mkDerivation { sha256 = "12xpa9jzry5g0j41908498qqs8v0q6miqkv6mggyzas8bvnshgai"; }; - configureFlags = concatMap sharedConfigureFlags (builtins.attrNames deps); + configureFlags = concatMap sharedConfigureFlags (builtins.attrNames deps) ++ + stdenv.lib.optional stdenv.isDarwin "--without-dtrace"; prePatch = '' - sed -e 's|^#!/usr/bin/env python$|#!${python}/bin/python|g' -i configure + patchShebangs . ''; - patches = if stdenv.isDarwin then [ ./no-xcode.patch ] else null; + patches = stdenv.lib.optional stdenv.isDarwin ./no-xcode.patch; - postPatch = if stdenv.isDarwin then '' + postPatch = stdenv.lib.optionalString stdenv.isDarwin '' (cd tools/gyp; patch -Np1 -i ${../../python-modules/gyp/no-darwin-cflags.patch}) - '' else null; + ''; buildInputs = [ python which ] ++ (optional stdenv.isLinux utillinux) - ++ optionals stdenv.isDarwin [ pkgconfig openssl dtrace ]; + ++ optionals stdenv.isDarwin [ pkgconfig openssl libtool CoreServices ApplicationServices Foundation ]; + propagatedBuildInputs = optionals stdenv.isDarwin [ Carbon ]; setupHook = ./setup-hook.sh; passthru.interpreterName = "nodejs-0.10"; diff --git a/pkgs/os-specific/darwin/apple-sdk/frameworks.nix b/pkgs/os-specific/darwin/apple-sdk/frameworks.nix index 8b4b291fb3fd..ca700a9be7e6 100644 --- a/pkgs/os-specific/darwin/apple-sdk/frameworks.nix +++ b/pkgs/os-specific/darwin/apple-sdk/frameworks.nix @@ -108,7 +108,8 @@ with frameworks; with libs; { # Umbrellas Accelerate = [ CoreWLAN IOBluetooth ]; ApplicationServices = [ CoreFoundation CoreServices CoreText ImageIO ]; - Carbon = [ ApplicationServices CoreFoundation CoreServices IOKit Security ]; + Carbon = [ ApplicationServices CoreFoundation CoreServices IOKit Security QuartzCore ]; + CoreBluetooth = []; CoreServices = [ CFNetwork CoreAudio CoreData CoreFoundation DiskArbitration Security NetFS OpenDirectory ServiceManagement ]; IOBluetooth = [ IOKit ]; JavaVM = []; diff --git a/pkgs/os-specific/darwin/apple-sdk/impure-deps.nix b/pkgs/os-specific/darwin/apple-sdk/impure-deps.nix index c43bb4bf90cd..0d2f2728406a 100644 --- a/pkgs/os-specific/darwin/apple-sdk/impure-deps.nix +++ b/pkgs/os-specific/darwin/apple-sdk/impure-deps.nix @@ -54,6 +54,7 @@ rec { ]; QuartzCore = [ "/System/Library/Frameworks/QuartzCore.framework" + "/System/Library/PrivateFrameworks/CrashReporterSupport.framework/Versions/A/CrashReporterSupport" ]; PCSC = [ "/System/Library/Frameworks/PCSC.framework" @@ -131,6 +132,14 @@ rec { ]; Carbon = [ "/System/Library/Frameworks/Carbon.framework" + "/System/Library/PrivateFrameworks/CoreUI.framework/Versions/A/CoreUI" + "/System/Library/PrivateFrameworks/DesktopServicesPriv.framework/Versions/A/DesktopServicesPriv" + "/System/Library/PrivateFrameworks/IconServices.framework/Versions/A/IconServices" + "/System/Library/PrivateFrameworks/ChunkingLibrary.framework/Versions/A/ChunkingLibrary" + "/System/Library/PrivateFrameworks/Ubiquity.framework/Versions/A/Ubiquity" + "/System/Library/PrivateFrameworks/Sharing.framework/Versions/A/Sharing" + "/System/Library/PrivateFrameworks/Apple80211.framework/Versions/A/Apple80211" + "/System/Library/PrivateFrameworks/GenerationalStorage.framework/Versions/A/GenerationalStorage" ]; CoreAudio = [ "/System/Library/Frameworks/CoreAudio.framework" @@ -169,7 +178,9 @@ rec { ]; IOBluetooth = [ "/System/Library/Frameworks/IOBluetooth.framework" - "/System/Library/Frameworks/CoreBluetooth.framework/Versions/A/CoreBluetooth" + ] ++ AudioUnit ++ CoreBluetooth; + CoreBluetooth = [ + "/System/Library/Frameworks/CoreBluetooth.framework" ]; SecurityFoundation = [ "/System/Library/Frameworks/SecurityFoundation.framework" diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 9697f543724c..29262aee6abd 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -2007,9 +2007,12 @@ let libtool = darwin.cctools; }; nodejs-unstable = callPackage ../development/web/nodejs { libuv = libuvVersions.v1_2_0; unstableVersion = true; }; - nodejs-0_10 = callPackage ../development/web/nodejs/v0_10.nix { }; + nodejs-0_10 = callPackage ../development/web/nodejs/v0_10.nix { + libtool = darwin.cctools; + inherit (darwin.apple_sdk.frameworks) CoreServices ApplicationServices Carbon Foundation; + }; - nodejs = if stdenv.system == "armv5tel-linux" then + nodejs = if stdenv.system == "armv5tel-linux" || stdenv.isDarwin then nodejs-0_10 else nodejs-0_12; From 7393c6c69d32ba844f2bf9bb88530ac3eb99a968 Mon Sep 17 00:00:00 2001 From: Jude Taylor Date: Thu, 9 Jul 2015 15:42:47 -0700 Subject: [PATCH 233/259] modernize rubies --- pkgs/development/interpreters/ruby/ruby-2.2.0.nix | 4 +++- pkgs/development/interpreters/ruby/ruby-2.2.2.nix | 4 +++- pkgs/top-level/all-packages.nix | 4 +++- 3 files changed, 9 insertions(+), 3 deletions(-) diff --git a/pkgs/development/interpreters/ruby/ruby-2.2.0.nix b/pkgs/development/interpreters/ruby/ruby-2.2.0.nix index b6375aa687d7..e22e64681a3a 100644 --- a/pkgs/development/interpreters/ruby/ruby-2.2.0.nix +++ b/pkgs/development/interpreters/ruby/ruby-2.2.0.nix @@ -7,6 +7,7 @@ , libyaml, yamlSupport ? true , libffi, fiddleSupport ? true , ruby_2_2_0, autoreconfHook, bison, useRailsExpress ? true +, libiconv, libobjc, libunwind }: let @@ -47,7 +48,8 @@ stdenv.mkDerivation rec { # support is not enabled, so add readline to the build inputs if curses # support is disabled (if it's enabled, we already have it) and we're # running on darwin - ++ (op (!cursesSupport && stdenv.isDarwin) readline); + ++ (op (!cursesSupport && stdenv.isDarwin) readline) + ++ (ops stdenv.isDarwin [ libiconv libobjc libunwind ]); enableParallelBuilding = true; diff --git a/pkgs/development/interpreters/ruby/ruby-2.2.2.nix b/pkgs/development/interpreters/ruby/ruby-2.2.2.nix index 5537d0e8c806..d75c21fa0b10 100644 --- a/pkgs/development/interpreters/ruby/ruby-2.2.2.nix +++ b/pkgs/development/interpreters/ruby/ruby-2.2.2.nix @@ -7,6 +7,7 @@ , libyaml, yamlSupport ? true , libffi, fiddleSupport ? true , ruby_2_2_2, autoreconfHook, bison, useRailsExpress ? true +, libiconv, libobjc, libunwind }: let @@ -47,7 +48,8 @@ stdenv.mkDerivation rec { # support is not enabled, so add readline to the build inputs if curses # support is disabled (if it's enabled, we already have it) and we're # running on darwin - ++ (op (!cursesSupport && stdenv.isDarwin) readline); + ++ (op (!cursesSupport && stdenv.isDarwin) readline) + ++ (ops stdenv.isDarwin [ libiconv libobjc libunwind ]); enableParallelBuilding = true; diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 29262aee6abd..2736481473e6 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -5047,7 +5047,9 @@ let ruby_2_1_3 = callPackage ../development/interpreters/ruby/ruby-2.1.3.nix { }; ruby_2_1_6 = callPackage ../development/interpreters/ruby/ruby-2.1.6.nix { }; ruby_2_2_0 = callPackage ../development/interpreters/ruby/ruby-2.2.0.nix { }; - ruby_2_2_2 = callPackage ../development/interpreters/ruby/ruby-2.2.2.nix { }; + ruby_2_2_2 = callPackage ../development/interpreters/ruby/ruby-2.2.2.nix { + inherit (darwin) libobjc libunwind; + }; # Ruby aliases ruby = ruby_2_2; From 5b3e50dedc0a1f03bddd7bc82f1d615300b7b0c5 Mon Sep 17 00:00:00 2001 From: Jude Taylor Date: Thu, 9 Jul 2015 15:43:01 -0700 Subject: [PATCH 234/259] use lib functions to clean up nodejs --- pkgs/development/web/nodejs/default.nix | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) diff --git a/pkgs/development/web/nodejs/default.nix b/pkgs/development/web/nodejs/default.nix index 3f8d1c1f00a2..daa37d5d2467 100644 --- a/pkgs/development/web/nodejs/default.nix +++ b/pkgs/development/web/nodejs/default.nix @@ -37,15 +37,10 @@ in stdenv.mkDerivation { configureFlags = concatMap sharedConfigureFlags (builtins.attrNames deps) ++ [ "--without-dtrace" ]; prePatch = '' - sed -e 's|^#!/usr/bin/env python$|#!${python}/bin/python|g' -i configure + patchShebangs . ''; - patches = if stdenv.isDarwin then [ ./no-xcode.patch ] else null; - - - preBuild = if stdenv.isDarwin then '' - patchShebangs . - '' else null; + patches = stdenv.lib.optional stdenv.isDarwin ./no-xcode.patch; buildInputs = [ python which ] ++ (optional stdenv.isLinux utillinux) From 43c72cb6afdf7625fa04b6218a116b4c3badf9d2 Mon Sep 17 00:00:00 2001 From: Jude Taylor Date: Sun, 21 Jun 2015 20:29:33 -0700 Subject: [PATCH 235/259] add security-tool --- .../build-managers/gnustep/make/default.nix | 31 +++++ .../build-managers/gnustep/xcode/default.nix | 23 ++++ pkgs/os-specific/darwin/apple-sdk/default.nix | 4 +- .../apple-source-releases/configd/default.nix | 2 + .../darwin/apple-source-releases/default.nix | 44 ++++-- .../apple-source-releases/libauto/default.nix | 7 +- .../libsecurity_apple_csp/GNUmakefile | 11 ++ .../libsecurity_apple_csp/default.nix | 31 +++++ .../libsecurity_apple_cspdl/GNUmakefile | 10 ++ .../libsecurity_apple_cspdl/default.nix | 16 +++ .../libsecurity_apple_file_dl/GNUmakefile | 10 ++ .../libsecurity_apple_file_dl/default.nix | 17 +++ .../libsecurity_apple_x509_cl/GNUmakefile | 10 ++ .../libsecurity_apple_x509_cl/default.nix | 18 +++ .../libsecurity_apple_x509_tp/GNUmakefile | 10 ++ .../libsecurity_apple_x509_tp/default.nix | 19 +++ .../libsecurity_asn1/GNUmakefile | 11 ++ .../libsecurity_asn1/default.nix | 14 ++ .../libsecurity_cdsa_client/GNUmakefile | 10 ++ .../libsecurity_cdsa_client/default.nix | 8 ++ .../libsecurity_cdsa_plugin/GNUmakefile | 10 ++ .../libsecurity_cdsa_plugin/default.nix | 15 ++ .../libsecurity_cdsa_utilities/GNUmakefile | 13 ++ .../libsecurity_cdsa_utilities/default.nix | 13 ++ .../handletemplates.patch | 19 +++ .../libsecurity_cdsa_utils/GNUmakefile | 13 ++ .../libsecurity_cdsa_utils/default.nix | 8 ++ .../libsecurity_codesigning/GNUmakefile | 10 ++ .../libsecurity_codesigning/default.nix | 7 + .../libsecurity_cssm/GNUmakefile | 11 ++ .../libsecurity_cssm/default.nix | 14 ++ .../libsecurity_filedb/GNUmakefile | 10 ++ .../libsecurity_filedb/default.nix | 13 ++ .../libsecurity_generic/default.nix | 58 ++++++++ .../libsecurity_generic/impure_deps.nix | 129 ++++++++++++++++++ .../libsecurity_keychain/GNUmakefile | 10 ++ .../libsecurity_keychain/default.nix | 47 +++++++ .../libsecurity_mds/GNUmakefile | 10 ++ .../libsecurity_mds/default.nix | 11 ++ .../libsecurity_ocspd/GNUmakefile | 10 ++ .../libsecurity_ocspd/default.nix | 20 +++ .../libsecurity_pkcs12/GNUmakefile | 11 ++ .../libsecurity_pkcs12/default.nix | 15 ++ .../libsecurity_sd_cspdl/GNUmakefile | 10 ++ .../libsecurity_sd_cspdl/default.nix | 10 ++ .../libsecurity_utilities/GNUmakefile | 11 ++ .../libsecurity_utilities/default.nix | 23 ++++ .../libsecurityd/GNUmakefile | 11 ++ .../libsecurityd/default.nix | 23 ++++ .../libsecurityd/xdr-arity.patch | 79 +++++++++++ .../security_dotmac_tp/GNUmakefile | 8 ++ .../security_dotmac_tp/default.nix | 4 + .../darwin/osx-private-sdk/default.nix | 46 ++----- pkgs/os-specific/darwin/osx-sdk/default.nix | 4 +- .../darwin/security-tool/GNUmakefile | 14 ++ .../darwin/security-tool/default.nix | 83 +++++++++-- .../darwin/security-tool/impure-deps.nix | 129 ++++++++++++++++++ pkgs/top-level/all-packages.nix | 10 +- 58 files changed, 1186 insertions(+), 62 deletions(-) create mode 100644 pkgs/development/tools/build-managers/gnustep/make/default.nix create mode 100644 pkgs/development/tools/build-managers/gnustep/xcode/default.nix create mode 100644 pkgs/os-specific/darwin/apple-source-releases/libsecurity_apple_csp/GNUmakefile create mode 100644 pkgs/os-specific/darwin/apple-source-releases/libsecurity_apple_csp/default.nix create mode 100644 pkgs/os-specific/darwin/apple-source-releases/libsecurity_apple_cspdl/GNUmakefile create mode 100644 pkgs/os-specific/darwin/apple-source-releases/libsecurity_apple_cspdl/default.nix create mode 100644 pkgs/os-specific/darwin/apple-source-releases/libsecurity_apple_file_dl/GNUmakefile create mode 100644 pkgs/os-specific/darwin/apple-source-releases/libsecurity_apple_file_dl/default.nix create mode 100644 pkgs/os-specific/darwin/apple-source-releases/libsecurity_apple_x509_cl/GNUmakefile create mode 100644 pkgs/os-specific/darwin/apple-source-releases/libsecurity_apple_x509_cl/default.nix create mode 100644 pkgs/os-specific/darwin/apple-source-releases/libsecurity_apple_x509_tp/GNUmakefile create mode 100644 pkgs/os-specific/darwin/apple-source-releases/libsecurity_apple_x509_tp/default.nix create mode 100644 pkgs/os-specific/darwin/apple-source-releases/libsecurity_asn1/GNUmakefile create mode 100644 pkgs/os-specific/darwin/apple-source-releases/libsecurity_asn1/default.nix create mode 100644 pkgs/os-specific/darwin/apple-source-releases/libsecurity_cdsa_client/GNUmakefile create mode 100644 pkgs/os-specific/darwin/apple-source-releases/libsecurity_cdsa_client/default.nix create mode 100644 pkgs/os-specific/darwin/apple-source-releases/libsecurity_cdsa_plugin/GNUmakefile create mode 100644 pkgs/os-specific/darwin/apple-source-releases/libsecurity_cdsa_plugin/default.nix create mode 100644 pkgs/os-specific/darwin/apple-source-releases/libsecurity_cdsa_utilities/GNUmakefile create mode 100644 pkgs/os-specific/darwin/apple-source-releases/libsecurity_cdsa_utilities/default.nix create mode 100644 pkgs/os-specific/darwin/apple-source-releases/libsecurity_cdsa_utilities/handletemplates.patch create mode 100644 pkgs/os-specific/darwin/apple-source-releases/libsecurity_cdsa_utils/GNUmakefile create mode 100644 pkgs/os-specific/darwin/apple-source-releases/libsecurity_cdsa_utils/default.nix create mode 100644 pkgs/os-specific/darwin/apple-source-releases/libsecurity_codesigning/GNUmakefile create mode 100644 pkgs/os-specific/darwin/apple-source-releases/libsecurity_codesigning/default.nix create mode 100644 pkgs/os-specific/darwin/apple-source-releases/libsecurity_cssm/GNUmakefile create mode 100644 pkgs/os-specific/darwin/apple-source-releases/libsecurity_cssm/default.nix create mode 100644 pkgs/os-specific/darwin/apple-source-releases/libsecurity_filedb/GNUmakefile create mode 100644 pkgs/os-specific/darwin/apple-source-releases/libsecurity_filedb/default.nix create mode 100644 pkgs/os-specific/darwin/apple-source-releases/libsecurity_generic/default.nix create mode 100644 pkgs/os-specific/darwin/apple-source-releases/libsecurity_generic/impure_deps.nix create mode 100644 pkgs/os-specific/darwin/apple-source-releases/libsecurity_keychain/GNUmakefile create mode 100644 pkgs/os-specific/darwin/apple-source-releases/libsecurity_keychain/default.nix create mode 100644 pkgs/os-specific/darwin/apple-source-releases/libsecurity_mds/GNUmakefile create mode 100644 pkgs/os-specific/darwin/apple-source-releases/libsecurity_mds/default.nix create mode 100644 pkgs/os-specific/darwin/apple-source-releases/libsecurity_ocspd/GNUmakefile create mode 100644 pkgs/os-specific/darwin/apple-source-releases/libsecurity_ocspd/default.nix create mode 100644 pkgs/os-specific/darwin/apple-source-releases/libsecurity_pkcs12/GNUmakefile create mode 100644 pkgs/os-specific/darwin/apple-source-releases/libsecurity_pkcs12/default.nix create mode 100644 pkgs/os-specific/darwin/apple-source-releases/libsecurity_sd_cspdl/GNUmakefile create mode 100644 pkgs/os-specific/darwin/apple-source-releases/libsecurity_sd_cspdl/default.nix create mode 100644 pkgs/os-specific/darwin/apple-source-releases/libsecurity_utilities/GNUmakefile create mode 100644 pkgs/os-specific/darwin/apple-source-releases/libsecurity_utilities/default.nix create mode 100644 pkgs/os-specific/darwin/apple-source-releases/libsecurityd/GNUmakefile create mode 100644 pkgs/os-specific/darwin/apple-source-releases/libsecurityd/default.nix create mode 100644 pkgs/os-specific/darwin/apple-source-releases/libsecurityd/xdr-arity.patch create mode 100644 pkgs/os-specific/darwin/apple-source-releases/security_dotmac_tp/GNUmakefile create mode 100644 pkgs/os-specific/darwin/apple-source-releases/security_dotmac_tp/default.nix create mode 100644 pkgs/os-specific/darwin/security-tool/GNUmakefile create mode 100644 pkgs/os-specific/darwin/security-tool/impure-deps.nix diff --git a/pkgs/development/tools/build-managers/gnustep/make/default.nix b/pkgs/development/tools/build-managers/gnustep/make/default.nix new file mode 100644 index 000000000000..7fa9aad72dbe --- /dev/null +++ b/pkgs/development/tools/build-managers/gnustep/make/default.nix @@ -0,0 +1,31 @@ +{ stdenv, fetchurl }: + +stdenv.mkDerivation rec { + name = "make-${version}"; + version = "1.0"; + + src = fetchurl { + url = "http://ftpmain.gnustep.org/pub/gnustep/core/gnustep-make-2.6.6.tar.gz"; + sha256 = "07cqr8x17bia9w6clbmiv7ay6r9nplrjz2cyzinv4w7zfpc19vxw"; + }; + + patchPhase = '' + substituteInPlace GNUmakefile.in \ + --replace which type \ + --replace 'tooldir = $(DESTDIR)' 'tooldir = ' \ + --replace 'makedir = $(DESTDIR)' 'makedir = ' \ + --replace 'mandir = $(DESTDIR)' 'mandir = ' + + substituteInPlace FilesystemLayouts/apple \ + --replace /usr/local "" + ''; + + installFlags = "DESTDIR=$(out)"; + + postInstall = '' + mkdir -p $out/nix-support + cat >$out/nix-support/setup-hook <" ''$'#include \nstatic void msgtracer_log_with_keys(...) { };' diff --git a/pkgs/os-specific/darwin/apple-source-releases/libsecurity_apple_csp/GNUmakefile b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_apple_csp/GNUmakefile new file mode 100644 index 000000000000..ca263228fde8 --- /dev/null +++ b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_apple_csp/GNUmakefile @@ -0,0 +1,11 @@ +include $(GNUSTEP_MAKEFILES)/common.make + +LIBRARY_NAME = security_apple_csp + +security_apple_csp_HEADER_FILES = $(notdir $(wildcard lib/*.h)) +security_apple_csp_HEADER_FILES_DIR = lib + +security_apple_csp_CC_FILES = $(wildcard lib/*.cpp) +security_apple_csp_C_FILES = $(wildcard lib/*.c) + +include $(GNUSTEP_MAKEFILES)/library.make diff --git a/pkgs/os-specific/darwin/apple-source-releases/libsecurity_apple_csp/default.nix b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_apple_csp/default.nix new file mode 100644 index 000000000000..add46454cbe7 --- /dev/null +++ b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_apple_csp/default.nix @@ -0,0 +1,31 @@ +{ appleDerivation, apple_sdk, libsecurity_asn1, libsecurity_cdsa_plugin, libsecurity_cdsa_utilities, libsecurity_cdsa_utils, libsecurity_utilities, osx_private_sdk, stdenv }: +appleDerivation { + buildInputs = [ + libsecurity_cdsa_utilities + libsecurity_utilities + libsecurity_cdsa_plugin + libsecurity_asn1 + libsecurity_cdsa_utils + ]; + NIX_CFLAGS_COMPILE = "-Iopen_ssl"; + patchPhase = '' + for file in lib/BlockCryptor.h lib/RSA_DSA_signature.h lib/castContext.h \ + lib/RawSigner.h lib/MD2Object.h lib/HMACSHA1.h lib/bfContext.h lib/rc4Context.h; do + substituteInPlace ''$file --replace \ + '"CoreServices/../Frameworks/CarbonCore.framework/Headers/MacTypes.h"' \ + '"${apple_sdk.sdk}/include/MacTypes.h"' + done + + for file in lib/castContext.h lib/gladmanContext.h lib/desContext.h lib/rc4Context.h; do + substituteInPlace ''$file --replace \ + '/usr/local/include/CommonCrypto/CommonCryptorSPI.h' \ + '${osx_private_sdk}/usr/include/CommonCrypto/CommonCryptorSPI.h' + done + + substituteInPlace lib/opensshWrap.cpp --replace RSA_DSA_Keys.h RSA_DSA_keys.h + '' + stdenv.lib.optionalString (!stdenv.cc.nativeLibc) '' + substituteInPlace lib/pbkdf2.c --replace \ + '' \ + '"${stdenv.libc}/include/ConditionalMacros.h"' + ''; +} diff --git a/pkgs/os-specific/darwin/apple-source-releases/libsecurity_apple_cspdl/GNUmakefile b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_apple_cspdl/GNUmakefile new file mode 100644 index 000000000000..a0d48cf49650 --- /dev/null +++ b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_apple_cspdl/GNUmakefile @@ -0,0 +1,10 @@ +include $(GNUSTEP_MAKEFILES)/common.make + +LIBRARY_NAME = security_apple_cspdl + +security_apple_cspdl_HEADER_FILES = $(notdir $(wildcard lib/*.h)) +security_apple_cspdl_HEADER_FILES_DIR = lib + +security_apple_cspdl_CC_FILES = $(wildcard lib/*.cpp) + +include $(GNUSTEP_MAKEFILES)/library.make diff --git a/pkgs/os-specific/darwin/apple-source-releases/libsecurity_apple_cspdl/default.nix b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_apple_cspdl/default.nix new file mode 100644 index 000000000000..b80d4c8aad28 --- /dev/null +++ b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_apple_cspdl/default.nix @@ -0,0 +1,16 @@ +{ appleDerivation, libsecurity_cdsa_client, libsecurity_cdsa_plugin, libsecurity_cdsa_utilities, libsecurity_keychain, libsecurity_utilities, libsecurityd }: +appleDerivation { + buildInputs = [ + libsecurity_cdsa_plugin + libsecurity_cdsa_utilities + libsecurity_utilities + libsecurityd + libsecurity_cdsa_client + libsecurity_keychain + ]; + patchPhase = '' + for file in lib/*; do + sed -i 's/#include <\(.*\)>/#include "\1"/' ''$file + done + ''; +} diff --git a/pkgs/os-specific/darwin/apple-source-releases/libsecurity_apple_file_dl/GNUmakefile b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_apple_file_dl/GNUmakefile new file mode 100644 index 000000000000..f52829c644da --- /dev/null +++ b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_apple_file_dl/GNUmakefile @@ -0,0 +1,10 @@ +include $(GNUSTEP_MAKEFILES)/common.make + +LIBRARY_NAME = security_apple_file_dl + +security_apple_file_dl_HEADER_FILES = $(notdir $(wildcard lib/*.h)) +security_apple_file_dl_HEADER_FILES_DIR = lib + +security_apple_file_dl_CC_FILES = $(wildcard lib/*.cpp) + +include $(GNUSTEP_MAKEFILES)/library.make diff --git a/pkgs/os-specific/darwin/apple-source-releases/libsecurity_apple_file_dl/default.nix b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_apple_file_dl/default.nix new file mode 100644 index 000000000000..0eb2ee10fd84 --- /dev/null +++ b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_apple_file_dl/default.nix @@ -0,0 +1,17 @@ +{ appleDerivation, libsecurity_cdsa_client, libsecurity_cdsa_plugin, libsecurity_cdsa_utilities, libsecurity_filedb, libsecurity_keychain, libsecurity_utilities, libsecurityd }: +appleDerivation { + buildInputs = [ + libsecurity_cdsa_plugin + libsecurity_cdsa_utilities + libsecurity_utilities + libsecurityd + libsecurity_cdsa_client + libsecurity_keychain + libsecurity_filedb + ]; + patchPhase = '' + for file in lib/*; do + sed -i 's/#include <\(.*\)>/#include "\1"/' ''$file + done + ''; +} \ No newline at end of file diff --git a/pkgs/os-specific/darwin/apple-source-releases/libsecurity_apple_x509_cl/GNUmakefile b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_apple_x509_cl/GNUmakefile new file mode 100644 index 000000000000..c7c9c3d4e795 --- /dev/null +++ b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_apple_x509_cl/GNUmakefile @@ -0,0 +1,10 @@ +include $(GNUSTEP_MAKEFILES)/common.make + +LIBRARY_NAME = security_apple_x509_cl + +security_apple_x509_cl_HEADER_FILES = $(notdir $(wildcard lib/*.h)) +security_apple_x509_cl_HEADER_FILES_DIR = lib + +security_apple_x509_cl_CC_FILES = $(wildcard lib/*.cpp) + +include $(GNUSTEP_MAKEFILES)/library.make diff --git a/pkgs/os-specific/darwin/apple-source-releases/libsecurity_apple_x509_cl/default.nix b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_apple_x509_cl/default.nix new file mode 100644 index 000000000000..d2f15e19ccf0 --- /dev/null +++ b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_apple_x509_cl/default.nix @@ -0,0 +1,18 @@ +{ appleDerivation, libsecurity_asn1, libsecurity_cdsa_client, libsecurity_cdsa_plugin, libsecurity_cdsa_utilities, libsecurity_filedb, libsecurity_keychain, libsecurity_utilities, libsecurityd, osx_private_sdk }: +appleDerivation { + buildInputs = [ + libsecurity_cdsa_plugin + libsecurity_cdsa_utilities + libsecurity_utilities + libsecurityd + libsecurity_cdsa_client + libsecurity_keychain + libsecurity_filedb + libsecurity_asn1 + ]; + patchPhase = '' + for file in lib/*; do + sed -i 's/#include <\(.*\)>/#include "\1"/' ''$file + done + ''; +} diff --git a/pkgs/os-specific/darwin/apple-source-releases/libsecurity_apple_x509_tp/GNUmakefile b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_apple_x509_tp/GNUmakefile new file mode 100644 index 000000000000..083a8a85d17d --- /dev/null +++ b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_apple_x509_tp/GNUmakefile @@ -0,0 +1,10 @@ +include $(GNUSTEP_MAKEFILES)/common.make + +LIBRARY_NAME = security_apple_x509_tp + +security_apple_x509_tp_HEADER_FILES = $(notdir $(wildcard lib/*.h)) +security_apple_x509_tp_HEADER_FILES_DIR = lib + +security_apple_x509_tp_CC_FILES = $(wildcard lib/*.cpp) + +include $(GNUSTEP_MAKEFILES)/library.make diff --git a/pkgs/os-specific/darwin/apple-source-releases/libsecurity_apple_x509_tp/default.nix b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_apple_x509_tp/default.nix new file mode 100644 index 000000000000..6410c134f89a --- /dev/null +++ b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_apple_x509_tp/default.nix @@ -0,0 +1,19 @@ +{ appleDerivation, libsecurity_asn1, libsecurity_cdsa_client, libsecurity_cdsa_plugin, libsecurity_cdsa_utilities, libsecurity_filedb, libsecurity_keychain, libsecurity_ocspd, libsecurity_utilities, libsecurityd }: +appleDerivation { + buildInputs = [ + libsecurity_cdsa_plugin + libsecurity_cdsa_utilities + libsecurity_utilities + libsecurityd + libsecurity_cdsa_client + libsecurity_keychain + libsecurity_filedb + libsecurity_asn1 + libsecurity_ocspd + ]; + patchPhase = '' + for file in lib/*; do + sed -i 's/#include <\(.*\)>/#include "\1"/' ''$file + done + ''; +} \ No newline at end of file diff --git a/pkgs/os-specific/darwin/apple-source-releases/libsecurity_asn1/GNUmakefile b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_asn1/GNUmakefile new file mode 100644 index 000000000000..1c3c4f0b25bf --- /dev/null +++ b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_asn1/GNUmakefile @@ -0,0 +1,11 @@ +include $(GNUSTEP_MAKEFILES)/common.make + +LIBRARY_NAME = security_asn1 + +security_asn1_C_FILES = $(wildcard lib/*.c) +security_asn1_CC_FILES = $(wildcard lib/*.cpp) + +security_asn1_HEADER_FILES = $(notdir $(wildcard lib/*.h)) +security_asn1_HEADER_FILES_DIR = lib + +include $(GNUSTEP_MAKEFILES)/library.make diff --git a/pkgs/os-specific/darwin/apple-source-releases/libsecurity_asn1/default.nix b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_asn1/default.nix new file mode 100644 index 000000000000..ab11d893d198 --- /dev/null +++ b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_asn1/default.nix @@ -0,0 +1,14 @@ +{ appleDerivation, libsecurity_cdsa_utilities, libsecurity_utilities, osx_private_sdk }: +appleDerivation { + __propagatedImpureHostDeps = [ + "/System/Library/Frameworks/Security.framework/Security" + "/System/Library/Frameworks/Security.framework/Resources" + "/System/Library/Frameworks/Security.framework/PlugIns" + "/System/Library/Frameworks/Security.framework/XPCServices" + "/System/Library/Frameworks/Security.framework/Versions" + ]; + propagatedBuildInputs = [ + libsecurity_utilities + libsecurity_cdsa_utilities + ]; +} diff --git a/pkgs/os-specific/darwin/apple-source-releases/libsecurity_cdsa_client/GNUmakefile b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_cdsa_client/GNUmakefile new file mode 100644 index 000000000000..91fb6bb679e5 --- /dev/null +++ b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_cdsa_client/GNUmakefile @@ -0,0 +1,10 @@ +include $(GNUSTEP_MAKEFILES)/common.make + +LIBRARY_NAME = security_cdsa_client + +security_cdsa_client_HEADER_FILES = $(notdir $(wildcard lib/*.h)) +security_cdsa_client_HEADER_FILES_DIR = lib + +security_cdsa_client_CC_FILES = $(wildcard lib/*.cpp) + +include $(GNUSTEP_MAKEFILES)/library.make diff --git a/pkgs/os-specific/darwin/apple-source-releases/libsecurity_cdsa_client/default.nix b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_cdsa_client/default.nix new file mode 100644 index 000000000000..2ecad568bf7e --- /dev/null +++ b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_cdsa_client/default.nix @@ -0,0 +1,8 @@ +{ appleDerivation, libsecurity_cdsa_utilities, libsecurity_utilities, libsecurityd }: +appleDerivation { + buildInputs = [ + libsecurity_utilities + libsecurity_cdsa_utilities + libsecurityd + ]; +} diff --git a/pkgs/os-specific/darwin/apple-source-releases/libsecurity_cdsa_plugin/GNUmakefile b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_cdsa_plugin/GNUmakefile new file mode 100644 index 000000000000..9e1260f9b9c4 --- /dev/null +++ b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_cdsa_plugin/GNUmakefile @@ -0,0 +1,10 @@ +include $(GNUSTEP_MAKEFILES)/common.make + +LIBRARY_NAME = security_cdsa_plugin + +security_cdsa_plugin_HEADER_FILES = $(notdir $(wildcard lib/*.h)) +security_cdsa_plugin_HEADER_FILES_DIR = lib + +security_cdsa_plugin_CC_FILES = $(wildcard lib/*.cpp) + +include $(GNUSTEP_MAKEFILES)/library.make diff --git a/pkgs/os-specific/darwin/apple-source-releases/libsecurity_cdsa_plugin/default.nix b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_cdsa_plugin/default.nix new file mode 100644 index 000000000000..b0c35f0e30c3 --- /dev/null +++ b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_cdsa_plugin/default.nix @@ -0,0 +1,15 @@ +{ appleDerivation, libsecurity_cdsa_utilities, libsecurity_cssm, libsecurity_utilities, osx_private_sdk, perl }: +appleDerivation { + buildInputs = [ + libsecurity_cdsa_utilities + libsecurity_utilities + perl + ]; + patchPhase = '' + unpackFile ${libsecurity_cssm.src} + cp libsecurity_cssm*/lib/cssm{dli,aci,cli,cspi,tpi}.h lib + ''; + preBuild = '' + perl lib/generator.pl lib lib/generator.cfg lib lib || exit 1 + ''; +} \ No newline at end of file diff --git a/pkgs/os-specific/darwin/apple-source-releases/libsecurity_cdsa_utilities/GNUmakefile b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_cdsa_utilities/GNUmakefile new file mode 100644 index 000000000000..24bc1fe7e3af --- /dev/null +++ b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_cdsa_utilities/GNUmakefile @@ -0,0 +1,13 @@ +include $(GNUSTEP_MAKEFILES)/common.make + +LIBRARY_NAME = security_cdsa_utilities + +security_cdsa_utilities_HEADER_FILES = $(notdir $(wildcard lib/*.h)) +security_cdsa_utilities_HEADER_FILES_DIR = lib + +security_cdsa_utilities_CC_FILES = $(wildcard lib/*.cpp) lib/Schema.cpp lib/KeySchema.cpp + +lib/%.cpp: lib/%.m4 + m4 $< > $@ + +include $(GNUSTEP_MAKEFILES)/library.make diff --git a/pkgs/os-specific/darwin/apple-source-releases/libsecurity_cdsa_utilities/default.nix b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_cdsa_utilities/default.nix new file mode 100644 index 000000000000..6f2436f21496 --- /dev/null +++ b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_cdsa_utilities/default.nix @@ -0,0 +1,13 @@ +{ CommonCrypto, appleDerivation, libsecurity_codesigning, libsecurity_utilities, m4, osx_private_sdk }: +appleDerivation { + buildInputs = [ + libsecurity_utilities + m4 + ]; + patchPhase = '' + patch -p1 < ${./handletemplates.patch} + unpackFile ${libsecurity_codesigning.src} + mv libsecurity_codesigning*/lib security_codesigning + ''; + NIX_CFLAGS_COMPILE = "-I${CommonCrypto}/include/CommonCrypto"; +} diff --git a/pkgs/os-specific/darwin/apple-source-releases/libsecurity_cdsa_utilities/handletemplates.patch b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_cdsa_utilities/handletemplates.patch new file mode 100644 index 000000000000..e5a703b2a08f --- /dev/null +++ b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_cdsa_utilities/handletemplates.patch @@ -0,0 +1,19 @@ +--- a/lib/handletemplates.h 1969-12-31 16:00:01.000000000 -0800 ++++ b/lib/handletemplates.h 1969-12-31 16:00:01.000000000 -0800 +@@ -32,6 +32,7 @@ + #include + #include + #include ++#include + + #if __GNUC__ > 2 + #include +@@ -129,7 +130,7 @@ + // @@@ Remove when 4003540 is fixed + template + static void findAllRefs(std::vector<_Handle> &refs) { +- state().findAllRefs(refs); ++ state().template findAllRefs(refs); + } + + protected: diff --git a/pkgs/os-specific/darwin/apple-source-releases/libsecurity_cdsa_utils/GNUmakefile b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_cdsa_utils/GNUmakefile new file mode 100644 index 000000000000..7b5b7dc186a1 --- /dev/null +++ b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_cdsa_utils/GNUmakefile @@ -0,0 +1,13 @@ +include $(GNUSTEP_MAKEFILES)/common.make + +LIBRARY_NAME = security_cdsa_utils + +security_cdsa_utils_HEADER_FILES = $(notdir $(wildcard lib/*.h)) +security_cdsa_utils_HEADER_FILES_DIR = lib + +security_cdsa_utils_CC_FILES = $(wildcard lib/*.cpp) + +lib/%.cpp: lib/%.m4 + m4 $< > $@ + +include $(GNUSTEP_MAKEFILES)/library.make diff --git a/pkgs/os-specific/darwin/apple-source-releases/libsecurity_cdsa_utils/default.nix b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_cdsa_utils/default.nix new file mode 100644 index 000000000000..d9b594bc47ca --- /dev/null +++ b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_cdsa_utils/default.nix @@ -0,0 +1,8 @@ +{ Security, appleDerivation, apple_sdk, cppcheck, libsecurity_cdsa_utilities, libsecurity_utilities, m4, osx_private_sdk }: +appleDerivation { + buildInputs = [ + libsecurity_utilities + libsecurity_cdsa_utilities + m4 + ]; +} diff --git a/pkgs/os-specific/darwin/apple-source-releases/libsecurity_codesigning/GNUmakefile b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_codesigning/GNUmakefile new file mode 100644 index 000000000000..e923b962c263 --- /dev/null +++ b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_codesigning/GNUmakefile @@ -0,0 +1,10 @@ +include $(GNUSTEP_MAKEFILES)/common.make + +LIBRARY_NAME = security_codesigning + +security_codesigning_HEADER_FILES = $(notdir $(wildcard lib/*.h)) +security_codesigning_HEADER_FILES_DIR = lib + +security_codesigning_CC_FILES = $(wildcard lib/*.cpp) + +include $(GNUSTEP_MAKEFILES)/library.make diff --git a/pkgs/os-specific/darwin/apple-source-releases/libsecurity_codesigning/default.nix b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_codesigning/default.nix new file mode 100644 index 000000000000..c5ba9cc8d7ef --- /dev/null +++ b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_codesigning/default.nix @@ -0,0 +1,7 @@ +{ appleDerivation, libsecurity_cdsa_utilities, libsecurity_utilities }: +appleDerivation { + buildInputs = [ + libsecurity_utilities + libsecurity_cdsa_utilities + ]; +} \ No newline at end of file diff --git a/pkgs/os-specific/darwin/apple-source-releases/libsecurity_cssm/GNUmakefile b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_cssm/GNUmakefile new file mode 100644 index 000000000000..c7835aaa9b02 --- /dev/null +++ b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_cssm/GNUmakefile @@ -0,0 +1,11 @@ +include $(GNUSTEP_MAKEFILES)/common.make + +LIBRARY_NAME = security_cssm + +security_cssm_HEADER_FILES = $(notdir $(wildcard lib/*.h)) +security_cssm_HEADER_FILES_DIR = lib + +security_cssm_CC_FILES = $(wildcard lib/*.cpp) +security_cssm_C_FILES = $(wildcard lib/*.c) + +include $(GNUSTEP_MAKEFILES)/library.make diff --git a/pkgs/os-specific/darwin/apple-source-releases/libsecurity_cssm/default.nix b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_cssm/default.nix new file mode 100644 index 000000000000..053dea134c72 --- /dev/null +++ b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_cssm/default.nix @@ -0,0 +1,14 @@ +{ appleDerivation, libsecurity_cdsa_client, libsecurity_cdsa_plugin, libsecurity_cdsa_utilities, libsecurity_codesigning, libsecurity_utilities, perl }: +appleDerivation { + buildInputs = [ + libsecurity_utilities + libsecurity_cdsa_utilities + libsecurity_cdsa_client + perl + libsecurity_cdsa_plugin + ]; + preBuild = '' + mkdir derived_src + perl lib/generator.pl lib lib/generator.cfg derived_src + ''; +} \ No newline at end of file diff --git a/pkgs/os-specific/darwin/apple-source-releases/libsecurity_filedb/GNUmakefile b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_filedb/GNUmakefile new file mode 100644 index 000000000000..4359810c56b3 --- /dev/null +++ b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_filedb/GNUmakefile @@ -0,0 +1,10 @@ +include $(GNUSTEP_MAKEFILES)/common.make + +LIBRARY_NAME = security_filedb + +security_filedb_HEADER_FILES = $(notdir $(wildcard lib/*.h)) +security_filedb_HEADER_FILES_DIR = lib + +security_filedb_CC_FILES = $(wildcard lib/*.cpp) + +include $(GNUSTEP_MAKEFILES)/library.make diff --git a/pkgs/os-specific/darwin/apple-source-releases/libsecurity_filedb/default.nix b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_filedb/default.nix new file mode 100644 index 000000000000..86cc2a390db6 --- /dev/null +++ b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_filedb/default.nix @@ -0,0 +1,13 @@ +{ appleDerivation, apple_sdk, libsecurity_cdsa_plugin, libsecurity_cdsa_utilities, libsecurity_utilities, osx_private_sdk }: +appleDerivation { + buildInputs = [ + libsecurity_utilities + libsecurity_cdsa_utilities + libsecurity_cdsa_plugin + ]; + patchPhase = '' + cp ${osx_private_sdk}/usr/local/include/sandbox_private.h . + substituteInPlace sandbox_private.h --replace '' '"${apple_sdk.sdk}/include/sandbox.h"' + substituteInPlace lib/AtomicFile.cpp --replace '' '"sandbox_private.h"' + ''; +} diff --git a/pkgs/os-specific/darwin/apple-source-releases/libsecurity_generic/default.nix b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_generic/default.nix new file mode 100644 index 000000000000..a94b9b455ef9 --- /dev/null +++ b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_generic/default.nix @@ -0,0 +1,58 @@ +{ appleDerivation_, applePackage, pkgs, stdenv }: +name: version: sha256: args: let + n = stdenv.lib.removePrefix "lib" name; + makeFile = ../. + builtins.toPath "/${name}/GNUmakefile"; + appleDerivation = appleDerivation_ name version sha256; + in applePackage name version sha256 (args // { + appleDerivation = a: + appleDerivation (stdenv.lib.mergeAttrsConcatenateValues { + __impureHostDeps = import ./impure_deps.nix; + + patchPhase = '' + # allows including + ln -s ${pkgs.darwin.osx_private_sdk}/System/Library/Frameworks/Security.framework/Versions/A/PrivateHeaders Security + + grep -Rl MacErrors.h . | while read file; do + substituteInPlace "''$file" --replace \ + '' \ + '"${pkgs.darwin.apple_sdk.sdk}/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/CarbonCore.framework/Versions/A/Headers/MacErrors.h"' + done || true # grep returns 1 if it can't find the string + + grep -Rl MacTypes.h . | while read file; do + substituteInPlace "''$file" --replace \ + '' \ + '"${pkgs.darwin.apple_sdk.sdk}/include/MacTypes.h"' + done || true # grep returns 1 if it can't find the string + ''; + preBuild = '' + ln -s lib ${n} + makeFlagsArray=(-j''$NIX_BUILD_CORES) + ''; + buildInputs = [ + pkgs.gnustep-make + ]; + makeFlags = [ + "-f${makeFile}" + "MAKEFILE_NAME=${makeFile}" + "GNUSTEP_ABSOLUTE_INSTALL_PATHS=yes" + "LIB_LINK_INSTALL_DIR=\$(out)/lib" + ]; + installFlags = [ + "${n}_INSTALL_DIR=\$(out)/lib" + "${n}_HEADER_FILES_INSTALL_DIR=\$(out)/include/${n}" + "GNUSTEP_HEADERS=" + ]; + NIX_CFLAGS_COMPILE = [ + "-isystem lib" + "-iframework ${pkgs.darwin.Security}/Library/Frameworks" + "-I." + "-Wno-deprecated-declarations" + ]; + NIX_LDFLAGS = with pkgs.darwin; with apple_sdk.frameworks; [ + "-L${libobjc}/lib" + "-F${Foundation}/Library/Frameworks" + "-F${AppKit}/Library/Frameworks" + "-no_dtrace_dof" + ]; + } a); + }) diff --git a/pkgs/os-specific/darwin/apple-source-releases/libsecurity_generic/impure_deps.nix b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_generic/impure_deps.nix new file mode 100644 index 000000000000..7725b9f3d1a2 --- /dev/null +++ b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_generic/impure_deps.nix @@ -0,0 +1,129 @@ +# generated using a ruby script +[ + "/System/Library/Frameworks/Accelerate.framework/Versions/A/Accelerate" + "/System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vImage.framework/Versions/A/vImage" + "/System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libBLAS.dylib" + "/System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libLAPACK.dylib" + "/System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libLinearAlgebra.dylib" + "/System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libvDSP.dylib" + "/System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libvMisc.dylib" + "/System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/vecLib" + "/System/Library/Frameworks/AppKit.framework/Versions/C/AppKit" + "/System/Library/Frameworks/ApplicationServices.framework/Versions/A/ApplicationServices" + "/System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ATS.framework/Versions/A/ATS" + "/System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ATS.framework/Versions/A/Resources/libFontParser.dylib" + "/System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ATS.framework/Versions/A/Resources/libFontRegistry.dylib" + "/System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ColorSync.framework/Versions/A/ColorSync" + "/System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/HIServices.framework/Versions/A/HIServices" + "/System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/LangAnalysis.framework/Versions/A/LangAnalysis" + "/System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/PrintCore.framework/Versions/A/PrintCore" + "/System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/QD.framework/Versions/A/QD" + "/System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/SpeechSynthesis.framework/Versions/A/SpeechSynthesis" + "/System/Library/Frameworks/AudioToolbox.framework/Versions/A/AudioToolbox" + "/System/Library/Frameworks/AudioUnit.framework/Versions/A/AudioUnit" + "/System/Library/Frameworks/CFNetwork.framework/Versions/A/CFNetwork" + "/System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/CarbonSound.framework/Versions/A/CarbonSound" + "/System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/HIToolbox.framework/Versions/A/HIToolbox" + "/System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/Ink.framework/Versions/A/Ink" + "/System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/SpeechRecognition.framework/Versions/A/SpeechRecognition" + "/System/Library/Frameworks/CoreAudio.framework/Versions/A/CoreAudio" + "/System/Library/Frameworks/CoreBluetooth.framework/Versions/A/CoreBluetooth" + "/System/Library/Frameworks/CoreData.framework/Versions/A/CoreData" + "/System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation" + "/System/Library/Frameworks/CoreGraphics.framework/Versions/A/CoreGraphics" + "/System/Library/Frameworks/CoreServices.framework/Versions/A/CoreServices" + "/System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/AE.framework/Versions/A/AE" + "/System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/CarbonCore.framework/Versions/A/CarbonCore" + "/System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/DictionaryServices.framework/Versions/A/DictionaryServices" + "/System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/FSEvents.framework/Versions/A/FSEvents" + "/System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/LaunchServices.framework/Versions/A/LaunchServices" + "/System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/Metadata.framework/Versions/A/Metadata" + "/System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/OSServices.framework/Versions/A/OSServices" + "/System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/SearchKit.framework/Versions/A/SearchKit" + "/System/Library/Frameworks/CoreText.framework/Versions/A/CoreText" + "/System/Library/Frameworks/CoreVideo.framework/Versions/A/CoreVideo" + "/System/Library/Frameworks/CoreWLAN.framework/Versions/A/CoreWLAN" + "/System/Library/Frameworks/DiskArbitration.framework/Versions/A/DiskArbitration" + "/System/Library/Frameworks/Foundation.framework/Versions/C/Foundation" + "/System/Library/Frameworks/GSS.framework/Versions/A/GSS" + "/System/Library/Frameworks/IOBluetooth.framework/Versions/A/IOBluetooth" + "/System/Library/Frameworks/IOKit.framework/Versions/A/IOKit" + "/System/Library/Frameworks/IOSurface.framework/Versions/A/IOSurface" + "/System/Library/Frameworks/ImageIO.framework/Versions/A/ImageIO" + "/System/Library/Frameworks/ImageIO.framework/Versions/A/Resources/libGIF.dylib" + "/System/Library/Frameworks/ImageIO.framework/Versions/A/Resources/libJP2.dylib" + "/System/Library/Frameworks/ImageIO.framework/Versions/A/Resources/libJPEG.dylib" + "/System/Library/Frameworks/ImageIO.framework/Versions/A/Resources/libPng.dylib" + "/System/Library/Frameworks/ImageIO.framework/Versions/A/Resources/libRadiance.dylib" + "/System/Library/Frameworks/ImageIO.framework/Versions/A/Resources/libTIFF.dylib" + "/System/Library/Frameworks/Kerberos.framework/Versions/A/Kerberos" + "/System/Library/Frameworks/NetFS.framework/Versions/A/NetFS" + "/System/Library/Frameworks/OpenCL.framework/Versions/A/OpenCL" + "/System/Library/Frameworks/OpenDirectory.framework/Versions/A/Frameworks/CFOpenDirectory.framework/Versions/A/CFOpenDirectory" + "/System/Library/Frameworks/OpenDirectory.framework/Versions/A/OpenDirectory" + "/System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libCVMSPluginSupport.dylib" + "/System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libCoreVMClient.dylib" + "/System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGFXShared.dylib" + "/System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGL.dylib" + "/System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGLImage.dylib" + "/System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGLU.dylib" + "/System/Library/Frameworks/OpenGL.framework/Versions/A/OpenGL" + "/System/Library/Frameworks/QuartzCore.framework/Versions/A/Frameworks/CoreImage.framework/Versions/A/CoreImage" + "/System/Library/Frameworks/QuartzCore.framework/Versions/A/QuartzCore" + "/System/Library/Frameworks/Security.framework/Versions/A/Security" + "/System/Library/Frameworks/SecurityFoundation.framework/Versions/A/SecurityFoundation" + "/System/Library/Frameworks/ServiceManagement.framework/Versions/A/ServiceManagement" + "/System/Library/Frameworks/SystemConfiguration.framework/Versions/A/SystemConfiguration" + "/System/Library/PrivateFrameworks/Apple80211.framework/Versions/A/Apple80211" + "/System/Library/PrivateFrameworks/AppleJPEG.framework/Versions/A/AppleJPEG" + "/System/Library/PrivateFrameworks/AppleVPA.framework/Versions/A/AppleVPA" + "/System/Library/PrivateFrameworks/Backup.framework/Versions/A/Backup" + "/System/Library/PrivateFrameworks/ChunkingLibrary.framework/Versions/A/ChunkingLibrary" + "/System/Library/PrivateFrameworks/CommonAuth.framework/Versions/A/CommonAuth" + "/System/Library/PrivateFrameworks/CoreSymbolication.framework/Versions/A/CoreSymbolication" + "/System/Library/PrivateFrameworks/CoreUI.framework/Versions/A/CoreUI" + "/System/Library/PrivateFrameworks/CoreWiFi.framework/Versions/A/CoreWiFi" + "/System/Library/PrivateFrameworks/CrashReporterSupport.framework/Versions/A/CrashReporterSupport" + "/System/Library/PrivateFrameworks/DataDetectorsCore.framework/Versions/A/DataDetectorsCore" + "/System/Library/PrivateFrameworks/DebugSymbols.framework/Versions/A/DebugSymbols" + "/System/Library/PrivateFrameworks/DesktopServicesPriv.framework/Versions/A/DesktopServicesPriv" + "/System/Library/PrivateFrameworks/FaceCore.framework/Versions/A/FaceCore" + "/System/Library/PrivateFrameworks/GenerationalStorage.framework/Versions/A/GenerationalStorage" + "/System/Library/PrivateFrameworks/Heimdal.framework/Versions/A/Heimdal" + "/System/Library/PrivateFrameworks/IconServices.framework/Versions/A/IconServices" + "/System/Library/PrivateFrameworks/LanguageModeling.framework/Versions/A/LanguageModeling" + "/System/Library/PrivateFrameworks/MultitouchSupport.framework/Versions/A/MultitouchSupport" + "/System/Library/PrivateFrameworks/NetAuth.framework/Versions/A/NetAuth" + "/System/Library/PrivateFrameworks/PerformanceAnalysis.framework/Versions/A/PerformanceAnalysis" + "/System/Library/PrivateFrameworks/RemoteViewServices.framework/Versions/A/RemoteViewServices" + "/System/Library/PrivateFrameworks/Sharing.framework/Versions/A/Sharing" + "/System/Library/PrivateFrameworks/SpeechRecognitionCore.framework/Versions/A/SpeechRecognitionCore" + "/System/Library/PrivateFrameworks/Symbolication.framework/Versions/A/Symbolication" + "/System/Library/PrivateFrameworks/TCC.framework/Versions/A/TCC" + "/System/Library/PrivateFrameworks/UIFoundation.framework/Versions/A/UIFoundation" + "/System/Library/PrivateFrameworks/Ubiquity.framework/Versions/A/Ubiquity" + "/System/Library/PrivateFrameworks/login.framework/Versions/A/Frameworks/loginsupport.framework/Versions/A/loginsupport" + "/usr/lib/libCRFSuite.dylib" + "/usr/lib/libOpenScriptingUtil.dylib" + "/usr/lib/libarchive.2.dylib" + "/usr/lib/libbsm.0.dylib" + "/usr/lib/libbz2.1.0.dylib" + "/usr/lib/libc++.1.dylib" + "/usr/lib/libc++abi.dylib" + "/usr/lib/libcmph.dylib" + "/usr/lib/libcups.2.dylib" + "/usr/lib/libextension.dylib" + "/usr/lib/libheimdal-asn1.dylib" + "/usr/lib/libiconv.2.dylib" + "/usr/lib/libicucore.A.dylib" + "/usr/lib/liblangid.dylib" + "/usr/lib/liblzma.5.dylib" + "/usr/lib/libmecabra.dylib" + "/usr/lib/libpam.2.dylib" + "/usr/lib/libresolv.9.dylib" + "/usr/lib/libsqlite3.dylib" + "/usr/lib/libxar.1.dylib" + "/usr/lib/libxml2.2.dylib" + "/usr/lib/libxslt.1.dylib" + "/usr/lib/libz.1.dylib" +] diff --git a/pkgs/os-specific/darwin/apple-source-releases/libsecurity_keychain/GNUmakefile b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_keychain/GNUmakefile new file mode 100644 index 000000000000..8830006f00e5 --- /dev/null +++ b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_keychain/GNUmakefile @@ -0,0 +1,10 @@ +include $(GNUSTEP_MAKEFILES)/common.make + +LIBRARY_NAME = security_keychain + +security_keychain_HEADER_FILES = $(notdir $(wildcard lib/*.h)) +security_keychain_HEADER_FILES_DIR = lib + +security_keychain_CC_FILES = $(wildcard lib/*.cpp) + +include $(GNUSTEP_MAKEFILES)/library.make diff --git a/pkgs/os-specific/darwin/apple-source-releases/libsecurity_keychain/default.nix b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_keychain/default.nix new file mode 100644 index 000000000000..de97950b765e --- /dev/null +++ b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_keychain/default.nix @@ -0,0 +1,47 @@ +{ CF, Security, appleDerivation, apple_sdk, libsecurity_asn1, libsecurity_cdsa_client, libsecurity_cdsa_utilities, libsecurity_cdsa_utils, libsecurity_ocspd, libsecurity_pkcs12, libsecurity_utilities, libsecurityd, openssl, osx_private_sdk, security_dotmac_tp }: +appleDerivation { + buildInputs = [ + libsecurity_utilities + libsecurity_cdsa_client + libsecurity_cdsa_utilities + libsecurityd + CF + libsecurity_asn1 + libsecurity_pkcs12 + libsecurity_cdsa_utils + openssl + libsecurity_ocspd + security_dotmac_tp + ]; + patchPhase = '' + substituteInPlace lib/Keychains.cpp --replace DLDbListCFPref.h DLDBListCFPref.h + + substituteInPlace lib/SecCertificate.cpp --replace '#include ' "" + + cp ${osx_private_sdk}/usr/include/xpc/private.h xpc + cp ${apple_sdk.sdk}/include/xpc/*.h xpc + cp ${osx_private_sdk}/usr/local/include/sandbox_private.h lib/sandbox.h + + substituteInPlace lib/SecItemPriv.h \ + --replace "extern CFTypeRef kSecAttrAccessGroup" "extern const CFTypeRef kSecAttrAccessGroup" \ + --replace "extern CFTypeRef kSecAttrIsSensitive" "extern const CFTypeRef kSecAttrIsSensitive" \ + --replace "extern CFTypeRef kSecAttrIsExtractable" "extern const CFTypeRef kSecAttrIsExtractable" + + substituteInPlace lib/Keychains.cpp --replace \ + '' \ + '"${apple_sdk.sdk}/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/CarbonCore.framework/Versions/A/Headers/MacErrors.h"' + + substituteInPlace lib/CertificateValues.cpp --replace \ + '#include ' "" + + substituteInPlace lib/DLDBListCFPref.cpp --replace \ + 'dispatch_once_t AppSandboxChecked;' ''$'namespace Security {\ndispatch_once_t AppSandboxChecked;' \ + --replace 'return mLoginDLDbIdentifier;' 'return mLoginDLDbIdentifier; }' \ + --replace '_xpc_runtime_is_app_sandboxed()' 'false' + # hope that doesn't hurt anything + + substituteInPlace lib/KCEventNotifier.h --replace \ + 'CoreFoundation/CFNotificationCenter.h' \ + '${apple_sdk.sdk}/Library/Frameworks/CoreFoundation.framework/Versions/A/Headers/CFNotificationCenter.h' + ''; +} diff --git a/pkgs/os-specific/darwin/apple-source-releases/libsecurity_mds/GNUmakefile b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_mds/GNUmakefile new file mode 100644 index 000000000000..119a43621fbb --- /dev/null +++ b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_mds/GNUmakefile @@ -0,0 +1,10 @@ +include $(GNUSTEP_MAKEFILES)/common.make + +LIBRARY_NAME = security_mds + +security_mds_HEADER_FILES = $(notdir $(wildcard lib/*.h)) +security_mds_HEADER_FILES_DIR = lib + +security_mds_CC_FILES = $(wildcard lib/*.cpp) + +include $(GNUSTEP_MAKEFILES)/library.make diff --git a/pkgs/os-specific/darwin/apple-source-releases/libsecurity_mds/default.nix b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_mds/default.nix new file mode 100644 index 000000000000..cd691f71e95f --- /dev/null +++ b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_mds/default.nix @@ -0,0 +1,11 @@ +{ appleDerivation, libsecurity_cdsa_client, libsecurity_cdsa_plugin, libsecurity_cdsa_utilities, libsecurity_filedb, libsecurity_utilities, libsecurityd }: +appleDerivation { + buildInputs = [ + libsecurity_cdsa_plugin + libsecurity_cdsa_utilities + libsecurity_filedb + libsecurity_utilities + libsecurity_cdsa_client + libsecurityd + ]; +} diff --git a/pkgs/os-specific/darwin/apple-source-releases/libsecurity_ocspd/GNUmakefile b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_ocspd/GNUmakefile new file mode 100644 index 000000000000..140c5a909a66 --- /dev/null +++ b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_ocspd/GNUmakefile @@ -0,0 +1,10 @@ +include $(GNUSTEP_MAKEFILES)/common.make + +LIBRARY_NAME = security_ocspd + +security_ocspd_HEADER_FILES = $(notdir $(wildcard lib/*.h)) +security_ocspd_HEADER_FILES_DIR = lib + +security_ocspd_CC_FILES = $(wildcard lib/*.cpp) + +include $(GNUSTEP_MAKEFILES)/library.make diff --git a/pkgs/os-specific/darwin/apple-source-releases/libsecurity_ocspd/default.nix b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_ocspd/default.nix new file mode 100644 index 000000000000..25701442d2b7 --- /dev/null +++ b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_ocspd/default.nix @@ -0,0 +1,20 @@ +{ appleDerivation, bootstrap_cmds, libsecurity_cdsa_utilities, libsecurity_utilities, osx_private_sdk }: +appleDerivation { + buildInputs = [ + libsecurity_utilities + libsecurity_cdsa_utilities + bootstrap_cmds + ]; + postUnpack = '' + pushd libsecurity* + ls -lah + mkdir -p lib + cp common/* lib + cp client/* lib + popd + ''; + preBuild = '' + make -f mig/mig.mk SRCROOT=. BUILT_PRODUCTS_DIR=. || exit 1 + cp derived_src/* lib + ''; +} diff --git a/pkgs/os-specific/darwin/apple-source-releases/libsecurity_pkcs12/GNUmakefile b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_pkcs12/GNUmakefile new file mode 100644 index 000000000000..b2af7e72c41b --- /dev/null +++ b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_pkcs12/GNUmakefile @@ -0,0 +1,11 @@ +include $(GNUSTEP_MAKEFILES)/common.make + +LIBRARY_NAME = security_pkcs12 + +security_pkcs12_HEADER_FILES = $(notdir $(wildcard lib/*.h)) +security_pkcs12_HEADER_FILES_DIR = lib + +security_pkcs12_CC_FILES = $(wildcard lib/*.cpp) +security_pkcs12_C_FILES = $(wildcard lib/*.c) + +include $(GNUSTEP_MAKEFILES)/library.make diff --git a/pkgs/os-specific/darwin/apple-source-releases/libsecurity_pkcs12/default.nix b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_pkcs12/default.nix new file mode 100644 index 000000000000..f84c2d8963fc --- /dev/null +++ b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_pkcs12/default.nix @@ -0,0 +1,15 @@ +{ appleDerivation, libsecurity_asn1, libsecurity_cdsa_client, libsecurity_cdsa_utils, libsecurity_keychain, osx_private_sdk }: +appleDerivation { + patchPhase = '' + substituteInPlace lib/pkcsoids.h --replace '#error' '#warning' + ''; + preBuild = '' + unpackFile ${libsecurity_keychain.src} + mv libsecurity_keychain*/lib security_keychain + ''; + buildInputs = [ + libsecurity_asn1 + libsecurity_cdsa_utils + libsecurity_cdsa_client + ]; +} diff --git a/pkgs/os-specific/darwin/apple-source-releases/libsecurity_sd_cspdl/GNUmakefile b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_sd_cspdl/GNUmakefile new file mode 100644 index 000000000000..47a1c609d066 --- /dev/null +++ b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_sd_cspdl/GNUmakefile @@ -0,0 +1,10 @@ +include $(GNUSTEP_MAKEFILES)/common.make + +LIBRARY_NAME = security_sd_cspdl + +security_sd_cspdl_HEADER_FILES = $(notdir $(wildcard lib/*.h)) +security_sd_cspdl_HEADER_FILES_DIR = lib + +security_sd_cspdl_CC_FILES = $(wildcard lib/*.cpp) + +include $(GNUSTEP_MAKEFILES)/library.make diff --git a/pkgs/os-specific/darwin/apple-source-releases/libsecurity_sd_cspdl/default.nix b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_sd_cspdl/default.nix new file mode 100644 index 000000000000..224910916615 --- /dev/null +++ b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_sd_cspdl/default.nix @@ -0,0 +1,10 @@ +{ appleDerivation, libsecurity_cdsa_client, libsecurity_cdsa_plugin, libsecurity_cdsa_utilities, libsecurity_utilities, libsecurityd }: +appleDerivation { + buildInputs = [ + libsecurity_cdsa_plugin + libsecurity_utilities + libsecurity_cdsa_utilities + libsecurityd + libsecurity_cdsa_client + ]; +} diff --git a/pkgs/os-specific/darwin/apple-source-releases/libsecurity_utilities/GNUmakefile b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_utilities/GNUmakefile new file mode 100644 index 000000000000..d3ba09142c96 --- /dev/null +++ b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_utilities/GNUmakefile @@ -0,0 +1,11 @@ +include $(GNUSTEP_MAKEFILES)/common.make + +LIBRARY_NAME = security_utilities + +security_utilities_HEADER_FILES = $(notdir $(wildcard lib/*.h)) +security_utilities_HEADER_FILES_DIR = lib + +security_utilities_C_FILES = $(wildcard lib/*.c) +security_utilities_CC_FILES = $(wildcard lib/*.cpp) + +include $(GNUSTEP_MAKEFILES)/library.make diff --git a/pkgs/os-specific/darwin/apple-source-releases/libsecurity_utilities/default.nix b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_utilities/default.nix new file mode 100644 index 000000000000..8cc74e2210f9 --- /dev/null +++ b/pkgs/os-specific/darwin/apple-source-releases/libsecurity_utilities/default.nix @@ -0,0 +1,23 @@ +{ IOKit, appleDerivation, apple_sdk, libauto, libobjc, libsecurity_codesigning, osx_private_sdk, sqlite, stdenv }: +appleDerivation { + buildInputs = [ + libauto + libobjc + IOKit + sqlite + apple_sdk.frameworks.PCSC + ]; + patchPhase = '' + substituteInPlace lib/errors.h --replace \ + '' \ + '"MacTypes.h"' + substituteInPlace lib/debugging.cpp --replace PATH_MAX 1024 + substituteInPlace lib/superblob.h --replace 'result->at' 'result->template at' + substituteInPlace lib/ccaudit.cpp --replace '' '"bsm/libbsm.h"' + + cp ${osx_private_sdk}/usr/include/security_utilities/utilities_dtrace.h lib + cp -R ${osx_private_sdk}/usr/local/include/bsm lib + '' + stdenv.lib.optionalString (!stdenv.cc.nativeLibc) '' + substituteInPlace lib/vproc++.cpp --replace /usr/local/include/vproc_priv.h ${stdenv.libc}/include/vproc_priv.h + ''; +} diff --git a/pkgs/os-specific/darwin/apple-source-releases/libsecurityd/GNUmakefile b/pkgs/os-specific/darwin/apple-source-releases/libsecurityd/GNUmakefile new file mode 100644 index 000000000000..6058043e79f5 --- /dev/null +++ b/pkgs/os-specific/darwin/apple-source-releases/libsecurityd/GNUmakefile @@ -0,0 +1,11 @@ +include $(GNUSTEP_MAKEFILES)/common.make + +LIBRARY_NAME = securityd + +securityd_HEADER_FILES = $(notdir $(wildcard lib/*.h)) +securityd_HEADER_FILES_DIR = lib + +securityd_CC_FILES = $(wildcard lib/*.cpp) +securityd_C_FILES = $(wildcard lib/*.c) + +include $(GNUSTEP_MAKEFILES)/library.make diff --git a/pkgs/os-specific/darwin/apple-source-releases/libsecurityd/default.nix b/pkgs/os-specific/darwin/apple-source-releases/libsecurityd/default.nix new file mode 100644 index 000000000000..d311f6783374 --- /dev/null +++ b/pkgs/os-specific/darwin/apple-source-releases/libsecurityd/default.nix @@ -0,0 +1,23 @@ +{ appleDerivation, bootstrap_cmds, libsecurity_cdsa_client, libsecurity_cdsa_utilities, libsecurity_utilities, osx_private_sdk }: +appleDerivation { + buildInputs = [ + libsecurity_cdsa_utilities + libsecurity_utilities + bootstrap_cmds + ]; + patchPhase = '' + unpackFile ${libsecurity_cdsa_client.src} + mv libsecurity_cdsa_client*/lib security_cdsa_client + ln -s lib securityd_client + + patch -p1 < ${./xdr-arity.patch} + ''; + preBuild = '' + make -f mig/mig.mk SRCROOT=. BUILT_PRODUCTS_DIR=. + cp derived_src/* lib + rm lib/ucspClientC.c + ''; + postInstall = '' + ln -s ''$out/include/securityd ''$out/include/securityd_client + ''; +} \ No newline at end of file diff --git a/pkgs/os-specific/darwin/apple-source-releases/libsecurityd/xdr-arity.patch b/pkgs/os-specific/darwin/apple-source-releases/libsecurityd/xdr-arity.patch new file mode 100644 index 000000000000..5d0328629f19 --- /dev/null +++ b/pkgs/os-specific/darwin/apple-source-releases/libsecurityd/xdr-arity.patch @@ -0,0 +1,79 @@ +diff --git a/lib/sec_xdr.c b/lib/sec_xdr.c +index fe5f038..6239b6c 100644 +--- a/lib/sec_xdr.c ++++ b/lib/sec_xdr.c +@@ -223,7 +223,7 @@ bool_t copyin(void *data, xdrproc_t proc, void** copy, u_int *size) + sec_xdrmem_create(&xdr, (char *)xdr_data, length, XDR_ENCODE); + + // cast to void* - function can go both ways (xdr->x_op) +- if (proc(&xdr, data)) { ++ if (proc(&xdr, data, 0)) { + *copy = xdr_data; + if (size) *size = length; + return (TRUE); +@@ -261,7 +261,7 @@ bool_t copyout(const void *copy, u_int size, xdrproc_t proc, void **data, u_int + if (!sec_xdr_arena_init(&arena, &xdr, length_out ? length_out : length_required, length_out ? *data : NULL)) + return (FALSE); + +- if (proc(&xdr, data)) ++ if (proc(&xdr, data, 0)) + { + *length = length_required; + return (TRUE); +@@ -284,7 +284,7 @@ bool_t copyout_chunked(const void *copy, u_int size, xdrproc_t proc, void **data + + void *data_out = NULL; + +- if (proc(&xdr, &data_out)) ++ if (proc(&xdr, &data_out, 0)) + { + *data = data_out; + return (TRUE); +diff --git a/lib/sec_xdr_array.c b/lib/sec_xdr_array.c +index 152a71b..e5ec1ad 100644 +--- a/lib/sec_xdr_array.c ++++ b/lib/sec_xdr_array.c +@@ -147,7 +147,7 @@ sec_xdr_array(XDR *xdrs, uint8_t **addrp, u_int *sizep, u_int maxsize, u_int els + for (i = 0; (i < c) && stat; i++) { + if ((xdrs->x_op == XDR_DECODE) && sizeof_alloc) + memset(obj, 0, elsize); +- stat = (*elproc)(xdrs, target); ++ stat = (*elproc)(xdrs, target, 0); + if ((xdrs->x_op == XDR_ENCODE) || !sizeof_alloc) + target += elsize; + } +diff --git a/lib/sec_xdr_reference.c b/lib/sec_xdr_reference.c +index a66fb37..ab5b4c4 100644 +--- a/lib/sec_xdr_reference.c ++++ b/lib/sec_xdr_reference.c +@@ -121,7 +121,7 @@ sec_xdr_reference(XDR *xdrs, uint8_t **pp, u_int size, xdrproc_t proc) + break; + } + +- stat = (*proc)(xdrs, loc); ++ stat = (*proc)(xdrs, loc, 0); + + if (xdrs->x_op == XDR_FREE) { + sec_mem_free(xdrs, loc, size); +diff --git a/lib/sec_xdr_sizeof.c b/lib/sec_xdr_sizeof.c +index a18bcd0..8c33dbc 100644 +--- a/lib/sec_xdr_sizeof.c ++++ b/lib/sec_xdr_sizeof.c +@@ -190,7 +190,7 @@ sec_xdr_sizeof_in(func, data) + + sec_xdr_arena_allocator_t size_alloc; + sec_xdr_arena_init_size_alloc(&size_alloc, &x); +- stat = func(&x, data); ++ stat = func(&x, data, 0); + if (x.x_private) + free(x.x_private); + return (stat == TRUE ? (unsigned) x.x_handy: 0); +@@ -210,7 +210,7 @@ sec_xdr_sizeof_out(copy, size, func, data) + + sec_xdr_arena_allocator_t size_alloc; + sec_xdr_arena_init_size_alloc(&size_alloc, &x); +- stat = func(&x, data); ++ stat = func(&x, data, 0); + if (size_alloc.data) + free(size_alloc.data); + return (stat == TRUE ? (unsigned long)size_alloc.offset : 0); diff --git a/pkgs/os-specific/darwin/apple-source-releases/security_dotmac_tp/GNUmakefile b/pkgs/os-specific/darwin/apple-source-releases/security_dotmac_tp/GNUmakefile new file mode 100644 index 000000000000..6f6a50bd57a2 --- /dev/null +++ b/pkgs/os-specific/darwin/apple-source-releases/security_dotmac_tp/GNUmakefile @@ -0,0 +1,8 @@ +include $(GNUSTEP_MAKEFILES)/common.make + +LIBRARY_NAME = security_dotmac_tp + +security_dotmac_tp_HEADER_FILES = $(notdir $(wildcard lib/*.h)) +security_dotmac_tp_HEADER_FILES_DIR = lib + +include $(GNUSTEP_MAKEFILES)/library.make diff --git a/pkgs/os-specific/darwin/apple-source-releases/security_dotmac_tp/default.nix b/pkgs/os-specific/darwin/apple-source-releases/security_dotmac_tp/default.nix new file mode 100644 index 000000000000..bfbfb945957e --- /dev/null +++ b/pkgs/os-specific/darwin/apple-source-releases/security_dotmac_tp/default.nix @@ -0,0 +1,4 @@ +{ appleDerivation }: + +appleDerivation { +} diff --git a/pkgs/os-specific/darwin/osx-private-sdk/default.nix b/pkgs/os-specific/darwin/osx-private-sdk/default.nix index 85e1dc50f359..febcb6b5d0cd 100644 --- a/pkgs/os-specific/darwin/osx-private-sdk/default.nix +++ b/pkgs/os-specific/darwin/osx-private-sdk/default.nix @@ -1,34 +1,16 @@ -{ stdenv, fetchFromGitHub, python, osx_sdk }: +{ stdenv, fetchzip }: -let - sdkVersion = "10.9"; -in stdenv.mkDerivation { - name = "PrivateMacOSX${sdkVersion}.sdk"; - - src = fetchFromGitHub { - owner = "copumpkin"; - repo = "OSXPrivateSDK"; - rev = "bde9cba13e6ae62a8e4e0f405008ea719526e7ad"; - sha256 = "1vj3fxwp32irxjk987p7a223sm5bl5rrlajcvgy69k0wb0fp0krc"; - }; - - buildInputs = [ python ]; - - configurePhase = "true"; - - buildPhase = '' - python PrivateSDK.py -i ${osx_sdk}/Developer/SDKs/MacOSX${sdkVersion}.sdk -o PrivateMacOSX${sdkVersion}.sdk - ''; - - installPhase = '' - mkdir -p $out/Developer/SDKs/ - mv PrivateMacOSX${sdkVersion}.sdk $out/Developer/SDKs - ''; - - meta = with stdenv.lib; { - description = "A private Mac OS ${sdkVersion} SDK, suitable for building many of Apple's open source releases"; - maintainers = with maintainers; [ copumpkin ]; - platforms = platforms.darwin; - license = licenses.unfree; - }; +let full = stdenv.lib.overrideDerivation (fetchzip { + url = "https://github.com/samdmarshall/OSXPrivateSDK/tarball/69bf3c7f7140ed6ab2b6684b427bd457209858fe"; + name = "osx-private-sdk-10.9"; + sha256 = "1agl4kyry6m7yz3sql5mrbvmd1xkmb4nbq976phcpk19inans1zm"; +}) (drv: { + postFetch = '' + unpackFile() { + tar xzf "$1" + } + '' + drv.postFetch; +}); in { + outPath = "${full}/PrivateSDK10.9"; + passthru.sdk10 = "${full}/PrivateSDK10.10"; } diff --git a/pkgs/os-specific/darwin/osx-sdk/default.nix b/pkgs/os-specific/darwin/osx-sdk/default.nix index 612bf003743c..875479b4f29d 100644 --- a/pkgs/os-specific/darwin/osx-sdk/default.nix +++ b/pkgs/os-specific/darwin/osx-sdk/default.nix @@ -2,7 +2,7 @@ let version = "10.9"; -in stdenv.mkDerivation { +in stdenv.mkDerivation rec { name = "MacOSX10.9.sdk"; src = "/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk"; @@ -23,4 +23,4 @@ in stdenv.mkDerivation { platforms = platforms.darwin; license = licenses.unfree; }; -} \ No newline at end of file +} diff --git a/pkgs/os-specific/darwin/security-tool/GNUmakefile b/pkgs/os-specific/darwin/security-tool/GNUmakefile new file mode 100644 index 000000000000..ae25f6a67c02 --- /dev/null +++ b/pkgs/os-specific/darwin/security-tool/GNUmakefile @@ -0,0 +1,14 @@ +include $(GNUSTEP_MAKEFILES)/common.make + +TOOL_NAME = security +security_C_FILES = $(wildcard *.c) +security_CC_FILES = $(wildcard *.cpp) + +security_LDFLAGS = \ + -lsecurity_cdsa_utilities -lsecurity_cdsa_utils -lsecurity_keychain -lsecurity_cssm \ + -lsecurity_cdsa_client -lsecurity_utilities -lsecurity_asn1 -lsecurity_mds \ + -lsecurity_cdsa_plugin -lsecurity_pkcs12 -lsecurity_apple_csp -lsecurity_apple_cspdl \ + -lsecurity_apple_file_dl -lsecurity_apple_x509_cl -lsecurity_apple_x509_tp \ + -lsecurity_sd_cspdl -lsecurity_filedb -lsecurityd -framework Security -framework PCSC + +include $(GNUSTEP_MAKEFILES)/tool.make diff --git a/pkgs/os-specific/darwin/security-tool/default.nix b/pkgs/os-specific/darwin/security-tool/default.nix index 49d61f392c5e..ac495b63c0af 100644 --- a/pkgs/os-specific/darwin/security-tool/default.nix +++ b/pkgs/os-specific/darwin/security-tool/default.nix @@ -1,30 +1,85 @@ -{ stdenv, fetchurl, osx_private_sdk }: +{ CoreServices, Foundation, PCSC, Security, apple_sdk, fetchurl, gnustep-make, libobjc, libsecurity_apple_csp, libsecurity_apple_cspdl, libsecurity_apple_file_dl, libsecurity_apple_x509_cl, libsecurity_apple_x509_tp, libsecurity_asn1, libsecurity_cdsa_client, libsecurity_cdsa_plugin, libsecurity_cdsa_utilities, libsecurity_cdsa_utils, libsecurity_cssm, libsecurity_filedb, libsecurity_keychain, libsecurity_mds, libsecurity_pkcs12, libsecurity_sd_cspdl, libsecurity_utilities, libsecurityd, osx_private_sdk, stdenv }: stdenv.mkDerivation rec { - version = "55115"; - name = "SecurityTool-${version}"; + version = "55115"; + name = "SecurityTool-${version}"; src = fetchurl { url = "http://opensource.apple.com/tarballs/SecurityTool/SecurityTool-${version}.tar.gz"; sha256 = "0apcz4vy2z5645jhrs60wj3w27mncjjqv42h5lln36g6qs2n9113"; }; - configurePhase = ""; + __propagatedImpureHostDeps = import ./impure-deps.nix; - # Someday we shall purge this impurity! - buildPhase = '' - /usr/bin/xcodebuild SDKROOT=${osx_private_sdk}/Developer/SDKs/PrivateMacOSX10.9.sdk/ + patchPhase = '' + # copied from libsecurity_generic + ln -s ${osx_private_sdk}/System/Library/Frameworks/Security.framework/Versions/A/PrivateHeaders Security + + substituteInPlace cmsutil.c --replace \ + '' \ + '"${apple_sdk.sdk}/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/CarbonCore.framework/Versions/A/Headers/MacErrors.h"' + substituteInPlace createFVMaster.c --replace \ + '' \ + '"${apple_sdk.sdk}/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/CarbonCore.framework/Versions/A/Headers/MacErrors.h"' ''; - installPhase = '' - mkdir -p $out/bin/ - cp build/Release/security $out/bin + postUnpack = '' + unpackFile ${Security.src} + cp Security-*/utilities/src/fileIo.c SecurityTool* + cp Security-*/utilities/src/fileIo.h SecurityTool* ''; + preBuild = '' + makeFlagsArray=(-j''$NIX_BUILD_CORES) + ''; + + NIX_LDFLAGS = "-no_dtrace_dof"; + + makeFlags = "-f ${./GNUmakefile} MAKEFILE_NAME=${./GNUmakefile}"; + + installFlags = [ + "security_INSTALL_DIR=\$(out)/bin" + ]; + + buildInputs = [ + gnustep-make + Security + Foundation + libsecurity_asn1 + libsecurity_utilities + libsecurity_cdsa_utilities + libobjc + libsecurity_cdsa_client + libsecurity_keychain + libsecurity_cssm + libsecurity_cdsa_utils + libsecurity_mds + libsecurity_cdsa_plugin + libsecurity_apple_csp + libsecurity_apple_cspdl + libsecurity_apple_file_dl + libsecurity_apple_x509_cl + libsecurity_apple_x509_tp + libsecurity_pkcs12 + libsecurity_sd_cspdl + libsecurity_filedb + libsecurityd + ]; + + NIX_CFLAGS_COMPILE = [ + "-F${Security}/Library/Frameworks" + "-F${PCSC}/Library/Frameworks" + "-Wno-deprecated-declarations" + ]; + meta = with stdenv.lib; { description = "Command line interface to Mac OS X keychains and Security framework"; - maintainers = with maintainers; [ copumpkin ]; - platforms = platforms.darwin; - license = licenses.apsl20; + maintainers = with maintainers; [ + copumpkin + joelteon + ]; + platforms = platforms.darwin; + license = licenses.apsl20; }; -} \ No newline at end of file +} + diff --git a/pkgs/os-specific/darwin/security-tool/impure-deps.nix b/pkgs/os-specific/darwin/security-tool/impure-deps.nix new file mode 100644 index 000000000000..0d9da5953493 --- /dev/null +++ b/pkgs/os-specific/darwin/security-tool/impure-deps.nix @@ -0,0 +1,129 @@ +[ + "/System/Library/Frameworks/Accelerate.framework/Versions/A/Accelerate" + "/System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vImage.framework/Versions/A/vImage" + "/System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libBLAS.dylib" + "/System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libLAPACK.dylib" + "/System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libLinearAlgebra.dylib" + "/System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libvDSP.dylib" + "/System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libvMisc.dylib" + "/System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/vecLib" + "/System/Library/Frameworks/AppKit.framework/Versions/C/AppKit" + "/System/Library/Frameworks/ApplicationServices.framework/Versions/A/ApplicationServices" + "/System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ATS.framework/Versions/A/ATS" + "/System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ATS.framework/Versions/A/Resources/libFontParser.dylib" + "/System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ATS.framework/Versions/A/Resources/libFontRegistry.dylib" + "/System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ColorSync.framework/Versions/A/ColorSync" + "/System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/HIServices.framework/Versions/A/HIServices" + "/System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/LangAnalysis.framework/Versions/A/LangAnalysis" + "/System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/PrintCore.framework/Versions/A/PrintCore" + "/System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/QD.framework/Versions/A/QD" + "/System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/SpeechSynthesis.framework/Versions/A/SpeechSynthesis" + "/System/Library/Frameworks/AudioToolbox.framework/Versions/A/AudioToolbox" + "/System/Library/Frameworks/AudioUnit.framework/Versions/A/AudioUnit" + "/System/Library/Frameworks/CFNetwork.framework/Versions/A/CFNetwork" + "/System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/CarbonSound.framework/Versions/A/CarbonSound" + "/System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/HIToolbox.framework/Versions/A/HIToolbox" + "/System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/Ink.framework/Versions/A/Ink" + "/System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/SpeechRecognition.framework/Versions/A/SpeechRecognition" + "/System/Library/Frameworks/CoreAudio.framework/Versions/A/CoreAudio" + "/System/Library/Frameworks/CoreBluetooth.framework/Versions/A/CoreBluetooth" + "/System/Library/Frameworks/CoreData.framework/Versions/A/CoreData" + "/System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation" + "/System/Library/Frameworks/CoreGraphics.framework/Versions/A/CoreGraphics" + "/System/Library/Frameworks/CoreServices.framework/Versions/A/CoreServices" + "/System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/AE.framework/Versions/A/AE" + "/System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/CarbonCore.framework/Versions/A/CarbonCore" + "/System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/DictionaryServices.framework/Versions/A/DictionaryServices" + "/System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/FSEvents.framework/Versions/A/FSEvents" + "/System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/LaunchServices.framework/Versions/A/LaunchServices" + "/System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/Metadata.framework/Versions/A/Metadata" + "/System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/OSServices.framework/Versions/A/OSServices" + "/System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/SearchKit.framework/Versions/A/SearchKit" + "/System/Library/Frameworks/CoreText.framework/Versions/A/CoreText" + "/System/Library/Frameworks/CoreVideo.framework/Versions/A/CoreVideo" + "/System/Library/Frameworks/CoreWLAN.framework/Versions/A/CoreWLAN" + "/System/Library/Frameworks/DiskArbitration.framework/Versions/A/DiskArbitration" + "/System/Library/Frameworks/Foundation.framework/Versions/C/Foundation" + "/System/Library/Frameworks/GSS.framework/Versions/A/GSS" + "/System/Library/Frameworks/IOBluetooth.framework/Versions/A/IOBluetooth" + "/System/Library/Frameworks/IOKit.framework/Versions/A/IOKit" + "/System/Library/Frameworks/IOSurface.framework/Versions/A/IOSurface" + "/System/Library/Frameworks/ImageIO.framework/Versions/A/ImageIO" + "/System/Library/Frameworks/ImageIO.framework/Versions/A/Resources/libGIF.dylib" + "/System/Library/Frameworks/ImageIO.framework/Versions/A/Resources/libJP2.dylib" + "/System/Library/Frameworks/ImageIO.framework/Versions/A/Resources/libJPEG.dylib" + "/System/Library/Frameworks/ImageIO.framework/Versions/A/Resources/libPng.dylib" + "/System/Library/Frameworks/ImageIO.framework/Versions/A/Resources/libRadiance.dylib" + "/System/Library/Frameworks/ImageIO.framework/Versions/A/Resources/libTIFF.dylib" + "/System/Library/Frameworks/Kerberos.framework/Versions/A/Kerberos" + "/System/Library/Frameworks/NetFS.framework/Versions/A/NetFS" + "/System/Library/Frameworks/OpenCL.framework/Versions/A/OpenCL" + "/System/Library/Frameworks/OpenDirectory.framework/Versions/A/Frameworks/CFOpenDirectory.framework/Versions/A/CFOpenDirectory" + "/System/Library/Frameworks/OpenDirectory.framework/Versions/A/OpenDirectory" + "/System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libCVMSPluginSupport.dylib" + "/System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libCoreVMClient.dylib" + "/System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGFXShared.dylib" + "/System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGL.dylib" + "/System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGLImage.dylib" + "/System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGLU.dylib" + "/System/Library/Frameworks/OpenGL.framework/Versions/A/OpenGL" + "/System/Library/Frameworks/PCSC.framework/Versions/A/PCSC" + "/System/Library/Frameworks/QuartzCore.framework/Versions/A/Frameworks/CoreImage.framework/Versions/A/CoreImage" + "/System/Library/Frameworks/QuartzCore.framework/Versions/A/QuartzCore" + "/System/Library/Frameworks/Security.framework/Versions/A/Security" + "/System/Library/Frameworks/SecurityFoundation.framework/Versions/A/SecurityFoundation" + "/System/Library/Frameworks/ServiceManagement.framework/Versions/A/ServiceManagement" + "/System/Library/Frameworks/SystemConfiguration.framework/Versions/A/SystemConfiguration" + "/System/Library/PrivateFrameworks/Apple80211.framework/Versions/A/Apple80211" + "/System/Library/PrivateFrameworks/AppleJPEG.framework/Versions/A/AppleJPEG" + "/System/Library/PrivateFrameworks/AppleVPA.framework/Versions/A/AppleVPA" + "/System/Library/PrivateFrameworks/Backup.framework/Versions/A/Backup" + "/System/Library/PrivateFrameworks/ChunkingLibrary.framework/Versions/A/ChunkingLibrary" + "/System/Library/PrivateFrameworks/CommonAuth.framework/Versions/A/CommonAuth" + "/System/Library/PrivateFrameworks/CoreSymbolication.framework/Versions/A/CoreSymbolication" + "/System/Library/PrivateFrameworks/CoreUI.framework/Versions/A/CoreUI" + "/System/Library/PrivateFrameworks/CoreWiFi.framework/Versions/A/CoreWiFi" + "/System/Library/PrivateFrameworks/CrashReporterSupport.framework/Versions/A/CrashReporterSupport" + "/System/Library/PrivateFrameworks/DataDetectorsCore.framework/Versions/A/DataDetectorsCore" + "/System/Library/PrivateFrameworks/DebugSymbols.framework/Versions/A/DebugSymbols" + "/System/Library/PrivateFrameworks/DesktopServicesPriv.framework/Versions/A/DesktopServicesPriv" + "/System/Library/PrivateFrameworks/FaceCore.framework/Versions/A/FaceCore" + "/System/Library/PrivateFrameworks/GenerationalStorage.framework/Versions/A/GenerationalStorage" + "/System/Library/PrivateFrameworks/Heimdal.framework/Versions/A/Heimdal" + "/System/Library/PrivateFrameworks/IconServices.framework/Versions/A/IconServices" + "/System/Library/PrivateFrameworks/LanguageModeling.framework/Versions/A/LanguageModeling" + "/System/Library/PrivateFrameworks/MultitouchSupport.framework/Versions/A/MultitouchSupport" + "/System/Library/PrivateFrameworks/NetAuth.framework/Versions/A/NetAuth" + "/System/Library/PrivateFrameworks/PerformanceAnalysis.framework/Versions/A/PerformanceAnalysis" + "/System/Library/PrivateFrameworks/RemoteViewServices.framework/Versions/A/RemoteViewServices" + "/System/Library/PrivateFrameworks/Sharing.framework/Versions/A/Sharing" + "/System/Library/PrivateFrameworks/SpeechRecognitionCore.framework/Versions/A/SpeechRecognitionCore" + "/System/Library/PrivateFrameworks/Symbolication.framework/Versions/A/Symbolication" + "/System/Library/PrivateFrameworks/TCC.framework/Versions/A/TCC" + "/System/Library/PrivateFrameworks/UIFoundation.framework/Versions/A/UIFoundation" + "/System/Library/PrivateFrameworks/Ubiquity.framework/Versions/A/Ubiquity" + "/System/Library/PrivateFrameworks/login.framework/Versions/A/Frameworks/loginsupport.framework/Versions/A/loginsupport" + "/usr/lib/libCRFSuite.dylib" + "/usr/lib/libOpenScriptingUtil.dylib" + "/usr/lib/libarchive.2.dylib" + "/usr/lib/libbsm.0.dylib" + "/usr/lib/libbz2.1.0.dylib" + "/usr/lib/libc++.1.dylib" + "/usr/lib/libc++abi.dylib" + "/usr/lib/libcmph.dylib" + "/usr/lib/libcups.2.dylib" + "/usr/lib/libextension.dylib" + "/usr/lib/libheimdal-asn1.dylib" + "/usr/lib/libiconv.2.dylib" + "/usr/lib/libicucore.A.dylib" + "/usr/lib/liblangid.dylib" + "/usr/lib/liblzma.5.dylib" + "/usr/lib/libmecabra.dylib" + "/usr/lib/libpam.2.dylib" + "/usr/lib/libresolv.9.dylib" + "/usr/lib/libsqlite3.dylib" + "/usr/lib/libxar.1.dylib" + "/usr/lib/libxml2.2.dylib" + "/usr/lib/libxslt.1.dylib" + "/usr/lib/libz.1.dylib" +] diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 2736481473e6..7b620f174b69 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -9348,9 +9348,9 @@ let xcode = callPackage ../os-specific/darwin/xcode {}; osx_sdk = callPackage ../os-specific/darwin/osx-sdk {}; - osx_private_sdk = callPackage ../os-specific/darwin/osx-private-sdk { inherit osx_sdk; }; + osx_private_sdk = callPackage ../os-specific/darwin/osx-private-sdk {}; - security_tool = callPackage ../os-specific/darwin/security-tool { inherit osx_private_sdk; }; + security_tool = (newScope (darwin.apple_sdk.frameworks // darwin)) ../os-specific/darwin/security-tool { }; binutils = callPackage ../os-specific/darwin/binutils { inherit cctools; }; @@ -9364,6 +9364,12 @@ let libobjc = apple-source-releases.objc4; }; + gnustep-make = callPackage ../development/tools/build-managers/gnustep/make {}; + gnustep-xcode = callPackage ../development/tools/build-managers/gnustep/xcode { + inherit (darwin.apple_sdk.frameworks) Foundation; + inherit (darwin) libobjc; + }; + devicemapper = lvm2; disk_indicator = callPackage ../os-specific/linux/disk-indicator { }; From 7851df44541588c8b089b863b6cd1239ed41e2aa Mon Sep 17 00:00:00 2001 From: Jude Taylor Date: Tue, 30 Jun 2015 16:10:51 -0700 Subject: [PATCH 236/259] fix input propagation on security-tool --- pkgs/os-specific/darwin/security-tool/default.nix | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/pkgs/os-specific/darwin/security-tool/default.nix b/pkgs/os-specific/darwin/security-tool/default.nix index ac495b63c0af..e1e51e6a7c9e 100644 --- a/pkgs/os-specific/darwin/security-tool/default.nix +++ b/pkgs/os-specific/darwin/security-tool/default.nix @@ -9,8 +9,6 @@ stdenv.mkDerivation rec { sha256 = "0apcz4vy2z5645jhrs60wj3w27mncjjqv42h5lln36g6qs2n9113"; }; - __propagatedImpureHostDeps = import ./impure-deps.nix; - patchPhase = '' # copied from libsecurity_generic ln -s ${osx_private_sdk}/System/Library/Frameworks/Security.framework/Versions/A/PrivateHeaders Security @@ -41,10 +39,10 @@ stdenv.mkDerivation rec { "security_INSTALL_DIR=\$(out)/bin" ]; + propagatedBuildInputs = [ Security PCSC Foundation ]; + buildInputs = [ gnustep-make - Security - Foundation libsecurity_asn1 libsecurity_utilities libsecurity_cdsa_utilities From ac3acae7a5a2884fda5751fbd62a8a56580de4b8 Mon Sep 17 00:00:00 2001 From: Jude Taylor Date: Tue, 30 Jun 2015 16:11:16 -0700 Subject: [PATCH 237/259] use security_tool in x509-system --- .../haskell-modules/configuration-common.nix | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/pkgs/development/haskell-modules/configuration-common.nix b/pkgs/development/haskell-modules/configuration-common.nix index c70fb5c0bc77..ad9f0b2c54af 100644 --- a/pkgs/development/haskell-modules/configuration-common.nix +++ b/pkgs/development/haskell-modules/configuration-common.nix @@ -209,12 +209,14 @@ self: super: { # Prevents needing to add security_tool as a build tool to all of x509-system's # dependencies. # TODO: use pkgs.darwin.security_tool once we can build it - x509-system = let security_tool = "/usr"; - in overrideCabal super.x509-system (drv: { - patchPhase = (drv.patchPhase or "") + pkgs.stdenv.lib.optionalString pkgs.stdenv.isDarwin '' - substituteInPlace System/X509/MacOS.hs --replace security ${security_tool}/bin/security - ''; - }); + x509-system = if pkgs.stdenv.isDarwin && !pkgs.stdenv.cc.nativeLibc + then let inherit (pkgs.darwin) security_tool; + in pkgs.lib.overrideDerivation (addBuildDepend super.x509-system security_tool) (drv: { + patchPhase = (drv.patchPhase or "") + '' + substituteInPlace System/X509/MacOS.hs --replace security ${security_tool}/bin/security + ''; + }) + else super.x509-system; double-conversion = if !pkgs.stdenv.isDarwin then super.double-conversion From 0f763a12bf5dc926f045f040fd708012db9f8f53 Mon Sep 17 00:00:00 2001 From: Jude Taylor Date: Thu, 2 Jul 2015 18:59:30 -0700 Subject: [PATCH 238/259] update PCSC dependencies --- pkgs/os-specific/darwin/apple-sdk/frameworks.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/os-specific/darwin/apple-sdk/frameworks.nix b/pkgs/os-specific/darwin/apple-sdk/frameworks.nix index ca700a9be7e6..222168d39da1 100644 --- a/pkgs/os-specific/darwin/apple-sdk/frameworks.nix +++ b/pkgs/os-specific/darwin/apple-sdk/frameworks.nix @@ -76,7 +76,7 @@ with frameworks; with libs; { OpenAL = []; OpenCL = [ IOSurface OpenGL ]; OpenGL = []; - PCSC = []; + PCSC = [ CoreData ]; PreferencePanes = []; PubSub = []; Python = [ ApplicationServices ]; From 630bff3b7d51637d18fbf820dd21e5985f8c7e8f Mon Sep 17 00:00:00 2001 From: Jude Taylor Date: Thu, 2 Jul 2015 18:59:59 -0700 Subject: [PATCH 239/259] remove unused security-tool deps file --- .../darwin/security-tool/impure-deps.nix | 129 ------------------ 1 file changed, 129 deletions(-) delete mode 100644 pkgs/os-specific/darwin/security-tool/impure-deps.nix diff --git a/pkgs/os-specific/darwin/security-tool/impure-deps.nix b/pkgs/os-specific/darwin/security-tool/impure-deps.nix deleted file mode 100644 index 0d9da5953493..000000000000 --- a/pkgs/os-specific/darwin/security-tool/impure-deps.nix +++ /dev/null @@ -1,129 +0,0 @@ -[ - "/System/Library/Frameworks/Accelerate.framework/Versions/A/Accelerate" - "/System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vImage.framework/Versions/A/vImage" - "/System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libBLAS.dylib" - "/System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libLAPACK.dylib" - "/System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libLinearAlgebra.dylib" - "/System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libvDSP.dylib" - "/System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libvMisc.dylib" - "/System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/vecLib" - "/System/Library/Frameworks/AppKit.framework/Versions/C/AppKit" - "/System/Library/Frameworks/ApplicationServices.framework/Versions/A/ApplicationServices" - "/System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ATS.framework/Versions/A/ATS" - "/System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ATS.framework/Versions/A/Resources/libFontParser.dylib" - "/System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ATS.framework/Versions/A/Resources/libFontRegistry.dylib" - "/System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ColorSync.framework/Versions/A/ColorSync" - "/System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/HIServices.framework/Versions/A/HIServices" - "/System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/LangAnalysis.framework/Versions/A/LangAnalysis" - "/System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/PrintCore.framework/Versions/A/PrintCore" - "/System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/QD.framework/Versions/A/QD" - "/System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/SpeechSynthesis.framework/Versions/A/SpeechSynthesis" - "/System/Library/Frameworks/AudioToolbox.framework/Versions/A/AudioToolbox" - "/System/Library/Frameworks/AudioUnit.framework/Versions/A/AudioUnit" - "/System/Library/Frameworks/CFNetwork.framework/Versions/A/CFNetwork" - "/System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/CarbonSound.framework/Versions/A/CarbonSound" - "/System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/HIToolbox.framework/Versions/A/HIToolbox" - "/System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/Ink.framework/Versions/A/Ink" - "/System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/SpeechRecognition.framework/Versions/A/SpeechRecognition" - "/System/Library/Frameworks/CoreAudio.framework/Versions/A/CoreAudio" - "/System/Library/Frameworks/CoreBluetooth.framework/Versions/A/CoreBluetooth" - "/System/Library/Frameworks/CoreData.framework/Versions/A/CoreData" - "/System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation" - "/System/Library/Frameworks/CoreGraphics.framework/Versions/A/CoreGraphics" - "/System/Library/Frameworks/CoreServices.framework/Versions/A/CoreServices" - "/System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/AE.framework/Versions/A/AE" - "/System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/CarbonCore.framework/Versions/A/CarbonCore" - "/System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/DictionaryServices.framework/Versions/A/DictionaryServices" - "/System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/FSEvents.framework/Versions/A/FSEvents" - "/System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/LaunchServices.framework/Versions/A/LaunchServices" - "/System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/Metadata.framework/Versions/A/Metadata" - "/System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/OSServices.framework/Versions/A/OSServices" - "/System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/SearchKit.framework/Versions/A/SearchKit" - "/System/Library/Frameworks/CoreText.framework/Versions/A/CoreText" - "/System/Library/Frameworks/CoreVideo.framework/Versions/A/CoreVideo" - "/System/Library/Frameworks/CoreWLAN.framework/Versions/A/CoreWLAN" - "/System/Library/Frameworks/DiskArbitration.framework/Versions/A/DiskArbitration" - "/System/Library/Frameworks/Foundation.framework/Versions/C/Foundation" - "/System/Library/Frameworks/GSS.framework/Versions/A/GSS" - "/System/Library/Frameworks/IOBluetooth.framework/Versions/A/IOBluetooth" - "/System/Library/Frameworks/IOKit.framework/Versions/A/IOKit" - "/System/Library/Frameworks/IOSurface.framework/Versions/A/IOSurface" - "/System/Library/Frameworks/ImageIO.framework/Versions/A/ImageIO" - "/System/Library/Frameworks/ImageIO.framework/Versions/A/Resources/libGIF.dylib" - "/System/Library/Frameworks/ImageIO.framework/Versions/A/Resources/libJP2.dylib" - "/System/Library/Frameworks/ImageIO.framework/Versions/A/Resources/libJPEG.dylib" - "/System/Library/Frameworks/ImageIO.framework/Versions/A/Resources/libPng.dylib" - "/System/Library/Frameworks/ImageIO.framework/Versions/A/Resources/libRadiance.dylib" - "/System/Library/Frameworks/ImageIO.framework/Versions/A/Resources/libTIFF.dylib" - "/System/Library/Frameworks/Kerberos.framework/Versions/A/Kerberos" - "/System/Library/Frameworks/NetFS.framework/Versions/A/NetFS" - "/System/Library/Frameworks/OpenCL.framework/Versions/A/OpenCL" - "/System/Library/Frameworks/OpenDirectory.framework/Versions/A/Frameworks/CFOpenDirectory.framework/Versions/A/CFOpenDirectory" - "/System/Library/Frameworks/OpenDirectory.framework/Versions/A/OpenDirectory" - "/System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libCVMSPluginSupport.dylib" - "/System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libCoreVMClient.dylib" - "/System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGFXShared.dylib" - "/System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGL.dylib" - "/System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGLImage.dylib" - "/System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGLU.dylib" - "/System/Library/Frameworks/OpenGL.framework/Versions/A/OpenGL" - "/System/Library/Frameworks/PCSC.framework/Versions/A/PCSC" - "/System/Library/Frameworks/QuartzCore.framework/Versions/A/Frameworks/CoreImage.framework/Versions/A/CoreImage" - "/System/Library/Frameworks/QuartzCore.framework/Versions/A/QuartzCore" - "/System/Library/Frameworks/Security.framework/Versions/A/Security" - "/System/Library/Frameworks/SecurityFoundation.framework/Versions/A/SecurityFoundation" - "/System/Library/Frameworks/ServiceManagement.framework/Versions/A/ServiceManagement" - "/System/Library/Frameworks/SystemConfiguration.framework/Versions/A/SystemConfiguration" - "/System/Library/PrivateFrameworks/Apple80211.framework/Versions/A/Apple80211" - "/System/Library/PrivateFrameworks/AppleJPEG.framework/Versions/A/AppleJPEG" - "/System/Library/PrivateFrameworks/AppleVPA.framework/Versions/A/AppleVPA" - "/System/Library/PrivateFrameworks/Backup.framework/Versions/A/Backup" - "/System/Library/PrivateFrameworks/ChunkingLibrary.framework/Versions/A/ChunkingLibrary" - "/System/Library/PrivateFrameworks/CommonAuth.framework/Versions/A/CommonAuth" - "/System/Library/PrivateFrameworks/CoreSymbolication.framework/Versions/A/CoreSymbolication" - "/System/Library/PrivateFrameworks/CoreUI.framework/Versions/A/CoreUI" - "/System/Library/PrivateFrameworks/CoreWiFi.framework/Versions/A/CoreWiFi" - "/System/Library/PrivateFrameworks/CrashReporterSupport.framework/Versions/A/CrashReporterSupport" - "/System/Library/PrivateFrameworks/DataDetectorsCore.framework/Versions/A/DataDetectorsCore" - "/System/Library/PrivateFrameworks/DebugSymbols.framework/Versions/A/DebugSymbols" - "/System/Library/PrivateFrameworks/DesktopServicesPriv.framework/Versions/A/DesktopServicesPriv" - "/System/Library/PrivateFrameworks/FaceCore.framework/Versions/A/FaceCore" - "/System/Library/PrivateFrameworks/GenerationalStorage.framework/Versions/A/GenerationalStorage" - "/System/Library/PrivateFrameworks/Heimdal.framework/Versions/A/Heimdal" - "/System/Library/PrivateFrameworks/IconServices.framework/Versions/A/IconServices" - "/System/Library/PrivateFrameworks/LanguageModeling.framework/Versions/A/LanguageModeling" - "/System/Library/PrivateFrameworks/MultitouchSupport.framework/Versions/A/MultitouchSupport" - "/System/Library/PrivateFrameworks/NetAuth.framework/Versions/A/NetAuth" - "/System/Library/PrivateFrameworks/PerformanceAnalysis.framework/Versions/A/PerformanceAnalysis" - "/System/Library/PrivateFrameworks/RemoteViewServices.framework/Versions/A/RemoteViewServices" - "/System/Library/PrivateFrameworks/Sharing.framework/Versions/A/Sharing" - "/System/Library/PrivateFrameworks/SpeechRecognitionCore.framework/Versions/A/SpeechRecognitionCore" - "/System/Library/PrivateFrameworks/Symbolication.framework/Versions/A/Symbolication" - "/System/Library/PrivateFrameworks/TCC.framework/Versions/A/TCC" - "/System/Library/PrivateFrameworks/UIFoundation.framework/Versions/A/UIFoundation" - "/System/Library/PrivateFrameworks/Ubiquity.framework/Versions/A/Ubiquity" - "/System/Library/PrivateFrameworks/login.framework/Versions/A/Frameworks/loginsupport.framework/Versions/A/loginsupport" - "/usr/lib/libCRFSuite.dylib" - "/usr/lib/libOpenScriptingUtil.dylib" - "/usr/lib/libarchive.2.dylib" - "/usr/lib/libbsm.0.dylib" - "/usr/lib/libbz2.1.0.dylib" - "/usr/lib/libc++.1.dylib" - "/usr/lib/libc++abi.dylib" - "/usr/lib/libcmph.dylib" - "/usr/lib/libcups.2.dylib" - "/usr/lib/libextension.dylib" - "/usr/lib/libheimdal-asn1.dylib" - "/usr/lib/libiconv.2.dylib" - "/usr/lib/libicucore.A.dylib" - "/usr/lib/liblangid.dylib" - "/usr/lib/liblzma.5.dylib" - "/usr/lib/libmecabra.dylib" - "/usr/lib/libpam.2.dylib" - "/usr/lib/libresolv.9.dylib" - "/usr/lib/libsqlite3.dylib" - "/usr/lib/libxar.1.dylib" - "/usr/lib/libxml2.2.dylib" - "/usr/lib/libxslt.1.dylib" - "/usr/lib/libz.1.dylib" -] From 066412c7b0bd175ae2d22e97745e01f38454ce53 Mon Sep 17 00:00:00 2001 From: Jude Taylor Date: Sun, 5 Jul 2015 01:41:56 -0700 Subject: [PATCH 240/259] clean up propagated stuff for x509-system --- .../development/haskell-modules/configuration-common.nix | 4 +++- pkgs/os-specific/darwin/apple-sdk/impure-deps.nix | 8 ++++++++ pkgs/os-specific/darwin/security-tool/default.nix | 9 +++++++-- 3 files changed, 18 insertions(+), 3 deletions(-) diff --git a/pkgs/development/haskell-modules/configuration-common.nix b/pkgs/development/haskell-modules/configuration-common.nix index ad9f0b2c54af..3586fd0a2324 100644 --- a/pkgs/development/haskell-modules/configuration-common.nix +++ b/pkgs/development/haskell-modules/configuration-common.nix @@ -208,13 +208,15 @@ self: super: { # Prevents needing to add security_tool as a build tool to all of x509-system's # dependencies. - # TODO: use pkgs.darwin.security_tool once we can build it x509-system = if pkgs.stdenv.isDarwin && !pkgs.stdenv.cc.nativeLibc then let inherit (pkgs.darwin) security_tool; in pkgs.lib.overrideDerivation (addBuildDepend super.x509-system security_tool) (drv: { patchPhase = (drv.patchPhase or "") + '' substituteInPlace System/X509/MacOS.hs --replace security ${security_tool}/bin/security ''; + __propagatedImpureHostDeps = drv.__propagatedImpureHostDeps ++ [ + "/System/Library/Keychains" + ]; }) else super.x509-system; diff --git a/pkgs/os-specific/darwin/apple-sdk/impure-deps.nix b/pkgs/os-specific/darwin/apple-sdk/impure-deps.nix index 0d2f2728406a..54a6dcfaeaf7 100644 --- a/pkgs/os-specific/darwin/apple-sdk/impure-deps.nix +++ b/pkgs/os-specific/darwin/apple-sdk/impure-deps.nix @@ -16,6 +16,12 @@ rec { "/usr/lib/libpam.2.dylib" "/usr/lib/libxar.1.dylib" ]; + GSS = [ + "/System/Library/Frameworks/GSS.framework" + ]; + Kerberos = [ + "/System/Library/Frameworks/Kerberos.framework" + ]; CoreServices = [ "/System/Library/Frameworks/CoreServices.framework" "/System/Library/PrivateFrameworks/DataDetectorsCore.framework/Versions/A/DataDetectorsCore" @@ -76,6 +82,8 @@ rec { "/System/Library/PrivateFrameworks/DesktopServicesPriv.framework/Versions/A/DesktopServicesPriv" "/System/Library/PrivateFrameworks/FaceCore.framework/Versions/A/FaceCore" "/System/Library/PrivateFrameworks/GenerationalStorage.framework/Versions/A/GenerationalStorage" + "/System/Library/PrivateFrameworks/Heimdal.framework/Heimdal" + "/System/Library/PrivateFrameworks/Heimdal.framework/Versions/Current" "/System/Library/PrivateFrameworks/Heimdal.framework/Versions/A/Heimdal" "/System/Library/PrivateFrameworks/IconServices.framework/Versions/A/IconServices" "/System/Library/PrivateFrameworks/LanguageModeling.framework/Versions/A/LanguageModeling" diff --git a/pkgs/os-specific/darwin/security-tool/default.nix b/pkgs/os-specific/darwin/security-tool/default.nix index e1e51e6a7c9e..866d006238df 100644 --- a/pkgs/os-specific/darwin/security-tool/default.nix +++ b/pkgs/os-specific/darwin/security-tool/default.nix @@ -1,4 +1,4 @@ -{ CoreServices, Foundation, PCSC, Security, apple_sdk, fetchurl, gnustep-make, libobjc, libsecurity_apple_csp, libsecurity_apple_cspdl, libsecurity_apple_file_dl, libsecurity_apple_x509_cl, libsecurity_apple_x509_tp, libsecurity_asn1, libsecurity_cdsa_client, libsecurity_cdsa_plugin, libsecurity_cdsa_utilities, libsecurity_cdsa_utils, libsecurity_cssm, libsecurity_filedb, libsecurity_keychain, libsecurity_mds, libsecurity_pkcs12, libsecurity_sd_cspdl, libsecurity_utilities, libsecurityd, osx_private_sdk, stdenv }: +{ CoreServices, Foundation, PCSC, Security, GSS, Kerberos, makeWrapper, apple_sdk, fetchurl, gnustep-make, libobjc, libsecurity_apple_csp, libsecurity_apple_cspdl, libsecurity_apple_file_dl, libsecurity_apple_x509_cl, libsecurity_apple_x509_tp, libsecurity_asn1, libsecurity_cdsa_client, libsecurity_cdsa_plugin, libsecurity_cdsa_utilities, libsecurity_cdsa_utils, libsecurity_cssm, libsecurity_filedb, libsecurity_keychain, libsecurity_mds, libsecurity_pkcs12, libsecurity_sd_cspdl, libsecurity_utilities, libsecurityd, osx_private_sdk, stdenv }: stdenv.mkDerivation rec { version = "55115"; @@ -39,7 +39,7 @@ stdenv.mkDerivation rec { "security_INSTALL_DIR=\$(out)/bin" ]; - propagatedBuildInputs = [ Security PCSC Foundation ]; + propagatedBuildInputs = [ GSS Kerberos Security PCSC Foundation ]; buildInputs = [ gnustep-make @@ -62,6 +62,7 @@ stdenv.mkDerivation rec { libsecurity_sd_cspdl libsecurity_filedb libsecurityd + makeWrapper ]; NIX_CFLAGS_COMPILE = [ @@ -70,6 +71,10 @@ stdenv.mkDerivation rec { "-Wno-deprecated-declarations" ]; + postInstall = '' + wrapProgram $out/bin/security --set DYLD_INSERT_LIBRARIES /usr/lib/libsqlite3.dylib + ''; + meta = with stdenv.lib; { description = "Command line interface to Mac OS X keychains and Security framework"; maintainers = with maintainers; [ From a2b3fe28a883c3d4695d250262c39bba1b34f966 Mon Sep 17 00:00:00 2001 From: Jude Taylor Date: Fri, 10 Jul 2015 14:00:47 -0700 Subject: [PATCH 241/259] make bootstrap files buildable in sandbox --- pkgs/stdenv/pure-darwin/default.nix | 32 +++++++++++++++-------------- 1 file changed, 17 insertions(+), 15 deletions(-) diff --git a/pkgs/stdenv/pure-darwin/default.nix b/pkgs/stdenv/pure-darwin/default.nix index 79925a2edfdd..92c6f321d36b 100644 --- a/pkgs/stdenv/pure-darwin/default.nix +++ b/pkgs/stdenv/pure-darwin/default.nix @@ -5,11 +5,26 @@ }: let - fetch = { file, sha256 }: import { + # libSystem and its transitive dependencies. Get used to this; it's a recurring theme in darwin land + libSystemClosure = [ + "/usr/lib/libSystem.dylib" + "/usr/lib/libSystem.B.dylib" + "/usr/lib/libobjc.A.dylib" + "/usr/lib/libobjc.dylib" + "/usr/lib/libauto.dylib" + "/usr/lib/libc++abi.dylib" + "/usr/lib/libc++.1.dylib" + "/usr/lib/libDiagnosticMessagesClient.dylib" + "/usr/lib/system" + ]; + + fetch = { file, sha256 }: derivation ((import { url = "https://dl.dropboxusercontent.com/u/2857322/${file}"; inherit sha256; executable = true; - }; + }).drvAttrs // { + __impureHostDeps = libSystemClosure; + }); bootstrapFiles = { sh = fetch { file = "sh"; sha256 = "1qakpg37vl61jnkplz13m3g1csqr85cg8ybp6jwiv6apmg26isnm"; }; @@ -30,19 +45,6 @@ in rec { export CMAKE_OSX_ARCHITECTURES=x86_64 ''; - # libSystem and its transitive dependencies. Get used to this; it's a recurring theme in darwin land - libSystemClosure = [ - "/usr/lib/libSystem.dylib" - "/usr/lib/libSystem.B.dylib" - "/usr/lib/libobjc.A.dylib" - "/usr/lib/libobjc.dylib" - "/usr/lib/libauto.dylib" - "/usr/lib/libc++abi.dylib" - "/usr/lib/libc++.1.dylib" - "/usr/lib/libDiagnosticMessagesClient.dylib" - "/usr/lib/system" - ]; - # The one dependency of /bin/sh :( binShClosure = [ "/usr/lib/libncurses.5.4.dylib" ]; From d29eb63542ea36faedbed637a9f0a29ac111a807 Mon Sep 17 00:00:00 2001 From: Jude Taylor Date: Fri, 10 Jul 2015 18:48:14 -0700 Subject: [PATCH 242/259] node v0.10 doesn't work either. update libuv on darwin only --- pkgs/top-level/all-packages.nix | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 2736481473e6..4e35870192ff 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -2003,7 +2003,9 @@ let ninka = callPackage ../development/tools/misc/ninka { }; nodejs-0_12 = callPackage ../development/web/nodejs { - libuv = libuvVersions.v1_2_0; + libuv = if stdenv.isDarwin + then libuvVersions.v1_6_1 + else libuvVersions.v1_2_0; libtool = darwin.cctools; }; nodejs-unstable = callPackage ../development/web/nodejs { libuv = libuvVersions.v1_2_0; unstableVersion = true; }; @@ -2012,7 +2014,7 @@ let inherit (darwin.apple_sdk.frameworks) CoreServices ApplicationServices Carbon Foundation; }; - nodejs = if stdenv.system == "armv5tel-linux" || stdenv.isDarwin then + nodejs = if stdenv.system == "armv5tel-linux" then nodejs-0_10 else nodejs-0_12; From a36be69832aeba0186eaeda5033cfd78b45f4cef Mon Sep 17 00:00:00 2001 From: Pascal Wittmann Date: Sat, 11 Jul 2015 10:25:36 +0200 Subject: [PATCH 243/259] gnome3.gnome-user-share: fix build (ZHF) Binary was splitted in webdav and bluetooth component. See https://github.com/GNOME/gnome-user-share/commit/d6eb26cca2c96a92f7420407229c0a332b4dc439 --- pkgs/desktops/gnome-3/3.16/core/gnome-user-share/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/desktops/gnome-3/3.16/core/gnome-user-share/default.nix b/pkgs/desktops/gnome-3/3.16/core/gnome-user-share/default.nix index 2f158be4e0dd..2d563e1f7b55 100644 --- a/pkgs/desktops/gnome-3/3.16/core/gnome-user-share/default.nix +++ b/pkgs/desktops/gnome-3/3.16/core/gnome-user-share/default.nix @@ -38,7 +38,7 @@ in stdenv.mkDerivation rec { ''; preFixup = '' - wrapProgram "$out/libexec/gnome-user-share" \ + wrapProgram "$out/libexec/gnome-user-share-webdav" \ --set GDK_PIXBUF_MODULE_FILE "$GDK_PIXBUF_MODULE_FILE" \ --prefix XDG_DATA_DIRS : "$out/share:$XDG_ICON_DIRS:$GSETTINGS_SCHEMAS_PATH" ''; From 071304f26d452cd7ea0f8d9ce82cf0170906e02a Mon Sep 17 00:00:00 2001 From: Pascal Wittmann Date: Sat, 11 Jul 2015 11:51:48 +0200 Subject: [PATCH 244/259] ruby_2_2_0: pass libobjc and libunwind --- 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 d2b0f884a876..07f2796c93e0 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -5048,7 +5048,9 @@ let ruby_2_1_2 = callPackage ../development/interpreters/ruby/ruby-2.1.2.nix { }; ruby_2_1_3 = callPackage ../development/interpreters/ruby/ruby-2.1.3.nix { }; ruby_2_1_6 = callPackage ../development/interpreters/ruby/ruby-2.1.6.nix { }; - ruby_2_2_0 = callPackage ../development/interpreters/ruby/ruby-2.2.0.nix { }; + ruby_2_2_0 = callPackage ../development/interpreters/ruby/ruby-2.2.0.nix { + inherit (darwin) libobjc libunwind; + }; ruby_2_2_2 = callPackage ../development/interpreters/ruby/ruby-2.2.2.nix { inherit (darwin) libobjc libunwind; }; From 5f308b50e4b4536406ab38a1f19de3d9a8681c17 Mon Sep 17 00:00:00 2001 From: Jude Taylor Date: Sat, 11 Jul 2015 16:04:27 -0700 Subject: [PATCH 245/259] add system keychains to security-tool's propagated inputs --- pkgs/development/haskell-modules/configuration-common.nix | 3 --- pkgs/os-specific/darwin/security-tool/default.nix | 2 ++ 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/pkgs/development/haskell-modules/configuration-common.nix b/pkgs/development/haskell-modules/configuration-common.nix index 3586fd0a2324..232ea3630e4e 100644 --- a/pkgs/development/haskell-modules/configuration-common.nix +++ b/pkgs/development/haskell-modules/configuration-common.nix @@ -214,9 +214,6 @@ self: super: { patchPhase = (drv.patchPhase or "") + '' substituteInPlace System/X509/MacOS.hs --replace security ${security_tool}/bin/security ''; - __propagatedImpureHostDeps = drv.__propagatedImpureHostDeps ++ [ - "/System/Library/Keychains" - ]; }) else super.x509-system; diff --git a/pkgs/os-specific/darwin/security-tool/default.nix b/pkgs/os-specific/darwin/security-tool/default.nix index 866d006238df..7cff4fc3eef4 100644 --- a/pkgs/os-specific/darwin/security-tool/default.nix +++ b/pkgs/os-specific/darwin/security-tool/default.nix @@ -41,6 +41,8 @@ stdenv.mkDerivation rec { propagatedBuildInputs = [ GSS Kerberos Security PCSC Foundation ]; + __propagatedImpureHostDeps = [ "/System/Library/Keychains" ]; + buildInputs = [ gnustep-make libsecurity_asn1 From 682dc3ee70c7a24b0eac93189bf66a2eb331f0a0 Mon Sep 17 00:00:00 2001 From: Jude Taylor Date: Sat, 11 Jul 2015 16:04:36 -0700 Subject: [PATCH 246/259] link yesod-bin with cocoa --- pkgs/development/haskell-modules/configuration-common.nix | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/pkgs/development/haskell-modules/configuration-common.nix b/pkgs/development/haskell-modules/configuration-common.nix index 232ea3630e4e..75e47e7ce77f 100644 --- a/pkgs/development/haskell-modules/configuration-common.nix +++ b/pkgs/development/haskell-modules/configuration-common.nix @@ -897,6 +897,10 @@ self: super: { wai-session = markBroken super.wai-session; serversession-frontend-wai = dontDistribute super.serversession-frontend-wai; + yesod-bin = if pkgs.stdenv.isDarwin + then addBuildDepend super.yesod-bin pkgs.darwin.apple_sdk.frameworks.Cocoa + else super.yesod-bin; + # https://github.com/commercialhaskell/stack/issues/408 # https://github.com/commercialhaskell/stack/issues/409 stack = overrideCabal super.stack (drv: { preCheck = "export HOME=$TMPDIR"; doCheck = false; }); From 2767e93843ac8e0d216d7eb566e0d0d86ed73068 Mon Sep 17 00:00:00 2001 From: Jude Taylor Date: Sat, 11 Jul 2015 16:04:47 -0700 Subject: [PATCH 247/259] darwin purity: go-1.4 --- pkgs/development/compilers/go/1.4.nix | 16 +++++++++++++--- pkgs/top-level/all-packages.nix | 4 +++- 2 files changed, 16 insertions(+), 4 deletions(-) diff --git a/pkgs/development/compilers/go/1.4.nix b/pkgs/development/compilers/go/1.4.nix index 12642eeace58..d42873ab975d 100644 --- a/pkgs/development/compilers/go/1.4.nix +++ b/pkgs/development/compilers/go/1.4.nix @@ -1,4 +1,6 @@ -{ stdenv, lib, fetchurl, bison, glibc, bash, coreutils, makeWrapper, tzdata, iana_etc, perl, Security, goPackages }: +{ stdenv, lib, fetchurl, bison, glibc, bash, coreutils, makeWrapper, tzdata, iana_etc, perl, goPackages + +, Security }: let loader386 = "${glibc}/lib/ld-linux.so.2"; @@ -17,8 +19,9 @@ stdenv.mkDerivation rec { # perl is used for testing go vet buildInputs = [ bison bash makeWrapper perl ] - ++ lib.optionals stdenv.isLinux [ glibc ] - ++ lib.optionals stdenv.isDarwin [ Security ]; + ++ lib.optionals stdenv.isLinux [ glibc ]; + + propagatedBuildInputs = lib.optional stdenv.isDarwin Security; # I'm not sure what go wants from its 'src', but the go installation manual # describes an installation keeping the src. @@ -56,6 +59,13 @@ stdenv.mkDerivation rec { sed -i 's,/lib/ld-linux.so.3,${loaderArm},' src/cmd/5l/asm.c sed -i 's,/lib64/ld-linux-x86-64.so.2,${loaderAmd64},' src/cmd/6l/asm.c sed -i 's,/lib/ld-linux.so.2,${loader386},' src/cmd/8l/asm.c + '' + lib.optionalString stdenv.isDarwin '' + sed -i 's,"/etc","'"$TMPDIR"'",' src/os/os_test.go + sed -i 's,/_go_os_test,'"$TMPDIR"'/_go_os_test,' src/os/path_test.go + sed -i '/TestRead0/areturn' src/os/os_test.go + sed -i '/TestSystemRoots/areturn' src/crypto/x509/root_darwin_test.go + + touch $TMPDIR/group $TMPDIR/hosts $TMPDIR/passwd ''; patches = [ diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 07f2796c93e0..3d4910ff30d8 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -3958,7 +3958,9 @@ let go_1_3 = callPackage ../development/compilers/go/1.3.nix { }; - go_1_4 = callPackage ../development/compilers/go/1.4.nix { inherit (darwin) Security; }; + go_1_4 = callPackage ../development/compilers/go/1.4.nix { + inherit (darwin.apple_sdk.frameworks) Security; + }; go = go_1_4; From d3a4fe374f26e450e2a3ea8bf66d1f616af488e3 Mon Sep 17 00:00:00 2001 From: Jude Taylor Date: Sat, 11 Jul 2015 16:04:58 -0700 Subject: [PATCH 248/259] update framework impure deps --- pkgs/os-specific/darwin/apple-sdk/frameworks.nix | 2 +- pkgs/os-specific/darwin/apple-sdk/impure-deps.nix | 3 +++ 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/pkgs/os-specific/darwin/apple-sdk/frameworks.nix b/pkgs/os-specific/darwin/apple-sdk/frameworks.nix index 222168d39da1..9da2dd74c711 100644 --- a/pkgs/os-specific/darwin/apple-sdk/frameworks.nix +++ b/pkgs/os-specific/darwin/apple-sdk/frameworks.nix @@ -89,7 +89,7 @@ with frameworks; with libs; { ScreenSaver = []; Scripting = []; ScriptingBridge = []; - Security = [ CoreFoundation ]; + Security = [ CoreFoundation IOKit ]; SecurityFoundation = []; SecurityInterface = [ Security ]; ServiceManagement = [ CoreFoundation Security ]; diff --git a/pkgs/os-specific/darwin/apple-sdk/impure-deps.nix b/pkgs/os-specific/darwin/apple-sdk/impure-deps.nix index 54a6dcfaeaf7..e2fdef60001f 100644 --- a/pkgs/os-specific/darwin/apple-sdk/impure-deps.nix +++ b/pkgs/os-specific/darwin/apple-sdk/impure-deps.nix @@ -12,9 +12,12 @@ rec { ]; Security = [ "/System/Library/Frameworks/Security.framework" + "/usr/lib/libbsm.0.dylib" "/usr/lib/libbz2.1.0.dylib" "/usr/lib/libpam.2.dylib" "/usr/lib/libxar.1.dylib" + "/usr/lib/libxml2.2.dylib" + "/usr/lib/libsqlite3.dylib" ]; GSS = [ "/System/Library/Frameworks/GSS.framework" From 4d154c3371b047d350382d814e06c5febc99150e Mon Sep 17 00:00:00 2001 From: Pascal Wittmann Date: Sun, 12 Jul 2015 23:02:12 +0200 Subject: [PATCH 249/259] purePackages.stldict: fix build with gcc 4.9 (ZHF) --- pkgs/development/pure-modules/stldict/default.nix | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/pkgs/development/pure-modules/stldict/default.nix b/pkgs/development/pure-modules/stldict/default.nix index abfc0d0fdefc..4ade515faa88 100644 --- a/pkgs/development/pure-modules/stldict/default.nix +++ b/pkgs/development/pure-modules/stldict/default.nix @@ -10,6 +10,12 @@ stdenv.mkDerivation rec { sha256 = "5b894ae6dc574c7022258e2732bea649c82c959ec4d0be13fb5a3e8ba8488f28"; }; + postPatch = '' + for f in hashdict.cc orddict.cc; do + sed -i '1i\#include ' $f + done + ''; + buildInputs = [ pkgconfig ]; propagatedBuildInputs = [ pure ]; makeFlags = "libdir=$(out)/lib prefix=$(out)/"; From e79a63758d0eabb6e01083f28cb5e40314aae43e Mon Sep 17 00:00:00 2001 From: Pascal Wittmann Date: Sun, 12 Jul 2015 23:18:16 +0200 Subject: [PATCH 250/259] purePackages.stllib: fix build with gcc 4.9 (ZHF) --- pkgs/development/pure-modules/stllib/default.nix | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/pkgs/development/pure-modules/stllib/default.nix b/pkgs/development/pure-modules/stllib/default.nix index 3be7bccf2a42..02c96d975ec4 100644 --- a/pkgs/development/pure-modules/stllib/default.nix +++ b/pkgs/development/pure-modules/stllib/default.nix @@ -10,6 +10,12 @@ stdenv.mkDerivation rec { sha256 = "1d550764fc2f8ba6ddbd1fbd3da2d6965b69e2c992747265d9ebe4f16aa5e455"; }; + postPatch = '' + for f in pure-stlmap/{stlmap.cpp,stlmmap.cpp,stlhmap.cpp}; do + sed -i '1i\#include ' $f + done + ''; + buildInputs = [ pkgconfig ]; propagatedBuildInputs = [ pure ]; makeFlags = "libdir=$(out)/lib prefix=$(out)/"; From dc608ff2373af5ad50e5e48084d2f0bae4bed9ed Mon Sep 17 00:00:00 2001 From: Pascal Wittmann Date: Sun, 12 Jul 2015 23:41:10 +0200 Subject: [PATCH 251/259] sbsigntool: fix build (ZHF) --- pkgs/tools/security/sbsigntool/default.nix | 2 ++ 1 file changed, 2 insertions(+) diff --git a/pkgs/tools/security/sbsigntool/default.nix b/pkgs/tools/security/sbsigntool/default.nix index 1571720a0b9b..4cc5e2505d13 100644 --- a/pkgs/tools/security/sbsigntool/default.nix +++ b/pkgs/tools/security/sbsigntool/default.nix @@ -13,6 +13,8 @@ stdenv.mkDerivation rec { patches = [ ./autoconf.patch ]; + prePatch = "patchShebangs ."; + buildInputs = [ autoconf automake utillinux openssl libuuid gnu-efi binutils pkgconfig help2man ]; configurePhase = '' From 3514a828fba0cf24dcd4daf21e4376cb7554d668 Mon Sep 17 00:00:00 2001 From: Pascal Wittmann Date: Sun, 12 Jul 2015 23:55:24 +0200 Subject: [PATCH 252/259] stg-puzzles: fix build (ZHF) --- pkgs/games/sgt-puzzles/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/games/sgt-puzzles/default.nix b/pkgs/games/sgt-puzzles/default.nix index 67f74be9e1cd..e23801b22204 100644 --- a/pkgs/games/sgt-puzzles/default.nix +++ b/pkgs/games/sgt-puzzles/default.nix @@ -16,7 +16,7 @@ stdenv.mkDerivation { makeFlags = ["prefix=$(out)" "gamesdir=$(out)/bin"]; preInstall = '' mkdir -p "$out"/{bin,share/doc/sgtpuzzles} - cp puzzles.txt LICENCE README "$out/share/doc/sgtpuzzles" + cp gamedesc.txt LICENCE README "$out/share/doc/sgtpuzzles" cp LICENCE "$out/share/doc/sgtpuzzles/LICENSE" ''; preConfigure = '' From 1e9561ff393e07d935d62cfaeb609d0c77040ebb Mon Sep 17 00:00:00 2001 From: Pascal Wittmann Date: Mon, 13 Jul 2015 13:43:11 +0200 Subject: [PATCH 253/259] bareos: fix build (ZHF) --- pkgs/tools/backup/bareos/default.nix | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/pkgs/tools/backup/bareos/default.nix b/pkgs/tools/backup/bareos/default.nix index 016e3c5d51e8..32702a4e16d2 100644 --- a/pkgs/tools/backup/bareos/default.nix +++ b/pkgs/tools/backup/bareos/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchFromGitHub, pkgconfig, nettools, gettext, libtool +{ stdenv, fetchFromGitHub, pkgconfig, nettools, gettext, libtool, flex , readline ? null, openssl ? null, python ? null, ncurses ? null , sqlite ? null, postgresql ? null, libmysql ? null, zlib ? null, lzo ? null , acl ? null, glusterfs ? null, libceph ? null, libcap ? null @@ -23,7 +23,7 @@ stdenv.mkDerivation rec { }; buildInputs = [ - pkgconfig nettools gettext readline openssl python + pkgconfig nettools gettext readline openssl python flex ncurses sqlite postgresql libmysql zlib lzo acl glusterfs libceph libcap ]; @@ -65,6 +65,7 @@ stdenv.mkDerivation rec { "sysconfdir=\${out}/etc" "working_dir=\${TMPDIR}" "log_dir=\${TMPDIR}" + "sbindir=\${out}/bin" ]; meta = with stdenv.lib; { From 3cee0c8524f35686d8d7afa4d06d9a8704947e13 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Carles=20Pag=C3=A8s?= Date: Mon, 13 Jul 2015 14:27:56 +0200 Subject: [PATCH 254/259] jsoncpp: the shared lib was not being built Since the last version update only the static lib was built, and even that was removed in the last commit. Fix shared ones, which is what we want. Also, add myself to maintainers. --- pkgs/development/libraries/jsoncpp/default.nix | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/pkgs/development/libraries/jsoncpp/default.nix b/pkgs/development/libraries/jsoncpp/default.nix index 9e5ac7696167..8bb1d40b2a90 100644 --- a/pkgs/development/libraries/jsoncpp/default.nix +++ b/pkgs/development/libraries/jsoncpp/default.nix @@ -20,19 +20,25 @@ stdenv.mkDerivation rec { export sourceRoot=${src.name} ''; + # Hack to be able to run the test, broken because we use + # CMAKE_SKIP_BUILD_RPATH to avoid cmake resetting rpath on install + preBuild = '' + export LD_LIBRARY_PATH="`pwd`/src/lib_json:$LD_LIBRARY_PATH" + ''; + nativeBuildInputs = [ cmake python ]; cmakeFlags = [ - "-DJSONCPP_WITH_CMAKE_PACKAGE=1" + "-DJSONCPP_LIB_BUILD_SHARED=ON" + "-DJSONCPP_LIB_BUILD_STATIC=OFF" + "-DJSONCPP_WITH_CMAKE_PACKAGE=ON" ]; - postInstall = "rm $out/lib/*.a"; - meta = { inherit version; homepage = https://github.com/open-source-parsers/jsoncpp; description = "A simple API to manipulate JSON data in C++"; - maintainers = with stdenv.lib.maintainers; [ ttuegel ]; + maintainers = with stdenv.lib.maintainers; [ ttuegel page ]; license = stdenv.lib.licenses.mit; branch = "1.6"; }; From d253b3d875d2bae84afbc141754b286e18e2fb7d Mon Sep 17 00:00:00 2001 From: "William A. Kennington III" Date: Mon, 13 Jul 2015 13:48:59 -0700 Subject: [PATCH 255/259] coreutils: Skip sparse cp test as it fails reliably with btrfs on ubuntu 14.04 --- pkgs/tools/misc/coreutils/default.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/pkgs/tools/misc/coreutils/default.nix b/pkgs/tools/misc/coreutils/default.nix index d72786fa2ff6..c9d8f0ad6029 100644 --- a/pkgs/tools/misc/coreutils/default.nix +++ b/pkgs/tools/misc/coreutils/default.nix @@ -24,6 +24,7 @@ let # The test tends to fail on btrfs and maybe other unusual filesystems. postPatch = stdenv.lib.optionalString (!stdenv.isDarwin) '' sed '2i echo Skipping dd sparse test && exit 0' -i ./tests/dd/sparse.sh + sed '2i echo Skipping cp sparse test && exit 0' -i ./tests/cp/sparse.sh ''; nativeBuildInputs = [ perl ]; From 1c5c4e91d7bccd436182ad71f4a59fcf8caa07c9 Mon Sep 17 00:00:00 2001 From: Vincent Laporte Date: Wed, 15 Jul 2015 19:40:56 +0200 Subject: [PATCH 256/259] pypy: fix build (ZHF) --- pkgs/development/interpreters/pypy/default.nix | 15 ++++++++++++--- pkgs/development/interpreters/pypy/setup-hook.sh | 4 ++-- .../python-modules/setuptools/default.nix | 2 +- 3 files changed, 15 insertions(+), 6 deletions(-) diff --git a/pkgs/development/interpreters/pypy/default.nix b/pkgs/development/interpreters/pypy/default.nix index a453fd3e1a9e..0ff1c4317197 100644 --- a/pkgs/development/interpreters/pypy/default.nix +++ b/pkgs/development/interpreters/pypy/default.nix @@ -49,16 +49,25 @@ let --replace "libraries=['curses']" "libraries=['ncurses']" # tkinter hints - substituteInPlace lib_pypy/_tkinter/tklib.py \ + substituteInPlace lib_pypy/_tkinter/tklib_build.py \ --replace "'/usr/include/tcl'" "'${tk}/include', '${tcl}/include'" \ - --replace "linklibs=['tcl', 'tk']" "linklibs=['${tcl.libPrefix}', '${tk.libPrefix}']" \ + --replace "linklibs = ['tcl' + _ver, 'tk' + _ver]" "linklibs=['${tcl.libPrefix}', '${tk.libPrefix}']" \ --replace "libdirs = []" "libdirs = ['${tk}/lib', '${tcl}/lib']" - sed -i "s@libraries=\['sqlite3'\]\$@libraries=['sqlite3'], include_dirs=['${sqlite}/include'], library_dirs=['${sqlite}/lib']@" lib_pypy/_sqlite3.py + sed -i "s@libraries=\['sqlite3'\]\$@libraries=['sqlite3'], include_dirs=['${sqlite}/include'], library_dirs=['${sqlite}/lib']@" lib_pypy/_sqlite3_build.py ''; setupHook = ./setup-hook.sh; + postBuild = '' + cd ./lib_pypy + ../pypy-c ./_audioop_build.py + ../pypy-c ./_curses_build.py + ../pypy-c ./_sqlite3_build.py + ../pypy-c ./_tkinter/tklib_build.py + cd .. + ''; + doCheck = true; checkPhase = '' export TERMINFO="${ncurses}/share/terminfo/"; diff --git a/pkgs/development/interpreters/pypy/setup-hook.sh b/pkgs/development/interpreters/pypy/setup-hook.sh index 057e619ebc89..c82179d9e87b 100644 --- a/pkgs/development/interpreters/pypy/setup-hook.sh +++ b/pkgs/development/interpreters/pypy/setup-hook.sh @@ -1,12 +1,12 @@ addPythonPath() { - addToSearchPathWithCustomDelimiter : PYTHONPATH $1/lib/pypy2.5/site-packages + addToSearchPathWithCustomDelimiter : PYTHONPATH $1/lib/pypy2.6/site-packages } toPythonPath() { local paths="$1" local result= for i in $paths; do - p="$i/lib/pypy2.5/site-packages" + p="$i/lib/pypy2.6/site-packages" result="${result}${result:+:}$p" done echo $result diff --git a/pkgs/development/python-modules/setuptools/default.nix b/pkgs/development/python-modules/setuptools/default.nix index 01fe46686797..5db34a9d49d0 100644 --- a/pkgs/development/python-modules/setuptools/default.nix +++ b/pkgs/development/python-modules/setuptools/default.nix @@ -19,7 +19,7 @@ stdenv.mkDerivation rec { '' dst=$out/lib/${python.libPrefix}/site-packages mkdir -p $dst - PYTHONPATH="$dst:$PYTHONPATH" + export PYTHONPATH="$dst:$PYTHONPATH" ${python}/bin/${python.executable} setup.py install --prefix=$out --install-lib=$out/lib/${python.libPrefix}/site-packages wrapPythonPrograms ''; From 6281c618cf992c387556e4b00ffb6646a2268264 Mon Sep 17 00:00:00 2001 From: "William A. Kennington III" Date: Wed, 15 Jul 2015 15:30:39 -0700 Subject: [PATCH 257/259] lightdm: Fix location of loaders.cache after 49821433242c4f44cff038a039ead3bc9741fbf1 --- nixos/modules/services/x11/display-managers/lightdm.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nixos/modules/services/x11/display-managers/lightdm.nix b/nixos/modules/services/x11/display-managers/lightdm.nix index d05edabca621..bc8f478c7d83 100644 --- a/nixos/modules/services/x11/display-managers/lightdm.nix +++ b/nixos/modules/services/x11/display-managers/lightdm.nix @@ -33,7 +33,7 @@ let makeWrapper ${pkgs.lightdm_gtk_greeter}/sbin/lightdm-gtk-greeter \ $out/greeter \ --prefix PATH : "${pkgs.glibc}/bin" \ - --set GDK_PIXBUF_MODULE_FILE "$(find ${theme} -name loaders.cache)" \ + --set GDK_PIXBUF_MODULE_FILE "${pkgs.gdk_pixbuf}/lib/gdk-pixbuf-2.0/2.10.0/loaders.cache" \ --set GTK_PATH "${theme}:${pkgs.gtk3}" \ --set GTK_EXE_PREFIX "${theme}" \ --set GTK_DATA_PREFIX "${theme}" \ From cf8309ef34b9ec18bc9aeca9e63f984e1be19b56 Mon Sep 17 00:00:00 2001 From: "William A. Kennington III" Date: Thu, 16 Jul 2015 14:09:08 -0700 Subject: [PATCH 258/259] gcc: 5.2.0-rc-20150707 -> 5.2.0 --- pkgs/development/compilers/gcc/5/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/development/compilers/gcc/5/default.nix b/pkgs/development/compilers/gcc/5/default.nix index 1cb0662da136..5e6acea35dfc 100644 --- a/pkgs/development/compilers/gcc/5/default.nix +++ b/pkgs/development/compilers/gcc/5/default.nix @@ -57,7 +57,7 @@ assert langGo -> langCC; with stdenv.lib; with builtins; -let version = "5.2.0-RC-20150707"; +let version = "5.2.0"; # Whether building a cross-compiler for GNU/Hurd. crossGNU = cross != null && cross.config == "i586-pc-gnu"; @@ -209,8 +209,8 @@ stdenv.mkDerivation ({ builder = ../builder.sh; src = fetchurl { - url = "http://mirrors-usa.go-parts.com/gcc/snapshots/${version}/gcc-${version}.tar.bz2"; - sha256 = "1bjdpybw5gk58n737wzy9c0nna9pdqf9177pmb94icyc8qgy0a7z"; + url = "mirror://gnu/gcc/gcc-${version}/gcc-${version}.tar.bz2"; + sha256 = "1bccp8a106xwz3wkixn65ngxif112vn90qf95m6lzpgpnl25p0sz"; }; inherit patches; From 4efbe9620569c977cab38609de34e00d81c819fd Mon Sep 17 00:00:00 2001 From: Vincent Laporte Date: Fri, 17 Jul 2015 19:00:16 +0200 Subject: [PATCH 259/259] pypy: fix two libraries (ZHF) --- pkgs/development/interpreters/pypy/default.nix | 2 ++ 1 file changed, 2 insertions(+) diff --git a/pkgs/development/interpreters/pypy/default.nix b/pkgs/development/interpreters/pypy/default.nix index 0ff1c4317197..143bab575347 100644 --- a/pkgs/development/interpreters/pypy/default.nix +++ b/pkgs/development/interpreters/pypy/default.nix @@ -63,7 +63,9 @@ let cd ./lib_pypy ../pypy-c ./_audioop_build.py ../pypy-c ./_curses_build.py + ../pypy-c ./_pwdgrp_build.py ../pypy-c ./_sqlite3_build.py + ../pypy-c ./_syslog_build.py ../pypy-c ./_tkinter/tklib_build.py cd .. '';