diff --git a/pkgs/applications/misc/gsimplecal/default.nix b/pkgs/applications/misc/gsimplecal/default.nix index e83e349b21c..158a7fc8fc6 100644 --- a/pkgs/applications/misc/gsimplecal/default.nix +++ b/pkgs/applications/misc/gsimplecal/default.nix @@ -9,6 +9,10 @@ stdenv.mkDerivation rec { sha256 = "1sa05ifjp41xipfspk5n6l3wzpzmp3i45q88l01p4l6k6drsq336"; }; + postPatch = '' + sed -ie '/sys\/sysctl.h/d' src/Unique.cpp + ''; + enableParallelBuilding = true; nativeBuildInputs = [ pkgconfig ]; diff --git a/pkgs/applications/networking/ids/snort/default.nix b/pkgs/applications/networking/ids/snort/default.nix index 49f7bbfd812..03db9eece48 100644 --- a/pkgs/applications/networking/ids/snort/default.nix +++ b/pkgs/applications/networking/ids/snort/default.nix @@ -1,16 +1,20 @@ -{stdenv, pkgconfig, luajit, openssl, fetchurl, libpcap, pcre, libdnet, daq, zlib, flex, bison, makeWrapper}: +{stdenv, pkgconfig, luajit, openssl, fetchurl, libpcap, pcre, libdnet, daq, zlib, flex, bison, makeWrapper +, libtirpc +}: stdenv.mkDerivation rec { - version = "2.9.16"; + version = "2.9.16.1"; pname = "snort"; - + src = fetchurl { name = "${pname}-${version}.tar.gz"; url = "https://snort.org/downloads/archive/snort/${pname}-${version}.tar.gz"; - sha256 = "1mxspk0060f62xp631w589b9ryb21qygn020az3dw2fsy7nxi24n"; + sha256 = "13lzvjli6kbsnkd7lf0rm71l2mnz38pxk76ia9yrjb6clfhlbb73"; }; - - buildInputs = [ makeWrapper pkgconfig luajit openssl libpcap pcre libdnet daq zlib flex bison ]; + + buildInputs = [ makeWrapper pkgconfig luajit openssl libpcap pcre libdnet daq zlib flex bison libtirpc ]; + + NIX_CFLAGS_COMPILE = [ "-I${libtirpc.dev}/include/tirpc" ]; enableParallelBuilding = true; diff --git a/pkgs/applications/networking/tcpkali/default.nix b/pkgs/applications/networking/tcpkali/default.nix index a7142542238..fae3bde72f0 100644 --- a/pkgs/applications/networking/tcpkali/default.nix +++ b/pkgs/applications/networking/tcpkali/default.nix @@ -11,6 +11,9 @@ stdenv.mkDerivation rec { rev = "v${version}"; sha256 = "09ky3cccaphcqc6nhfs00pps99lasmzc2pf5vk0gi8hlqbbhilxf"; }; + postPatch = '' + sed -ie '/sys\/sysctl\.h/d' src/tcpkali_syslimits.c + ''; nativeBuildInputs = [ autoreconfHook ]; buildInputs = [ bison]; meta = { diff --git a/pkgs/applications/science/physics/sherpa/default.nix b/pkgs/applications/science/physics/sherpa/default.nix index a672272e9e6..93e402ec3ce 100644 --- a/pkgs/applications/science/physics/sherpa/default.nix +++ b/pkgs/applications/science/physics/sherpa/default.nix @@ -9,6 +9,10 @@ stdenv.mkDerivation rec { sha256 = "1iwa17s8ipj6a2b8zss5csb1k5y9s5js38syvq932rxcinbyjsl4"; }; + postPatch = '' + sed -ie '/sys\/sysctl.h/d' ATOOLS/Org/Run_Parameter.C + ''; + buildInputs = [ gfortran sqlite lhapdf rivet ]; enableParallelBuilding = true; diff --git a/pkgs/applications/science/physics/xfitter/default.nix b/pkgs/applications/science/physics/xfitter/default.nix index b992851e40a..cbb097350c7 100644 --- a/pkgs/applications/science/physics/xfitter/default.nix +++ b/pkgs/applications/science/physics/xfitter/default.nix @@ -1,4 +1,6 @@ -{ stdenv, fetchurl, apfel, apfelgrid, applgrid, blas, gfortran, lhapdf, lapack, libyaml, lynx, mela, root5, qcdnum, which }: +{ stdenv, fetchurl, apfel, apfelgrid, applgrid, blas, gfortran, lhapdf, lapack, libyaml, lynx +, mela, root5, qcdnum, which, libtirpc +}: stdenv.mkDerivation rec { pname = "xfitter"; @@ -37,7 +39,7 @@ stdenv.mkDerivation rec { nativeBuildInputs = [ gfortran which ]; buildInputs = - [ apfel apfelgrid applgrid blas lhapdf lapack mela root5 qcdnum ] + [ apfel apfelgrid applgrid blas lhapdf lapack mela root5 qcdnum libtirpc ] # pdf2yaml requires fmemopen and open_memstream which are not readily available on Darwin ++ stdenv.lib.optional (!stdenv.isDarwin) libyaml ; @@ -47,6 +49,9 @@ stdenv.mkDerivation rec { hardeningDisable = [ "format" ]; + NIX_CFLAGS_COMPILE = [ "-I${libtirpc.dev}/include/tirpc" ]; + NIX_LDFLAGS = [ "-ltirpc" ]; + meta = with stdenv.lib; { description = "The xFitter project is an open source QCD fit framework ready to extract PDFs and assess the impact of new data"; license = licenses.gpl3; diff --git a/pkgs/applications/video/xawtv/0001-Fix-build-for-glibc-2.32.patch b/pkgs/applications/video/xawtv/0001-Fix-build-for-glibc-2.32.patch new file mode 100644 index 00000000000..227559f1f91 --- /dev/null +++ b/pkgs/applications/video/xawtv/0001-Fix-build-for-glibc-2.32.patch @@ -0,0 +1,63 @@ +From 009c426ab37ef7f8d9d8e30f45096225203d694a Mon Sep 17 00:00:00 2001 +From: Maximilian Bosch +Date: Tue, 11 Aug 2020 11:27:21 +0200 +Subject: [PATCH] Fix build for glibc-2.32 + +The `sys_siglist`-array has been removed. Instead, `strsignal` should be +used. +--- + console/fbtools.c | 2 +- + console/record.c | 2 +- + x11/rootv.c | 4 ++-- + 3 files changed, 4 insertions(+), 4 deletions(-) + +diff --git a/console/fbtools.c b/console/fbtools.c +index 9f876df..07739ff 100644 +--- a/console/fbtools.c ++++ b/console/fbtools.c +@@ -520,6 +520,6 @@ fb_catch_exit_signals(void) + + /* cleanup */ + fb_cleanup(); +- fprintf(stderr,"Oops: %s\n",sys_siglist[termsig]); ++ fprintf(stderr,"Oops: %s\n",strsignal(termsig)); + exit(42); + } +diff --git a/console/record.c b/console/record.c +index 685221b..90f0c85 100644 +--- a/console/record.c ++++ b/console/record.c +@@ -429,7 +429,7 @@ ctrlc(int signal) + { + if (verbose) + fprintf(stderr,"\n%s - exiting\n", +- sys_siglist[signal]); ++ strsignal(signal)); + stop = 1; + } + +diff --git a/x11/rootv.c b/x11/rootv.c +index 60a8406..4bf458b 100644 +--- a/x11/rootv.c ++++ b/x11/rootv.c +@@ -133,7 +133,7 @@ catch_sig(int signal) + termsig = signal; + if (verbose) + fprintf(stderr,"received signal %d [%s]\n", +- termsig,sys_siglist[termsig]); ++ termsig,strsignal(termsig)); + } + + static void usage(FILE *fp) +@@ -422,7 +422,7 @@ main(int argc, char *argv[]) + } + if (verbose && termsig) + fprintf(stderr,"exiting on signal %d [%s]\n", +- termsig,sys_siglist[termsig]); ++ termsig,strsignal(termsig)); + if (do_mute && have_mute) + XvSetPortAttribute(dpy,port,XV_MUTE,1); + XvStopVideo(dpy,port,win); +-- +2.25.4 + diff --git a/pkgs/applications/video/xawtv/default.nix b/pkgs/applications/video/xawtv/default.nix index a82ea044407..ee2f811cb4a 100644 --- a/pkgs/applications/video/xawtv/default.nix +++ b/pkgs/applications/video/xawtv/default.nix @@ -26,6 +26,10 @@ stdenv.mkDerivation rec { sha256 = "055p0wia0xsj073l8mg4ifa6m81dmv6p45qyh99brramq5iylfy5"; }; + patches = [ + ./0001-Fix-build-for-glibc-2.32.patch + ]; + buildInputs = [ ncurses libjpeg diff --git a/pkgs/build-support/libredirect/libredirect.c b/pkgs/build-support/libredirect/libredirect.c index e7f74c736ab..c8d6956a6bf 100644 --- a/pkgs/build-support/libredirect/libredirect.c +++ b/pkgs/build-support/libredirect/libredirect.c @@ -121,6 +121,13 @@ FILE * fopen(const char * path, const char * mode) return fopen_real(rewrite(path, buf), mode); } +FILE * __nss_files_fopen(const char * path) +{ + FILE * (*__nss_files_fopen_real) (const char *) = dlsym(RTLD_NEXT, "__nss_files_fopen"); + char buf[PATH_MAX]; + return __nss_files_fopen_real(rewrite(path, buf)); +} + FILE * fopen64(const char * path, const char * mode) { FILE * (*fopen64_real) (const char *, const char *) = dlsym(RTLD_NEXT, "fopen64"); diff --git a/pkgs/development/compilers/swift/default.nix b/pkgs/development/compilers/swift/default.nix index c4144532c58..2cabacadd75 100644 --- a/pkgs/development/compilers/swift/default.nix +++ b/pkgs/development/compilers/swift/default.nix @@ -245,6 +245,10 @@ stdenv.mkDerivation { --replace usr "$PREFIX" substituteInPlace swift-corelibs-xctest/build_script.py \ --replace usr "$PREFIX" + substituteInPlace swift-corelibs-foundation/CoreFoundation/PlugIn.subproj/CFBundle_InfoPlist.c \ + --replace "if !TARGET_OS_ANDROID" "if TARGET_OS_MAC || TARGET_OS_BSD" + substituteInPlace swift-corelibs-foundation/CoreFoundation/PlugIn.subproj/CFBundle_Resources.c \ + --replace "if !TARGET_OS_ANDROID" "if TARGET_OS_MAC || TARGET_OS_BSD" ''; configurePhase = '' diff --git a/pkgs/development/libraries/ace/default.nix b/pkgs/development/libraries/ace/default.nix index 372cfbeffff..b2a31edd0b6 100644 --- a/pkgs/development/libraries/ace/default.nix +++ b/pkgs/development/libraries/ace/default.nix @@ -2,11 +2,11 @@ stdenv.mkDerivation rec { pname = "ace"; - version = "6.5.7"; + version = "6.5.10"; src = fetchurl { url = "http://download.dre.vanderbilt.edu/previous_versions/ACE-${version}.tar.bz2"; - sha256 = "0hvd7y3hs8r3r7qbllfaqrva3jrx5razcnwlws822k66v4r10cbx"; + sha256 = "1qnq63r9cnaaqb5yrbb7apr7kjl6x31wfclizplri3lj4rwl7plh"; }; enableParallelBuilding = true; @@ -14,6 +14,10 @@ stdenv.mkDerivation rec { nativeBuildInputs = [ pkgconfig libtool ]; buildInputs = [ perl ]; + NIX_CFLAGS_COMPILE = [ + "-Wno-error=format-security" + ]; + patchPhase = ''substituteInPlace ./MPC/prj_install.pl \ --replace /usr/bin/perl "${perl}/bin/perl"''; diff --git a/pkgs/development/libraries/chipmunk/default.nix b/pkgs/development/libraries/chipmunk/default.nix index 017dc1fd9c2..7618476d62a 100644 --- a/pkgs/development/libraries/chipmunk/default.nix +++ b/pkgs/development/libraries/chipmunk/default.nix @@ -1,20 +1,27 @@ { stdenv, fetchurl, cmake, freeglut, libGLU, libGL, glfw2, glew, libX11, xorgproto -, libXi, libXmu +, libXi, libXmu, fetchpatch, libXrandr }: stdenv.mkDerivation rec { pname = "chipmunk"; majorVersion = "7"; - version = "${majorVersion}.0.1"; + version = "${majorVersion}.0.3"; src = fetchurl { url = "https://chipmunk-physics.net/release/Chipmunk-${majorVersion}.x/Chipmunk-${version}.tgz"; - sha256 = "0q4jwv1icz8spcjkp0v3bnygi6hq2zmnsgcxkwm8i2bxfxjb8m7y"; + sha256 = "06j9cfxsyrrnyvl7hsf55ac5mgff939mmijliampphlizyg0r2q4"; }; + patches = [ + (fetchpatch { + url = "https://github.com/slembcke/Chipmunk2D/commit/9a051e6fb970c7afe09ce2d564c163b81df050a8.patch"; + sha256 = "0ps8bjba1k544vcdx5w0qk7gcjq94yfigxf67j50s63yf70k2n70"; + }) + ]; + nativeBuildInputs = [ cmake ]; buildInputs = - [ freeglut libGLU libGL glfw2 glew libX11 xorgproto libXi libXmu ]; + [ freeglut libGLU libGL glfw2 glew libX11 xorgproto libXi libXmu libXrandr ]; postInstall = '' mkdir -p $out/bin diff --git a/pkgs/development/libraries/glibc/2.30-cve-2020-1752.patch b/pkgs/development/libraries/glibc/2.30-cve-2020-1752.patch deleted file mode 100644 index 75d874b93d0..00000000000 --- a/pkgs/development/libraries/glibc/2.30-cve-2020-1752.patch +++ /dev/null @@ -1,62 +0,0 @@ -From: Andreas Schwab -Date: Wed, 19 Feb 2020 16:21:46 +0000 (+0100) -Subject: Fix use-after-free in glob when expanding ~user (bug 25414) -X-Git-Url: https://sourceware.org/git/?p=glibc.git;a=commitdiff_plain;h=da97c6b88eb03fb834e92964b0895c2ac8d61f63;hp=dd34bce38c822b67fcc42e73969bf6699d6874b6 - -Fix use-after-free in glob when expanding ~user (bug 25414) - -The value of `end_name' points into the value of `dirname', thus don't -deallocate the latter before the last use of the former. - -(cherry picked from commit ddc650e9b3dc916eab417ce9f79e67337b05035c) ---- - -diff --git a/posix/glob.c b/posix/glob.c -index e73e35c510..c6cbd0eb43 100644 ---- a/posix/glob.c -+++ b/posix/glob.c -@@ -827,31 +827,32 @@ __glob (const char *pattern, int flags, int (*errfunc) (const char *, int), - { - size_t home_len = strlen (p->pw_dir); - size_t rest_len = end_name == NULL ? 0 : strlen (end_name); -- char *d; -+ char *d, *newp; -+ bool use_alloca = glob_use_alloca (alloca_used, -+ home_len + rest_len + 1); - -- if (__glibc_unlikely (malloc_dirname)) -- free (dirname); -- malloc_dirname = 0; -- -- if (glob_use_alloca (alloca_used, home_len + rest_len + 1)) -- dirname = alloca_account (home_len + rest_len + 1, -- alloca_used); -+ if (use_alloca) -+ newp = alloca_account (home_len + rest_len + 1, alloca_used); - else - { -- dirname = malloc (home_len + rest_len + 1); -- if (dirname == NULL) -+ newp = malloc (home_len + rest_len + 1); -+ if (newp == NULL) - { - scratch_buffer_free (&pwtmpbuf); - retval = GLOB_NOSPACE; - goto out; - } -- malloc_dirname = 1; - } -- d = mempcpy (dirname, p->pw_dir, home_len); -+ d = mempcpy (newp, p->pw_dir, home_len); - if (end_name != NULL) - d = mempcpy (d, end_name, rest_len); - *d = '\0'; - -+ if (__glibc_unlikely (malloc_dirname)) -+ free (dirname); -+ dirname = newp; -+ malloc_dirname = !use_alloca; -+ - dirlen = home_len + rest_len; - dirname_modified = 1; - } diff --git a/pkgs/development/libraries/glibc/2.31-cve-2020-10029.patch b/pkgs/development/libraries/glibc/2.31-cve-2020-10029.patch deleted file mode 100644 index 8334398e891..00000000000 --- a/pkgs/development/libraries/glibc/2.31-cve-2020-10029.patch +++ /dev/null @@ -1,79 +0,0 @@ -diff --git a/sysdeps/ieee754/ldbl-96/Makefile b/sysdeps/ieee754/ldbl-96/Makefile -index 995e90d6da..318628aed6 100644 ---- a/sysdeps/ieee754/ldbl-96/Makefile -+++ b/sysdeps/ieee754/ldbl-96/Makefile -@@ -17,5 +17,6 @@ - # . - - ifeq ($(subdir),math) --tests += test-canonical-ldbl-96 test-totalorderl-ldbl-96 -+tests += test-canonical-ldbl-96 test-totalorderl-ldbl-96 test-sinl-pseudo -+CFLAGS-test-sinl-pseudo.c += -fstack-protector-all - endif -diff --git a/sysdeps/ieee754/ldbl-96/e_rem_pio2l.c b/sysdeps/ieee754/ldbl-96/e_rem_pio2l.c -index 5f742321ae..bcdf20179f 100644 ---- a/sysdeps/ieee754/ldbl-96/e_rem_pio2l.c -+++ b/sysdeps/ieee754/ldbl-96/e_rem_pio2l.c -@@ -210,6 +210,18 @@ __ieee754_rem_pio2l (long double x, long double *y) - return 0; - } - -+ if ((i0 & 0x80000000) == 0) -+ { -+ /* Pseudo-zero and unnormal representations are not valid -+ representations of long double. We need to avoid stack -+ corruption in __kernel_rem_pio2, which expects input in a -+ particular normal form, but those representations do not need -+ to be consistently handled like any particular floating-point -+ value. */ -+ y[1] = y[0] = __builtin_nanl (""); -+ return 0; -+ } -+ - /* Split the 64 bits of the mantissa into three 24-bit integers - stored in a double array. */ - exp = j0 - 23; ---- /dev/null -+++ b/sysdeps/ieee754/ldbl-96/test-sinl-pseudo.c -@@ -0,0 +1,41 @@ -+/* Test sinl for pseudo-zeros and unnormals for ldbl-96 (bug 25487). -+ Copyright (C) 2020 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library; if not, see -+ . */ -+ -+#include -+#include -+#include -+ -+static int -+do_test (void) -+{ -+ for (int i = 0; i < 64; i++) -+ { -+ uint64_t sig = i == 63 ? 0 : 1ULL << i; -+ long double ld; -+ SET_LDOUBLE_WORDS (ld, 0x4141, -+ sig >> 32, sig & 0xffffffffULL); -+ /* The requirement is that no stack overflow occurs when the -+ pseudo-zero or unnormal goes through range reduction. */ -+ volatile long double ldr; -+ ldr = sinl (ld); -+ (void) ldr; -+ } -+ return 0; -+} -+ -+#include diff --git a/pkgs/development/libraries/glibc/common.nix b/pkgs/development/libraries/glibc/common.nix index 0b2f34c7b76..3de840d4e3c 100644 --- a/pkgs/development/libraries/glibc/common.nix +++ b/pkgs/development/libraries/glibc/common.nix @@ -41,9 +41,9 @@ } @ args: let - version = "2.31"; + version = "2.32"; patchSuffix = ""; - sha256 = "05zxkyz9bv3j9h0xyid1rhvh3klhsmrpkf3bcs6frvlgyr2gwilj"; + sha256 = "0di848ibffrnwq7g2dvgqrnn4xqhj3h96csn69q4da51ymafl9qn"; in assert withLinuxHeaders -> linuxHeaders != null; @@ -59,9 +59,6 @@ stdenv.mkDerivation ({ patches = [ - /* Have rpcgen(1) look for cpp(1) in $PATH. */ - ./rpcgen-path.patch - /* Allow NixOS and Nix to handle the locale-archive. */ ./nix-locale-archive.patch @@ -113,8 +110,6 @@ stdenv.mkDerivation ({ }) ./fix-x64-abi.patch - ./2.30-cve-2020-1752.patch - ./2.31-cve-2020-10029.patch ] ++ lib.optional stdenv.hostPlatform.isMusl ./fix-rpc-types-musl-conflicts.patch ++ lib.optional stdenv.buildPlatform.isDarwin ./darwin-cross-build.patch; @@ -146,8 +141,6 @@ stdenv.mkDerivation ({ configureFlags = [ "-C" "--enable-add-ons" - "--enable-obsolete-nsl" - "--enable-obsolete-rpc" "--sysconfdir=/etc" "--enable-stackguard-randomization" (lib.withFeatureAs withLinuxHeaders "headers" "${linuxHeaders}/include") @@ -226,7 +219,7 @@ stdenv.mkDerivation ({ doCheck = false; # fails - meta = { + meta = with lib; { homepage = "https://www.gnu.org/software/libc/"; description = "The GNU C Library"; @@ -239,10 +232,10 @@ stdenv.mkDerivation ({ most systems with the Linux kernel. ''; - license = lib.licenses.lgpl2Plus; + license = licenses.lgpl2Plus; - maintainers = [ lib.maintainers.eelco ]; - platforms = lib.platforms.linux; + maintainers = with maintainers; [ eelco ma27 ]; + platforms = platforms.linux; } // meta; } diff --git a/pkgs/development/libraries/grpc/default.nix b/pkgs/development/libraries/grpc/default.nix index b5d4db8b419..e7d1aa4bf92 100644 --- a/pkgs/development/libraries/grpc/default.nix +++ b/pkgs/development/libraries/grpc/default.nix @@ -1,4 +1,6 @@ -{ stdenv, fetchFromGitHub, fetchpatch, cmake, zlib, c-ares, pkgconfig, openssl, protobuf, gflags, abseil-cpp }: +{ stdenv, fetchFromGitHub, fetchpatch, cmake, zlib, c-ares, pkgconfig, openssl, protobuf +, gflags, abseil-cpp, libnsl +}: stdenv.mkDerivation rec { version = "1.32.0"; # N.B: if you change this, change pythonPackages.grpcio-tools to a matching version too @@ -19,7 +21,7 @@ stdenv.mkDerivation rec { ]; nativeBuildInputs = [ cmake pkgconfig ]; - buildInputs = [ zlib c-ares c-ares.cmake-config openssl protobuf gflags abseil-cpp ]; + buildInputs = [ zlib c-ares c-ares.cmake-config openssl protobuf gflags abseil-cpp libnsl ]; cmakeFlags = [ "-DgRPC_ZLIB_PROVIDER=package" diff --git a/pkgs/development/libraries/irrlicht/default.nix b/pkgs/development/libraries/irrlicht/default.nix index efb4c2022c4..84e7fae6045 100644 --- a/pkgs/development/libraries/irrlicht/default.nix +++ b/pkgs/development/libraries/irrlicht/default.nix @@ -10,6 +10,10 @@ stdenv.mkDerivation rec { src = common.src; + postPatch = '' + sed -ie '/sys\/sysctl.h/d' source/Irrlicht/COSOperator.cpp + ''; + preConfigure = '' cd source/Irrlicht ''; diff --git a/pkgs/development/libraries/libchop/0001-Fix-RPC-compilation-when-using-libtirpc-rather-than-.patch b/pkgs/development/libraries/libchop/0001-Fix-RPC-compilation-when-using-libtirpc-rather-than-.patch new file mode 100644 index 00000000000..f5a016f63ac --- /dev/null +++ b/pkgs/development/libraries/libchop/0001-Fix-RPC-compilation-when-using-libtirpc-rather-than-.patch @@ -0,0 +1,41 @@ +From 86fd3be1d31d2e7c09603aa3a8966537ac01bb07 Mon Sep 17 00:00:00 2001 +From: Maximilian Bosch +Date: Tue, 11 Aug 2020 20:30:16 +0200 +Subject: [PATCH] Fix RPC compilation when using libtirpc rather than glibc + +--- + src/block-server.c | 3 +++ + utils/chop-block-server.c | 3 +++ + 2 files changed, 6 insertions(+) + +diff --git a/src/block-server.c b/src/block-server.c +index 3f97417..29b299e 100644 +--- a/src/block-server.c ++++ b/src/block-server.c +@@ -18,6 +18,9 @@ + + /* Server-side stubs. */ + ++#include ++#include ++#include + #include + #include + +diff --git a/utils/chop-block-server.c b/utils/chop-block-server.c +index a2076c0..9462f5d 100644 +--- a/utils/chop-block-server.c ++++ b/utils/chop-block-server.c +@@ -19,6 +19,9 @@ + store, e.g. a GDBM block store, and serves it remotely. A lot of code is + borrowed from `chop-archiver.c'. */ + ++#include ++#include ++#include + #include + + #include +-- +2.25.4 + diff --git a/pkgs/development/libraries/libchop/default.nix b/pkgs/development/libraries/libchop/default.nix index 190f122ecfa..d2040b72311 100644 --- a/pkgs/development/libraries/libchop/default.nix +++ b/pkgs/development/libraries/libchop/default.nix @@ -1,6 +1,6 @@ { fetchurl, stdenv, zlib, bzip2, libgcrypt , gdbm, gperf, tdb, gnutls, db, libuuid -, lzo, pkgconfig, guile +, lzo, pkgconfig, guile, rpcsvc-proto, libtirpc }: stdenv.mkDerivation rec { @@ -11,16 +11,19 @@ stdenv.mkDerivation rec { sha256 = "0fpdyxww41ba52d98blvnf543xvirq1v9xz1i3x1gm9lzlzpmc2g"; }; - patches = [ ./gets-undeclared.patch ./size_t.patch ]; + patches = [ ./gets-undeclared.patch ./size_t.patch ./0001-Fix-RPC-compilation-when-using-libtirpc-rather-than-.patch ]; - nativeBuildInputs = [ pkgconfig gperf ]; + nativeBuildInputs = [ pkgconfig gperf rpcsvc-proto ]; + + NIX_CFLAGS_COMPILE = [ "-I${libtirpc.dev}/include/tirpc" ]; + NIX_LDFLAGS = [ "-ltirpc" ]; buildInputs = [ zlib bzip2 lzo libgcrypt gdbm db tdb gnutls libuuid - guile + guile libtirpc ]; doCheck = false; diff --git a/pkgs/development/libraries/libdap/default.nix b/pkgs/development/libraries/libdap/default.nix index bc05e774cd8..a643c25f0bf 100644 --- a/pkgs/development/libraries/libdap/default.nix +++ b/pkgs/development/libraries/libdap/default.nix @@ -18,5 +18,6 @@ stdenv.mkDerivation rec { license = licenses.lgpl2; maintainers = [ maintainers.bzizou ]; platforms = platforms.linux; + broken = true; }; } diff --git a/pkgs/development/libraries/libguestfs/default.nix b/pkgs/development/libraries/libguestfs/default.nix index 234e1164893..7e8ec956bb2 100644 --- a/pkgs/development/libraries/libguestfs/default.nix +++ b/pkgs/development/libraries/libguestfs/default.nix @@ -3,6 +3,7 @@ , acl, libcap, libcap_ng, libconfig, systemd, fuse, yajl, libvirt, hivex, db , gmp, readline, file, numactl, xen, libapparmor, jansson , getopt, perlPackages, ocamlPackages +, libtirpc , appliance ? null , javaSupport ? false, jdk ? null }: @@ -24,6 +25,7 @@ stdenv.mkDerivation rec { cdrkit flex bison qemu pcre augeas libxml2 acl libcap libcap_ng libconfig systemd fuse yajl libvirt gmp readline file hivex db numactl xen libapparmor getopt perlPackages.ModuleBuild + libtirpc ] ++ (with perlPackages; [ perl libintl_perl GetoptLong SysVirt ]) ++ (with ocamlPackages; [ ocaml findlib ocamlbuild ocaml_libvirt gettext-stub ounit ]) ++ stdenv.lib.optional javaSupport jdk; diff --git a/pkgs/development/libraries/libvirt/0001-Fix-build-with-libtirpc.patch b/pkgs/development/libraries/libvirt/0001-Fix-build-with-libtirpc.patch new file mode 100644 index 00000000000..2039126e889 --- /dev/null +++ b/pkgs/development/libraries/libvirt/0001-Fix-build-with-libtirpc.patch @@ -0,0 +1,106 @@ +From a9ce1217742d542a5ae4b154b6f55342aace374e Mon Sep 17 00:00:00 2001 +From: Maximilian Bosch +Date: Mon, 17 Aug 2020 19:35:44 +0200 +Subject: [PATCH] Fix build with libtirpc + +Derived from https://github.com/libvirt/libvirt/commit/d7147b3797380de2d159ce6324536f3e1f2d97e3.patch +--- + libvirt.spec.in | 4 +++- + src/Makefile.am | 2 +- + src/admin/Makefile.inc.am | 1 + + src/locking/Makefile.inc.am | 2 ++ + src/logging/Makefile.inc.am | 1 + + src/remote/Makefile.inc.am | 1 + + 6 files changed, 9 insertions(+), 2 deletions(-) + +diff --git a/libvirt.spec.in b/libvirt.spec.in +index 6abf97d..71fc4e6 100644 +--- a/libvirt.spec.in ++++ b/libvirt.spec.in +@@ -405,11 +405,13 @@ BuildRequires: wireshark-devel >= 2.4.0 + BuildRequires: libssh-devel >= 0.7.0 + %endif + ++# On RHEL-7 rpcgen is still part of glibc-common package + %if 0%{?fedora} || 0%{?rhel} > 7 + BuildRequires: rpcgen +-BuildRequires: libtirpc-devel + %endif + ++BuildRequires: libtirpc-devel ++ + %if %{with_firewalld_zone} + BuildRequires: firewalld-filesystem + %endif +diff --git a/src/Makefile.am b/src/Makefile.am +index 12dd6b8..8d0d4e1 100644 +--- a/src/Makefile.am ++++ b/src/Makefile.am +@@ -439,7 +439,7 @@ libvirt_la_LDFLAGS += -Wl,-flat_namespace + endif WITH_MACOS + libvirt_la_LDFLAGS += $(NULL) + libvirt_la_LIBADD += \ +- $(DRIVER_MODULES_LIBS) ++ $(DRIVER_MODULES_LIBS) $(XDR_LIBS) + libvirt_la_CFLAGS = -DIN_LIBVIRT $(AM_CFLAGS) + # Because we specify libvirt_la_DEPENDENCIES for $(LIBVIRT_SYMBOL_FILE), we + # lose automake's automatic dependencies on an appropriate subset of +diff --git a/src/admin/Makefile.inc.am b/src/admin/Makefile.inc.am +index 0a9717a..8556a3b 100644 +--- a/src/admin/Makefile.inc.am ++++ b/src/admin/Makefile.inc.am +@@ -72,6 +72,7 @@ libvirt_admin_la_LDFLAGS = \ + + libvirt_admin_la_LIBADD = \ + libvirt.la \ ++ $(XDR_LIBS) \ + $(CAPNG_LIBS) \ + $(YAJL_LIBS) \ + $(DEVMAPPER_LIBS) \ +diff --git a/src/locking/Makefile.inc.am b/src/locking/Makefile.inc.am +index d1bf49c..ab01d8e 100644 +--- a/src/locking/Makefile.inc.am ++++ b/src/locking/Makefile.inc.am +@@ -120,6 +120,7 @@ lockd_la_LDFLAGS = $(AM_LDFLAGS_MOD_NOUNDEF) + lockd_la_LIBADD = \ + libvirt.la \ + $(GLIB_LIBS) \ ++ $(XDR_LIBS) \ + $(NULL) + augeas_DATA += locking/libvirt_lockd.aug + if WITH_DTRACE_PROBES +@@ -161,6 +162,7 @@ virtlockd_CFLAGS = \ + virtlockd_LDFLAGS = \ + $(AM_LDFLAGS) \ + $(PIE_LDFLAGS) \ ++ $(XDR_LIBS) \ + $(NO_UNDEFINED_LDFLAGS) \ + $(NULL) + virtlockd_LDADD = \ +diff --git a/src/logging/Makefile.inc.am b/src/logging/Makefile.inc.am +index dc09cfe..4be3376 100644 +--- a/src/logging/Makefile.inc.am ++++ b/src/logging/Makefile.inc.am +@@ -99,6 +99,7 @@ virtlogd_CFLAGS = \ + virtlogd_LDFLAGS = \ + $(AM_LDFLAGS) \ + $(PIE_LDFLAGS) \ ++ $(XDR_LIBS) \ + $(NO_UNDEFINED_LDFLAGS) \ + $(NULL) + virtlogd_LDADD = \ +diff --git a/src/remote/Makefile.inc.am b/src/remote/Makefile.inc.am +index 1b1be83..8a40c96 100644 +--- a/src/remote/Makefile.inc.am ++++ b/src/remote/Makefile.inc.am +@@ -69,6 +69,7 @@ REMOTE_DAEMON_LD_ADD = \ + $(LIBXML_LIBS) \ + $(GNUTLS_LIBS) \ + $(SASL_LIBS) \ ++ $(XDR_LIBS) \ + $(DBUS_LIBS) \ + $(LIBNL_LIBS) \ + $(NULL) +-- +2.25.4 + diff --git a/pkgs/development/libraries/libvirt/5.9.0.nix b/pkgs/development/libraries/libvirt/5.9.0.nix index 514cf24f66e..722c4a53b8f 100644 --- a/pkgs/development/libraries/libvirt/5.9.0.nix +++ b/pkgs/development/libraries/libvirt/5.9.0.nix @@ -4,7 +4,7 @@ , iproute, iptables, readline, lvm2, utillinux, systemd, libpciaccess, gettext , libtasn1, ebtables, libgcrypt, yajl, pmutils, libcap_ng, libapparmor , dnsmasq, libnl, libpcap, libxslt, xhtml1, numad, numactl, perlPackages -, curl, libiconv, gmp, zfs, parted, bridge-utils, dmidecode, glib +, curl, libiconv, gmp, zfs, parted, bridge-utils, dmidecode, glib, rpcsvc-proto, libtirpc , enableXen ? false, xen ? null , enableIscsi ? false, openiscsi , enableCeph ? false, ceph @@ -33,10 +33,10 @@ in stdenv.mkDerivation rec { fetchSubmodules = true; }; - nativeBuildInputs = [ makeWrapper pkgconfig ]; + nativeBuildInputs = [ makeWrapper pkgconfig rpcsvc-proto ]; buildInputs = [ libxml2 gnutls perl python2 readline gettext libtasn1 libgcrypt yajl - libxslt xhtml1 perlPackages.XMLXPath curl libpcap glib + libxslt xhtml1 perlPackages.XMLXPath curl libpcap glib libtirpc ] ++ optionals (!buildFromTarball) [ libtool autoconf automake ] ++ optionals stdenv.isLinux [ @@ -76,6 +76,7 @@ in stdenv.mkDerivation rec { "QEMU_BRIDGE_HELPER=/run/wrappers/bin/qemu-bridge-helper" "QEMU_PR_HELPER=/run/libvirt/nix-helpers/qemu-pr-helper" "EBTABLES_PATH=${ebtables}/bin/ebtables-legacy" + "CFLAGS=-I${libtirpc.dev}/include/tirpc" "--with-attr" "--with-apparmor" "--with-secdriver-apparmor" diff --git a/pkgs/development/libraries/libvirt/default.nix b/pkgs/development/libraries/libvirt/default.nix index 27f345a9c83..d8501a5b080 100644 --- a/pkgs/development/libraries/libvirt/default.nix +++ b/pkgs/development/libraries/libvirt/default.nix @@ -4,7 +4,7 @@ , iproute, iptables, readline, lvm2, utillinux, systemd, libpciaccess, gettext , libtasn1, ebtables, libgcrypt, yajl, pmutils, libcap_ng, libapparmor , dnsmasq, libnl, libpcap, libxslt, xhtml1, numad, numactl, perlPackages -, curl, libiconv, gmp, zfs, parted, bridge-utils, dmidecode, dbus +, curl, libiconv, gmp, zfs, parted, bridge-utils, dmidecode, dbus, libtirpc, rpcsvc-proto , enableXen ? false, xen ? null , enableIscsi ? false, openiscsi , enableCeph ? false, ceph @@ -33,10 +33,15 @@ in stdenv.mkDerivation rec { fetchSubmodules = true; }; - nativeBuildInputs = [ makeWrapper pkgconfig docutils ] ++ optionals (!buildFromTarball) [ autoreconfHook ]; + patches = [ + ./0001-Fix-build-with-libtirpc.patch + ]; + + nativeBuildInputs = [ makeWrapper pkgconfig docutils rpcsvc-proto ] + ++ optionals (!buildFromTarball) [ autoreconfHook ]; buildInputs = [ libxml2 gnutls perl python2 readline gettext libtasn1 libgcrypt yajl - libxslt xhtml1 perlPackages.XMLXPath curl libpcap glib dbus + libxslt xhtml1 perlPackages.XMLXPath curl libpcap glib dbus libtirpc ] ++ optionals stdenv.isLinux [ libpciaccess lvm2 utillinux systemd libnl numad zfs libapparmor libcap_ng numactl attr parted @@ -80,6 +85,7 @@ in stdenv.mkDerivation rec { "QEMU_BRIDGE_HELPER=/run/wrappers/bin/qemu-bridge-helper" "QEMU_PR_HELPER=/run/libvirt/nix-helpers/qemu-pr-helper" "EBTABLES_PATH=${ebtables}/bin/ebtables-legacy" + "CFLAGS=-I${libtirpc.dev}/include/tirpc" "--with-attr" "--with-apparmor" "--with-secdriver-apparmor" diff --git a/pkgs/development/libraries/ntirpc/default.nix b/pkgs/development/libraries/ntirpc/default.nix index 40f8d55462d..6654cc563d1 100644 --- a/pkgs/development/libraries/ntirpc/default.nix +++ b/pkgs/development/libraries/ntirpc/default.nix @@ -1,5 +1,5 @@ { stdenv, fetchFromGitHub, cmake -, krb5, liburcu , libtirpc +, krb5, liburcu , libtirpc, libnsl } : stdenv.mkDerivation rec { @@ -18,7 +18,7 @@ stdenv.mkDerivation rec { ''; nativeBuildInputs = [ cmake ]; - buildInputs = [ krb5 liburcu ]; + buildInputs = [ krb5 liburcu libnsl ]; postInstall = '' mkdir -p $out/etc diff --git a/pkgs/development/libraries/nvidia-texture-tools/default.nix b/pkgs/development/libraries/nvidia-texture-tools/default.nix index f9b745e882f..a2bdbc798eb 100644 --- a/pkgs/development/libraries/nvidia-texture-tools/default.nix +++ b/pkgs/development/libraries/nvidia-texture-tools/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchFromGitHub, cmake }: +{ stdenv, fetchFromGitHub, cmake, fetchpatch }: stdenv.mkDerivation rec { pname = "nvidia-texture-tools"; @@ -11,6 +11,13 @@ stdenv.mkDerivation rec { sha256 = "1qzyr3ib5dpxyq1y33lq02qv4cww075sm9bm4f651d34q5x38sk3"; }; + patches = [ + (fetchpatch { + url = "https://github.com/castano/nvidia-texture-tools/commit/6474f2593428d89ec152da2502aa136ababe66ca.patch"; + sha256 = "0akbkvm55hiv58jx71h9hj173rbnqlb5a430y9azjiix7zga42vd"; + }) + ]; + nativeBuildInputs = [ cmake ]; outputs = [ "out" "dev" "lib" ]; diff --git a/pkgs/development/libraries/opencv/default.nix b/pkgs/development/libraries/opencv/default.nix index d71c210fb6f..0749ec9e7f3 100644 --- a/pkgs/development/libraries/opencv/default.nix +++ b/pkgs/development/libraries/opencv/default.nix @@ -87,5 +87,6 @@ stdenv.mkDerivation rec { license = licenses.bsd3; maintainers = with maintainers; [ ]; platforms = platforms.linux; + broken = true; }; } diff --git a/pkgs/development/libraries/physics/cernlib/0001-Use-strerror-rather-than-sys_errlist-to-fix-compilat.patch b/pkgs/development/libraries/physics/cernlib/0001-Use-strerror-rather-than-sys_errlist-to-fix-compilat.patch new file mode 100644 index 00000000000..bc8c77f913c --- /dev/null +++ b/pkgs/development/libraries/physics/cernlib/0001-Use-strerror-rather-than-sys_errlist-to-fix-compilat.patch @@ -0,0 +1,94 @@ +From a69607c511b6da94cde477283b129cbc9cfdd5a3 Mon Sep 17 00:00:00 2001 +From: Maximilian Bosch +Date: Tue, 11 Aug 2020 12:32:06 +0200 +Subject: [PATCH] Use `strerror` rather than `sys_errlist` to fix compilation + w/glibc-2.32 + +To quote the release-notes[1]: + + All programs should use + strerror or strerror_r instead. + +[1] https://sourceware.org/pipermail/libc-announce/2020/000029.html +--- + 2006/src/packlib/cspack/sysreq/serror.c | 10 +--------- + 2006/src/packlib/cspack/sysreq/socket.c | 2 +- + 2006/src/packlib/kernlib/kernbit/z268/systems.c | 4 ++-- + 2006/src/pawlib/paw/piafs/piafc.c | 5 +---- + 4 files changed, 5 insertions(+), 16 deletions(-) + +diff --git a/2006/src/packlib/cspack/sysreq/serror.c b/2006/src/packlib/cspack/sysreq/serror.c +index 3667c42a..c560e499 100644 +--- a/2006/src/packlib/cspack/sysreq/serror.c ++++ b/2006/src/packlib/cspack/sysreq/serror.c +@@ -176,15 +176,7 @@ int n; + } + else { + #if !defined(vms) +- if ((n>0) && (n' -i src/xdr_sizeof.c - '' + stdenv.lib.optionalString stdenv.hostPlatform.isMusl '' - substituteInPlace tirpc/rpc/types.h \ - --replace '#if defined __APPLE_CC__ || defined __FreeBSD__' \ - '#if defined __APPLE_CC__ || defined __FreeBSD__ || !defined __GLIBC__' ''; KRB5_CONFIG = "${libkrb5.dev}/bin/krb5-config"; diff --git a/pkgs/development/tools/misc/dbench/default.nix b/pkgs/development/tools/misc/dbench/default.nix index ad46534fcfa..49fb1efbd4a 100644 --- a/pkgs/development/tools/misc/dbench/default.nix +++ b/pkgs/development/tools/misc/dbench/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchgit, autoconf, popt, zlib }: +{ stdenv, fetchgit, autoconf, popt, zlib, rpcsvc-proto, libtirpc }: stdenv.mkDerivation { name = "dbench-2013-01-01"; @@ -9,7 +9,10 @@ stdenv.mkDerivation { sha256 = "16lcbwmmx8z5i73k3dnf54yffrpx7ql3y9k3cpkss9dcyxb1p83i"; }; - buildInputs = [ autoconf popt zlib ]; + nativeBuildInputs = [ autoconf rpcsvc-proto ]; + buildInputs = [ popt zlib libtirpc ]; + NIX_CFLAGS_COMPILE = [ "-I${libtirpc.dev}/include/tirpc" ]; + NIX_LDFLAGS = [ "-ltirpc" ]; patches = [ # patch has been also sent upstream and might be included in future versions diff --git a/pkgs/os-specific/linux/conntrack-tools/default.nix b/pkgs/os-specific/linux/conntrack-tools/default.nix index 80785015e76..43306e51166 100644 --- a/pkgs/os-specific/linux/conntrack-tools/default.nix +++ b/pkgs/os-specific/linux/conntrack-tools/default.nix @@ -1,6 +1,8 @@ { fetchurl, stdenv, flex, bison, pkgconfig, libmnl, libnfnetlink , libnetfilter_conntrack, libnetfilter_queue, libnetfilter_cttimeout -, libnetfilter_cthelper, systemd }: +, libnetfilter_cthelper, systemd +, libtirpc +}: stdenv.mkDerivation rec { pname = "conntrack-tools"; @@ -13,7 +15,7 @@ stdenv.mkDerivation rec { buildInputs = [ libmnl libnfnetlink libnetfilter_conntrack libnetfilter_queue - libnetfilter_cttimeout libnetfilter_cthelper systemd + libnetfilter_cttimeout libnetfilter_cthelper systemd libtirpc ]; nativeBuildInputs = [ flex bison pkgconfig ]; diff --git a/pkgs/os-specific/linux/nfs-utils/default.nix b/pkgs/os-specific/linux/nfs-utils/default.nix index 719ded4d70f..81ec7e5a661 100644 --- a/pkgs/os-specific/linux/nfs-utils/default.nix +++ b/pkgs/os-specific/linux/nfs-utils/default.nix @@ -1,6 +1,6 @@ { stdenv, fetchurl, fetchpatch, lib, pkgconfig, utillinux, libcap, libtirpc, libevent , sqlite, kerberos, kmod, libuuid, keyutils, lvm2, systemd, coreutils, tcp_wrappers -, python3, buildPackages, nixosTests +, python3, buildPackages, nixosTests, rpcsvc-proto , enablePython ? true }: @@ -10,18 +10,18 @@ in stdenv.mkDerivation rec { pname = "nfs-utils"; - version = "2.4.1"; + version = "2.5.1"; src = fetchurl { url = "https://kernel.org/pub/linux/utils/nfs-utils/${version}/${pname}-${version}.tar.xz"; - sha256 = "0dkp11a7i01c378ri68bf6k56z27kz8zzvpqm7mip6s7jkd4l9w5"; + sha256 = "1i1h3n2m35q9ixs1i2qf1rpjp10cipa3c25zdf1xj1vaw5q8270g"; }; # libnfsidmap is built together with nfs-utils from the same source, # put it in the "lib" output, and the headers in "dev" outputs = [ "out" "dev" "lib" "man" ]; - nativeBuildInputs = [ pkgconfig buildPackages.stdenv.cc ]; + nativeBuildInputs = [ pkgconfig buildPackages.stdenv.cc rpcsvc-proto ]; buildInputs = [ libtirpc libcap libevent sqlite lvm2 @@ -45,8 +45,8 @@ stdenv.mkDerivation rec { "--with-systemd=${placeholder "out"}/etc/systemd/system" "--enable-libmount-mount" "--with-pluginpath=${placeholder "lib"}/lib/libnfsidmap" # this installs libnfsidmap - ] - ++ lib.optional (stdenv ? glibc) "--with-rpcgen=${stdenv.glibc.bin}/bin/rpcgen"; + "--with-rpcgen=${rpcsvc-proto}/bin/rpcgen" + ]; patches = lib.optionals stdenv.hostPlatform.isMusl [ (fetchpatch { diff --git a/pkgs/os-specific/linux/zfs/default.nix b/pkgs/os-specific/linux/zfs/default.nix index 27e26b13a53..14854396c8a 100644 --- a/pkgs/os-specific/linux/zfs/default.nix +++ b/pkgs/os-specific/linux/zfs/default.nix @@ -9,6 +9,7 @@ , nfs-utils , gawk, gnugrep, gnused, systemd , smartmontools, sysstat, sudo +, pkgconfig # Kernel dependencies , kernel ? null @@ -94,17 +95,14 @@ let substituteInPlace ./cmd/vdev_id/vdev_id \ --replace "PATH=/bin:/sbin:/usr/bin:/usr/sbin" \ "PATH=${makeBinPath [ coreutils gawk gnused gnugrep systemd ]}" - '' + optionalString stdenv.hostPlatform.isMusl '' - substituteInPlace config/user-libtirpc.m4 \ - --replace /usr/include/tirpc ${libtirpc}/include/tirpc ''; nativeBuildInputs = [ autoreconfHook nukeReferences ] - ++ optionals buildKernel (kernel.moduleBuildDependencies ++ [ perl ]); - buildInputs = optionals buildUser [ zlib libuuid attr ] + ++ optionals buildKernel (kernel.moduleBuildDependencies ++ [ perl ]) + ++ optional buildUser pkgconfig; + buildInputs = optionals buildUser [ zlib libuuid attr libtirpc ] ++ optional buildUser openssl - ++ optional (buildUser && enablePython) python3 - ++ optional stdenv.hostPlatform.isMusl libtirpc; + ++ optional (buildUser && enablePython) python3; # for zdb to get the rpath to libgcc_s, needed for pthread_cancel to work NIX_CFLAGS_LINK = "-lgcc_s"; @@ -113,6 +111,7 @@ let configureFlags = [ "--with-config=${configFile}" + "--with-tirpc=1" (withFeatureAs (buildUser && enablePython) "python" python3.interpreter) ] ++ optionals buildUser [ "--with-dracutdir=$(out)/lib/dracut" diff --git a/pkgs/servers/memcached/default.nix b/pkgs/servers/memcached/default.nix index 58276ff8632..b6c6031f150 100644 --- a/pkgs/servers/memcached/default.nix +++ b/pkgs/servers/memcached/default.nix @@ -17,7 +17,8 @@ stdenv.mkDerivation rec { hardeningEnable = [ "pie" ]; - NIX_CFLAGS_COMPILE = stdenv.lib.optionalString stdenv.isDarwin "-Wno-error"; + NIX_CFLAGS_COMPILE = [ "-Wno-error=deprecated-declarations" ] + ++ stdenv.lib.optional stdenv.isDarwin "-Wno-error"; meta = with stdenv.lib; { description = "A distributed memory object caching system"; diff --git a/pkgs/servers/samba/4.x.nix b/pkgs/servers/samba/4.x.nix index 7ed1a72de0e..9c06dec2f4b 100644 --- a/pkgs/servers/samba/4.x.nix +++ b/pkgs/servers/samba/4.x.nix @@ -24,6 +24,7 @@ , libtasn1 , tdb , cmocka +, rpcsvc-proto , nixosTests , enableLDAP ? false, openldap @@ -68,6 +69,7 @@ stdenv.mkDerivation rec { docbook_xsl docbook_xml_dtd_45 cmocka + rpcsvc-proto ] ++ optionals stdenv.isDarwin [ rpcgen fixDarwinDylibNames diff --git a/pkgs/servers/sql/mysql/5.7.x.nix b/pkgs/servers/sql/mysql/5.7.x.nix index 6636c099e83..8b489816a50 100644 --- a/pkgs/servers/sql/mysql/5.7.x.nix +++ b/pkgs/servers/sql/mysql/5.7.x.nix @@ -1,6 +1,8 @@ { stdenv, fetchurl, cmake, bison, pkgconfig , boost, libedit, libevent, lz4, ncurses, openssl, protobuf, readline, zlib, perl -, cctools, CoreServices, developer_cmds }: +, cctools, CoreServices, developer_cmds +, libtirpc, rpcsvc-proto +}: # Note: zlib is not required; MySQL can use an internal zlib. @@ -19,9 +21,9 @@ self = stdenv.mkDerivation rec { export PATH=$PATH:$TMPDIR ''; - nativeBuildInputs = [ cmake bison pkgconfig ]; + nativeBuildInputs = [ cmake bison pkgconfig rpcsvc-proto ]; - buildInputs = [ boost libedit libevent lz4 ncurses openssl protobuf readline zlib ] + buildInputs = [ boost libedit libevent lz4 ncurses openssl protobuf readline zlib libtirpc ] ++ stdenv.lib.optionals stdenv.isDarwin [ perl cctools CoreServices developer_cmds ]; outputs = [ "out" "static" ]; diff --git a/pkgs/servers/sql/mysql/8.0.x.nix b/pkgs/servers/sql/mysql/8.0.x.nix index 3c1d1f6645c..299302b27de 100644 --- a/pkgs/servers/sql/mysql/8.0.x.nix +++ b/pkgs/servers/sql/mysql/8.0.x.nix @@ -1,6 +1,6 @@ { lib, stdenv, fetchurl, bison, cmake, pkgconfig , boost, icu, libedit, libevent, lz4, ncurses, openssl, protobuf, re2, readline, zlib -, numactl, perl, cctools, CoreServices, developer_cmds +, numactl, perl, cctools, CoreServices, developer_cmds, libtirpc, rpcsvc-proto }: let @@ -18,12 +18,12 @@ self = stdenv.mkDerivation rec { ./libutils.patch ]; - nativeBuildInputs = [ bison cmake pkgconfig ]; + nativeBuildInputs = [ bison cmake pkgconfig rpcsvc-proto ]; buildInputs = [ boost icu libedit libevent lz4 ncurses openssl protobuf re2 readline zlib ] ++ lib.optionals stdenv.isLinux [ - numactl + numactl libtirpc ] ++ lib.optionals stdenv.isDarwin [ cctools CoreServices developer_cmds ]; diff --git a/pkgs/servers/tacacsplus/default.nix b/pkgs/servers/tacacsplus/default.nix index 5010838cbe0..296b79f0a44 100644 --- a/pkgs/servers/tacacsplus/default.nix +++ b/pkgs/servers/tacacsplus/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchurl, tcp_wrappers, flex, bison, perl }: +{ stdenv, fetchurl, tcp_wrappers, flex, bison, perl, libnsl }: stdenv.mkDerivation rec { pname = "tacacsplus"; @@ -10,7 +10,7 @@ stdenv.mkDerivation rec { }; nativeBuildInputs = [ flex bison ]; - buildInputs = [ tcp_wrappers perl ]; + buildInputs = [ tcp_wrappers perl libnsl ]; meta = with stdenv.lib; { description = "A protocol for authentication, authorization and accounting (AAA) services for routers and network devices"; diff --git a/pkgs/servers/xinetd/default.nix b/pkgs/servers/xinetd/default.nix index ebe927a85d8..0ecd65ce6fa 100644 --- a/pkgs/servers/xinetd/default.nix +++ b/pkgs/servers/xinetd/default.nix @@ -1,4 +1,4 @@ -{ fetchurl, fetchpatch, stdenv }: +{ fetchurl, fetchpatch, stdenv, libtirpc }: stdenv.mkDerivation rec { name = "xinetd-2.3.15"; @@ -16,6 +16,11 @@ stdenv.mkDerivation rec { }) ]; + buildInputs = [ libtirpc ]; + + NIX_CFLAGS_COMPILE = [ "-I${libtirpc.dev}/include/tirpc" ]; + NIX_LDFLAGS = [ "-ltirpc" ]; + meta = { description = "Secure replacement for inetd"; platforms = stdenv.lib.platforms.linux; diff --git a/pkgs/tools/X11/nx-libs/default.nix b/pkgs/tools/X11/nx-libs/default.nix index ceb2534e07a..c08a2fd2185 100644 --- a/pkgs/tools/X11/nx-libs/default.nix +++ b/pkgs/tools/X11/nx-libs/default.nix @@ -1,5 +1,7 @@ -{ stdenv, autoconf, automake, fetchFromGitHub, libgcc, libjpeg_turbo, - libpng, libtool, libxml2, pkgconfig, which, xorg }: +{ stdenv, autoconf, automake, fetchFromGitHub, libgcc, libjpeg_turbo +, libpng, libtool, libxml2, pkgconfig, which, xorg +, libtirpc +}: stdenv.mkDerivation rec { pname = "nx-libs"; version = "3.5.99.24"; @@ -15,7 +17,11 @@ stdenv.mkDerivation rec { buildInputs = [ libgcc libjpeg_turbo libpng libxml2 xorg.fontutil xorg.libXcomposite xorg.libXdamage xorg.libXdmcp xorg.libXext xorg.libXfont2 xorg.libXinerama xorg.libXpm xorg.libXrandr xorg.libXtst xorg.pixman - xorg.xkbcomp xorg.xkeyboardconfig ]; + xorg.xkbcomp xorg.xkeyboardconfig libtirpc + ]; + + NIX_CFLAGS_COMPILE = [ "-I${libtirpc.dev}/include/tirpc" ]; + NIX_LDFLAGS = [ "-ltirpc" ]; enableParallelBuilding = true; diff --git a/pkgs/tools/filesystems/glusterfs/default.nix b/pkgs/tools/filesystems/glusterfs/default.nix index 44880638e65..e7028ec1249 100644 --- a/pkgs/tools/filesystems/glusterfs/default.nix +++ b/pkgs/tools/filesystems/glusterfs/default.nix @@ -2,7 +2,7 @@ autoconf, automake, libtool, pkgconfig, zlib, libaio, libxml2, acl, sqlite, liburcu, attr, makeWrapper, coreutils, gnused, gnugrep, which, openssh, gawk, findutils, utillinux, lvm2, btrfs-progs, e2fsprogs, xfsprogs, systemd, - rsync, glibc + rsync, glibc, rpcsvc-proto, libtirpc }: let s = @@ -24,7 +24,7 @@ let buildInputs = [ fuse bison flex_2_5_35 openssl ncurses readline autoconf automake libtool pkgconfig zlib libaio libxml2 - acl sqlite liburcu attr makeWrapper utillinux + acl sqlite liburcu attr makeWrapper utillinux libtirpc (python3.withPackages (pkgs: [ pkgs.flask pkgs.prettytable @@ -100,6 +100,8 @@ stdenv.mkDerivation ''--localstatedir=/var'' ]; + nativeBuildInputs = [ rpcsvc-proto ]; + makeFlags = [ "DESTDIR=$(out)" ]; enableParallelBuilding = true; diff --git a/pkgs/tools/filesystems/hfsprogs/default.nix b/pkgs/tools/filesystems/hfsprogs/default.nix index 2032ca1c1e7..e08835fc35d 100644 --- a/pkgs/tools/filesystems/hfsprogs/default.nix +++ b/pkgs/tools/filesystems/hfsprogs/default.nix @@ -15,6 +15,10 @@ stdenv.mkDerivation { }) ]; + postPatch = '' + sed -ie '/sys\/sysctl.h/d' newfs_hfs.tproj/makehfs.c + ''; + sourceRoot = "diskdev_cmds-" + version; patches = [ "../debian/patches/*.patch" ]; diff --git a/pkgs/tools/misc/dateutils/default.nix b/pkgs/tools/misc/dateutils/default.nix index f56cee49ecf..eae2241c3b4 100644 --- a/pkgs/tools/misc/dateutils/default.nix +++ b/pkgs/tools/misc/dateutils/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchurl, autoreconfHook, tzdata }: +{ stdenv, fetchurl, autoreconfHook, tzdata, fetchpatch }: stdenv.mkDerivation rec { version = "0.4.7"; @@ -9,6 +9,13 @@ stdenv.mkDerivation rec { sha256 = "16jr9yjk8wgzfh22hr3z6mp4jm3fkacyibds4jj5xx5yymbm8wj9"; }; + patches = [ + (fetchpatch { + url = "https://bitbucket.org/hroptatyr/dateutils/commits/6813ed94534f2311fbe9164748919e39d60b0190/raw"; + sha256 = "1zs3iizb172ha56g03rr8kzd8zx6qypiqsc11jw758mliwxk5rgc"; + }) + ]; + nativeBuildInputs = [ autoreconfHook ]; buildInputs = [ tzdata ]; # needed for datezone enableParallelBuilding = true; diff --git a/pkgs/tools/misc/rpcsvc-proto/default.nix b/pkgs/tools/misc/rpcsvc-proto/default.nix new file mode 100644 index 00000000000..6406b6b20e2 --- /dev/null +++ b/pkgs/tools/misc/rpcsvc-proto/default.nix @@ -0,0 +1,29 @@ +{ stdenv, fetchFromGitHub, autoreconfHook }: + +stdenv.mkDerivation rec { + pname = "rpcsvc-proto"; + version = "1.4.2"; + + src = fetchFromGitHub { + owner = "thkukuk"; + repo = "${pname}"; + rev = "v${version}"; + sha256 = "006l1f824r9bcbwn1s1vbs33cdwhs66jn6v97yas597y884y40z9"; + }; + + outputs = [ "out" "man" ]; + + nativeBuildInputs = [ autoreconfHook ]; + + meta = with stdenv.lib; { + homepage = "https://github.com/thkukuk/rpcsvc-proto"; + description = "This package contains rpcsvc proto.x files from glibc, which are missing in libtirpc"; + longDescription = '' + The RPC-API has been removed from glibc. The 2.32-release-notes + (https://sourceware.org/pipermail/libc-announce/2020/000029.html) recommend to use + `libtirpc` and this package instead. + ''; + license = licenses.mit; + maintainers = with maintainers; [ ma27 ]; + }; +} diff --git a/pkgs/tools/networking/dsniff/default.nix b/pkgs/tools/networking/dsniff/default.nix index 50de41b921c..7d8cf97f46d 100644 --- a/pkgs/tools/networking/dsniff/default.nix +++ b/pkgs/tools/networking/dsniff/default.nix @@ -1,4 +1,6 @@ -{ stdenv, fetchFromGitLab, autoreconfHook, libpcap, db, glib, libnet, libnids, symlinkJoin, openssl }: +{ stdenv, fetchFromGitLab, autoreconfHook, libpcap, db, glib, libnet, libnids, symlinkJoin, openssl +, rpcsvc-proto, libtirpc, libnsl +}: let /* dsniff's build system unconditionnaly wants static libraries and does not @@ -52,9 +54,10 @@ in stdenv.mkDerivation { name = "dsniff.tar.gz"; }; - nativeBuildInputs = [ autoreconfHook ]; - buildInputs = [ glib pcap ]; - NIX_CFLAGS_LINK = "-lglib-2.0 -lpthread -ldl"; + nativeBuildInputs = [ autoreconfHook rpcsvc-proto ]; + buildInputs = [ glib pcap libtirpc libnsl ]; + NIX_CFLAGS_LINK = "-lglib-2.0 -lpthread -ldl -ltirpc"; + NIX_CFLAGS_COMPILE = [ "-I${libtirpc.dev}/include/tirpc" ]; postPatch = '' for patch in debian/patches/*.patch; do patch < $patch diff --git a/pkgs/tools/networking/nfstrace/default.nix b/pkgs/tools/networking/nfstrace/default.nix index 88510b9b887..2cb819caee9 100644 --- a/pkgs/tools/networking/nfstrace/default.nix +++ b/pkgs/tools/networking/nfstrace/default.nix @@ -1,4 +1,4 @@ -{ cmake, fetchFromGitHub, fetchpatch, json_c, libpcap, ncurses, stdenv }: +{ cmake, fetchFromGitHub, fetchpatch, json_c, libpcap, ncurses, stdenv, libtirpc }: stdenv.mkDerivation rec { pname = "nfstrace"; @@ -23,13 +23,14 @@ stdenv.mkDerivation rec { --replace "-Wno-braced-scalar-init" "" ''; - buildInputs = [ json_c libpcap ncurses ]; + buildInputs = [ json_c libpcap ncurses libtirpc ]; nativeBuildInputs = [ cmake ]; # To build with GCC 8+ it needs: CXXFLAGS = "-Wno-class-memaccess -Wno-ignored-qualifiers"; # CMake can't find json_c without: - NIX_CFLAGS_COMPILE = [ "-I${json_c.dev}/include/json-c" "-Wno-error=address-of-packed-member" ]; + NIX_CFLAGS_COMPILE = [ "-I${json_c.dev}/include/json-c" "-Wno-error=address-of-packed-member" "-I${libtirpc.dev}/include/tirpc" ]; + NIX_LDFLAGS = [ "-ltirpc" ]; doCheck = false; # requires network access diff --git a/pkgs/tools/networking/trickle/default.nix b/pkgs/tools/networking/trickle/default.nix index f97d3c85762..fc32d34ad31 100644 --- a/pkgs/tools/networking/trickle/default.nix +++ b/pkgs/tools/networking/trickle/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchurl, libevent }: +{ stdenv, fetchurl, libevent, libtirpc }: stdenv.mkDerivation rec { name = "trickle-1.07"; @@ -8,7 +8,7 @@ stdenv.mkDerivation rec { sha256 = "0s1qq3k5mpcs9i7ng0l9fvr1f75abpbzfi1jaf3zpzbs1dz50dlx"; }; - buildInputs = [ libevent ]; + buildInputs = [ libevent libtirpc ]; preConfigure = '' sed -i 's|libevent.a|libevent.so|' configure @@ -18,7 +18,8 @@ stdenv.mkDerivation rec { sed -i '/#define in_addr_t/ s:^://:' config.h ''; - LDFLAGS = "-levent"; + NIX_LDFLAGS = [ "-levent" "-ltirpc" ]; + NIX_CFLAGS_COMPILE = [ "-I${libtirpc.dev}/include/tirpc" ]; configureFlags = [ "--with-libevent" ]; diff --git a/pkgs/tools/security/super/0001-Remove-references-to-dropped-sys_nerr-sys_errlist-fo.patch b/pkgs/tools/security/super/0001-Remove-references-to-dropped-sys_nerr-sys_errlist-fo.patch new file mode 100644 index 00000000000..048486caafd --- /dev/null +++ b/pkgs/tools/security/super/0001-Remove-references-to-dropped-sys_nerr-sys_errlist-fo.patch @@ -0,0 +1,51 @@ +From 86e37c1c09c23924c4e055a3d4b8c79f19cd0599 Mon Sep 17 00:00:00 2001 +From: Maximilian Bosch +Date: Mon, 10 Aug 2020 21:33:39 +0200 +Subject: [PATCH] Remove references to dropped `sys_nerr` & `sys_errlist` for + `glibc-2.32` compat + +According to the release-notes[1], `strerror(3)` should be used. This is +already the case, however the source tries to be backwards-compatible by +supporting `sys_nerr` & `sys_errlist` which breaks compilation +unfortunately. + +Simply using `strerror` fixes the problems. + +[1] https://sourceware.org/pipermail/libc-announce/2020/000029.html +--- + utils.c | 12 +----------- + 1 file changed, 1 insertion(+), 11 deletions(-) + +diff --git a/utils.c b/utils.c +index 3ec70b6..430f027 100644 +--- a/utils.c ++++ b/utils.c +@@ -2003,7 +2003,6 @@ int n; + + #ifdef HAVE_SYS_ERRLIST + extern char *sys_errlist[]; +- extern int sys_nerr; + #endif + + /* +@@ -2019,16 +2018,7 @@ int errnum; + sprintf(buf, "Error %d", errnum); + return buf; + #else +- if (errnum < 0 || errnum > sys_nerr) { +- sprintf(buf, "Error %d (!)", errnum); +- return buf; +- } else { +-#ifdef HAVE_STRERROR +- return strerror(errnum); +-#else +- return sys_errlist[errnum]; +-#endif +- } ++ return strerror(errnum); + #endif + } + +-- +2.25.4 + diff --git a/pkgs/tools/security/super/default.nix b/pkgs/tools/security/super/default.nix index 07051731069..79a7cd839e5 100644 --- a/pkgs/tools/security/super/default.nix +++ b/pkgs/tools/security/super/default.nix @@ -17,6 +17,7 @@ stdenv.mkDerivation rec { ''; patches = [ + ./0001-Remove-references-to-dropped-sys_nerr-sys_errlist-fo.patch (fetchpatch { name = "CVE-2014-0470.patch"; url = "https://salsa.debian.org/debian/super/raw/debian/3.30.0-7/debian/patches/14-Fix-unchecked-setuid-call.patch"; diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index a8b1ee4c83a..5d590214625 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -16657,6 +16657,8 @@ in rpcbind = callPackage ../servers/rpcbind { }; + rpcsvc-proto = callPackage ../tools/misc/rpcsvc-proto { }; + libmysqlclient = libmysqlclient_3_1; libmysqlclient_3_1 = mariadb-connector-c_3_1; mariadb-connector-c = mariadb-connector-c_3_1;