From 4b93708b31c1a6d033c1246c000b7be27a3782a6 Mon Sep 17 00:00:00 2001 From: Izorkin Date: Fri, 8 May 2020 09:36:01 +0300 Subject: [PATCH 001/103] ruby: fix soname tag --- pkgs/development/interpreters/ruby/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/development/interpreters/ruby/default.nix b/pkgs/development/interpreters/ruby/default.nix index 1756c13b53d..dbfea17437d 100644 --- a/pkgs/development/interpreters/ruby/default.nix +++ b/pkgs/development/interpreters/ruby/default.nix @@ -116,7 +116,7 @@ let # https://github.com/ruby/ruby/commit/97a5af62a318fcd93a4e5e4428d576c0280ddbae buildFlags = lib.optionals atLeast27 [ "REVISION_LATEST=0" ]; - configureFlags = ["--enable-shared" "--enable-pthread" "--with-soname=ruby_${tag}"] + configureFlags = ["--enable-shared" "--enable-pthread" "--with-soname=ruby-${version}"] ++ op useRailsExpress "--with-baseruby=${baseruby}/bin/ruby" ++ op (!docSupport) "--disable-install-doc" ++ ops stdenv.isDarwin [ From 2ea669bcf20763024e27e696d3847e3ae73c38b0 Mon Sep 17 00:00:00 2001 From: Devin Bayer Date: Thu, 18 Jun 2020 13:04:29 +0200 Subject: [PATCH 002/103] libdrm: 2.4.100 -> 2.4.102 --- .../libdrm/cross-build-nm-path.patch | 23 +++++++++---------- pkgs/development/libraries/libdrm/default.nix | 6 ++--- 2 files changed, 14 insertions(+), 15 deletions(-) diff --git a/pkgs/development/libraries/libdrm/cross-build-nm-path.patch b/pkgs/development/libraries/libdrm/cross-build-nm-path.patch index 478534e65e5..547ef0d0969 100644 --- a/pkgs/development/libraries/libdrm/cross-build-nm-path.patch +++ b/pkgs/development/libraries/libdrm/cross-build-nm-path.patch @@ -17,18 +17,17 @@ Signed-off-by: Jörg Thalheim 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/meson.build b/meson.build -index e292554a..64607139 100644 ---- a/meson.build -+++ b/meson.build -@@ -327,7 +327,7 @@ pkg.generate( - ) - - env_test = environment() --env_test.set('NM', find_program('nm').path()) -+env_test.set('NM', find_program(get_option('nm-path')).path()) - - if with_libkms - subdir('libkms') +--- meson.build.orig 2020-06-18 11:13:57.716321962 +0200 ++++ meson.build 2020-06-18 11:19:50.456861311 +0200 +@@ -45,7 +45,7 @@ + cc = meson.get_compiler('c') + + symbols_check = find_program('symbols-check.py') +-prog_nm = find_program('nm') ++prog_nm = find_program(get_option('nm-path')) + + # Check for atomics + intel_atomics = false diff --git a/meson_options.txt b/meson_options.txt index 8af33f1c..b4f46a52 100644 --- a/meson_options.txt diff --git a/pkgs/development/libraries/libdrm/default.nix b/pkgs/development/libraries/libdrm/default.nix index 0d6ff189765..4296e56c743 100644 --- a/pkgs/development/libraries/libdrm/default.nix +++ b/pkgs/development/libraries/libdrm/default.nix @@ -4,11 +4,11 @@ stdenv.mkDerivation rec { pname = "libdrm"; - version = "2.4.100"; + version = "2.4.102"; src = fetchurl { - url = "https://dri.freedesktop.org/${pname}/${pname}-${version}.tar.bz2"; - sha256 = "0p8a1l3a3s40i81mawm8nhrbk7p97ss05qkawp1yx73c30lchz67"; + url = "https://dri.freedesktop.org/${pname}/${pname}-${version}.tar.xz"; + sha256 = "0nx0bd9dhymdsd99v4ifib77yjirkvkxf5hzdkbr7qr8dhrzkjwb"; }; outputs = [ "out" "dev" "bin" ]; From 6053264d4fa59092ae6e627678cad969cd3f0cf2 Mon Sep 17 00:00:00 2001 From: Martin Milata Date: Thu, 18 Jun 2020 01:54:43 +0200 Subject: [PATCH 003/103] cryptsetup: 2.1.0 -> 2.3.3 Changes: - https://gitlab.com/cryptsetup/cryptsetup/-/blob/master/docs/v2.2.0-ReleaseNotes - https://gitlab.com/cryptsetup/cryptsetup/-/blob/master/docs/v2.2.1-ReleaseNotes - https://gitlab.com/cryptsetup/cryptsetup/-/blob/master/docs/v2.2.2-ReleaseNotes - https://gitlab.com/cryptsetup/cryptsetup/-/blob/master/docs/v2.3.0-ReleaseNotes - https://gitlab.com/cryptsetup/cryptsetup/-/blob/master/docs/v2.3.1-ReleaseNotes - https://gitlab.com/cryptsetup/cryptsetup/-/blob/master/docs/v2.3.2-ReleaseNotes - https://gitlab.com/cryptsetup/cryptsetup/-/blob/master/docs/v2.3.3-ReleaseNotes The python bindings were removed in 2.1.0. --- pkgs/os-specific/linux/cryptsetup/default.nix | 20 +++++++------------ 1 file changed, 7 insertions(+), 13 deletions(-) diff --git a/pkgs/os-specific/linux/cryptsetup/default.nix b/pkgs/os-specific/linux/cryptsetup/default.nix index 06be9f3432e..caa22b4df3e 100644 --- a/pkgs/os-specific/linux/cryptsetup/default.nix +++ b/pkgs/os-specific/linux/cryptsetup/default.nix @@ -1,17 +1,15 @@ { stdenv, fetchurl, lvm2, json_c -, openssl, libuuid, pkgconfig, popt -, enablePython ? false, python2 ? null }: - -assert enablePython -> python2 != null; +, openssl, libuuid, pkgconfig, popt }: stdenv.mkDerivation rec { - name = "cryptsetup-2.1.0"; + pname = "cryptsetup"; + version = "2.3.3"; outputs = [ "out" "dev" "man" ]; src = fetchurl { - url = "mirror://kernel/linux/utils/cryptsetup/v2.1/${name}.tar.xz"; - sha256 = "15y8n547garz0x5kqv09gscdsrz0c0y1y6c5cp8pccwg3xsb5vm3"; + url = "mirror://kernel/linux/utils/cryptsetup/v2.3/${pname}-${version}.tar.xz"; + sha256 = "1pw2bq4nv2z3xyycckxkbp7dp9kkp2n6bspna3plryg277z4zjiv"; }; # Disable 4 test cases that fail in a sandbox @@ -19,9 +17,6 @@ stdenv.mkDerivation rec { postPatch = '' patchShebangs tests - ${stdenv.lib.optionalString enablePython '' - patchShebangs ./python/pycryptsetup-test.py - ''} # O_DIRECT is filesystem dependent and fails in a sandbox (on tmpfs) # and on several filesystem types (btrfs, zfs) without sandboxing. @@ -34,11 +29,10 @@ stdenv.mkDerivation rec { configureFlags = [ "--enable-cryptsetup-reencrypt" "--with-crypto_backend=openssl" - ] ++ stdenv.lib.optional enablePython "--enable-python"; + ]; nativeBuildInputs = [ pkgconfig ]; - buildInputs = [ lvm2 json_c openssl libuuid popt ] - ++ stdenv.lib.optional enablePython python2; + buildInputs = [ lvm2 json_c openssl libuuid popt ]; doCheck = true; From 2c23cba550c5495582f8d187f1584e0c484b0161 Mon Sep 17 00:00:00 2001 From: Martin Milata Date: Thu, 18 Jun 2020 15:55:57 +0200 Subject: [PATCH 004/103] pythonPackages.blivet: drop cryptsetup dependency The python bindings were dropped in cryptsetup-2.1.0: https://gitlab.com/cryptsetup/cryptsetup/-/blob/master/docs/v2.1.0-ReleaseNotes#L63 However this did not cause the blivet build to fail nor did anyone notice (cryptsetup-2.1.0 was introduced in nixos-19.09). --- pkgs/development/python-modules/blivet/default.nix | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/pkgs/development/python-modules/blivet/default.nix b/pkgs/development/python-modules/blivet/default.nix index f3efba1f378..b8d1b4670ae 100644 --- a/pkgs/development/python-modules/blivet/default.nix +++ b/pkgs/development/python-modules/blivet/default.nix @@ -1,11 +1,8 @@ { stdenv, fetchFromGitHub, buildPythonPackage, pykickstart, pyparted, pyblock -, pyudev, six, libselinux, cryptsetup, multipath-tools, lsof, utillinux +, pyudev, six, libselinux, multipath-tools, lsof, utillinux }: -let - pyenable = { enablePython = true; }; - cryptsetupWithPython = cryptsetup.override pyenable; -in buildPythonPackage rec { +buildPythonPackage rec { pname = "blivet"; version = "0.67"; @@ -30,7 +27,7 @@ in buildPythonPackage rec { ''; propagatedBuildInputs = [ - pykickstart pyparted pyblock pyudev libselinux cryptsetupWithPython + pykickstart pyparted pyblock pyudev libselinux six ]; From f6ef3ac294335434b233b587cc01df8f68b2bf21 Mon Sep 17 00:00:00 2001 From: Dmitry Kalinkin Date: Wed, 1 Jul 2020 22:29:42 -0400 Subject: [PATCH 005/103] zstd: build programs and tests against the shared library --- pkgs/tools/compression/zstd/default.nix | 24 +++++++++++++++++++----- pkgs/top-level/static.nix | 2 +- 2 files changed, 20 insertions(+), 6 deletions(-) diff --git a/pkgs/tools/compression/zstd/default.nix b/pkgs/tools/compression/zstd/default.nix index f919fb92ed1..9c9f91f9c19 100644 --- a/pkgs/tools/compression/zstd/default.nix +++ b/pkgs/tools/compression/zstd/default.nix @@ -2,7 +2,8 @@ , fixDarwinDylibNames , file , legacySupport ? false -, enableShared ? true }: +, static ? false +}: stdenv.mkDerivation rec { pname = "zstd"; @@ -28,9 +29,24 @@ stdenv.mkDerivation rec { # work fine, and I'm not sure how to write the condition. ++ stdenv.lib.optional stdenv.hostPlatform.isWindows ./mcfgthreads-no-pthread.patch; + postPatch = + # Patch shebangs for playTests + '' + patchShebangs programs/zstdgrep + '' + stdenv.lib.optionalString (!static) '' + substituteInPlace build/cmake/CMakeLists.txt \ + --replace 'message(SEND_ERROR "You need to build static library to build tests")' "" + substituteInPlace build/cmake/tests/CMakeLists.txt \ + --replace 'libzstd_static' 'libzstd_shared' + sed -i \ + "1aexport ${stdenv.lib.optionalString stdenv.isDarwin "DY"}LD_LIBRARY_PATH=$PWD/build_/lib" \ + tests/playTests.sh + ''; + cmakeFlags = [ - "-DZSTD_BUILD_SHARED:BOOL=${if enableShared then "ON" else "OFF"}" - # They require STATIC for bin/zstd and tests. + "-DZSTD_BUILD_SHARED:BOOL=${if (!static) then "ON" else "OFF"}" + "-DZSTD_BUILD_STATIC:BOOL=${if static then "ON" else "OFF"}" + "-DZSTD_PROGRAMS_LINK_SHARED:BOOL=${if (!static) then "ON" else "OFF"}" "-DZSTD_LEGACY_SUPPORT:BOOL=${if legacySupport then "ON" else "OFF"}" "-DZSTD_BUILD_TESTS:BOOL=ON" ]; @@ -56,8 +72,6 @@ stdenv.mkDerivation rec { substituteInPlace ../programs/zstdless \ --replace "zstdcat" "$bin/bin/zstdcat" ''; - # Don't duplicate the library code in runtime closures. - postInstall = stdenv.lib.optionalString enableShared ''rm "$out"/lib/libzstd.a''; outputs = [ "bin" "dev" "man" "out" ]; diff --git a/pkgs/top-level/static.nix b/pkgs/top-level/static.nix index fcfe856398e..b4c1ee9ab3d 100644 --- a/pkgs/top-level/static.nix +++ b/pkgs/top-level/static.nix @@ -242,7 +242,7 @@ in { }; zstd = super.zstd.override { - enableShared = false; + static = true; }; llvmPackages_8 = super.llvmPackages_8 // { From 9e7f109ef7ea0ebbfe271c2a2b10d06b35ce1acc Mon Sep 17 00:00:00 2001 From: Martin Milata Date: Thu, 18 Jun 2020 12:34:51 +0200 Subject: [PATCH 006/103] json_c: 0.13.1 -> 0.14 Changes: https://github.com/json-c/json-c/blob/json-c-0.14-20200419/ChangeLog --- pkgs/development/libraries/json-c/default.nix | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/pkgs/development/libraries/json-c/default.nix b/pkgs/development/libraries/json-c/default.nix index c7a9b3c4a12..164f7c44ba9 100644 --- a/pkgs/development/libraries/json-c/default.nix +++ b/pkgs/development/libraries/json-c/default.nix @@ -1,24 +1,24 @@ -{ stdenv, fetchurl, fetchpatch, autoconf }: +{ stdenv, fetchurl, fetchpatch, cmake }: stdenv.mkDerivation rec { - name = "json-c-0.13.1"; + name = "json-c-0.14"; src = fetchurl { url = "https://s3.amazonaws.com/json-c_releases/releases/${name}-nodoc.tar.gz"; - sha256 = "0ch1v18wk703bpbyzj7h1mkwvsw4rw4qdwvgykscypvqq10678ll"; + sha256 = "1yia8417qljmczs9w3rn4c4i2p2iywq098pgrj11s81599j4x4cr"; }; patches = [ # https://nvd.nist.gov/vuln/detail/CVE-2020-12762 (fetchpatch { name = "CVE-2020-12762.patch"; - url = "https://github.com/json-c/json-c/commit/865b5a65199973bb63dff8e47a2f57e04fec9736.patch"; - sha256 = "1g5afk4khhm1sb70xrva1pyznshcw3ipzp1g5z60dpzxy303pp6h"; + url = "https://github.com/json-c/json-c/commit/5d6fa331418d49f1bd488553fd1cfa9ab023fabb.patch"; + sha256 = "0aar7kgbycqxnhh0lrr61adfbb903nbapalhs5i6h8anxwy1ylcm"; }) ]; outputs = [ "out" "dev" ]; - nativeBuildInputs = [ autoconf ]; # for autoheader + nativeBuildInputs = [ cmake ]; meta = with stdenv.lib; { description = "A JSON implementation in C"; From f85535f11630d5209841b2a7d9389b5e89e100ab Mon Sep 17 00:00:00 2001 From: Martin Milata Date: Thu, 18 Jun 2020 13:44:01 +0200 Subject: [PATCH 007/103] libu2f-host: support json_c-0.14 --- pkgs/development/libraries/libu2f-host/default.nix | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/pkgs/development/libraries/libu2f-host/default.nix b/pkgs/development/libraries/libu2f-host/default.nix index f033aa9f610..a9c62673115 100644 --- a/pkgs/development/libraries/libu2f-host/default.nix +++ b/pkgs/development/libraries/libu2f-host/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchurl, pkgconfig, json_c, hidapi }: +{ stdenv, fetchurl, fetchpatch, pkgconfig, json_c, hidapi }: stdenv.mkDerivation rec { pname = "libu2f-host"; @@ -9,6 +9,15 @@ stdenv.mkDerivation rec { sha256 = "0vrivl1dwql6nfi48z6dy56fwy2z13d7abgahgrs2mcmqng7hra2"; }; + patches = [ + # remove after updating to next release + (fetchpatch { + name = "json-c-0.14-support.patch"; + url = "https://github.com/Yubico/libu2f-host/commit/840f01135d2892f45e71b9e90405de587991bd03.patch"; + sha256 = "0xplx394ppsbsb4h4l8b9m4dv9shbl0zyck3y26vbm9i1g981ki7"; + }) + ]; + nativeBuildInputs = [ pkgconfig ]; buildInputs = [ json_c hidapi ]; From 1bfa7348fa0efc2af0315f9d27061e7642d09514 Mon Sep 17 00:00:00 2001 From: Martin Milata Date: Thu, 18 Jun 2020 13:44:17 +0200 Subject: [PATCH 008/103] libu2f-server: support json_c-0.14 --- pkgs/development/libraries/libu2f-server/default.nix | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/pkgs/development/libraries/libu2f-server/default.nix b/pkgs/development/libraries/libu2f-server/default.nix index be5658914d1..cd961cde1d2 100644 --- a/pkgs/development/libraries/libu2f-server/default.nix +++ b/pkgs/development/libraries/libu2f-server/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchurl, pkgconfig, json_c, openssl, check, file, help2man, which, gengetopt }: +{ stdenv, fetchurl, fetchpatch, pkgconfig, json_c, openssl, check, file, help2man, which, gengetopt }: stdenv.mkDerivation rec { name = "libu2f-server-1.1.0"; @@ -7,6 +7,15 @@ stdenv.mkDerivation rec { sha256 = "0xx296nmmqa57w0v5p2kasl5zr1ms2gh6qi4lhv6xvzbmjp3rkcd"; }; + patches = [ + # remove after updating to next release + (fetchpatch { + name = "json-c-0.14-support.patch"; + url = "https://github.com/Yubico/libu2f-server/commit/f7c4983b31909299c47bf9b2627c84b6bfe225de.patch"; + sha256 = "10q66w3paii1yhfdmjskpip078fk9p3sjllbqx1yx71qbjki55b0"; + }) + ]; + nativeBuildInputs = [ pkgconfig ]; buildInputs = [ json_c openssl check file help2man which gengetopt ]; From 9d1b3a1555ff4a114ca05be19a621cbb2c752f47 Mon Sep 17 00:00:00 2001 From: Martin Milata Date: Thu, 18 Jun 2020 13:52:13 +0200 Subject: [PATCH 009/103] connman-ncurses: support json_c-0.14 --- .../networking/connman/connman-ncurses/default.nix | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/pkgs/tools/networking/connman/connman-ncurses/default.nix b/pkgs/tools/networking/connman/connman-ncurses/default.nix index 7bfb4571e10..1e7f54f9ddb 100644 --- a/pkgs/tools/networking/connman/connman-ncurses/default.nix +++ b/pkgs/tools/networking/connman/connman-ncurses/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchFromGitHub, autoreconfHook, pkgconfig, dbus, json_c, ncurses, connman }: +{ stdenv, fetchpatch, fetchFromGitHub, autoreconfHook, pkgconfig, dbus, json_c, ncurses, connman }: stdenv.mkDerivation { pname = "connman-ncurses"; @@ -11,12 +11,21 @@ stdenv.mkDerivation { sha256 = "1831r0776fv481g8kgy1dkl750pzv47835dw11sslq2k6mm6i9p1"; }; + patches = [ + # Fix build with json-c 0.14 + (fetchpatch { + url = "https://github.com/void-linux/void-packages/raw/5830ce60e922b7dced8157ededda8c995adb3bb9/srcpkgs/connman-ncurses/patches/lowercase-boolean.patch"; + extraPrefix = ""; + sha256 = "uK83DeRyXS2Y0ZZpTYvYNh/1ZM2QQ7QpajiBztaEuSM="; + }) + ]; + nativeBuildInputs = [ autoreconfHook pkgconfig ]; buildInputs = [ dbus ncurses json_c connman ]; NIX_CFLAGS_COMPILE = "-Wno-error"; - + installPhase = '' mkdir -p "$out/bin" cp -va connman_ncurses "$out/bin/" From 542c8ff8938e92e6c55050058fa0691499453ced Mon Sep 17 00:00:00 2001 From: Martin Milata Date: Thu, 18 Jun 2020 14:56:20 +0200 Subject: [PATCH 010/103] multipath-tools: support json_c-0.14 --- .../linux/multipath-tools/default.nix | 5 +++++ .../linux/multipath-tools/json-c-0.14.patch | 21 +++++++++++++++++++ 2 files changed, 26 insertions(+) create mode 100644 pkgs/os-specific/linux/multipath-tools/json-c-0.14.patch diff --git a/pkgs/os-specific/linux/multipath-tools/default.nix b/pkgs/os-specific/linux/multipath-tools/default.nix index d60b4a9a549..1c00ed9887d 100644 --- a/pkgs/os-specific/linux/multipath-tools/default.nix +++ b/pkgs/os-specific/linux/multipath-tools/default.nix @@ -10,6 +10,11 @@ stdenv.mkDerivation rec { sha256 = "1mgjylklh1cx8px8ffgl12kyc0ln3445vbabd2sy8chq31rpiiq8"; }; + patches = [ + # fix build with json-c 0.14 https://www.redhat.com/archives/dm-devel/2020-May/msg00261.html + ./json-c-0.14.patch + ]; + postPatch = '' substituteInPlace libmultipath/Makefile --replace /usr/include/libdevmapper.h ${lvm2}/include/libdevmapper.h sed -i -re ' diff --git a/pkgs/os-specific/linux/multipath-tools/json-c-0.14.patch b/pkgs/os-specific/linux/multipath-tools/json-c-0.14.patch new file mode 100644 index 00000000000..d5fee424883 --- /dev/null +++ b/pkgs/os-specific/linux/multipath-tools/json-c-0.14.patch @@ -0,0 +1,21 @@ +diff --git a/libdmmp/libdmmp_private.h b/libdmmp/libdmmp_private.h +index ac85b63f..b1a6ddea 100644 +--- a/libdmmp/libdmmp_private.h ++++ b/libdmmp/libdmmp_private.h +@@ -30,6 +30,7 @@ + #include + #include + #include ++#include + #include + + #include "libdmmp/libdmmp.h" +@@ -82,7 +83,7 @@ static out_type func_name(struct dmmp_context *ctx, const char *var_name) { \ + do { \ + json_type j_type = json_type_null; \ + json_object *j_obj_tmp = NULL; \ +- if (json_object_object_get_ex(j_obj, key, &j_obj_tmp) != TRUE) { \ ++ if (json_object_object_get_ex(j_obj, key, &j_obj_tmp) != true) { \ + _error(ctx, "Invalid JSON output from multipathd IPC: " \ + "key '%s' not found", key); \ + rc = DMMP_ERR_IPC_ERROR; \ From 9aadc464af0ad768275265ad3d196d410e90f3e9 Mon Sep 17 00:00:00 2001 From: Martin Milata Date: Thu, 18 Jun 2020 16:14:14 +0200 Subject: [PATCH 011/103] yubikey-personalization: support json_c-0.14 --- pkgs/tools/misc/yubikey-personalization/default.nix | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/pkgs/tools/misc/yubikey-personalization/default.nix b/pkgs/tools/misc/yubikey-personalization/default.nix index 5ef828762f6..69e3d588653 100644 --- a/pkgs/tools/misc/yubikey-personalization/default.nix +++ b/pkgs/tools/misc/yubikey-personalization/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchurl, pkgconfig, libusb1, libyubikey, json_c }: +{ stdenv, fetchurl, fetchpatch, pkgconfig, libusb1, libyubikey, json_c }: stdenv.mkDerivation rec { pname = "yubikey-personalization"; @@ -9,6 +9,15 @@ stdenv.mkDerivation rec { sha256 = "14wvlwqnwj0gllkpvfqiy8ns938bwvjsz8x1hmymmx32m074vj0f"; }; + patches = [ + # remove after updating to next release + (fetchpatch { + name = "json-c-0.14-support.patch"; + url = "https://github.com/Yubico/yubikey-personalization/commit/0aa2e2cae2e1777863993a10c809bb50f4cde7f8.patch"; + sha256 = "1wnigf3hbq59i15kgxpq3pwrl1drpbj134x81mmv9xm1r44cjva8"; + }) + ]; + nativeBuildInputs = [ pkgconfig ]; buildInputs = [ libusb1 libyubikey json_c ]; From b39c3a1a1772e2f40057de9f158fa08bc009b596 Mon Sep 17 00:00:00 2001 From: Martin Milata Date: Thu, 18 Jun 2020 16:37:56 +0200 Subject: [PATCH 012/103] zmap: support json_c-0.14 --- pkgs/tools/security/zmap/cmake-json-0.14-fix.patch | 13 +++++++++++++ pkgs/tools/security/zmap/default.nix | 5 +++++ 2 files changed, 18 insertions(+) create mode 100644 pkgs/tools/security/zmap/cmake-json-0.14-fix.patch diff --git a/pkgs/tools/security/zmap/cmake-json-0.14-fix.patch b/pkgs/tools/security/zmap/cmake-json-0.14-fix.patch new file mode 100644 index 00000000000..1c132948af6 --- /dev/null +++ b/pkgs/tools/security/zmap/cmake-json-0.14-fix.patch @@ -0,0 +1,13 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 8bd825f..694d9b2 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -72,6 +72,8 @@ if(WITH_JSON) + endif() + + add_definitions("-DJSON") ++ # JSON_CFLAGS is a list, i.e. semicolon-separated, convert it to space-separated ++ string(REPLACE ";" " " JSON_CFLAGS "${JSON_CFLAGS}") + set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${JSON_CFLAGS}") + endif() + diff --git a/pkgs/tools/security/zmap/default.nix b/pkgs/tools/security/zmap/default.nix index ef36b21641b..e2350b67c7d 100644 --- a/pkgs/tools/security/zmap/default.nix +++ b/pkgs/tools/security/zmap/default.nix @@ -13,6 +13,11 @@ stdenv.mkDerivation rec { sha256 = "0yaahaiawkjk020hvsb8pndbrk8k10wxkfba1irp12a4sj6rywcs"; }; + patches = [ + # fix build with json-c 0.14 https://github.com/zmap/zmap/pull/609 + ./cmake-json-0.14-fix.patch + ]; + cmakeFlags = [ "-DRESPECT_INSTALL_PREFIX_CONFIG=ON" ]; dontUseCmakeBuildDir = true; From 57f3c834bc890a2da361a437adc8755feff3d12c Mon Sep 17 00:00:00 2001 From: Alyssa Ross Date: Fri, 3 Jul 2020 02:48:24 +0000 Subject: [PATCH 013/103] automake115x: 1.15 -> 1.15.1 --- pkgs/development/tools/misc/automake/automake-1.15.x.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/tools/misc/automake/automake-1.15.x.nix b/pkgs/development/tools/misc/automake/automake-1.15.x.nix index 858cb9a4f22..bf0967e9ddb 100644 --- a/pkgs/development/tools/misc/automake/automake-1.15.x.nix +++ b/pkgs/development/tools/misc/automake/automake-1.15.x.nix @@ -1,11 +1,11 @@ { stdenv, fetchurl, perl, autoconf }: stdenv.mkDerivation rec { - name = "automake-1.15"; + name = "automake-1.15.1"; src = fetchurl { url = "mirror://gnu/automake/${name}.tar.xz"; - sha256 = "0dl6vfi2lzz8alnklwxzfz624b95hb1ipjvd3mk177flmddcf24r"; + sha256 = "1bzd9g32dfm4rsbw93ld9x7b5nc1y6i4m6zp032qf1i28a8s6sxg"; }; nativeBuildInputs = [ autoconf perl ]; From 10ad3f66f56b651505511c348c6afe890dd9a422 Mon Sep 17 00:00:00 2001 From: Alyssa Ross Date: Fri, 3 Jul 2020 03:10:03 +0000 Subject: [PATCH 014/103] gd: fix "Error: Problem doing text layout" This backport allows the Wayland documentation to be successfully built. --- pkgs/development/libraries/gd/default.nix | 21 ++++++++++++++++++--- pkgs/top-level/all-packages.nix | 1 + 2 files changed, 19 insertions(+), 3 deletions(-) diff --git a/pkgs/development/libraries/gd/default.nix b/pkgs/development/libraries/gd/default.nix index 4a0d918cabe..3b4533890a7 100644 --- a/pkgs/development/libraries/gd/default.nix +++ b/pkgs/development/libraries/gd/default.nix @@ -1,5 +1,7 @@ -{ stdenv, fetchurl -, pkgconfig +{ stdenv, fetchurl, fetchpatch +, autoconf +, automake +, pkg-config , zlib , libpng , libjpeg ? null @@ -20,11 +22,24 @@ stdenv.mkDerivation rec { }; hardeningDisable = [ "format" ]; + patches = [ + # Fixes an issue where some other packages would fail to build + # their documentation with an error like: + # "Error: Problem doing text layout" + # + # Can be removed if Wayland can still be built successfully with + # documentation. + (fetchpatch { + url = "https://github.com/libgd/libgd/commit/3dd0e308cbd2c24fde2fc9e9b707181252a2de95.patch"; + excludes = [ "tests/gdimagestringft/.gitignore" ]; + sha256 = "12iqlanl9czig9d7c3rvizrigw2iacimnmimfcny392dv9iazhl1"; + }) + ]; # -pthread gets passed to clang, causing warnings configureFlags = stdenv.lib.optional stdenv.isDarwin "--enable-werror=no"; - nativeBuildInputs = [ pkgconfig ]; + nativeBuildInputs = [ autoconf automake pkg-config ]; buildInputs = [ zlib fontconfig freetype ]; propagatedBuildInputs = [ libpng libjpeg libwebp libtiff libXpm ]; diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index c5b03826a8d..69f53ec2540 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -11911,6 +11911,7 @@ in gf2x = callPackage ../development/libraries/gf2x {}; gd = callPackage ../development/libraries/gd { + automake = automake115x; libtiff = null; libXpm = null; }; From 8b5bb18a9e77273e87dcb279b4299302377652b7 Mon Sep 17 00:00:00 2001 From: Christian Kauhaus Date: Fri, 3 Jul 2020 10:57:38 +0200 Subject: [PATCH 015/103] sqlite: 3.32.2 -> 3.32.3 Fixes: CVE-2019-19242 CVE-2019-19244 CVE-2019-19317 CVE-2019-19603 CVE-2019-19645 CVE-2019-19646 CVE-2019-19880 CVE-2019-19923 CVE-2019-19924 CVE-2019-19925 CVE-2019-19926 CVE-2019-19959 CVE-2019-20218 CVE-2020-9327 CVE-2020-11655 CVE-2020-11656 CVE-2020-13434 CVE-2020-13435 CVE-2020-13630 CVE-2020-13631 CVE-2020-13632 CVE-2020-13871 CVE-2020-15358 Re #92072, #90989, #88403, #88401, #88400, #77944, #92063, #90990 --- pkgs/development/libraries/sqlite/analyzer.nix | 4 ++-- pkgs/development/libraries/sqlite/default.nix | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/pkgs/development/libraries/sqlite/analyzer.nix b/pkgs/development/libraries/sqlite/analyzer.nix index cf8a9aaa732..5c65c84e54d 100644 --- a/pkgs/development/libraries/sqlite/analyzer.nix +++ b/pkgs/development/libraries/sqlite/analyzer.nix @@ -6,11 +6,11 @@ in stdenv.mkDerivation rec { pname = "sqlite-analyzer"; - version = "3.32.2"; + version = "3.32.3"; src = assert version == sqlite.version; fetchurl { url = "https://sqlite.org/2020/sqlite-src-${archiveVersion version}.zip"; - sha256 = "1jqhs896cvp9l399mjpbv1x2qbfvq875l1vrgnl3zc4ffdjxs9z0"; + sha256 = "1fgmslzf013ry3a7g2vms7zyg24gs53gfj308r6ki4inbn3g04lk"; }; nativeBuildInputs = [ unzip ]; diff --git a/pkgs/development/libraries/sqlite/default.nix b/pkgs/development/libraries/sqlite/default.nix index 35d3d062ab7..cd0042e722a 100644 --- a/pkgs/development/libraries/sqlite/default.nix +++ b/pkgs/development/libraries/sqlite/default.nix @@ -10,12 +10,12 @@ in stdenv.mkDerivation rec { pname = "sqlite"; - version = "3.32.2"; + version = "3.32.3"; # NB! Make sure to update analyzer.nix src (in the same directory). src = fetchurl { url = "https://sqlite.org/2020/sqlite-autoconf-${archiveVersion version}.tar.gz"; - sha256 = "1130bcd70s2vlsq0d638pb5qrw9kwqvjswnp2dfypghx9hjz3gid"; + sha256 = "0rlbaq177gcgk5dswd3akbhv2nvvzljrbhgy18hklbhw7h90f5d3"; }; outputs = [ "bin" "dev" "out" ]; From ee5f7058a488b2b70dbdc092fc07fa30b1f98a40 Mon Sep 17 00:00:00 2001 From: Alyssa Ross Date: Fri, 3 Jul 2020 03:13:00 +0000 Subject: [PATCH 016/103] wayland: documentation outputs Build the documentation by default, but install it to seperate outputs so it doesn't have to be downloaded. Documentation is still disabled when cross-compiling, because that is currently broken: wayland -> graphviz -> libdevil -> openexr -> ilmbase (broken) --- pkgs/development/libraries/wayland/default.nix | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/pkgs/development/libraries/wayland/default.nix b/pkgs/development/libraries/wayland/default.nix index 402177b899c..1821d7a7237 100644 --- a/pkgs/development/libraries/wayland/default.nix +++ b/pkgs/development/libraries/wayland/default.nix @@ -1,7 +1,8 @@ { lib, stdenv, fetchurl, meson, pkgconfig, ninja , libffi, libxml2, wayland , expat ? null # Build wayland-scanner (currently cannot be disabled as of 1.7.0) -, withDocumentation ? false, graphviz-nox, doxygen, libxslt, xmlto, python3 +, withDocumentation ? stdenv.hostPlatform == stdenv.buildPlatform +, graphviz-nox, doxygen, libxslt, xmlto, python3 , docbook_xsl, docbook_xml_dtd_45, docbook_xml_dtd_42 }: @@ -19,6 +20,7 @@ in stdenv.mkDerivation rec { sha256 = "0k995rn96xkplrapz5k648j651wc43kq817xk1x8280h16gsfxa6"; }; + outputs = [ "out" ] ++ lib.optionals withDocumentation [ "doc" "man" ]; separateDebugInfo = true; mesonFlags = [ "-Ddocumentation=${lib.boolToString withDocumentation}" ]; From f02d1db3102df2ac468cd3be9216637fb602118e Mon Sep 17 00:00:00 2001 From: Dmitry Kalinkin Date: Thu, 2 Jul 2020 22:41:44 -0400 Subject: [PATCH 017/103] python3Packages.awkward1: 0.2.23 -> 0.2.24 --- pkgs/development/python-modules/awkward1/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/awkward1/default.nix b/pkgs/development/python-modules/awkward1/default.nix index e3549e0a4a8..3b53dd0eeb7 100644 --- a/pkgs/development/python-modules/awkward1/default.nix +++ b/pkgs/development/python-modules/awkward1/default.nix @@ -10,11 +10,11 @@ buildPythonPackage rec { pname = "awkward1"; - version = "0.2.23"; + version = "0.2.24"; src = fetchPypi { inherit pname version; - sha256 = "d7458b499959af66e0a640e29e6b676a39cc9614cd504e5a2e8f8d0c7f546597"; + sha256 = "d2f4c9e3153ba18e3ef867c4804e3f17aefd0cc32b5174b38718d06ada4503e9"; }; nativeBuildInputs = [ cmake ]; From 6ca2afc05a0b3ae89bcef053317e24b73190625b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20=C8=98erb=C4=83nescu?= Date: Sat, 4 Jul 2020 18:02:45 +0200 Subject: [PATCH 018/103] curl: 7.70.0 -> 7.71.1 --- 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 11a928a3ef1..ce24854d04d 100644 --- a/pkgs/tools/networking/curl/default.nix +++ b/pkgs/tools/networking/curl/default.nix @@ -29,14 +29,14 @@ assert gssSupport -> libkrb5 != null; stdenv.mkDerivation rec { pname = "curl"; - version = "7.70.0"; + version = "7.71.1"; src = fetchurl { urls = [ "https://curl.haxx.se/download/${pname}-${version}.tar.bz2" "https://github.com/curl/curl/releases/download/${lib.replaceStrings ["."] ["_"] pname}-${version}/${pname}-${version}.tar.bz2" ]; - sha256 = "1l19b2xmzwjl2fqlbv46kwlz1823miaxczyx2a5lz8k7mmigw2x5"; + sha256 = "097jnkbayscifgzgl7v8kwd7m2crpvbyaazac3ab1yal0pca8llx"; }; outputs = [ "bin" "dev" "out" "man" "devdoc" ]; From 60fb772ae293830d94908e6fad81b19eb21d0a2c Mon Sep 17 00:00:00 2001 From: Frederik Rietdijk Date: Sat, 4 Jul 2020 13:21:39 +0200 Subject: [PATCH 019/103] python36: 3.6.10 -> 3.6.11 --- pkgs/development/interpreters/python/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/interpreters/python/default.nix b/pkgs/development/interpreters/python/default.nix index b05f989714a..b1afafc24c1 100644 --- a/pkgs/development/interpreters/python/default.nix +++ b/pkgs/development/interpreters/python/default.nix @@ -81,10 +81,10 @@ in { sourceVersion = { major = "3"; minor = "6"; - patch = "10"; + patch = "11"; suffix = ""; }; - sha256 = "1pj0mz1xl27khi250p29c0y99vxg662js8zp71aprkf8i8wkr0qa"; + sha256 = "dB69y8Tjk3pf8jUX3UVev31UPqn+9vXPb0blddbE/aQ="; inherit (darwin) configd; inherit passthruFun; }; From 7935bf793ee0aec480df1a4a50cb1166507dec93 Mon Sep 17 00:00:00 2001 From: Frederik Rietdijk Date: Sat, 4 Jul 2020 13:21:49 +0200 Subject: [PATCH 020/103] python37: 3.7.7 -> 3.7.8 --- pkgs/development/interpreters/python/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/interpreters/python/default.nix b/pkgs/development/interpreters/python/default.nix index b1afafc24c1..6e9bbb45e4b 100644 --- a/pkgs/development/interpreters/python/default.nix +++ b/pkgs/development/interpreters/python/default.nix @@ -94,10 +94,10 @@ in { sourceVersion = { major = "3"; minor = "7"; - patch = "7"; + patch = "8"; suffix = ""; }; - sha256 = "0di1y2cna823qgk6sd2lvpjdm3g2qikdd50i2bjd330dpzqsk806"; + sha256 = "Q6VDQEs2PwA3+J34R48Z2y28DW8//uMQvCmX+nGFSmM="; inherit (darwin) configd; inherit passthruFun; }; From d2ee5fd97702531c3f98304e6d088cabb91fe10f Mon Sep 17 00:00:00 2001 From: "R. RyanTM" Date: Sat, 4 Jul 2020 16:46:53 +0000 Subject: [PATCH 021/103] btrfs-progs: 5.6.1 -> 5.7 --- pkgs/tools/filesystems/btrfs-progs/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/tools/filesystems/btrfs-progs/default.nix b/pkgs/tools/filesystems/btrfs-progs/default.nix index 5a6dafae298..b51df62d79a 100644 --- a/pkgs/tools/filesystems/btrfs-progs/default.nix +++ b/pkgs/tools/filesystems/btrfs-progs/default.nix @@ -4,11 +4,11 @@ stdenv.mkDerivation rec { pname = "btrfs-progs"; - version = "5.6.1"; + version = "5.7"; src = fetchurl { url = "mirror://kernel/linux/kernel/people/kdave/btrfs-progs/btrfs-progs-v${version}.tar.xz"; - sha256 = "1nwnvjdnr9fjj2q2p2vpjabfdhcrwykgj9knjcsqy0c7p1bgbk2h"; + sha256 = "0p6ycbr8sw5bq3mj84gh9rvh5sk8sjr2l9hb9dhm4j41ij5h8bsw"; }; nativeBuildInputs = [ From 906c5604bf09ae87f0eb6e024628c765c0d60fb4 Mon Sep 17 00:00:00 2001 From: "R. RyanTM" Date: Sun, 5 Jul 2020 15:28:56 +0000 Subject: [PATCH 022/103] man: 2.9.2 -> 2.9.3 --- pkgs/tools/misc/man-db/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/tools/misc/man-db/default.nix b/pkgs/tools/misc/man-db/default.nix index f5cbef8b022..68e1aaa4d61 100644 --- a/pkgs/tools/misc/man-db/default.nix +++ b/pkgs/tools/misc/man-db/default.nix @@ -1,11 +1,11 @@ { stdenv, fetchurl, pkgconfig, libpipeline, db, groff, libiconv, makeWrapper, buildPackages }: stdenv.mkDerivation rec { - name = "man-db-2.9.2"; + name = "man-db-2.9.3"; src = fetchurl { url = "mirror://savannah/man-db/${name}.tar.xz"; - sha256 = "0z04kwv5ymmd0pzadpaag696jfckg6rbz8x4jrgj09bmqqk3yf3v"; + sha256 = "1f4palf5bdyf3f8sa0981cqxn9cjcr2pz53ngrrsybb9n0da2nps"; }; outputs = [ "out" "doc" ]; From a8842fd3c7a25c02efd7ed0cf3fd771c28831417 Mon Sep 17 00:00:00 2001 From: "R. RyanTM" Date: Sun, 5 Jul 2020 09:03:39 +0000 Subject: [PATCH 023/103] librsvg: 2.48.7 -> 2.48.8 --- pkgs/development/libraries/librsvg/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/librsvg/default.nix b/pkgs/development/libraries/librsvg/default.nix index 2c68d27323f..fb61b50346d 100644 --- a/pkgs/development/libraries/librsvg/default.nix +++ b/pkgs/development/libraries/librsvg/default.nix @@ -4,14 +4,14 @@ let pname = "librsvg"; - version = "2.48.7"; + version = "2.48.8"; in stdenv.mkDerivation rec { name = "${pname}-${version}"; src = fetchurl { url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${name}.tar.xz"; - sha256 = "1h7yw9bszsi174lkq8ig15p1rll7fqafx72jligxiz32wa9mvpim"; + sha256 = "14i6xzghcidv64cyd3g0wdjbl82rph737yxn9s3x29nzpcjs707l"; }; outputs = [ "out" "dev" "installedTests" ]; From d8af01bea773184b01f0667c2e27249b9c544e74 Mon Sep 17 00:00:00 2001 From: "R. RyanTM" Date: Sun, 5 Jul 2020 13:05:54 +0000 Subject: [PATCH 024/103] libqmi: 1.25.900 -> 1.26.0 --- pkgs/development/libraries/libqmi/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/libqmi/default.nix b/pkgs/development/libraries/libqmi/default.nix index 15a2a1db18f..e577b403823 100644 --- a/pkgs/development/libraries/libqmi/default.nix +++ b/pkgs/development/libraries/libqmi/default.nix @@ -2,11 +2,11 @@ stdenv.mkDerivation rec { pname = "libqmi"; - version = "1.25.900"; + version = "1.26.0"; src = fetchurl { url = "https://www.freedesktop.org/software/libqmi/${pname}-${version}.tar.xz"; - sha256 = "0a96f4ab7qy4szwzqs8ir2mvsnpqzk7zsiv6zahlhpf0jhp1vxf7"; + sha256 = "0h3fzmjlla7ib9wn4rv98bm40y2k28jcl29da4hjwyaqmvh2j13z"; }; outputs = [ "out" "dev" "devdoc" ]; From cebca41b3c942568d1fc37ad963d428273e4a846 Mon Sep 17 00:00:00 2001 From: ajs124 Date: Mon, 29 Jun 2020 03:44:24 +0200 Subject: [PATCH 025/103] nspr: 4.25 -> 4.26 --- pkgs/development/libraries/nspr/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/nspr/default.nix b/pkgs/development/libraries/nspr/default.nix index 31a9f7f20d1..9ab89aaefbf 100644 --- a/pkgs/development/libraries/nspr/default.nix +++ b/pkgs/development/libraries/nspr/default.nix @@ -2,7 +2,7 @@ , CoreServices ? null , buildPackages }: -let version = "4.25"; in +let version = "4.26"; in stdenv.mkDerivation { pname = "nspr"; @@ -10,7 +10,7 @@ stdenv.mkDerivation { src = fetchurl { url = "mirror://mozilla/nspr/releases/v${version}/src/nspr-${version}.tar.gz"; - sha256 = "0mjjk2b7ika3v4y99cnaqz3z1iq1a50r1psn9i3s87gr46z0khqb"; + sha256 = "0gbp3g9p4nhf0zrlvqi5883sqb9zdw0wk83lccpgskxphlni97gw"; }; patches = [ From 9beef71b32369804ec48f0a4d6a7ed49cd1920fa Mon Sep 17 00:00:00 2001 From: "R. RyanTM" Date: Sun, 5 Jul 2020 01:13:36 +0000 Subject: [PATCH 026/103] help2man: 1.47.15 -> 1.47.16 --- 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 e23ccf27323..74ba7f55093 100644 --- a/pkgs/development/tools/misc/help2man/default.nix +++ b/pkgs/development/tools/misc/help2man/default.nix @@ -1,11 +1,11 @@ { stdenv, fetchurl, perlPackages, gettext }: stdenv.mkDerivation rec { - name = "help2man-1.47.15"; + name = "help2man-1.47.16"; src = fetchurl { url = "mirror://gnu/help2man/${name}.tar.xz"; - sha256 = "076dvc0z0qp73rpmg0c8bkpfh969h4gzzc442hv1bcyf1srkann2"; + sha256 = "1x586h7wvripcay35kdh2kvydx84y8yy93ffjah2rqw6bc65iy1y"; }; nativeBuildInputs = [ gettext perlPackages.LocaleGettext ]; From dde33111a2feb350c6336721510fe36429255c39 Mon Sep 17 00:00:00 2001 From: "R. RyanTM" Date: Sun, 5 Jul 2020 15:22:30 +0000 Subject: [PATCH 027/103] libuv: 1.38.0 -> 1.38.1 --- pkgs/development/libraries/libuv/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/libuv/default.nix b/pkgs/development/libraries/libuv/default.nix index e22bcdd86b4..3462c423ffd 100644 --- a/pkgs/development/libraries/libuv/default.nix +++ b/pkgs/development/libraries/libuv/default.nix @@ -1,14 +1,14 @@ { stdenv, lib, fetchFromGitHub, autoconf, automake, libtool, pkgconfig, ApplicationServices, CoreServices }: stdenv.mkDerivation rec { - version = "1.38.0"; + version = "1.38.1"; pname = "libuv"; src = fetchFromGitHub { owner = pname; repo = pname; rev = "v${version}"; - sha256 = "04598jglikma5plfiprnw4pcxwp7b6aqxphxs65pdd5xira6dz0s"; + sha256 = "0cvabjhi53qw94zyjkqamx0c607ayydfb4f3djx2gj8ab2p7s29n"; }; postPatch = let From 82153b87d225bb52feb02692edbead05f78dc938 Mon Sep 17 00:00:00 2001 From: "R. RyanTM" Date: Fri, 3 Jul 2020 12:59:19 +0000 Subject: [PATCH 028/103] glib: 2.64.3 -> 2.64.4 --- pkgs/development/libraries/glib/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/glib/default.nix b/pkgs/development/libraries/glib/default.nix index 47e372cf9a3..f7b0667741d 100644 --- a/pkgs/development/libraries/glib/default.nix +++ b/pkgs/development/libraries/glib/default.nix @@ -48,11 +48,11 @@ in stdenv.mkDerivation rec { pname = "glib"; - version = "2.64.3"; + version = "2.64.4"; src = fetchurl { url = "mirror://gnome/sources/glib/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "08pbgiv5m3rica4ydvwvpq5mrxbyswx7l1jzjc2ch52xjabvr77y"; + sha256 = "0l6fggcgdnjif9kzy4crq7520f43bbrgzxz0c821ya3jn8jv7q7p"; }; patches = optionals stdenv.isDarwin [ From aa02946de1df6ec8c27ec8760ec3e7e10e18b4b4 Mon Sep 17 00:00:00 2001 From: "R. RyanTM" Date: Fri, 3 Jul 2020 16:25:48 +0000 Subject: [PATCH 029/103] gssdp: 1.2.2 -> 1.2.3 --- pkgs/development/libraries/gssdp/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/gssdp/default.nix b/pkgs/development/libraries/gssdp/default.nix index 8ad92eb833a..0a808b71a71 100644 --- a/pkgs/development/libraries/gssdp/default.nix +++ b/pkgs/development/libraries/gssdp/default.nix @@ -16,13 +16,13 @@ stdenv.mkDerivation rec { pname = "gssdp"; - version = "1.2.2"; + version = "1.2.3"; outputs = [ "out" "bin" "dev" "devdoc" ]; src = fetchurl { url = "mirror://gnome/sources/gssdp/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "195hi10vrsvh6i927mm6rm1ld5sxah3h5sr3bsjm90vb8lxrxfya"; + sha256 = "1s57i8a8wnnxnsfl27cq4503dkdlzbrhry5zpg23sfqfffvdqqx2"; }; nativeBuildInputs = [ From b1c6615feb6cc412ef102ab34be24e952cabf39b Mon Sep 17 00:00:00 2001 From: "R. RyanTM" Date: Sun, 5 Jul 2020 06:29:10 +0000 Subject: [PATCH 030/103] libinput: 1.15.5 -> 1.15.6 --- pkgs/development/libraries/libinput/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/libinput/default.nix b/pkgs/development/libraries/libinput/default.nix index f490dfbd23a..516fbeb7c3a 100644 --- a/pkgs/development/libraries/libinput/default.nix +++ b/pkgs/development/libraries/libinput/default.nix @@ -27,11 +27,11 @@ in with stdenv.lib; stdenv.mkDerivation rec { pname = "libinput"; - version = "1.15.5"; + version = "1.15.6"; src = fetchurl { url = "https://www.freedesktop.org/software/libinput/${pname}-${version}.tar.xz"; - sha256 = "15ww4jl3lcxyi8m8idg8canklbqv729gnwpkz7r98c1w8a7zq3m9"; + sha256 = "073z61dw46cyq0635a5n1mw7hw4qdgr58gbwwb3ds5v3d8hymvdf"; }; outputs = [ "bin" "out" "dev" ]; From f25b933982c2b1bccdac7434cc70bb7be3e98de9 Mon Sep 17 00:00:00 2001 From: "R. RyanTM" Date: Fri, 3 Jul 2020 22:17:23 +0000 Subject: [PATCH 031/103] lcms2: 2.10 -> 2.11 --- pkgs/development/libraries/lcms2/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/lcms2/default.nix b/pkgs/development/libraries/lcms2/default.nix index 2584e26b3c0..0cf62285890 100644 --- a/pkgs/development/libraries/lcms2/default.nix +++ b/pkgs/development/libraries/lcms2/default.nix @@ -1,11 +1,11 @@ { stdenv, fetchurl, libtiff, libjpeg, zlib }: stdenv.mkDerivation rec { - name = "lcms2-2.10"; + name = "lcms2-2.11"; src = fetchurl { url = "mirror://sourceforge/lcms/${name}.tar.gz"; - sha256 = "0ipkw2r8h3yhm4vn5nx04dz5s943x9fw023fhrrnjz2c97yi3m2h"; + sha256 = "0bkpf315925lhmd9i4mzjnkq5dh255r1lms0c0vzzkfpwk4bjjfw"; }; outputs = [ "bin" "dev" "out" ]; From 253431df9284213a4048319a0e1cfd0b3a5e8c9b Mon Sep 17 00:00:00 2001 From: "R. RyanTM" Date: Fri, 3 Jul 2020 05:59:36 +0000 Subject: [PATCH 032/103] dbus: 1.12.18 -> 1.12.20 --- 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 049623d3d91..3598d8d938e 100644 --- a/pkgs/development/libraries/dbus/default.nix +++ b/pkgs/development/libraries/dbus/default.nix @@ -20,11 +20,11 @@ assert enableSystemd -> systemd != null; stdenv.mkDerivation rec { pname = "dbus"; - version = "1.12.18"; + version = "1.12.20"; src = fetchurl { url = "https://dbus.freedesktop.org/releases/dbus/dbus-${version}.tar.gz"; - sha256 = "01jkm6shm76bl3cflmnn37dv6nkph0w1akbqpklyac02hiq4vkv4"; + sha256 = "1zp5gpx61v1cpqf2zwb1cidhp9xylvw49d3zydkxqk6b1qa20xpp"; }; patches = lib.optional stdenv.isSunOS ./implement-getgrouplist.patch; From 0a5fd4c12e6fd5c9067c03dc3713a266ab72c4b7 Mon Sep 17 00:00:00 2001 From: "R. RyanTM" Date: Thu, 2 Jul 2020 23:08:49 +0000 Subject: [PATCH 033/103] bison: 3.6.3 -> 3.6.4 --- pkgs/development/tools/parsing/bison/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/tools/parsing/bison/default.nix b/pkgs/development/tools/parsing/bison/default.nix index 0b6476998bf..ba2caac96c9 100644 --- a/pkgs/development/tools/parsing/bison/default.nix +++ b/pkgs/development/tools/parsing/bison/default.nix @@ -2,11 +2,11 @@ stdenv.mkDerivation rec { pname = "bison"; - version = "3.6.3"; + version = "3.6.4"; src = fetchurl { url = "mirror://gnu/${pname}/${pname}-${version}.tar.gz"; - sha256 = "0qry9ar16dpg9nzrq7jh3fqh4ah2xvcf6v00fc81z08yjd1ljk2b"; + sha256 = "1s8kmfhg7a58vm65fc977ckp8zspy8diayrcjhs3cgrqnmjdx0w1"; }; nativeBuildInputs = [ m4 perl ] ++ stdenv.lib.optional stdenv.isSunOS help2man; From 573bff4f040c91d45bb9e6033dc9e5332589c6aa Mon Sep 17 00:00:00 2001 From: "R. RyanTM" Date: Thu, 2 Jul 2020 14:14:16 +0000 Subject: [PATCH 034/103] libwacom: 1.3 -> 1.4.1 --- pkgs/development/libraries/libwacom/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/libwacom/default.nix b/pkgs/development/libraries/libwacom/default.nix index c33317550b5..e762ead1923 100644 --- a/pkgs/development/libraries/libwacom/default.nix +++ b/pkgs/development/libraries/libwacom/default.nix @@ -2,7 +2,7 @@ stdenv.mkDerivation rec { pname = "libwacom"; - version = "1.3"; + version = "1.4.1"; outputs = [ "out" "dev" ]; @@ -10,7 +10,7 @@ stdenv.mkDerivation rec { owner = "linuxwacom"; repo = "libwacom"; rev = "libwacom-${version}"; - sha256 = "12g8jb67wj6sgg9ar2w8kkw1m1431rn9nd0j64qkrd3vy9g4l0hk"; + sha256 = "0m96zjj832l18rzg9l31ambm6rv9vnh2a1sfk8531da8m347z287"; }; nativeBuildInputs = [ pkgconfig meson ninja doxygen ]; From a60b1860110be4ef32fe98df9d17235cd55c795a Mon Sep 17 00:00:00 2001 From: Lancelot SIX Date: Mon, 6 Jul 2020 21:32:16 +0100 Subject: [PATCH 035/103] libgcrypt: 1.8.5 -> 1.8.6 See https://lists.gnu.org/archive/html/info-gnu/2020-07/msg00001.html for release information --- pkgs/development/libraries/libgcrypt/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/libgcrypt/default.nix b/pkgs/development/libraries/libgcrypt/default.nix index 49aaec66c29..d49fa37325a 100644 --- a/pkgs/development/libraries/libgcrypt/default.nix +++ b/pkgs/development/libraries/libgcrypt/default.nix @@ -6,11 +6,11 @@ assert enableCapabilities -> stdenv.isLinux; stdenv.mkDerivation rec { pname = "libgcrypt"; - version = "1.8.5"; + version = "1.8.6"; src = fetchurl { url = "mirror://gnupg/libgcrypt/${pname}-${version}.tar.bz2"; - sha256 = "1hvsazms1bfd769q0ngl0r9g5i4m9mpz9jmvvrdzyzk3rfa2ljiv"; + sha256 = "0xdrsxgqw5v7szshjdgdv60rgpvzzaqic32ahqrzr6bvc402gfhc"; }; outputs = [ "out" "dev" "info" ]; From 519606eb119aa38845ba1c10bd0a225a4a343d00 Mon Sep 17 00:00:00 2001 From: worldofpeace Date: Tue, 7 Jul 2020 11:15:15 -0400 Subject: [PATCH 036/103] vala: 0.48.1 -> 0.48.7 https://gitlab.gnome.org/GNOME/vala/-/blob/0.48.7/NEWS --- pkgs/development/compilers/vala/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/compilers/vala/default.nix b/pkgs/development/compilers/vala/default.nix index 6afc14688ae..3b4cd1a5a79 100644 --- a/pkgs/development/compilers/vala/default.nix +++ b/pkgs/development/compilers/vala/default.nix @@ -123,8 +123,8 @@ in rec { }; vala_0_48 = generic { - version = "0.48.1"; - sha256 = "1m3igqlryj1161ymksy7666v7mp9l6gy0yfi4cvgd3wh1963jmzb"; + version = "0.48.7"; + sha256 = "0lswkb7gj0chas9n3l3dbrm9l71hs77adhvm2v600id2ipi37pi8"; }; vala = vala_0_48; From 9002e5c5335f682e8fabddf31148e6bc90f48b40 Mon Sep 17 00:00:00 2001 From: "R. RyanTM" Date: Sat, 4 Jul 2020 23:34:18 +0000 Subject: [PATCH 037/103] flrig: 1.3.50 -> 1.3.51 --- pkgs/applications/radio/flrig/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/radio/flrig/default.nix b/pkgs/applications/radio/flrig/default.nix index 968b2fd0df9..d95d894bdef 100644 --- a/pkgs/applications/radio/flrig/default.nix +++ b/pkgs/applications/radio/flrig/default.nix @@ -6,12 +6,12 @@ }: stdenv.mkDerivation rec { - version = "1.3.50"; + version = "1.3.51"; pname = "flrig"; src = fetchurl { url = "mirror://sourceforge/fldigi/${pname}-${version}.tar.gz"; - sha256 = "0fzrknzzi8kmzmrcfpc8rxr7v4a4ny6z6z5q5qwh95sp2kn2qzp9"; + sha256 = "0aq4x0ai9q08ypfhzfj2inc4z3q39zq1l6h9as1kil9yn4zbay61"; }; buildInputs = [ From 8d28b320b90802a07167f0559a06f51f71fcd0f6 Mon Sep 17 00:00:00 2001 From: "R. RyanTM" Date: Tue, 7 Jul 2020 22:36:41 +0000 Subject: [PATCH 038/103] vim: 8.2.0701 -> 8.2.1123 --- pkgs/applications/editors/vim/common.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/editors/vim/common.nix b/pkgs/applications/editors/vim/common.nix index 47e71e2da4d..5be7078173e 100644 --- a/pkgs/applications/editors/vim/common.nix +++ b/pkgs/applications/editors/vim/common.nix @@ -1,12 +1,12 @@ { lib, fetchFromGitHub }: rec { - version = "8.2.0701"; + version = "8.2.1123"; src = fetchFromGitHub { owner = "vim"; repo = "vim"; rev = "v${version}"; - sha256 = "1cbh2nhbvhp4kclc9fd8gqij2vi11c5zwdwn1nzg805k06hwmsrp"; + sha256 = "01fgfm5pnmbq12z84d7g3x0iq5gj1irdyihx41c4r2bww55v5q0c"; }; enableParallelBuilding = true; From a58c2d22d49bef2f65768c88258cd1885088df66 Mon Sep 17 00:00:00 2001 From: Martin Weinelt Date: Fri, 8 May 2020 20:18:54 +0200 Subject: [PATCH 039/103] =?UTF-8?q?networkmanager:=201.22.10=20=E2=86=92?= =?UTF-8?q?=201.24.0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../networking/network-manager/default.nix | 7 ++-- .../network-manager/fix-install-paths.patch | 4 +-- .../network-manager/fix-paths.patch | 33 +++++++++++++------ 3 files changed, 28 insertions(+), 16 deletions(-) diff --git a/pkgs/tools/networking/network-manager/default.nix b/pkgs/tools/networking/network-manager/default.nix index baf2128153a..a923a1b70c0 100644 --- a/pkgs/tools/networking/network-manager/default.nix +++ b/pkgs/tools/networking/network-manager/default.nix @@ -10,11 +10,11 @@ let pythonForDocs = python3.withPackages (pkgs: with pkgs; [ pygobject3 ]); in stdenv.mkDerivation rec { pname = "network-manager"; - version = "1.22.10"; + version = "1.24.0"; src = fetchurl { url = "mirror://gnome/sources/NetworkManager/${stdenv.lib.versions.majorMinor version}/NetworkManager-${version}.tar.xz"; - sha256 = "0xyaizyp3yz6x3pladw3nvl3hf4n5g140zx9jnxfp9qvag0wqa9b"; + sha256 = "06044fl60bjlj7c6rqqfbm5795h61h6yzp7ch392hzcnm46wwhn3"; }; outputs = [ "out" "dev" "devdoc" "man" "doc" ]; @@ -41,7 +41,6 @@ in stdenv.mkDerivation rec { "-Dcrypto=gnutls" "-Dsession_tracking=systemd" "-Dmodem_manager=true" - "-Dpolkit_agent=true" "-Dnmtui=true" "-Ddocs=true" "-Dtests=no" @@ -54,7 +53,7 @@ in stdenv.mkDerivation rec { patches = [ (substituteAll { src = ./fix-paths.patch; - inherit iputils kmod openconnect ethtool gnused systemd; + inherit iputils kmod openconnect ethtool gnused systemd polkit; inherit runtimeShell; }) diff --git a/pkgs/tools/networking/network-manager/fix-install-paths.patch b/pkgs/tools/networking/network-manager/fix-install-paths.patch index 02a006c1c3d..4e80247cf14 100644 --- a/pkgs/tools/networking/network-manager/fix-install-paths.patch +++ b/pkgs/tools/networking/network-manager/fix-install-paths.patch @@ -1,8 +1,8 @@ diff --git a/meson.build b/meson.build -index 0af69f35d..9ab239c8a 100644 +index a2d925a7e..5a65cd2fe 100644 --- a/meson.build +++ b/meson.build -@@ -912,9 +912,9 @@ meson.add_install_script( +@@ -959,9 +959,9 @@ meson.add_install_script( join_paths('tools', 'meson-post-install.sh'), nm_datadir, nm_bindir, diff --git a/pkgs/tools/networking/network-manager/fix-paths.patch b/pkgs/tools/networking/network-manager/fix-paths.patch index af35fc0a36b..1207a2258ec 100644 --- a/pkgs/tools/networking/network-manager/fix-paths.patch +++ b/pkgs/tools/networking/network-manager/fix-paths.patch @@ -1,8 +1,8 @@ diff --git a/clients/common/nm-vpn-helpers.c b/clients/common/nm-vpn-helpers.c -index ffae5f553..ba1093e4d 100644 +index fbcb06479..f13f32408 100644 --- a/clients/common/nm-vpn-helpers.c +++ b/clients/common/nm-vpn-helpers.c -@@ -203,10 +203,7 @@ nm_vpn_openconnect_authenticate_helper (const char *host, +@@ -213,10 +213,7 @@ nm_vpn_openconnect_authenticate_helper (const char *host, NULL, }; @@ -40,10 +40,10 @@ index 91ebd9a36..5201a56c3 100644 ExecStart=@sbindir@/NetworkManager --no-daemon Restart=on-failure diff --git a/libnm/meson.build b/libnm/meson.build -index 51ca46d2b..0c04cc216 100644 +index 406766c70..44c158f8a 100644 --- a/libnm/meson.build +++ b/libnm/meson.build -@@ -261,7 +261,7 @@ if enable_introspection +@@ -265,7 +265,7 @@ if enable_introspection name, input: libnm_gir[0], output: name, @@ -52,7 +52,7 @@ index 51ca46d2b..0c04cc216 100644 depends: libnm_gir, ) -@@ -270,7 +270,7 @@ if enable_introspection +@@ -274,7 +274,7 @@ if enable_introspection name, input: [libnm_gir[0], nm_settings_docs_overrides], output: name, @@ -61,14 +61,27 @@ index 51ca46d2b..0c04cc216 100644 depends: libnm_gir, ) endif +diff --git a/meson.build b/meson.build +index a2d925a7e..23c85f128 100644 +--- a/meson.build ++++ b/meson.build +@@ -522,7 +522,7 @@ polkit_agent_dep = dependency('polkit-agent-1', version: '>= 0.97', required : f + if polkit_agent_dep.found() + config_h.set_quoted('POLKIT_PACKAGE_PREFIX', polkit_agent_dep.get_pkgconfig_variable('prefix')) + else +- config_h.set_quoted('POLKIT_PACKAGE_PREFIX', '/usr') ++ config_h.set_quoted('POLKIT_PACKAGE_PREFIX', '@polkit@') + endif + + diff --git a/src/devices/nm-device.c b/src/devices/nm-device.c -index e7a4a059a..0a8f8b7c6 100644 +index 44e5183ec..e725845e4 100644 --- a/src/devices/nm-device.c +++ b/src/devices/nm-device.c -@@ -13179,14 +13179,14 @@ nm_device_start_ip_check (NMDevice *self) +@@ -13493,14 +13493,14 @@ nm_device_start_ip_check (NMDevice *self) gw = nm_ip4_config_best_default_route_get (priv->ip_config_4); if (gw) { - nm_utils_inet4_ntop (NMP_OBJECT_CAST_IP4_ROUTE (gw)->gateway, buf); + _nm_utils_inet4_ntop (NMP_OBJECT_CAST_IP4_ROUTE (gw)->gateway, buf); - ping_binary = nm_utils_find_helper ("ping", "/usr/bin/ping", NULL); + ping_binary = "@iputils@/bin/ping"; log_domain = LOGD_IP4; @@ -76,14 +89,14 @@ index e7a4a059a..0a8f8b7c6 100644 } else if (priv->ip_config_6 && priv->ip_state_6 == NM_DEVICE_IP_STATE_DONE) { gw = nm_ip6_config_best_default_route_get (priv->ip_config_6); if (gw) { - nm_utils_inet6_ntop (&NMP_OBJECT_CAST_IP6_ROUTE (gw)->gateway, buf); + _nm_utils_inet6_ntop (&NMP_OBJECT_CAST_IP6_ROUTE (gw)->gateway, buf); - ping_binary = nm_utils_find_helper ("ping6", "/usr/bin/ping6", NULL); + ping_binary = "@iputils@/bin/ping"; log_domain = LOGD_IP6; } } diff --git a/src/nm-core-utils.c b/src/nm-core-utils.c -index fb92289f0..c91b27b09 100644 +index 415e1dc41..995eb6ecf 100644 --- a/src/nm-core-utils.c +++ b/src/nm-core-utils.c @@ -336,7 +336,7 @@ nm_utils_modprobe (GError **error, gboolean suppress_error_logging, const char * From 7daccdbcc9d618be1b3ac3b5e116894520351cad Mon Sep 17 00:00:00 2001 From: worldofpeace Date: Wed, 8 Jul 2020 01:45:00 -0400 Subject: [PATCH 040/103] networkmanager: 1.24.0 -> 1.24.2 --- pkgs/tools/networking/network-manager/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/tools/networking/network-manager/default.nix b/pkgs/tools/networking/network-manager/default.nix index a923a1b70c0..f3169cf6a79 100644 --- a/pkgs/tools/networking/network-manager/default.nix +++ b/pkgs/tools/networking/network-manager/default.nix @@ -10,11 +10,11 @@ let pythonForDocs = python3.withPackages (pkgs: with pkgs; [ pygobject3 ]); in stdenv.mkDerivation rec { pname = "network-manager"; - version = "1.24.0"; + version = "1.24.2"; src = fetchurl { url = "mirror://gnome/sources/NetworkManager/${stdenv.lib.versions.majorMinor version}/NetworkManager-${version}.tar.xz"; - sha256 = "06044fl60bjlj7c6rqqfbm5795h61h6yzp7ch392hzcnm46wwhn3"; + sha256 = "1cnf0cif0l45wxf823xqri3ly9n0ai3ndxx34qs3yk1m85f0giic"; }; outputs = [ "out" "dev" "devdoc" "man" "doc" ]; From 3abffce0d6411e208039b8aa938b3eea8d6295ed Mon Sep 17 00:00:00 2001 From: Jan Tojnar Date: Mon, 6 Jul 2020 04:34:26 +0200 Subject: [PATCH 041/103] libmbim: 1.23.900 -> 1.24.0 * Enable introspection * Clean up https://lists.freedesktop.org/archives/libmbim-devel/2020-June/001105.html --- pkgs/development/libraries/libmbim/default.nix | 18 ++++++++++++++---- 1 file changed, 14 insertions(+), 4 deletions(-) diff --git a/pkgs/development/libraries/libmbim/default.nix b/pkgs/development/libraries/libmbim/default.nix index 8750ee599ce..0cc911fbd01 100644 --- a/pkgs/development/libraries/libmbim/default.nix +++ b/pkgs/development/libraries/libmbim/default.nix @@ -1,23 +1,33 @@ -{ stdenv, fetchurl, pkgconfig, glib, python3, systemd, libgudev }: +{ stdenv +, fetchurl +, pkg-config +, gobject-introspection +, glib +, python3 +, systemd +, libgudev +}: stdenv.mkDerivation rec { pname = "libmbim"; - version = "1.23.900"; + version = "1.24.0"; src = fetchurl { url = "https://www.freedesktop.org/software/libmbim/${pname}-${version}.tar.xz"; - sha256 = "0ikzjs44q44cj4m786gvm575a7x61rgmav6b60n2y74pgqvj3791"; + sha256 = "15hi1vq327drgi6h4dsi74lb7wg0sxd7mipa3irh5zgc7gn5qj9x"; }; outputs = [ "out" "dev" "man" ]; configureFlags = [ "--with-udev-base-dir=${placeholder "out"}/lib/udev" + "--enable-introspection" ]; nativeBuildInputs = [ - pkgconfig + pkg-config python3 + gobject-introspection ]; buildInputs = [ From adda7cf634f42d863ba138d71ce202c138b657a0 Mon Sep 17 00:00:00 2001 From: "R. RyanTM" Date: Thu, 9 Jul 2020 18:40:22 +0000 Subject: [PATCH 042/103] libevent: 2.1.11 -> 2.1.12 --- pkgs/development/libraries/libevent/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/libevent/default.nix b/pkgs/development/libraries/libevent/default.nix index eaa2933505c..880ba746bb9 100644 --- a/pkgs/development/libraries/libevent/default.nix +++ b/pkgs/development/libraries/libevent/default.nix @@ -6,11 +6,11 @@ assert sslSupport -> openssl != null; stdenv.mkDerivation rec { pname = "libevent"; - version = "2.1.11"; + version = "2.1.12"; src = fetchurl { url = "https://github.com/libevent/libevent/releases/download/release-${version}-stable/libevent-${version}-stable.tar.gz"; - sha256 = "0g988zqm45sj1hlhhz4il5z4dpi5dl74hzjwzl4md37a09iaqnx6"; + sha256 = "1fq30imk8zd26x8066di3kpc5zyfc5z6frr3zll685zcx4dxxrlj"; }; # libevent_openssl is moved into its own output, so that openssl isn't present From 9c833ae6ae8bb66420346209506e439660c3c0cd Mon Sep 17 00:00:00 2001 From: "R. RyanTM" Date: Fri, 10 Jul 2020 07:03:32 +0000 Subject: [PATCH 043/103] poppler: 0.89.0 -> 0.90.0 --- pkgs/development/libraries/poppler/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/poppler/default.nix b/pkgs/development/libraries/poppler/default.nix index 71ff58eaebe..420cf731454 100644 --- a/pkgs/development/libraries/poppler/default.nix +++ b/pkgs/development/libraries/poppler/default.nix @@ -12,11 +12,11 @@ let in stdenv.mkDerivation rec { name = "poppler-${suffix}-${version}"; - version = "0.89.0"; # beware: updates often break cups-filters build, check texlive and scribusUnstable too! + version = "0.90.0"; # beware: updates often break cups-filters build, check texlive and scribusUnstable too! src = fetchurl { url = "${meta.homepage}/poppler-${version}.tar.xz"; - sha256 = "0p4vxyl5cw8jgcy6hjb35236bhv9xy9xc21vsk2jqy1p8lv318pv"; + sha256 = "11cnk18qnhkhari1102syk5n3k7906jpm05cr8i4vdrh6fnv1vcl"; }; outputs = [ "out" "dev" ]; From 483dbe92370ef6c4a1d6f96a3973bbca4b8ae3f7 Mon Sep 17 00:00:00 2001 From: Michael Weiss Date: Sun, 21 Jun 2020 16:25:50 +0200 Subject: [PATCH 044/103] systemd: Allow setting the transient hostname via DHCP This permits using method_set_hostname but still denies method_set_static_hostname. As a result DHCP clients can now always set the transient hostname via the SetHostname method of the D-Bus interface of systemd-hostnamed (org.freedesktop.hostname1.set-hostname). If the NixOS option networking.hostName is set to an empty string (or "localhost") the static hostname (kernel.hostname but NOT /etc/hostname) will additionally be updated (this is intended). From "man hostnamectl": The transient hostname is a fallback value received from network configuration. If a static hostname is set, and is valid (something other than localhost), then the transient hostname is not used. Fix #74847. Note: It's possible to restrict access to the org.freedesktop.hostname1 interface using Polkit rules. --- nixos/tests/systemd.nix | 5 +++++ ...ed-localed-timedated-disable-methods-that-cha.patch | 10 ---------- 2 files changed, 5 insertions(+), 10 deletions(-) diff --git a/nixos/tests/systemd.nix b/nixos/tests/systemd.nix index ca2e36a443e..24949c4a9f6 100644 --- a/nixos/tests/systemd.nix +++ b/nixos/tests/systemd.nix @@ -97,6 +97,11 @@ import ./make-test-python.nix ({ pkgs, ... }: { re.search(r"^Filesystem state: *clean$", extinfo, re.MULTILINE) is not None ), ("File system was not cleanly unmounted: " + extinfo) + # Regression test for https://github.com/NixOS/nixpkgs/pull/91232 + with subtest("setting transient hostnames works"): + machine.succeed("hostnamectl set-hostname --transient machine-transient") + machine.fail("hostnamectl set-hostname machine-all") + with subtest("systemd-shutdown works"): machine.shutdown() machine.wait_for_unit("multi-user.target") diff --git a/pkgs/os-specific/linux/systemd/0007-hostnamed-localed-timedated-disable-methods-that-cha.patch b/pkgs/os-specific/linux/systemd/0007-hostnamed-localed-timedated-disable-methods-that-cha.patch index 70fc147232b..cef3280aba8 100644 --- a/pkgs/os-specific/linux/systemd/0007-hostnamed-localed-timedated-disable-methods-that-cha.patch +++ b/pkgs/os-specific/linux/systemd/0007-hostnamed-localed-timedated-disable-methods-that-cha.patch @@ -14,16 +14,6 @@ diff --git a/src/hostname/hostnamed.c b/src/hostname/hostnamed.c index 21f6471495..8c5af7619f 100644 --- a/src/hostname/hostnamed.c +++ b/src/hostname/hostnamed.c -@@ -422,6 +422,9 @@ static int method_set_hostname(sd_bus_message *m, void *userdata, sd_bus_error * - if (r < 0) - return r; - -+ return sd_bus_error_setf(error, SD_BUS_ERROR_NOT_SUPPORTED, -+ "Changing system settings via systemd is not supported on NixOS."); -+ - if (isempty(name)) - name = c->data[PROP_STATIC_HOSTNAME]; - @@ -478,6 +481,9 @@ static int method_set_static_hostname(sd_bus_message *m, void *userdata, sd_bus_ if (r < 0) return r; From 27b14ee82a6443462349f1ef908d860576c210f6 Mon Sep 17 00:00:00 2001 From: worldofpeace Date: Tue, 19 Nov 2019 20:45:30 -0500 Subject: [PATCH 045/103] fontconfig: 2.12.6 -> 2.13.92 --- .../libraries/fontconfig/default.nix | 56 ++++++++++++++++--- .../libraries/fontconfig/fix-joypixels.patch | 23 -------- 2 files changed, 47 insertions(+), 32 deletions(-) delete mode 100644 pkgs/development/libraries/fontconfig/fix-joypixels.patch diff --git a/pkgs/development/libraries/fontconfig/default.nix b/pkgs/development/libraries/fontconfig/default.nix index 0518cb257ab..37f88a770fc 100644 --- a/pkgs/development/libraries/fontconfig/default.nix +++ b/pkgs/development/libraries/fontconfig/default.nix @@ -1,5 +1,14 @@ -{ stdenv, substituteAll, fetchurl -, pkgconfig, freetype, expat, libxslt, gperf, dejavu_fonts +{ stdenv +, fetchpatch +, substituteAll +, fetchurl +, pkg-config +, freetype +, expat +, libxslt +, gperf +, dejavu_fonts +, autoreconfHook }: /** Font configuration scheme @@ -18,11 +27,11 @@ let in stdenv.mkDerivation rec { pname = "fontconfig"; - version = "2.12.6"; + version = "2.13.92"; src = fetchurl { - url = "http://fontconfig.org/release/${pname}-${version}.tar.bz2"; - sha256 = "05zh65zni11kgnhg726gjbrd55swspdvhqbcnj5a5xh8gn03036g"; + url = "http://fontconfig.org/release/${pname}-${version}.tar.xz"; + sha256 = "0kkfsvxcvcphm9zcgsh646gix3qn4spz555wa1jp5hbq70l62vjh"; }; patches = [ @@ -31,15 +40,44 @@ stdenv.mkDerivation rec { inherit configVersion; }) + # Fix fonts not being loaded when missing included configs that have ignore_missing="yes". + # https://bugzilla.redhat.com/show_bug.cgi?id=1744377 + (fetchpatch { + url = "https://gitlab.freedesktop.org/fontconfig/fontconfig/commit/fcada522913e5e07efa6367eff87ace9f06d24c8.patch"; + sha256 = "1jbm3vw45b3qjnqrh2545v1k8vmb29c09v2wj07jnrq3lnchbvmn"; + }) + + # Register JoyPixels as an emoji font. # https://gitlab.freedesktop.org/fontconfig/fontconfig/merge_requests/67 - ./fix-joypixels.patch + (fetchpatch { + url = "https://gitlab.freedesktop.org/fontconfig/fontconfig/commit/65087ac7ce4cc5f2109967c1380b474955dcb590.patch"; + sha256 = "1dkrbqx1c1d8yfnx0igvv516wanw2ksrpm3fbpm2h9nw0hccwqvm"; + }) + + # Fix invalid DTD in reset-dirs. + # https://gitlab.freedesktop.org/fontconfig/fontconfig/merge_requests/78 + (fetchpatch { + url = "https://gitlab.freedesktop.org/fontconfig/fontconfig/commit/a4aa66a858f1ecd375c5efe5916398281f73f794.patch"; + sha256 = "1j4ky8jhpllfm1lh2if34xglh2hl79nsa0xxgzxpj9sx6h4v99j5"; + }) ]; outputs = [ "bin" "dev" "lib" "out" ]; # $out contains all the config - propagatedBuildInputs = [ freetype ]; - nativeBuildInputs = [ pkgconfig gperf libxslt ]; - buildInputs = [ expat ]; + nativeBuildInputs = [ + gperf + libxslt + pkg-config + autoreconfHook + ]; + + buildInputs = [ + expat + ]; + + propagatedBuildInputs = [ + freetype + ]; configureFlags = [ "--with-arch=${stdenv.hostPlatform.parsed.cpu.name}" diff --git a/pkgs/development/libraries/fontconfig/fix-joypixels.patch b/pkgs/development/libraries/fontconfig/fix-joypixels.patch deleted file mode 100644 index d5654063fe8..00000000000 --- a/pkgs/development/libraries/fontconfig/fix-joypixels.patch +++ /dev/null @@ -1,23 +0,0 @@ ---- a/conf.d/45-generic.conf -+++ b/conf.d/45-generic.conf -@@ -5,6 +5,10 @@ - - - -+ -+ JoyPixels -+ emoji -+ - - Emoji Two - emoji ---- a/conf.d/60-generic.conf -+++ b/conf.d/60-generic.conf -@@ -29,6 +29,7 @@ - - emoji - -+ JoyPixels - Emoji Two - Emoji One - From 87786bc47f70646fefcbb1dbafd7d7326b97fc7b Mon Sep 17 00:00:00 2001 From: worldofpeace Date: Fri, 22 Nov 2019 16:35:27 -0500 Subject: [PATCH 046/103] fontconfig: bump configVersion to 2.13 --- pkgs/development/libraries/fontconfig/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/development/libraries/fontconfig/default.nix b/pkgs/development/libraries/fontconfig/default.nix index 37f88a770fc..b1bcf74fed4 100644 --- a/pkgs/development/libraries/fontconfig/default.nix +++ b/pkgs/development/libraries/fontconfig/default.nix @@ -23,7 +23,7 @@ */ let - configVersion = "2.11"; # bump whenever fontconfig breaks compatibility with older configurations + configVersion = "2.13"; # bump whenever fontconfig breaks compatibility with older configurations in stdenv.mkDerivation rec { pname = "fontconfig"; From edf2541f02c6b24ea791710d5cadeae36f9b1a3a Mon Sep 17 00:00:00 2001 From: Jan Tojnar Date: Wed, 27 May 2020 04:35:25 +0200 Subject: [PATCH 047/103] fontconfig: Only read versioned config dirs Falling back to unversioned `/etc/fonts/conf.d` when versioned one does not exist is problematic since it only occurs on non-NixOS systems and those are likely to have a different version of fontconfig. When those versions use incompatible elements in the config, apps using fontconfig will crash. Instead, we are now falling back to the in-package `fonts.conf` file that loads both the versioned global `conf.d` directory and the in-package `conf.d` since using upstream settings on non-NixOS is preferable to not being able to use apps there. In fact, we would not even need to link `fonts.conf`, as the in-package `fonts.conf` will be always used unless someone creates the global one manually (the option is still retained if one wants to write a custom NixOS module and to avoid unnecessary stat call on NixOS). Additionally, since the `fonts.conf` will always load `conf.d` from the package, we no longer need to install them to sytem `/etc` in the module. This needed some mucking with `50-user.conf` which disables configs in user directories (a good thing IMO, NixOS module will turn it back on) but otherwise, it is cleaner. The files are still prioritized by their name, regardless of their location. See https://github.com/NixOS/nixpkgs/pull/73795#issuecomment-634370125 for more information. --- nixos/modules/config/fonts/fontconfig.nix | 16 ++++------- .../libraries/fontconfig/config-compat.patch | 28 ++++++++++++------- .../libraries/fontconfig/default.nix | 14 ++++++++-- .../libraries/fontconfig/make-fonts-conf.xsl | 3 ++ 4 files changed, 39 insertions(+), 22 deletions(-) diff --git a/nixos/modules/config/fonts/fontconfig.nix b/nixos/modules/config/fonts/fontconfig.nix index ac2a024eaa8..52d284f739b 100644 --- a/nixos/modules/config/fonts/fontconfig.nix +++ b/nixos/modules/config/fonts/fontconfig.nix @@ -214,15 +214,7 @@ let # fontconfig default config files ln -s ${supportPkg.out}/etc/fonts/conf.d/*.conf \ $support_folder/ - ln -s ${latestPkg.out}/etc/fonts/conf.d/*.conf \ - $latest_folder/ - - # update latest 51-local.conf path to look at the latest local.conf - rm $latest_folder/51-local.conf - - substitute ${latestPkg.out}/etc/fonts/conf.d/51-local.conf \ - $latest_folder/51-local.conf \ - --replace local.conf /etc/fonts/${latestVersion}/local.conf + # Latest fontconfig is configured to look for the upstream defaults inside the package. # 00-nixos-cache.conf ln -s ${cacheConfSupport} \ @@ -236,7 +228,11 @@ let # 50-user.conf ${optionalString (!cfg.includeUserConf) '' rm $support_folder/50-user.conf - rm $latest_folder/50-user.conf + ''} + # Since latest fontconfig looks for default files inside the package, + # we had to move this one elsewhere to be able to exclude it here. + ${optionalString cfg.includeUserConf '' + ln -s ${latestPkg.out}/etc/fonts/conf.d.bak/50-user.conf $latest_folder/50-user.conf ''} # local.conf (indirect priority 51) diff --git a/pkgs/development/libraries/fontconfig/config-compat.patch b/pkgs/development/libraries/fontconfig/config-compat.patch index e86f08fb553..ddf7bc78180 100644 --- a/pkgs/development/libraries/fontconfig/config-compat.patch +++ b/pkgs/development/libraries/fontconfig/config-compat.patch @@ -1,17 +1,22 @@ -commit 05c6adf8104b4321d3a3716a7b9feb6bf223ed0c (HEAD, nixpkgs) -Author: Vladimír Čunát -Date: Tue Nov 4 12:24:25 2014 +0100 +From 2ff9b53ce755be183ef9274f7dd3f9ac537173f6 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= +Date: Tue, 4 Nov 2014 12:24:25 +0100 +Subject: [PATCH] add check for /etc/fonts/@configVersion@/fonts.conf - add check for /etc/fonts/@configVersion@/fonts.conf - - It's checked between FONTCONFIG_FILE and the usual /etc/fonts/fonts.conf. - Also, hardcode /etc/fonts/fonts.conf to prevent accidental override. +It's checked between FONTCONFIG_FILE and the in-package etc/fonts/fonts.conf. +The latter is used so that on non-NixOS distributions, fontconfig works at least +with upstream defaults, even when the global config is incompatible. + +Co-Authored-By: Jan Tojnar +--- + src/fccfg.c | 7 ++++++- + 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/fccfg.c b/src/fccfg.c -index 6377fd7..e9eb10a 100644 +index 342c996..98a1324 100644 --- a/src/fccfg.c +++ b/src/fccfg.c -@@ -2070,8 +2070,13 @@ FcConfigFilename (const FcChar8 *url) +@@ -2391,8 +2391,13 @@ FcConfigGetFilename (FcConfig *config, if (!url || !*url) { url = (FcChar8 *) getenv ("FONTCONFIG_FILE"); @@ -22,7 +27,10 @@ index 6377fd7..e9eb10a 100644 + } if (!url) - url = (FcChar8 *) FONTCONFIG_FILE; -+ url = (FcChar8 *) "/etc/fonts/fonts.conf"; ++ url = (FcChar8 *) FONTCONFIG_PATH "/" FONTCONFIG_FILE; } file = 0; +-- +2.26.2 + diff --git a/pkgs/development/libraries/fontconfig/default.nix b/pkgs/development/libraries/fontconfig/default.nix index b1bcf74fed4..f24518f546a 100644 --- a/pkgs/development/libraries/fontconfig/default.nix +++ b/pkgs/development/libraries/fontconfig/default.nix @@ -13,9 +13,10 @@ /** Font configuration scheme - ./config-compat.patch makes fontconfig try the following root configs, in order: - $FONTCONFIG_FILE, /etc/fonts/${configVersion}/fonts.conf, /etc/fonts/fonts.conf + $FONTCONFIG_FILE, /etc/fonts/${configVersion}/fonts.conf, ${fontconfig.out}/etc/fonts/fonts.conf This is done not to override config of pre-2.11 versions (which just blow up) - and still use *global* font configuration at both NixOS or non-NixOS. + and still use *global* font configuration at NixOS, + falling back to upstream defaults on non-NixOS. - NixOS creates /etc/fonts/${configVersion}/fonts.conf link to $out/etc/fonts/fonts.conf, and other modifications should go to /etc/fonts/${configVersion}/conf.d - See ./make-fonts-conf.xsl for config details. @@ -99,11 +100,20 @@ stdenv.mkDerivation rec { postInstall = '' cd "$out/etc/fonts" xsltproc --stringparam fontDirectories "${dejavu_fonts.minimal}" \ + --stringparam fontconfig "$out" \ --stringparam fontconfigConfigVersion "${configVersion}" \ --path $out/share/xml/fontconfig \ ${./make-fonts-conf.xsl} $out/etc/fonts/fonts.conf \ > fonts.conf.tmp mv fonts.conf.tmp $out/etc/fonts/fonts.conf + + # Make it easier to remove user config in NixOS module. + mkdir -p $out/etc/fonts/conf.d.bak + mv $out/etc/fonts/conf.d/50-user.conf $out/etc/fonts/conf.d.bak + + # update latest 51-local.conf path to look at the latest local.conf + substituteInPlace $out/etc/fonts/conf.d/51-local.conf \ + --replace local.conf /etc/fonts/${configVersion}/local.conf ''; passthru = { diff --git a/pkgs/development/libraries/fontconfig/make-fonts-conf.xsl b/pkgs/development/libraries/fontconfig/make-fonts-conf.xsl index dddbbe9e516..199cd1fd9e9 100644 --- a/pkgs/development/libraries/fontconfig/make-fonts-conf.xsl +++ b/pkgs/development/libraries/fontconfig/make-fonts-conf.xsl @@ -31,6 +31,9 @@ /etc/fonts//conf.d + + /etc/fonts/conf.d + fonts From 993deed7ab862c9657302e9ba7dd5169b6178729 Mon Sep 17 00:00:00 2001 From: Jan Tojnar Date: Mon, 15 Jun 2020 14:12:47 +0200 Subject: [PATCH 048/103] fontconfig: Load fonts also from FHS paths With previous patch, we no longer load non-versioned fonts.conf file to avoid incompatibilities but this also means fontconfig will not load system-wide installed fonts on non-NixOS systems. As a compromise, let's hardcode the FHS font paths to the built-in config so that the system fonts work there. Unlike with the system config we do not need to worry about compatibility as incompatible font files will be simply ignored. Of course there will still be disparity if the system install fonts to some other location than these two but I am afraid this is the best we can do. See https://github.com/NixOS/nixpkgs/pull/73795#issuecomment-635771967 for discussion. --- pkgs/development/libraries/fontconfig/make-fonts-conf.xsl | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pkgs/development/libraries/fontconfig/make-fonts-conf.xsl b/pkgs/development/libraries/fontconfig/make-fonts-conf.xsl index 199cd1fd9e9..6ec2e7ab515 100644 --- a/pkgs/development/libraries/fontconfig/make-fonts-conf.xsl +++ b/pkgs/development/libraries/fontconfig/make-fonts-conf.xsl @@ -43,6 +43,11 @@ ~/.nix-profile/lib/X11/fonts ~/.nix-profile/share/fonts + + + /usr/share/fonts + /usr/local/share/fonts + /nix/var/nix/profiles/default/lib/X11/fonts /nix/var/nix/profiles/default/share/fonts From 6f8345035bf07e4271fdf896d04e27f46a7e6e84 Mon Sep 17 00:00:00 2001 From: Jan Tojnar Date: Wed, 24 Jun 2020 01:01:35 +0200 Subject: [PATCH 049/103] fontconfig: remove its rules from configs ITS rules are used for extracting translatable strings and they have been moved to external files in 2.13.92 so they are not needed in the config files themselves. Removing them also cuts down on errors/warnings produced when using older versions of fontconfig (< 2.12.92). Now it will only complain about the description element but that is fortunately just a warning, not errors like the ones caused by the its attributes. Thanks to this, we can change the config version in NixOS module back to 2.11 allowing us to re-use the 2.13/2.14 configs for apps built against 2.12 fontconfig. --- pkgs/development/libraries/fontconfig/default.nix | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/pkgs/development/libraries/fontconfig/default.nix b/pkgs/development/libraries/fontconfig/default.nix index f24518f546a..29d9e3289c1 100644 --- a/pkgs/development/libraries/fontconfig/default.nix +++ b/pkgs/development/libraries/fontconfig/default.nix @@ -24,7 +24,7 @@ */ let - configVersion = "2.13"; # bump whenever fontconfig breaks compatibility with older configurations + configVersion = "2.11"; # bump whenever fontconfig breaks compatibility with older configurations in stdenv.mkDerivation rec { pname = "fontconfig"; @@ -61,6 +61,18 @@ stdenv.mkDerivation rec { url = "https://gitlab.freedesktop.org/fontconfig/fontconfig/commit/a4aa66a858f1ecd375c5efe5916398281f73f794.patch"; sha256 = "1j4ky8jhpllfm1lh2if34xglh2hl79nsa0xxgzxpj9sx6h4v99j5"; }) + + # Do not include its tags, they are external now and only cause warnings with old fontconfig clients. + # https://gitlab.freedesktop.org/fontconfig/fontconfig/merge_requests/97 + (fetchpatch { + url = "https://gitlab.freedesktop.org/fontconfig/fontconfig/commit/528b17b2837c3b102acd90cc7548d07bacaccb1f.patch"; + sha256 = "1zf4wcd2xlprh805jalfy8ja5c2qzgkh4fwd1m9d638nl9gx932m"; + }) + # https://gitlab.freedesktop.org/fontconfig/fontconfig/merge_requests/100 + (fetchpatch { + url = "https://gitlab.freedesktop.org/fontconfig/fontconfig/commit/37c7c748740bf6f2468d59e67951902710240b34.patch"; + sha256 = "1rz5zrfwhpn9g49wrzzrmdglj78pbvpnw8ksgsw6bxq8l5d84jfr"; + }) ]; outputs = [ "bin" "dev" "lib" "out" ]; # $out contains all the config From 2d2b7513d90384cb3426ed790992ae70c5bb1c16 Mon Sep 17 00:00:00 2001 From: Florian Klink Date: Tue, 5 May 2020 16:56:13 +0200 Subject: [PATCH 050/103] lvm2: remove unused default.upstream file --- pkgs/os-specific/linux/lvm2/default.upstream | 4 ---- 1 file changed, 4 deletions(-) delete mode 100644 pkgs/os-specific/linux/lvm2/default.upstream diff --git a/pkgs/os-specific/linux/lvm2/default.upstream b/pkgs/os-specific/linux/lvm2/default.upstream deleted file mode 100644 index 1e5aaf5ab5c..00000000000 --- a/pkgs/os-specific/linux/lvm2/default.upstream +++ /dev/null @@ -1,4 +0,0 @@ -url ftp://sources.redhat.com/pub/lvm2/ -version_link '[.]tgz$' -version '.*[^0-9.][^.]*[.]([0-9.]+)[.].*' '\1' -do_overwrite () { do_overwrite_just_version; } From 5e1eb7bd59d347c8955679945f342673005f82b8 Mon Sep 17 00:00:00 2001 From: Florian Klink Date: Mon, 19 Aug 2019 02:06:10 +0200 Subject: [PATCH 051/103] lvm2: cleanups, make udev optional - use installTargets again ("install", and "install_systemd_{generators,units,configuration}" when udev is not null) - The call to the blkid binary in lvm2's 13-dm-disk.rules file disappeared (so we don't need to patch in blkid anymore). lvm seems to rely on udev's internal blkid functionality. - Call /run/current-system/systemd/bin/udevadm instead of ${systemd}/bin/udevadm in the lvm activation generator. This is not necessary to break the dependency cycle (as we don't use that file when building without udev), but a good idea anyways - We want to trigger the udevadm of the current system, not the one that lvm was built with. --- pkgs/os-specific/linux/lvm2/default.nix | 71 +++++++++++++------------ pkgs/top-level/all-packages.nix | 4 +- 2 files changed, 37 insertions(+), 38 deletions(-) diff --git a/pkgs/os-specific/linux/lvm2/default.nix b/pkgs/os-specific/linux/lvm2/default.nix index 8db4be94e4e..ee1d95bf0bd 100644 --- a/pkgs/os-specific/linux/lvm2/default.nix +++ b/pkgs/os-specific/linux/lvm2/default.nix @@ -1,13 +1,20 @@ -{ stdenv, fetchgit, fetchpatch, pkgconfig, systemd, udev, utillinux, libuuid +{ stdenv +, fetchgit +, fetchpatch +, pkgconfig +, utillinux +, libuuid , thin-provisioning-tools, libaio -, enable_dmeventd ? false }: +, enable_dmeventd ? false +, udev ? null +}: let version = "2.03.01"; in -stdenv.mkDerivation { - pname = "lvm2"; +{ + pname = "lvm2" + stdenv.lib.optionalString enable_dmeventd "with-dmeventd"; inherit version; src = fetchgit { @@ -16,33 +23,32 @@ stdenv.mkDerivation { sha256 = "0jlaswf1srdxiqpgpp97j950ddjds8z0kr4pbwmal2za2blrgvbl"; }; + nativeBuildInputs = [ pkgconfig ]; + buildInputs = [ udev libuuid thin-provisioning-tools libaio ]; + configureFlags = [ "--disable-readline" - "--enable-udev_rules" - "--enable-udev_sync" "--enable-pkgconfig" "--enable-cmdlib" ] ++ stdenv.lib.optional enable_dmeventd " --enable-dmeventd" ++ stdenv.lib.optionals (stdenv.hostPlatform != stdenv.buildPlatform) [ "ac_cv_func_malloc_0_nonnull=yes" "ac_cv_func_realloc_0_nonnull=yes" + ] ++ + stdenv.lib.optionals (udev != null) [ + "--enable-udev_rules" + "--enable-udev_sync" ]; - nativeBuildInputs = [ pkgconfig ]; - buildInputs = [ udev libuuid thin-provisioning-tools libaio ]; + preConfigure = '' + sed -i /DEFAULT_SYS_DIR/d Makefile.in + sed -i /DEFAULT_PROFILE_DIR/d conf/Makefile.in + substituteInPlace scripts/lvm2_activation_generator_systemd_red_hat.c \ + --replace /usr/bin/udevadm /run/current-system/systemd/bin/udevadm - preConfigure = - '' - sed -i /DEFAULT_SYS_DIR/d Makefile.in - sed -i /DEFAULT_PROFILE_DIR/d conf/Makefile.in - '' + stdenv.lib.optionalString (systemd != null) '' - substituteInPlace scripts/lvm2_activation_generator_systemd_red_hat.c \ - --replace /usr/bin/udevadm ${systemd}/bin/udevadm - ''; - - # https://github.com/NixOS/nixpkgs/pull/52597 - # gcc: error: ../../device_mapper/libdevice-mapper.a: No such file or directory - enableParallelBuilding = false; + substituteInPlace make.tmpl.in --replace "@systemdsystemunitdir@" "$out/lib/systemd/system" + substituteInPlace libdm/make.tmpl.in --replace "@systemdsystemunitdir@" "$out/lib/systemd/system" + ''; patches = stdenv.lib.optionals stdenv.hostPlatform.isMusl [ (fetchpatch { @@ -64,30 +70,25 @@ stdenv.mkDerivation { doCheck = false; # requires root + makeFlags = stdenv.lib.optionals (udev != null) [ + "SYSTEMD_GENERATOR_DIR=$(out)/lib/systemd/system-generators" + ]; + # To prevent make install from failing. installFlags = [ "OWNER=" "GROUP=" "confdir=$(out)/etc" ]; # Install systemd stuff. - #installTargets = "install install_systemd_generators install_systemd_units install_tmpfiles_configuration"; - - postInstall = - '' - substituteInPlace $out/lib/udev/rules.d/13-dm-disk.rules \ - --replace $out/sbin/blkid ${utillinux}/sbin/blkid - '' + stdenv.lib.optionalString (systemd != null) '' - # Systemd stuff - mkdir -p $out/etc/systemd/system $out/lib/systemd/system-generators - cp scripts/blk_availability_systemd_red_hat.service $out/etc/systemd/system - cp scripts/lvm2_activation_generator_systemd_red_hat $out/lib/systemd/system-generators - ''; + installTargets = [ "install" ] ++ stdenv.lib.optionals (udev != null) [ + "install_systemd_generators" + "install_systemd_units" + "install_tmpfiles_configuration" + ]; meta = with stdenv.lib; { homepage = "http://sourceware.org/lvm2/"; description = "Tools to support Logical Volume Management (LVM) on Linux"; platforms = platforms.linux; license = with licenses; [ gpl2 bsd2 lgpl21 ]; - maintainers = with maintainers; [raskin]; - inherit version; - downloadPage = "ftp://sources.redhat.com/pub/lvm2/"; + maintainers = with maintainers; [ raskin ]; }; } diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 4f007ffaba9..5bcff8c58c2 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -16817,9 +16817,7 @@ in directvnc = callPackage ../os-specific/linux/directvnc { }; - dmraid = callPackage ../os-specific/linux/dmraid { - lvm2 = lvm2.override {enable_dmeventd = true;}; - }; + dmraid = callPackage ../os-specific/linux/dmraid { }; drbd = callPackage ../os-specific/linux/drbd { }; From 33030f1bd2d8b451eec5fabd2208a1381bf7d2d4 Mon Sep 17 00:00:00 2001 From: ajs124 Date: Fri, 22 May 2020 01:59:29 +0200 Subject: [PATCH 052/103] lvm2: add myself as maintainer --- pkgs/os-specific/linux/lvm2/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/os-specific/linux/lvm2/default.nix b/pkgs/os-specific/linux/lvm2/default.nix index ee1d95bf0bd..a068de6a81d 100644 --- a/pkgs/os-specific/linux/lvm2/default.nix +++ b/pkgs/os-specific/linux/lvm2/default.nix @@ -89,6 +89,6 @@ in description = "Tools to support Logical Volume Management (LVM) on Linux"; platforms = platforms.linux; license = with licenses; [ gpl2 bsd2 lgpl21 ]; - maintainers = with maintainers; [ raskin ]; + maintainers = with maintainers; [ raskin ajs124 ]; }; } From fbe70272514d3d9ab8bb251666939b98d10ac852 Mon Sep 17 00:00:00 2001 From: Florian Klink Date: Thu, 30 Apr 2020 16:45:17 +0200 Subject: [PATCH 053/103] lvm2: fetch sources from http instead of git Otherwise, we end up in a dependency cycle: systemd -> cryptsetup -> lvm -> fetchgit -> git -> openssh -> libfido2 -> hidapi -> libusb -> udev=systemd --- pkgs/os-specific/linux/lvm2/default.nix | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/pkgs/os-specific/linux/lvm2/default.nix b/pkgs/os-specific/linux/lvm2/default.nix index a068de6a81d..9dae5158e1f 100644 --- a/pkgs/os-specific/linux/lvm2/default.nix +++ b/pkgs/os-specific/linux/lvm2/default.nix @@ -1,6 +1,6 @@ { stdenv -, fetchgit , fetchpatch +, fetchurl , pkgconfig , utillinux , libuuid @@ -17,10 +17,9 @@ in pname = "lvm2" + stdenv.lib.optionalString enable_dmeventd "with-dmeventd"; inherit version; - src = fetchgit { - url = "git://sourceware.org/git/lvm2.git"; - rev = "v${builtins.replaceStrings [ "." ] [ "_" ] version}"; - sha256 = "0jlaswf1srdxiqpgpp97j950ddjds8z0kr4pbwmal2za2blrgvbl"; + src = fetchurl { + url = "https://mirrors.kernel.org/sourceware/lvm2/LVM2.${version}.tgz"; + sha256 = "02sk6p8w3f6fpm1mrsisqfc0jnah4pzimyhm0f7c0phrfjq5hkj2"; }; nativeBuildInputs = [ pkgconfig ]; From 3ca74a976ac0880d06d2a9546aa6a8c77ecc216e Mon Sep 17 00:00:00 2001 From: ajs124 Date: Mon, 25 May 2020 03:37:44 +0200 Subject: [PATCH 054/103] lvm2: 2.03.01 -> 2.03.09 --- pkgs/os-specific/linux/lvm2/default.nix | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) diff --git a/pkgs/os-specific/linux/lvm2/default.nix b/pkgs/os-specific/linux/lvm2/default.nix index 9dae5158e1f..bb06b10c23b 100644 --- a/pkgs/os-specific/linux/lvm2/default.nix +++ b/pkgs/os-specific/linux/lvm2/default.nix @@ -9,17 +9,13 @@ , udev ? null }: -let - version = "2.03.01"; -in - -{ +stdenv.mkDerivation rec { pname = "lvm2" + stdenv.lib.optionalString enable_dmeventd "with-dmeventd"; - inherit version; + version = "2.03.09"; src = fetchurl { url = "https://mirrors.kernel.org/sourceware/lvm2/LVM2.${version}.tgz"; - sha256 = "02sk6p8w3f6fpm1mrsisqfc0jnah4pzimyhm0f7c0phrfjq5hkj2"; + sha256 = "0xdr9qbqw6kja267wmx6ajnfv1nhw056gpxx9v2qmfh3bj6qnfn0"; }; nativeBuildInputs = [ pkgconfig ]; From 198d1e6f5cb3eaca9f09ca05c28edc0bb1a1ace1 Mon Sep 17 00:00:00 2001 From: Florian Klink Date: Sun, 24 May 2020 02:22:51 +0200 Subject: [PATCH 055/103] lvm2: make --enable-cmdlib optional This seems to be mostly used to simplify LV management tasks from a web interface (https://www.redhat.com/archives/linux-lvm/2008-September/msg00029.html), and is as fat as the `lvm` binary itself --- pkgs/os-specific/linux/lvm2/default.nix | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/pkgs/os-specific/linux/lvm2/default.nix b/pkgs/os-specific/linux/lvm2/default.nix index bb06b10c23b..0e5a349da02 100644 --- a/pkgs/os-specific/linux/lvm2/default.nix +++ b/pkgs/os-specific/linux/lvm2/default.nix @@ -5,10 +5,14 @@ , utillinux , libuuid , thin-provisioning-tools, libaio +, enable_cmdlib ? false , enable_dmeventd ? false , udev ? null }: +# configure: error: --enable-dmeventd requires --enable-cmdlib to be used as well +assert enable_dmeventd -> enable_cmdlib; + stdenv.mkDerivation rec { pname = "lvm2" + stdenv.lib.optionalString enable_dmeventd "with-dmeventd"; version = "2.03.09"; @@ -24,8 +28,8 @@ stdenv.mkDerivation rec { configureFlags = [ "--disable-readline" "--enable-pkgconfig" - "--enable-cmdlib" ] ++ stdenv.lib.optional enable_dmeventd " --enable-dmeventd" + ++ stdenv.lib.optional enable_cmdlib "--enable-cmdlib" ++ stdenv.lib.optionals (stdenv.hostPlatform != stdenv.buildPlatform) [ "ac_cv_func_malloc_0_nonnull=yes" "ac_cv_func_realloc_0_nonnull=yes" From df67459b89d69b9edde653efa6cb8d702179be0b Mon Sep 17 00:00:00 2001 From: Florian Klink Date: Sun, 24 May 2020 02:25:18 +0200 Subject: [PATCH 056/103] lvm2: don't embed ./configure line in lvm2 binary --- pkgs/os-specific/linux/lvm2/default.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pkgs/os-specific/linux/lvm2/default.nix b/pkgs/os-specific/linux/lvm2/default.nix index 0e5a349da02..6d62d770e4d 100644 --- a/pkgs/os-specific/linux/lvm2/default.nix +++ b/pkgs/os-specific/linux/lvm2/default.nix @@ -49,6 +49,11 @@ stdenv.mkDerivation rec { substituteInPlace libdm/make.tmpl.in --replace "@systemdsystemunitdir@" "$out/lib/systemd/system" ''; + postConfigure = '' + sed -i 's|^#define LVM_CONFIGURE_LINE.*$|#define LVM_CONFIGURE_LINE ""|g' ./include/configure.h + ''; + + patches = stdenv.lib.optionals stdenv.hostPlatform.isMusl [ (fetchpatch { name = "fix-stdio-usage.patch"; From d3a991d41028c5d2a5af2796c0bb542836457822 Mon Sep 17 00:00:00 2001 From: Florian Klink Date: Sun, 24 May 2020 02:27:51 +0200 Subject: [PATCH 057/103] lvm2: add multiple output support --- nixos/modules/system/boot/stage-1.nix | 6 +++--- pkgs/os-specific/linux/lvm2/default.nix | 9 +++++++++ 2 files changed, 12 insertions(+), 3 deletions(-) diff --git a/nixos/modules/system/boot/stage-1.nix b/nixos/modules/system/boot/stage-1.nix index d551466f52e..63005b26f6f 100644 --- a/nixos/modules/system/boot/stage-1.nix +++ b/nixos/modules/system/boot/stage-1.nix @@ -111,8 +111,8 @@ let copy_bin_and_libs ${pkgs.utillinux}/sbin/blkid # Copy dmsetup and lvm. - copy_bin_and_libs ${pkgs.lvm2}/sbin/dmsetup - copy_bin_and_libs ${pkgs.lvm2}/sbin/lvm + copy_bin_and_libs ${getBin pkgs.lvm2}/bin/dmsetup + copy_bin_and_libs ${getBin pkgs.lvm2}/bin/lvm # Add RAID mdadm tool. copy_bin_and_libs ${pkgs.mdadm}/sbin/mdadm @@ -235,7 +235,7 @@ let --replace cdrom_id ${extraUtils}/bin/cdrom_id \ --replace ${pkgs.coreutils}/bin/basename ${extraUtils}/bin/basename \ --replace ${pkgs.utillinux}/bin/blkid ${extraUtils}/bin/blkid \ - --replace ${pkgs.lvm2}/sbin ${extraUtils}/bin \ + --replace ${getBin pkgs.lvm2}/bin ${extraUtils}/bin \ --replace ${pkgs.mdadm}/sbin ${extraUtils}/sbin \ --replace ${pkgs.bash}/bin/sh ${extraUtils}/bin/sh \ --replace ${udev} ${extraUtils} diff --git a/pkgs/os-specific/linux/lvm2/default.nix b/pkgs/os-specific/linux/lvm2/default.nix index 6d62d770e4d..5dffe04fe72 100644 --- a/pkgs/os-specific/linux/lvm2/default.nix +++ b/pkgs/os-specific/linux/lvm2/default.nix @@ -28,6 +28,9 @@ stdenv.mkDerivation rec { configureFlags = [ "--disable-readline" "--enable-pkgconfig" + "--bindir=${placeholder "bin"}/bin" + "--sbindir=${placeholder "bin"}/bin" + "--libdir=${placeholder "lib"}/lib" ] ++ stdenv.lib.optional enable_dmeventd " --enable-dmeventd" ++ stdenv.lib.optional enable_cmdlib "--enable-cmdlib" ++ stdenv.lib.optionals (stdenv.hostPlatform != stdenv.buildPlatform) [ @@ -88,6 +91,12 @@ stdenv.mkDerivation rec { "install_tmpfiles_configuration" ]; + postInstall = '' + moveToOutput lib/libdevmapper.so $lib + ''; + + outputs = [ "out" "bin" "lib" "dev" "man" ]; + meta = with stdenv.lib; { homepage = "http://sourceware.org/lvm2/"; description = "Tools to support Logical Volume Management (LVM) on Linux"; From e6a6846d4fc0af05efa5bafc878ca710514798f6 Mon Sep 17 00:00:00 2001 From: ajs124 Date: Thu, 21 May 2020 22:03:50 +0200 Subject: [PATCH 058/103] lvm2: fix paths to use /run instead of /var/run. This shuts up some warnings. --- pkgs/os-specific/linux/lvm2/default.nix | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/pkgs/os-specific/linux/lvm2/default.nix b/pkgs/os-specific/linux/lvm2/default.nix index 5dffe04fe72..93091e04557 100644 --- a/pkgs/os-specific/linux/lvm2/default.nix +++ b/pkgs/os-specific/linux/lvm2/default.nix @@ -31,8 +31,14 @@ stdenv.mkDerivation rec { "--bindir=${placeholder "bin"}/bin" "--sbindir=${placeholder "bin"}/bin" "--libdir=${placeholder "lib"}/lib" - ] ++ stdenv.lib.optional enable_dmeventd " --enable-dmeventd" - ++ stdenv.lib.optional enable_cmdlib "--enable-cmdlib" + "--with-default-locking-dir=/run/lock/lvm" + "--with-default-run-dir=/run/lvm" + "--with-systemdsystemunitdir=${placeholder "out"}/lib/systemd/system" + ] ++ stdenv.lib.optionals enable_dmeventd [ + "--enable-dmeventd" + "--with-dmeventd-pidfile=/run/dmeventd/pid" + "--with-default-dm-run-dir=/run/dmeventd" + ] ++ stdenv.lib.optional enable_cmdlib "--enable-cmdlib" ++ stdenv.lib.optionals (stdenv.hostPlatform != stdenv.buildPlatform) [ "ac_cv_func_malloc_0_nonnull=yes" "ac_cv_func_realloc_0_nonnull=yes" From b8129312bd6d0849e108c4821eecf9f53f72c2f3 Mon Sep 17 00:00:00 2001 From: Florian Klink Date: Sun, 12 Jul 2020 18:09:08 +0200 Subject: [PATCH 059/103] lvm2: fix location to systemd-run invocation --- pkgs/os-specific/linux/lvm2/default.nix | 3 +++ 1 file changed, 3 insertions(+) diff --git a/pkgs/os-specific/linux/lvm2/default.nix b/pkgs/os-specific/linux/lvm2/default.nix index 93091e04557..fbde55b75ee 100644 --- a/pkgs/os-specific/linux/lvm2/default.nix +++ b/pkgs/os-specific/linux/lvm2/default.nix @@ -53,6 +53,9 @@ stdenv.mkDerivation rec { sed -i /DEFAULT_PROFILE_DIR/d conf/Makefile.in substituteInPlace scripts/lvm2_activation_generator_systemd_red_hat.c \ --replace /usr/bin/udevadm /run/current-system/systemd/bin/udevadm + # https://github.com/lvmteam/lvm2/issues/36 + substituteInPlace udev/69-dm-lvm-metad.rules.in \ + --replace "(BINDIR)/systemd-run" /run/current-system/systemd/bin/systemd-run substituteInPlace make.tmpl.in --replace "@systemdsystemunitdir@" "$out/lib/systemd/system" substituteInPlace libdm/make.tmpl.in --replace "@systemdsystemunitdir@" "$out/lib/systemd/system" From 9f8390701363a767cb409a2931402a4effb972c7 Mon Sep 17 00:00:00 2001 From: Florian Klink Date: Sun, 12 Jul 2020 11:29:38 +0200 Subject: [PATCH 060/103] lvm2: only split bin and lib out from out if cmdlib isn't enabled --- pkgs/os-specific/linux/lvm2/default.nix | 27 ++++++++++++++++--------- 1 file changed, 18 insertions(+), 9 deletions(-) diff --git a/pkgs/os-specific/linux/lvm2/default.nix b/pkgs/os-specific/linux/lvm2/default.nix index fbde55b75ee..35624f421fa 100644 --- a/pkgs/os-specific/linux/lvm2/default.nix +++ b/pkgs/os-specific/linux/lvm2/default.nix @@ -28,18 +28,19 @@ stdenv.mkDerivation rec { configureFlags = [ "--disable-readline" "--enable-pkgconfig" - "--bindir=${placeholder "bin"}/bin" - "--sbindir=${placeholder "bin"}/bin" - "--libdir=${placeholder "lib"}/lib" "--with-default-locking-dir=/run/lock/lvm" "--with-default-run-dir=/run/lvm" "--with-systemdsystemunitdir=${placeholder "out"}/lib/systemd/system" - ] ++ stdenv.lib.optionals enable_dmeventd [ + ] ++ stdenv.lib.optionals (!enable_cmdlib) [ + "--bindir=${placeholder "bin"}/bin" + "--sbindir=${placeholder "bin"}/bin" + "--libdir=${placeholder "lib"}/lib" + ] ++ stdenv.lib.optional enable_cmdlib "--enable-cmdlib" + ++ stdenv.lib.optionals enable_dmeventd [ "--enable-dmeventd" "--with-dmeventd-pidfile=/run/dmeventd/pid" "--with-default-dm-run-dir=/run/dmeventd" - ] ++ stdenv.lib.optional enable_cmdlib "--enable-cmdlib" - ++ stdenv.lib.optionals (stdenv.hostPlatform != stdenv.buildPlatform) [ + ] ++ stdenv.lib.optionals (stdenv.hostPlatform != stdenv.buildPlatform) [ "ac_cv_func_malloc_0_nonnull=yes" "ac_cv_func_realloc_0_nonnull=yes" ] ++ @@ -100,12 +101,20 @@ stdenv.mkDerivation rec { "install_tmpfiles_configuration" ]; - postInstall = '' + # only split bin and lib out from out if cmdlib isn't enabled + outputs = [ + "out" + "dev" + "man" + ] ++ stdenv.lib.optionals (enable_cmdlib != true) [ + "bin" + "lib" + ]; + + postInstall = stdenv.lib.optionalString (enable_cmdlib != true) '' moveToOutput lib/libdevmapper.so $lib ''; - outputs = [ "out" "bin" "lib" "dev" "man" ]; - meta = with stdenv.lib; { homepage = "http://sourceware.org/lvm2/"; description = "Tools to support Logical Volume Management (LVM) on Linux"; From 0e93ae3f67c84385937bda0bb61db89c847fba20 Mon Sep 17 00:00:00 2001 From: Cole Mickens Date: Mon, 13 Jul 2020 13:42:13 -0700 Subject: [PATCH 061/103] mesa: 20.0.8 -> 20.1.3 (#92977) --- 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 7ae59c119a0..0b0db12c09c 100644 --- a/pkgs/development/libraries/mesa/default.nix +++ b/pkgs/development/libraries/mesa/default.nix @@ -31,7 +31,7 @@ with stdenv.lib; let # Release calendar: https://www.mesa3d.org/release-calendar.html # Release frequency: https://www.mesa3d.org/releasing.html#schedule - version = "20.0.8"; # Update only to the final (last planned) release (i.e. X.Y.MAX)? + version = "20.1.3"; branch = versions.major version; in @@ -46,7 +46,7 @@ stdenv.mkDerivation { "ftp://ftp.freedesktop.org/pub/mesa/${version}/mesa-${version}.tar.xz" "ftp://ftp.freedesktop.org/pub/mesa/older-versions/${branch}.x/${version}/mesa-${version}.tar.xz" ]; - sha256 = "6cf0c010df89680f9b2bc6432ff01400031795e39bceda7535fa00af06740b6c"; + sha256 = "1w9b6sl82a3birmpgzn1xx6biggpvynr4hmyzxvj30pfdgabhwlq"; }; prePatch = "patchShebangs ."; From 1a1e7237de905ecbc990d17af8ff87a667aa312c Mon Sep 17 00:00:00 2001 From: ajs124 Date: Mon, 25 May 2020 03:55:32 +0200 Subject: [PATCH 062/103] nixos/tasks/lvm: add dmeventd and lvmthin support Introduce a pkgs.lvm2_dmeventd that contains dmeventd support, and enable if services.lvm.dmeventd.enable is true. --- nixos/modules/tasks/lvm.nix | 75 ++++++++++++++++++++++++++++----- pkgs/top-level/all-packages.nix | 6 ++- 2 files changed, 69 insertions(+), 12 deletions(-) diff --git a/nixos/modules/tasks/lvm.nix b/nixos/modules/tasks/lvm.nix index d56a8a2f63a..b8f7a01e44e 100644 --- a/nixos/modules/tasks/lvm.nix +++ b/nixos/modules/tasks/lvm.nix @@ -1,17 +1,70 @@ { config, lib, pkgs, ... }: with lib; - -{ - - ###### implementation - - config = mkIf (!config.boot.isContainer) { - - environment.systemPackages = [ pkgs.lvm2 ]; - - services.udev.packages = [ pkgs.lvm2 ]; - +let + cfg = config.services.lvm; +in { + options.services.lvm = { + package = mkOption { + type = types.package; + default = if cfg.dmeventd.enable then pkgs.lvm2_dmeventd else pkgs.lvm2; + internal = true; + defaultText = "pkgs.lvm2"; + description = '' + This option allows you to override the LVM package that's used on the system + (udev rules, tmpfiles, systemd services). + Defaults to pkgs.lvm2, or pkgs.lvm2_dmeventd if dmeventd is enabled. + ''; + }; + dmeventd.enable = mkEnableOption "the LVM dmevent daemon"; + boot.thin.enable = mkEnableOption "support for booting from ThinLVs"; }; + config = mkMerge [ + (mkIf (!config.boot.isContainer) { + environment.etc."tmpfiles.d/lvm2.conf".source = "${cfg.package}/lib/tmpfiles.d/lvm2.conf"; + environment.systemPackages = [ cfg.package ]; + systemd.packages = [ cfg.package ]; + + # TODO: update once https://github.com/NixOS/nixpkgs/pull/93006 was merged + services.udev.packages = [ cfg.package.out ]; + }) + (mkIf cfg.dmeventd.enable { + systemd.sockets."dm-event".wantedBy = [ "sockets.target" ]; + systemd.services."lvm2-monitor".wantedBy = [ "sysinit.target" ]; + + environment.etc."lvm/lvm.conf".text = '' + dmeventd/executable = "${cfg.package}/bin/dmeventd" + ''; + }) + (mkIf cfg.boot.thin.enable { + boot.initrd = { + kernelModules = [ "dm-snapshot" "dm-thin-pool" ]; + + extraUtilsCommands = '' + copy_bin_and_libs ${pkgs.thin-provisioning-tools}/bin/pdata_tools + copy_bin_and_libs ${pkgs.thin-provisioning-tools}/bin/thin_check + ''; + }; + + environment.etc."lvm/lvm.conf".text = '' + global/thin_check_executable = "${pkgs.thin-provisioning-tools}/bin/thin_check" + ''; + }) + (mkIf (cfg.dmeventd.enable || cfg.boot.thin.enable) { + boot.initrd.preLVMCommands = '' + mkdir -p /etc/lvm + cat << EOF >> /etc/lvm/lvm.conf + ${optionalString cfg.boot.thin.enable '' + global/thin_check_executable = "$(command -v thin_check)" + ''} + ${optionalString cfg.dmeventd.enable '' + dmeventd/executable = "$(command -v false)" + activation/monitoring = 0 + ''} + EOF + ''; + }) + ]; + } diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 5bcff8c58c2..b6d506a8e7d 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -16817,7 +16817,7 @@ in directvnc = callPackage ../os-specific/linux/directvnc { }; - dmraid = callPackage ../os-specific/linux/dmraid { }; + dmraid = callPackage ../os-specific/linux/dmraid { lvm2 = lvm2_dmeventd; }; drbd = callPackage ../os-specific/linux/drbd { }; @@ -17520,6 +17520,10 @@ in lsscsi = callPackage ../os-specific/linux/lsscsi { }; lvm2 = callPackage ../os-specific/linux/lvm2 { }; + lvm2_dmeventd = callPackage ../os-specific/linux/lvm2 { + enable_dmeventd = true; + enable_cmdlib = true; + }; mbpfan = callPackage ../os-specific/linux/mbpfan { }; From e55ef86ebda5f21c17315be2950c1de5670ddc08 Mon Sep 17 00:00:00 2001 From: Florian Klink Date: Mon, 13 May 2019 18:18:27 +0200 Subject: [PATCH 063/103] systemd_with_lvm2: remove This is already handled by the lvm module, which now properly adds the lvm systemd generators. Initially introduced in c0fd88748a66c9ca38092fdbf7e97f765c8e411d. --- pkgs/top-level/aliases.nix | 1 + pkgs/top-level/all-packages.nix | 8 -------- 2 files changed, 1 insertion(+), 8 deletions(-) diff --git a/pkgs/top-level/aliases.nix b/pkgs/top-level/aliases.nix index 6cd260467f4..690c785a346 100644 --- a/pkgs/top-level/aliases.nix +++ b/pkgs/top-level/aliases.nix @@ -557,6 +557,7 @@ mapAliases ({ surf-webkit2 = surf; # added 2017-04-02 sup = throw "deprecated in 2019-09-10: abandoned by upstream"; system_config_printer = system-config-printer; # added 2016-01-03 + systemd_with_lvm2 = throw "obsolete, enabled by default via the lvm module"; # added 2020-07-12 systool = sysfsutils; # added 2018-04-25 tahoelafs = tahoe-lafs; # added 2018-03-26 tangogps = foxtrotgps; # added 2020-01-26 diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index b6d506a8e7d..33437f2ccea 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -17842,14 +17842,6 @@ in # standalone cryptsetup generator for systemd systemd-cryptsetup-generator = callPackage ../os-specific/linux/systemd/cryptsetup-generator.nix { }; - # In nixos, you can set systemd.package = pkgs.systemd_with_lvm2 to get - # LVM2 working in systemd. - systemd_with_lvm2 = pkgs.appendToName "with-lvm2" (pkgs.lib.overrideDerivation pkgs.systemd (p: { - postInstall = p.postInstall + '' - cp "${pkgs.lvm2}/lib/systemd/system-generators/"* $out/lib/systemd/system-generators - ''; - })); - systemd-wait = callPackage ../os-specific/linux/systemd-wait { }; sysvinit = callPackage ../os-specific/linux/sysvinit { }; From d056f6e86d39f803eacc8b70501cead76d58c069 Mon Sep 17 00:00:00 2001 From: ajs124 Date: Mon, 25 May 2020 04:05:55 +0200 Subject: [PATCH 064/103] nixos/test/installer: add postBootCommands --- nixos/tests/installer.nix | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/nixos/tests/installer.nix b/nixos/tests/installer.nix index eef9abebf9f..158a19925c2 100644 --- a/nixos/tests/installer.nix +++ b/nixos/tests/installer.nix @@ -64,7 +64,7 @@ let # a test script fragment `createPartitions', which must create # partitions and filesystems. testScriptFun = { bootLoader, createPartitions, grubVersion, grubDevice, grubUseEfi - , grubIdentifier, preBootCommands, extraConfig + , grubIdentifier, preBootCommands, postBootCommands, extraConfig , testSpecialisationConfig }: let iface = if grubVersion == 1 then "ide" else "virtio"; @@ -216,6 +216,7 @@ let machine = create_machine_named("boot-after-rebuild-switch") ${preBootCommands} machine.wait_for_unit("network.target") + ${postBootCommands} machine.shutdown() # Tests for validating clone configuration entries in grub menu @@ -238,6 +239,7 @@ let with subtest("Set grub to boot the second configuration"): machine.succeed("grub-reboot 1") + ${postBootCommands} machine.shutdown() # Reboot Machine @@ -252,12 +254,13 @@ let with subtest("We should find a file named /etc/gitconfig"): machine.succeed("test -e /etc/gitconfig") + ${postBootCommands} machine.shutdown() ''; makeInstallerTest = name: - { createPartitions, preBootCommands ? "", extraConfig ? "" + { createPartitions, preBootCommands ? "", postBootCommands ? "", extraConfig ? "" , extraInstallerConfig ? {} , bootLoader ? "grub" # either "grub" or "systemd-boot" , grubVersion ? 2, grubDevice ? "/dev/vda", grubIdentifier ? "uuid", grubUseEfi ? false @@ -335,7 +338,7 @@ let }; testScript = testScriptFun { - inherit bootLoader createPartitions preBootCommands + inherit bootLoader createPartitions preBootCommands postBootCommands grubVersion grubDevice grubIdentifier grubUseEfi extraConfig testSpecialisationConfig; }; From 53a34361afe7b58db95c77cd99f268fd933e4053 Mon Sep 17 00:00:00 2001 From: ajs124 Date: Sun, 31 May 2020 23:31:11 +0200 Subject: [PATCH 065/103] nixos/tests/installer: lvm: test lvm2-pvscan@ units Also, add some sleep statements in between, which seems to at least feel like it causes > WARNING: Device /dev/vda* not initialized in udev database even after waiting 10000000 microseconds. To occur less frequently. This eventually still succeeds after some amount of waiting, I suspect some racyness in the way lvm's udev-triggered scripts trigger other units. --- nixos/tests/installer.nix | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/nixos/tests/installer.nix b/nixos/tests/installer.nix index 158a19925c2..22132073142 100644 --- a/nixos/tests/installer.nix +++ b/nixos/tests/installer.nix @@ -555,16 +555,26 @@ in { + " mkpart primary 2048M -1s" # PV2 + " set 2 lvm on", "udevadm settle", + "sleep 1", "pvcreate /dev/vda1 /dev/vda2", + "sleep 1", "vgcreate MyVolGroup /dev/vda1 /dev/vda2", + "sleep 1", "lvcreate --size 1G --name swap MyVolGroup", + "sleep 1", "lvcreate --size 2G --name nixos MyVolGroup", + "sleep 1", "mkswap -f /dev/MyVolGroup/swap -L swap", "swapon -L swap", "mkfs.xfs -L nixos /dev/MyVolGroup/nixos", "mount LABEL=nixos /mnt", ) ''; + postBootCommands = '' + assert "loaded active" in machine.succeed( + "systemctl list-units 'lvm2-pvscan@*' -ql --no-legend | tee /dev/stderr" + ) + ''; }; # Boot off an encrypted root partition with the default LUKS header format From 12d32eefede3f5b5becbb87c6c69bfe1d82cd79d Mon Sep 17 00:00:00 2001 From: Florian Klink Date: Tue, 14 Jul 2020 11:19:43 +0200 Subject: [PATCH 066/103] lvm2: rename enable_{cmdlib,dmeventd} to enable{Cmdlib,Dmeventd} Make this more consistent with how these flags look like in the rest of nixpkgs. --- pkgs/os-specific/linux/lvm2/default.nix | 18 +++++++++--------- pkgs/top-level/all-packages.nix | 4 ++-- 2 files changed, 11 insertions(+), 11 deletions(-) diff --git a/pkgs/os-specific/linux/lvm2/default.nix b/pkgs/os-specific/linux/lvm2/default.nix index 35624f421fa..a6db883cc2c 100644 --- a/pkgs/os-specific/linux/lvm2/default.nix +++ b/pkgs/os-specific/linux/lvm2/default.nix @@ -5,16 +5,16 @@ , utillinux , libuuid , thin-provisioning-tools, libaio -, enable_cmdlib ? false -, enable_dmeventd ? false +, enableCmdlib ? false +, enableDmeventd ? false , udev ? null }: # configure: error: --enable-dmeventd requires --enable-cmdlib to be used as well -assert enable_dmeventd -> enable_cmdlib; +assert enableDmeventd -> enableCmdlib; stdenv.mkDerivation rec { - pname = "lvm2" + stdenv.lib.optionalString enable_dmeventd "with-dmeventd"; + pname = "lvm2" + stdenv.lib.optionalString enableDmeventd "with-dmeventd"; version = "2.03.09"; src = fetchurl { @@ -31,12 +31,12 @@ stdenv.mkDerivation rec { "--with-default-locking-dir=/run/lock/lvm" "--with-default-run-dir=/run/lvm" "--with-systemdsystemunitdir=${placeholder "out"}/lib/systemd/system" - ] ++ stdenv.lib.optionals (!enable_cmdlib) [ + ] ++ stdenv.lib.optionals (!enableCmdlib) [ "--bindir=${placeholder "bin"}/bin" "--sbindir=${placeholder "bin"}/bin" "--libdir=${placeholder "lib"}/lib" - ] ++ stdenv.lib.optional enable_cmdlib "--enable-cmdlib" - ++ stdenv.lib.optionals enable_dmeventd [ + ] ++ stdenv.lib.optional enableCmdlib "--enable-cmdlib" + ++ stdenv.lib.optionals enableDmeventd [ "--enable-dmeventd" "--with-dmeventd-pidfile=/run/dmeventd/pid" "--with-default-dm-run-dir=/run/dmeventd" @@ -106,12 +106,12 @@ stdenv.mkDerivation rec { "out" "dev" "man" - ] ++ stdenv.lib.optionals (enable_cmdlib != true) [ + ] ++ stdenv.lib.optionals (enableCmdlib != true) [ "bin" "lib" ]; - postInstall = stdenv.lib.optionalString (enable_cmdlib != true) '' + postInstall = stdenv.lib.optionalString (enableCmdlib != true) '' moveToOutput lib/libdevmapper.so $lib ''; diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 33437f2ccea..29d6ef654e5 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -17521,8 +17521,8 @@ in lvm2 = callPackage ../os-specific/linux/lvm2 { }; lvm2_dmeventd = callPackage ../os-specific/linux/lvm2 { - enable_dmeventd = true; - enable_cmdlib = true; + enableDmeventd = true; + enableCmdlib = true; }; mbpfan = callPackage ../os-specific/linux/mbpfan { }; From 9583669422381779ad10eeb75a60bfa310bf03b4 Mon Sep 17 00:00:00 2001 From: Florian Klink Date: Tue, 14 Jul 2020 12:56:26 +0200 Subject: [PATCH 067/103] lvm2: passthru tests --- pkgs/os-specific/linux/lvm2/default.nix | 3 +++ 1 file changed, 3 insertions(+) diff --git a/pkgs/os-specific/linux/lvm2/default.nix b/pkgs/os-specific/linux/lvm2/default.nix index a6db883cc2c..8bfdb37360d 100644 --- a/pkgs/os-specific/linux/lvm2/default.nix +++ b/pkgs/os-specific/linux/lvm2/default.nix @@ -8,6 +8,7 @@ , enableCmdlib ? false , enableDmeventd ? false , udev ? null +, nixosTests }: # configure: error: --enable-dmeventd requires --enable-cmdlib to be used as well @@ -115,6 +116,8 @@ stdenv.mkDerivation rec { moveToOutput lib/libdevmapper.so $lib ''; + passthru.tests.installer = nixosTests.installer.lvm; + meta = with stdenv.lib; { homepage = "http://sourceware.org/lvm2/"; description = "Tools to support Logical Volume Management (LVM) on Linux"; From 4cfaf5b7e3e55a1e18391f29218d97c0ea9d71a7 Mon Sep 17 00:00:00 2001 From: worldofpeace Date: Tue, 14 Jul 2020 08:01:24 -0400 Subject: [PATCH 068/103] networkmanager: 1.24.2 -> 1.26.0 --- .../networking/network-manager/default.nix | 6 +- .../network-manager/fix-paths.patch | 62 ++++++++----------- 2 files changed, 30 insertions(+), 38 deletions(-) diff --git a/pkgs/tools/networking/network-manager/default.nix b/pkgs/tools/networking/network-manager/default.nix index f3169cf6a79..f5b12a6cf37 100644 --- a/pkgs/tools/networking/network-manager/default.nix +++ b/pkgs/tools/networking/network-manager/default.nix @@ -10,11 +10,11 @@ let pythonForDocs = python3.withPackages (pkgs: with pkgs; [ pygobject3 ]); in stdenv.mkDerivation rec { pname = "network-manager"; - version = "1.24.2"; + version = "1.26.0"; src = fetchurl { url = "mirror://gnome/sources/NetworkManager/${stdenv.lib.versions.majorMinor version}/NetworkManager-${version}.tar.xz"; - sha256 = "1cnf0cif0l45wxf823xqri3ly9n0ai3ndxx34qs3yk1m85f0giic"; + sha256 = "0isdqwp58d7r92sqsk7l2vlqwy518n8b7c7z94jk9gc1bdmjf8sj"; }; outputs = [ "out" "dev" "devdoc" "man" "doc" ]; @@ -48,6 +48,8 @@ in stdenv.mkDerivation rec { # Allow using iwd when configured to do so "-Diwd=true" "-Dlibaudit=yes-disabled-by-default" + # We don't use firewalld in NixOS + "-Dfirewalld_zone=false" ]; patches = [ diff --git a/pkgs/tools/networking/network-manager/fix-paths.patch b/pkgs/tools/networking/network-manager/fix-paths.patch index 1207a2258ec..60ee437f6f4 100644 --- a/pkgs/tools/networking/network-manager/fix-paths.patch +++ b/pkgs/tools/networking/network-manager/fix-paths.patch @@ -1,5 +1,18 @@ +diff --git a/clients/common/nm-polkit-listener.c b/clients/common/nm-polkit-listener.c +index ace205e80..f19c1dea0 100644 +--- a/clients/common/nm-polkit-listener.c ++++ b/clients/common/nm-polkit-listener.c +@@ -552,7 +552,7 @@ begin_authentication (AuthRequest *request) + { + int fd_flags; + const char *helper_argv[] = { +- POLKIT_PACKAGE_PREFIX "/lib/polkit-1/polkit-agent-helper-1", ++ "/run/wrappers/bin/polkit-agent-helper-1", + request->username, + NULL, + }; diff --git a/clients/common/nm-vpn-helpers.c b/clients/common/nm-vpn-helpers.c -index fbcb06479..f13f32408 100644 +index 74ff52bb2..638857df4 100644 --- a/clients/common/nm-vpn-helpers.c +++ b/clients/common/nm-vpn-helpers.c @@ -213,10 +213,7 @@ nm_vpn_openconnect_authenticate_helper (const char *host, @@ -40,45 +53,22 @@ index 91ebd9a36..5201a56c3 100644 ExecStart=@sbindir@/NetworkManager --no-daemon Restart=on-failure diff --git a/libnm/meson.build b/libnm/meson.build -index 406766c70..44c158f8a 100644 +index d3991ab19..58f01c666 100644 --- a/libnm/meson.build +++ b/libnm/meson.build -@@ -265,7 +265,7 @@ if enable_introspection - name, - input: libnm_gir[0], - output: name, -- command: [generate_setting_docs_env, python.path(), generate_setting_docs, '--lib-path', meson.current_build_dir(), '--gir', '@INPUT@', '--output', '@OUTPUT@'], -+ command: [generate_setting_docs_env, generate_setting_docs, '--lib-path', meson.current_build_dir(), '--gir', '@INPUT@', '--output', '@OUTPUT@'], - depends: libnm_gir, - ) - -@@ -274,7 +274,7 @@ if enable_introspection - name, - input: [libnm_gir[0], nm_settings_docs_overrides], - output: name, -- command: [generate_setting_docs_env, python.path(), generate_setting_docs, '--lib-path', meson.current_build_dir(), '--gir', '@INPUT0@', '--overrides', '@INPUT1@', '--output', '@OUTPUT@'], -+ command: [generate_setting_docs_env, generate_setting_docs, '--lib-path', meson.current_build_dir(), '--gir', '@INPUT0@', '--overrides', '@INPUT1@', '--output', '@OUTPUT@'], - depends: libnm_gir, - ) - endif -diff --git a/meson.build b/meson.build -index a2d925a7e..23c85f128 100644 ---- a/meson.build -+++ b/meson.build -@@ -522,7 +522,7 @@ polkit_agent_dep = dependency('polkit-agent-1', version: '>= 0.97', required : f - if polkit_agent_dep.found() - config_h.set_quoted('POLKIT_PACKAGE_PREFIX', polkit_agent_dep.get_pkgconfig_variable('prefix')) - else -- config_h.set_quoted('POLKIT_PACKAGE_PREFIX', '/usr') -+ config_h.set_quoted('POLKIT_PACKAGE_PREFIX', '@polkit@') - endif - - +@@ -283,7 +283,6 @@ if enable_introspection + output: 'nm-settings-docs-gir.xml', + command: [ + generate_setting_docs_env, +- python.path(), + join_paths(meson.source_root(), 'tools', 'generate-docs-nm-settings-docs-gir.py'), + '--lib-path', meson.current_build_dir(), + '--gir', '@INPUT@', diff --git a/src/devices/nm-device.c b/src/devices/nm-device.c -index 44e5183ec..e725845e4 100644 +index de09e4807..2755db165 100644 --- a/src/devices/nm-device.c +++ b/src/devices/nm-device.c -@@ -13493,14 +13493,14 @@ nm_device_start_ip_check (NMDevice *self) +@@ -13705,14 +13705,14 @@ nm_device_start_ip_check (NMDevice *self) gw = nm_ip4_config_best_default_route_get (priv->ip_config_4); if (gw) { _nm_utils_inet4_ntop (NMP_OBJECT_CAST_IP4_ROUTE (gw)->gateway, buf); @@ -96,7 +86,7 @@ index 44e5183ec..e725845e4 100644 } } diff --git a/src/nm-core-utils.c b/src/nm-core-utils.c -index 415e1dc41..995eb6ecf 100644 +index 3950c3c3a..a9436d75a 100644 --- a/src/nm-core-utils.c +++ b/src/nm-core-utils.c @@ -336,7 +336,7 @@ nm_utils_modprobe (GError **error, gboolean suppress_error_logging, const char * From 7713fba8f89a15fd0413ea61b98880e90a978eec Mon Sep 17 00:00:00 2001 From: Maximilian Bosch Date: Tue, 14 Jul 2020 14:39:13 +0200 Subject: [PATCH 069/103] Revert "buildRustPackage: fix cargoBuildFlags" This reverts commit deb78151a9438fb202842d9dbe348365cfd767e0. Mixing up two distinct phases of a derivation's build is not a good idea. See also https://github.com/NixOS/nixpkgs/pull/91689#issuecomment-657813954. --- pkgs/build-support/rust/default.nix | 2 +- pkgs/development/tools/rust/rustup/default.nix | 4 +--- 2 files changed, 2 insertions(+), 4 deletions(-) diff --git a/pkgs/build-support/rust/default.nix b/pkgs/build-support/rust/default.nix index 9e9f2cb4e3b..8d3a7ba6929 100644 --- a/pkgs/build-support/rust/default.nix +++ b/pkgs/build-support/rust/default.nix @@ -199,7 +199,7 @@ stdenv.mkDerivation (args // { -executable ! \( -regex ".*\.\(so.[0-9.]+\|so\|a\|dylib\)" \)) ''; - installCheckPhase = args.checkPhase or (let + checkPhase = args.checkPhase or (let argstr = "${stdenv.lib.optionalString (checkType == "release") "--release"} --target ${rustTarget} --frozen"; in '' ${stdenv.lib.optionalString (buildAndTestSubdir != null) "pushd ${buildAndTestSubdir}"} diff --git a/pkgs/development/tools/rust/rustup/default.nix b/pkgs/development/tools/rust/rustup/default.nix index fd772ff40b2..bdd916ccdda 100644 --- a/pkgs/development/tools/rust/rustup/default.nix +++ b/pkgs/development/tools/rust/rustup/default.nix @@ -39,9 +39,7 @@ rustPlatform.buildRustPackage rec { ) ]; - # Disable tests until they can be run with --features no-self-update - doCheck = false; - #doCheck = !stdenv.isAarch64 && !stdenv.isDarwin; + doCheck = !stdenv.isAarch64 && !stdenv.isDarwin; postInstall = '' pushd $out/bin From 10e5b931ebcc243badc4678c194aaa04be3f7ab1 Mon Sep 17 00:00:00 2001 From: Jan Tojnar Date: Wed, 8 Jul 2020 15:19:32 +0200 Subject: [PATCH 070/103] python3.pkgs.libevdev: hardcode path --- .../python-modules/libevdev/default.nix | 15 ++++++++++++- .../python-modules/libevdev/fix-paths.patch | 22 +++++++++++++++++++ 2 files changed, 36 insertions(+), 1 deletion(-) create mode 100644 pkgs/development/python-modules/libevdev/fix-paths.patch diff --git a/pkgs/development/python-modules/libevdev/default.nix b/pkgs/development/python-modules/libevdev/default.nix index 220d60663a3..92875660de8 100644 --- a/pkgs/development/python-modules/libevdev/default.nix +++ b/pkgs/development/python-modules/libevdev/default.nix @@ -1,4 +1,10 @@ -{ stdenv, buildPythonPackage, isPy27, fetchPypi }: +{ stdenv +, buildPythonPackage +, isPy27 +, fetchPypi +, substituteAll +, pkgs +}: buildPythonPackage rec { pname = "libevdev"; @@ -10,6 +16,13 @@ buildPythonPackage rec { sha256 = "17agnigmzscmdjqmrylg1lza03hwjhgxbpf4l705s6i7p7ndaqrs"; }; + patches = [ + (substituteAll { + src = ./fix-paths.patch; + libevdev = stdenv.lib.getLib pkgs.libevdev; + }) + ]; + doCheck = false; meta = with stdenv.lib; { diff --git a/pkgs/development/python-modules/libevdev/fix-paths.patch b/pkgs/development/python-modules/libevdev/fix-paths.patch new file mode 100644 index 00000000000..e73c360b146 --- /dev/null +++ b/pkgs/development/python-modules/libevdev/fix-paths.patch @@ -0,0 +1,22 @@ +diff --git a/libevdev/_clib.py b/libevdev/_clib.py +index 6e4ab2c..9db54d1 100644 +--- a/libevdev/_clib.py ++++ b/libevdev/_clib.py +@@ -120,7 +120,7 @@ class Libevdev(_LibraryWrapper): + + @staticmethod + def _cdll(): +- return ctypes.CDLL("libevdev.so.2", use_errno=True) ++ return ctypes.CDLL("@libevdev@/lib/libevdev.so.2", use_errno=True) + + _api_prototypes = { + # const char *libevdev_event_type_get_name(unsigned int type); +@@ -910,7 +910,7 @@ class UinputDevice(_LibraryWrapper): + + @staticmethod + def _cdll(): +- return ctypes.CDLL("libevdev.so.2", use_errno=True) ++ return ctypes.CDLL("@libevdev@/lib/libevdev.so.2", use_errno=True) + + _api_prototypes = { + # int libevdev_uinput_create_from_device(const struct libevdev *, int, struct libevdev_uinput **) From 7c75c1ed56f208c7556e9dcf38ed13c688c982ca Mon Sep 17 00:00:00 2001 From: Jan Tojnar Date: Wed, 8 Jul 2020 15:22:42 +0200 Subject: [PATCH 071/103] python3.pkgs.libevdev: enable tests --- pkgs/development/python-modules/libevdev/default.nix | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/pkgs/development/python-modules/libevdev/default.nix b/pkgs/development/python-modules/libevdev/default.nix index 92875660de8..a17612c79cb 100644 --- a/pkgs/development/python-modules/libevdev/default.nix +++ b/pkgs/development/python-modules/libevdev/default.nix @@ -4,6 +4,7 @@ , fetchPypi , substituteAll , pkgs +, pytestCheckHook }: buildPythonPackage rec { @@ -23,7 +24,7 @@ buildPythonPackage rec { }) ]; - doCheck = false; + checkInputs = [ pytestCheckHook ]; meta = with stdenv.lib; { description = "Python wrapper around the libevdev C library"; From 6cf81102647a1fcfb5f704c82de1b45deffbb9a2 Mon Sep 17 00:00:00 2001 From: Jan Tojnar Date: Wed, 8 Jul 2020 15:06:33 +0200 Subject: [PATCH 072/103] libinput: fix subcommands Running subcommands like `libinput measure` requires python and some python modules. I previously added the dependencies in [1] but [2] accidentally moved them to checkInputs so they are not available at runtime by patchShebangs (especially since tests are disabled). Additionally, the tools were ported from evdev python module to python-libevdev in libinput 1.14, which was missed [3] during upgrade. Finally, other python modules are needed so let's add them as well. [1]: https://github.com/NixOS/nixpkgs/pull/51304 [2]: https://github.com/NixOS/nixpkgs/commit/de14f0c6e1247aa48b0d77c4a3390a61e020bebf [3]: https://github.com/NixOS/nixpkgs/commit/b291f2a9953d48d6edc5c73776db9ba289ccf213 --- .../development/libraries/libinput/default.nix | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/libinput/default.nix b/pkgs/development/libraries/libinput/default.nix index f490dfbd23a..148d334b946 100644 --- a/pkgs/development/libraries/libinput/default.nix +++ b/pkgs/development/libraries/libinput/default.nix @@ -47,10 +47,23 @@ stdenv.mkDerivation rec { nativeBuildInputs = [ pkgconfig meson ninja ] ++ optionals documentationSupport [ doxygen graphviz sphinx-build ]; - buildInputs = [ libevdev mtdev libwacom ] + buildInputs = [ + libevdev + mtdev + libwacom + (python3.withPackages (pp: with pp; [ + pp.libevdev # already in scope + pyudev + pyyaml + setuptools + ])) + ] ++ optionals eventGUISupport [ cairo glib gtk3 ]; - checkInputs = [ (python3.withPackages (pkgs: with pkgs; [ evdev ])) check valgrind ]; + checkInputs = [ + check + valgrind + ]; propagatedBuildInputs = [ udev ]; @@ -60,6 +73,7 @@ stdenv.mkDerivation rec { patchShebangs tools/helper-copy-and-exec-from-tmp.sh patchShebangs test/symbols-leak-test patchShebangs test/check-leftover-udev-rules.sh + patchShebangs test/helper-copy-and-exec-from-tmp.sh ''; doCheck = testsSupport && stdenv.hostPlatform == stdenv.buildPlatform; From d9f416313a36d5df8883725ec35233f779088636 Mon Sep 17 00:00:00 2001 From: Jan Tojnar Date: Wed, 8 Jul 2020 16:25:53 +0200 Subject: [PATCH 073/103] python3.pkgs.pyudev: do not propagate systemd It is not linked against so there is no need to include it in build inputs, much less propagate it. This removes systemd.dev from the runtime closure of packages using pyudev. --- pkgs/development/python-modules/pyudev/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/development/python-modules/pyudev/default.nix b/pkgs/development/python-modules/pyudev/default.nix index c26f9bcabe6..c0a401a1b2a 100644 --- a/pkgs/development/python-modules/pyudev/default.nix +++ b/pkgs/development/python-modules/pyudev/default.nix @@ -17,7 +17,7 @@ buildPythonPackage rec { ''; checkInputs = [ pytest mock hypothesis docutils ]; - propagatedBuildInputs = [ systemd six ]; + propagatedBuildInputs = [ six ]; checkPhase = '' py.test From f83c9a7561696422a00776065033af35477dba58 Mon Sep 17 00:00:00 2001 From: Jan Tojnar Date: Wed, 15 Jul 2020 06:02:54 +0200 Subject: [PATCH 074/103] libevdev: fix aarch64 support --- pkgs/development/libraries/libevdev/default.nix | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/pkgs/development/libraries/libevdev/default.nix b/pkgs/development/libraries/libevdev/default.nix index 9b1184f1c0b..c769006e0bf 100644 --- a/pkgs/development/libraries/libevdev/default.nix +++ b/pkgs/development/libraries/libevdev/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchurl, python3 }: +{ stdenv, fetchurl, fetchpatch, python3 }: stdenv.mkDerivation rec { pname = "libevdev"; @@ -9,6 +9,15 @@ stdenv.mkDerivation rec { sha256 = "17pb5375njb1r05xmk0r57a2j986ihglh2n5nqcylbag4rj8mqg7"; }; + patches = [ + # Fix libevdev-python tests on aarch64 + # https://gitlab.freedesktop.org/libevdev/libevdev/merge_requests/63 + (fetchpatch { + url = "https://gitlab.freedesktop.org/libevdev/libevdev/commit/66113fe84f62bab3a672a336eb10b255d2aa5ce7.patch"; + sha256 = "gZKr/P+/OqU69IGslP8CQlcGuyzA/ulcm+nGwHdis58="; + }) + ]; + nativeBuildInputs = [ python3 ]; meta = with stdenv.lib; { From 487373fb2cc021a9b53f889976080bc54d09f178 Mon Sep 17 00:00:00 2001 From: ajs124 Date: Mon, 29 Jun 2020 03:09:27 +0200 Subject: [PATCH 075/103] nss: 3.52.1 -> 3.54 --- .../libraries/nss/85_security_load.patch | 43 +++++----- pkgs/development/libraries/nss/default.nix | 82 ++++++++++--------- .../libraries/nss/fix-cross-compilation.patch | 11 +++ 3 files changed, 75 insertions(+), 61 deletions(-) create mode 100644 pkgs/development/libraries/nss/fix-cross-compilation.patch diff --git a/pkgs/development/libraries/nss/85_security_load.patch b/pkgs/development/libraries/nss/85_security_load.patch index 132d5a96b29..2b2cce465ba 100644 --- a/pkgs/development/libraries/nss/85_security_load.patch +++ b/pkgs/development/libraries/nss/85_security_load.patch @@ -1,7 +1,8 @@ -diff -ru -x '*~' -x '*.orig' -x '*.rej' nss/cmd/shlibsign/shlibsign.c nss/cmd/shlibsign/shlibsign.c ---- nss/cmd/shlibsign/shlibsign.c 2017-01-04 15:24:24.000000000 +0100 -+++ nss/cmd/shlibsign/shlibsign.c 2017-01-24 14:43:31.030420852 +0100 -@@ -875,6 +875,8 @@ +diff --git nss/cmd/shlibsign/shlibsign.c nss/cmd/shlibsign/shlibsign.c +index ad8f3b84e..74676d039 100644 +--- nss/cmd/shlibsign/shlibsign.c ++++ nss/cmd/shlibsign/shlibsign.c +@@ -875,6 +875,8 @@ main(int argc, char **argv) goto cleanup; } lib = PR_LoadLibrary(libname); @@ -10,37 +11,31 @@ diff -ru -x '*~' -x '*.orig' -x '*.rej' nss/cmd/shlibsign/shlibsign.c nss/cmd/sh assert(lib != NULL); if (!lib) { PR_fprintf(PR_STDERR, "loading softokn3 failed"); -diff -ru -x '*~' -x '*.orig' -x '*.rej' nss/coreconf/config.mk nss/coreconf/config.mk ---- nss/coreconf/config.mk 2017-01-04 15:24:24.000000000 +0100 -+++ nss/coreconf/config.mk 2017-01-24 14:43:47.989432372 +0100 -@@ -202,3 +202,6 @@ - - # Hide old, deprecated, TLS cipher suite names when building NSS - DEFINES += -DSSL_DISABLE_DEPRECATED_CIPHER_SUITE_NAMES -+ -+# Nix specific stuff. -+DEFINES += -DNIX_NSS_LIBDIR=\"$(out)/lib/\" -diff -ru -x '*~' -x '*.orig' -x '*.rej' nss/lib/pk11wrap/pk11load.c nss/lib/pk11wrap/pk11load.c ---- nss/lib/pk11wrap/pk11load.c 2017-01-04 15:24:24.000000000 +0100 -+++ nss/lib/pk11wrap/pk11load.c 2017-01-24 14:45:06.883485652 +0100 -@@ -440,6 +440,13 @@ +diff --git nss/lib/pk11wrap/pk11load.c nss/lib/pk11wrap/pk11load.c +index 9e7a0a546..a0a23a1a4 100644 +--- nss/lib/pk11wrap/pk11load.c ++++ nss/lib/pk11wrap/pk11load.c +@@ -466,6 +466,15 @@ secmod_LoadPKCS11Module(SECMODModule *mod, SECMODModule **oldModule) * unload the library if anything goes wrong from here on out... */ library = PR_LoadLibrary(mod->dllName); ++#ifndef NSS_STATIC_SOFTOKEN + if ((library == NULL) && + !rindex(mod->dllName, PR_GetDirectorySeparator())) { + library = PORT_LoadLibraryFromOrigin(my_shlib_name, + (PRFuncPtr) &softoken_LoadDSO, + mod->dllName); + } ++#endif + mod->library = (void *)library; if (library == NULL) { -diff -ru -x '*~' -x '*.orig' -x '*.rej' nss/lib/util/secload.c nss/lib/util/secload.c ---- nss/lib/util/secload.c 2017-01-04 15:24:24.000000000 +0100 -+++ nss/lib/util/secload.c 2017-01-24 14:43:31.030420852 +0100 -@@ -70,9 +70,14 @@ +diff --git nss/lib/util/secload.c nss/lib/util/secload.c +index 12efd2f75..8b74478f6 100644 +--- nss/lib/util/secload.c ++++ nss/lib/util/secload.c +@@ -70,9 +70,14 @@ loader_LoadLibInReferenceDir(const char* referencePath, const char* name) /* Remove the trailing filename from referencePath and add the new one */ c = strrchr(referencePath, PR_GetDirectorySeparator()); @@ -56,7 +51,7 @@ diff -ru -x '*~' -x '*.orig' -x '*.rej' nss/lib/util/secload.c nss/lib/util/secl if (fullName) { memcpy(fullName, referencePath, referencePathSize); strcpy(fullName + referencePathSize, name); -@@ -82,6 +87,11 @@ +@@ -82,6 +87,11 @@ loader_LoadLibInReferenceDir(const char* referencePath, const char* name) #endif libSpec.type = PR_LibSpec_Pathname; libSpec.value.pathname = fullName; @@ -68,7 +63,7 @@ diff -ru -x '*~' -x '*.orig' -x '*.rej' nss/lib/util/secload.c nss/lib/util/secl dlh = PR_LoadLibraryWithFlags(libSpec, PR_LD_NOW | PR_LD_LOCAL #ifdef PR_LD_ALT_SEARCH_PATH /* allow library's dependencies to be found in the same directory -@@ -89,6 +99,10 @@ +@@ -89,6 +99,10 @@ loader_LoadLibInReferenceDir(const char* referencePath, const char* name) | PR_LD_ALT_SEARCH_PATH #endif ); diff --git a/pkgs/development/libraries/nss/default.nix b/pkgs/development/libraries/nss/default.nix index 4ec5518008a..ba6704bc144 100644 --- a/pkgs/development/libraries/nss/default.nix +++ b/pkgs/development/libraries/nss/default.nix @@ -1,11 +1,11 @@ -{ stdenv, fetchurl, nspr, perl, zlib, sqlite, fixDarwinDylibNames, buildPackages }: +{ stdenv, fetchurl, nspr, perl, zlib, sqlite, fixDarwinDylibNames, buildPackages, ninja }: let nssPEM = fetchurl { url = "http://dev.gentoo.org/~polynomial-c/mozilla/nss-3.15.4-pem-support-20140109.patch.xz"; sha256 = "10ibz6y0hknac15zr6dw4gv9nb5r5z9ym6gq18j3xqx7v7n3vpdw"; }; - version = "3.52.1"; + version = "3.54"; underscoreVersion = builtins.replaceStrings ["."] ["_"] version; in stdenv.mkDerivation rec { @@ -14,12 +14,12 @@ in stdenv.mkDerivation rec { src = fetchurl { url = "mirror://mozilla/security/nss/releases/NSS_${underscoreVersion}_RTM/src/${pname}-${version}.tar.gz"; - sha256 = "0y4jb9095f7bbgw7d7kvzm4c3g4p5i6y68fwhb8wlkpb7b1imj5w"; + sha256 = "0hvfip056pl07h6w91i6fyji5nczrrsxyr56rls7jd2yryzqpcfs"; }; depsBuildBuild = [ buildPackages.stdenv.cc ]; - nativeBuildInputs = [ perl ]; + nativeBuildInputs = [ perl ninja (buildPackages.python2.withPackages (ps: with ps; [ gyp ])) ]; buildInputs = [ zlib sqlite ] ++ stdenv.lib.optional stdenv.isDarwin fixDarwinDylibNames; @@ -29,10 +29,18 @@ in stdenv.mkDerivation rec { prePatch = '' # strip the trailing whitespace from the patch line and the renamed CKO_NETSCAPE_ enum to CKO_NSS_ xz -d < ${nssPEM} | sed \ - -e '/^-DIRS = builtins $/ s/ $//' \ + -e 's/-DIRS = builtins $/-DIRS = . builtins/g' \ -e 's/CKO_NETSCAPE_/CKO_NSS_/g' \ -e 's/CKT_NETSCAPE_/CKT_NSS_/g' \ | patch -p1 + + patchShebangs nss + + for f in nss/coreconf/config.gypi nss/build.sh nss/coreconf/config.gypi; do + substituteInPlace "$f" --replace "/usr/bin/env" "${buildPackages.coreutils}/bin/env" + done + + substituteInPlace nss/coreconf/config.gypi --replace "/usr/bin/grep" "${buildPackages.coreutils}/bin/env grep" ''; patches = @@ -40,6 +48,7 @@ in stdenv.mkDerivation rec { # Based on http://patch-tracker.debian.org/patch/series/dl/nss/2:3.15.4-1/85_security_load.patch ./85_security_load.patch ./ckpem.patch + ./fix-cross-compilation.patch ]; patchFlags = [ "-p0" ]; @@ -52,43 +61,40 @@ in stdenv.mkDerivation rec { preConfigure = "cd nss"; - makeFlags = let - # NSS's build systems expects aarch32 to be called arm; if we pass in armv6l/armv7l, it - # fails with a linker error - cpu = if stdenv.hostPlatform.isAarch32 then "arm" else stdenv.hostPlatform.parsed.cpu.name; - in [ - "NSPR_INCLUDE_DIR=${nspr.dev}/include" - "NSPR_LIB_DIR=${nspr.out}/lib" - "NSDISTMODE=copy" - "BUILD_OPT=1" - "SOURCE_PREFIX=\$(out)" - "NSS_ENABLE_ECC=1" - "USE_SYSTEM_ZLIB=1" - "NSS_USE_SYSTEM_SQLITE=1" - "NATIVE_CC=${buildPackages.stdenv.cc}/bin/cc" - ] ++ stdenv.lib.optionals (!stdenv.isDarwin) [ - # Pass in CPU even if we're not cross compiling, because otherwise it tries to guess with - # uname, which can be wrong if e.g. we're compiling for aarch32 on aarch64 - "OS_TEST=${cpu}" - "CPU_ARCH=${cpu}" - ] ++ stdenv.lib.optional (stdenv.hostPlatform != stdenv.buildPlatform) [ - "CROSS_COMPILE=1" - "NSS_DISABLE_GTESTS=1" # don't want to build tests when cross-compiling - ] ++ stdenv.lib.optional stdenv.is64bit "USE_64=1" - ++ stdenv.lib.optional stdenv.isDarwin "CCC=clang++"; + buildPhase = let + getArch = platform: if platform.isx86_64 then "x64" + else if platform.isx86_32 then "ia32" + else if platform.isAarch32 then "arm" + else if platform.isAarch64 then "arm64" + else platform.parsed.cpu.name; + # yes, this is correct. nixpkgs uses "host" for the platform the binary will run on whereas nss uses "host" for the platform that the build is running on + target = getArch stdenv.hostPlatform; + host = getArch stdenv.buildPlatform; + in '' + runHook preBuild - NIX_CFLAGS_COMPILE = "-Wno-error"; + sed -i 's|nss_dist_dir="$dist_dir"|nss_dist_dir="'$out'"|;s|nss_dist_obj_dir="$obj_dir"|nss_dist_obj_dir="'$out'"|' build.sh + ./build.sh -v --opt \ + --with-nspr=${nspr.dev}/include:${nspr.out}/lib \ + --system-sqlite \ + --enable-legacy-db \ + --target ${target} \ + -Dhost_arch=${host} \ + -Duse_system_zlib=1 \ + ${stdenv.lib.optionalString stdenv.isDarwin "--clang"} \ + ${stdenv.lib.optionalString (stdenv.hostPlatform != stdenv.buildPlatform) "--disable-tests"} - # TODO(@oxij): investigate this: `make -n check` works but `make - # check` fails with "no rule", same for "installcheck". - doCheck = false; - doInstallCheck = false; + runHook postBuild + ''; + + NIX_CFLAGS_COMPILE = "-Wno-error -DNIX_NSS_LIBDIR=\"${placeholder "out"}/lib/\""; + + installPhase = '' + runHook preInstall - postInstall = '' rm -rf $out/private + find $out -name "*.TOC" -delete mv $out/public $out/include - mv $out/*.OBJ/* $out/ - rmdir $out/*.OBJ ln -s lib $out/lib64 @@ -138,6 +144,8 @@ in stdenv.mkDerivation rec { moveToOutput bin/nss-config "$dev" moveToOutput lib/libcrmf.a "$dev" # needed by firefox, for example rm -f "$out"/lib/*.a + + runHook postInstall ''; meta = with stdenv.lib; { diff --git a/pkgs/development/libraries/nss/fix-cross-compilation.patch b/pkgs/development/libraries/nss/fix-cross-compilation.patch new file mode 100644 index 00000000000..42b0620f48d --- /dev/null +++ b/pkgs/development/libraries/nss/fix-cross-compilation.patch @@ -0,0 +1,11 @@ +--- nss/nss.gyp ++++ nss/nss.gyp +@@ -280,7 +280,7 @@ + 'outputs/': [['exclude', 'nssdbm3']] + }], + ], +- 'action': ['<(python)', '<(DEPTH)/coreconf/shlibsign.py', '<@(_inputs)'] ++ 'action': ['true'] + } + ], + }, From d2694d936ef88d0d6028203105552efddf6db23d Mon Sep 17 00:00:00 2001 From: Maximilian Bosch Date: Tue, 14 Jul 2020 17:32:06 +0200 Subject: [PATCH 076/103] rustPlatform: don't install artifacts modified by `checkPhase` While the artifacts from `buildPhase` should be used for testing as well, it should be avoided that those are modified during `checkPhase`. This can happen if a package is built e.g. with special `cargoBuildFlags` that don't apply to the `checkPhase`. In that case, a binary would be installed into `$out` without those flags since `checkPhase` overrides the binary in the `target`-directory. This patch copies the state of `target/release` into a temporary location at the end of the `buildPhase` and installs the results from that temporary directory into `$out` while `checkPhase` can continue using the configured build-dir. cc #91689 Closes #93119 Closes #91191 --- pkgs/build-support/rust/default.nix | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/pkgs/build-support/rust/default.nix b/pkgs/build-support/rust/default.nix index 8d3a7ba6929..c292b8ea4d4 100644 --- a/pkgs/build-support/rust/default.nix +++ b/pkgs/build-support/rust/default.nix @@ -74,6 +74,7 @@ let ccForHost="${stdenv.cc}/bin/${stdenv.cc.targetPrefix}cc"; cxxForHost="${stdenv.cc}/bin/${stdenv.cc.targetPrefix}c++"; releaseDir = "target/${rustTarget}/${buildType}"; + tmpDir = "${releaseDir}-tmp"; # Specify the stdenv's `diff` by abspath to ensure that the user's build # inputs do not cause us to find the wrong `diff`. @@ -193,7 +194,9 @@ stdenv.mkDerivation (args // { # This needs to be done after postBuild: packages like `cargo` do a pushd/popd in # the pre/postBuild-hooks that need to be taken into account before gathering # all binaries to install. - bins=$(find $releaseDir \ + mkdir -p $tmpDir + cp -r $releaseDir/* $tmpDir/ + bins=$(find $tmpDir \ -maxdepth 1 \ -type f \ -executable ! \( -regex ".*\.\(so.[0-9.]+\|so\|a\|dylib\)" \)) @@ -214,13 +217,13 @@ stdenv.mkDerivation (args // { strictDeps = true; - inherit releaseDir; + inherit releaseDir tmpDir; installPhase = args.installPhase or '' runHook preInstall # rename the output dir to a architecture independent one - mapfile -t targets < <(find "$NIX_BUILD_TOP" -type d | grep '${releaseDir}$') + mapfile -t targets < <(find "$NIX_BUILD_TOP" -type d | grep '${tmpDir}$') for target in "''${targets[@]}"; do rm -rf "$target/../../${buildType}" ln -srf "$target" "$target/../../" @@ -228,7 +231,7 @@ stdenv.mkDerivation (args // { mkdir -p $out/bin $out/lib xargs -r cp -t $out/bin <<< $bins - find $releaseDir \ + find $tmpDir \ -maxdepth 1 \ -regex ".*\.\(so.[0-9.]+\|so\|a\|dylib\)" \ -print0 | xargs -r -0 cp -t $out/lib From 80a3c332a47b10185bd2fca02d065c2d2a408644 Mon Sep 17 00:00:00 2001 From: worldofpeace Date: Wed, 15 Jul 2020 15:30:53 -0400 Subject: [PATCH 077/103] gtk3: 3.24.20 -> 3.24.21 --- 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 aec5c4d2ded..bf78d15d39c 100644 --- a/pkgs/development/libraries/gtk/3.x.nix +++ b/pkgs/development/libraries/gtk/3.x.nix @@ -48,7 +48,7 @@ with stdenv.lib; stdenv.mkDerivation rec { pname = "gtk+3"; - version = "3.24.20"; + version = "3.24.21"; outputs = [ "out" "dev" ] ++ optional withGtkDoc "devdoc"; outputBin = "dev"; @@ -60,7 +60,7 @@ stdenv.mkDerivation rec { src = fetchurl { url = "mirror://gnome/sources/gtk+/${stdenv.lib.versions.majorMinor version}/gtk+-${version}.tar.xz"; - sha256 = "1wqxkd3xnqwihcawncp9mkf9bv5a5fg5i4ahm6klpl782vvnkb1d"; + sha256 = "0llgq2adzn9p3bfq9rv2dhscmvzs35jp3glrfvy3vs1mrpknmsmf"; }; patches = [ From 166a71a6ae4225bcb2e36033f463a67600df837e Mon Sep 17 00:00:00 2001 From: Dmitry Kalinkin Date: Wed, 15 Jul 2020 22:35:31 -0400 Subject: [PATCH 078/103] arrow-cpp: fix eval, enable linking against zstd_shared This is a second part for #93203. --- pkgs/development/libraries/arrow-cpp/default.nix | 2 +- pkgs/top-level/all-packages.nix | 2 -- 2 files changed, 1 insertion(+), 3 deletions(-) diff --git a/pkgs/development/libraries/arrow-cpp/default.nix b/pkgs/development/libraries/arrow-cpp/default.nix index d9bf6752da0..a989833249c 100644 --- a/pkgs/development/libraries/arrow-cpp/default.nix +++ b/pkgs/development/libraries/arrow-cpp/default.nix @@ -96,7 +96,7 @@ in stdenv.mkDerivation rec { "-DARROW_WITH_SNAPPY=ON" "-DARROW_WITH_ZLIB=ON" "-DARROW_WITH_ZSTD=ON" - "-DARROW_ZSTD_USE_SHARED=OFF" # TODO use shared zstd once #91984 hits the master + "-DARROW_ZSTD_USE_SHARED=${if enableShared then "ON" else "OFF"}" # Parquet options: "-DARROW_PARQUET=ON" "-DPARQUET_BUILD_EXECUTABLES=ON" diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index df061657e2d..f76bb0fc5d1 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -11426,8 +11426,6 @@ in arrayfire = callPackage ../development/libraries/arrayfire {}; arrow-cpp = callPackage ../development/libraries/arrow-cpp ({ - # Workaround until #91984 is in, this will need to be removed later. - zstd = zstd.override { enableShared = false; }; } // stdenv.lib.optionalAttrs (stdenv.hostPlatform.isi686 && stdenv.cc.isGNU) { stdenv = overrideCC stdenv buildPackages.gcc6; # hidden symbol `__divmoddi4' }); From 75fdc1ced6c56d85a5d948bf0442ef521449bc5d Mon Sep 17 00:00:00 2001 From: Jan Tojnar Date: Wed, 15 Jul 2020 07:56:38 +0200 Subject: [PATCH 079/103] cmake.setupHook: define shareDocName MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The docdir flag needs to include `PROJECT_NAME` according to [GNU guidelines]. We are passing `-DCMAKE_INSTALL_DOCDIR=${!outputDoc}/share/doc/${shareDocName}` but `$shareDocName` was unset. The `multiple-outputs.sh` setup hook actually only defines `shareDocName` as a local variable so it was not available for cmake setup hook. Making it global would be of limited usability, since it primarily tries to extract the project name from configure script. Additionally, it would not be set because the setup hook defines `setOutputFlags=`, preventing the function defining `shareDocName` from running. And lastly, the function would not run for single-output derivations. Previously, we tried [not disabling `setOutputFlags`] and passing the directory flags only for multi-output derivations that do not disable `setOutputFlags` but that meant having two different branches of code, making it harder to check correctness. The multi-output one did in fact not work due to aforementioned undefined `shareDocName`. It also broke derivations that set `setOutputFlags=` like [`qtModule` function does] (probably because some Qt modules have configure scripts incompatible with `configureFlags` defined by `multiple-outputs.sh` setup hook). For that reason, it was [reverted], putting us back to start. Let’s try to extract the project name from CMake in the cmake setup hook. CMake has a `-L` flag for dumping variables but `PROJECT_NAME` did not seem to be among them when I tested, so I had to resort to parsing the `CMakeLists.txt` file. The extraction function is limited, it does not deal with * project name on different line from the `project(` command opening - that will just not get matched so we will fall back to using the derivation name * variable interpolation - we will just fall back to using derivation name when the extracted `project_name` contains a dollar character * multiple [`project`] commands - The command sets `PROJECT_NAME` variable anew with each call, so the last `project` call before `include(GNUInstallDirs)` command will be used when the included module would [cache the `CMAKE_INSTALL_DOCDIR` variable]. We will just take the first discovered `project` command for simplicity. Hopefully, there are not many projects that use multiple `project` calls before including `GNUInstallDirs`. In either case, we will have some subdirectory so the conflicts will be minimized. [GNU guidelines]: https://www.gnu.org/prep/standards/html_node/Directory-Variables.html#index-docdir [not disabling `setOutputFlags`]: https://github.com/NixOS/nixpkgs/commit/be1b22538a60e52987d238bb11f93043682b6e9a [`qtModule` function does]: https://github.com/NixOS/nixpkgs/pull/12740 [reverted]: https://github.com/NixOS/nixpkgs/pull/92298 [`PROJECT_NAME`]: https://cmake.org/cmake/help/v3.18/variable/PROJECT_NAME.html [`project`]: https://cmake.org/cmake/help/v3.18/command/project.html [cache the `CMAKE_INSTALL_DOCDIR` variable]: https://github.com/Kitware/CMake/blob/92e30d576d66ac05254bba0f0ff7d655947beb0f/Modules/GNUInstallDirs.cmake#L298-L299 --- .../tools/build-managers/cmake/setup-hook.sh | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/pkgs/development/tools/build-managers/cmake/setup-hook.sh b/pkgs/development/tools/build-managers/cmake/setup-hook.sh index 87bbefa6bbf..73f24a9a205 100755 --- a/pkgs/development/tools/build-managers/cmake/setup-hook.sh +++ b/pkgs/development/tools/build-managers/cmake/setup-hook.sh @@ -68,6 +68,24 @@ cmakeConfigurePhase() { # nix/store directory. cmakeFlags="-DCMAKE_INSTALL_NAME_DIR=${!outputLib}/lib $cmakeFlags" + # The docdir flag needs to include PROJECT_NAME as per GNU guidelines, + # try to extract it from CMakeLists.txt. + if [[ -z "$shareDocName" ]]; then + local cmakeLists="${cmakeDir}/CMakeLists.txt" + if [[ -f "$cmakeLists" ]]; then + local shareDocName="$(grep --only-matching --perl-regexp --ignore-case '\bproject\s*\(\s*"?\K([^[:space:]")]+)' < "$cmakeLists" | head -n1)" + fi + # The argument sometimes contains garbage or variable interpolation. + # When that is the case, let’s fall back to the derivation name. + if [[ -z "$shareDocName" ]] || echo "$shareDocName" | grep -q '[^a-zA-Z0-9_-+]'; then + if [[ -n "${pname-}" ]]; then + shareDocName="$pname" + else + shareDocName="$(echo "$name" | sed 's/-[^a-zA-Z].*//')" + fi + fi + fi + # This ensures correct paths with multiple output derivations # It requires the project to use variables from GNUInstallDirs module # https://cmake.org/cmake/help/latest/module/GNUInstallDirs.html From 2596c96f8738998129743b4d1a63b3ce94d368d5 Mon Sep 17 00:00:00 2001 From: Jan Tojnar Date: Wed, 15 Jul 2020 01:23:34 +0200 Subject: [PATCH 080/103] Revert "transmission: Remove $out/share/doc" This reverts commit 25bc56fcb8f1afc64d7f15fbc68e8ad3b8a1567a. --- pkgs/applications/networking/p2p/transmission/default.nix | 3 --- 1 file changed, 3 deletions(-) diff --git a/pkgs/applications/networking/p2p/transmission/default.nix b/pkgs/applications/networking/p2p/transmission/default.nix index 9d37f1f4398..ab4fc0908ba 100644 --- a/pkgs/applications/networking/p2p/transmission/default.nix +++ b/pkgs/applications/networking/p2p/transmission/default.nix @@ -57,9 +57,6 @@ in stdenv.mkDerivation { ++ lib.optionals enableQt [ qt5.wrapQtAppsHook ] ; - # Doc has high risk of collisions - postInstall = "rm -r $out/share/doc"; - buildInputs = [ openssl curl From 812d124fbc3bf3974e041286477851e45004cde9 Mon Sep 17 00:00:00 2001 From: Jan Tojnar Date: Wed, 15 Jul 2020 01:23:44 +0200 Subject: [PATCH 081/103] Revert "darktable: Remove $out/share/doc" This reverts commit 5d7cbc659e69d10ad8ab34f28117434d36e0cdd1. --- pkgs/applications/graphics/darktable/default.nix | 2 -- 1 file changed, 2 deletions(-) diff --git a/pkgs/applications/graphics/darktable/default.nix b/pkgs/applications/graphics/darktable/default.nix index c32766134a9..948b4ddd54d 100644 --- a/pkgs/applications/graphics/darktable/default.nix +++ b/pkgs/applications/graphics/darktable/default.nix @@ -34,8 +34,6 @@ stdenv.mkDerivation rec { "-DUSE_KWALLET=OFF" ]; - # Doc has high risk of collisions - postInstall = "rm -r $out/share/doc"; # darktable changed its rpath handling in commit # 83c70b876af6484506901e6b381304ae0d073d3c and as a result the From ab0171b08d5d10405d2a25c33dc85be198c7b636 Mon Sep 17 00:00:00 2001 From: "R. RyanTM" Date: Thu, 16 Jul 2020 04:37:54 +0000 Subject: [PATCH 082/103] fluent-bit: 1.4.6 -> 1.5.0 --- pkgs/tools/misc/fluent-bit/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/tools/misc/fluent-bit/default.nix b/pkgs/tools/misc/fluent-bit/default.nix index d882c6efb5e..cc40c89bc6f 100644 --- a/pkgs/tools/misc/fluent-bit/default.nix +++ b/pkgs/tools/misc/fluent-bit/default.nix @@ -2,13 +2,13 @@ stdenv.mkDerivation rec { pname = "fluent-bit"; - version = "1.4.6"; + version = "1.5.0"; src = fetchFromGitHub { owner = "fluent"; repo = "fluent-bit"; rev = "v${version}"; - sha256 = "0qxyjmgl85q7xk629l548bpzizma5n4j1r6nqbwh9j15ajvq7mq8"; + sha256 = "15nfzs1p6na0n98hpzh4lnzcj4g83dg2nfhd4f9lay32qj12cqgj"; }; nativeBuildInputs = [ cmake flex bison ]; From 1e816defe76e48b5e2bfa6b2d0fb3a85cca529cf Mon Sep 17 00:00:00 2001 From: "R. RyanTM" Date: Thu, 16 Jul 2020 04:42:06 +0000 Subject: [PATCH 083/103] fly: 6.3.0 -> 6.4.0 --- .../tools/continuous-integration/fly/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/development/tools/continuous-integration/fly/default.nix b/pkgs/development/tools/continuous-integration/fly/default.nix index bdad33dee74..8497cea01b6 100644 --- a/pkgs/development/tools/continuous-integration/fly/default.nix +++ b/pkgs/development/tools/continuous-integration/fly/default.nix @@ -2,16 +2,16 @@ buildGoModule rec { pname = "fly"; - version = "6.3.0"; + version = "6.4.0"; src = fetchFromGitHub { owner = "concourse"; repo = "concourse"; rev = "v${version}"; - sha256 = "006qkg661hzbc2gpcnpxm09bp1kbb98y0bgdr49bjlnapcmdgr1b"; + sha256 = "08lw345kzkic5b2dqj3d0d9x1mas9rpi4rdmbhww9r60swj169i7"; }; - vendorSha256 = "03az7l9rf2syw837zliny82xhkqlad16z0vfcg5h21m3bhz6v6jy"; + vendorSha256 = "0a78cjfj909ic8wci8id2h5f6r34h90myk6z7m918n08vxv60jvw"; subPackages = [ "fly" ]; From af1b0c92ad1cebd1816a0edac5489a91c6a6dc7c Mon Sep 17 00:00:00 2001 From: zowoq <59103226+zowoq@users.noreply.github.com> Date: Thu, 16 Jul 2020 13:04:47 +1000 Subject: [PATCH 084/103] go: 1.14.4 -> 1.14.5 --- pkgs/development/compilers/go/1.14.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/compilers/go/1.14.nix b/pkgs/development/compilers/go/1.14.nix index 6ddd61253a4..ebefe90cb4a 100644 --- a/pkgs/development/compilers/go/1.14.nix +++ b/pkgs/development/compilers/go/1.14.nix @@ -31,11 +31,11 @@ in stdenv.mkDerivation rec { pname = "go"; - version = "1.14.4"; + version = "1.14.5"; src = fetchurl { url = "https://dl.google.com/go/go${version}.src.tar.gz"; - sha256 = "1105qk2l4kfy1ki9n9gh8j4gfqrfgfwapa1fp38hih9aphxsy4bh"; + sha256 = "0p1i80j3dk597ph5h6mvvv8p7rbzwmxdfb6558amcpkkj060hk6a"; }; # perl is used for testing go vet From 92cfd28d2b45e254db69b993e260758d5cf2f674 Mon Sep 17 00:00:00 2001 From: zowoq <59103226+zowoq@users.noreply.github.com> Date: Thu, 16 Jul 2020 12:45:41 +1000 Subject: [PATCH 085/103] ffmpeg_2_8: 2.8.16 -> 2.8.17 --- pkgs/development/libraries/ffmpeg/2.8.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/ffmpeg/2.8.nix b/pkgs/development/libraries/ffmpeg/2.8.nix index 5d1f93a9e04..309cd2b3b35 100644 --- a/pkgs/development/libraries/ffmpeg/2.8.nix +++ b/pkgs/development/libraries/ffmpeg/2.8.nix @@ -1,7 +1,7 @@ { callPackage, ... } @ args: callPackage ./generic.nix (rec { - version = "${branch}.16"; + version = "${branch}.17"; branch = "2.8"; - sha256 = "0lfmfd6rhywis9rblkxv33rpwfga9xv261fq4cn3pkx1izih7ybk"; + sha256 = "05bnhvs2f82aq95z1wd3wr42sljdfq4kiyzqwhpji983mndx14vl"; } // args) From 88c720f0bfa6c4d1058008c80bce92b4d96abd15 Mon Sep 17 00:00:00 2001 From: zowoq <59103226+zowoq@users.noreply.github.com> Date: Thu, 16 Jul 2020 12:45:41 +1000 Subject: [PATCH 086/103] ffmpeg_3_4: 3.4.7 -> 3.4.8 --- pkgs/development/libraries/ffmpeg/3.4.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/ffmpeg/3.4.nix b/pkgs/development/libraries/ffmpeg/3.4.nix index 6c16b55dfe8..629fdba5673 100644 --- a/pkgs/development/libraries/ffmpeg/3.4.nix +++ b/pkgs/development/libraries/ffmpeg/3.4.nix @@ -6,7 +6,7 @@ callPackage ./generic.nix (rec { version = branch; - branch = "3.4.7"; - sha256 = "0hj91gjps92f4w3yyqss89yrs6s75574hbj5gz9g5affd6294yhc"; + branch = "3.4.8"; + sha256 = "1d0r4yja2dkkyhdwx1migq46gsrcbajiv66263a5sq5bfr9dqkch"; darwinFrameworks = [ Cocoa CoreMedia ]; } // args) From 916bc99f2cb95f7e9d25dd83871e5b878c97c703 Mon Sep 17 00:00:00 2001 From: zowoq <59103226+zowoq@users.noreply.github.com> Date: Thu, 16 Jul 2020 12:45:41 +1000 Subject: [PATCH 087/103] ffmpeg: 4.3 -> 4.3.1 --- pkgs/development/libraries/ffmpeg/4.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/ffmpeg/4.nix b/pkgs/development/libraries/ffmpeg/4.nix index de1bfff6f91..7e3941d3f37 100644 --- a/pkgs/development/libraries/ffmpeg/4.nix +++ b/pkgs/development/libraries/ffmpeg/4.nix @@ -5,8 +5,8 @@ }@args: callPackage ./generic.nix (rec { - version = "4.3"; + version = "4.3.1"; branch = "4.3"; - sha256 = "1qnnhd2b0g5sg72pclxs3i8sxzz0raky69k7w9cmpba9zh973s57"; + sha256 = "1nghcpm2r9ir2h6xpqfn9381jq6aiwlkwlnyplxywvkbjiisr97l"; darwinFrameworks = [ Cocoa CoreMedia VideoToolbox ]; } // args) From 4c99c5543ca2dabd6efe136f2e3ccdb95ee9156b Mon Sep 17 00:00:00 2001 From: zowoq <59103226+zowoq@users.noreply.github.com> Date: Fri, 17 Jul 2020 13:20:46 +1000 Subject: [PATCH 088/103] go: 1.14.5 -> 1.14.6 --- pkgs/development/compilers/go/1.14.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/compilers/go/1.14.nix b/pkgs/development/compilers/go/1.14.nix index ebefe90cb4a..d9fc67cf46e 100644 --- a/pkgs/development/compilers/go/1.14.nix +++ b/pkgs/development/compilers/go/1.14.nix @@ -31,11 +31,11 @@ in stdenv.mkDerivation rec { pname = "go"; - version = "1.14.5"; + version = "1.14.6"; src = fetchurl { url = "https://dl.google.com/go/go${version}.src.tar.gz"; - sha256 = "0p1i80j3dk597ph5h6mvvv8p7rbzwmxdfb6558amcpkkj060hk6a"; + sha256 = "02acr52bxfjlr3m11576gdwn8hjv1pr2pffcis913m0m31w9vz3k"; }; # perl is used for testing go vet From e33bed77ce907590727dfee1f34d0d031dc7c306 Mon Sep 17 00:00:00 2001 From: Alyssa Ross Date: Thu, 16 Jul 2020 20:26:02 +0000 Subject: [PATCH 089/103] rust: 1.44.1 -> 1.45.0 Thunderbird and Firefox don't build with 1.45. --- pkgs/development/compilers/rust/1_45.nix | 42 ++++++++++++++++++++++++ pkgs/top-level/all-packages.nix | 10 ++++-- 2 files changed, 50 insertions(+), 2 deletions(-) create mode 100644 pkgs/development/compilers/rust/1_45.nix diff --git a/pkgs/development/compilers/rust/1_45.nix b/pkgs/development/compilers/rust/1_45.nix new file mode 100644 index 00000000000..c72292679e5 --- /dev/null +++ b/pkgs/development/compilers/rust/1_45.nix @@ -0,0 +1,42 @@ +# New rust versions should first go to staging. +# Things to check after updating: +# 1. Rustc should produce rust binaries on x86_64-linux, aarch64-linux and x86_64-darwin: +# i.e. nix-shell -p fd or @GrahamcOfBorg build fd on github +# This testing can be also done by other volunteers as part of the pull +# request review, in case platforms cannot be covered. +# 2. The LLVM version used for building should match with rust upstream. +# 3. Firefox and Thunderbird should still build on x86_64-linux. + +{ stdenv, lib +, buildPackages +, newScope, callPackage +, CoreFoundation, Security +, llvmPackages_5 +, pkgsBuildTarget, pkgsBuildBuild +} @ args: + +import ./default.nix { + rustcVersion = "1.45.0"; + rustcSha256 = "0z6dh0yd3fcm3qh960wi4s6fa6pxz9mh77psycsqfkkx5kqra15s"; + + # Note: the version MUST be one version prior to the version we're + # building + bootstrapVersion = "1.44.1"; + + # fetch hashes by running `print-hashes.sh 1.45.0` + bootstrapHashes = { + i686-unknown-linux-gnu = "e69689b0a1b66599cf83e7dd54f839419007e44376195e93e301a3175da3d854"; + x86_64-unknown-linux-gnu = "a41df89a461a580536aeb42755e43037556fba2e527dd13a1e1bb0749de28202"; + arm-unknown-linux-gnueabihf = "ea18ccdfb62a153c2d43d013fdec56993cc9267f1cdc6f3834df8a2b9b468f08"; + armv7-unknown-linux-gnueabihf = "d44294732cf268ea84908f1135f574ab9489132a332eaa9d5bda547374b15d54"; + aarch64-unknown-linux-gnu = "a2d74ebeec0b6778026b6c37814cdc91d14db3b0d8b6d69d036216f4d9cf7e49"; + x86_64-apple-darwin = "a5464e7bcbce9647607904a4afa8362382f1fc55d39e7bbaf4483ac00eb5d56a"; + }; + + selectRustPackage = pkgs: pkgs.rust_1_45; + + rustcPatches = [ + ]; +} + +(builtins.removeAttrs args [ "fetchpatch" ]) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index f76bb0fc5d1..be333bf8900 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -9293,10 +9293,14 @@ in rust_1_44 = callPackage ../development/compilers/rust/1_44.nix { inherit (darwin.apple_sdk.frameworks) CoreFoundation Security; }; - rust = rust_1_44; + rust_1_45 = callPackage ../development/compilers/rust/1_45.nix { + inherit (darwin.apple_sdk.frameworks) CoreFoundation Security; + }; + rust = rust_1_45; rustPackages_1_44 = rust_1_44.packages.stable; - rustPackages = rustPackages_1_44; + rustPackages_1_45 = rust_1_45.packages.stable; + rustPackages = rustPackages_1_45; inherit (rustPackages) cargo clippy rustc rustPlatform; inherit (rust) makeRustPlatform; @@ -19948,6 +19952,7 @@ in firefoxPackages = recurseIntoAttrs (callPackage ../applications/networking/browsers/firefox/packages.nix { callPackage = pkgs.newScope { + inherit (rustPackages_1_44) cargo rustc; libpng = libpng_apng; python = python2; gnused = gnused_422; @@ -22671,6 +22676,7 @@ in thonny = callPackage ../applications/editors/thonny { }; thunderbird = callPackage ../applications/networking/mailreaders/thunderbird { + inherit (rustPackages_1_44) cargo rustc; libpng = libpng_apng; gtk3Support = true; }; From d41cd156d03630228f2ae87c556f068db2fcfd1a Mon Sep 17 00:00:00 2001 From: Michael Weiss Date: Tue, 7 Jul 2020 20:13:43 +0200 Subject: [PATCH 090/103] scons: 3.1.2 -> 4.0.0 --- pkgs/development/tools/build-managers/scons/common.nix | 10 ++++++++-- .../development/tools/build-managers/scons/default.nix | 6 +++++- 2 files changed, 13 insertions(+), 3 deletions(-) diff --git a/pkgs/development/tools/build-managers/scons/common.nix b/pkgs/development/tools/build-managers/scons/common.nix index 41ac16bed7a..57238c6d6cd 100644 --- a/pkgs/development/tools/build-managers/scons/common.nix +++ b/pkgs/development/tools/build-managers/scons/common.nix @@ -1,6 +1,6 @@ { version, sha256 }: -{ stdenv, fetchurl, python3Packages, python2Packages, scons }: +{ stdenv, fetchurl, python3Packages, lib }: python3Packages.buildPythonApplication rec { pname = "scons"; @@ -13,7 +13,13 @@ python3Packages.buildPythonApplication rec { setupHook = ./setup-hook.sh; - passthru.py2 = scons.override { python3Packages = python2Packages; }; + postPatch = lib.optionalString (lib.versionAtLeast version "4.0.0") '' + substituteInPlace setup.cfg \ + --replace "build/dist" "dist" + ''; + + # TODO: "Invalid SConscript usage - no parameters": + doCheck = lib.versionOlder version "4.0.0"; meta = with stdenv.lib; { description = "An improved, cross-platform substitute for Make"; diff --git a/pkgs/development/tools/build-managers/scons/default.nix b/pkgs/development/tools/build-managers/scons/default.nix index 19b092b86ba..15eaf12207f 100644 --- a/pkgs/development/tools/build-managers/scons/default.nix +++ b/pkgs/development/tools/build-managers/scons/default.nix @@ -7,8 +7,12 @@ in { version = "3.0.1"; sha256 = "0wzid419mlwqw9llrg8gsx4nkzhqy16m4m40r0xnh6cwscw5wir4"; }).override { python3Packages = python2Packages; }; - scons_latest = mkScons { + scons_3_1_2 = (mkScons { version = "3.1.2"; sha256 = "1yzq2gg9zwz9rvfn42v5jzl3g4qf1khhny6zfbi2hib55zvg60bq"; + }).override { python3Packages = python2Packages; }; + scons_latest = mkScons { + version = "4.0.0"; + sha256 = "1ikw5lh0h206xd74g39jdlrcicb18jj3j80hvm4nbrfgxv1hvibc"; }; } From 595a36d8467b2428b837362711dc5b4c0b8670f1 Mon Sep 17 00:00:00 2001 From: Michael Weiss Date: Sat, 18 Jul 2020 01:30:28 +0200 Subject: [PATCH 091/103] scons.py2: Replace with sconsPackages.scons_3_1_2 Required since SCons 4.0.0 doesn't support Python 2.7 anymore. --- pkgs/applications/audio/jackmix/default.nix | 4 ++-- pkgs/applications/audio/mixxx/default.nix | 4 ++-- pkgs/applications/audio/rhvoice/default.nix | 4 ++-- pkgs/applications/graphics/fluxus/default.nix | 4 ++-- .../networking/instant-messengers/swift-im/default.nix | 4 ++-- pkgs/development/libraries/serf/default.nix | 4 ++-- pkgs/development/libraries/swiften/default.nix | 4 ++-- pkgs/development/tools/nsis/default.nix | 4 ++-- pkgs/games/tdm/default.nix | 4 ++-- pkgs/games/vdrift/default.nix | 4 ++-- pkgs/misc/drivers/xboxdrv/default.nix | 4 ++-- pkgs/os-specific/linux/ffado/default.nix | 4 ++-- pkgs/servers/gpsd/default.nix | 4 ++-- pkgs/servers/nosql/mongodb/mongodb.nix | 4 ++-- pkgs/tools/misc/gringo/default.nix | 4 ++-- 15 files changed, 30 insertions(+), 30 deletions(-) diff --git a/pkgs/applications/audio/jackmix/default.nix b/pkgs/applications/audio/jackmix/default.nix index c3a46439ba7..ad01a3ff76e 100644 --- a/pkgs/applications/audio/jackmix/default.nix +++ b/pkgs/applications/audio/jackmix/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchurl, pkgconfig, scons, qt4, lash, libjack2, jack ? libjack2 }: +{ stdenv, fetchurl, pkgconfig, sconsPackages, qt4, lash, libjack2, jack ? libjack2 }: stdenv.mkDerivation { name = "jackmix-0.5.2"; @@ -9,7 +9,7 @@ stdenv.mkDerivation { patches = [ ./no_error.patch ]; - nativeBuildInputs = [ scons.py2 pkgconfig ]; + nativeBuildInputs = [ sconsPackages.scons_3_1_2 pkgconfig ]; buildInputs = [ qt4 lash diff --git a/pkgs/applications/audio/mixxx/default.nix b/pkgs/applications/audio/mixxx/default.nix index f889d9e1e8d..0792df787e5 100644 --- a/pkgs/applications/audio/mixxx/default.nix +++ b/pkgs/applications/audio/mixxx/default.nix @@ -3,7 +3,7 @@ , libid3tag, libmad, libopus, libshout, libsndfile, libusb1, libvorbis , libGLU, libxcb, lilv, lv2, opusfile , pkgconfig, portaudio, portmidi, protobuf, qtbase, qtscript, qtsvg -, qtx11extras, rubberband, scons, sqlite, taglib, upower, vamp-plugin-sdk +, qtx11extras, rubberband, sconsPackages, sqlite, taglib, upower, vamp-plugin-sdk }: let @@ -28,7 +28,7 @@ mkDerivation rec { sha256 = "1h7q25fv62c5m74d4cn1m6mpanmqpbl2wqbch4qvn488jb2jw1dv"; }; - nativeBuildInputs = [ scons.py2 ]; + nativeBuildInputs = [ sconsPackages.scons_3_1_2 ]; buildInputs = [ chromaprint fftw flac faad2 glibcLocales mp4v2 libid3tag libmad libopus libshout241 libsndfile libusb1 libvorbis libxcb libGLU lilv lv2 opusfile pkgconfig portaudio portmidi protobuf qtbase qtscript qtsvg diff --git a/pkgs/applications/audio/rhvoice/default.nix b/pkgs/applications/audio/rhvoice/default.nix index 7a0a8a59a08..a29fcf383b8 100644 --- a/pkgs/applications/audio/rhvoice/default.nix +++ b/pkgs/applications/audio/rhvoice/default.nix @@ -1,4 +1,4 @@ -{ stdenv, lib, pkgconfig, fetchFromGitHub, scons +{ stdenv, lib, pkgconfig, fetchFromGitHub, sconsPackages , python, glibmm, libpulseaudio, libao }: let @@ -15,7 +15,7 @@ in stdenv.mkDerivation { }; nativeBuildInputs = [ - scons.py2 pkgconfig + sconsPackages.scons_3_1_2 pkgconfig ]; buildInputs = [ diff --git a/pkgs/applications/graphics/fluxus/default.nix b/pkgs/applications/graphics/fluxus/default.nix index a53eb806bcf..f560ad45c57 100644 --- a/pkgs/applications/graphics/fluxus/default.nix +++ b/pkgs/applications/graphics/fluxus/default.nix @@ -18,7 +18,7 @@ , openal , openssl , racket -, scons +, sconsPackages , zlib }: let @@ -69,7 +69,7 @@ stdenv.mkDerivation rec { openssl.dev racket ]; - nativeBuildInputs = [ scons.py2 ]; + nativeBuildInputs = [ sconsPackages.scons_3_1_2 ]; patches = [ ./fix-build.patch ]; sconsFlags = [ diff --git a/pkgs/applications/networking/instant-messengers/swift-im/default.nix b/pkgs/applications/networking/instant-messengers/swift-im/default.nix index 953ce2809c4..c520835b1f0 100644 --- a/pkgs/applications/networking/instant-messengers/swift-im/default.nix +++ b/pkgs/applications/networking/instant-messengers/swift-im/default.nix @@ -1,4 +1,4 @@ -{ mkDerivation, stdenv, fetchurl, pkgconfig, qttools, scons +{ mkDerivation, stdenv, fetchurl, pkgconfig, qttools, sconsPackages , GConf, avahi, boost, hunspell, libXScrnSaver, libedit, libidn, libnatpmp, libxml2 , lua, miniupnpc, openssl, qtbase, qtmultimedia, qtsvg, qtwebkit, qtx11extras, zlib }: @@ -14,7 +14,7 @@ mkDerivation rec { patches = [ ./qt-5.11.patch ./scons.patch ]; - nativeBuildInputs = [ pkgconfig qttools scons.py2 ]; + nativeBuildInputs = [ pkgconfig qttools sconsPackages.scons_3_1_2 ]; buildInputs = [ GConf avahi boost hunspell libXScrnSaver libedit libidn libnatpmp libxml2 diff --git a/pkgs/development/libraries/serf/default.nix b/pkgs/development/libraries/serf/default.nix index 2742ba1577b..92dde2111fc 100644 --- a/pkgs/development/libraries/serf/default.nix +++ b/pkgs/development/libraries/serf/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchurl, apr, scons, openssl, aprutil, zlib, kerberos +{ stdenv, fetchurl, apr, sconsPackages, openssl, aprutil, zlib, kerberos , pkgconfig, libiconv }: stdenv.mkDerivation rec { @@ -9,7 +9,7 @@ stdenv.mkDerivation rec { sha256 = "1k47gbgpp52049andr28y28nbwh9m36bbb0g8p0aka3pqlhjv72l"; }; - nativeBuildInputs = [ pkgconfig scons.py2 ]; + nativeBuildInputs = [ pkgconfig sconsPackages.scons_3_1_2 ]; buildInputs = [ apr openssl aprutil zlib libiconv ] ++ stdenv.lib.optional (!stdenv.isCygwin) kerberos; diff --git a/pkgs/development/libraries/swiften/default.nix b/pkgs/development/libraries/swiften/default.nix index 19bacdd2a61..2fe20cc9e88 100644 --- a/pkgs/development/libraries/swiften/default.nix +++ b/pkgs/development/libraries/swiften/default.nix @@ -1,9 +1,9 @@ -{ stdenv, python, fetchurl, openssl, boost, scons }: +{ stdenv, python, fetchurl, openssl, boost, sconsPackages }: stdenv.mkDerivation rec { pname = "swiften"; version = "4.0.2"; - nativeBuildInputs = [ scons.py2 ]; + nativeBuildInputs = [ sconsPackages.scons_3_1_2 ]; buildInputs = [ python ]; propagatedBuildInputs = [ openssl boost ]; diff --git a/pkgs/development/tools/nsis/default.nix b/pkgs/development/tools/nsis/default.nix index 5b9e7434a8d..bb29bcfdc0f 100644 --- a/pkgs/development/tools/nsis/default.nix +++ b/pkgs/development/tools/nsis/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchurl, fetchzip, scons, zlib }: +{ stdenv, fetchurl, fetchzip, sconsPackages, zlib }: stdenv.mkDerivation rec { pname = "nsis"; @@ -22,7 +22,7 @@ stdenv.mkDerivation rec { chmod -R u+w $out/share/nsis ''; - nativeBuildInputs = [ scons.py2 ]; + nativeBuildInputs = [ sconsPackages.scons_3_1_2 ]; buildInputs = [ zlib ]; sconsFlags = [ diff --git a/pkgs/games/tdm/default.nix b/pkgs/games/tdm/default.nix index 32f91f59868..0ebee4ac8ae 100644 --- a/pkgs/games/tdm/default.nix +++ b/pkgs/games/tdm/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchurl, binutils-unwrapped, scons, gnum4, p7zip, glibc_multi, mesa +{ stdenv, fetchurl, binutils-unwrapped, sconsPackages, gnum4, p7zip, glibc_multi, mesa , xorg, libGLU, libGL, openal , lib, makeWrapper, makeDesktopItem }: @@ -24,7 +24,7 @@ in stdenv.mkDerivation { sha256 = "17wdpip8zvm2njz0xrf7xcxl73hnsc6i83zj18kn8rnjkpy50dd6"; }; nativeBuildInputs = [ - p7zip scons.py2 gnum4 makeWrapper + p7zip sconsPackages.scons_3_1_2 gnum4 makeWrapper ]; buildInputs = [ glibc_multi mesa.dev xorg.libX11.dev openal diff --git a/pkgs/games/vdrift/default.nix b/pkgs/games/vdrift/default.nix index 99475af49e1..ea8b3941f8b 100644 --- a/pkgs/games/vdrift/default.nix +++ b/pkgs/games/vdrift/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchFromGitHub, fetchsvn, pkgconfig, scons, libGLU, libGL, SDL2, SDL2_image +{ stdenv, fetchFromGitHub, fetchsvn, pkgconfig, sconsPackages, libGLU, libGL, SDL2, SDL2_image , libvorbis, bullet, curl, gettext, writeTextFile , data ? fetchsvn { @@ -20,7 +20,7 @@ let sha256 = "001wq3c4n9wzxqfpq40b1jcl16sxbqv2zbkpy9rq2wf9h417q6hg"; }; - nativeBuildInputs = [ pkgconfig scons.py2 ]; + nativeBuildInputs = [ pkgconfig sconsPackages.scons_3_1_2 ]; buildInputs = [ libGLU libGL SDL2 SDL2_image libvorbis bullet curl gettext ]; patches = [ ./0001-Ignore-missing-data-for-installation.patch ]; diff --git a/pkgs/misc/drivers/xboxdrv/default.nix b/pkgs/misc/drivers/xboxdrv/default.nix index eb0511b0c4e..f7fd59fd9fd 100644 --- a/pkgs/misc/drivers/xboxdrv/default.nix +++ b/pkgs/misc/drivers/xboxdrv/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchurl, scons, libX11, pkgconfig +{ stdenv, fetchurl, sconsPackages, libX11, pkgconfig , libusb1, boost, glib, dbus-glib }: let @@ -13,7 +13,7 @@ in stdenv.mkDerivation { }; makeFlags = [ "PREFIX=$(out)" ]; - nativeBuildInputs = [ pkgconfig scons.py2 ]; + nativeBuildInputs = [ pkgconfig sconsPackages.scons_3_1_2 ]; buildInputs = [ libX11 libusb1 boost glib dbus-glib ]; dontUseSconsInstall = true; diff --git a/pkgs/os-specific/linux/ffado/default.nix b/pkgs/os-specific/linux/ffado/default.nix index e814091d59e..b93caccc757 100644 --- a/pkgs/os-specific/linux/ffado/default.nix +++ b/pkgs/os-specific/linux/ffado/default.nix @@ -13,7 +13,7 @@ , libxmlxx3 , pkgconfig , python3 -, scons +, sconsPackages , which , wrapQtAppsHook }: @@ -45,7 +45,7 @@ mkDerivation rec { nativeBuildInputs = [ desktop-file-utils - scons.py2 + sconsPackages.scons_3_1_2 pkgconfig which python diff --git a/pkgs/servers/gpsd/default.nix b/pkgs/servers/gpsd/default.nix index 4e0d08324a0..5f9beb4b834 100644 --- a/pkgs/servers/gpsd/default.nix +++ b/pkgs/servers/gpsd/default.nix @@ -1,4 +1,4 @@ -{ fetchurl, stdenv, scons, pkgconfig, dbus, dbus-glib +{ fetchurl, stdenv, sconsPackages, pkgconfig, dbus, dbus-glib , ncurses, libX11, libXt, libXpm, libXaw, libXext , libusb1, docbook_xml_dtd_412, docbook_xsl, bc , libxslt, xmlto, gpsdUser ? "gpsd", gpsdGroup ? "dialout" @@ -17,7 +17,7 @@ stdenv.mkDerivation rec { }; nativeBuildInputs = [ - scons.py2 pkgconfig docbook_xml_dtd_412 docbook_xsl xmlto bc + sconsPackages.scons_3_1_2 pkgconfig docbook_xml_dtd_412 docbook_xsl xmlto bc python2Packages.python python2Packages.wrapPython ]; diff --git a/pkgs/servers/nosql/mongodb/mongodb.nix b/pkgs/servers/nosql/mongodb/mongodb.nix index 8ffdbcd63c4..55ace594940 100644 --- a/pkgs/servers/nosql/mongodb/mongodb.nix +++ b/pkgs/servers/nosql/mongodb/mongodb.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchurl, scons, boost, gperftools, pcre-cpp, snappy, zlib, libyamlcpp +{ stdenv, fetchurl, sconsPackages, boost, gperftools, pcre-cpp, snappy, zlib, libyamlcpp , sasl, openssl, libpcap, python27, curl, Security, CoreFoundation, cctools }: # Note: @@ -34,7 +34,7 @@ in stdenv.mkDerivation rec { inherit sha256; }; - nativeBuildInputs = [ scons.py2 ]; + nativeBuildInputs = [ sconsPackages.scons_3_1_2 ]; buildInputs = [ boost curl diff --git a/pkgs/tools/misc/gringo/default.nix b/pkgs/tools/misc/gringo/default.nix index 92f1eb89585..05e5e9b64cf 100644 --- a/pkgs/tools/misc/gringo/default.nix +++ b/pkgs/tools/misc/gringo/default.nix @@ -1,5 +1,5 @@ { stdenv, fetchurl, - bison, re2c, scons, + bison, re2c, sconsPackages, libcxx }: @@ -16,7 +16,7 @@ stdenv.mkDerivation { sha256 = "16k4pkwyr2mh5w8j91vhxh9aff7f4y31npwf09w6f8q63fxvpy41"; }; - buildInputs = [ bison re2c scons.py2 ]; + buildInputs = [ bison re2c sconsPackages.scons_3_1_2 ]; patches = [ ./gringo-4.5.4-cmath.patch From 6f8b1aec39d03b11471e775391a1110c08109e5c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Sat, 18 Jul 2020 17:50:42 +0200 Subject: [PATCH 092/103] Revert "apparmor: only apply the gnumake fix to the parser" This reverts commit 4b028aecae881fbfbe51, as planned. --- pkgs/os-specific/linux/apparmor/default.nix | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/pkgs/os-specific/linux/apparmor/default.nix b/pkgs/os-specific/linux/apparmor/default.nix index 66c2582603c..807ab4fa44b 100644 --- a/pkgs/os-specific/linux/apparmor/default.nix +++ b/pkgs/os-specific/linux/apparmor/default.nix @@ -39,6 +39,9 @@ let }; prePatchCommon = '' + patch -p1 < ${gnumake43Patch} + chmod a+x ./common/list_capabilities.sh ./common/list_af_names.sh + patchShebangs ./common/list_capabilities.sh ./common/list_af_names.sh substituteInPlace ./common/Make.rules --replace "/usr/bin/pod2man" "${buildPackages.perl}/bin/pod2man" substituteInPlace ./common/Make.rules --replace "/usr/bin/pod2html" "${buildPackages.perl}/bin/pod2html" substituteInPlace ./common/Make.rules --replace "/usr/include/linux/capability.h" "${linuxHeaders}/include/linux/capability.h" @@ -184,11 +187,7 @@ let buildInputs = [ libapparmor ]; - prePatch = '' - patch -p1 < ${gnumake43Patch} - chmod a+x ./common/list_capabilities.sh ./common/list_af_names.sh - patchShebangs ./common/list_capabilities.sh ./common/list_af_names.sh - '' + prePatchCommon + '' + prePatch = prePatchCommon + '' substituteInPlace ./parser/Makefile --replace "/usr/bin/bison" "${bison}/bin/bison" substituteInPlace ./parser/Makefile --replace "/usr/bin/flex" "${flex}/bin/flex" substituteInPlace ./parser/Makefile --replace "/usr/include/linux/capability.h" "${linuxHeaders}/include/linux/capability.h" From b9de39c2a1975d59207b0a47238100e362a0529b Mon Sep 17 00:00:00 2001 From: Michael Weiss Date: Sun, 19 Jul 2020 11:41:41 +0200 Subject: [PATCH 093/103] scons: 4.0.0 -> 4.0.1 (#93415) --- pkgs/development/tools/build-managers/scons/common.nix | 2 +- pkgs/development/tools/build-managers/scons/default.nix | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/development/tools/build-managers/scons/common.nix b/pkgs/development/tools/build-managers/scons/common.nix index 57238c6d6cd..7a15c193423 100644 --- a/pkgs/development/tools/build-managers/scons/common.nix +++ b/pkgs/development/tools/build-managers/scons/common.nix @@ -18,7 +18,7 @@ python3Packages.buildPythonApplication rec { --replace "build/dist" "dist" ''; - # TODO: "Invalid SConscript usage - no parameters": + # The release tarballs don't contain any tests (runtest.py and test/*): doCheck = lib.versionOlder version "4.0.0"; meta = with stdenv.lib; { diff --git a/pkgs/development/tools/build-managers/scons/default.nix b/pkgs/development/tools/build-managers/scons/default.nix index 15eaf12207f..eb86d595597 100644 --- a/pkgs/development/tools/build-managers/scons/default.nix +++ b/pkgs/development/tools/build-managers/scons/default.nix @@ -12,7 +12,7 @@ in { sha256 = "1yzq2gg9zwz9rvfn42v5jzl3g4qf1khhny6zfbi2hib55zvg60bq"; }).override { python3Packages = python2Packages; }; scons_latest = mkScons { - version = "4.0.0"; - sha256 = "1ikw5lh0h206xd74g39jdlrcicb18jj3j80hvm4nbrfgxv1hvibc"; + version = "4.0.1"; + sha256 = "0z00l9wzaiqyjq0hapbvsjclvcfjjjq04kmxi7ffq966nl2d2bkj"; }; } From 0c50808975da8b46ab6ae3a769f434974e9740aa Mon Sep 17 00:00:00 2001 From: Michael Weiss Date: Sun, 19 Jul 2020 11:44:08 +0200 Subject: [PATCH 094/103] gpgme: 1.13.1 -> 1.14.0 (#93353) --- pkgs/development/libraries/gpgme/default.nix | 14 ++++---------- 1 file changed, 4 insertions(+), 10 deletions(-) diff --git a/pkgs/development/libraries/gpgme/default.nix b/pkgs/development/libraries/gpgme/default.nix index 1c4f63142a9..ed07d8ba058 100644 --- a/pkgs/development/libraries/gpgme/default.nix +++ b/pkgs/development/libraries/gpgme/default.nix @@ -14,22 +14,15 @@ in stdenv.mkDerivation rec { pname = "gpgme"; - version = "1.13.1"; + version = "1.14.0"; src = fetchurl { url = "mirror://gnupg/gpgme/${pname}-${version}.tar.bz2"; - sha256 = "0imyjfryvvjdbai454p70zcr95m94j9xnzywrlilqdw2fqi0pqy4"; + sha256 = "01s3rlspykbm9vmi5rfbdm3d20ip6yni69r48idqzlmhlq8ggwff"; }; patches = [ - # Fix tests with gnupg > 2.2.19 - # https://dev.gnupg.org/T4820 - (fetchpatch { - name = "cff600f1f65a2164ab25ff2b039cba008776ce62.patch"; - url = "http://git.gnupg.org/cgi-bin/gitweb.cgi?p=gpgme.git;a=patch;h=cff600f1f65a2164ab25ff2b039cba008776ce62"; - sha256 = "0ds3pvcws37q4hr4g5iwg2b98fj6whvhhcbm9c8f1kgp7dlpdw7n"; - }) - (fetchpatch { + (fetchpatch { # gpg: Send --with-keygrip when listing keys name = "c4cf527ea227edb468a84bf9b8ce996807bd6992.patch"; url = "http://git.gnupg.org/cgi-bin/gitweb.cgi?p=gpgme.git;a=patch;h=c4cf527ea227edb468a84bf9b8ce996807bd6992"; sha256 = "0y0b0lb2nq5p9kx13b59b2jaz157mvflliw1qdvg1v1hynvgb8m4"; @@ -79,6 +72,7 @@ stdenv.mkDerivation rec { meta = with stdenv.lib; { homepage = "https://gnupg.org/software/gpgme/index.html"; + changelog = "https://git.gnupg.org/cgi-bin/gitweb.cgi?p=gpgme.git;a=blob;f=NEWS;hb=refs/tags/gpgme-${version}"; description = "Library for making GnuPG easier to use"; longDescription = '' GnuPG Made Easy (GPGME) is a library designed to make access to GnuPG From 0513a9128fb5e3bc015f85fda485b0cb78985bf8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Sun, 12 Jul 2020 19:43:49 +0200 Subject: [PATCH 095/103] nss_3_44: bring back this older branch for firefox-esr /cc nss PR #91746 --- .../networking/browsers/firefox/packages.nix | 10 +- pkgs/development/libraries/nss/3.44.nix | 144 ++++++++++++++++++ .../libraries/nss/85_security_load-3.44.patch | 81 ++++++++++ pkgs/top-level/all-packages.nix | 1 + 4 files changed, 234 insertions(+), 2 deletions(-) create mode 100644 pkgs/development/libraries/nss/3.44.nix create mode 100644 pkgs/development/libraries/nss/85_security_load-3.44.patch diff --git a/pkgs/applications/networking/browsers/firefox/packages.nix b/pkgs/applications/networking/browsers/firefox/packages.nix index e551cd8b2ea..4580910cf7b 100644 --- a/pkgs/applications/networking/browsers/firefox/packages.nix +++ b/pkgs/applications/networking/browsers/firefox/packages.nix @@ -1,4 +1,4 @@ -{ config, stdenv, lib, callPackage, fetchurl }: +{ config, stdenv, lib, callPackage, fetchurl, nss_3_44 }: let common = opts: callPackage (import ./common.nix opts) {}; @@ -33,7 +33,7 @@ rec { }; }; - firefox-esr-68 = common rec { + firefox-esr-68 = (common rec { pname = "firefox-esr"; ffversion = "68.10.0esr"; src = fetchurl { @@ -53,5 +53,11 @@ rec { versionSuffix = "esr"; versionKey = "ffversion"; }; + }).override { + # Mozilla unfortunately doesn't support building with latest NSS anymore; + # instead they provide ESR releases for NSS: + # https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/NSS_Releases + nss = nss_3_44; }; + } diff --git a/pkgs/development/libraries/nss/3.44.nix b/pkgs/development/libraries/nss/3.44.nix new file mode 100644 index 00000000000..ad58bfccaee --- /dev/null +++ b/pkgs/development/libraries/nss/3.44.nix @@ -0,0 +1,144 @@ +{ stdenv, fetchurl, nspr, perl, zlib, sqlite, fixDarwinDylibNames, buildPackages }: + +let + nssPEM = fetchurl { + url = "http://dev.gentoo.org/~polynomial-c/mozilla/nss-3.15.4-pem-support-20140109.patch.xz"; + sha256 = "10ibz6y0hknac15zr6dw4gv9nb5r5z9ym6gq18j3xqx7v7n3vpdw"; + }; + version = "3.44.4"; + underscoreVersion = builtins.replaceStrings ["."] ["_"] version; + +in stdenv.mkDerivation rec { + pname = "nss"; + inherit version; + + src = fetchurl { + url = "mirror://mozilla/security/nss/releases/NSS_${underscoreVersion}_RTM/src/${pname}-${version}.tar.gz"; + sha256 = "7ec1a52e20fd9a23e1907eeba8f4f2ecd619dac5d20fa023ec5b4faa1843e847"; + }; + + depsBuildBuild = [ buildPackages.stdenv.cc ]; + + nativeBuildInputs = [ perl ]; + + buildInputs = [ zlib sqlite ] + ++ stdenv.lib.optional stdenv.isDarwin fixDarwinDylibNames; + + propagatedBuildInputs = [ nspr ]; + + prePatch = '' + xz -d < ${nssPEM} | patch -p1 + ''; + + patches = + [ + # Based on http://patch-tracker.debian.org/patch/series/dl/nss/2:3.15.4-1/85_security_load.patch + ./85_security_load-3.44.patch + ./ckpem.patch + ]; + + patchFlags = [ "-p0" ]; + + postPatch = stdenv.lib.optionalString stdenv.isDarwin '' + substituteInPlace nss/coreconf/Darwin.mk --replace '@executable_path/$(notdir $@)' "$out/lib/\$(notdir \$@)" + ''; + + outputs = [ "out" "dev" "tools" ]; + + preConfigure = "cd nss"; + + makeFlags = let + # NSS's build systems expects aarch32 to be called arm; if we pass in armv6l/armv7l, it + # fails with a linker error + cpu = if stdenv.hostPlatform.isAarch32 then "arm" else stdenv.hostPlatform.parsed.cpu.name; + in [ + "NSPR_INCLUDE_DIR=${nspr.dev}/include" + "NSPR_LIB_DIR=${nspr.out}/lib" + "NSDISTMODE=copy" + "BUILD_OPT=1" + "SOURCE_PREFIX=\$(out)" + "NSS_ENABLE_ECC=1" + "USE_SYSTEM_ZLIB=1" + "NSS_USE_SYSTEM_SQLITE=1" + "NATIVE_CC=${buildPackages.stdenv.cc}/bin/cc" + ] ++ stdenv.lib.optionals (!stdenv.isDarwin) [ + # Pass in CPU even if we're not cross compiling, because otherwise it tries to guess with + # uname, which can be wrong if e.g. we're compiling for aarch32 on aarch64 + "OS_TEST=${cpu}" + "CPU_ARCH=${cpu}" + ] ++ stdenv.lib.optional (stdenv.hostPlatform != stdenv.buildPlatform) [ + "CROSS_COMPILE=1" + "NSS_DISABLE_GTESTS=1" # don't want to build tests when cross-compiling + ] ++ stdenv.lib.optional stdenv.is64bit "USE_64=1" + ++ stdenv.lib.optional stdenv.isDarwin "CCC=clang++"; + + NIX_CFLAGS_COMPILE = "-Wno-error"; + + # TODO(@oxij): investigate this: `make -n check` works but `make + # check` fails with "no rule", same for "installcheck". + doCheck = false; + doInstallCheck = false; + + postInstall = '' + rm -rf $out/private + mv $out/public $out/include + mv $out/*.OBJ/* $out/ + rmdir $out/*.OBJ + + ln -s lib $out/lib64 + + # Upstream issue: https://bugzilla.mozilla.org/show_bug.cgi?id=530672 + # https://gitweb.gentoo.org/repo/gentoo.git/plain/dev-libs/nss/files/nss-3.32-gentoo-fixups.patch?id=af1acce6c6d2c3adb17689261dfe2c2b6771ab8a + NSS_MAJOR_VERSION=`grep "NSS_VMAJOR" lib/nss/nss.h | awk '{print $3}'` + NSS_MINOR_VERSION=`grep "NSS_VMINOR" lib/nss/nss.h | awk '{print $3}'` + NSS_PATCH_VERSION=`grep "NSS_VPATCH" lib/nss/nss.h | awk '{print $3}'` + PREFIX="$out" + + mkdir -p $out/lib/pkgconfig + sed -e "s,%prefix%,$PREFIX," \ + -e "s,%exec_prefix%,$PREFIX," \ + -e "s,%libdir%,$PREFIX/lib64," \ + -e "s,%includedir%,$dev/include/nss," \ + -e "s,%NSS_VERSION%,$NSS_MAJOR_VERSION.$NSS_MINOR_VERSION.$NSS_PATCH_VERSION,g" \ + -e "s,%NSPR_VERSION%,4.16,g" \ + pkg/pkg-config/nss.pc.in > $out/lib/pkgconfig/nss.pc + chmod 0644 $out/lib/pkgconfig/nss.pc + + sed -e "s,@prefix@,$PREFIX," \ + -e "s,@MOD_MAJOR_VERSION@,$NSS_MAJOR_VERSION," \ + -e "s,@MOD_MINOR_VERSION@,$NSS_MINOR_VERSION," \ + -e "s,@MOD_PATCH_VERSION@,$NSS_PATCH_VERSION," \ + pkg/pkg-config/nss-config.in > $out/bin/nss-config + chmod 0755 $out/bin/nss-config + ''; + + postFixup = let + isCross = stdenv.hostPlatform != stdenv.buildPlatform; + nss = if isCross then buildPackages.nss.tools else "$out"; + in '' + for libname in freebl3 nssdbm3 softokn3 + do '' + + (if stdenv.isDarwin + then '' + libfile="$out/lib/lib$libname.dylib" + DYLD_LIBRARY_PATH=$out/lib:${nspr.out}/lib \ + '' else '' + libfile="$out/lib/lib$libname.so" + LD_LIBRARY_PATH=$out/lib:${nspr.out}/lib \ + '') + '' + ${nss}/bin/shlibsign -v -i "$libfile" + done + + moveToOutput bin "$tools" + moveToOutput bin/nss-config "$dev" + moveToOutput lib/libcrmf.a "$dev" # needed by firefox, for example + rm -f "$out"/lib/*.a + ''; + + meta = with stdenv.lib; { + homepage = "https://developer.mozilla.org/en-US/docs/NSS"; + description = "A set of libraries for development of security-enabled client and server applications"; + license = licenses.mpl20; + platforms = platforms.all; + }; +} diff --git a/pkgs/development/libraries/nss/85_security_load-3.44.patch b/pkgs/development/libraries/nss/85_security_load-3.44.patch new file mode 100644 index 00000000000..132d5a96b29 --- /dev/null +++ b/pkgs/development/libraries/nss/85_security_load-3.44.patch @@ -0,0 +1,81 @@ +diff -ru -x '*~' -x '*.orig' -x '*.rej' nss/cmd/shlibsign/shlibsign.c nss/cmd/shlibsign/shlibsign.c +--- nss/cmd/shlibsign/shlibsign.c 2017-01-04 15:24:24.000000000 +0100 ++++ nss/cmd/shlibsign/shlibsign.c 2017-01-24 14:43:31.030420852 +0100 +@@ -875,6 +875,8 @@ + goto cleanup; + } + lib = PR_LoadLibrary(libname); ++ if (!lib) ++ lib = PR_LoadLibrary(NIX_NSS_LIBDIR"libsoftokn3.so"); + assert(lib != NULL); + if (!lib) { + PR_fprintf(PR_STDERR, "loading softokn3 failed"); +diff -ru -x '*~' -x '*.orig' -x '*.rej' nss/coreconf/config.mk nss/coreconf/config.mk +--- nss/coreconf/config.mk 2017-01-04 15:24:24.000000000 +0100 ++++ nss/coreconf/config.mk 2017-01-24 14:43:47.989432372 +0100 +@@ -202,3 +202,6 @@ + + # Hide old, deprecated, TLS cipher suite names when building NSS + DEFINES += -DSSL_DISABLE_DEPRECATED_CIPHER_SUITE_NAMES ++ ++# Nix specific stuff. ++DEFINES += -DNIX_NSS_LIBDIR=\"$(out)/lib/\" +diff -ru -x '*~' -x '*.orig' -x '*.rej' nss/lib/pk11wrap/pk11load.c nss/lib/pk11wrap/pk11load.c +--- nss/lib/pk11wrap/pk11load.c 2017-01-04 15:24:24.000000000 +0100 ++++ nss/lib/pk11wrap/pk11load.c 2017-01-24 14:45:06.883485652 +0100 +@@ -440,6 +440,13 @@ + * unload the library if anything goes wrong from here on out... + */ + library = PR_LoadLibrary(mod->dllName); ++ if ((library == NULL) && ++ !rindex(mod->dllName, PR_GetDirectorySeparator())) { ++ library = PORT_LoadLibraryFromOrigin(my_shlib_name, ++ (PRFuncPtr) &softoken_LoadDSO, ++ mod->dllName); ++ } ++ + mod->library = (void *)library; + + if (library == NULL) { +diff -ru -x '*~' -x '*.orig' -x '*.rej' nss/lib/util/secload.c nss/lib/util/secload.c +--- nss/lib/util/secload.c 2017-01-04 15:24:24.000000000 +0100 ++++ nss/lib/util/secload.c 2017-01-24 14:43:31.030420852 +0100 +@@ -70,9 +70,14 @@ + + /* Remove the trailing filename from referencePath and add the new one */ + c = strrchr(referencePath, PR_GetDirectorySeparator()); ++ if (!c) { /* referencePath doesn't contain a / means that dladdr gave us argv[0] ++ * and program was called from $PATH. Hack to get libs from NIX_NSS_LIBDIR */ ++ referencePath = NIX_NSS_LIBDIR; ++ c = (char*) &referencePath[sizeof(NIX_NSS_LIBDIR) - 1]; /* last / */ ++ } + if (c) { + size_t referencePathSize = 1 + c - referencePath; +- fullName = (char*)PORT_Alloc(strlen(name) + referencePathSize + 1); ++ fullName = (char*) PORT_Alloc(strlen(name) + referencePathSize + 5); + if (fullName) { + memcpy(fullName, referencePath, referencePathSize); + strcpy(fullName + referencePathSize, name); +@@ -82,6 +87,11 @@ + #endif + libSpec.type = PR_LibSpec_Pathname; + libSpec.value.pathname = fullName; ++ if ((referencePathSize >= 4) && ++ (strncmp(fullName + referencePathSize - 4, "bin", 3) == 0)) { ++ memcpy(fullName + referencePathSize -4, "lib", 3); ++ } ++ strcpy(fullName + referencePathSize, name); + dlh = PR_LoadLibraryWithFlags(libSpec, PR_LD_NOW | PR_LD_LOCAL + #ifdef PR_LD_ALT_SEARCH_PATH + /* allow library's dependencies to be found in the same directory +@@ -89,6 +99,10 @@ + | PR_LD_ALT_SEARCH_PATH + #endif + ); ++ if (! dlh) { ++ strcpy(fullName + referencePathSize, name); ++ dlh = PR_LoadLibraryWithFlags(libSpec, PR_LD_NOW | PR_LD_LOCAL); ++ } + PORT_Free(fullName); + } + } diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index f39bdbe837f..2ea3f0985bd 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -14107,6 +14107,7 @@ in }; nss = lowPrio (callPackage ../development/libraries/nss { }); + nss_3_44 = lowPrio (callPackage ../development/libraries/nss/3.44.nix { }); nssTools = nss.tools; nss_wrapper = callPackage ../development/libraries/nss_wrapper { }; From d4e479aae7ffa87a7de99490463239211039f4f1 Mon Sep 17 00:00:00 2001 From: ajs124 Date: Wed, 1 Jul 2020 15:54:25 +0200 Subject: [PATCH 096/103] firefox: 77.0.1 -> 78.0.1 (security) Close #92043 (original PR). --- .../networking/browsers/firefox/common.nix | 17 ++++++++++------- .../networking/browsers/firefox/packages.nix | 4 ++-- 2 files changed, 12 insertions(+), 9 deletions(-) diff --git a/pkgs/applications/networking/browsers/firefox/common.nix b/pkgs/applications/networking/browsers/firefox/common.nix index 98f72cf803d..40e402c0bdc 100644 --- a/pkgs/applications/networking/browsers/firefox/common.nix +++ b/pkgs/applications/networking/browsers/firefox/common.nix @@ -8,7 +8,7 @@ , yasm, libGLU, libGL, sqlite, unzip, makeWrapper , hunspell, libXdamage, libevent, libstartup_notification , libvpx, libvpx_1_8 -, icu, libpng, jemalloc, glib +, icu, icu67, libpng, jemalloc, glib , autoconf213, which, gnused, cargo, rustc, llvmPackages , rust-cbindgen, nodejs, nasm, fetchpatch , debugBuild ? false @@ -111,7 +111,7 @@ stdenv.mkDerivation ({ xorg.libXScrnSaver xorg.xorgproto xorg.libXext unzip makeWrapper libevent libstartup_notification /* cairo */ - icu libpng jemalloc glib + libpng jemalloc glib nasm # >= 66 requires nasm for the AV1 lib dav1d # yasm can potentially be removed in future versions @@ -119,8 +119,10 @@ stdenv.mkDerivation ({ # https://groups.google.com/forum/#!msg/mozilla.dev.platform/o-8levmLU80/SM_zQvfzCQAJ nspr nss ] - ++ lib.optionals (lib.versionOlder ffversion "75") [ libvpx sqlite ] + ++ lib.optionals (lib.versionOlder ffversion "75") [ libvpx sqlite ] ++ lib.optional (lib.versionAtLeast ffversion "75.0") libvpx_1_8 + ++ lib.optional (lib.versionOlder ffversion "78") icu + ++ lib.optional (lib.versionAtLeast ffversion "78.0") icu67 ++ lib.optional alsaSupport alsaLib ++ lib.optional pulseaudioSupport libpulseaudio # only headers are needed ++ lib.optional gtk3Support gtk3 @@ -200,7 +202,6 @@ stdenv.mkDerivation ({ "--enable-application=browser" "--with-system-jpeg" "--with-system-zlib" - "--with-system-bz2" "--with-system-libevent" "--with-system-libvpx" "--with-system-png" # needs APNG support @@ -208,19 +209,21 @@ stdenv.mkDerivation ({ "--enable-system-ffi" "--enable-system-pixman" #"--enable-system-cairo" - "--enable-startup-notification" - #"--enable-content-sandbox" # TODO: probably enable after 54 "--disable-tests" "--disable-necko-wifi" # maybe we want to enable this at some point "--disable-updater" "--enable-jemalloc" - "--disable-gconf" "--enable-default-toolkit=${default-toolkit}" "--with-libclang-path=${llvmPackages.libclang}/lib" "--with-clang-path=${llvmPackages.clang}/bin/clang" "--with-system-nspr" "--with-system-nss" ] + ++ lib.optionals (lib.versionOlder ffversion "78") [ + "--with-system-bz2" + "--enable-startup-notification" + "--disable-gconf" + ] ++ lib.optional (lib.versionOlder ffversion "75") "--enable-system-sqlite" ++ lib.optional (stdenv.isDarwin) "--disable-xcode-checks" ++ lib.optionals (lib.versionOlder ffversion "69") [ diff --git a/pkgs/applications/networking/browsers/firefox/packages.nix b/pkgs/applications/networking/browsers/firefox/packages.nix index 4580910cf7b..eca63686396 100644 --- a/pkgs/applications/networking/browsers/firefox/packages.nix +++ b/pkgs/applications/networking/browsers/firefox/packages.nix @@ -7,10 +7,10 @@ in rec { firefox = common rec { pname = "firefox"; - ffversion = "77.0.1"; + ffversion = "78.0.1"; src = fetchurl { url = "mirror://mozilla/firefox/releases/${ffversion}/source/firefox-${ffversion}.source.tar.xz"; - sha512 = "ngLihC0YuclLJEV3iPEX+tRzDKIdBe+CCOuFxvWNo7DnX8royOvTj2m4YyWyZoTQ5UCbPTQYmP4otgfovZSe8g=="; + sha512 = "mdO6masIpiZBvYi6kpYUTSnsOda04CUs2CL1LNf1Yad+rfY4ga4aFuLtfKqfgV5IcIIl86XeiC+0grd4irbCYg=="; }; patches = [ From 939337f4d59dc3c6cccbd859870297ec574c0136 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Sun, 19 Jul 2020 21:10:38 +0200 Subject: [PATCH 097/103] thunderbird: fix build after nss update /cc nss PR #91746 --- 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 2ea3f0985bd..58e44e8acea 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -22687,6 +22687,7 @@ in inherit (rustPackages_1_44) cargo rustc; libpng = libpng_apng; gtk3Support = true; + nss = nss_3_44; # 68.x won't build with newest nss anymore (like firefox-esr-68) }; thunderbolt = callPackage ../os-specific/linux/thunderbolt {}; From 6f77852ce993de0977cbdc9bf53926691fb8d02f Mon Sep 17 00:00:00 2001 From: ajs124 Date: Mon, 20 Jul 2020 14:52:22 +0200 Subject: [PATCH 098/103] pythonPackages.gyp: 2015-06-11 -> 2020-05-12 upstream doesn't do stable releases, but this seems to support python3 now --- pkgs/development/python-modules/gyp/default.nix | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/pkgs/development/python-modules/gyp/default.nix b/pkgs/development/python-modules/gyp/default.nix index b9ad6ccec24..8bb20fafe76 100644 --- a/pkgs/development/python-modules/gyp/default.nix +++ b/pkgs/development/python-modules/gyp/default.nix @@ -6,13 +6,12 @@ buildPythonPackage { pname = "gyp"; - version = "2015-06-11"; - disabled = isPy3k; + version = "2020-05-12"; src = fetchFromGitiles { url = "https://chromium.googlesource.com/external/gyp"; - rev = "fdc7b812f99e48c00e9a487bd56751bbeae07043"; - sha256 = "1imgxsl4mr1662vsj2mlnpvvrbz71yk00w8p85vi5bkgmc6awgiz"; + rev = "caa60026e223fc501e8b337fd5086ece4028b1c6"; + sha256 = "0r9phq5yrmj968vdvy9vivli35wn1j9a6iwshp69wl7q4p0x8q2b"; }; prePatch = stdenv.lib.optionals stdenv.isDarwin '' From 6760ec6c4047b30fc83b9ec6b5adb191b84c1e78 Mon Sep 17 00:00:00 2001 From: ajs124 Date: Mon, 20 Jul 2020 14:58:46 +0200 Subject: [PATCH 099/103] nss: gyp supports python3 now --- pkgs/development/libraries/nss/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/development/libraries/nss/default.nix b/pkgs/development/libraries/nss/default.nix index ba6704bc144..12a2e49e929 100644 --- a/pkgs/development/libraries/nss/default.nix +++ b/pkgs/development/libraries/nss/default.nix @@ -19,7 +19,7 @@ in stdenv.mkDerivation rec { depsBuildBuild = [ buildPackages.stdenv.cc ]; - nativeBuildInputs = [ perl ninja (buildPackages.python2.withPackages (ps: with ps; [ gyp ])) ]; + nativeBuildInputs = [ perl ninja (buildPackages.python3.withPackages (ps: with ps; [ gyp ])) ]; buildInputs = [ zlib sqlite ] ++ stdenv.lib.optional stdenv.isDarwin fixDarwinDylibNames; From 8f925208cde51b12bbce209c635d641c9ca31751 Mon Sep 17 00:00:00 2001 From: ajs124 Date: Mon, 20 Jul 2020 17:02:44 +0200 Subject: [PATCH 100/103] nss: try to fix darwin build --- pkgs/development/libraries/nss/default.nix | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/pkgs/development/libraries/nss/default.nix b/pkgs/development/libraries/nss/default.nix index 12a2e49e929..ab1f0504470 100644 --- a/pkgs/development/libraries/nss/default.nix +++ b/pkgs/development/libraries/nss/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchurl, nspr, perl, zlib, sqlite, fixDarwinDylibNames, buildPackages, ninja }: +{ stdenv, fetchurl, nspr, perl, zlib, sqlite, darwin, fixDarwinDylibNames, buildPackages, ninja }: let nssPEM = fetchurl { @@ -19,7 +19,8 @@ in stdenv.mkDerivation rec { depsBuildBuild = [ buildPackages.stdenv.cc ]; - nativeBuildInputs = [ perl ninja (buildPackages.python3.withPackages (ps: with ps; [ gyp ])) ]; + nativeBuildInputs = [ perl ninja (buildPackages.python3.withPackages (ps: with ps; [ gyp ])) ] + ++ stdenv.lib.optional stdenv.isDarwin darwin.cctools; buildInputs = [ zlib sqlite ] ++ stdenv.lib.optional stdenv.isDarwin fixDarwinDylibNames; @@ -53,10 +54,6 @@ in stdenv.mkDerivation rec { patchFlags = [ "-p0" ]; - postPatch = stdenv.lib.optionalString stdenv.isDarwin '' - substituteInPlace nss/coreconf/Darwin.mk --replace '@executable_path/$(notdir $@)' "$out/lib/\$(notdir \$@)" - ''; - outputs = [ "out" "dev" "tools" ]; preConfigure = "cd nss"; From 34432ad386907186219ef477610847261b36b259 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Tue, 21 Jul 2020 15:57:16 +0200 Subject: [PATCH 101/103] libreoffice*: fix build after nss update /cc nss PR #91746 --- 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 1a926f1d2a1..98bbb15cd4e 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -20920,6 +20920,7 @@ in harfbuzz = harfbuzz.override { withIcu = true; withGraphite2 = true; }; + nss = nss_3_44; }; libreoffice-qt = lowPrio (callPackage ../applications/office/libreoffice/wrapper.nix { From 22fdfc7fbc3f57b117f32bb950eff40db5a632c5 Mon Sep 17 00:00:00 2001 From: Cole Helbling Date: Tue, 21 Jul 2020 10:28:39 -0700 Subject: [PATCH 102/103] rustfmt: fix build with rustc 1.45.0 Due to a recent change in rustc 1.45.0, rustfmt now requires two additional environment variables to be set in order to build successfully: `CFG_RELEASE` and `CFG_RELEASE_CHANNEL`. --- pkgs/development/compilers/rust/rustfmt.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pkgs/development/compilers/rust/rustfmt.nix b/pkgs/development/compilers/rust/rustfmt.nix index 66a18f40ad4..eb8560ada84 100644 --- a/pkgs/development/compilers/rust/rustfmt.nix +++ b/pkgs/development/compilers/rust/rustfmt.nix @@ -16,6 +16,11 @@ rustPlatform.buildRustPackage rec { # As of 1.0.0 and rustc 1.30 rustfmt requires a nightly compiler RUSTC_BOOTSTRAP = 1; + # As of rustc 1.45.0, these env vars are required to build rustfmt (due to + # https://github.com/rust-lang/rust/pull/72001) + CFG_RELEASE = "${rustPlatform.rust.rustc.version}-nightly"; + CFG_RELEASE_CHANNEL = "nightly"; + meta = with stdenv.lib; { description = "A tool for formatting Rust code according to style guidelines"; homepage = "https://github.com/rust-lang-nursery/rustfmt"; From 744b380a0ec4ec9c2a958e5d1c42ac5da2f9759e Mon Sep 17 00:00:00 2001 From: Jan Tojnar Date: Thu, 23 Jul 2020 18:19:22 +0200 Subject: [PATCH 103/103] =?UTF-8?q?poppler:=200.90.0=20=E2=86=92=200.90.1:?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * Fix regression on PS conversion. Regression only happened on applications that are locale enabled i.e. Okular but not pdftops, when using a quite new lcms and the user locale uses , as decimal separator instead of . * Add UTF16LE support to TextStringToUCS4. Even if the standard clearly says it should be UTF16BE --- pkgs/development/libraries/poppler/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/poppler/default.nix b/pkgs/development/libraries/poppler/default.nix index 420cf731454..cd39e61a0cb 100644 --- a/pkgs/development/libraries/poppler/default.nix +++ b/pkgs/development/libraries/poppler/default.nix @@ -12,11 +12,11 @@ let in stdenv.mkDerivation rec { name = "poppler-${suffix}-${version}"; - version = "0.90.0"; # beware: updates often break cups-filters build, check texlive and scribusUnstable too! + version = "0.90.1"; # beware: updates often break cups-filters build, check texlive and scribusUnstable too! src = fetchurl { url = "${meta.homepage}/poppler-${version}.tar.xz"; - sha256 = "11cnk18qnhkhari1102syk5n3k7906jpm05cr8i4vdrh6fnv1vcl"; + sha256 = "mE2C5y6RQY0oCIUpjIvchVov2SZl/VKhNFsnI14MccQ="; }; outputs = [ "out" "dev" ];